[asterisk-bugs] [JIRA] (ASTERISK-28900) Memory corruption and deadlock in frame.c when gatewaying between non-T.38 and T.38 endpoints
Gregory Massel (JIRA)
noreply at issues.asterisk.org
Sat May 16 07:58:25 CDT 2020
Gregory Massel created ASTERISK-28900:
-----------------------------------------
Summary: Memory corruption and deadlock in frame.c when gatewaying between non-T.38 and T.38 endpoints
Key: ASTERISK-28900
URL: https://issues.asterisk.org/jira/browse/ASTERISK-28900
Project: Asterisk
Issue Type: Bug
Security Level: None
Components: Core/Bridging
Affects Versions: 16.10.0
Environment: Ubuntu 18.04.4 LTS, Asterisk 16.10.0, kernels 5.0.0-29-generic and 5.0.0-37-generic, Intel E5-1680 and E3-1271. No DAHDI.
Reporter: Gregory Massel
When the T.38 gateway is enabled on two PJSIP endpoints [ set_var=FAXOPT(gateway)=yes,15 ] and the called endpoint initiates a T.38 re-INVITE and the calling endpoint does NOT support T.38, Asterisk tries to gateway between the audio (RTP) and UDPTL (T.38). In most instances, this works fine. However, when the calling party involves a Yeastar PBX device, the call will - every time, repeatedly - cause the Asterisk box performing the T.38 gatewaying to immediately deadlock and, shortly thereafter, Asterisk core dumps.
At present this is only happening if the calling device is a Yeastar PBX which seems to indicate that a corrupt, malformed or missing RTP frame generated by that device is what is crashing Asterisk.
In many instances the core dump is zero bytes or the backtrace is largely unusable, however, I have managed to extract a few usable backtraces as well as packet captures of the calls that tigger the crash.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list