diff --git a/configure.ac b/configure.ac index d2bd34c903..b092d7abe9 100644 --- a/configure.ac +++ b/configure.ac @@ -305,6 +305,8 @@ AC_SUBST(HAS_POLL) # fopencookie on linux AC_CHECK_FUNCS([funopen fopencookie]) +AC_CHECK_FUNCS([inet_aton]) + # check if we have IP_PKTINFO constant defined AC_LINK_IFELSE( AC_LANG_PROGRAM([#include ], diff --git a/include/asterisk/acl.h b/include/asterisk/acl.h index db626c2281..79b787d705 100644 --- a/include/asterisk/acl.h +++ b/include/asterisk/acl.h @@ -28,7 +28,7 @@ extern "C" { #endif -#include +#include "asterisk/network.h" #include "asterisk/io.h" #define AST_SENSE_DENY 0 diff --git a/include/asterisk/autoconfig.h.in b/include/asterisk/autoconfig.h.in index e5b8f04851..5be612e44e 100644 --- a/include/asterisk/autoconfig.h.in +++ b/include/asterisk/autoconfig.h.in @@ -337,6 +337,9 @@ or greater. */ #undef HAVE_IMAP_TK2006 +/* Define to 1 if you have the `inet_aton' function. */ +#undef HAVE_INET_ATON + /* Define to 1 if you have the `inet_ntoa' function. */ #undef HAVE_INET_NTOA diff --git a/include/asterisk/dnsmgr.h b/include/asterisk/dnsmgr.h index c9061dc42c..33b9556e70 100644 --- a/include/asterisk/dnsmgr.h +++ b/include/asterisk/dnsmgr.h @@ -27,7 +27,7 @@ extern "C" { #endif -#include +#include "asterisk/network.h" struct ast_dnsmgr_entry; diff --git a/include/asterisk/manager.h b/include/asterisk/manager.h index cef48ed48f..6566713f15 100644 --- a/include/asterisk/manager.h +++ b/include/asterisk/manager.h @@ -19,10 +19,7 @@ #ifndef _ASTERISK_MANAGER_H #define _ASTERISK_MANAGER_H -#include -#include -#include - +#include "asterisk/network.h" #include "asterisk/lock.h" /*! diff --git a/include/asterisk/netsock.h b/include/asterisk/netsock.h index f3c932bf1e..988d51fcf0 100644 --- a/include/asterisk/netsock.h +++ b/include/asterisk/netsock.h @@ -28,7 +28,7 @@ extern "C" { #endif -#include +#include "asterisk/network.h" #include "asterisk/io.h" #include "asterisk/astobj.h" diff --git a/include/asterisk/rtp.h b/include/asterisk/rtp.h index 8d54cbe88a..56ac76e866 100644 --- a/include/asterisk/rtp.h +++ b/include/asterisk/rtp.h @@ -26,7 +26,7 @@ #ifndef _ASTERISK_RTP_H #define _ASTERISK_RTP_H -#include +#include "asterisk/network.h" #include "asterisk/frame.h" #include "asterisk/io.h" diff --git a/include/asterisk/udptl.h b/include/asterisk/udptl.h index 4ee72b825f..090cc5b078 100644 --- a/include/asterisk/udptl.h +++ b/include/asterisk/udptl.h @@ -18,13 +18,12 @@ #ifndef _ASTERISK_UDPTL_H #define _ASTERISK_UDPTL_H +#include "asterisk/network.h" #include "asterisk/frame.h" #include "asterisk/io.h" #include "asterisk/sched.h" #include "asterisk/channel.h" -#include - enum { UDPTL_ERROR_CORRECTION_NONE, diff --git a/include/asterisk/utils.h b/include/asterisk/utils.h index c79cc8d0bb..6b55a4272b 100644 --- a/include/asterisk/utils.h +++ b/include/asterisk/utils.h @@ -23,9 +23,8 @@ #ifndef _ASTERISK_UTILS_H #define _ASTERISK_UTILS_H -#include -#include /* we want to override inet_ntoa */ -#include +#include "asterisk/network.h" + #include #include /* we want to override localtime_r */ @@ -310,23 +309,6 @@ static force_inline void ast_slinear_saturated_divide(short *input, short *value int test_for_thread_safety(void); -/*! - * \brief thread-safe replacement for inet_ntoa(). - * - * \note It is very important to note that even though this is a thread-safe - * replacement for inet_ntoa(), it is *not* reentrant. In a single - * thread, the result from a previous call to this function is no longer - * valid once it is called again. If the result from multiple calls to - * this function need to be kept or used at once, then the result must be - * copied to a local buffer before calling this function again. - */ -const char *ast_inet_ntoa(struct in_addr ia); - -#ifdef inet_ntoa -#undef inet_ntoa -#endif -#define inet_ntoa __dont__use__inet_ntoa__use__ast_inet_ntoa__instead__ - #ifdef localtime_r #undef localtime_r #endif @@ -346,13 +328,6 @@ int ast_wait_for_input(int fd, int ms); */ int ast_carefulwrite(int fd, char *s, int len, int timeoutms); -/*! \brief Compares the source address and port of two sockaddr_in */ -static force_inline int inaddrcmp(const struct sockaddr_in *sin1, const struct sockaddr_in *sin2) -{ - return ((sin1->sin_addr.s_addr != sin2->sin_addr.s_addr) - || (sin1->sin_port != sin2->sin_port)); -} - /* * Thread management support (should be moved to lock.h or a different header) */ diff --git a/main/acl.c b/main/acl.c index f82a0805cf..03a01e7396 100644 --- a/main/acl.c +++ b/main/acl.c @@ -30,13 +30,6 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") #include #include #include -#include -#include -#include -#include -#include -#include -#include #include #if defined(__OpenBSD__) || defined(__NetBSD__) || defined(__FreeBSD__) diff --git a/main/asterisk.c b/main/asterisk.c index 3db9c0ca5e..905fb2f458 100644 --- a/main/asterisk.c +++ b/main/asterisk.c @@ -67,7 +67,6 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") #include #include #include -#include #include #include #include @@ -87,14 +86,12 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") #endif /* linux */ #include -#ifdef HAVE_NETDB_H -#include -#endif #if defined(SOLARIS) int daemon(int, int); /* defined in libresolv of all places */ #include #endif +#include "asterisk/network.h" #include "asterisk/logger.h" #include "asterisk/options.h" #include "asterisk/cli.h" diff --git a/main/manager.c b/main/manager.c index 7708d324f3..9edc02ad1b 100644 --- a/main/manager.c +++ b/main/manager.c @@ -47,11 +47,6 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") #include #include -#include -#include -#include -#include -#include #include #include #include diff --git a/main/netsock.c b/main/netsock.c index b391fc4eee..6cd5e090f2 100644 --- a/main/netsock.c +++ b/main/netsock.c @@ -32,13 +32,6 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") #include #include #include -#include -#include -#include -#include -#include -#include -#include #include #if defined(__OpenBSD__) || defined(__NetBSD__) || defined(__FreeBSD__) diff --git a/main/utils.c b/main/utils.c index 586e1ccc77..ebec01e383 100644 --- a/main/utils.c +++ b/main/utils.c @@ -30,15 +30,13 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") #include #include #include -#include -#include -#include -#include #ifdef HAVE_DEV_URANDOM #include #endif +#include "asterisk/network.h" + #define AST_API_MODULE /* ensure that inlinable API functions will be built in lock.h if required */ #include "asterisk/lock.h" #include "asterisk/io.h" diff --git a/pbx/pbx_dundi.c b/pbx/pbx_dundi.c index f2c3be341c..bcbce6e4ea 100644 --- a/pbx/pbx_dundi.c +++ b/pbx/pbx_dundi.c @@ -30,21 +30,9 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") -#include -#include -#include +#include "asterisk/network.h" #include -#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(SOLARIS) || defined(__Darwin__) -#include -#include -#endif -#include #include -#include -#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__Darwin__) -#include -#include -#endif #include #include #include diff --git a/res/res_agi.c b/res/res_agi.c index 36ad040b35..55659f3cf7 100644 --- a/res/res_agi.c +++ b/res/res_agi.c @@ -27,11 +27,6 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") -#include -#include -#include -#include -#include #include #include #include @@ -40,6 +35,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") #include #include +#include "asterisk/network.h" #include "asterisk/file.h" #include "asterisk/logger.h" #include "asterisk/channel.h"