Summary: | ASTERISK-02860: Incorrect parsing of remote-party-ID | ||
Reporter: | linuss (linuss) | Labels: | |
Date Opened: | 2004-11-19 05:08:50.000-0600 | Date Closed: | 2008-01-15 15:14:47.000-0600 |
Priority: | Minor | Regression? | No |
Status: | Closed/Complete | Components: | Channels/chan_sip/Interoperability |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ||
Description: | When a Cisco AS5xxx gateway passes on a call on which caller ID was not received, the remote party ID does not have the username field filled in, instead there is just the hostname part e.g.: Remote-Party-ID: <sip:1.2.3.4>;party=calling;screen=yes;privacy=full Asterisk incorrectly reads this via get_rpid_num() and results in a caller ID being passed out of '1234' rather than a blank one, or 'unknown'. Diffs suggest that this is still an issue on the current head. ****** ADDITIONAL INFORMATION ****** We don't have a sacrificial machine to upgrade to HEAD at this time to verify on latest code, but we'll easily route a PSTN number with this behavour to the SIP box of anyones choice for development testing. | ||
Comments: | By: Olle Johansson (oej) 2004-11-20 15:03:04.000-0600 Could I please get qa SIP debug of a transaction with all the headers from the Cisco and our resulting RPID header? By: linuss (linuss) 2004-11-23 05:19:32.000-0600 Sample SIP INVITE follows: INVITE sip:1022@gk.magrathea.net:5060 SIP/2.0 Via: SIP/2.0/UDP 123.123.123.123:5060 From: "anonymous" <sip:123.123.123.123>;tag=4891E5BC-151A To: <sip:1022@gk.magrathea.net> Date: Tue, 23 Nov 2004 11:15:12 gmt Call-ID: C705FEA7-3C7711D9-B00AE070-2E6BBE31@123.123.123.123 Supported: timer,100rel Min-SE: 1800 Cisco-Guid: 3339018879-1014436313-2953306224-778812977 User-Agent: Cisco-SIPGateway/IOS-12.x Allow: INVITE, OPTIONS,BYE, CANCEL, ACK, PRACK, COMET, REFER, SUBSCRIBE, NOTIFY, INFO CSeq: 101 INVITE Max-Forwards: 6 Remote-Party-ID: <sip:123.123.123.123>;party=calling;screen=yes;privacy=full Timestamp: 1101208512 Contact: <sip:123.123.123.123:5060> Expires: 180 Allow-Events: telephone-event Content-Type: application/sdp Content-Length: 371 v=0 o=CiscoSystemsSIP-GW-UserAgent 9665 750 IN IP4 123.123.123.123 s=SIP Call c=IN IP4 123.123.123.123 t=0 0 m=audio 18022 RTP/AVP 4 18 3 2 8 0 19 c=IN IP4 123.123.123.123 a=rtpmap:4 G723/8000 a=fmtp:4 annexa=no a=rtpmap:18 G729/8000 a=fmtp:18 annexb=yes a=rtpmap:3 GSM/8000 a=rtpmap:2 G726-32/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:0 PCMU/8000 a=rtpmap:19 CN/8000 By: linuss (linuss) 2004-11-23 05:23:23.000-0600 Additional info: The problem is specifically seen when the call is onwarded routed to an IAX destination, although I assume it also occurs on SIP. It doesnt actually now appear to be directly related to the RPID field, as with the RPID removed the same behaviour occurs when * parses the 'from' address. The problem would appear to be in whichever function is used to get_callerid_from_from or similar, as this function will be incorrectly deciding that a caller id in the form a.b.c.d is actually a number and not a host address. By: Mark Spencer (markster) 2004-11-23 11:10:41.000-0600 Fixed in CVS By: Russell Bryant (russell) 2004-11-25 10:20:51.000-0600 Since you commited this from the airport, I'll let it slide that you didn't give me a patch. :) By: Digium Subversion (svnbot) 2008-01-15 15:14:47.000-0600 Repository: asterisk Revision: 4323 U trunk/channels/chan_sip.c ------------------------------------------------------------------------ r4323 | markster | 2008-01-15 15:14:47 -0600 (Tue, 15 Jan 2008) | 2 lines Fix for rpid (from airport, bug ASTERISK-2860) ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=4323 |