remove an unnecessary check in inet_pton
authorSzabolcs Nagy <nsz@port70.net>
Thu, 12 Dec 2013 04:18:34 +0000 (04:18 +0000)
committerSzabolcs Nagy <nsz@port70.net>
Thu, 12 Dec 2013 04:18:34 +0000 (04:18 +0000)
at most 4 hexadecimal digits are processed in one field so the
value cannot overflow. the netdb.h header was not used.

src/network/inet_pton.c

index f840dd4..4496b47 100644 (file)
@@ -1,5 +1,4 @@
 #include <sys/socket.h>
-#include <netdb.h>
 #include <arpa/inet.h>
 #include <ctype.h>
 #include <errno.h>
@@ -46,7 +45,7 @@ int inet_pton(int af, const char *restrict s, void *restrict a0)
                }
                for (v=j=0; j<4 && (d=hexval(s[j]))>=0; j++)
                        v=16*v+d;
-               if (j==0 || v > 65535) return 0;
+               if (j==0) return 0;
                ip[i] = v;
                if (!s[j] && (brk>=0 || i==7)) break;
                if (i==7) return 0;