[asterisk-bugs] [JIRA] Created: (ASTERISK-20146) chan_sip retransmit timeout causes a AST_CAUSE_PROTOCOL_ERROR, translates to 603 Declined

Matt Jordan (JIRA) noreply at issues.asterisk.org
Wed Jul 18 08:47:21 CDT 2012


chan_sip retransmit timeout causes a AST_CAUSE_PROTOCOL_ERROR, translates to 603 Declined
-----------------------------------------------------------------------------------------

                 Key: ASTERISK-20146
                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-20146
             Project: Asterisk
          Issue Type: Bug
      Security Level: None
          Components: Channels/chan_sip/General
    Affects Versions: 1.8.14.0
            Reporter: Walter Doekes


When chan_sip.c does a {{ast_queue_hangup_with_cause(channel, AST_CAUSE_PROTOCOL_ERROR);}} the cause code AST_CAUSE_PROTOCOL_ERROR gets translated to "603 Declined" because AST_CAUSE_PROTOCOL_ERROR is not found in {{cause2sip}}.

{{ast_queue_hangup_with_cause(channel, AST_CAUSE_PROTOCOL_ERROR);}} is called from {{__sip_autodestruct()}}, {{handle_request_bye()}} on rare occasions, and (relevant in my case) from the {{retrans_pkt()}} retransmit handler on timeout.

For the timeout, I'd expect a 408 or something. Especially when I pass the ${HANGUPCAUSE} to an A-leg.

The translation to 603 happens here:
{noformat}

                                if (p->hangupcause && (res = hangup_cause2sip(p->hangupcause)))
                                        transmit_response_reliable(p, res, &p->initreq);
                                else
                                        transmit_response_reliable(p, "603 Declined", &p->initreq);
{noformat}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira



More information about the asterisk-bugs mailing list