62 lines
1.8 KiB
Diff
62 lines
1.8 KiB
Diff
From 826e500242004b269219ad3deeacf0e01d136933 Mon Sep 17 00:00:00 2001
|
|
From: Andreas Schneider <asn@samba.org>
|
|
Date: Mon, 1 Jul 2019 16:54:15 +0200
|
|
Subject: [PATCH 001/187] s3:profile: Use SHA1 for hashing in profiling
|
|
functions.
|
|
|
|
This can use SHA NI instructions if the CPU supports it.
|
|
|
|
BUG: https://bugzilla.samba.org/show_bug.cgi?id=14031
|
|
|
|
Signed-off-by: Andreas Schneider <asn@samba.org>
|
|
Reviewed-by: Ralph Boehme <slow@samba.org>
|
|
(cherry picked from commit 6fe2193b17ac2d57c559d3b936b37238d06d6be8)
|
|
---
|
|
source3/profile/profile.c | 11 +++++------
|
|
1 file changed, 5 insertions(+), 6 deletions(-)
|
|
|
|
diff --git a/source3/profile/profile.c b/source3/profile/profile.c
|
|
index df0ba5b0af3..90a30f01f58 100644
|
|
--- a/source3/profile/profile.c
|
|
+++ b/source3/profile/profile.c
|
|
@@ -124,7 +124,7 @@ static void reqprofile_message(struct messaging_context *msg_ctx,
|
|
******************************************************************/
|
|
bool profile_setup(struct messaging_context *msg_ctx, bool rdonly)
|
|
{
|
|
- unsigned char tmp[16] = {};
|
|
+ uint8_t digest[gnutls_hash_get_len(GNUTLS_DIG_SHA1)];
|
|
gnutls_hash_hd_t hash_hnd = NULL;
|
|
char *db_name;
|
|
bool ok = false;
|
|
@@ -154,7 +154,7 @@ bool profile_setup(struct messaging_context *msg_ctx, bool rdonly)
|
|
reqprofile_message);
|
|
}
|
|
|
|
- rc = gnutls_hash_init(&hash_hnd, GNUTLS_DIG_MD5);
|
|
+ rc = gnutls_hash_init(&hash_hnd, GNUTLS_DIG_SHA1);
|
|
if (rc < 0) {
|
|
goto out;
|
|
}
|
|
@@ -210,15 +210,14 @@ bool profile_setup(struct messaging_context *msg_ctx, bool rdonly)
|
|
goto out;
|
|
}
|
|
|
|
- gnutls_hash_deinit(hash_hnd, tmp);
|
|
+ gnutls_hash_deinit(hash_hnd, digest);
|
|
|
|
profile_p = &smbprofile_state.stats.global;
|
|
|
|
- profile_p->magic = BVAL(tmp, 0);
|
|
+ profile_p->magic = BVAL(digest, 0);
|
|
if (profile_p->magic == 0) {
|
|
- profile_p->magic = BVAL(tmp, 8);
|
|
+ profile_p->magic = BVAL(digest, 8);
|
|
}
|
|
- ZERO_ARRAY(tmp);
|
|
|
|
ok = true;
|
|
out:
|
|
--
|
|
2.23.0
|
|
|