[asterisk-bugs] [JIRA] (ASTERISK-24628) [patch] chan_sip - CANCEL is sent to wrong destination when 'sendrpid=yes' (in proxy environment)
Matt Jordan (JIRA)
noreply at issues.asterisk.org
Mon Dec 22 09:39:35 CST 2014
[ https://issues.asterisk.org/jira/browse/ASTERISK-24628?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=224179#comment-224179 ]
Matt Jordan commented on ASTERISK-24628:
----------------------------------------
Merged into 11+ - thanks for the contribution for this rather complex bug!
> [patch] chan_sip - CANCEL is sent to wrong destination when 'sendrpid=yes' (in proxy environment)
> -------------------------------------------------------------------------------------------------
>
> Key: ASTERISK-24628
> URL: https://issues.asterisk.org/jira/browse/ASTERISK-24628
> Project: Asterisk
> Issue Type: Bug
> Security Level: None
> Components: Channels/chan_sip/General, Channels/chan_sip/Transfers
> Affects Versions: 11.15.0
> Environment: Debian Wheezy (7), OpenSIPs
> Reporter: Karsten Wemheuer
> Assignee: Karsten Wemheuer
> Attachments: issue-failure.log, issue.patch, issue-success.log, trace-failure-1.pcap, trace-success-1.pcap
>
>
> I have three phones communicating via OpenSIPs with asterisk. Phone A dials 100 and asterisk calls SIP/phone-b. Phone B accepts the call. The User on Phone B places the call on hold, dials 200 and, while hearing the dial tone of ringing phone C, places the handset on hook. Phone B sends a SIP REFER, so that phone A is connected with the ringing phone C. Asterisk sends an SIP UPDATE to phone C to update the connected line information. Now the user on phone B (or someone else) realized that user B is not available. B (or someone else) is doing a directed pickup to get the ringing call. A and B are now connected again. But phone C is still ringing.
> Looking into the traces ,I found out, that asterisk sends the CANCEL request to stop the call to phone C directly to the phone and not to the proxy (where the INVITE comes from). The phone ignores the CANCEL (481 Call/Transaction does not exist). You can see the scenario in the pcap file trace-failure-1.pcap (cancel is at packet #83) and the debug log of asterisk issue-failure.log. Asterisk is at 192.168.10.75:25060, OpenSIPs at 192.168.10.75:5060, the phones are at 192.168.10.201 (phone-a), 192.168.10.124 (phone-b) and 192.168.10.100 (phone-c).
> If I disable updating of the connected line information (sendrpid=no) on phone C, the CANCEL will be sent to the proxy and all is well.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list