Procházet zdrojové kódy

correct IPv6 parsing where hostname is expected

z3APA3A před 5 roky
rodič
revize
5ee573dc7f
1 změnil soubory, kde provedl 4 přidání a 1 odebrání
  1. 4 1
      src/common.c

+ 4 - 1
src/common.c

@@ -293,7 +293,10 @@ int parsehostname(char *hostname, struct clientparam *param, unsigned short port
 
 
 	if(!hostname || !*hostname)return 2;
 	if(!hostname || !*hostname)return 2;
 	if(*hostname == '[') se=strchr(hostname, ']');
 	if(*hostname == '[') se=strchr(hostname, ']');
-	if ( (sp = strchr(se?se:hostname, ':'))  && !strchr(sp+1, ':')) *sp = 0;
+	if (sp = strchr(se?se:hostname, ':')) {
+		if(strchr(sp+1, ':'))sp = NULL;
+		else *sp = 0;
+	}
 	if(se){
 	if(se){
 		*se = 0;
 		*se = 0;
 	}
 	}