From: Luigi Rizzo Date: Mon, 23 Oct 2006 18:38:42 +0000 (+0000) Subject: reformat a statement and comment a potentially wrong X-Git-Tag: 1.6.0-beta1~3^2~4302 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=eb44903b0841fd34102aa284a148e2f8ac0e3c24;p=thirdparty%2Fasterisk.git reformat a statement and comment a potentially wrong assignement (altering state on an unvalidated message). git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46015 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 8d48c74fd9..85f3b9ac91 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -9023,15 +9023,10 @@ static enum check_auth_result check_peer_ok(struct sip_pvt *p, char *of, int debug=sip_debug_test_addr(sin); struct sip_peer *peer; - if (sipmethod == SIP_SUBSCRIBE) - /* For subscribes, match on peer name only */ - peer = find_peer(of, NULL, 1); - else - /* Look for peer based on the IP address we received data from */ - /* If peer is registered from this IP address or have this as a default - IP address, this call is from the peer - */ - peer = find_peer(NULL, &p->recv, 1); + /* For subscribes, match on peer name only; for other methods, + * match on IP address-port of the incoming request. + */ + peer = (sipmethod == SIP_SUBSCRIBE) ? find_peer(of, NULL, 1) : find_peer(NULL, &p->recv, 1); if (!peer) { if (debug) @@ -9056,6 +9051,7 @@ static enum check_auth_result check_peer_ok(struct sip_pvt *p, char *of, ast_copy_flags(&p->flags[1], &peer->flags[1], SIP_PAGE2_FLAGS_TO_COPY); /* Copy SIP extensions profile to peer */ + /* XXX is this correct before a successful auth ? */ if (p->sipoptions) peer->sipoptions = p->sipoptions;