[tor-commits] [snowflake/master] Don't log "SOCKS accepted" if there was an Accept error.

dcf at torproject.org dcf at torproject.org
Wed Mar 21 07:59:05 UTC 2018


commit 6a9c2bf95123373d55798bcabcb439ef7c24f205
Author: David Fifield <david at bamsoftware.com>
Date:   Wed Mar 21 00:43:17 2018 -0700

    Don't log "SOCKS accepted" if there was an Accept error.
    
    This actually caused a nil pointer dereference panic when Accept
    returned an error, because conn was nil.
---
 client/snowflake.go | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/client/snowflake.go b/client/snowflake.go
index 3b8a248..105fd30 100644
--- a/client/snowflake.go
+++ b/client/snowflake.go
@@ -57,13 +57,13 @@ func socksAcceptLoop(ln *pt.SocksListener, snowflakes SnowflakeCollector) error
 	for {
 		log.Println("SOCKS listening...")
 		conn, err := ln.AcceptSocks()
-		log.Println("SOCKS accepted: ", conn.Req)
 		if err != nil {
 			if e, ok := err.(net.Error); ok && e.Temporary() {
 				continue
 			}
 			return err
 		}
+		log.Println("SOCKS accepted: ", conn.Req)
 		err = handler(conn, snowflakes)
 		if err != nil {
 			log.Printf("handler error: %s", err)





More information about the tor-commits mailing list