Summary: | ASTERISK-12376: [patch] OPTIONS response on default port. | ||
Reporter: | Alexandr Dubovikov (baron) | Labels: | |
Date Opened: | 2008-07-14 10:47:40 | Date Closed: | 2009-05-19 09:01:20 |
Priority: | Major | Regression? | No |
Status: | Closed/Complete | Components: | Channels/chan_sip/General |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ( 0) check_via.patch | |
Description: | handle_request_options doesn't have check_via() function and because the response go to default port 5060, but should got to port was defined in Via: Header. check_via should be also in the folows functions: handle_request_info() handle_request_notify() handle_request_options() handle_request_refer() handle_request_message(); | ||
Comments: | By: Tilghman Lesher (tilghman) 2008-07-14 10:51:31 Is there an actual interop problem being reported here, or is this simply pedantry? By: Olle Johansson (oej) 2008-07-14 11:09:14 Well, it depends on the NAT settings too. By: Alexandr Dubovikov (baron) 2008-07-14 11:14:05 Yep, because our softswitch wait the answer on the Via's port and send hundert times the OPTIONS packet and after timeout set the FAILURE flag on Asterisk's SIP trunk. also it should be RFC 3261 comform: 18.1.2 Receiving Responses and 18.2.2 Sending Responses The server transport uses the value of the top Via header field in order to determine where to send a response. It MUST follow the following process: ..... By: Digium Subversion (svnbot) 2009-01-09 14:14:09.000-0600 Repository: asterisk Revision: 168128 U branches/1.4/channels/chan_sip.c ------------------------------------------------------------------------ r168128 | mmichelson | 2009-01-09 14:08:04 -0600 (Fri, 09 Jan 2009) | 13 lines Add check_via calls to more request handlers INFO, NOTIFY, OPTIONS, REFER, and MESSAGE requests were not checking the topmost Via to determine where to send the response. Adding check_via calls to those request handlers solves this. (closes issue ASTERISK-12376) Reported by: baron Patches: check_via.patch uploaded by baron (license 531) Tested by: baron ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=168128 By: Digium Subversion (svnbot) 2009-01-09 15:53:20.000-0600 Repository: asterisk Revision: 168193 _U trunk/ U trunk/channels/chan_sip.c ------------------------------------------------------------------------ r168193 | mmichelson | 2009-01-09 15:53:19 -0600 (Fri, 09 Jan 2009) | 21 lines Merged revisions 168128 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r168128 | mmichelson | 2009-01-09 14:08:04 -0600 (Fri, 09 Jan 2009) | 13 lines Add check_via calls to more request handlers INFO, NOTIFY, OPTIONS, REFER, and MESSAGE requests were not checking the topmost Via to determine where to send the response. Adding check_via calls to those request handlers solves this. (closes issue ASTERISK-12376) Reported by: baron Patches: check_via.patch uploaded by baron (license 531) Tested by: baron ........ ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=168193 By: Digium Subversion (svnbot) 2009-01-09 15:56:57.000-0600 Repository: asterisk Revision: 168195 _U branches/1.6.0/ U branches/1.6.0/channels/chan_sip.c ------------------------------------------------------------------------ r168195 | mmichelson | 2009-01-09 15:56:57 -0600 (Fri, 09 Jan 2009) | 29 lines Merged revisions 168193 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ................ r168193 | mmichelson | 2009-01-09 15:53:26 -0600 (Fri, 09 Jan 2009) | 21 lines Merged revisions 168128 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r168128 | mmichelson | 2009-01-09 14:08:04 -0600 (Fri, 09 Jan 2009) | 13 lines Add check_via calls to more request handlers INFO, NOTIFY, OPTIONS, REFER, and MESSAGE requests were not checking the topmost Via to determine where to send the response. Adding check_via calls to those request handlers solves this. (closes issue ASTERISK-12376) Reported by: baron Patches: check_via.patch uploaded by baron (license 531) Tested by: baron ........ ................ ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=168195 By: Digium Subversion (svnbot) 2009-01-09 15:57:40.000-0600 Repository: asterisk Revision: 168196 _U branches/1.6.1/ U branches/1.6.1/channels/chan_sip.c ------------------------------------------------------------------------ r168196 | mmichelson | 2009-01-09 15:57:40 -0600 (Fri, 09 Jan 2009) | 29 lines Merged revisions 168193 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ................ r168193 | mmichelson | 2009-01-09 15:53:26 -0600 (Fri, 09 Jan 2009) | 21 lines Merged revisions 168128 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r168128 | mmichelson | 2009-01-09 14:08:04 -0600 (Fri, 09 Jan 2009) | 13 lines Add check_via calls to more request handlers INFO, NOTIFY, OPTIONS, REFER, and MESSAGE requests were not checking the topmost Via to determine where to send the response. Adding check_via calls to those request handlers solves this. (closes issue ASTERISK-12376) Reported by: baron Patches: check_via.patch uploaded by baron (license 531) Tested by: baron ........ ................ ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=168196 By: Mark Michelson (mmichelson) 2009-01-12 09:10:32.000-0600 I'm re-opening this issue because this fix isn't really enough to make response sending correct in chan_sip.c I'm setting a relationship to issue 8855 because if issue 8855 is closed properly, then this one will be ready to be closed, too. By: Joshua C. Colp (jcolp) 2009-05-19 09:01:19 I'm closing this out as I have completed my changes for 8855 in a branch which will be merged soon. I would appreciate any feedback on things there. |