[asterisk-commits] file: branch 1.6.2 r188070 - in /branches/1.6.2: ./ channels/chan_sip.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon Apr 13 11:34:36 CDT 2009


Author: file
Date: Mon Apr 13 11:34:31 2009
New Revision: 188070

URL: http://svn.digium.com/svn-view/asterisk?view=rev&rev=188070
Log:
Merged revisions 188067 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/trunk

........
  r188067 | file | 2009-04-13 13:28:06 -0300 (Mon, 13 Apr 2009) | 10 lines
  
  Fix a bug where using an outbound proxy would cause the local address to be 127.0.0.1.
  
  Copy the outbound proxy IP address into the SIP dialog structure as the IP address we will
  be sending to. This has to be done because the logic that determines what local IP address to use
  in the SIP messages is not aware of an outbound proxy being in place. It only knows what IP address
  we are sending to.
  
  (closes issue #12006)
  Reported by: mnicholson
........

Modified:
    branches/1.6.2/   (props changed)
    branches/1.6.2/channels/chan_sip.c

Propchange: branches/1.6.2/
------------------------------------------------------------------------------
Binary property 'trunk-merged' - no diff available.

Modified: branches/1.6.2/channels/chan_sip.c
URL: http://svn.digium.com/svn-view/asterisk/branches/1.6.2/channels/chan_sip.c?view=diff&rev=188070&r1=188069&r2=188070
==============================================================================
--- branches/1.6.2/channels/chan_sip.c (original)
+++ branches/1.6.2/channels/chan_sip.c Mon Apr 13 11:34:31 2009
@@ -4892,6 +4892,7 @@
 	if (dialog->outboundproxy) {
 		/* If we have an outbound proxy, don't bother with DNS resolution at all, but set the port */
 		portno = port ? atoi(port) : (dialog->socket.type & SIP_TRANSPORT_TLS) ? STANDARD_TLS_PORT : STANDARD_SIP_PORT;
+		memcpy(&dialog->sa.sin_addr, &dialog->outboundproxy->ip.sin_addr, sizeof(dialog->sa.sin_addr));
 	} else if (sin) {
 		/* This address should be updated using dnsmgr */
 		memcpy(&dialog->sa.sin_addr, &sin->sin_addr, sizeof(dialog->sa.sin_addr));




More information about the asterisk-commits mailing list