Browse code

FIX: ipv4_genport() wasn't returning the correct port on /etc/services lookups

Dario Rodriguez authored on 17/12/2015 13:47:27
Showing 1 changed files
... ...
@@ -84,7 +84,7 @@ ipv4_genport(char *portname, int fallback)
84 84
 {
85 85
         struct addrinfo hints,*ai;
86 86
         struct sockaddr_in *in;
87
-        char port;
87
+        int port;
88 88
         if(*portname>='0' && *portname<='9')
89 89
                 return(atoi(portname));
90 90
         memset(&hints,0,sizeof(hints));
... ...
@@ -95,7 +95,7 @@ ipv4_genport(char *portname, int fallback)
95 95
                 freeaddrinfo(ai),ai=NULL;
96 96
                 return(fallback);
97 97
         }
98
-        port=ntohs(in->sin_port);
98
+	port=htons(in->sin_port);
99 99
         freeaddrinfo(ai),ai=NULL;
100 100
         return(port);
101 101
 }