From b5ed7ed7d10d4c47a8231a5ac42f74c83251bcc9 Mon Sep 17 00:00:00 2001 From: Sergey Lyubka Date: Sun, 5 Feb 2012 12:27:58 +0000 Subject: [PATCH] Changed NO_IPV6 to USE_IPV6. Also, using inet_ntop() everywhere. --- mongoose.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/mongoose.c b/mongoose.c index 5a49b575..f216af36 100644 --- a/mongoose.c +++ b/mongoose.c @@ -369,7 +369,7 @@ static const char *month_names[] = { union usa { struct sockaddr sa; struct sockaddr_in sin; -#if !defined(NO_IPV6) +#if defined(USE_IPV6) struct sockaddr_in6 sin6; #endif }; @@ -509,13 +509,12 @@ const char *mg_get_option(const struct mg_context *ctx, const char *name) { static void sockaddr_to_string(char *buf, size_t len, const union usa *usa) { buf[0] = '\0'; -#if !defined(NO_IPV6) +#if defined(USE_IPV6) inet_ntop(usa->sa.sa_family, usa->sa.sa_family == AF_INET ? (void *) &usa->sin.sin_addr : (void *) &usa->sin6.sin6_addr, buf, len); #else - // TODO(lsm): inet_ntoa is not thread safe, use inet_pton instead - strncpy(buf, inet_ntoa(usa->sin.sin_addr), len); + inet_ntop(usa->sa.sa_family, (void *) &usa->sin.sin_addr, buf, len); #endif } @@ -3434,7 +3433,7 @@ static int parse_port_string(const struct vec *vec, struct socket *so) { } so->is_ssl = vec->ptr[len] == 's'; -#if !defined(NO_IPV6) +#if defined(USE_IPV6) so->lsa.sin6.sin6_family = AF_INET6; so->lsa.sin6.sin6_port = htons((uint16_t) port); #else