Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
srtp: do not conflict with builtin hmac in netbsd-7.99.x, use another…
… name (local_hmac). Fixes build on NetBSD. Patch by Sérgio de Almeida Lenzi
- Loading branch information
Showing
3 changed files
with
85 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
$NetBSD: patch-crypto_hash_hmac.c,v 1.1 2016/09/26 13:20:41 maya Exp $ | ||
|
||
avoid conflict with builtin hmac on netbsd 7.99.x | ||
|
||
--- 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, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
$NetBSD: patch-crypto_kernel_crypto__kernel.c,v 1.1 2016/09/26 13:20:41 maya Exp $ | ||
|
||
avoid conflict with builtin hmac on netbsd-7.99.x | ||
|
||
--- 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; | ||
|