Fix a bug with the change I made yesterday to outbound proxy support.
authorJoshua Colp <jcolp@digium.com>
Tue, 14 Apr 2009 13:14:21 +0000 (13:14 +0000)
committerJoshua Colp <jcolp@digium.com>
Tue, 14 Apr 2009 13:14:21 +0000 (13:14 +0000)
Per discussion with oej on IRC we need the actual IP address, not the
outbound proxy IP address, in the sa field. This change matches the already
existing code for all other uses of the outbound proxy setting.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@188247 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_sip.c

index 2eb5d38..dbbdbcf 100644 (file)
@@ -5002,11 +5002,7 @@ static int create_addr(struct sip_pvt *dialog, const char *opeer, struct sockadd
        /* Get the outbound proxy information */
        ref_proxy(dialog, obproxy_get(dialog, NULL));
 
-       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) {
+       if (sin) {
                /* This address should be updated using dnsmgr */
                memcpy(&dialog->sa.sin_addr, &sin->sin_addr, sizeof(dialog->sa.sin_addr));
                if (!sin->sin_port) {