From 7fff7ff2da12b8149ed7976401b3de8a527fec8e Mon Sep 17 00:00:00 2001 From: Andreas Gustafsson Date: Thu, 3 Aug 2000 20:23:01 +0000 Subject: [PATCH] pullup: In lwres_getaddrinfo() when checking for numeric addresses, the ntmp char array was only initialized and used when LWRES_HAVE_SIN6_SCOPE_ID was defined, but was declared and used outside a protective #ifdef. I moved the declaration and one use of it into #ifdef protection. --- lib/lwres/getaddrinfo.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/lib/lwres/getaddrinfo.c b/lib/lwres/getaddrinfo.c index 1364cfdddd..16c2e9f1ef 100644 --- a/lib/lwres/getaddrinfo.c +++ b/lib/lwres/getaddrinfo.c @@ -19,7 +19,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: getaddrinfo.c,v 1.23.2.3 2000/07/10 21:02:42 gson Exp $ */ +/* $Id: getaddrinfo.c,v 1.23.2.4 2000/08/03 20:23:01 gson Exp $ */ #include @@ -230,15 +230,17 @@ lwres_getaddrinfo(const char *hostname, const char *servname, (family == 0 || (flags & AI_NUMERICHOST) != 0)) { char abuf[sizeof(struct in6_addr)]; char nbuf[NI_MAXHOST]; - char ntmp[NI_MAXHOST]; int addrsize, addroff; -#if defined(LWRES_HAVE_SIN6_SCOPE_ID) +#ifdef LWRES_HAVE_SIN6_SCOPE_ID char *p, *ep; + char ntmp[NI_MAXHOST]; lwres_uint32_t scopeid; #endif -#if defined(LWRES_HAVE_SIN6_SCOPE_ID) - /* scope identifier portion */ +#ifdef LWRES_HAVE_SIN6_SCOPE_ID + /* + * Scope identifier portion. + */ ntmp[0] = '\0'; if (strchr(hostname, '%') != NULL) { strncpy(ntmp, hostname, sizeof(ntmp) - 1); @@ -247,7 +249,7 @@ lwres_getaddrinfo(const char *hostname, const char *servname, ep = NULL; /* - * vendors may want to support non-numeric + * Vendors may want to support non-numeric * scopeid around here. */ @@ -279,6 +281,7 @@ lwres_getaddrinfo(const char *hostname, const char *servname, addroff = (char *)(&SIN(0)->sin_addr) - (char *)0; family = AF_INET; goto common; +#ifdef LWRES_HAVE_SIN6_SCOPE_ID } else if (ntmp[0] && lwres_net_pton(AF_INET6, ntmp, abuf)) { if (family && family != AF_INET6) return (EAI_NONAME); @@ -286,6 +289,7 @@ lwres_getaddrinfo(const char *hostname, const char *servname, addroff = (char *)(&SIN6(0)->sin6_addr) - (char *)0; family = AF_INET6; goto common; +#endif } else if (lwres_net_pton(AF_INET6, hostname, abuf)) { if (family && family != AF_INET6) return (EAI_NONAME);