From 0e9ef5313dfe71443a9b57be38a1fc643d8710eb Mon Sep 17 00:00:00 2001 From: jsteube Date: Sat, 12 Nov 2016 16:07:42 +0100 Subject: [PATCH] Optimize salt initialization in ascii_digest() --- src/interface.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/interface.c b/src/interface.c index a9e8945d8..e632d87b6 100644 --- a/src/interface.c +++ b/src/interface.c @@ -13192,7 +13192,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const u32 salt_pos, } } - salt_t salt = { 0 }; + salt_t salt; const bool isSalted = ((hashconfig->salt_type == SALT_TYPE_INTERN) | (hashconfig->salt_type == SALT_TYPE_EXTERN) @@ -13200,8 +13200,6 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const u32 salt_pos, if (isSalted == true) { - memset (&salt, 0, sizeof (salt_t)); - memcpy (&salt, &salts_buf[salt_pos], sizeof (salt_t)); char *ptr = (char *) salt.salt_buf; @@ -13267,6 +13265,10 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const u32 salt_pos, salt.salt_len = salt_len; } + else + { + memset (&salt, 0, sizeof (salt_t)); + } // // some modes require special encoding