From 8125cd73219dd2c9caf02e04b29fe10114a41773 Mon Sep 17 00:00:00 2001 From: Lammert Bies Date: Sun, 11 Dec 2016 15:13:25 +0100 Subject: [PATCH] Moved sockaddr_to_string to own file --- Makefile | 1 + src/httplib_sockaddr_to_string.c | 46 ++++++++++++++++++++++++++++++++ src/libhttp.c | 18 ------------- 3 files changed, 47 insertions(+), 18 deletions(-) create mode 100644 src/httplib_sockaddr_to_string.c diff --git a/Makefile b/Makefile index 134734e9..b70454a5 100644 --- a/Makefile +++ b/Makefile @@ -179,6 +179,7 @@ LIB_SOURCES = src/libhttp.c \ src/httplib_set_user_connection_data.c \ src/httplib_set_websocket_handler.c \ src/httplib_snprintf.c \ + src/httplib_sockaddr_to_string.c \ src/httplib_spawn_process.c \ src/httplib_ssi.c \ src/httplib_ssl_error.c \ diff --git a/src/httplib_sockaddr_to_string.c b/src/httplib_sockaddr_to_string.c new file mode 100644 index 00000000..758bb8a4 --- /dev/null +++ b/src/httplib_sockaddr_to_string.c @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2016 Lammert Bies + * Copyright (c) 2013-2016 the Civetweb developers + * Copyright (c) 2004-2013 Sergey Lyubka + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + + + +#include "libhttp-private.h" + + + +void XX_httplib_sockaddr_to_string(char *buf, size_t len, const union usa *usa) { + + buf[0] = '\0'; + + if (!usa) return; + + if (usa->sa.sa_family == AF_INET) { + getnameinfo(&usa->sa, sizeof(usa->sin), buf, (unsigned)len, NULL, 0, NI_NUMERICHOST); + } +#if defined(USE_IPV6) + else if (usa->sa.sa_family == AF_INET6) { + getnameinfo(&usa->sa, sizeof(usa->sin6), buf, (unsigned)len, NULL, 0, NI_NUMERICHOST); + } +#endif + +} /* XX_httplib_sockaddr_to_string */ diff --git a/src/libhttp.c b/src/libhttp.c index 1516c6e5..91f25392 100644 --- a/src/libhttp.c +++ b/src/libhttp.c @@ -828,24 +828,6 @@ void XX_httplib_set_thread_name(const char *threadName) { -void XX_httplib_sockaddr_to_string(char *buf, size_t len, const union usa *usa) { - - buf[0] = '\0'; - - if (!usa) return; - - if (usa->sa.sa_family == AF_INET) { - getnameinfo(&usa->sa, sizeof(usa->sin), buf, (unsigned)len, NULL, 0, NI_NUMERICHOST); - } -#if defined(USE_IPV6) - else if (usa->sa.sa_family == AF_INET6) { - getnameinfo(&usa->sa, sizeof(usa->sin6), buf, (unsigned)len, NULL, 0, NI_NUMERICHOST); - } -#endif - -} /* XX_httplib_sockaddr_to_string */ - - /* Convert time_t to a string. According to RFC2616, Sec 14.18, this must be * included in all responses other than 100, 101, 5xx. */ void XX_httplib_gmt_time_string( char *buf, size_t buf_len, time_t *t ) {