From 4773fdfdf5ef20a9764b561661ba3b2c115d0c2a Mon Sep 17 00:00:00 2001 From: Matthew Nicholson Date: Thu, 1 Oct 2009 16:57:42 +0000 Subject: [PATCH] Merged revisions 221554,221589 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ................ r221554 | oej | 2009-10-01 02:00:04 -0500 (Thu, 01 Oct 2009) | 3 lines Simplify code for porturi, use TRUE/FALSE constructs when it's just TRUE or FALSE. ................ r221589 | mnicholson | 2009-10-01 10:26:20 -0500 (Thu, 01 Oct 2009) | 9 lines Merged revisions 221588 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r221588 | mnicholson | 2009-10-01 10:24:00 -0500 (Thu, 01 Oct 2009) | 2 lines Use unsigned ints for portinuri flags. ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.2@221660 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/chan_sip.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/channels/chan_sip.c b/channels/chan_sip.c index af99364ca6..b1a27046b6 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -1629,7 +1629,7 @@ struct sip_pvt { int sessionversion; /*!< SDP Session Version */ int64_t sessionversion_remote; /*!< Remote UA's SDP Session Version */ int session_modify; /*!< Session modification request true/false */ - int portinuri:1; /*!< Non zero if a port has been specified, will also disable srv lookups */ + unsigned int portinuri:1; /*!< Non zero if a port has been specified, will also disable srv lookups */ struct sockaddr_in sa; /*!< Our peer */ struct sockaddr_in redirip; /*!< Where our RTP should be going if not to us */ struct sockaddr_in vredirip; /*!< Where our Video RTP should be going if not to us */ @@ -1875,7 +1875,7 @@ struct sip_peer { struct ast_dnsmgr_entry *dnsmgr;/*!< DNS refresh manager for peer */ struct sockaddr_in addr; /*!< IP address of peer */ int maxcallbitrate; /*!< Maximum Bitrate for a video call */ - int portinuri:1; /*!< Whether the port should be included in the URI */ + unsigned int portinuri:1; /*!< Whether the port should be included in the URI */ /* Qualification */ struct sip_pvt *call; /*!< Call pointer */ @@ -11875,10 +11875,9 @@ static enum parse_register_result parse_register_contact(struct sip_pvt *pvt, st ast_log(LOG_NOTICE, "Not a valid SIP contact (missing sip:) trying to use anyway\n"); } - if (!ast_strlen_zero(pt)) - peer->portinuri = 1; - else - peer->portinuri = 0; + /* If we have a port number in the given URI, make sure we do remember to not check for NAPTR/SRV records. + The domain part is actually a host. */ + peer->portinuri = !ast_strlen_zero(pt) ? TRUE : FALSE; /* handle the transport type specified in Contact header. */ if ((transport_type = get_transport_str2enum(transport))) {