From 0ef680cff0d1bd1ccc69119cc45be895824eb266 Mon Sep 17 00:00:00 2001
From: Joshua Colp <jcolp@digium.com>
Date: Fri, 10 Oct 2014 12:10:53 +0000
Subject: [PATCH] res_pjsip_nat: Place source port into rport of responses if
 'force_rport' is on.

When the 'force_rport' option is enabled the behavior should be the same
as if the remote side placed rport into the message themselves. Therefore
any responses we send should include the source port of the request in the
rport of the Via header.

#SIPit31

ASTERISK-24387 #close
Reported by: Matt Jordan
........

Merged revisions 425131 from http://svn.asterisk.org/svn/asterisk/branches/12
........

Merged revisions 425132 from http://svn.asterisk.org/svn/asterisk/branches/13


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@425133 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 res/res_pjsip_nat.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/res/res_pjsip_nat.c b/res/res_pjsip_nat.c
index 4ba56ab4c7..654e51ba89 100644
--- a/res/res_pjsip_nat.c
+++ b/res/res_pjsip_nat.c
@@ -62,7 +62,7 @@ static pj_bool_t handle_rx_message(struct ast_sip_endpoint *endpoint, pjsip_rx_d
 	}
 
 	if (endpoint->nat.force_rport) {
-		rdata->msg_info.via->rport_param = 0;
+		rdata->msg_info.via->rport_param = rdata->pkt_info.src_port;
 	}
 
 	return PJ_FALSE;
-- 
GitLab