summaryrefslogtreecommitdiff
path: root/src/libsodium/crypto_auth/hmacsha512/cp/verify_hmacsha512.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libsodium/crypto_auth/hmacsha512/cp/verify_hmacsha512.c')
-rw-r--r--src/libsodium/crypto_auth/hmacsha512/cp/verify_hmacsha512.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/libsodium/crypto_auth/hmacsha512/cp/verify_hmacsha512.c b/src/libsodium/crypto_auth/hmacsha512/cp/verify_hmacsha512.c
index fccdc1a..28e0dfb 100644
--- a/src/libsodium/crypto_auth/hmacsha512/cp/verify_hmacsha512.c
+++ b/src/libsodium/crypto_auth/hmacsha512/cp/verify_hmacsha512.c
@@ -1,10 +1,12 @@
#include "api.h"
#include "crypto_verify_64.h"
+#include "utils.h"
int crypto_auth_verify(const unsigned char *h, const unsigned char *in,
unsigned long long inlen, const unsigned char *k)
{
unsigned char correct[64];
crypto_auth(correct,in,inlen,k);
- return crypto_verify_64(h,correct);
+ return crypto_verify_64(h,correct) | (-(h - correct == 0)) |
+ sodium_memcmp(correct,h,64);
}