OSDN Git Service

getaddrinfo: allow numeric service without any hints
authorNatanael Copa <natanael.copa@gmail.com>
Sun, 12 Jun 2011 12:09:04 +0000 (12:09 +0000)
committerBernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Tue, 14 Jun 2011 08:46:20 +0000 (10:46 +0200)
This appears to correspond to what glibc does and this fixes an
issue with iptables-1.4.11 with udp and raw port numbers.

(see http://bugzilla.netfilter.org/show_bug.cgi?id=721)

This fixes #3841
https://bugs.busybox.net/show_bug.cgi?id=3841

Signed-off-by: Natanael Copa <natanael.copa@gmail.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
libc/inet/getaddrinfo.c

index 1a77c51..e7511f6 100644 (file)
@@ -820,13 +820,6 @@ getaddrinfo(const char *name, const char *service,
                        if (hints->ai_flags & AI_NUMERICSERV)
                                return EAI_NONAME;
                        gaih_service.num = -1;
-               } else {
-                       /*
-                        * Can't specify a numerical socket unless a protocol
-                        * family was given.
-                        */
-                       if (hints->ai_socktype == 0 && hints->ai_protocol == 0)
-                               return EAI_SERVICE;
                }
                pservice = &gaih_service;
        } else