Browse Source

Fix: write to log without clientIP (#517)

Loyalsoldier 5 years ago
parent
commit
d9db22093b
2 changed files with 9 additions and 3 deletions
  1. 6 2
      app/dns/dohdns.go
  2. 3 1
      app/dns/udpns.go

+ 6 - 2
app/dns/dohdns.go

@@ -44,7 +44,9 @@ type DoHNameServer struct {
 // NewDoHNameServer creates DOH client object for remote resolving
 // NewDoHNameServer creates DOH client object for remote resolving
 func NewDoHNameServer(url *url.URL, dispatcher routing.Dispatcher, clientIP net.IP) (*DoHNameServer, error) {
 func NewDoHNameServer(url *url.URL, dispatcher routing.Dispatcher, clientIP net.IP) (*DoHNameServer, error) {
 	newError("DNS: created Remote DOH client for ", url.String()).AtInfo().WriteToLog()
 	newError("DNS: created Remote DOH client for ", url.String()).AtInfo().WriteToLog()
-	newError("DNS: Remote DOH client ", url.String(), " use clientip ", clientIP.String()).AtInfo().WriteToLog()
+	if clientIP != nil {
+		newError("DNS: Remote DOH client ", url.String(), " uses clientip ", clientIP.String()).AtInfo().WriteToLog()
+	}
 	s := baseDOHNameServer(url, "DOH", clientIP)
 	s := baseDOHNameServer(url, "DOH", clientIP)
 
 
 	// Dispatched connection will be closed (interrupted) after each request
 	// Dispatched connection will be closed (interrupted) after each request
@@ -108,7 +110,9 @@ func NewDoHLocalNameServer(url *url.URL, clientIP net.IP) *DoHNameServer {
 		Transport: tr,
 		Transport: tr,
 	}
 	}
 	newError("DNS: created Local DOH client for ", url.String()).AtInfo().WriteToLog()
 	newError("DNS: created Local DOH client for ", url.String()).AtInfo().WriteToLog()
-	newError("DNS: Local DOH client ", url.String(), " use clientip ", clientIP.String()).AtInfo().WriteToLog()
+	if clientIP != nil {
+		newError("DNS: Local DOH client ", url.String(), " uses clientip ", clientIP.String()).AtInfo().WriteToLog()
+	}
 	return s
 	return s
 }
 }
 
 

+ 3 - 1
app/dns/udpns.go

@@ -55,7 +55,9 @@ func NewClassicNameServer(address net.Destination, dispatcher routing.Dispatcher
 	}
 	}
 	s.udpServer = udp.NewDispatcher(dispatcher, s.HandleResponse)
 	s.udpServer = udp.NewDispatcher(dispatcher, s.HandleResponse)
 	newError("DNS: created UDP client inited for ", address.NetAddr()).AtInfo().WriteToLog()
 	newError("DNS: created UDP client inited for ", address.NetAddr()).AtInfo().WriteToLog()
-	newError("DNS: UDP client ", address.NetAddr(), " use clientip ", clientIP.String()).AtInfo().WriteToLog()
+	if clientIP != nil {
+		newError("DNS: UDP client ", address.NetAddr(), " uses clientip ", clientIP.String()).AtInfo().WriteToLog()
+	}
 	return s
 	return s
 }
 }