diff options
author | Richard Mudgett <rmudgett@digium.com> | 2017-04-29 16:11:21 -0500 |
---|---|---|
committer | Richard Mudgett <rmudgett@digium.com> | 2017-04-29 18:15:32 -0500 |
commit | 52e4f02b1a100a414161ee70c64b9af5993e26bb (patch) | |
tree | 458b707b8e90ee891690aba3189f0f1fe32a94db /formats/format_g726.c | |
parent | 09cde039a3e3871d66d6b1e78051fb143674d814 (diff) |
res_pjsip_t38.c: Fix deadlock in T.38 framehook.
A deadlock can happen between a channel lock and a pjsip session media
container lock. One thread is processing a reINVITE's SDP and walking
through the session's media container when it waits for the channel lock
to put the determined format capabilities onto the channel. The other
thread is writing a frame to the channel and processing the T.38 frame
hook. The T.38 frame hook then waits for the pjsip session's media
container lock. The two threads are now deadlocked.
* Made the T.38 frame hook release the channel lock before searching the
session's media container. This fix has been done to several other
frame hooks to fix deadlocks.
ASTERISK-26974 #close
Change-Id: Ie984a76ce00bef6ec9aa239010e51e8dd74c8186
Diffstat (limited to 'formats/format_g726.c')
0 files changed, 0 insertions, 0 deletions