From 4c56a8430333d53f4aa465f5cb7530f467599323 Mon Sep 17 00:00:00 2001 From: Marvin W Date: Tue, 9 Nov 2021 22:06:21 +0100 Subject: Fix usage of libsrtp2 --- crypto-vala/src/srtp.vala | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'crypto-vala/src') diff --git a/crypto-vala/src/srtp.vala b/crypto-vala/src/srtp.vala index c7f45da3..882a8edc 100644 --- a/crypto-vala/src/srtp.vala +++ b/crypto-vala/src/srtp.vala @@ -81,7 +81,7 @@ public class Session { case ErrorStatus.ok: break; default: - throw new Error.UNKNOWN(@"SRTP decrypt failed: $res"); + throw new Error.UNKNOWN(@"SRTCP decrypt failed: $res"); } uint8[] ret = new uint8[buf_use]; GLib.Memory.copy(ret, buf, buf_use); @@ -105,6 +105,7 @@ public class Session { policy.key = new uint8[key.length + salt.length]; Memory.copy(policy.key, key, key.length); Memory.copy(((uint8*)policy.key) + key.length, salt, salt.length); + policy.next = null; encrypt_context.add_stream(ref policy); has_encrypt = true; } @@ -115,6 +116,7 @@ public class Session { policy.key = new uint8[key.length + salt.length]; Memory.copy(policy.key, key, key.length); Memory.copy(((uint8*)policy.key) + key.length, salt, salt.length); + policy.next = null; decrypt_context.add_stream(ref policy); has_decrypt = true; } -- cgit v1.2.3-70-g09d2 From 474512e9d16147ec59657f8e0b9fcf6147e5e84d Mon Sep 17 00:00:00 2001 From: Marvin W Date: Sat, 18 Dec 2021 22:35:32 +0100 Subject: SRTP: Drop unnecessary buffer copy --- crypto-vala/src/srtp.vala | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'crypto-vala/src') diff --git a/crypto-vala/src/srtp.vala b/crypto-vala/src/srtp.vala index 882a8edc..22210e37 100644 --- a/crypto-vala/src/srtp.vala +++ b/crypto-vala/src/srtp.vala @@ -34,9 +34,8 @@ public class Session { if (res != ErrorStatus.ok) { throw new Error.UNKNOWN(@"SRTP encrypt failed: $res"); } - uint8[] ret = new uint8[buf_use]; - GLib.Memory.copy(ret, buf, buf_use); - return ret; + buf.length = buf_use; + return buf; } public uint8[] decrypt_rtp(uint8[] data) throws Error { @@ -65,9 +64,8 @@ public class Session { if (res != ErrorStatus.ok) { throw new Error.UNKNOWN(@"SRTCP encrypt failed: $res"); } - uint8[] ret = new uint8[buf_use]; - GLib.Memory.copy(ret, buf, buf_use); - return ret; + buf.length = buf_use; + return buf; } public uint8[] decrypt_rtcp(uint8[] data) throws Error { -- cgit v1.2.3-70-g09d2