pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

fix for comms/srtp



SYSTEM is NetBSD netbsdpi 7.99.38 NetBSD 7.99.38 (RPI2.201609181140Z) evbarm
pkg src is HEAD

comms/srtp used by comms/asterisk does not compile because it defines external symbol hmac that conflitcs with hmac(3) in libc...


files:
crypto/hash/hmac.c
crypto/kernel/crypto_kernel.c

A fix is in the attach, create the appropriate patches
diff -up patches/patch-crypto_hash_hmac.c.orig patches/patch-crypto_hash_hmac.c
--- patches/patch-crypto_hash_hmac.c.orig	2016-09-21 16:00:23.810105000 +0000
+++ patches/patch-crypto_hash_hmac.c	2016-09-21 16:00:23.815108000 +0000
@@ -0,0 +1,56 @@
+$NetBSD$
+
+--- crypto/hash/hmac.c.orig	2016-09-21 15:34:12.042157000 +0000
++++ crypto/hash/hmac.c
+@@ -55,7 +55,7 @@ debug_module_t mod_hmac = {
+ 
+ err_status_t
+ hmac_alloc(auth_t **a, int key_len, int out_len) {
+-  extern auth_type_t hmac;
++  extern auth_type_t local_hmac;
+   uint8_t *pointer;
+ 
+   debug_print(mod_hmac, "allocating auth func with key length %d", key_len);
+@@ -79,21 +79,21 @@ hmac_alloc(auth_t **a, int key_len, int 
+ 
+   /* set pointers */
+   *a = (auth_t *)pointer;
+-  (*a)->type = &hmac;
++  (*a)->type = &local_hmac;
+   (*a)->state = pointer + sizeof(auth_t);  
+   (*a)->out_len = out_len;
+   (*a)->key_len = key_len;
+   (*a)->prefix_len = 0;
+ 
+   /* increment global count of all hmac uses */
+-  hmac.ref_count++;
++  local_hmac.ref_count++;
+ 
+   return err_status_ok;
+ }
+ 
+ err_status_t
+ hmac_dealloc(auth_t *a) {
+-  extern auth_type_t hmac;
++  extern auth_type_t local_hmac;
+   
+   /* zeroize entire state*/
+   octet_string_set_to_zero((uint8_t *)a, 
+@@ -103,7 +103,7 @@ hmac_dealloc(auth_t *a) {
+   crypto_free(a);
+   
+   /* decrement global count of all hmac uses */
+-  hmac.ref_count--;
++  local_hmac.ref_count--;
+ 
+   return err_status_ok;
+ }
+@@ -252,7 +252,7 @@ char hmac_description[] = "hmac sha-1 au
+  */
+ 
+ auth_type_t
+-hmac  = {
++local_hmac  = {
+   (auth_alloc_func)      hmac_alloc,
+   (auth_dealloc_func)    hmac_dealloc,
+   (auth_init_func)       hmac_init,
diff -up patches/patch-crypto_kernel_crypto__kernel.c.orig patches/patch-crypto_kernel_crypto__kernel.c
--- patches/patch-crypto_kernel_crypto__kernel.c.orig	2016-09-21 16:00:23.934989000 +0000
+++ patches/patch-crypto_kernel_crypto__kernel.c	2016-09-21 16:00:23.939728000 +0000
@@ -0,0 +1,22 @@
+$NetBSD$
+
+--- crypto/kernel/crypto_kernel.c.orig	2016-09-21 15:54:48.158697000 +0000
++++ crypto/kernel/crypto_kernel.c
+@@ -77,7 +77,7 @@ extern cipher_type_t aes_cbc;
+  */
+ 
+ extern auth_type_t null_auth;
+-extern auth_type_t hmac;
++extern auth_type_t local_hmac;
+ 
+ /* crypto_kernel is a global variable, the only one of its datatype */
+ 
+@@ -162,7 +162,7 @@ crypto_kernel_init() {
+   status = crypto_kernel_load_auth_type(&null_auth, NULL_AUTH);
+   if (status)
+     return status;
+-  status = crypto_kernel_load_auth_type(&hmac, HMAC_SHA1);
++  status = crypto_kernel_load_auth_type(&local_hmac, HMAC_SHA1);
+   if (status)
+     return status;
+ 
? patches/patch-crypto_hash_hmac.c
? patches/patch-crypto_kernel_crypto__kernel.c
Index: distinfo
===================================================================
RCS file: /cvsroot/pkgsrc/comms/srtp/distinfo,v
retrieving revision 1.3
diff -u -r1.3 distinfo
--- distinfo	3 Nov 2015 01:34:57 -0000	1.3
+++ distinfo	21 Sep 2016 16:18:11 -0000
@@ -8,6 +8,8 @@
 SHA1 (patch-configure) = d70d01b5f846b2f163ba2246511cf1314005fa35
 SHA1 (patch-configure.in) = 217c066920fedaaba02d86e3c2017a368ea8fee7
 SHA1 (patch-crypto_cipher_aes__icm.c) = 7e402b790678bd6c27daf8f56bf0a1123b087d07
+SHA1 (patch-crypto_hash_hmac.c) = f98600eeaa1ffd51f9075b2a5c9be75554e34821
+SHA1 (patch-crypto_kernel_crypto__kernel.c) = 7197db1b223ef416560039267f19e1e6e3c74b44
 SHA1 (patch-crypto_math_datatypes.c) = f5358856026b91ae40db4a7c38bae6138656d94e
 SHA1 (patch-crypto_math_gf2__8.c) = 4e878e3debc2c287dcbce6ab1127ba8cd22352c3
 SHA1 (patch-crypto_math_math.c) = 06961bd3184b0e47475f76a55d9669ce6d3a7149


Home | Main Index | Thread Index | Old Index