diff options
author | Marvin W <git@larma.de> | 2021-04-01 11:51:35 +0200 |
---|---|---|
committer | Marvin W <git@larma.de> | 2021-04-01 11:51:35 +0200 |
commit | c5ab4fed87d2dedb5ccbf671c8b2742a11251a0f (patch) | |
tree | 4c62500e3b3ca957cfd267ddd64a4cf1ed387a7d | |
parent | c5cb43350af15e99d7304935ccf5fe84c2acdfc9 (diff) | |
download | dino-c5ab4fed87d2dedb5ccbf671c8b2742a11251a0f.tar.gz dino-c5ab4fed87d2dedb5ccbf671c8b2742a11251a0f.zip |
Fix bug in legacy SRTP decryption
-rw-r--r-- | plugins/rtp/src/stream.vala | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/plugins/rtp/src/stream.vala b/plugins/rtp/src/stream.vala index bedd6f8a..efa1b497 100644 --- a/plugins/rtp/src/stream.vala +++ b/plugins/rtp/src/stream.vala @@ -279,7 +279,7 @@ public class Dino.Plugins.Rtp.Stream : Xmpp.Xep.JingleRtp.Stream { } private void prepare_remote_crypto() { - if (remote_crypto != null && crypto_session.has_decrypt) { + if (remote_crypto != null && !crypto_session.has_decrypt) { crypto_session.set_decryption_key(remote_crypto.crypto_suite, remote_crypto.key, remote_crypto.salt); debug("Setting up decryption with key params %s", remote_crypto.key_params); } @@ -339,6 +339,11 @@ public class Dino.Plugins.Rtp.Stream : Xmpp.Xep.JingleRtp.Stream { } public void on_ssrc_pad_added(string ssrc, Gst.Pad pad) { + debug("New ssrc %s with pad %s", ssrc, pad.name); + if (participant_ssrc != null && participant_ssrc != ssrc) { + warning("Got second ssrc on stream (old: %s, new: %s), ignoring", participant_ssrc, ssrc); + return; + } participant_ssrc = ssrc; recv_rtp_src_pad = pad; if (decode != null) { |