Merge from 1.4 : Don't send 183 reliably...
authorOlle Johansson <oej@edvina.net>
Sat, 28 Oct 2006 19:16:23 +0000 (19:16 +0000)
committerOlle Johansson <oej@edvina.net>
Sat, 28 Oct 2006 19:16:23 +0000 (19:16 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46383 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_sip.c

index 63cb614..6341b71 100644 (file)
@@ -3546,7 +3546,7 @@ static int sip_write(struct ast_channel *ast, struct ast_frame *frame)
                                if ((ast->_state != AST_STATE_UP) &&
                                        !ast_test_flag(&p->flags[0], SIP_PROGRESS_SENT) && 
                                    !ast_test_flag(&p->flags[0], SIP_OUTGOING)) {
-                                       transmit_response_with_t38_sdp(p, "183 Session Progress", &p->initreq, XMIT_RELIABLE);
+                                       transmit_response_with_t38_sdp(p, "183 Session Progress", &p->initreq, XMIT_UNRELIABLE);
                                        ast_set_flag(&p->flags[0], SIP_PROGRESS_SENT);
                                }
                                res = ast_udptl_write(p->udptl, frame);
@@ -12899,7 +12899,7 @@ static int handle_invite_replaces(struct sip_pvt *p, struct sip_request *req, in
                /* We should answer something here. If we are here, the
                        call we are replacing exists, so an accepted 
                        can't harm */
-               transmit_response_with_sdp(p, "200 OK", req, 1);
+               transmit_response_with_sdp(p, "200 OK", req, XMIT_RELIABLE);
                /* Do something more clever here */
                ast_channel_unlock(c);
                sip_pvt_unlock(p->refer->refer_call);
@@ -12908,7 +12908,7 @@ static int handle_invite_replaces(struct sip_pvt *p, struct sip_request *req, in
        if (!c) {
                /* What to do if no channel ??? */
                ast_log(LOG_ERROR, "Unable to create new channel.  Invite/replace failed.\n");
-               transmit_response_with_sdp(p, "503 Service Unavailable", req, 1);
+               transmit_response_reliable(p, "503 Service Unavailable", req);
                append_history(p, "Xfer", "INVITE/Replace Failed. No new channel.");
                sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT);
                sip_pvt_unlock(p->refer->refer_call);
@@ -12933,7 +12933,7 @@ static int handle_invite_replaces(struct sip_pvt *p, struct sip_request *req, in
           Targetcall is not touched by the masq */
 
        /* Answer the incoming call and set channel to UP state */
-       transmit_response_with_sdp(p, "200 OK", req, 1);
+       transmit_response_with_sdp(p, "200 OK", req, XMIT_RELIABLE);
        ast_setstate(c, AST_STATE_UP);
        
        /* Stop music on hold and other generators */