]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Add known internal IP address when autodomain=yes
authorOlle Johansson <oej@edvina.net>
Thu, 3 Sep 2009 13:02:41 +0000 (13:02 +0000)
committerOlle Johansson <oej@edvina.net>
Thu, 3 Sep 2009 13:02:41 +0000 (13:02 +0000)
(closes issue #14573)
Reported by: pj
Patches:
      sip-internip-autodomain1.diff uploaded by mnicholson (license 96)
modified by oej
Tested by: pj

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@215891 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_sip.c

index d4ab64a7a4226169a3163437aa294ac38ab2e5de..5bd05b0a17d4190ed375269273f7c0e40fc48fd8 100644 (file)
@@ -25491,10 +25491,14 @@ static int reload_config(enum channelreloadreason reason)
                char temp[MAXHOSTNAMELEN];
 
                /* First our default IP address */
-               if (bindaddr.sin_addr.s_addr)
+               if (bindaddr.sin_addr.s_addr) {
                        add_sip_domain(ast_inet_ntoa(bindaddr.sin_addr), SIP_DOMAIN_AUTO, NULL);
-               else
+               } else if (internip.sin_addr.s_addr) {
+               /* Our internal IP address, if configured */
+                       add_sip_domain(ast_inet_ntoa(internip.sin_addr), SIP_DOMAIN_AUTO, NULL);
+               } else {
                        ast_log(LOG_NOTICE, "Can't add wildcard IP address to domain list, please add IP address to domain manually.\n");
+               }
 
                /* If TCP is running on a different IP than UDP, then add it too */
                if (sip_tcp_desc.local_address.sin_addr.s_addr && !inaddrcmp(&bindaddr, &sip_tcp_desc.local_address))