[Home]

Summary:ASTERISK-20060: fix suggested for a misleading warning when getting a 408
Reporter:Walter Doekes (wdoekes)Labels:
Date Opened:2012-06-27 03:41:49Date Closed:2012-09-26 16:21:27
Priority:TrivialRegression?No
Status:Closed/CompleteComponents:Channels/chan_sip/Interoperability
Versions:10.7.0 Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:{code}
.
       case 408: /* Request timeout */
       case 481: /* Call leg does not exist */
               /* Could be REFER caused INVITE with replaces */
               ast_log(LOG_WARNING, "Re-invite to non-existing call leg on other UA. SIP dialog '%s'. Giving up.\n", p->callid);
               xmitres = transmit_request(p, SIP_ACK, seqno, XMIT_UNRELIABLE, FALSE);
               if (p->owner) {
                       ast_queue_hangup_with_cause(p->owner, AST_CAUSE_CONGESTION);
               }
               break;
{code}

(1) A 408 will likely be on initial invite, not a re-invite.
(2) It has nothing to do with existing call legs.

Fix: move the 408 to here:

{code}
.
       case 405: /* Not allowed */
       case 501: /* Not implemented */
               xmitres = transmit_request(p, SIP_ACK, seqno, XMIT_UNRELIABLE, FALSE);
               if (p->owner) {
                       ast_queue_hangup_with_cause(p->owner, AST_CAUSE_CONGESTION);
               }
               break;
       }
{code}
Comments:By: Rusty Newton (rnewton) 2012-06-29 13:46:33.360-0500

acknowledged and moved into our queue. Walter if you get to it first and have the time to write and test it, great!



By: Birger "WIMPy" Harzenetter (wimpy) 2012-11-07 00:51:42.694-0600

I'm not the SIP guy, but that is exactly the message I found when I had random disconnects at session-timer intervals.