Don't attempt to make use of the dynamic_exclude_static ACL if DNS lookup fails.
authorMark Michelson <mmichelson@digium.com>
Fri, 27 Apr 2012 22:11:01 +0000 (22:11 +0000)
committerMark Michelson <mmichelson@digium.com>
Fri, 27 Apr 2012 22:11:01 +0000 (22:11 +0000)
(closes issue ASTERISK-18321)
Reported by Dan Lukes
Patches:
ASTERISK-18321.patch by Mark Michelson (license #5049)
........

Merged revisions 364341 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 364342 from http://svn.asterisk.org/svn/asterisk/branches/10

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

channels/chan_sip.c

index 75af69d..fee78e9 100644 (file)
@@ -28926,7 +28926,7 @@ static struct sip_peer *build_peer(const char *name, struct ast_variable *v, str
 
                ast_string_field_set(peer, tohost, srvlookup);
 
-               if (global_dynamic_exclude_static) {
+               if (global_dynamic_exclude_static && !ast_sockaddr_isnull(&peer->addr)) {
                        int ha_error = 0;
                        sip_cfg.contact_ha = ast_append_ha("deny", ast_sockaddr_stringify_addr(&peer->addr), 
                                                        sip_cfg.contact_ha, &ha_error);