From 12934e17e6147ce59f20ba30b74fb177628092f4 Mon Sep 17 00:00:00 2001
From: Mark Spencer <markster@digium.com>
Date: Sun, 1 Feb 2004 23:55:17 +0000
Subject: [PATCH] If unregistered, don't consider it valid (bug #956)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2105 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 channels/chan_sip.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 24906e2def..37bb0894e5 100755
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -844,7 +844,8 @@ static int create_addr(struct sip_pvt *r, char *peer)
 					r->sa.sin_port = p->defaddr.sin_port;
 				}
 				memcpy(&r->recv, &r->sa, sizeof(r->recv));
-			}
+			} else
+				p = NULL;
 	}
 	ast_mutex_unlock(&peerl.lock);
 	if (!p && !found) {
@@ -5663,7 +5664,7 @@ static int sip_send_mwi_to_peer(struct sip_peer *peer)
 	strncpy(name, peer->name, sizeof(name) - 1);
 	peer->lastmsgssent = ((newmsgs << 8) | (oldmsgs));
 	ast_mutex_unlock(&peerl.lock);
-	if (create_addr(p, name) || !p->sa.sin_addr.s_addr || !p->sa.sin_port) {
+	if (create_addr(p, name)) {
 		/* Maybe they're not registered, etc. */
 		sip_destroy(p);
 		return 0;
-- 
GitLab