From 9452a6e87b6c2c70513bc47a2470bf9f1168920e Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 13 Jun 2020 10:39:22 +0100 Subject: gentoo resync : 13.06.2020 --- net-libs/libsrtp/files/libsrtp-2.3.0-gcc-10.patch | 26 ++++++++++++++++++++++ net-libs/libsrtp/files/libsrtp-2.3.0-nss.patch | 12 ++++++++++ .../libsrtp/files/libsrtp-2.3.0-rtp-header.patch | 24 ++++++++++++++++++++ 3 files changed, 62 insertions(+) create mode 100644 net-libs/libsrtp/files/libsrtp-2.3.0-gcc-10.patch create mode 100644 net-libs/libsrtp/files/libsrtp-2.3.0-nss.patch create mode 100644 net-libs/libsrtp/files/libsrtp-2.3.0-rtp-header.patch (limited to 'net-libs/libsrtp/files') diff --git a/net-libs/libsrtp/files/libsrtp-2.3.0-gcc-10.patch b/net-libs/libsrtp/files/libsrtp-2.3.0-gcc-10.patch new file mode 100644 index 000000000000..67d4ad86d516 --- /dev/null +++ b/net-libs/libsrtp/files/libsrtp-2.3.0-gcc-10.patch @@ -0,0 +1,26 @@ +diff --git a/crypto/math/datatypes.c b/crypto/math/datatypes.c +index 001584c..4fcb396 100644 +--- a/crypto/math/datatypes.c ++++ b/crypto/math/datatypes.c +@@ -79,7 +79,7 @@ int octet_get_weight(uint8_t octet) + + /* the value MAX_PRINT_STRING_LEN is defined in datatypes.h */ + +-char bit_string[MAX_PRINT_STRING_LEN]; ++static char bit_string[MAX_PRINT_STRING_LEN]; + + uint8_t srtp_nibble_to_hex_char(uint8_t nibble) + { +diff --git a/test/util.c b/test/util.c +index 2abc28e..c0f7614 100644 +--- a/test/util.c ++++ b/test/util.c +@@ -49,7 +49,7 @@ + #include + + /* include space for null terminator */ +-char bit_string[MAX_PRINT_STRING_LEN + 1]; ++static char bit_string[MAX_PRINT_STRING_LEN + 1]; + + static inline int hex_char_to_nibble(uint8_t c) + { diff --git a/net-libs/libsrtp/files/libsrtp-2.3.0-nss.patch b/net-libs/libsrtp/files/libsrtp-2.3.0-nss.patch new file mode 100644 index 000000000000..6f71839e69da --- /dev/null +++ b/net-libs/libsrtp/files/libsrtp-2.3.0-nss.patch @@ -0,0 +1,12 @@ +diff --git a/crypto/cipher/aes_gcm_nss.c b/crypto/cipher/aes_gcm_nss.c +index 54547cd..ecbba64 100644 +--- a/crypto/cipher/aes_gcm_nss.c ++++ b/crypto/cipher/aes_gcm_nss.c +@@ -284,6 +284,7 @@ static srtp_err_status_t srtp_aes_gcm_nss_do_crypto(void *cv, + + c->params.pIv = c->iv; + c->params.ulIvLen = GCM_IV_LEN; ++ c->params.ulIvBits = 8 * GCM_IV_LEN; + c->params.pAAD = c->aad; + c->params.ulAADLen = c->aad_size; + diff --git a/net-libs/libsrtp/files/libsrtp-2.3.0-rtp-header.patch b/net-libs/libsrtp/files/libsrtp-2.3.0-rtp-header.patch new file mode 100644 index 000000000000..096b19e8f344 --- /dev/null +++ b/net-libs/libsrtp/files/libsrtp-2.3.0-rtp-header.patch @@ -0,0 +1,24 @@ +From 55299517f39e2e1a34df05c27cbc9898071ac9db Mon Sep 17 00:00:00 2001 +From: Lennart Grahl +Date: Mon, 18 May 2020 18:01:08 +0200 +Subject: [PATCH] Fix two-byte RTP header extension encryption + +Also ignores the application bits as required by RFC 8285, sec 4.3 +Fixes #490 +--- + srtp/srtp.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/srtp/srtp.c b/srtp/srtp.c +index b45cee0f..176b01f0 100644 +--- a/srtp/srtp.c ++++ b/srtp/srtp.c +@@ -1423,7 +1423,7 @@ static srtp_err_status_t srtp_process_header_encryption( + xtn_hdr_data++; + } + } +- } else if ((ntohs(xtn_hdr->profile_specific) & 0x1fff) == 0x100) { ++ } else if ((ntohs(xtn_hdr->profile_specific) & 0xfff0) == 0x1000) { + /* RFC 5285, section 4.3. Two-Byte Header */ + while (xtn_hdr_data + 1 < xtn_hdr_end) { + uint8_t xid = *xtn_hdr_data; -- cgit v1.2.3