[asterisk-bugs] [JIRA] (ASTERISK-26926) Crash caused by missing check in func_speex.c with codec_siren14
Richard Kenner (JIRA)
noreply at issues.asterisk.org
Fri Apr 7 06:05:58 CDT 2017
Richard Kenner created ASTERISK-26926:
-----------------------------------------
Summary: Crash caused by missing check in func_speex.c with codec_siren14
Key: ASTERISK-26926
URL: https://issues.asterisk.org/jira/browse/ASTERISK-26926
Project: Asterisk
Issue Type: Bug
Security Level: None
Components: Functions/func_speex
Affects Versions: 14.3.0
Environment: Siren14 (and likely Siren7)
Reporter: Richard Kenner
There is a crash in preprocess_analysis (st=0x2ac0740fd750, x=0x3cab9378) at preprocess.c:626 due to a frame being passed to func_speex.c looking like:
(gdb) print *frame
$1 = {frametype = AST_FRAME_VOICE, subclass = {integer = 0,
format = 0xe2f9e20, frame_ending = 0}, datalen = 0, samples = 640,
mallocd = 1, mallocd_hdr_len = 232, offset = 64,
src = 0x2ac07413e7f8 "siren14tolin32", data = {ptr = 0x3cab9378,
uint32 = 1017877368, pad = "x\223\253<\000\000\000"}, delivery = {
tv_sec = 1491485582, tv_usec = 407272}, frame_list = {next = 0x0},
flags = 0, ts = 0, len = 0, seqno = 0}
A check for datalen != 0 is missing before the call to speex_preprocess around line 188 of func_speex.c.
This was most recently seen with Siren14, but I believe also occurs less often with Siren7.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list