diff options
author | rmudgett <rmudgett@f38db490-d61c-443f-a65b-d21fe96a405b> | 2011-07-01 21:11:34 +0000 |
---|---|---|
committer | rmudgett <rmudgett@f38db490-d61c-443f-a65b-d21fe96a405b> | 2011-07-01 21:11:34 +0000 |
commit | d4d597bf7bbf8aa85a0afc7104975deddde625a7 (patch) | |
tree | fd21aa2acc4bd7e6cf2db95ddbce7bed26f40316 /main/file.c | |
parent | 27a2e8e887bcf87511ff1c622623b2f66223255e (diff) |
Merged revisions 326144 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r326144 | rmudgett | 2011-07-01 16:07:22 -0500 (Fri, 01 Jul 2011) | 16 lines
Better way to get chan and pvt lock for issue ASTERISK-17431.
Redoes -r308945 for issue ASTERISK-17431 deadlock fix for
sip_set_udptl_peer() and sip_set_rtp_peer().
* Lock the channels in the defined order and avoid the need for a deadlock
avoidance loop.
* Lock the channel before getting the pointer to the private structure to
be sure that the pointer will not change due to a masquerade or channel
hangup.
* To preserve sanity, check that chan and p->owner are the same. (Pointer
rearangements should not happen without the protection of locks because
bad things tend to happen otherwise.)
........
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@326145 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/file.c')
0 files changed, 0 insertions, 0 deletions