summaryrefslogtreecommitdiff
path: root/main/rtp_engine.c
diff options
context:
space:
mode:
authorTerry Wilson <twilson@digium.com>2010-09-01 18:52:27 +0000
committerTerry Wilson <twilson@digium.com>2010-09-01 18:52:27 +0000
commit920f5ea8b7ba39394b23037da82c92529b6b61a7 (patch)
treed44985b2775c7b67a6c6b95e497c7f9941721451 /main/rtp_engine.c
parentaf67f7621a3dc3f1b5634459abf81f810e1713e8 (diff)
Merged revisions 284477 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8 ........ r284477 | twilson | 2010-09-01 13:44:36 -0500 (Wed, 01 Sep 2010) | 17 lines Fix SRTP for changing SSRC and multiple a=crypto SDP lines Adding code to Asterisk that changed the SSRC during bridges and masquerades broke SRTP functionality. Also broken was handling the situation where an incoming INVITE had more than one crypto offer. This patch caches the SRTP policies the we use so that we can change the ssrc and inform libsrtp of the new streams. It also uses the first acceptable a=crypto line from the incoming INVITE. (closes issue #17563) Reported by: Alexcr Patches: srtp.diff uploaded by twilson (license 396) Tested by: twilson Review: https://reviewboard.asterisk.org/r/878/ ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@284479 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/rtp_engine.c')
-rw-r--r--main/rtp_engine.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/main/rtp_engine.c b/main/rtp_engine.c
index 02c453ff9..9fe5c5a62 100644
--- a/main/rtp_engine.c
+++ b/main/rtp_engine.c
@@ -282,6 +282,10 @@ static void instance_destructor(void *obj)
return;
}
+ if (instance->srtp) {
+ res_srtp->destroy(instance->srtp);
+ }
+
/* Drop our engine reference */
ast_module_unref(instance->engine->mod);