svn commit: trunk/uClibc/libc/inet
carmelo at uclibc.org
carmelo at uclibc.org
Thu Feb 7 16:17:17 UTC 2008
Author: carmelo
Date: 2008-02-07 08:17:14 -0800 (Thu, 07 Feb 2008)
New Revision: 20954
Log:
Added AI_NUMERICSERV flag and check if the string is not just a number
when AI_NUMERICSERV flag set.
Signed-off-by: Filippo Arcidiacono <filippo.arcidiacono at st.com>
Modified:
trunk/uClibc/libc/inet/getaddrinfo.c
Changeset:
Modified: trunk/uClibc/libc/inet/getaddrinfo.c
===================================================================
--- trunk/uClibc/libc/inet/getaddrinfo.c 2008-02-07 10:59:00 UTC (rev 20953)
+++ trunk/uClibc/libc/inet/getaddrinfo.c 2008-02-07 16:17:14 UTC (rev 20954)
@@ -823,7 +823,7 @@
hints = &default_hints;
if (hints->ai_flags & ~(AI_PASSIVE|AI_CANONNAME|AI_NUMERICHOST|
- AI_ADDRCONFIG|AI_V4MAPPED|AI_ALL))
+ AI_ADDRCONFIG|AI_V4MAPPED|AI_NUMERICSERV|AI_ALL))
return EAI_BADFLAGS;
if ((hints->ai_flags & AI_CANONNAME) && name == NULL)
@@ -834,8 +834,12 @@
char *c;
gaih_service.name = service;
gaih_service.num = strtoul (gaih_service.name, &c, 10);
- if (*c)
+ if (*c != '\0') {
+ if (hints->ai_flags & AI_NUMERICSERV)
+ return EAI_NONAME;
+
gaih_service.num = -1;
+ }
else
/*
* Can't specify a numerical socket unless a protocol
More information about the uClibc-cvs
mailing list