Эх сурвалжийг харах

Don't pad the text address with the binary form

The buf gets copied to hostname and is present verbatim in logs looking
like pure random garbage. Moreover you can't really strlen() it.

This was likely some silly typo in inet_ntoa -> inet_ntop conversion for
ipv6, since it used to be correct before.
Lubomir Rintel 11 жил өмнө
parent
commit
ce6c2a069c
1 өөрчлөгдсөн 1 нэмэгдсэн , 1 устгасан
  1. 1 1
      src/socks.c

+ 1 - 1
src/socks.c

@@ -100,7 +100,7 @@ void * sockschild(struct clientparam* param) {
 		if(command==1 && !param->req.sin_addr.s_addr) {
 			RETURN(421);
 		}
-		myinet_ntop(*SAFAMILY(&param->sins), SAADDR(&param->sins), (char *)buf + strlen((char *)buf), 64);
+		myinet_ntop(*SAFAMILY(&param->sins), SAADDR(&param->sins), (char *)buf, 64);
 		break;
 	case 3:
 		if ((size = sockgetcharcli(param, conf.timeouts[SINGLEBYTE_S], 0)) == EOF) {RETURN(451);} /* nmethods */