mirror of
https://github.com/hashcat/hashcat.git
synced 2025-02-16 17:42:04 +00:00
Refactor all variables with HCBUFSIZ_LARGE size from stack to heap
This commit is contained in:
parent
eb58b076da
commit
b8efae4281
@ -566,8 +566,8 @@ typedef struct hashes
|
||||
|
||||
hashinfo_t **hash_info;
|
||||
|
||||
u8 *out_buf; // allocates [HCBUFSIZ_LARGE];
|
||||
u8 *tmp_buf; // allocates [HCBUFSIZ_LARGE];
|
||||
u8 *out_buf; // allocates [HCBUFSIZ_LARGE];
|
||||
u8 *tmp_buf; // allocates [HCBUFSIZ_LARGE];
|
||||
|
||||
} hashes_t;
|
||||
|
||||
@ -1050,6 +1050,9 @@ typedef struct potfile_ctx
|
||||
FILE *fp;
|
||||
char *filename;
|
||||
|
||||
u8 *out_buf; // allocates [HCBUFSIZ_LARGE];
|
||||
u8 *tmp_buf; // allocates [HCBUFSIZ_LARGE];
|
||||
|
||||
} potfile_ctx_t;
|
||||
|
||||
typedef struct restore_data
|
||||
|
14
src/Makefile
14
src/Makefile
@ -95,7 +95,7 @@ VERSION_TAG := $(shell test -d .git && git describe --tags --dirty=+
|
||||
BINARY_NATIVE := $(PROG_NAME)
|
||||
|
||||
##
|
||||
## General compiler and linker flags
|
||||
## General compiler and linker options
|
||||
##
|
||||
|
||||
CFLAGS := -pipe -std=c99 -Iinclude/ -IOpenCL/
|
||||
@ -108,19 +108,21 @@ CFLAGS += -Wshadow
|
||||
CFLAGS += -Wmissing-declarations
|
||||
CFLAGS += -Wmissing-prototypes
|
||||
CFLAGS += -Wpointer-arith
|
||||
CFLAGS += -Wcast-align
|
||||
CFLAGS += -Wstrict-prototypes
|
||||
CFLAGS += -Waggregate-return
|
||||
CFLAGS += -Wwrite-strings -Wno-discarded-qualifiers
|
||||
CFLAGS += -Wcast-qual -Wno-cast-qual
|
||||
CFLAGS += -Wswitch-enum
|
||||
CFLAGS += -Wunreachable-code
|
||||
CFLAGS += -Winit-self
|
||||
CFLAGS += -Werror-implicit-function-declaration
|
||||
CFLAGS += -Wformat
|
||||
CFLAGS += -ftrapv
|
||||
#CFLAGS += -Werror
|
||||
|
||||
# the following compiler options produce warnings that should be fixed at some time
|
||||
|
||||
#CFLAGS += -Wcast-align
|
||||
#CFLAGS += -Wcast-qual
|
||||
#CFLAGS += -Wsign-conversion
|
||||
#CFLAGS += -Wwrite-strings
|
||||
#CFLAGS += -pedantic
|
||||
|
||||
# default linux and freebsd thread stack size is 2MB
|
||||
@ -128,7 +130,7 @@ CFLAGS += -ftrapv
|
||||
# default OSX thread stack size is 512kB
|
||||
# unfortionally, this option isn't supported by older GCC and clang versions
|
||||
|
||||
CFLAGS += -Wstack-usage=524288
|
||||
#CFLAGS += -Wstack-usage=524288
|
||||
|
||||
LFLAGS :=
|
||||
|
||||
|
@ -273,9 +273,11 @@ void check_hash (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param, pl
|
||||
|
||||
outfile_write_open (hashcat_ctx);
|
||||
|
||||
char tmp_buf[HCBUFSIZ_LARGE];
|
||||
u8 *tmp_buf = hashes->out_buf;
|
||||
|
||||
const int tmp_len = outfile_write (hashcat_ctx, (char *) out_buf, plain_ptr, plain_len, crackpos, NULL, 0, tmp_buf);
|
||||
tmp_buf[0] = 0;
|
||||
|
||||
const int tmp_len = outfile_write (hashcat_ctx, (char *) out_buf, plain_ptr, plain_len, crackpos, NULL, 0, (char *) tmp_buf);
|
||||
|
||||
outfile_write_close (hashcat_ctx);
|
||||
|
||||
|
526
src/interface.c
526
src/interface.c
@ -2002,7 +2002,9 @@ static void drupal7_encode (u8 digest[64], u8 buf[43])
|
||||
|
||||
static u32 parse_and_store_salt (u8 *out, u8 *in, u32 salt_len, MAYBE_UNUSED const hashconfig_t *hashconfig)
|
||||
{
|
||||
u8 tmp[256] = { 0 };
|
||||
u32 tmp_u32[64] = { 0 };
|
||||
|
||||
u8 *tmp = (u8 *) tmp_u32;
|
||||
|
||||
if (salt_len > sizeof (tmp))
|
||||
{
|
||||
@ -2044,8 +2046,6 @@ static u32 parse_and_store_salt (u8 *out, u8 *in, u32 salt_len, MAYBE_UNUSED con
|
||||
{
|
||||
if (salt_len < 20)
|
||||
{
|
||||
u32 *tmp_u32 = (u32 *) tmp;
|
||||
|
||||
tmp_u32[9] = ((tmp_u32[4] >> 8) & 0x00FF0000) | ((tmp_u32[4] >> 16) & 0x000000FF);
|
||||
tmp_u32[8] = ((tmp_u32[4] << 8) & 0x00FF0000) | ((tmp_u32[4] >> 0) & 0x000000FF);
|
||||
tmp_u32[7] = ((tmp_u32[3] >> 8) & 0x00FF0000) | ((tmp_u32[3] >> 16) & 0x000000FF);
|
||||
@ -2089,8 +2089,6 @@ static u32 parse_and_store_salt (u8 *out, u8 *in, u32 salt_len, MAYBE_UNUSED con
|
||||
|
||||
if (hashconfig->opts_type & OPTS_TYPE_ST_GENERATE_LE)
|
||||
{
|
||||
u32 *tmp_u32 = (u32 *) tmp;
|
||||
|
||||
u32 max = len / 4;
|
||||
|
||||
if (len % 4) max++;
|
||||
@ -2125,7 +2123,7 @@ int bcrypt_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE_UNU
|
||||
|
||||
salt_t *salt = hash_buf->salt;
|
||||
|
||||
memcpy ((const char *) salt->salt_sign, input_buf, 6);
|
||||
memcpy ((char *) salt->salt_sign, input_buf, 6);
|
||||
|
||||
u8 *iter_pos = input_buf + 4;
|
||||
|
||||
@ -4854,7 +4852,7 @@ int ikepsk_md5_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE
|
||||
|
||||
size_t in_len[9] = { 0 };
|
||||
|
||||
in_off[0] = (u8 *) strtok ((const char *) input_buf, ":");
|
||||
in_off[0] = (u8 *) strtok ((char *) input_buf, ":");
|
||||
|
||||
if (in_off[0] == NULL) return (PARSER_SEPARATOR_UNMATCHED);
|
||||
|
||||
@ -4864,7 +4862,7 @@ int ikepsk_md5_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE
|
||||
|
||||
for (i = 1; i < 9; i++)
|
||||
{
|
||||
in_off[i] = (u8 *) strtok ((const char *) NULL, ":");
|
||||
in_off[i] = (u8 *) strtok ((char *) NULL, ":");
|
||||
|
||||
if (in_off[i] == NULL) return (PARSER_SEPARATOR_UNMATCHED);
|
||||
|
||||
@ -4941,7 +4939,7 @@ int ikepsk_sha1_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYB
|
||||
|
||||
size_t in_len[9] = { 0 };
|
||||
|
||||
in_off[0] = (u8 *) strtok ((const char *) input_buf, ":");
|
||||
in_off[0] = (u8 *) strtok ((char *) input_buf, ":");
|
||||
|
||||
if (in_off[0] == NULL) return (PARSER_SEPARATOR_UNMATCHED);
|
||||
|
||||
@ -4951,7 +4949,7 @@ int ikepsk_sha1_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYB
|
||||
|
||||
for (i = 1; i < 9; i++)
|
||||
{
|
||||
in_off[i] = (u8 *) strtok ((const char *) NULL, ":");
|
||||
in_off[i] = (u8 *) strtok ((char *) NULL, ":");
|
||||
|
||||
if (in_off[i] == NULL) return (PARSER_SEPARATOR_UNMATCHED);
|
||||
|
||||
@ -10601,7 +10599,7 @@ int sip_auth_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE_U
|
||||
|
||||
u8 *tmp_md5_ptr = (u8 *) tmp_md5_buf;
|
||||
|
||||
snprintf ((const char *) tmp_md5_ptr, md5_remaining_len, "%s:", method_pos);
|
||||
snprintf ((char *) tmp_md5_ptr, md5_remaining_len, "%s:", method_pos);
|
||||
|
||||
md5_len += method_len + 1;
|
||||
tmp_md5_ptr += method_len + 1;
|
||||
@ -10610,7 +10608,7 @@ int sip_auth_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE_U
|
||||
{
|
||||
md5_remaining_len = md5_max_len - md5_len;
|
||||
|
||||
snprintf ((const char *) tmp_md5_ptr, md5_remaining_len + 1, "%s:", URI_prefix_pos);
|
||||
snprintf ((char *) tmp_md5_ptr, md5_remaining_len + 1, "%s:", URI_prefix_pos);
|
||||
|
||||
md5_len += URI_prefix_len + 1;
|
||||
tmp_md5_ptr += URI_prefix_len + 1;
|
||||
@ -10618,7 +10616,7 @@ int sip_auth_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE_U
|
||||
|
||||
md5_remaining_len = md5_max_len - md5_len;
|
||||
|
||||
snprintf ((const char *) tmp_md5_ptr, md5_remaining_len + 1, "%s", URI_resource_pos);
|
||||
snprintf ((char *) tmp_md5_ptr, md5_remaining_len + 1, "%s", URI_resource_pos);
|
||||
|
||||
md5_len += URI_resource_len;
|
||||
tmp_md5_ptr += URI_resource_len;
|
||||
@ -10627,7 +10625,7 @@ int sip_auth_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE_U
|
||||
{
|
||||
md5_remaining_len = md5_max_len - md5_len;
|
||||
|
||||
snprintf ((const char *) tmp_md5_ptr, md5_remaining_len + 1, ":%s", URI_suffix_pos);
|
||||
snprintf ((char *) tmp_md5_ptr, md5_remaining_len + 1, ":%s", URI_suffix_pos);
|
||||
|
||||
md5_len += 1 + URI_suffix_len;
|
||||
}
|
||||
@ -10659,7 +10657,7 @@ int sip_auth_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE_U
|
||||
|
||||
if (esalt_len > max_esalt_len) return (PARSER_SALT_LENGTH);
|
||||
|
||||
snprintf ((const char *) esalt_buf_ptr, max_esalt_len, ":%s:%s:%s:%s:%08x%08x%08x%08x",
|
||||
snprintf ((char *) esalt_buf_ptr, max_esalt_len, ":%s:%s:%s:%s:%08x%08x%08x%08x",
|
||||
nonce_pos,
|
||||
nonce_count_pos,
|
||||
nonce_client_pos,
|
||||
@ -10675,7 +10673,7 @@ int sip_auth_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE_U
|
||||
|
||||
if (esalt_len > max_esalt_len) return (PARSER_SALT_LENGTH);
|
||||
|
||||
snprintf ((const char *) esalt_buf_ptr, max_esalt_len, ":%s:%08x%08x%08x%08x",
|
||||
snprintf ((char *) esalt_buf_ptr, max_esalt_len, ":%s:%08x%08x%08x%08x",
|
||||
nonce_pos,
|
||||
tmp_digest[0],
|
||||
tmp_digest[1],
|
||||
@ -10701,7 +10699,7 @@ int sip_auth_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE_U
|
||||
|
||||
if (salt_len > max_salt_len) return (PARSER_SALT_LENGTH);
|
||||
|
||||
snprintf ((const char *) sip_salt_ptr, max_salt_len + 1, "%s:%s:", user_pos, realm_pos);
|
||||
snprintf ((char *) sip_salt_ptr, max_salt_len + 1, "%s:%s:", user_pos, realm_pos);
|
||||
|
||||
sip->salt_len = salt_len;
|
||||
|
||||
@ -10720,7 +10718,7 @@ int sip_auth_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE_U
|
||||
fake_salt_len = max_salt_len;
|
||||
}
|
||||
|
||||
snprintf ((const char *) salt_buf_ptr, max_salt_len + 1, "%s:%s:", user_pos, realm_pos);
|
||||
snprintf ((char *) salt_buf_ptr, max_salt_len + 1, "%s:%s:", user_pos, realm_pos);
|
||||
|
||||
salt->salt_len = fake_salt_len;
|
||||
|
||||
@ -12597,25 +12595,25 @@ char *stroptitype (const u32 opti_type)
|
||||
{
|
||||
switch (opti_type)
|
||||
{
|
||||
case OPTI_TYPE_ZERO_BYTE: return ((const char *) OPTI_STR_ZERO_BYTE);
|
||||
case OPTI_TYPE_PRECOMPUTE_INIT: return ((const char *) OPTI_STR_PRECOMPUTE_INIT);
|
||||
case OPTI_TYPE_PRECOMPUTE_MERKLE: return ((const char *) OPTI_STR_PRECOMPUTE_MERKLE);
|
||||
case OPTI_TYPE_PRECOMPUTE_PERMUT: return ((const char *) OPTI_STR_PRECOMPUTE_PERMUT);
|
||||
case OPTI_TYPE_MEET_IN_MIDDLE: return ((const char *) OPTI_STR_MEET_IN_MIDDLE);
|
||||
case OPTI_TYPE_EARLY_SKIP: return ((const char *) OPTI_STR_EARLY_SKIP);
|
||||
case OPTI_TYPE_NOT_SALTED: return ((const char *) OPTI_STR_NOT_SALTED);
|
||||
case OPTI_TYPE_NOT_ITERATED: return ((const char *) OPTI_STR_NOT_ITERATED);
|
||||
case OPTI_TYPE_PREPENDED_SALT: return ((const char *) OPTI_STR_PREPENDED_SALT);
|
||||
case OPTI_TYPE_APPENDED_SALT: return ((const char *) OPTI_STR_APPENDED_SALT);
|
||||
case OPTI_TYPE_SINGLE_HASH: return ((const char *) OPTI_STR_SINGLE_HASH);
|
||||
case OPTI_TYPE_SINGLE_SALT: return ((const char *) OPTI_STR_SINGLE_SALT);
|
||||
case OPTI_TYPE_BRUTE_FORCE: return ((const char *) OPTI_STR_BRUTE_FORCE);
|
||||
case OPTI_TYPE_RAW_HASH: return ((const char *) OPTI_STR_RAW_HASH);
|
||||
case OPTI_TYPE_SLOW_HASH_SIMD: return ((const char *) OPTI_STR_SLOW_HASH_SIMD);
|
||||
case OPTI_TYPE_USES_BITS_8: return ((const char *) OPTI_STR_USES_BITS_8);
|
||||
case OPTI_TYPE_USES_BITS_16: return ((const char *) OPTI_STR_USES_BITS_16);
|
||||
case OPTI_TYPE_USES_BITS_32: return ((const char *) OPTI_STR_USES_BITS_32);
|
||||
case OPTI_TYPE_USES_BITS_64: return ((const char *) OPTI_STR_USES_BITS_64);
|
||||
case OPTI_TYPE_ZERO_BYTE: return ((char *) OPTI_STR_ZERO_BYTE);
|
||||
case OPTI_TYPE_PRECOMPUTE_INIT: return ((char *) OPTI_STR_PRECOMPUTE_INIT);
|
||||
case OPTI_TYPE_PRECOMPUTE_MERKLE: return ((char *) OPTI_STR_PRECOMPUTE_MERKLE);
|
||||
case OPTI_TYPE_PRECOMPUTE_PERMUT: return ((char *) OPTI_STR_PRECOMPUTE_PERMUT);
|
||||
case OPTI_TYPE_MEET_IN_MIDDLE: return ((char *) OPTI_STR_MEET_IN_MIDDLE);
|
||||
case OPTI_TYPE_EARLY_SKIP: return ((char *) OPTI_STR_EARLY_SKIP);
|
||||
case OPTI_TYPE_NOT_SALTED: return ((char *) OPTI_STR_NOT_SALTED);
|
||||
case OPTI_TYPE_NOT_ITERATED: return ((char *) OPTI_STR_NOT_ITERATED);
|
||||
case OPTI_TYPE_PREPENDED_SALT: return ((char *) OPTI_STR_PREPENDED_SALT);
|
||||
case OPTI_TYPE_APPENDED_SALT: return ((char *) OPTI_STR_APPENDED_SALT);
|
||||
case OPTI_TYPE_SINGLE_HASH: return ((char *) OPTI_STR_SINGLE_HASH);
|
||||
case OPTI_TYPE_SINGLE_SALT: return ((char *) OPTI_STR_SINGLE_SALT);
|
||||
case OPTI_TYPE_BRUTE_FORCE: return ((char *) OPTI_STR_BRUTE_FORCE);
|
||||
case OPTI_TYPE_RAW_HASH: return ((char *) OPTI_STR_RAW_HASH);
|
||||
case OPTI_TYPE_SLOW_HASH_SIMD: return ((char *) OPTI_STR_SLOW_HASH_SIMD);
|
||||
case OPTI_TYPE_USES_BITS_8: return ((char *) OPTI_STR_USES_BITS_8);
|
||||
case OPTI_TYPE_USES_BITS_16: return ((char *) OPTI_STR_USES_BITS_16);
|
||||
case OPTI_TYPE_USES_BITS_32: return ((char *) OPTI_STR_USES_BITS_32);
|
||||
case OPTI_TYPE_USES_BITS_64: return ((char *) OPTI_STR_USES_BITS_64);
|
||||
}
|
||||
|
||||
return (NULL);
|
||||
@ -12625,243 +12623,243 @@ char *strhashtype (const u32 hash_mode)
|
||||
{
|
||||
switch (hash_mode)
|
||||
{
|
||||
case 0: return ((const char *) HT_00000);
|
||||
case 10: return ((const char *) HT_00010);
|
||||
case 11: return ((const char *) HT_00011);
|
||||
case 12: return ((const char *) HT_00012);
|
||||
case 20: return ((const char *) HT_00020);
|
||||
case 21: return ((const char *) HT_00021);
|
||||
case 22: return ((const char *) HT_00022);
|
||||
case 23: return ((const char *) HT_00023);
|
||||
case 30: return ((const char *) HT_00030);
|
||||
case 40: return ((const char *) HT_00040);
|
||||
case 50: return ((const char *) HT_00050);
|
||||
case 60: return ((const char *) HT_00060);
|
||||
case 100: return ((const char *) HT_00100);
|
||||
case 101: return ((const char *) HT_00101);
|
||||
case 110: return ((const char *) HT_00110);
|
||||
case 111: return ((const char *) HT_00111);
|
||||
case 112: return ((const char *) HT_00112);
|
||||
case 120: return ((const char *) HT_00120);
|
||||
case 121: return ((const char *) HT_00121);
|
||||
case 122: return ((const char *) HT_00122);
|
||||
case 124: return ((const char *) HT_00124);
|
||||
case 125: return ((const char *) HT_00125);
|
||||
case 130: return ((const char *) HT_00130);
|
||||
case 131: return ((const char *) HT_00131);
|
||||
case 132: return ((const char *) HT_00132);
|
||||
case 133: return ((const char *) HT_00133);
|
||||
case 140: return ((const char *) HT_00140);
|
||||
case 141: return ((const char *) HT_00141);
|
||||
case 150: return ((const char *) HT_00150);
|
||||
case 160: return ((const char *) HT_00160);
|
||||
case 200: return ((const char *) HT_00200);
|
||||
case 300: return ((const char *) HT_00300);
|
||||
case 400: return ((const char *) HT_00400);
|
||||
case 500: return ((const char *) HT_00500);
|
||||
case 501: return ((const char *) HT_00501);
|
||||
case 900: return ((const char *) HT_00900);
|
||||
case 910: return ((const char *) HT_00910);
|
||||
case 1000: return ((const char *) HT_01000);
|
||||
case 1100: return ((const char *) HT_01100);
|
||||
case 1400: return ((const char *) HT_01400);
|
||||
case 1410: return ((const char *) HT_01410);
|
||||
case 1420: return ((const char *) HT_01420);
|
||||
case 1421: return ((const char *) HT_01421);
|
||||
case 1430: return ((const char *) HT_01430);
|
||||
case 1440: return ((const char *) HT_01440);
|
||||
case 1441: return ((const char *) HT_01441);
|
||||
case 1450: return ((const char *) HT_01450);
|
||||
case 1460: return ((const char *) HT_01460);
|
||||
case 1500: return ((const char *) HT_01500);
|
||||
case 1600: return ((const char *) HT_01600);
|
||||
case 1700: return ((const char *) HT_01700);
|
||||
case 1710: return ((const char *) HT_01710);
|
||||
case 1711: return ((const char *) HT_01711);
|
||||
case 1720: return ((const char *) HT_01720);
|
||||
case 1722: return ((const char *) HT_01722);
|
||||
case 1730: return ((const char *) HT_01730);
|
||||
case 1731: return ((const char *) HT_01731);
|
||||
case 1740: return ((const char *) HT_01740);
|
||||
case 1750: return ((const char *) HT_01750);
|
||||
case 1760: return ((const char *) HT_01760);
|
||||
case 1800: return ((const char *) HT_01800);
|
||||
case 2100: return ((const char *) HT_02100);
|
||||
case 2400: return ((const char *) HT_02400);
|
||||
case 2410: return ((const char *) HT_02410);
|
||||
case 2500: return ((const char *) HT_02500);
|
||||
case 2600: return ((const char *) HT_02600);
|
||||
case 2611: return ((const char *) HT_02611);
|
||||
case 2612: return ((const char *) HT_02612);
|
||||
case 2711: return ((const char *) HT_02711);
|
||||
case 2811: return ((const char *) HT_02811);
|
||||
case 3000: return ((const char *) HT_03000);
|
||||
case 3100: return ((const char *) HT_03100);
|
||||
case 3200: return ((const char *) HT_03200);
|
||||
case 3710: return ((const char *) HT_03710);
|
||||
case 3711: return ((const char *) HT_03711);
|
||||
case 3800: return ((const char *) HT_03800);
|
||||
case 4300: return ((const char *) HT_04300);
|
||||
case 4400: return ((const char *) HT_04400);
|
||||
case 4500: return ((const char *) HT_04500);
|
||||
case 4700: return ((const char *) HT_04700);
|
||||
case 4800: return ((const char *) HT_04800);
|
||||
case 4900: return ((const char *) HT_04900);
|
||||
case 5000: return ((const char *) HT_05000);
|
||||
case 5100: return ((const char *) HT_05100);
|
||||
case 5200: return ((const char *) HT_05200);
|
||||
case 5300: return ((const char *) HT_05300);
|
||||
case 5400: return ((const char *) HT_05400);
|
||||
case 5500: return ((const char *) HT_05500);
|
||||
case 5600: return ((const char *) HT_05600);
|
||||
case 5700: return ((const char *) HT_05700);
|
||||
case 5800: return ((const char *) HT_05800);
|
||||
case 6000: return ((const char *) HT_06000);
|
||||
case 6100: return ((const char *) HT_06100);
|
||||
case 6211: return ((const char *) HT_06211);
|
||||
case 6212: return ((const char *) HT_06212);
|
||||
case 6213: return ((const char *) HT_06213);
|
||||
case 6221: return ((const char *) HT_06221);
|
||||
case 6222: return ((const char *) HT_06222);
|
||||
case 6223: return ((const char *) HT_06223);
|
||||
case 6231: return ((const char *) HT_06231);
|
||||
case 6232: return ((const char *) HT_06232);
|
||||
case 6233: return ((const char *) HT_06233);
|
||||
case 6241: return ((const char *) HT_06241);
|
||||
case 6242: return ((const char *) HT_06242);
|
||||
case 6243: return ((const char *) HT_06243);
|
||||
case 6300: return ((const char *) HT_06300);
|
||||
case 6400: return ((const char *) HT_06400);
|
||||
case 6500: return ((const char *) HT_06500);
|
||||
case 6600: return ((const char *) HT_06600);
|
||||
case 6700: return ((const char *) HT_06700);
|
||||
case 6800: return ((const char *) HT_06800);
|
||||
case 6900: return ((const char *) HT_06900);
|
||||
case 7100: return ((const char *) HT_07100);
|
||||
case 7200: return ((const char *) HT_07200);
|
||||
case 7300: return ((const char *) HT_07300);
|
||||
case 7400: return ((const char *) HT_07400);
|
||||
case 7500: return ((const char *) HT_07500);
|
||||
case 7600: return ((const char *) HT_07600);
|
||||
case 7700: return ((const char *) HT_07700);
|
||||
case 7800: return ((const char *) HT_07800);
|
||||
case 7900: return ((const char *) HT_07900);
|
||||
case 8000: return ((const char *) HT_08000);
|
||||
case 8100: return ((const char *) HT_08100);
|
||||
case 8200: return ((const char *) HT_08200);
|
||||
case 8300: return ((const char *) HT_08300);
|
||||
case 8400: return ((const char *) HT_08400);
|
||||
case 8500: return ((const char *) HT_08500);
|
||||
case 8600: return ((const char *) HT_08600);
|
||||
case 8700: return ((const char *) HT_08700);
|
||||
case 8800: return ((const char *) HT_08800);
|
||||
case 8900: return ((const char *) HT_08900);
|
||||
case 9000: return ((const char *) HT_09000);
|
||||
case 9100: return ((const char *) HT_09100);
|
||||
case 9200: return ((const char *) HT_09200);
|
||||
case 9300: return ((const char *) HT_09300);
|
||||
case 9400: return ((const char *) HT_09400);
|
||||
case 9500: return ((const char *) HT_09500);
|
||||
case 9600: return ((const char *) HT_09600);
|
||||
case 9700: return ((const char *) HT_09700);
|
||||
case 9710: return ((const char *) HT_09710);
|
||||
case 9720: return ((const char *) HT_09720);
|
||||
case 9800: return ((const char *) HT_09800);
|
||||
case 9810: return ((const char *) HT_09810);
|
||||
case 9820: return ((const char *) HT_09820);
|
||||
case 9900: return ((const char *) HT_09900);
|
||||
case 10000: return ((const char *) HT_10000);
|
||||
case 10100: return ((const char *) HT_10100);
|
||||
case 10200: return ((const char *) HT_10200);
|
||||
case 10300: return ((const char *) HT_10300);
|
||||
case 10400: return ((const char *) HT_10400);
|
||||
case 10410: return ((const char *) HT_10410);
|
||||
case 10420: return ((const char *) HT_10420);
|
||||
case 10500: return ((const char *) HT_10500);
|
||||
case 10600: return ((const char *) HT_10600);
|
||||
case 10700: return ((const char *) HT_10700);
|
||||
case 10800: return ((const char *) HT_10800);
|
||||
case 10900: return ((const char *) HT_10900);
|
||||
case 11000: return ((const char *) HT_11000);
|
||||
case 11100: return ((const char *) HT_11100);
|
||||
case 11200: return ((const char *) HT_11200);
|
||||
case 11300: return ((const char *) HT_11300);
|
||||
case 11400: return ((const char *) HT_11400);
|
||||
case 11500: return ((const char *) HT_11500);
|
||||
case 11600: return ((const char *) HT_11600);
|
||||
case 11700: return ((const char *) HT_11700);
|
||||
case 11800: return ((const char *) HT_11800);
|
||||
case 11900: return ((const char *) HT_11900);
|
||||
case 12000: return ((const char *) HT_12000);
|
||||
case 12100: return ((const char *) HT_12100);
|
||||
case 12200: return ((const char *) HT_12200);
|
||||
case 12300: return ((const char *) HT_12300);
|
||||
case 12400: return ((const char *) HT_12400);
|
||||
case 12500: return ((const char *) HT_12500);
|
||||
case 12600: return ((const char *) HT_12600);
|
||||
case 12700: return ((const char *) HT_12700);
|
||||
case 12800: return ((const char *) HT_12800);
|
||||
case 12900: return ((const char *) HT_12900);
|
||||
case 13000: return ((const char *) HT_13000);
|
||||
case 13100: return ((const char *) HT_13100);
|
||||
case 13200: return ((const char *) HT_13200);
|
||||
case 13300: return ((const char *) HT_13300);
|
||||
case 13400: return ((const char *) HT_13400);
|
||||
case 13500: return ((const char *) HT_13500);
|
||||
case 13600: return ((const char *) HT_13600);
|
||||
case 13711: return ((const char *) HT_13711);
|
||||
case 13712: return ((const char *) HT_13712);
|
||||
case 13713: return ((const char *) HT_13713);
|
||||
case 13721: return ((const char *) HT_13721);
|
||||
case 13722: return ((const char *) HT_13722);
|
||||
case 13723: return ((const char *) HT_13723);
|
||||
case 13731: return ((const char *) HT_13731);
|
||||
case 13732: return ((const char *) HT_13732);
|
||||
case 13733: return ((const char *) HT_13733);
|
||||
case 13741: return ((const char *) HT_13741);
|
||||
case 13742: return ((const char *) HT_13742);
|
||||
case 13743: return ((const char *) HT_13743);
|
||||
case 13751: return ((const char *) HT_13751);
|
||||
case 13752: return ((const char *) HT_13752);
|
||||
case 13753: return ((const char *) HT_13753);
|
||||
case 13761: return ((const char *) HT_13761);
|
||||
case 13762: return ((const char *) HT_13762);
|
||||
case 13763: return ((const char *) HT_13763);
|
||||
case 13800: return ((const char *) HT_13800);
|
||||
case 13900: return ((const char *) HT_13900);
|
||||
case 14000: return ((const char *) HT_14000);
|
||||
case 14100: return ((const char *) HT_14100);
|
||||
case 0: return ((char *) HT_00000);
|
||||
case 10: return ((char *) HT_00010);
|
||||
case 11: return ((char *) HT_00011);
|
||||
case 12: return ((char *) HT_00012);
|
||||
case 20: return ((char *) HT_00020);
|
||||
case 21: return ((char *) HT_00021);
|
||||
case 22: return ((char *) HT_00022);
|
||||
case 23: return ((char *) HT_00023);
|
||||
case 30: return ((char *) HT_00030);
|
||||
case 40: return ((char *) HT_00040);
|
||||
case 50: return ((char *) HT_00050);
|
||||
case 60: return ((char *) HT_00060);
|
||||
case 100: return ((char *) HT_00100);
|
||||
case 101: return ((char *) HT_00101);
|
||||
case 110: return ((char *) HT_00110);
|
||||
case 111: return ((char *) HT_00111);
|
||||
case 112: return ((char *) HT_00112);
|
||||
case 120: return ((char *) HT_00120);
|
||||
case 121: return ((char *) HT_00121);
|
||||
case 122: return ((char *) HT_00122);
|
||||
case 124: return ((char *) HT_00124);
|
||||
case 125: return ((char *) HT_00125);
|
||||
case 130: return ((char *) HT_00130);
|
||||
case 131: return ((char *) HT_00131);
|
||||
case 132: return ((char *) HT_00132);
|
||||
case 133: return ((char *) HT_00133);
|
||||
case 140: return ((char *) HT_00140);
|
||||
case 141: return ((char *) HT_00141);
|
||||
case 150: return ((char *) HT_00150);
|
||||
case 160: return ((char *) HT_00160);
|
||||
case 200: return ((char *) HT_00200);
|
||||
case 300: return ((char *) HT_00300);
|
||||
case 400: return ((char *) HT_00400);
|
||||
case 500: return ((char *) HT_00500);
|
||||
case 501: return ((char *) HT_00501);
|
||||
case 900: return ((char *) HT_00900);
|
||||
case 910: return ((char *) HT_00910);
|
||||
case 1000: return ((char *) HT_01000);
|
||||
case 1100: return ((char *) HT_01100);
|
||||
case 1400: return ((char *) HT_01400);
|
||||
case 1410: return ((char *) HT_01410);
|
||||
case 1420: return ((char *) HT_01420);
|
||||
case 1421: return ((char *) HT_01421);
|
||||
case 1430: return ((char *) HT_01430);
|
||||
case 1440: return ((char *) HT_01440);
|
||||
case 1441: return ((char *) HT_01441);
|
||||
case 1450: return ((char *) HT_01450);
|
||||
case 1460: return ((char *) HT_01460);
|
||||
case 1500: return ((char *) HT_01500);
|
||||
case 1600: return ((char *) HT_01600);
|
||||
case 1700: return ((char *) HT_01700);
|
||||
case 1710: return ((char *) HT_01710);
|
||||
case 1711: return ((char *) HT_01711);
|
||||
case 1720: return ((char *) HT_01720);
|
||||
case 1722: return ((char *) HT_01722);
|
||||
case 1730: return ((char *) HT_01730);
|
||||
case 1731: return ((char *) HT_01731);
|
||||
case 1740: return ((char *) HT_01740);
|
||||
case 1750: return ((char *) HT_01750);
|
||||
case 1760: return ((char *) HT_01760);
|
||||
case 1800: return ((char *) HT_01800);
|
||||
case 2100: return ((char *) HT_02100);
|
||||
case 2400: return ((char *) HT_02400);
|
||||
case 2410: return ((char *) HT_02410);
|
||||
case 2500: return ((char *) HT_02500);
|
||||
case 2600: return ((char *) HT_02600);
|
||||
case 2611: return ((char *) HT_02611);
|
||||
case 2612: return ((char *) HT_02612);
|
||||
case 2711: return ((char *) HT_02711);
|
||||
case 2811: return ((char *) HT_02811);
|
||||
case 3000: return ((char *) HT_03000);
|
||||
case 3100: return ((char *) HT_03100);
|
||||
case 3200: return ((char *) HT_03200);
|
||||
case 3710: return ((char *) HT_03710);
|
||||
case 3711: return ((char *) HT_03711);
|
||||
case 3800: return ((char *) HT_03800);
|
||||
case 4300: return ((char *) HT_04300);
|
||||
case 4400: return ((char *) HT_04400);
|
||||
case 4500: return ((char *) HT_04500);
|
||||
case 4700: return ((char *) HT_04700);
|
||||
case 4800: return ((char *) HT_04800);
|
||||
case 4900: return ((char *) HT_04900);
|
||||
case 5000: return ((char *) HT_05000);
|
||||
case 5100: return ((char *) HT_05100);
|
||||
case 5200: return ((char *) HT_05200);
|
||||
case 5300: return ((char *) HT_05300);
|
||||
case 5400: return ((char *) HT_05400);
|
||||
case 5500: return ((char *) HT_05500);
|
||||
case 5600: return ((char *) HT_05600);
|
||||
case 5700: return ((char *) HT_05700);
|
||||
case 5800: return ((char *) HT_05800);
|
||||
case 6000: return ((char *) HT_06000);
|
||||
case 6100: return ((char *) HT_06100);
|
||||
case 6211: return ((char *) HT_06211);
|
||||
case 6212: return ((char *) HT_06212);
|
||||
case 6213: return ((char *) HT_06213);
|
||||
case 6221: return ((char *) HT_06221);
|
||||
case 6222: return ((char *) HT_06222);
|
||||
case 6223: return ((char *) HT_06223);
|
||||
case 6231: return ((char *) HT_06231);
|
||||
case 6232: return ((char *) HT_06232);
|
||||
case 6233: return ((char *) HT_06233);
|
||||
case 6241: return ((char *) HT_06241);
|
||||
case 6242: return ((char *) HT_06242);
|
||||
case 6243: return ((char *) HT_06243);
|
||||
case 6300: return ((char *) HT_06300);
|
||||
case 6400: return ((char *) HT_06400);
|
||||
case 6500: return ((char *) HT_06500);
|
||||
case 6600: return ((char *) HT_06600);
|
||||
case 6700: return ((char *) HT_06700);
|
||||
case 6800: return ((char *) HT_06800);
|
||||
case 6900: return ((char *) HT_06900);
|
||||
case 7100: return ((char *) HT_07100);
|
||||
case 7200: return ((char *) HT_07200);
|
||||
case 7300: return ((char *) HT_07300);
|
||||
case 7400: return ((char *) HT_07400);
|
||||
case 7500: return ((char *) HT_07500);
|
||||
case 7600: return ((char *) HT_07600);
|
||||
case 7700: return ((char *) HT_07700);
|
||||
case 7800: return ((char *) HT_07800);
|
||||
case 7900: return ((char *) HT_07900);
|
||||
case 8000: return ((char *) HT_08000);
|
||||
case 8100: return ((char *) HT_08100);
|
||||
case 8200: return ((char *) HT_08200);
|
||||
case 8300: return ((char *) HT_08300);
|
||||
case 8400: return ((char *) HT_08400);
|
||||
case 8500: return ((char *) HT_08500);
|
||||
case 8600: return ((char *) HT_08600);
|
||||
case 8700: return ((char *) HT_08700);
|
||||
case 8800: return ((char *) HT_08800);
|
||||
case 8900: return ((char *) HT_08900);
|
||||
case 9000: return ((char *) HT_09000);
|
||||
case 9100: return ((char *) HT_09100);
|
||||
case 9200: return ((char *) HT_09200);
|
||||
case 9300: return ((char *) HT_09300);
|
||||
case 9400: return ((char *) HT_09400);
|
||||
case 9500: return ((char *) HT_09500);
|
||||
case 9600: return ((char *) HT_09600);
|
||||
case 9700: return ((char *) HT_09700);
|
||||
case 9710: return ((char *) HT_09710);
|
||||
case 9720: return ((char *) HT_09720);
|
||||
case 9800: return ((char *) HT_09800);
|
||||
case 9810: return ((char *) HT_09810);
|
||||
case 9820: return ((char *) HT_09820);
|
||||
case 9900: return ((char *) HT_09900);
|
||||
case 10000: return ((char *) HT_10000);
|
||||
case 10100: return ((char *) HT_10100);
|
||||
case 10200: return ((char *) HT_10200);
|
||||
case 10300: return ((char *) HT_10300);
|
||||
case 10400: return ((char *) HT_10400);
|
||||
case 10410: return ((char *) HT_10410);
|
||||
case 10420: return ((char *) HT_10420);
|
||||
case 10500: return ((char *) HT_10500);
|
||||
case 10600: return ((char *) HT_10600);
|
||||
case 10700: return ((char *) HT_10700);
|
||||
case 10800: return ((char *) HT_10800);
|
||||
case 10900: return ((char *) HT_10900);
|
||||
case 11000: return ((char *) HT_11000);
|
||||
case 11100: return ((char *) HT_11100);
|
||||
case 11200: return ((char *) HT_11200);
|
||||
case 11300: return ((char *) HT_11300);
|
||||
case 11400: return ((char *) HT_11400);
|
||||
case 11500: return ((char *) HT_11500);
|
||||
case 11600: return ((char *) HT_11600);
|
||||
case 11700: return ((char *) HT_11700);
|
||||
case 11800: return ((char *) HT_11800);
|
||||
case 11900: return ((char *) HT_11900);
|
||||
case 12000: return ((char *) HT_12000);
|
||||
case 12100: return ((char *) HT_12100);
|
||||
case 12200: return ((char *) HT_12200);
|
||||
case 12300: return ((char *) HT_12300);
|
||||
case 12400: return ((char *) HT_12400);
|
||||
case 12500: return ((char *) HT_12500);
|
||||
case 12600: return ((char *) HT_12600);
|
||||
case 12700: return ((char *) HT_12700);
|
||||
case 12800: return ((char *) HT_12800);
|
||||
case 12900: return ((char *) HT_12900);
|
||||
case 13000: return ((char *) HT_13000);
|
||||
case 13100: return ((char *) HT_13100);
|
||||
case 13200: return ((char *) HT_13200);
|
||||
case 13300: return ((char *) HT_13300);
|
||||
case 13400: return ((char *) HT_13400);
|
||||
case 13500: return ((char *) HT_13500);
|
||||
case 13600: return ((char *) HT_13600);
|
||||
case 13711: return ((char *) HT_13711);
|
||||
case 13712: return ((char *) HT_13712);
|
||||
case 13713: return ((char *) HT_13713);
|
||||
case 13721: return ((char *) HT_13721);
|
||||
case 13722: return ((char *) HT_13722);
|
||||
case 13723: return ((char *) HT_13723);
|
||||
case 13731: return ((char *) HT_13731);
|
||||
case 13732: return ((char *) HT_13732);
|
||||
case 13733: return ((char *) HT_13733);
|
||||
case 13741: return ((char *) HT_13741);
|
||||
case 13742: return ((char *) HT_13742);
|
||||
case 13743: return ((char *) HT_13743);
|
||||
case 13751: return ((char *) HT_13751);
|
||||
case 13752: return ((char *) HT_13752);
|
||||
case 13753: return ((char *) HT_13753);
|
||||
case 13761: return ((char *) HT_13761);
|
||||
case 13762: return ((char *) HT_13762);
|
||||
case 13763: return ((char *) HT_13763);
|
||||
case 13800: return ((char *) HT_13800);
|
||||
case 13900: return ((char *) HT_13900);
|
||||
case 14000: return ((char *) HT_14000);
|
||||
case 14100: return ((char *) HT_14100);
|
||||
}
|
||||
|
||||
return ((const char *) "Unknown");
|
||||
return ((char *) "Unknown");
|
||||
}
|
||||
|
||||
char *strparser (const u32 parser_status)
|
||||
{
|
||||
switch (parser_status)
|
||||
{
|
||||
case PARSER_OK: return ((const char *) PA_000);
|
||||
case PARSER_COMMENT: return ((const char *) PA_001);
|
||||
case PARSER_GLOBAL_ZERO: return ((const char *) PA_002);
|
||||
case PARSER_GLOBAL_LENGTH: return ((const char *) PA_003);
|
||||
case PARSER_HASH_LENGTH: return ((const char *) PA_004);
|
||||
case PARSER_HASH_VALUE: return ((const char *) PA_005);
|
||||
case PARSER_SALT_LENGTH: return ((const char *) PA_006);
|
||||
case PARSER_SALT_VALUE: return ((const char *) PA_007);
|
||||
case PARSER_SALT_ITERATION: return ((const char *) PA_008);
|
||||
case PARSER_SEPARATOR_UNMATCHED: return ((const char *) PA_009);
|
||||
case PARSER_SIGNATURE_UNMATCHED: return ((const char *) PA_010);
|
||||
case PARSER_HCCAP_FILE_SIZE: return ((const char *) PA_011);
|
||||
case PARSER_HCCAP_EAPOL_SIZE: return ((const char *) PA_012);
|
||||
case PARSER_PSAFE2_FILE_SIZE: return ((const char *) PA_013);
|
||||
case PARSER_PSAFE3_FILE_SIZE: return ((const char *) PA_014);
|
||||
case PARSER_TC_FILE_SIZE: return ((const char *) PA_015);
|
||||
case PARSER_VC_FILE_SIZE: return ((const char *) PA_016);
|
||||
case PARSER_SIP_AUTH_DIRECTIVE: return ((const char *) PA_017);
|
||||
case PARSER_HASH_FILE: return ((const char *) PA_018);
|
||||
case PARSER_OK: return ((char *) PA_000);
|
||||
case PARSER_COMMENT: return ((char *) PA_001);
|
||||
case PARSER_GLOBAL_ZERO: return ((char *) PA_002);
|
||||
case PARSER_GLOBAL_LENGTH: return ((char *) PA_003);
|
||||
case PARSER_HASH_LENGTH: return ((char *) PA_004);
|
||||
case PARSER_HASH_VALUE: return ((char *) PA_005);
|
||||
case PARSER_SALT_LENGTH: return ((char *) PA_006);
|
||||
case PARSER_SALT_VALUE: return ((char *) PA_007);
|
||||
case PARSER_SALT_ITERATION: return ((char *) PA_008);
|
||||
case PARSER_SEPARATOR_UNMATCHED: return ((char *) PA_009);
|
||||
case PARSER_SIGNATURE_UNMATCHED: return ((char *) PA_010);
|
||||
case PARSER_HCCAP_FILE_SIZE: return ((char *) PA_011);
|
||||
case PARSER_HCCAP_EAPOL_SIZE: return ((char *) PA_012);
|
||||
case PARSER_PSAFE2_FILE_SIZE: return ((char *) PA_013);
|
||||
case PARSER_PSAFE3_FILE_SIZE: return ((char *) PA_014);
|
||||
case PARSER_TC_FILE_SIZE: return ((char *) PA_015);
|
||||
case PARSER_VC_FILE_SIZE: return ((char *) PA_016);
|
||||
case PARSER_SIP_AUTH_DIRECTIVE: return ((char *) PA_017);
|
||||
case PARSER_HASH_FILE: return ((char *) PA_018);
|
||||
}
|
||||
|
||||
return ((const char *) PA_255);
|
||||
return ((char *) PA_255);
|
||||
}
|
||||
|
||||
void to_hccap_t (hashcat_ctx_t *hashcat_ctx, hccap_t *hccap, const u32 salt_pos, const u32 digest_pos)
|
||||
|
@ -182,6 +182,18 @@ int potfile_init (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
potfile_write_close (hashcat_ctx);
|
||||
|
||||
// starting from here, we should allocate some scratch buffer for later use
|
||||
|
||||
u8 *out_buf = (u8 *) hcmalloc (hashcat_ctx, HCBUFSIZ_LARGE); VERIFY_PTR (out_buf);
|
||||
|
||||
potfile_ctx->out_buf = out_buf;
|
||||
|
||||
// we need two buffers in parallel
|
||||
|
||||
u8 *tmp_buf = (u8 *) hcmalloc (hashcat_ctx, HCBUFSIZ_LARGE); VERIFY_PTR (tmp_buf);
|
||||
|
||||
potfile_ctx->tmp_buf = tmp_buf;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -191,6 +203,9 @@ void potfile_destroy (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
if (potfile_ctx->enabled == false) return;
|
||||
|
||||
hcfree (potfile_ctx->out_buf);
|
||||
hcfree (potfile_ctx->tmp_buf);
|
||||
|
||||
memset (potfile_ctx, 0, sizeof (potfile_ctx_t));
|
||||
}
|
||||
|
||||
@ -256,7 +271,7 @@ void potfile_write_append (hashcat_ctx_t *hashcat_ctx, const char *out_buf, u8 *
|
||||
|
||||
if (potfile_ctx->enabled == false) return;
|
||||
|
||||
char tmp_buf[HCBUFSIZ_LARGE];
|
||||
u8 *tmp_buf = potfile_ctx->tmp_buf;
|
||||
|
||||
int tmp_len = 0;
|
||||
|
||||
@ -518,9 +533,10 @@ int potfile_remove_parse (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
int potfile_handle_show (hashcat_ctx_t *hashcat_ctx)
|
||||
{
|
||||
hashes_t *hashes = hashcat_ctx->hashes;
|
||||
hashes_t *hashes = hashcat_ctx->hashes;
|
||||
potfile_ctx_t *potfile_ctx = hashcat_ctx->potfile_ctx;
|
||||
|
||||
hash_t *hashes_buf = hashes->hashes_buf;
|
||||
hash_t *hashes_buf = hashes->hashes_buf;
|
||||
|
||||
u32 salts_cnt = hashes->salts_cnt;
|
||||
salt_t *salts_buf = hashes->salts_buf;
|
||||
@ -539,16 +555,12 @@ int potfile_handle_show (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
if (digests_shown[hashes_idx] == 0) continue;
|
||||
|
||||
u8 *out_buf = hashes->out_buf;
|
||||
u8 *out_buf = potfile_ctx->out_buf;
|
||||
|
||||
out_buf[0] = 0;
|
||||
|
||||
ascii_digest (hashcat_ctx, (char *) out_buf, salt_idx, digest_idx);
|
||||
|
||||
u8 *tmp_buf = hashes->tmp_buf;
|
||||
|
||||
tmp_buf[0] = 0;
|
||||
|
||||
hash_t *hash = &hashes_buf[hashes_idx];
|
||||
|
||||
// user
|
||||
@ -570,6 +582,10 @@ int potfile_handle_show (hashcat_ctx_t *hashcat_ctx)
|
||||
}
|
||||
}
|
||||
|
||||
u8 *tmp_buf = potfile_ctx->tmp_buf;
|
||||
|
||||
tmp_buf[0] = 0;
|
||||
|
||||
const int tmp_len = outfile_write (hashcat_ctx, (char *) out_buf, (u8 *) hash->pw_buf, hash->pw_len, 0, username, user_len, (char *) tmp_buf);
|
||||
|
||||
EVENT_DATA (EVENT_POTFILE_HASH_SHOW, tmp_buf, tmp_len);
|
||||
@ -581,7 +597,8 @@ int potfile_handle_show (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
int potfile_handle_left (hashcat_ctx_t *hashcat_ctx)
|
||||
{
|
||||
hashes_t *hashes = hashcat_ctx->hashes;
|
||||
hashes_t *hashes = hashcat_ctx->hashes;
|
||||
potfile_ctx_t *potfile_ctx = hashcat_ctx->potfile_ctx;
|
||||
|
||||
hash_t *hashes_buf = hashes->hashes_buf;
|
||||
|
||||
@ -602,7 +619,7 @@ int potfile_handle_left (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
if (digests_shown[hashes_idx] == 1) continue;
|
||||
|
||||
u8 *out_buf = hashes->out_buf;
|
||||
u8 *out_buf = potfile_ctx->out_buf;
|
||||
|
||||
out_buf[0] = 0;
|
||||
|
||||
@ -629,7 +646,9 @@ int potfile_handle_left (hashcat_ctx_t *hashcat_ctx)
|
||||
}
|
||||
}
|
||||
|
||||
u8 *tmp_buf = hashes->tmp_buf;
|
||||
u8 *tmp_buf = potfile_ctx->tmp_buf;
|
||||
|
||||
tmp_buf[0] = 0;
|
||||
|
||||
const int tmp_len = outfile_write (hashcat_ctx, (char *) out_buf, NULL, 0, 0, username, user_len, (char *) tmp_buf);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user