[asterisk-commits] tilghman: trunk r99646 - in /trunk: ./ main/acl.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Tue Jan 22 14:42:47 CST 2008


Author: tilghman
Date: Tue Jan 22 14:42:47 2008
New Revision: 99646

URL: http://svn.digium.com/view/asterisk?view=rev&rev=99646
Log:
Merged revisions 99643 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r99643 | tilghman | 2008-01-22 14:34:55 -0600 (Tue, 22 Jan 2008) | 2 lines

Fix the defines for OS X (and Solaris, too)

........

Modified:
    trunk/   (props changed)
    trunk/main/acl.c

Change Statistics:
 0 files changed

Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-1.4-merged' - no diff available.

Modified: trunk/main/acl.c
URL: http://svn.digium.com/view/asterisk/trunk/main/acl.c?view=diff&rev=99646&r1=99645&r2=99646
==============================================================================
--- trunk/main/acl.c (original)
+++ trunk/main/acl.c Tue Jan 22 14:42:47 2008
@@ -29,11 +29,16 @@
 
 #include "asterisk/network.h"
 
+#if defined(__OpenBSD__) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__Darwin__)
+#include <fcntl.h>
+#include <net/route.h>
+#endif
+
 #if defined(SOLARIS)
 #include <sys/sockio.h>
 #endif
 
-#if defined(__linux__)
+#if defined(__Darwin__) || defined(__linux__)
 #include <ifaddrs.h>
 #endif
 
@@ -103,23 +108,23 @@
 static int get_local_address(struct in_addr *ourip)
 {
 	int s, res = -1;
-#ifdef _SOLARIS
+#ifdef SOLARIS
 	struct lifreq *ifr = NULL;
 	struct lifnum ifn;
 	struct lifconf ifc;
 	struct sockaddr_in *sa;
 	char *buf = NULL;
 	int bufsz, x;
-#endif /* _SOLARIS */
-#if defined(_BSD) || defined(__linux__)
+#endif /* SOLARIS */
+#if defined(__OpenBSD__) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__linux__) || defined(__Darwin__)
 	struct ifaddrs *ifap, *ifaphead;
 	int rtnerr;
 	const struct sockaddr_in *sin;
-#endif /* defined(_BSD) || defined(_LINUX) */
+#endif /* BSD_OR_LINUX */
 	struct in_addr best_addr = { 0, };
 	int best_score = -100;
 
-#if defined(_BSD) || defined(__linux__)
+#if defined(__OpenBSD__) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__linux__) || defined(__Darwin__)
 	rtnerr = getifaddrs(&ifaphead);
 	if (rtnerr) {
 		perror(NULL);
@@ -130,7 +135,7 @@
 	s = socket(AF_INET, SOCK_STREAM, 0);
 
 	if (s > 0) {
-#if defined(_BSD) || defined(__linux__)
+#if defined(__OpenBSD__) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__linux__) || defined(__Darwin__)
 		for (ifap = ifaphead; ifap; ifap = ifap->ifa_next) {
 
 			if (ifap->ifa_addr->sa_family == AF_INET) {
@@ -142,10 +147,10 @@
 					break;
 			}
 		}
-#endif /* _BSD */
+#endif /* BSD_OR_LINUX */
 
 		/* There is no reason whatsoever that this shouldn't work on Linux or BSD also. */
-#ifdef _SOLARIS
+#ifdef SOLARIS
 		/* Get a count of interfaces on the machine */
 		ifn.lifn_family = AF_INET;
 		ifn.lifn_flags = 0;
@@ -183,13 +188,13 @@
 		}
 
 		free(buf);
-#endif /* _SOLARIS */
+#endif /* SOLARIS */
 		
 		close(s);
 	}
-#if defined(_BSD) || defined(__linux__)
+#if defined(__OpenBSD__) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__linux__) || defined(__Darwin__)
 	freeifaddrs(ifaphead);
-#endif
+#endif /* BSD_OR_LINUX */
 
 	if (res == 0 && ourip)
 		memcpy(ourip, &best_addr, sizeof(*ourip));




More information about the asterisk-commits mailing list