Skip to content
Snippets Groups Projects
Commit b136baaf authored by Olle Johansson's avatar Olle Johansson
Browse files

Fix rport handling.

...where did the 1.2 properties come from, really? they're back.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46629 65c4cc65-6c06-0410-ace0-fbb531ad65f3
parent 97be2ac7
No related branches found
No related tags found
No related merge requests found
......@@ -5330,7 +5330,8 @@ static int copy_via_headers(struct sip_pvt *p, struct sip_request *req, const st
if (rport && *(rport+6) == '=')
rport = NULL; /* We already have a parameter to rport */
 
if (rport && ast_test_flag(&p->flags[0], SIP_NAT) == SIP_NAT_ALWAYS) {
/* Check rport if NAT=yes or NAT=rfc3581 (which is the default setting) */
if (rport && ((ast_test_flag(&p->flags[0], SIP_NAT) == SIP_NAT_ALWAYS) || (ast_test_flag(&p->flags[0], SIP_NAT) == SIP_NAT_RFC3581))) {
/* We need to add received port - rport */
char tmp[256], *end;
 
......@@ -5347,9 +5348,6 @@ static int copy_via_headers(struct sip_pvt *p, struct sip_request *req, const st
}
 
/* Add rport to first VIA header if requested */
/* Whoo hoo! Now we can indicate port address translation too! Just
another RFC (RFC3581). I'll leave the original comments in for
posterity. */
snprintf(new, sizeof(new), "%s;received=%s;rport=%d",
tmp, ast_inet_ntoa(p->recv.sin_addr),
ntohs(p->recv.sin_port));
......
......@@ -255,7 +255,7 @@ srvlookup=yes ; Enable DNS SRV lookups on outbound calls
;
;nat=no ; Global NAT settings (Affects all peers and users)
; yes = Always ignore info and assume NAT
; no = Use NAT mode only according to RFC3581
; no = Use NAT mode only according to RFC3581 (;rport)
; never = Never attempt NAT mode or RFC3581 support
; route = Assume NAT, don't send rport
; (work around more UNIDEN bugs)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment