X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?p=ngircd-alex.git;a=blobdiff_plain;f=src%2Fipaddr%2Fng_ipaddr.c;h=37f75b6de919f64d7ddbdfb9ac24a5b3d0e51a75;hp=af524d091fa569dd874559a3f032f5dcc0cfde6d;hb=7e14bd3b58522ac34f0af29182248df1577d99c9;hpb=fa09883c72855768a0f827a330097bf3dc5c839e diff --git a/src/ipaddr/ng_ipaddr.c b/src/ipaddr/ng_ipaddr.c index af524d09..37f75b6d 100644 --- a/src/ipaddr/ng_ipaddr.c +++ b/src/ipaddr/ng_ipaddr.c @@ -1,11 +1,14 @@ /* - * Functions for AF_ agnostic ipv4/ipv6 handling. - * * (c) 2008 Florian Westphal , public domain. */ #include "portab.h" +/** + * @file + * Functions for AF_ agnostic ipv4/ipv6 handling. + */ + #include #include #include @@ -20,7 +23,7 @@ GLOBAL bool ng_ipaddr_init(ng_ipaddr_t *addr, const char *ip_str, UINT16 port) { -#ifdef HAVE_GETADDRINFO +#ifdef HAVE_WORKING_GETADDRINFO int ret; char portstr[64]; struct addrinfo *res0; @@ -29,7 +32,9 @@ ng_ipaddr_init(ng_ipaddr_t *addr, const char *ip_str, UINT16 port) assert(ip_str); memset(&hints, 0, sizeof(hints)); +#ifdef AI_NUMERICHOST hints.ai_flags = AI_NUMERICHOST; +#endif #ifndef WANT_IPV6 /* do not convert ipv6 addresses */ hints.ai_family = AF_INET; #endif @@ -44,8 +49,8 @@ ng_ipaddr_init(ng_ipaddr_t *addr, const char *ip_str, UINT16 port) if (ret != 0) return false; - assert(sizeof(*addr) >= res0->ai_addrlen); - if (sizeof(*addr) >= res0->ai_addrlen) + assert(sizeof(*addr) >= (size_t)res0->ai_addrlen); + if (sizeof(*addr) >= (size_t)res0->ai_addrlen) memcpy(addr, res0->ai_addr, res0->ai_addrlen); else ret = -1;