]> git.ipfire.org Git - thirdparty/asterisk.git/commit
res_rtp_asterisk: Prevent simultaneous access to DTLS SSL context. 86/786/3
authorJoshua Colp <jcolp@digium.com>
Wed, 1 Jul 2015 12:55:47 +0000 (09:55 -0300)
committerJoshua Colp <jcolp@digium.com>
Mon, 6 Jul 2015 23:16:38 +0000 (20:16 -0300)
commit1ad827327a227cdd7311b0db476009e26ea9f009
treec65660fab95897d392aa40e09f6c04444e50321c
parent895dbe532ca1fce319b8c475fc636fd7c7ec4252
res_rtp_asterisk: Prevent simultaneous access to DTLS SSL context.

This change moves logic for setting up the DTLS SSL contexts to
when the SDP is done being processed instead of when ICE negotiation
completes. It also stops handshakes from being initiated when we
are acting as a server.

Manipulating the SSL context when ICE negotiation has completed
is problematic as the SSL context is not protected and if acting
as a client the remote side may have started DTLS negotiation
already.

The retransmission timeout timer code has also been split up
and simplified some. Both RTP and RTCP now have their own timers
and the points at which the timer is stopped and started is now
more specific. When a packet is sent the timer is started. When
a response is received but before it is processed the timer is
stopped. This provides a guarantee that the timeout is not
occurring while the response is processed.

ASTERISK-22805 #close
ASTERISK-24550 #close
ASTERISK-24651 #close
ASTERISK-24832 #close
ASTERISK-25103 #close
ASTERISK-25127 #close

Change-Id: Ib75ea2546f29d6efc3d2d37c58df6986c7bd9b91
res/res_rtp_asterisk.c