Summary: | ASTERISK-11515: Do not process the UDPTL proxy under two sip channel (like in 1.4.18.x) | ||
Reporter: | Volnikov Ivan (ivan) | Labels: | |
Date Opened: | 2008-02-26 07:39:35.000-0600 | Date Closed: | 2008-02-27 09:29:08.000-0600 |
Priority: | Major | Regression? | No |
Status: | Closed/Complete | Components: | Channels/chan_sip/T.38 |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ( 0) chan_sip_t38_proxy.patch | |
Description: | Test system: 2 SIP Gateway with support t38 re-invate (for example, SPA2102 with 5.3.2 firmware) Description: The confirmation under SIP UDPTL sessions heppends successfully but detection of fax signal do not process. ****** ADDITIONAL INFORMATION ****** Detailed debugging has shown that one of channel in T38_PEER_REINVITE state, but another remains in T38_DISABLED when SDP_T38_ACCEPT action produced after SIP 200 OK signal. This problem there is in the 1.6.beta3 and the 1.6.beta4 too. If sombody needs fix this problem, use attached patch. Probably, it not up to the end the exact decision, but it is efficient. I tested this patch for compatibility with app_fax. 1.4.18 release worked propertly. | ||
Comments: | By: Dmitry Andrianov (dimas) 2008-02-26 18:23:10.000-0600 Hmmm. I found your patch after posting mine ( http://bugs.digium.com/view.php?id=12078 ). I believe we both fixing the same issue. However, honestly I do not think your patch is the good approach to fix the problem because it will make t38state inconsistent again. Imagine followin scenario: 1. Peers A and B are bridged 2. A doest T38 reinvite. t38state for A becomes PEER_REINVITE 3. Asterisk passes reinvite to peer B and DOES NOT change B's t38state - it remains T38_DISABLED. Which is not correct already. 4. When OK from B received B's state changes to T38_PEER_REINVITE and then a bit later to T38_ENABLED So duging steps 3 and 4 t38state for peer B contained inconsistent values. My patch differs in items 3 and 4: 3. Asterisk passes reinvite to peer B and sets B's t38state to T38_LOCAL_REINVITE 4. When Asterisk received OK from B it changes B's state from T38_LOCAL_REINVITE to T38_ENABLED. By: Dmitry Andrianov (dimas) 2008-02-26 18:23:56.000-0600 And also you are producing copy&paste lines ;=) By: Digium Subversion (svnbot) 2008-02-27 09:28:39.000-0600 Repository: asterisk Revision: 104533 U trunk/channels/chan_sip.c U trunk/main/rtp.c ------------------------------------------------------------------------ r104533 | file | 2008-02-27 09:27:39 -0600 (Wed, 27 Feb 2008) | 8 lines Fix T38 passthrough regression introduced by state changes. (closes issue ASTERISK-11519) Reported by: dimas Patches: v1-12078.patch uploaded by dimas (license 88) (closes issue ASTERISK-11515) Reported by: Ivan ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=104533 |