From cf5e4fab3e7688447ac9184638f6258815873519 Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Tue, 25 Jun 2013 13:30:26 -0400 Subject: [PATCH] this fixes rtcp auth problems against libsrtp based clients taking rfc 3711 literally, this seems to be incorrect. --- daemon/rtcp.c | 6 +++--- tests/simulator-ng.pl | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/daemon/rtcp.c b/daemon/rtcp.c index b540a9c53..d4d0b3e8b 100644 --- a/daemon/rtcp.c +++ b/daemon/rtcp.c @@ -323,13 +323,13 @@ static inline int check_session_keys(struct crypto_context *c) { goto error; str_init_len(&s, c->session_key, c->crypto_suite->session_key_len); - if (crypto_gen_session_key(c, &s, 0x03, 4)) + if (crypto_gen_session_key(c, &s, 0x03, 6)) goto error; str_init_len(&s, c->session_auth_key, c->crypto_suite->srtcp_auth_key_len); - if (crypto_gen_session_key(c, &s, 0x04, 4)) + if (crypto_gen_session_key(c, &s, 0x04, 6)) goto error; str_init_len(&s, c->session_salt, c->crypto_suite->session_salt_len); - if (crypto_gen_session_key(c, &s, 0x05, 4)) + if (crypto_gen_session_key(c, &s, 0x05, 6)) goto error; c->have_session_key = 1; diff --git a/tests/simulator-ng.pl b/tests/simulator-ng.pl index dce5e29ac..9baf1f676 100755 --- a/tests/simulator-ng.pl +++ b/tests/simulator-ng.pl @@ -218,9 +218,9 @@ sub gen_rtp_session_keys { sub gen_rtcp_session_keys { my ($master_key, $master_salt) = @_; - my $session_key = prf_n(128, $master_key, xor_112($master_salt, "\3\0\0\0\0")); - my $auth_key = prf_n(160, $master_key, xor_112($master_salt, "\4\0\0\0\0")); - my $session_salt = prf_n(112, $master_key, xor_112($master_salt, "\5\0\0\0\0")); + my $session_key = prf_n(128, $master_key, xor_112($master_salt, "\3\0\0\0\0\0\0")); + my $auth_key = prf_n(160, $master_key, xor_112($master_salt, "\4\0\0\0\0\0\0")); + my $session_salt = prf_n(112, $master_key, xor_112($master_salt, "\5\0\0\0\0\0\0")); # print("RTCP keys generated for master key " . unpack("H8", $master_key) . "... and salt " . # unpack("H8", $master_salt) . "... are: " . # unpack("H8", $session_key) . "..., " .