From b8d609ba1604f4fed62198ae5000e205dcc87f70 Mon Sep 17 00:00:00 2001 From: jsteube Date: Tue, 2 Apr 2019 11:24:22 +0200 Subject: [PATCH] WPA/WPA2 cracking: In the potfile, replace password with PMK in order to detect already cracked networks across all WPA modes --- OpenCL/m02500-pure.cl | 10 +- OpenCL/m02501-pure.cl | 3 +- OpenCL/m16800-pure.cl | 24 +++- OpenCL/m16801-pure.cl | 20 ++- docs/changes.txt | 2 + include/convert.h | 3 + include/emu_m02501_pure.h | 57 -------- include/emu_m16801_pure.h | 45 ------- include/modules.h | 4 +- include/types.h | 5 +- src/Makefile | 1 - src/convert.c | 20 +++ src/emu_general.c | 4 +- src/emu_m02501_pure.c | 25 ---- src/emu_m16801_pure.c | 25 ---- src/interface.c | 1 + src/modules/module_00000.c | 1 + src/modules/module_00010.c | 1 + src/modules/module_00011.c | 1 + src/modules/module_00012.c | 1 + src/modules/module_00020.c | 1 + src/modules/module_00021.c | 1 + src/modules/module_00022.c | 1 + src/modules/module_00023.c | 1 + src/modules/module_00030.c | 1 + src/modules/module_00040.c | 1 + src/modules/module_00050.c | 1 + src/modules/module_00060.c | 1 + src/modules/module_00100.c | 1 + src/modules/module_00101.c | 1 + src/modules/module_00110.c | 1 + src/modules/module_00111.c | 1 + src/modules/module_00112.c | 1 + src/modules/module_00120.c | 1 + src/modules/module_00121.c | 1 + src/modules/module_00122.c | 1 + src/modules/module_00124.c | 1 + src/modules/module_00125.c | 1 + src/modules/module_00130.c | 1 + src/modules/module_00131.c | 1 + src/modules/module_00132.c | 1 + src/modules/module_00133.c | 1 + src/modules/module_00140.c | 1 + src/modules/module_00141.c | 1 + src/modules/module_00150.c | 1 + src/modules/module_00160.c | 1 + src/modules/module_00200.c | 1 + src/modules/module_00300.c | 1 + src/modules/module_00400.c | 1 + src/modules/module_00500.c | 1 + src/modules/module_00501.c | 1 + src/modules/module_00600.c | 1 + src/modules/module_00900.c | 1 + src/modules/module_01000.c | 1 + src/modules/module_01100.c | 1 + src/modules/module_01300.c | 1 + src/modules/module_01400.c | 1 + src/modules/module_01410.c | 1 + src/modules/module_01411.c | 1 + src/modules/module_01420.c | 1 + src/modules/module_01421.c | 1 + src/modules/module_01430.c | 1 + src/modules/module_01440.c | 1 + src/modules/module_01441.c | 1 + src/modules/module_01450.c | 1 + src/modules/module_01460.c | 1 + src/modules/module_01500.c | 1 + src/modules/module_01600.c | 1 + src/modules/module_01700.c | 1 + src/modules/module_01710.c | 1 + src/modules/module_01711.c | 1 + src/modules/module_01720.c | 1 + src/modules/module_01722.c | 1 + src/modules/module_01730.c | 1 + src/modules/module_01731.c | 1 + src/modules/module_01740.c | 1 + src/modules/module_01750.c | 1 + src/modules/module_01760.c | 1 + src/modules/module_01800.c | 1 + src/modules/module_02000.c | 1 + src/modules/module_02100.c | 1 + src/modules/module_02400.c | 1 + src/modules/module_02410.c | 1 + src/modules/module_02500.c | 211 ++++++++++++++++++++++------- src/modules/module_02501.c | 264 ++++++++++++++++++++++++++----------- src/modules/module_02600.c | 1 + src/modules/module_02611.c | 1 + src/modules/module_02612.c | 1 + src/modules/module_02711.c | 1 + src/modules/module_02811.c | 1 + src/modules/module_03000.c | 1 + src/modules/module_03100.c | 1 + src/modules/module_03200.c | 1 + src/modules/module_03710.c | 1 + src/modules/module_03711.c | 1 + src/modules/module_03800.c | 1 + src/modules/module_03910.c | 1 + src/modules/module_04010.c | 1 + src/modules/module_04110.c | 1 + src/modules/module_04300.c | 1 + src/modules/module_04400.c | 1 + src/modules/module_04500.c | 1 + src/modules/module_04520.c | 1 + src/modules/module_04521.c | 1 + src/modules/module_04522.c | 1 + src/modules/module_04700.c | 1 + src/modules/module_04800.c | 1 + src/modules/module_04900.c | 1 + src/modules/module_05100.c | 1 + src/modules/module_05200.c | 1 + src/modules/module_05300.c | 1 + src/modules/module_05400.c | 1 + src/modules/module_05500.c | 1 + src/modules/module_05600.c | 1 + src/modules/module_05700.c | 1 + src/modules/module_05800.c | 1 + src/modules/module_06000.c | 1 + src/modules/module_06100.c | 1 + src/modules/module_06211.c | 1 + src/modules/module_06212.c | 1 + src/modules/module_06213.c | 1 + src/modules/module_06221.c | 1 + src/modules/module_06222.c | 1 + src/modules/module_06223.c | 1 + src/modules/module_06231.c | 1 + src/modules/module_06232.c | 1 + src/modules/module_06233.c | 1 + src/modules/module_06241.c | 1 + src/modules/module_06242.c | 1 + src/modules/module_06243.c | 1 + src/modules/module_06300.c | 1 + src/modules/module_06400.c | 1 + src/modules/module_06500.c | 1 + src/modules/module_06600.c | 1 + src/modules/module_06700.c | 1 + src/modules/module_06800.c | 1 + src/modules/module_06900.c | 1 + src/modules/module_07000.c | 1 + src/modules/module_07100.c | 1 + src/modules/module_07200.c | 1 + src/modules/module_07300.c | 1 + src/modules/module_07400.c | 1 + src/modules/module_07500.c | 1 + src/modules/module_07700.c | 1 + src/modules/module_07701.c | 1 + src/modules/module_07800.c | 1 + src/modules/module_07801.c | 1 + src/modules/module_07900.c | 1 + src/modules/module_08000.c | 1 + src/modules/module_08100.c | 1 + src/modules/module_08200.c | 1 + src/modules/module_08300.c | 1 + src/modules/module_08400.c | 1 + src/modules/module_08500.c | 1 + src/modules/module_08600.c | 1 + src/modules/module_08700.c | 1 + src/modules/module_08800.c | 1 + src/modules/module_08900.c | 1 + src/modules/module_09000.c | 1 + src/modules/module_09100.c | 1 + src/modules/module_09200.c | 1 + src/modules/module_09300.c | 1 + src/modules/module_09400.c | 1 + src/modules/module_09500.c | 1 + src/modules/module_09600.c | 1 + src/modules/module_09700.c | 1 + src/modules/module_09710.c | 1 + src/modules/module_09720.c | 1 + src/modules/module_09800.c | 1 + src/modules/module_09810.c | 1 + src/modules/module_09820.c | 1 + src/modules/module_09900.c | 1 + src/modules/module_10000.c | 1 + src/modules/module_10100.c | 1 + src/modules/module_10200.c | 1 + src/modules/module_10300.c | 1 + src/modules/module_10400.c | 1 + src/modules/module_10410.c | 1 + src/modules/module_10420.c | 1 + src/modules/module_10500.c | 1 + src/modules/module_10600.c | 1 + src/modules/module_10700.c | 1 + src/modules/module_10800.c | 1 + src/modules/module_10900.c | 1 + src/modules/module_11000.c | 1 + src/modules/module_11100.c | 1 + src/modules/module_11200.c | 1 + src/modules/module_11300.c | 1 + src/modules/module_11400.c | 1 + src/modules/module_11500.c | 1 + src/modules/module_11600.c | 1 + src/modules/module_11700.c | 1 + src/modules/module_11750.c | 1 + src/modules/module_11760.c | 1 + src/modules/module_11800.c | 1 + src/modules/module_11850.c | 1 + src/modules/module_11860.c | 1 + src/modules/module_11900.c | 1 + src/modules/module_12000.c | 1 + src/modules/module_12001.c | 1 + src/modules/module_12100.c | 1 + src/modules/module_12200.c | 1 + src/modules/module_12300.c | 1 + src/modules/module_12400.c | 1 + src/modules/module_12500.c | 1 + src/modules/module_12600.c | 1 + src/modules/module_12700.c | 1 + src/modules/module_12800.c | 1 + src/modules/module_12900.c | 1 + src/modules/module_13000.c | 1 + src/modules/module_13100.c | 1 + src/modules/module_13200.c | 1 + src/modules/module_13300.c | 1 + src/modules/module_13400.c | 1 + src/modules/module_13500.c | 1 + src/modules/module_13600.c | 1 + src/modules/module_13711.c | 1 + src/modules/module_13712.c | 1 + src/modules/module_13713.c | 1 + src/modules/module_13721.c | 1 + src/modules/module_13722.c | 1 + src/modules/module_13723.c | 1 + src/modules/module_13731.c | 1 + src/modules/module_13732.c | 1 + src/modules/module_13733.c | 1 + src/modules/module_13741.c | 1 + src/modules/module_13742.c | 1 + src/modules/module_13743.c | 1 + src/modules/module_13751.c | 1 + src/modules/module_13752.c | 1 + src/modules/module_13753.c | 1 + src/modules/module_13761.c | 1 + src/modules/module_13762.c | 1 + src/modules/module_13763.c | 1 + src/modules/module_13771.c | 1 + src/modules/module_13772.c | 1 + src/modules/module_13773.c | 1 + src/modules/module_13800.c | 1 + src/modules/module_13900.c | 1 + src/modules/module_14000.c | 1 + src/modules/module_14100.c | 1 + src/modules/module_14400.c | 1 + src/modules/module_14600.c | 1 + src/modules/module_14700.c | 1 + src/modules/module_14800.c | 1 + src/modules/module_14900.c | 1 + src/modules/module_15000.c | 1 + src/modules/module_15100.c | 1 + src/modules/module_15200.c | 1 + src/modules/module_15300.c | 1 + src/modules/module_15400.c | 1 + src/modules/module_15500.c | 1 + src/modules/module_15600.c | 1 + src/modules/module_15700.c | 1 + src/modules/module_15900.c | 1 + src/modules/module_16000.c | 1 + src/modules/module_16100.c | 1 + src/modules/module_16200.c | 1 + src/modules/module_16300.c | 1 + src/modules/module_16400.c | 1 + src/modules/module_16500.c | 1 + src/modules/module_16600.c | 1 + src/modules/module_16700.c | 1 + src/modules/module_16800.c | 245 +++++++++++++++++++++++++++++----- src/modules/module_16801.c | 199 +++++++++++++++++++++++++--- src/modules/module_16900.c | 1 + src/modules/module_17300.c | 1 + src/modules/module_17400.c | 1 + src/modules/module_17500.c | 1 + src/modules/module_17600.c | 1 + src/modules/module_17700.c | 1 + src/modules/module_17800.c | 1 + src/modules/module_17900.c | 1 + src/modules/module_18000.c | 1 + src/modules/module_18100.c | 1 + src/modules/module_18200.c | 1 + src/modules/module_18300.c | 1 + src/modules/module_18400.c | 1 + src/modules/module_18500.c | 1 + src/modules/module_18600.c | 1 + src/modules/module_18700.c | 1 + src/modules/module_18800.c | 1 + src/modules/module_18900.c | 1 + src/modules/module_19000.c | 1 + src/modules/module_19100.c | 1 + src/modules/module_19200.c | 1 + src/modules/module_19300.c | 1 + src/modules/module_19500.c | 1 + src/modules/module_19600.c | 1 + src/modules/module_19700.c | 1 + src/modules/module_99999.c | 1 + src/outfile_check.c | 6 +- src/potfile.c | 45 ++++++- 293 files changed, 1145 insertions(+), 345 deletions(-) delete mode 100644 include/emu_m02501_pure.h delete mode 100644 include/emu_m16801_pure.h delete mode 100644 src/emu_m02501_pure.c delete mode 100644 src/emu_m16801_pure.c diff --git a/OpenCL/m02500-pure.cl b/OpenCL/m02500-pure.cl index e40f3501d..9c8781142 100644 --- a/OpenCL/m02500-pure.cl +++ b/OpenCL/m02500-pure.cl @@ -14,6 +14,15 @@ #include "inc_hash_sha1.cl" #include "inc_hash_sha256.cl" #include "inc_cipher_aes.cl" +#else +#include "inc_vendor.h" +#include "inc_types.h" +#include "inc_common.h" +#include "inc_simd.h" +#include "inc_hash_md5.h" +#include "inc_hash_sha1.h" +#include "inc_hash_sha256.h" +#include "inc_cipher_aes.h" #endif #define COMPARE_S "inc_comp_single.cl" @@ -34,7 +43,6 @@ typedef struct wpa_eapol u8 essid_len; u8 essid[32]; u32 keymic[4]; - u32 hash[4]; int nonce_compare; int nonce_error_corrections; int detected_le; diff --git a/OpenCL/m02501-pure.cl b/OpenCL/m02501-pure.cl index 611c8f1fe..59230ee8e 100644 --- a/OpenCL/m02501-pure.cl +++ b/OpenCL/m02501-pure.cl @@ -46,7 +46,6 @@ typedef struct wpa_eapol u8 essid_len; u8 essid[32]; u32 keymic[4]; - u32 hash[4]; int nonce_compare; int nonce_error_corrections; int detected_le; @@ -54,6 +53,7 @@ typedef struct wpa_eapol } wpa_eapol_t; +#ifdef KERNEL_STATIC DECLSPEC static u8 hex_convert (const u8 c) { return (c & 15) + (c >> 6) * 9; @@ -68,6 +68,7 @@ DECLSPEC static u8 hex_to_u8 (const u8 *hex) return (v); } +#endif DECLSPEC static void make_kn (u32 *k) { diff --git a/OpenCL/m16800-pure.cl b/OpenCL/m16800-pure.cl index 675ed62e8..7b75da591 100644 --- a/OpenCL/m16800-pure.cl +++ b/OpenCL/m16800-pure.cl @@ -11,6 +11,12 @@ #include "inc_common.cl" #include "inc_simd.cl" #include "inc_hash_sha1.cl" +#else +#include "inc_vendor.h" +#include "inc_types.h" +#include "inc_common.h" +#include "inc_simd.h" +#include "inc_hash_sha1.h" #endif #define COMPARE_S "inc_comp_single.cl" @@ -280,9 +286,23 @@ KERNEL_FQ void m16800_aux1 (KERN_ATTR_TMPS_ESALT (wpa_pbkdf2_tmp_t, wpa_pmkid_t) const u32 r2 = sha1_hmac_ctx.opad.h[2]; const u32 r3 = sha1_hmac_ctx.opad.h[3]; - #define il_pos 0 - #ifdef KERNEL_STATIC + + #define il_pos 0 #include COMPARE_M + + #else + + if ((hc_swap32_S (r0) == wpa_pmkid->pmkid[0]) + && (hc_swap32_S (r1) == wpa_pmkid->pmkid[1]) + && (hc_swap32_S (r2) == wpa_pmkid->pmkid[2]) + && (hc_swap32_S (r3) == wpa_pmkid->pmkid[3])) + { + if (atomic_inc (&hashes_shown[digest_cur]) == 0) + { + mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, digest_pos, digest_cur, gid, 0, 0, 0); + } + } + #endif } diff --git a/OpenCL/m16801-pure.cl b/OpenCL/m16801-pure.cl index fbedc1433..71278311e 100644 --- a/OpenCL/m16801-pure.cl +++ b/OpenCL/m16801-pure.cl @@ -39,6 +39,7 @@ typedef struct wpa_pmkid } wpa_pmkid_t; +#ifdef KERNEL_STATIC DECLSPEC static u8 hex_convert (const u8 c) { return (c & 15) + (c >> 6) * 9; @@ -53,6 +54,7 @@ DECLSPEC static u8 hex_to_u8 (const u8 *hex) return (v); } +#endif KERNEL_FQ void m16801_init (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_pmkid_t)) { @@ -157,9 +159,23 @@ KERNEL_FQ void m16801_aux1 (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_pmkid_t)) const u32 r2 = sha1_hmac_ctx.opad.h[2]; const u32 r3 = sha1_hmac_ctx.opad.h[3]; - #define il_pos 0 - #ifdef KERNEL_STATIC + + #define il_pos 0 #include COMPARE_M + + #else + + if ((hc_swap32_S (r0) == wpa_pmkid->pmkid[0]) + && (hc_swap32_S (r1) == wpa_pmkid->pmkid[1]) + && (hc_swap32_S (r2) == wpa_pmkid->pmkid[2]) + && (hc_swap32_S (r3) == wpa_pmkid->pmkid[3])) + { + if (atomic_inc (&hashes_shown[digest_cur]) == 0) + { + mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, digest_pos, digest_cur, gid, 0, 0, 0); + } + } + #endif } diff --git a/docs/changes.txt b/docs/changes.txt index 6d10b096c..d982d9888 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -55,6 +55,7 @@ - OpenCL Runtime: Update unstable mode warnings for Apple and AMDGPU drivers - OpenCL Runtime: Workaround JiT compiler error on AMDGPU driver compiling WPA-EAPOL-PBKDF2 OpenCL kernel - Tuning Database: Updated hashcat.hctune with new models and refreshed vector width values +- WPA/WPA2 cracking: In the potfile, replace password with PMK in order to detect already cracked networks across all WPA modes ## ## Technical @@ -62,6 +63,7 @@ - Binary Distribution: Removed 32 bit binary executables - Keep Guessing: No longer automatically activate --keep-guessing for modes 9720, 9820, 14900 and 18100 +- Mode 16800/16801 hash format: Changed separator character from '*' to ':' * changes v5.0.0 -> v5.1.0 diff --git a/include/convert.h b/include/convert.h index 8c7212a80..c4955d2d7 100644 --- a/include/convert.h +++ b/include/convert.h @@ -66,4 +66,7 @@ u32 v32a_from_v64 (const u64 v64); u32 v32b_from_v64 (const u64 v64); u64 v64_from_v32ab (const u32 v32a, const u32 v32b); +int hex_decode (const u8 *in_buf, const int in_len, u8 *out_buf); +int hex_encode (const u8 *in_buf, const int in_len, u8 *out_buf); + #endif // _CONVERT_H diff --git a/include/emu_m02501_pure.h b/include/emu_m02501_pure.h deleted file mode 100644 index 5af693074..000000000 --- a/include/emu_m02501_pure.h +++ /dev/null @@ -1,57 +0,0 @@ -/** - * Author......: See docs/credits.txt - * License.....: MIT - */ - -#ifndef _EMU_M02501_PURE_H -#define _EMU_M02501_PURE_H - -#define DGST_ELEM 4 -#define DGST_POS0 0 -#define DGST_POS1 1 -#define DGST_POS2 2 -#define DGST_POS3 3 - -typedef struct digest -{ - u32 digest_buf[DGST_ELEM]; - -} digest_t; - -typedef struct wpa_pmk_tmp -{ - u32 out[8]; - -} wpa_pmk_tmp_t; - -typedef struct wpa_eapol -{ - u32 pke[32]; - u32 eapol[64 + 16]; - u16 eapol_len; - u8 message_pair; - int message_pair_chgd; - u8 keyver; - u8 orig_mac_ap[6]; - u8 orig_mac_sta[6]; - u8 orig_nonce_ap[32]; - u8 orig_nonce_sta[32]; - u8 essid_len; - u8 essid[32]; - u32 keymic[4]; - u32 hash[4]; - int nonce_compare; - int nonce_error_corrections; - int detected_le; - int detected_be; - -} wpa_eapol_t; - -KERNEL_FQ void m02501_init (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_eapol_t)); -KERNEL_FQ void m02501_loop (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_eapol_t)); -KERNEL_FQ void m02501_comp (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_eapol_t)); -KERNEL_FQ void m02501_aux1 (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_eapol_t)); -KERNEL_FQ void m02501_aux2 (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_eapol_t)); -KERNEL_FQ void m02501_aux3 (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_eapol_t)); - -#endif // _EMU_M02501_PURE_H diff --git a/include/emu_m16801_pure.h b/include/emu_m16801_pure.h deleted file mode 100644 index fdcb49720..000000000 --- a/include/emu_m16801_pure.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * Author......: See docs/credits.txt - * License.....: MIT - */ - -#ifndef _EMU_M16801_PURE_H -#define _EMU_M16801_PURE_H - -#define DGST_ELEM 4 -#define DGST_POS0 0 -#define DGST_POS1 1 -#define DGST_POS2 2 -#define DGST_POS3 3 - -typedef struct digest -{ - u32 digest_buf[DGST_ELEM]; - -} digest_t; - -typedef struct wpa_pmk_tmp -{ - u32 out[8]; - -} wpa_pmk_tmp_t; - -typedef struct wpa_pmkid -{ - u32 pmkid[4]; - u32 pmkid_data[16]; - u8 orig_mac_ap[6]; - u8 orig_mac_sta[6]; - u8 essid_len; - u32 essid_buf[16]; - -} wpa_pmkid_t; - -KERNEL_FQ void m16801_init (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_pmkid_t)); -KERNEL_FQ void m16801_loop (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_pmkid_t)); -KERNEL_FQ void m16801_comp (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_pmkid_t)); -KERNEL_FQ void m16801_aux1 (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_pmkid_t)); -KERNEL_FQ void m16801_aux2 (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_pmkid_t)); -KERNEL_FQ void m16801_aux3 (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_pmkid_t)); - -#endif // _EMU_M16801_PURE_H diff --git a/include/modules.h b/include/modules.h index 9bb71c98a..331d12400 100644 --- a/include/modules.h +++ b/include/modules.h @@ -54,7 +54,7 @@ int module_hash_binary_count (MAYBE_UNUSED const hashes_t *hashes int module_hash_binary_parse (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra, hashes_t *hashes); int module_hash_binary_save (MAYBE_UNUSED const hashes_t *hashes, MAYBE_UNUSED const u32 salt_pos, MAYBE_UNUSED const u32 digest_pos, char **buf); -int module_hash_decode_potfile (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED void *digest_buf, MAYBE_UNUSED salt_t *salt, MAYBE_UNUSED void *esalt_buf, MAYBE_UNUSED void *hook_salt_buf, MAYBE_UNUSED hashinfo_t *hash_info, const char *line_buf, MAYBE_UNUSED const int line_len); +int module_hash_decode_potfile (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED void *digest_buf, MAYBE_UNUSED salt_t *salt, MAYBE_UNUSED void *esalt_buf, MAYBE_UNUSED void *hook_salt_buf, MAYBE_UNUSED hashinfo_t *hash_info, const char *line_buf, MAYBE_UNUSED const int line_len, MAYBE_UNUSED void *tmps); int module_hash_decode_zero_hash (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED void *digest_buf, MAYBE_UNUSED salt_t *salt, MAYBE_UNUSED void *esalt_buf, MAYBE_UNUSED void *hook_salt_buf, MAYBE_UNUSED hashinfo_t *hash_info); int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED void *digest_buf, MAYBE_UNUSED salt_t *salt, MAYBE_UNUSED void *esalt_buf, MAYBE_UNUSED void *hook_salt_buf, MAYBE_UNUSED hashinfo_t *hash_info, const char *line_buf, MAYBE_UNUSED const int line_len); int module_hash_encode_potfile (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const void *digest_buf, MAYBE_UNUSED const salt_t *salt, MAYBE_UNUSED const void *esalt_buf, MAYBE_UNUSED const void *hook_salt_buf, MAYBE_UNUSED const hashinfo_t *hash_info, char *line_buf, MAYBE_UNUSED const int line_size, MAYBE_UNUSED const void *tmps); @@ -76,4 +76,6 @@ int module_build_plain_postprocess (MAYBE_UNUSED const hashconfig_t *ha bool module_unstable_warning (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra, MAYBE_UNUSED const hc_device_param_t *device_param); +bool module_potfile_custom_check (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const hash_t *db, MAYBE_UNUSED const hash_t *entry_hash, MAYBE_UNUSED const void *entry_tmps); + #endif // _MODULES_H diff --git a/include/types.h b/include/types.h index d6540a630..185a3a35c 100644 --- a/include/types.h +++ b/include/types.h @@ -415,6 +415,7 @@ typedef enum opts_type OPTS_TYPE_DEEP_COMP_KERNEL = (1ULL << 42), // if we have to iterate through each hash inside the comp kernel, for example if each hash has to be decrypted separately OPTS_TYPE_SUGGEST_KG = (1ULL << 43), // suggest keep guessing for modules the user maybe wants to use --keep-guessing OPTS_TYPE_COPY_TMPS = (1ULL << 44), // if we want to use data from tmps buffer (for example get the PMK in WPA) + OPTS_TYPE_POTFILE_NOPASS = (1ULL << 45), // sometimes the password should not be printed to potfile } opts_type_t; @@ -2244,7 +2245,7 @@ typedef struct module_ctx int (*module_hash_binary_parse) (const hashconfig_t *, const user_options_t *, const user_options_extra_t *, hashes_t *); int (*module_hash_binary_save) (const hashes_t *, const u32, const u32, char **); - int (*module_hash_decode_potfile) (const hashconfig_t *, void *, salt_t *, void *, void *, hashinfo_t *, const char *, const int); + int (*module_hash_decode_potfile) (const hashconfig_t *, void *, salt_t *, void *, void *, hashinfo_t *, const char *, const int, void *); int (*module_hash_decode_zero_hash) (const hashconfig_t *, void *, salt_t *, void *, void *, hashinfo_t *); int (*module_hash_decode) (const hashconfig_t *, void *, salt_t *, void *, void *, hashinfo_t *, const char *, const int); int (*module_hash_encode_potfile) (const hashconfig_t *, const void *, const salt_t *, const void *, const void *, const hashinfo_t *, char *, int, const void *); @@ -2266,6 +2267,8 @@ typedef struct module_ctx bool (*module_unstable_warning) (const hashconfig_t *, const user_options_t *, const user_options_extra_t *, const hc_device_param_t *); + bool (*module_potfile_custom_check) (const hashconfig_t *, const hash_t *, const hash_t *, const void *); + } module_ctx_t; typedef struct hashcat_ctx diff --git a/src/Makefile b/src/Makefile index 8a0003689..6d869b633 100644 --- a/src/Makefile +++ b/src/Makefile @@ -282,7 +282,6 @@ EMU_OBJS_ALL += emu_inc_rp emu_inc_rp_optimized EMU_OBJS_ALL += emu_inc_truecrypt_crc32 emu_inc_truecrypt_keyfile emu_inc_truecrypt_xts emu_inc_veracrypt_xts EMU_OBJS_ALL += emu_inc_hash_md4 emu_inc_hash_md5 emu_inc_hash_ripemd160 emu_inc_hash_sha1 emu_inc_hash_sha256 emu_inc_hash_sha384 emu_inc_hash_sha512 emu_inc_hash_streebog256 emu_inc_hash_streebog512 EMU_OBJS_ALL += emu_inc_cipher_aes emu_inc_cipher_camellia emu_inc_cipher_des emu_inc_cipher_kuznyechik emu_inc_cipher_serpent emu_inc_cipher_twofish -EMU_OBJS_ALL += emu_m02501_pure emu_m16801_pure OBJS_ALL := affinity autotune benchmark bitmap bitops combinator common convert cpt cpu_crc32 debugfile dictstat dispatch dynloader event ext_ADL ext_nvapi ext_nvml ext_OpenCL ext_sysfs ext_lzma filehandling folder hashcat hashes hlfmt hwmon induct interface keyboard_layout locking logfile loopback memory monitor mpsp opencl outfile_check outfile pidfile potfile restore rp rp_cpu selftest slow_candidates shared status stdout straight terminal thread timer tuningdb usage user_options wordlist $(EMU_OBJS_ALL) diff --git a/src/convert.c b/src/convert.c index 5308e97d8..2697d72b8 100644 --- a/src/convert.c +++ b/src/convert.c @@ -894,3 +894,23 @@ u64 v64_from_v32ab (const u32 v32a, const u32 v32b) return v.v64; } + +int hex_decode (const u8 *in_buf, const int in_len, u8 *out_buf) +{ + for (int i = 0, j = 0; i < in_len; i += 2, j += 1) + { + out_buf[j] = hex_to_u8 (&in_buf[i]); + } + + return in_len / 2; +} + +int hex_encode (const u8 *in_buf, const int in_len, u8 *out_buf) +{ + for (int i = 0, j = 0; i < in_len; i += 1, j += 2) + { + u8_to_hex (in_buf[i], &out_buf[j]); + } + + return in_len * 2; +} diff --git a/src/emu_general.c b/src/emu_general.c index 51f7b1a0f..8e9bbb117 100644 --- a/src/emu_general.c +++ b/src/emu_general.c @@ -9,12 +9,12 @@ u32 atomic_dec (u32 *p) { - return *p--; + return p[0]--; } u32 atomic_inc (u32 *p) { - return *p++; + return p[0]++; } size_t get_global_id (u32 dimindx __attribute__((unused))) diff --git a/src/emu_m02501_pure.c b/src/emu_m02501_pure.c deleted file mode 100644 index b2eea4d6f..000000000 --- a/src/emu_m02501_pure.c +++ /dev/null @@ -1,25 +0,0 @@ -/** - * Author......: See docs/credits.txt - * License.....: MIT - */ - -#include "common.h" -#include "types.h" -#include "emu_general.h" - -#pragma GCC diagnostic ignored "-Wunused-parameter" - -#define DGST_ELEM 4 -#define DGST_POS0 0 -#define DGST_POS1 1 -#define DGST_POS2 2 -#define DGST_POS3 3 - -typedef struct digest -{ - u32 digest_buf[DGST_ELEM]; - -} digest_t; - -#include "m02501-pure.cl" - diff --git a/src/emu_m16801_pure.c b/src/emu_m16801_pure.c deleted file mode 100644 index b918e6bec..000000000 --- a/src/emu_m16801_pure.c +++ /dev/null @@ -1,25 +0,0 @@ -/** - * Author......: See docs/credits.txt - * License.....: MIT - */ - -#include "common.h" -#include "types.h" -#include "emu_general.h" - -#pragma GCC diagnostic ignored "-Wunused-parameter" - -#define DGST_ELEM 4 -#define DGST_POS0 0 -#define DGST_POS1 1 -#define DGST_POS2 2 -#define DGST_POS3 3 - -typedef struct digest -{ - u32 digest_buf[DGST_ELEM]; - -} digest_t; - -#include "m16801-pure.cl" - diff --git a/src/interface.c b/src/interface.c index b4e2f8d59..34e0b3923 100644 --- a/src/interface.c +++ b/src/interface.c @@ -168,6 +168,7 @@ int hashconfig_init (hashcat_ctx_t *hashcat_ctx) CHECK_DEFINED (module_ctx->module_opts_type); CHECK_DEFINED (module_ctx->module_outfile_check_disable); CHECK_DEFINED (module_ctx->module_outfile_check_nocomp); + CHECK_DEFINED (module_ctx->module_potfile_custom_check); CHECK_DEFINED (module_ctx->module_potfile_disable); CHECK_DEFINED (module_ctx->module_potfile_keep_all_hashes); CHECK_DEFINED (module_ctx->module_pwdump_column); diff --git a/src/modules/module_00000.c b/src/modules/module_00000.c index bc47e5266..8864e99af 100644 --- a/src/modules/module_00000.c +++ b/src/modules/module_00000.c @@ -171,6 +171,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00010.c b/src/modules/module_00010.c index b03de8036..c062bbffc 100644 --- a/src/modules/module_00010.c +++ b/src/modules/module_00010.c @@ -194,6 +194,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00011.c b/src/modules/module_00011.c index 585a6baa1..8f92b63f3 100644 --- a/src/modules/module_00011.c +++ b/src/modules/module_00011.c @@ -197,6 +197,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00012.c b/src/modules/module_00012.c index 2f89bf31b..2205560be 100644 --- a/src/modules/module_00012.c +++ b/src/modules/module_00012.c @@ -189,6 +189,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00020.c b/src/modules/module_00020.c index 0d947daad..29aa53399 100644 --- a/src/modules/module_00020.c +++ b/src/modules/module_00020.c @@ -193,6 +193,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00021.c b/src/modules/module_00021.c index 74908710b..5b6145da2 100644 --- a/src/modules/module_00021.c +++ b/src/modules/module_00021.c @@ -188,6 +188,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00022.c b/src/modules/module_00022.c index af54294f0..4d3c7a8bb 100644 --- a/src/modules/module_00022.c +++ b/src/modules/module_00022.c @@ -301,6 +301,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00023.c b/src/modules/module_00023.c index fbe94ffa5..1e342b0de 100644 --- a/src/modules/module_00023.c +++ b/src/modules/module_00023.c @@ -202,6 +202,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00030.c b/src/modules/module_00030.c index 941faa5d9..025dbaf41 100644 --- a/src/modules/module_00030.c +++ b/src/modules/module_00030.c @@ -195,6 +195,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00040.c b/src/modules/module_00040.c index 5f4fd46b7..a464c3387 100644 --- a/src/modules/module_00040.c +++ b/src/modules/module_00040.c @@ -194,6 +194,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00050.c b/src/modules/module_00050.c index 3e9a44854..01d78d817 100644 --- a/src/modules/module_00050.c +++ b/src/modules/module_00050.c @@ -173,6 +173,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00060.c b/src/modules/module_00060.c index bc931ac89..e334bce65 100644 --- a/src/modules/module_00060.c +++ b/src/modules/module_00060.c @@ -173,6 +173,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00100.c b/src/modules/module_00100.c index 921fe1d7b..0af06a62f 100644 --- a/src/modules/module_00100.c +++ b/src/modules/module_00100.c @@ -187,6 +187,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00101.c b/src/modules/module_00101.c index 6fdf3a103..ff1df37e8 100644 --- a/src/modules/module_00101.c +++ b/src/modules/module_00101.c @@ -191,6 +191,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00110.c b/src/modules/module_00110.c index 966de3ed0..2aecedd5f 100644 --- a/src/modules/module_00110.c +++ b/src/modules/module_00110.c @@ -213,6 +213,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00111.c b/src/modules/module_00111.c index f91f3c243..351abae30 100644 --- a/src/modules/module_00111.c +++ b/src/modules/module_00111.c @@ -217,6 +217,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00112.c b/src/modules/module_00112.c index 3a39ffdb2..146fb82b4 100644 --- a/src/modules/module_00112.c +++ b/src/modules/module_00112.c @@ -214,6 +214,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00120.c b/src/modules/module_00120.c index c62b85b31..7747ce30f 100644 --- a/src/modules/module_00120.c +++ b/src/modules/module_00120.c @@ -213,6 +213,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00121.c b/src/modules/module_00121.c index 67d3fd39d..fb84cb0ff 100644 --- a/src/modules/module_00121.c +++ b/src/modules/module_00121.c @@ -214,6 +214,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00122.c b/src/modules/module_00122.c index 098d408a3..05af6e778 100644 --- a/src/modules/module_00122.c +++ b/src/modules/module_00122.c @@ -193,6 +193,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00124.c b/src/modules/module_00124.c index 0898a1df2..067015228 100644 --- a/src/modules/module_00124.c +++ b/src/modules/module_00124.c @@ -212,6 +212,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00125.c b/src/modules/module_00125.c index 5068ae114..85ad2479f 100644 --- a/src/modules/module_00125.c +++ b/src/modules/module_00125.c @@ -195,6 +195,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00130.c b/src/modules/module_00130.c index 58085f65b..529337084 100644 --- a/src/modules/module_00130.c +++ b/src/modules/module_00130.c @@ -214,6 +214,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00131.c b/src/modules/module_00131.c index 642c19888..1956b16af 100644 --- a/src/modules/module_00131.c +++ b/src/modules/module_00131.c @@ -209,6 +209,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00132.c b/src/modules/module_00132.c index 339d688fe..6b89f7a4d 100644 --- a/src/modules/module_00132.c +++ b/src/modules/module_00132.c @@ -203,6 +203,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00133.c b/src/modules/module_00133.c index 64d40dd43..4bf7a95d9 100644 --- a/src/modules/module_00133.c +++ b/src/modules/module_00133.c @@ -186,6 +186,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00140.c b/src/modules/module_00140.c index 3004f3d7c..66e04fb0c 100644 --- a/src/modules/module_00140.c +++ b/src/modules/module_00140.c @@ -214,6 +214,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00141.c b/src/modules/module_00141.c index dd26e03ef..1e54b6bdc 100644 --- a/src/modules/module_00141.c +++ b/src/modules/module_00141.c @@ -221,6 +221,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00150.c b/src/modules/module_00150.c index 07e3fc430..af3fc83d7 100644 --- a/src/modules/module_00150.c +++ b/src/modules/module_00150.c @@ -191,6 +191,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00160.c b/src/modules/module_00160.c index 66656cd5a..01405572f 100644 --- a/src/modules/module_00160.c +++ b/src/modules/module_00160.c @@ -191,6 +191,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00200.c b/src/modules/module_00200.c index 996227f1e..5a7bb7f83 100644 --- a/src/modules/module_00200.c +++ b/src/modules/module_00200.c @@ -155,6 +155,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00300.c b/src/modules/module_00300.c index 75a69011f..dc13798dc 100644 --- a/src/modules/module_00300.c +++ b/src/modules/module_00300.c @@ -186,6 +186,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00400.c b/src/modules/module_00400.c index 5e1d27a7a..ae4b61a68 100644 --- a/src/modules/module_00400.c +++ b/src/modules/module_00400.c @@ -273,6 +273,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00500.c b/src/modules/module_00500.c index 81210e3be..59f67cb83 100644 --- a/src/modules/module_00500.c +++ b/src/modules/module_00500.c @@ -296,6 +296,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00501.c b/src/modules/module_00501.c index 758377303..bb6f19ff2 100644 --- a/src/modules/module_00501.c +++ b/src/modules/module_00501.c @@ -373,6 +373,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00600.c b/src/modules/module_00600.c index 5d68b2836..1bce6b479 100644 --- a/src/modules/module_00600.c +++ b/src/modules/module_00600.c @@ -198,6 +198,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_00900.c b/src/modules/module_00900.c index bac9bbdf2..48296874f 100644 --- a/src/modules/module_00900.c +++ b/src/modules/module_00900.c @@ -171,6 +171,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01000.c b/src/modules/module_01000.c index 69e5b7f6d..e4cf49f46 100644 --- a/src/modules/module_01000.c +++ b/src/modules/module_01000.c @@ -174,6 +174,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = module_pwdump_column; diff --git a/src/modules/module_01100.c b/src/modules/module_01100.c index fe1da3ded..e950c0d1e 100644 --- a/src/modules/module_01100.c +++ b/src/modules/module_01100.c @@ -198,6 +198,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01300.c b/src/modules/module_01300.c index c57fb08c1..147ea0b5c 100644 --- a/src/modules/module_01300.c +++ b/src/modules/module_01300.c @@ -201,6 +201,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01400.c b/src/modules/module_01400.c index 173572c3b..0f72e5de7 100644 --- a/src/modules/module_01400.c +++ b/src/modules/module_01400.c @@ -208,6 +208,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01410.c b/src/modules/module_01410.c index dd4803a51..761bca355 100644 --- a/src/modules/module_01410.c +++ b/src/modules/module_01410.c @@ -251,6 +251,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01411.c b/src/modules/module_01411.c index e0a9f689a..d05f889c4 100644 --- a/src/modules/module_01411.c +++ b/src/modules/module_01411.c @@ -247,6 +247,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01420.c b/src/modules/module_01420.c index d078b1bbd..0799c6110 100644 --- a/src/modules/module_01420.c +++ b/src/modules/module_01420.c @@ -234,6 +234,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01421.c b/src/modules/module_01421.c index 2ec6496a0..0e0c17b83 100644 --- a/src/modules/module_01421.c +++ b/src/modules/module_01421.c @@ -210,6 +210,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01430.c b/src/modules/module_01430.c index 98c941d31..f017e8478 100644 --- a/src/modules/module_01430.c +++ b/src/modules/module_01430.c @@ -235,6 +235,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01440.c b/src/modules/module_01440.c index 7658132b4..f95a8c4f3 100644 --- a/src/modules/module_01440.c +++ b/src/modules/module_01440.c @@ -235,6 +235,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01441.c b/src/modules/module_01441.c index f20955af4..84b7c330e 100644 --- a/src/modules/module_01441.c +++ b/src/modules/module_01441.c @@ -236,6 +236,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01450.c b/src/modules/module_01450.c index 684a52be7..9809b707a 100644 --- a/src/modules/module_01450.c +++ b/src/modules/module_01450.c @@ -239,6 +239,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01460.c b/src/modules/module_01460.c index 1fa9f8f2a..9e038153d 100644 --- a/src/modules/module_01460.c +++ b/src/modules/module_01460.c @@ -223,6 +223,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01500.c b/src/modules/module_01500.c index 7ea71addb..56e6385ea 100644 --- a/src/modules/module_01500.c +++ b/src/modules/module_01500.c @@ -247,6 +247,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01600.c b/src/modules/module_01600.c index 8482b991e..7e0e31fea 100644 --- a/src/modules/module_01600.c +++ b/src/modules/module_01600.c @@ -307,6 +307,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01700.c b/src/modules/module_01700.c index 6af42f915..fa64b980f 100644 --- a/src/modules/module_01700.c +++ b/src/modules/module_01700.c @@ -210,6 +210,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01710.c b/src/modules/module_01710.c index 446348c30..261d08127 100644 --- a/src/modules/module_01710.c +++ b/src/modules/module_01710.c @@ -235,6 +235,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01711.c b/src/modules/module_01711.c index 36c85d0f8..eb27b3841 100644 --- a/src/modules/module_01711.c +++ b/src/modules/module_01711.c @@ -231,6 +231,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01720.c b/src/modules/module_01720.c index 8f176b158..0355b04f5 100644 --- a/src/modules/module_01720.c +++ b/src/modules/module_01720.c @@ -252,6 +252,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01722.c b/src/modules/module_01722.c index e31f9c66d..d944ab14d 100644 --- a/src/modules/module_01722.c +++ b/src/modules/module_01722.c @@ -229,6 +229,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01730.c b/src/modules/module_01730.c index 081c841f0..68215bb34 100644 --- a/src/modules/module_01730.c +++ b/src/modules/module_01730.c @@ -237,6 +237,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01731.c b/src/modules/module_01731.c index fdd5e09bd..966fa5d89 100644 --- a/src/modules/module_01731.c +++ b/src/modules/module_01731.c @@ -222,6 +222,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01740.c b/src/modules/module_01740.c index ba26dd3d7..cc0f134ee 100644 --- a/src/modules/module_01740.c +++ b/src/modules/module_01740.c @@ -253,6 +253,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01750.c b/src/modules/module_01750.c index c575a1beb..3be281eea 100644 --- a/src/modules/module_01750.c +++ b/src/modules/module_01750.c @@ -235,6 +235,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01760.c b/src/modules/module_01760.c index 9e60b4fd3..8058432bf 100644 --- a/src/modules/module_01760.c +++ b/src/modules/module_01760.c @@ -241,6 +241,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_01800.c b/src/modules/module_01800.c index 6bad9f016..7ef301b6a 100644 --- a/src/modules/module_01800.c +++ b/src/modules/module_01800.c @@ -601,6 +601,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_02000.c b/src/modules/module_02000.c index 931d6b803..91ec5f095 100644 --- a/src/modules/module_02000.c +++ b/src/modules/module_02000.c @@ -111,6 +111,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_02100.c b/src/modules/module_02100.c index b7f3c6856..ebfe8431d 100644 --- a/src/modules/module_02100.c +++ b/src/modules/module_02100.c @@ -209,6 +209,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_02400.c b/src/modules/module_02400.c index 465b7af09..9ee865095 100644 --- a/src/modules/module_02400.c +++ b/src/modules/module_02400.c @@ -202,6 +202,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_02410.c b/src/modules/module_02410.c index 78f73e2c8..0bf6ca073 100644 --- a/src/modules/module_02410.c +++ b/src/modules/module_02410.c @@ -218,6 +218,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_02500.c b/src/modules/module_02500.c index bb8b9f918..f1d2d8c9c 100644 --- a/src/modules/module_02500.c +++ b/src/modules/module_02500.c @@ -51,6 +51,7 @@ const char *module_st_pass (MAYBE_UNUSED const hashconfig_t *hashconfig, static const u32 ROUNDS_WPA_PBKDF2 = 4096; +/* typedef struct wpa_eapol { u32 pke[32]; @@ -66,7 +67,6 @@ typedef struct wpa_eapol u8 essid_len; u8 essid[32]; u32 keymic[4]; - u32 hash[4]; int nonce_compare; int nonce_error_corrections; int detected_le; @@ -83,6 +83,7 @@ typedef struct wpa_pbkdf2_tmp u32 out[10]; } wpa_pbkdf2_tmp_t; +*/ #define HCCAPX_VERSION 4 #define HCCAPX_SIGNATURE 0x58504348 // HCPX @@ -112,6 +113,23 @@ typedef struct hccapx hccapx_t; #pragma pack(pop) +#define DGST_ELEM 4 + +typedef struct digest +{ + u32 digest_buf[DGST_ELEM]; + +} digest_t; + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wunused-parameter" + +#include "emu_general.h" +#include "inc_vendor.h" +#include "m02500-pure.cl" + +#pragma GCC diagnostic pop + static void to_hccapx_t (const hashes_t *hashes, hccapx_t *hccapx, const u32 salt_pos, const u32 digest_pos) { const salt_t *salts_buf = hashes->salts_buf; @@ -230,51 +248,71 @@ u32 module_pw_max (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED con return pw_max; } -int module_hash_decode_potfile (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED void *digest_buf, MAYBE_UNUSED salt_t *salt, MAYBE_UNUSED void *esalt_buf, MAYBE_UNUSED void *hook_salt_buf, MAYBE_UNUSED hashinfo_t *hash_info, const char *line_buf, MAYBE_UNUSED const int line_len) +int module_hash_decode_potfile (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED void *digest_buf, MAYBE_UNUSED salt_t *salt, MAYBE_UNUSED void *esalt_buf, MAYBE_UNUSED void *hook_salt_buf, MAYBE_UNUSED hashinfo_t *hash_info, const char *line_buf, MAYBE_UNUSED const int line_len, MAYBE_UNUSED void *tmps) { - u32 *digest = (u32 *) digest_buf; + wpa_eapol_t *wpa_eapol = (wpa_eapol_t *) esalt_buf; + + wpa_pbkdf2_tmp_t *wpa_pbkdf2_tmp = (wpa_pbkdf2_tmp_t *) tmps; + + // here we have in line_hash_buf: PMK*essid:password + // but we don't care about the password + + // PMK - // here we have in line_hash_buf: hash:macap:macsta:essid:password + wpa_pbkdf2_tmp->out[0] = hex_to_u32 ((const u8 *) line_buf + 0); + wpa_pbkdf2_tmp->out[1] = hex_to_u32 ((const u8 *) line_buf + 8); + wpa_pbkdf2_tmp->out[2] = hex_to_u32 ((const u8 *) line_buf + 16); + wpa_pbkdf2_tmp->out[3] = hex_to_u32 ((const u8 *) line_buf + 24); + wpa_pbkdf2_tmp->out[4] = hex_to_u32 ((const u8 *) line_buf + 32); + wpa_pbkdf2_tmp->out[5] = hex_to_u32 ((const u8 *) line_buf + 40); + wpa_pbkdf2_tmp->out[6] = hex_to_u32 ((const u8 *) line_buf + 48); + wpa_pbkdf2_tmp->out[7] = hex_to_u32 ((const u8 *) line_buf + 56); + + // essid char *sep_pos = strrchr (line_buf, ':'); - if (sep_pos == NULL) return (PARSER_HASH_ENCODING); + if (sep_pos == NULL) return (PARSER_SEPARATOR_UNMATCHED); - if ((line_buf + 32 + 1 + 12 + 1 + 12) != sep_pos) return (PARSER_HASH_LENGTH); + if ((line_buf + 64) != sep_pos) return (PARSER_HASH_LENGTH); char *essid_pos = sep_pos + 1; const int essid_len = strlen (essid_pos); - u8 tmp_buf[128] = { 0 }; + if (essid_len & 1) return (PARSER_SALT_VALUE); - int tmp_len = essid_len; + if (essid_len > 64) return (PARSER_SALT_VALUE); - memcpy (tmp_buf, essid_pos, essid_len); + wpa_eapol->essid_len = hex_decode ((const u8 *) essid_pos, essid_len, (u8 *) wpa_eapol->essid); - if (is_hexify (tmp_buf, tmp_len) == true) - { - tmp_len = exec_unhexify (tmp_buf, tmp_len, tmp_buf, sizeof (tmp_buf)); - } + return PARSER_OK; +} + +int module_hash_encode_potfile (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const void *digest_buf, MAYBE_UNUSED const salt_t *salt, MAYBE_UNUSED const void *esalt_buf, MAYBE_UNUSED const void *hook_salt_buf, MAYBE_UNUSED const hashinfo_t *hash_info, char *line_buf, MAYBE_UNUSED const int line_size, MAYBE_UNUSED const void *tmps) +{ + const wpa_eapol_t *wpa_eapol = (const wpa_eapol_t *) esalt_buf; - if (tmp_len > 32) return (PARSER_HASH_VALUE); + const wpa_pbkdf2_tmp_t *wpa_pbkdf2_tmp = (const wpa_pbkdf2_tmp_t *) tmps; - memcpy (salt->salt_buf, tmp_buf, tmp_len); + char tmp_buf[128]; - salt->salt_len = tmp_len; - salt->salt_iter = ROUNDS_WPA_PBKDF2 - 1; + const int tmp_len = hex_encode ((const u8 *) wpa_eapol->essid, wpa_eapol->essid_len, (u8 *) tmp_buf); - digest[0] = hex_to_u32 ((const u8 *) &line_buf[ 0]); - digest[1] = hex_to_u32 ((const u8 *) &line_buf[ 8]); - digest[2] = hex_to_u32 ((const u8 *) &line_buf[16]); - digest[3] = hex_to_u32 ((const u8 *) &line_buf[24]); + tmp_buf[tmp_len] = 0; - digest[0] = byte_swap_32 (digest[0]); - digest[1] = byte_swap_32 (digest[1]); - digest[2] = byte_swap_32 (digest[2]); - digest[3] = byte_swap_32 (digest[3]); + const int line_len = snprintf (line_buf, line_size, "%08x%08x%08x%08x%08x%08x%08x%08x:%s", + wpa_pbkdf2_tmp->out[0], + wpa_pbkdf2_tmp->out[1], + wpa_pbkdf2_tmp->out[2], + wpa_pbkdf2_tmp->out[3], + wpa_pbkdf2_tmp->out[4], + wpa_pbkdf2_tmp->out[5], + wpa_pbkdf2_tmp->out[6], + wpa_pbkdf2_tmp->out[7], + tmp_buf); - return PARSER_OK; + return line_len; } int module_hash_encode_status (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const void *digest_buf, MAYBE_UNUSED const salt_t *salt, MAYBE_UNUSED const void *esalt_buf, MAYBE_UNUSED const void *hook_salt_buf, MAYBE_UNUSED const hashinfo_t *hash_info, char *line_buf, MAYBE_UNUSED const int line_size) @@ -467,6 +505,97 @@ u32 module_deep_comp_kernel (MAYBE_UNUSED const hashes_t *hashes, MAYBE_UNUSED c return 0; } +bool module_potfile_custom_check (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const hash_t *db, MAYBE_UNUSED const hash_t *entry_hash, MAYBE_UNUSED const void *entry_tmps) +{ + const wpa_eapol_t *wpa_eapol_entry = (const wpa_eapol_t *) entry_hash->esalt; + const wpa_eapol_t *wpa_eapol_db = (const wpa_eapol_t *) db->esalt; + + if (wpa_eapol_db->essid_len != wpa_eapol_entry->essid_len) return false; + + if (strcmp ((const char *) wpa_eapol_db->essid, (const char *) wpa_eapol_entry->essid)) return false; + + const wpa_pbkdf2_tmp_t *wpa_pbkdf2_tmp = (const wpa_pbkdf2_tmp_t *) entry_tmps; + + wpa_pbkdf2_tmp_t tmps; + + tmps.out[0] = byte_swap_32 (wpa_pbkdf2_tmp->out[0]); + tmps.out[1] = byte_swap_32 (wpa_pbkdf2_tmp->out[1]); + tmps.out[2] = byte_swap_32 (wpa_pbkdf2_tmp->out[2]); + tmps.out[3] = byte_swap_32 (wpa_pbkdf2_tmp->out[3]); + tmps.out[4] = byte_swap_32 (wpa_pbkdf2_tmp->out[4]); + tmps.out[5] = byte_swap_32 (wpa_pbkdf2_tmp->out[5]); + tmps.out[6] = byte_swap_32 (wpa_pbkdf2_tmp->out[6]); + tmps.out[7] = byte_swap_32 (wpa_pbkdf2_tmp->out[7]); + + plain_t plains_buf; + + u32 hashes_shown = 0; + + u32 d_return_buf = 0; + + void (*m02500_aux) (KERN_ATTR_TMPS_ESALT (wpa_pbkdf2_tmp_t, wpa_eapol_t)); + + if (wpa_eapol_db->keyver == 1) + { + m02500_aux = m02500_aux1; + } + else if (wpa_eapol_db->keyver == 2) + { + m02500_aux = m02500_aux2; + } + else if (wpa_eapol_db->keyver == 3) + { + m02500_aux = m02500_aux3; + } + else + { + m02500_aux = NULL; + } + + m02500_aux + ( + NULL, // pws + NULL, // rules_buf + NULL, // combs_buf + NULL, // bfs_buf + &tmps, // tmps + NULL, // hooks + NULL, // bitmaps_buf_s1_a + NULL, // bitmaps_buf_s1_b + NULL, // bitmaps_buf_s1_c + NULL, // bitmaps_buf_s1_d + NULL, // bitmaps_buf_s2_a + NULL, // bitmaps_buf_s2_b + NULL, // bitmaps_buf_s2_c + NULL, // bitmaps_buf_s2_d + &plains_buf, // plains_buf + db->digest, // digests_buf + &hashes_shown, // hashes_shown + db->salt, // salt_bufs + db->esalt, // esalt_bufs + &d_return_buf, // d_return_buf + NULL, // d_extra0_buf + NULL, // d_extra1_buf + NULL, // d_extra2_buf + NULL, // d_extra3_buf + 0, // bitmap_mask + 0, // bitmap_shift1 + 0, // bitmap_shift2 + 0, // salt_pos + 0, // loop_pos + 0, // loop_cnt + 0, // il_cnt + 1, // digests_cnt + 0, // digests_offset + 0, // combs_mode + 1 // gid_max + ); + + const bool r = (d_return_buf == 0) ? false : true; + + return r; +} + int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED void *digest_buf, MAYBE_UNUSED salt_t *salt, MAYBE_UNUSED void *esalt_buf, MAYBE_UNUSED void *hook_salt_buf, MAYBE_UNUSED hashinfo_t *hash_info, const char *line_buf, MAYBE_UNUSED const int line_len) { u32 *digest = (u32 *) digest_buf; @@ -695,17 +824,12 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE md5_transform (block + 0, block + 4, block + 8, block + 12, hash); - wpa_eapol->hash[0] = hash[0]; - wpa_eapol->hash[1] = hash[1]; - wpa_eapol->hash[2] = hash[2]; - wpa_eapol->hash[3] = hash[3]; - // make all this stuff unique - digest[0] = wpa_eapol->hash[0]; - digest[1] = wpa_eapol->hash[1]; - digest[2] = wpa_eapol->hash[2]; - digest[3] = wpa_eapol->hash[3]; + digest[0] = hash[0]; + digest[1] = hash[1]; + digest[2] = hash[2]; + digest[3] = hash[3]; return (PARSER_OK); } @@ -716,7 +840,7 @@ int module_hash_encode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE int line_len = 0; - if (need_hexify (wpa_eapol->essid, wpa_eapol->essid_len, hashconfig->separator, 0) == true) + if (need_hexify (wpa_eapol->essid, wpa_eapol->essid_len, ':', 0) == true) { char tmp_buf[128]; @@ -736,11 +860,7 @@ int module_hash_encode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE tmp_buf[tmp_len++] = 0; - line_len = snprintf (line_buf, line_size, "%08x%08x%08x%08x:%02x%02x%02x%02x%02x%02x:%02x%02x%02x%02x%02x%02x:%s", - wpa_eapol->hash[0], - wpa_eapol->hash[1], - wpa_eapol->hash[2], - wpa_eapol->hash[3], + line_len = snprintf (line_buf, line_size, "%02x%02x%02x%02x%02x%02x:%02x%02x%02x%02x%02x%02x:%s", wpa_eapol->orig_mac_ap[0], wpa_eapol->orig_mac_ap[1], wpa_eapol->orig_mac_ap[2], @@ -757,11 +877,7 @@ int module_hash_encode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE } else { - line_len = snprintf (line_buf, line_size, "%08x%08x%08x%08x:%02x%02x%02x%02x%02x%02x:%02x%02x%02x%02x%02x%02x:%s", - wpa_eapol->hash[0], - wpa_eapol->hash[1], - wpa_eapol->hash[2], - wpa_eapol->hash[3], + line_len = snprintf (line_buf, line_size, "%02x%02x%02x%02x%02x%02x:%02x%02x%02x%02x%02x%02x:%s", wpa_eapol->orig_mac_ap[0], wpa_eapol->orig_mac_ap[1], wpa_eapol->orig_mac_ap[2], @@ -809,7 +925,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_hash_decode_zero_hash = MODULE_DEFAULT; module_ctx->module_hash_decode = module_hash_decode; module_ctx->module_hash_encode_status = module_hash_encode_status; - module_ctx->module_hash_encode_potfile = MODULE_DEFAULT; + module_ctx->module_hash_encode_potfile = module_hash_encode_potfile; module_ctx->module_hash_encode = module_hash_encode; module_ctx->module_hash_init_selftest = module_hash_init_selftest; module_ctx->module_hash_mode = MODULE_DEFAULT; @@ -834,6 +950,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = module_potfile_custom_check; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_02501.c b/src/modules/module_02501.c index fcc652ec8..3f806f8dc 100644 --- a/src/modules/module_02501.c +++ b/src/modules/module_02501.c @@ -29,6 +29,7 @@ static const u64 OPTS_TYPE = OPTS_TYPE_PT_GENERATE_LE | OPTS_TYPE_AUX3 | OPTS_TYPE_BINARY_HASHFILE | OPTS_TYPE_DEEP_COMP_KERNEL + | OPTS_TYPE_POTFILE_NOPASS | OPTS_TYPE_COPY_TMPS; static const u32 SALT_TYPE = SALT_TYPE_EMBEDDED; static const char *ST_PASS = "7f620a599c445155935a35634638fa67b4aafecb92e0bd8625388757a63c2dda"; @@ -51,6 +52,7 @@ const char *module_st_pass (MAYBE_UNUSED const hashconfig_t *hashconfig, static const u32 ROUNDS_WPA_PMK = 1; +/* typedef struct wpa_eapol { u32 pke[32]; @@ -66,7 +68,6 @@ typedef struct wpa_eapol u8 essid_len; u8 essid[32]; u32 keymic[4]; - u32 hash[4]; int nonce_compare; int nonce_error_corrections; int detected_le; @@ -74,15 +75,12 @@ typedef struct wpa_eapol } wpa_eapol_t; -typedef struct wpa_pbkdf2_tmp +typedef struct wpa_pmk_tmp { - u32 ipad[5]; - u32 opad[5]; + u32 out[8]; - u32 dgst[10]; - u32 out[10]; - -} wpa_pbkdf2_tmp_t; +} wpa_pmk_tmp_t; +*/ #define HCCAPX_VERSION 4 #define HCCAPX_SIGNATURE 0x58504348 // HCPX @@ -112,6 +110,23 @@ typedef struct hccapx hccapx_t; #pragma pack(pop) +#define DGST_ELEM 4 + +typedef struct digest +{ + u32 digest_buf[DGST_ELEM]; + +} digest_t; + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wunused-parameter" + +#include "emu_general.h" +#include "inc_vendor.h" +#include "m02501-pure.cl" + +#pragma GCC diagnostic pop + static void to_hccapx_t (const hashes_t *hashes, hccapx_t *hccapx, const u32 salt_pos, const u32 digest_pos) { const salt_t *salts_buf = hashes->salts_buf; @@ -204,7 +219,7 @@ const char *module_benchmark_mask (MAYBE_UNUSED const hashconfig_t *hashconfig, u64 module_tmp_size (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra) { - const u64 tmp_size = (const u64) sizeof (wpa_pbkdf2_tmp_t); + const u64 tmp_size = (const u64) sizeof (wpa_pmk_tmp_t); return tmp_size; } @@ -230,71 +245,69 @@ u32 module_pw_max (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED con return pw_max; } -int module_hash_decode_potfile (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED void *digest_buf, MAYBE_UNUSED salt_t *salt, MAYBE_UNUSED void *esalt_buf, MAYBE_UNUSED void *hook_salt_buf, MAYBE_UNUSED hashinfo_t *hash_info, const char *line_buf, MAYBE_UNUSED const int line_len) +int module_hash_decode_potfile (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED void *digest_buf, MAYBE_UNUSED salt_t *salt, MAYBE_UNUSED void *esalt_buf, MAYBE_UNUSED void *hook_salt_buf, MAYBE_UNUSED hashinfo_t *hash_info, const char *line_buf, MAYBE_UNUSED const int line_len, MAYBE_UNUSED void *tmps) { - u32 *digest = (u32 *) digest_buf; - - // here we have in line_hash_buf: hash:macap:macsta:essid:password - - char *sep_pos = strrchr (line_buf, ':'); + wpa_eapol_t *wpa_eapol = (wpa_eapol_t *) esalt_buf; - if (sep_pos == NULL) return (PARSER_HASH_ENCODING); + wpa_pmk_tmp_t *wpa_pmk_tmp = (wpa_pmk_tmp_t *) tmps; - if ((line_buf + 32 + 1 + 12 + 1 + 12) != sep_pos) return (PARSER_HASH_LENGTH); + // here we have in line_hash_buf: PMK*essid:password + // but we don't care about the password - char *essid_pos = sep_pos + 1; + // PMK - const int essid_len = strlen (essid_pos); + wpa_pmk_tmp->out[0] = hex_to_u32 ((const u8 *) line_buf + 0); + wpa_pmk_tmp->out[1] = hex_to_u32 ((const u8 *) line_buf + 8); + wpa_pmk_tmp->out[2] = hex_to_u32 ((const u8 *) line_buf + 16); + wpa_pmk_tmp->out[3] = hex_to_u32 ((const u8 *) line_buf + 24); + wpa_pmk_tmp->out[4] = hex_to_u32 ((const u8 *) line_buf + 32); + wpa_pmk_tmp->out[5] = hex_to_u32 ((const u8 *) line_buf + 40); + wpa_pmk_tmp->out[6] = hex_to_u32 ((const u8 *) line_buf + 48); + wpa_pmk_tmp->out[7] = hex_to_u32 ((const u8 *) line_buf + 56); - u8 tmp_buf[128] = { 0 }; + // essid - int tmp_len = essid_len; + char *sep_pos = strrchr (line_buf, ':'); - memcpy (tmp_buf, essid_pos, essid_len); + if (sep_pos == NULL) return (PARSER_SEPARATOR_UNMATCHED); - if (is_hexify (tmp_buf, tmp_len) == true) - { - tmp_len = exec_unhexify (tmp_buf, tmp_len, tmp_buf, sizeof (tmp_buf)); - } + if ((line_buf + 64) != sep_pos) return (PARSER_HASH_LENGTH); - if (tmp_len > 32) return (PARSER_HASH_VALUE); + char *essid_pos = sep_pos + 1; - memcpy (salt->salt_buf, tmp_buf, tmp_len); + const int essid_len = strlen (essid_pos); - salt->salt_len = tmp_len; - salt->salt_iter = ROUNDS_WPA_PMK - 1; + if (essid_len & 1) return (PARSER_SALT_VALUE); - digest[0] = hex_to_u32 ((const u8 *) &line_buf[ 0]); - digest[1] = hex_to_u32 ((const u8 *) &line_buf[ 8]); - digest[2] = hex_to_u32 ((const u8 *) &line_buf[16]); - digest[3] = hex_to_u32 ((const u8 *) &line_buf[24]); + if (essid_len > 64) return (PARSER_SALT_VALUE); - digest[0] = byte_swap_32 (digest[0]); - digest[1] = byte_swap_32 (digest[1]); - digest[2] = byte_swap_32 (digest[2]); - digest[3] = byte_swap_32 (digest[3]); + wpa_eapol->essid_len = hex_decode ((const u8 *) essid_pos, essid_len, (u8 *) wpa_eapol->essid); return PARSER_OK; } -int module_hash_encode_status (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const void *digest_buf, MAYBE_UNUSED const salt_t *salt, MAYBE_UNUSED const void *esalt_buf, MAYBE_UNUSED const void *hook_salt_buf, MAYBE_UNUSED const hashinfo_t *hash_info, char *line_buf, MAYBE_UNUSED const int line_size) +int module_hash_encode_potfile (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const void *digest_buf, MAYBE_UNUSED const salt_t *salt, MAYBE_UNUSED const void *esalt_buf, MAYBE_UNUSED const void *hook_salt_buf, MAYBE_UNUSED const hashinfo_t *hash_info, char *line_buf, MAYBE_UNUSED const int line_size, MAYBE_UNUSED const void *tmps) { - wpa_eapol_t *wpa_eapol = (wpa_eapol_t *) esalt_buf; + const wpa_eapol_t *wpa_eapol = (const wpa_eapol_t *) esalt_buf; - const int line_len = snprintf (line_buf, line_size, "%s (AP:%02x:%02x:%02x:%02x:%02x:%02x STA:%02x:%02x:%02x:%02x:%02x:%02x)", - (char *) salt->salt_buf, - wpa_eapol->orig_mac_ap[0], - wpa_eapol->orig_mac_ap[1], - wpa_eapol->orig_mac_ap[2], - wpa_eapol->orig_mac_ap[3], - wpa_eapol->orig_mac_ap[4], - wpa_eapol->orig_mac_ap[5], - wpa_eapol->orig_mac_sta[0], - wpa_eapol->orig_mac_sta[1], - wpa_eapol->orig_mac_sta[2], - wpa_eapol->orig_mac_sta[3], - wpa_eapol->orig_mac_sta[4], - wpa_eapol->orig_mac_sta[5]); + const wpa_pmk_tmp_t *wpa_pmk_tmp = (const wpa_pmk_tmp_t *) tmps; + + char tmp_buf[128]; + + const int tmp_len = hex_encode ((const u8 *) wpa_eapol->essid, wpa_eapol->essid_len, (u8 *) tmp_buf); + + tmp_buf[tmp_len] = 0; + + const int line_len = snprintf (line_buf, line_size, "%08x%08x%08x%08x%08x%08x%08x%08x:%s", + wpa_pmk_tmp->out[0], + wpa_pmk_tmp->out[1], + wpa_pmk_tmp->out[2], + wpa_pmk_tmp->out[3], + wpa_pmk_tmp->out[4], + wpa_pmk_tmp->out[5], + wpa_pmk_tmp->out[6], + wpa_pmk_tmp->out[7], + tmp_buf); return line_len; } @@ -467,6 +480,119 @@ u32 module_deep_comp_kernel (MAYBE_UNUSED const hashes_t *hashes, MAYBE_UNUSED c return 0; } +bool module_potfile_custom_check (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const hash_t *db, MAYBE_UNUSED const hash_t *entry_hash, MAYBE_UNUSED const void *entry_tmps) +{ + const wpa_eapol_t *wpa_eapol_entry = (const wpa_eapol_t *) entry_hash->esalt; + const wpa_eapol_t *wpa_eapol_db = (const wpa_eapol_t *) db->esalt; + + if (wpa_eapol_db->essid_len != wpa_eapol_entry->essid_len) return false; + + if (strcmp ((const char *) wpa_eapol_db->essid, (const char *) wpa_eapol_entry->essid)) return false; + + const wpa_pmk_tmp_t *wpa_pmk_tmp = (const wpa_pmk_tmp_t *) entry_tmps; + + wpa_pmk_tmp_t tmps; + + tmps.out[0] = byte_swap_32 (wpa_pmk_tmp->out[0]); + tmps.out[1] = byte_swap_32 (wpa_pmk_tmp->out[1]); + tmps.out[2] = byte_swap_32 (wpa_pmk_tmp->out[2]); + tmps.out[3] = byte_swap_32 (wpa_pmk_tmp->out[3]); + tmps.out[4] = byte_swap_32 (wpa_pmk_tmp->out[4]); + tmps.out[5] = byte_swap_32 (wpa_pmk_tmp->out[5]); + tmps.out[6] = byte_swap_32 (wpa_pmk_tmp->out[6]); + tmps.out[7] = byte_swap_32 (wpa_pmk_tmp->out[7]); + + plain_t plains_buf; + + u32 hashes_shown = 0; + + u32 d_return_buf = 0; + + void (*m02501_aux) (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_eapol_t)); + + if (wpa_eapol_db->keyver == 1) + { + m02501_aux = m02501_aux1; + } + else if (wpa_eapol_db->keyver == 2) + { + m02501_aux = m02501_aux2; + } + else if (wpa_eapol_db->keyver == 3) + { + m02501_aux = m02501_aux3; + } + else + { + m02501_aux = NULL; + } + + m02501_aux + ( + NULL, // pws + NULL, // rules_buf + NULL, // combs_buf + NULL, // bfs_buf + &tmps, // tmps + NULL, // hooks + NULL, // bitmaps_buf_s1_a + NULL, // bitmaps_buf_s1_b + NULL, // bitmaps_buf_s1_c + NULL, // bitmaps_buf_s1_d + NULL, // bitmaps_buf_s2_a + NULL, // bitmaps_buf_s2_b + NULL, // bitmaps_buf_s2_c + NULL, // bitmaps_buf_s2_d + &plains_buf, // plains_buf + db->digest, // digests_buf + &hashes_shown, // hashes_shown + db->salt, // salt_bufs + db->esalt, // esalt_bufs + &d_return_buf, // d_return_buf + NULL, // d_extra0_buf + NULL, // d_extra1_buf + NULL, // d_extra2_buf + NULL, // d_extra3_buf + 0, // bitmap_mask + 0, // bitmap_shift1 + 0, // bitmap_shift2 + 0, // salt_pos + 0, // loop_pos + 0, // loop_cnt + 0, // il_cnt + 1, // digests_cnt + 0, // digests_offset + 0, // combs_mode + 1 // gid_max + ); + + const bool r = (d_return_buf == 0) ? false : true; + + return r; +} + +int module_hash_encode_status (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const void *digest_buf, MAYBE_UNUSED const salt_t *salt, MAYBE_UNUSED const void *esalt_buf, MAYBE_UNUSED const void *hook_salt_buf, MAYBE_UNUSED const hashinfo_t *hash_info, char *line_buf, MAYBE_UNUSED const int line_size) +{ + wpa_eapol_t *wpa_eapol = (wpa_eapol_t *) esalt_buf; + + const int line_len = snprintf (line_buf, line_size, "%s (AP:%02x:%02x:%02x:%02x:%02x:%02x STA:%02x:%02x:%02x:%02x:%02x:%02x)", + (char *) salt->salt_buf, + wpa_eapol->orig_mac_ap[0], + wpa_eapol->orig_mac_ap[1], + wpa_eapol->orig_mac_ap[2], + wpa_eapol->orig_mac_ap[3], + wpa_eapol->orig_mac_ap[4], + wpa_eapol->orig_mac_ap[5], + wpa_eapol->orig_mac_sta[0], + wpa_eapol->orig_mac_sta[1], + wpa_eapol->orig_mac_sta[2], + wpa_eapol->orig_mac_sta[3], + wpa_eapol->orig_mac_sta[4], + wpa_eapol->orig_mac_sta[5]); + + return line_len; +} + int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED void *digest_buf, MAYBE_UNUSED salt_t *salt, MAYBE_UNUSED void *esalt_buf, MAYBE_UNUSED void *hook_salt_buf, MAYBE_UNUSED hashinfo_t *hash_info, const char *line_buf, MAYBE_UNUSED const int line_len) { u32 *digest = (u32 *) digest_buf; @@ -695,17 +821,12 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE md5_transform (block + 0, block + 4, block + 8, block + 12, hash); - wpa_eapol->hash[0] = hash[0]; - wpa_eapol->hash[1] = hash[1]; - wpa_eapol->hash[2] = hash[2]; - wpa_eapol->hash[3] = hash[3]; - // make all this stuff unique - digest[0] = wpa_eapol->hash[0]; - digest[1] = wpa_eapol->hash[1]; - digest[2] = wpa_eapol->hash[2]; - digest[3] = wpa_eapol->hash[3]; + digest[0] = hash[0]; + digest[1] = hash[1]; + digest[2] = hash[2]; + digest[3] = hash[3]; return (PARSER_OK); } @@ -716,7 +837,7 @@ int module_hash_encode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE int line_len = 0; - if (need_hexify (wpa_eapol->essid, wpa_eapol->essid_len, hashconfig->separator, 0) == true) + if (need_hexify (wpa_eapol->essid, wpa_eapol->essid_len, ':', 0) == true) { char tmp_buf[128]; @@ -736,11 +857,7 @@ int module_hash_encode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE tmp_buf[tmp_len++] = 0; - line_len = snprintf (line_buf, line_size, "%08x%08x%08x%08x:%02x%02x%02x%02x%02x%02x:%02x%02x%02x%02x%02x%02x:%s", - wpa_eapol->hash[0], - wpa_eapol->hash[1], - wpa_eapol->hash[2], - wpa_eapol->hash[3], + line_len = snprintf (line_buf, line_size, "%02x%02x%02x%02x%02x%02x:%02x%02x%02x%02x%02x%02x:%s", wpa_eapol->orig_mac_ap[0], wpa_eapol->orig_mac_ap[1], wpa_eapol->orig_mac_ap[2], @@ -757,11 +874,7 @@ int module_hash_encode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE } else { - line_len = snprintf (line_buf, line_size, "%08x%08x%08x%08x:%02x%02x%02x%02x%02x%02x:%02x%02x%02x%02x%02x%02x:%s", - wpa_eapol->hash[0], - wpa_eapol->hash[1], - wpa_eapol->hash[2], - wpa_eapol->hash[3], + line_len = snprintf (line_buf, line_size, "%02x%02x%02x%02x%02x%02x:%02x%02x%02x%02x%02x%02x:%s", wpa_eapol->orig_mac_ap[0], wpa_eapol->orig_mac_ap[1], wpa_eapol->orig_mac_ap[2], @@ -809,7 +922,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_hash_decode_zero_hash = MODULE_DEFAULT; module_ctx->module_hash_decode = module_hash_decode; module_ctx->module_hash_encode_status = module_hash_encode_status; - module_ctx->module_hash_encode_potfile = MODULE_DEFAULT; + module_ctx->module_hash_encode_potfile = module_hash_encode_potfile; module_ctx->module_hash_encode = module_hash_encode; module_ctx->module_hash_init_selftest = module_hash_init_selftest; module_ctx->module_hash_mode = MODULE_DEFAULT; @@ -834,6 +947,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = module_potfile_custom_check; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_02600.c b/src/modules/module_02600.c index 2d8681b5f..47b6d68a3 100644 --- a/src/modules/module_02600.c +++ b/src/modules/module_02600.c @@ -180,6 +180,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_02611.c b/src/modules/module_02611.c index 0bda805ef..4455ae6bb 100644 --- a/src/modules/module_02611.c +++ b/src/modules/module_02611.c @@ -194,6 +194,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_02612.c b/src/modules/module_02612.c index 27de2398d..f8f2d89a4 100644 --- a/src/modules/module_02612.c +++ b/src/modules/module_02612.c @@ -196,6 +196,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_02711.c b/src/modules/module_02711.c index 18c1f4ec3..9ca370658 100644 --- a/src/modules/module_02711.c +++ b/src/modules/module_02711.c @@ -178,6 +178,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_02811.c b/src/modules/module_02811.c index 8a7324a2b..80b25a428 100644 --- a/src/modules/module_02811.c +++ b/src/modules/module_02811.c @@ -208,6 +208,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_03000.c b/src/modules/module_03000.c index 0d1d8d923..9f9d5b3ab 100644 --- a/src/modules/module_03000.c +++ b/src/modules/module_03000.c @@ -215,6 +215,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = module_potfile_keep_all_hashes; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_03100.c b/src/modules/module_03100.c index 3e773811f..0be70e7ff 100644 --- a/src/modules/module_03100.c +++ b/src/modules/module_03100.c @@ -157,6 +157,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_03200.c b/src/modules/module_03200.c index b1870244a..89a563a0a 100644 --- a/src/modules/module_03200.c +++ b/src/modules/module_03200.c @@ -282,6 +282,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_03710.c b/src/modules/module_03710.c index 989a56b82..0a04b8672 100644 --- a/src/modules/module_03710.c +++ b/src/modules/module_03710.c @@ -193,6 +193,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_03711.c b/src/modules/module_03711.c index 11aeae80d..033754ecf 100644 --- a/src/modules/module_03711.c +++ b/src/modules/module_03711.c @@ -196,6 +196,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_03800.c b/src/modules/module_03800.c index db07cec1f..3473b5b5c 100644 --- a/src/modules/module_03800.c +++ b/src/modules/module_03800.c @@ -194,6 +194,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_03910.c b/src/modules/module_03910.c index fb2bb936e..72afbbcd4 100644 --- a/src/modules/module_03910.c +++ b/src/modules/module_03910.c @@ -210,6 +210,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_04010.c b/src/modules/module_04010.c index 644f91b2e..2911fc80d 100644 --- a/src/modules/module_04010.c +++ b/src/modules/module_04010.c @@ -193,6 +193,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_04110.c b/src/modules/module_04110.c index a4e30a075..de1128f93 100644 --- a/src/modules/module_04110.c +++ b/src/modules/module_04110.c @@ -191,6 +191,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_04300.c b/src/modules/module_04300.c index bbe65c707..3349f66c1 100644 --- a/src/modules/module_04300.c +++ b/src/modules/module_04300.c @@ -180,6 +180,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_04400.c b/src/modules/module_04400.c index e2241fd85..1ada3dc8d 100644 --- a/src/modules/module_04400.c +++ b/src/modules/module_04400.c @@ -170,6 +170,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_04500.c b/src/modules/module_04500.c index 5762b3e40..e78a8bb8c 100644 --- a/src/modules/module_04500.c +++ b/src/modules/module_04500.c @@ -185,6 +185,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_04520.c b/src/modules/module_04520.c index f92d9c663..ea710e51b 100644 --- a/src/modules/module_04520.c +++ b/src/modules/module_04520.c @@ -193,6 +193,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_04521.c b/src/modules/module_04521.c index f6584510a..abe2d0fc1 100644 --- a/src/modules/module_04521.c +++ b/src/modules/module_04521.c @@ -185,6 +185,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_04522.c b/src/modules/module_04522.c index 05c9fcbe7..f5d861e40 100644 --- a/src/modules/module_04522.c +++ b/src/modules/module_04522.c @@ -185,6 +185,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_04700.c b/src/modules/module_04700.c index f923f5d5b..6bd57c97d 100644 --- a/src/modules/module_04700.c +++ b/src/modules/module_04700.c @@ -187,6 +187,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_04800.c b/src/modules/module_04800.c index 1a44a1572..0ff73f3c5 100644 --- a/src/modules/module_04800.c +++ b/src/modules/module_04800.c @@ -193,6 +193,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_04900.c b/src/modules/module_04900.c index e47d4eb15..5ddb13155 100644 --- a/src/modules/module_04900.c +++ b/src/modules/module_04900.c @@ -208,6 +208,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_05100.c b/src/modules/module_05100.c index cd8a90354..69deba04e 100644 --- a/src/modules/module_05100.c +++ b/src/modules/module_05100.c @@ -148,6 +148,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_05200.c b/src/modules/module_05200.c index 7db622ba6..c7b39eeb6 100644 --- a/src/modules/module_05200.c +++ b/src/modules/module_05200.c @@ -211,6 +211,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_05300.c b/src/modules/module_05300.c index 90e31e570..5f291036b 100644 --- a/src/modules/module_05300.c +++ b/src/modules/module_05300.c @@ -289,6 +289,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_05400.c b/src/modules/module_05400.c index fd938c7e6..6db09d9a1 100644 --- a/src/modules/module_05400.c +++ b/src/modules/module_05400.c @@ -296,6 +296,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_05500.c b/src/modules/module_05500.c index 01d18479e..4d39507d0 100644 --- a/src/modules/module_05500.c +++ b/src/modules/module_05500.c @@ -434,6 +434,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_05600.c b/src/modules/module_05600.c index 420a0be0e..278f7a3b4 100644 --- a/src/modules/module_05600.c +++ b/src/modules/module_05600.c @@ -350,6 +350,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_05700.c b/src/modules/module_05700.c index bf67fbb16..fd7a9ab9b 100644 --- a/src/modules/module_05700.c +++ b/src/modules/module_05700.c @@ -196,6 +196,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_05800.c b/src/modules/module_05800.c index 2d21a414a..249a2c67c 100644 --- a/src/modules/module_05800.c +++ b/src/modules/module_05800.c @@ -209,6 +209,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06000.c b/src/modules/module_06000.c index 0096b368e..34d583696 100644 --- a/src/modules/module_06000.c +++ b/src/modules/module_06000.c @@ -151,6 +151,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06100.c b/src/modules/module_06100.c index a40efa5f2..2b15f8b98 100644 --- a/src/modules/module_06100.c +++ b/src/modules/module_06100.c @@ -232,6 +232,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06211.c b/src/modules/module_06211.c index f24ef5bd0..60cf02375 100644 --- a/src/modules/module_06211.c +++ b/src/modules/module_06211.c @@ -277,6 +277,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06212.c b/src/modules/module_06212.c index b19c1ab57..4e00c88dc 100644 --- a/src/modules/module_06212.c +++ b/src/modules/module_06212.c @@ -277,6 +277,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06213.c b/src/modules/module_06213.c index 437d3cd2e..aa7e5cfcd 100644 --- a/src/modules/module_06213.c +++ b/src/modules/module_06213.c @@ -275,6 +275,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06221.c b/src/modules/module_06221.c index 8acdddfc8..3e0125822 100644 --- a/src/modules/module_06221.c +++ b/src/modules/module_06221.c @@ -278,6 +278,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06222.c b/src/modules/module_06222.c index 314013417..6d8c19d19 100644 --- a/src/modules/module_06222.c +++ b/src/modules/module_06222.c @@ -278,6 +278,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06223.c b/src/modules/module_06223.c index a50903d6b..4f317a345 100644 --- a/src/modules/module_06223.c +++ b/src/modules/module_06223.c @@ -278,6 +278,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06231.c b/src/modules/module_06231.c index 4b033df93..185e40f21 100644 --- a/src/modules/module_06231.c +++ b/src/modules/module_06231.c @@ -277,6 +277,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06232.c b/src/modules/module_06232.c index db6974564..4bc3c2c27 100644 --- a/src/modules/module_06232.c +++ b/src/modules/module_06232.c @@ -277,6 +277,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06233.c b/src/modules/module_06233.c index cc40cf579..f06f6c960 100644 --- a/src/modules/module_06233.c +++ b/src/modules/module_06233.c @@ -277,6 +277,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06241.c b/src/modules/module_06241.c index fdd09e955..833abe5ab 100644 --- a/src/modules/module_06241.c +++ b/src/modules/module_06241.c @@ -289,6 +289,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06242.c b/src/modules/module_06242.c index ebc478e64..e6faa3190 100644 --- a/src/modules/module_06242.c +++ b/src/modules/module_06242.c @@ -289,6 +289,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06243.c b/src/modules/module_06243.c index f473adfa6..2f5264d1e 100644 --- a/src/modules/module_06243.c +++ b/src/modules/module_06243.c @@ -289,6 +289,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06300.c b/src/modules/module_06300.c index 58c629bbc..630f75bfe 100644 --- a/src/modules/module_06300.c +++ b/src/modules/module_06300.c @@ -301,6 +301,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06400.c b/src/modules/module_06400.c index 92bb1f348..3ef92f040 100644 --- a/src/modules/module_06400.c +++ b/src/modules/module_06400.c @@ -441,6 +441,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06500.c b/src/modules/module_06500.c index be2881da6..f094f84a6 100644 --- a/src/modules/module_06500.c +++ b/src/modules/module_06500.c @@ -621,6 +621,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06600.c b/src/modules/module_06600.c index 274bd7a2d..bc9848319 100644 --- a/src/modules/module_06600.c +++ b/src/modules/module_06600.c @@ -262,6 +262,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06700.c b/src/modules/module_06700.c index a0deb77f0..962367a3c 100644 --- a/src/modules/module_06700.c +++ b/src/modules/module_06700.c @@ -337,6 +337,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06800.c b/src/modules/module_06800.c index 45e362da5..3d4e18349 100644 --- a/src/modules/module_06800.c +++ b/src/modules/module_06800.c @@ -212,6 +212,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_06900.c b/src/modules/module_06900.c index f9289daf9..2d1045f7d 100644 --- a/src/modules/module_06900.c +++ b/src/modules/module_06900.c @@ -152,6 +152,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_07000.c b/src/modules/module_07000.c index 7b8eb23de..c1973a6ef 100644 --- a/src/modules/module_07000.c +++ b/src/modules/module_07000.c @@ -234,6 +234,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_07100.c b/src/modules/module_07100.c index 07a17bf70..b5678b617 100644 --- a/src/modules/module_07100.c +++ b/src/modules/module_07100.c @@ -284,6 +284,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_07200.c b/src/modules/module_07200.c index dda80f2b2..de30ab58f 100644 --- a/src/modules/module_07200.c +++ b/src/modules/module_07200.c @@ -279,6 +279,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_07300.c b/src/modules/module_07300.c index 07ca519e7..cb9db0028 100644 --- a/src/modules/module_07300.c +++ b/src/modules/module_07300.c @@ -211,6 +211,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_07400.c b/src/modules/module_07400.c index 1021a64a8..e0a2ee9a7 100644 --- a/src/modules/module_07400.c +++ b/src/modules/module_07400.c @@ -411,6 +411,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_07500.c b/src/modules/module_07500.c index c342eab07..6d0946785 100644 --- a/src/modules/module_07500.c +++ b/src/modules/module_07500.c @@ -293,6 +293,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = module_pwdump_column; diff --git a/src/modules/module_07700.c b/src/modules/module_07700.c index 0e18a35d0..df9089e26 100644 --- a/src/modules/module_07700.c +++ b/src/modules/module_07700.c @@ -182,6 +182,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_07701.c b/src/modules/module_07701.c index 4ab200e45..28b15139a 100644 --- a/src/modules/module_07701.c +++ b/src/modules/module_07701.c @@ -175,6 +175,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_07800.c b/src/modules/module_07800.c index 261f95fd5..8a711709f 100644 --- a/src/modules/module_07800.c +++ b/src/modules/module_07800.c @@ -206,6 +206,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_07801.c b/src/modules/module_07801.c index 6523112c6..d49b320fe 100644 --- a/src/modules/module_07801.c +++ b/src/modules/module_07801.c @@ -206,6 +206,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_07900.c b/src/modules/module_07900.c index eeb573815..fe82989ae 100644 --- a/src/modules/module_07900.c +++ b/src/modules/module_07900.c @@ -487,6 +487,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_08000.c b/src/modules/module_08000.c index 6ba15f67d..1bf634173 100644 --- a/src/modules/module_08000.c +++ b/src/modules/module_08000.c @@ -208,6 +208,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_08100.c b/src/modules/module_08100.c index 85b4220fd..7a368d238 100644 --- a/src/modules/module_08100.c +++ b/src/modules/module_08100.c @@ -205,6 +205,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_08200.c b/src/modules/module_08200.c index ee7b6c442..14e2914c0 100644 --- a/src/modules/module_08200.c +++ b/src/modules/module_08200.c @@ -312,6 +312,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_08300.c b/src/modules/module_08300.c index 7f58f3c82..581be544b 100644 --- a/src/modules/module_08300.c +++ b/src/modules/module_08300.c @@ -264,6 +264,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_08400.c b/src/modules/module_08400.c index 3e6f9c049..a395b6af8 100644 --- a/src/modules/module_08400.c +++ b/src/modules/module_08400.c @@ -184,6 +184,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_08500.c b/src/modules/module_08500.c index c56fdcb91..bdd563b51 100644 --- a/src/modules/module_08500.c +++ b/src/modules/module_08500.c @@ -225,6 +225,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_08600.c b/src/modules/module_08600.c index bf20103a2..429efa6d5 100644 --- a/src/modules/module_08600.c +++ b/src/modules/module_08600.c @@ -158,6 +158,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_08700.c b/src/modules/module_08700.c index 262b936ff..694e8e912 100644 --- a/src/modules/module_08700.c +++ b/src/modules/module_08700.c @@ -188,6 +188,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_08800.c b/src/modules/module_08800.c index c74676f7f..fae0cc1bf 100644 --- a/src/modules/module_08800.c +++ b/src/modules/module_08800.c @@ -259,6 +259,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_08900.c b/src/modules/module_08900.c index d363d9bcf..80fb34959 100644 --- a/src/modules/module_08900.c +++ b/src/modules/module_08900.c @@ -439,6 +439,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_09000.c b/src/modules/module_09000.c index 58b4b8096..7a459baaf 100644 --- a/src/modules/module_09000.c +++ b/src/modules/module_09000.c @@ -218,6 +218,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_09100.c b/src/modules/module_09100.c index c2797fc32..7b47a6676 100644 --- a/src/modules/module_09100.c +++ b/src/modules/module_09100.c @@ -242,6 +242,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_09200.c b/src/modules/module_09200.c index fa0890d94..c56010732 100644 --- a/src/modules/module_09200.c +++ b/src/modules/module_09200.c @@ -264,6 +264,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_09300.c b/src/modules/module_09300.c index 074baa132..3799bad20 100644 --- a/src/modules/module_09300.c +++ b/src/modules/module_09300.c @@ -392,6 +392,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_09400.c b/src/modules/module_09400.c index dee430e53..dc4e85b06 100644 --- a/src/modules/module_09400.c +++ b/src/modules/module_09400.c @@ -304,6 +304,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_09500.c b/src/modules/module_09500.c index 1c9630241..7ccfe1c92 100644 --- a/src/modules/module_09500.c +++ b/src/modules/module_09500.c @@ -308,6 +308,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_09600.c b/src/modules/module_09600.c index b47290eb1..fed9f4cc1 100644 --- a/src/modules/module_09600.c +++ b/src/modules/module_09600.c @@ -343,6 +343,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_09700.c b/src/modules/module_09700.c index 509592dbe..2beaface6 100644 --- a/src/modules/module_09700.c +++ b/src/modules/module_09700.c @@ -264,6 +264,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_09710.c b/src/modules/module_09710.c index efb2b3af4..cf73afc82 100644 --- a/src/modules/module_09710.c +++ b/src/modules/module_09710.c @@ -283,6 +283,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_09720.c b/src/modules/module_09720.c index 04df135a6..c05218921 100644 --- a/src/modules/module_09720.c +++ b/src/modules/module_09720.c @@ -282,6 +282,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_09800.c b/src/modules/module_09800.c index 39ac7749c..d9e428808 100644 --- a/src/modules/module_09800.c +++ b/src/modules/module_09800.c @@ -282,6 +282,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_09810.c b/src/modules/module_09810.c index c254007c2..7a44c30ba 100644 --- a/src/modules/module_09810.c +++ b/src/modules/module_09810.c @@ -289,6 +289,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_09820.c b/src/modules/module_09820.c index 65acc53a3..fed419d76 100644 --- a/src/modules/module_09820.c +++ b/src/modules/module_09820.c @@ -287,6 +287,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_09900.c b/src/modules/module_09900.c index 3e1d3960a..263a5cb80 100644 --- a/src/modules/module_09900.c +++ b/src/modules/module_09900.c @@ -158,6 +158,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_10000.c b/src/modules/module_10000.c index 352e060e1..8d0dc366c 100644 --- a/src/modules/module_10000.c +++ b/src/modules/module_10000.c @@ -264,6 +264,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_10100.c b/src/modules/module_10100.c index 0959d44f8..9b4c0c8a8 100644 --- a/src/modules/module_10100.c +++ b/src/modules/module_10100.c @@ -197,6 +197,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_10200.c b/src/modules/module_10200.c index 9b1347ef2..3e6b7445f 100644 --- a/src/modules/module_10200.c +++ b/src/modules/module_10200.c @@ -223,6 +223,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_10300.c b/src/modules/module_10300.c index 5ae85a782..cb8cbb3c9 100644 --- a/src/modules/module_10300.c +++ b/src/modules/module_10300.c @@ -225,6 +225,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_10400.c b/src/modules/module_10400.c index eb18ced64..75b099724 100644 --- a/src/modules/module_10400.c +++ b/src/modules/module_10400.c @@ -357,6 +357,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_10410.c b/src/modules/module_10410.c index 7bb0b7cc8..3fa43ce7d 100644 --- a/src/modules/module_10410.c +++ b/src/modules/module_10410.c @@ -377,6 +377,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_10420.c b/src/modules/module_10420.c index eaa14f375..325b5239e 100644 --- a/src/modules/module_10420.c +++ b/src/modules/module_10420.c @@ -378,6 +378,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_10500.c b/src/modules/module_10500.c index 63c90dd91..860ad77b5 100644 --- a/src/modules/module_10500.c +++ b/src/modules/module_10500.c @@ -483,6 +483,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_10600.c b/src/modules/module_10600.c index 34856f669..6fe23566c 100644 --- a/src/modules/module_10600.c +++ b/src/modules/module_10600.c @@ -331,6 +331,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_10700.c b/src/modules/module_10700.c index aeb6eae3f..9e7b03b81 100644 --- a/src/modules/module_10700.c +++ b/src/modules/module_10700.c @@ -364,6 +364,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_10800.c b/src/modules/module_10800.c index 968f68f35..840d81e95 100644 --- a/src/modules/module_10800.c +++ b/src/modules/module_10800.c @@ -224,6 +224,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_10900.c b/src/modules/module_10900.c index 9682203b4..00087a62c 100644 --- a/src/modules/module_10900.c +++ b/src/modules/module_10900.c @@ -255,6 +255,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_11000.c b/src/modules/module_11000.c index 32c07d747..3f1e12d04 100644 --- a/src/modules/module_11000.c +++ b/src/modules/module_11000.c @@ -195,6 +195,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_11100.c b/src/modules/module_11100.c index 95cd73021..8e98c1cfb 100644 --- a/src/modules/module_11100.c +++ b/src/modules/module_11100.c @@ -218,6 +218,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_11200.c b/src/modules/module_11200.c index 4319c0b3f..bc494d88b 100644 --- a/src/modules/module_11200.c +++ b/src/modules/module_11200.c @@ -182,6 +182,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_11300.c b/src/modules/module_11300.c index 858e0fde0..f3a1945f1 100644 --- a/src/modules/module_11300.c +++ b/src/modules/module_11300.c @@ -307,6 +307,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_11400.c b/src/modules/module_11400.c index e66fdbb93..0baf2d433 100644 --- a/src/modules/module_11400.c +++ b/src/modules/module_11400.c @@ -486,6 +486,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_11500.c b/src/modules/module_11500.c index d39acd85f..6d4b3453f 100644 --- a/src/modules/module_11500.c +++ b/src/modules/module_11500.c @@ -156,6 +156,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_11600.c b/src/modules/module_11600.c index 8b6ed2363..12bd4bb81 100644 --- a/src/modules/module_11600.c +++ b/src/modules/module_11600.c @@ -707,6 +707,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_11700.c b/src/modules/module_11700.c index 708077d3d..38105da7f 100644 --- a/src/modules/module_11700.c +++ b/src/modules/module_11700.c @@ -173,6 +173,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_11750.c b/src/modules/module_11750.c index 0f592f95d..c1cefdcde 100644 --- a/src/modules/module_11750.c +++ b/src/modules/module_11750.c @@ -197,6 +197,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_11760.c b/src/modules/module_11760.c index a1b0b64aa..9f0bf39e9 100644 --- a/src/modules/module_11760.c +++ b/src/modules/module_11760.c @@ -197,6 +197,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_11800.c b/src/modules/module_11800.c index 0c029b7cc..30c837067 100644 --- a/src/modules/module_11800.c +++ b/src/modules/module_11800.c @@ -197,6 +197,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_11850.c b/src/modules/module_11850.c index 4347298aa..a68af6734 100644 --- a/src/modules/module_11850.c +++ b/src/modules/module_11850.c @@ -221,6 +221,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_11860.c b/src/modules/module_11860.c index 21f1b1012..e64ec7128 100644 --- a/src/modules/module_11860.c +++ b/src/modules/module_11860.c @@ -221,6 +221,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_11900.c b/src/modules/module_11900.c index 313d1530e..e97a8d220 100644 --- a/src/modules/module_11900.c +++ b/src/modules/module_11900.c @@ -233,6 +233,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_12000.c b/src/modules/module_12000.c index 47f8a2923..0c47fda34 100644 --- a/src/modules/module_12000.c +++ b/src/modules/module_12000.c @@ -238,6 +238,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_12001.c b/src/modules/module_12001.c index 0d8a6cda2..0e277d44d 100644 --- a/src/modules/module_12001.c +++ b/src/modules/module_12001.c @@ -211,6 +211,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_12100.c b/src/modules/module_12100.c index 8d1e38047..c4b90fb63 100644 --- a/src/modules/module_12100.c +++ b/src/modules/module_12100.c @@ -255,6 +255,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_12200.c b/src/modules/module_12200.c index 5c5a3fd5c..979500a15 100644 --- a/src/modules/module_12200.c +++ b/src/modules/module_12200.c @@ -236,6 +236,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_12300.c b/src/modules/module_12300.c index 96ae44815..535f72cf2 100644 --- a/src/modules/module_12300.c +++ b/src/modules/module_12300.c @@ -243,6 +243,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_12400.c b/src/modules/module_12400.c index db2705a6b..c024fd835 100644 --- a/src/modules/module_12400.c +++ b/src/modules/module_12400.c @@ -242,6 +242,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_12500.c b/src/modules/module_12500.c index 5eb36f8a8..0390de089 100644 --- a/src/modules/module_12500.c +++ b/src/modules/module_12500.c @@ -243,6 +243,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_12600.c b/src/modules/module_12600.c index aa7288a1c..a5548c9d2 100644 --- a/src/modules/module_12600.c +++ b/src/modules/module_12600.c @@ -264,6 +264,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_12700.c b/src/modules/module_12700.c index fbd6d3d36..15dfbfdd6 100644 --- a/src/modules/module_12700.c +++ b/src/modules/module_12700.c @@ -206,6 +206,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_12800.c b/src/modules/module_12800.c index 9157fa8ec..ef6ae6f0f 100644 --- a/src/modules/module_12800.c +++ b/src/modules/module_12800.c @@ -254,6 +254,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_12900.c b/src/modules/module_12900.c index cd663f2d8..6821c1b7a 100644 --- a/src/modules/module_12900.c +++ b/src/modules/module_12900.c @@ -259,6 +259,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13000.c b/src/modules/module_13000.c index 83ad1427a..78cb7ca63 100644 --- a/src/modules/module_13000.c +++ b/src/modules/module_13000.c @@ -293,6 +293,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13100.c b/src/modules/module_13100.c index 5e26492b2..aaad85098 100644 --- a/src/modules/module_13100.c +++ b/src/modules/module_13100.c @@ -300,6 +300,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13200.c b/src/modules/module_13200.c index f4140390d..825b552de 100644 --- a/src/modules/module_13200.c +++ b/src/modules/module_13200.c @@ -235,6 +235,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13300.c b/src/modules/module_13300.c index bd0304c85..2667bd632 100644 --- a/src/modules/module_13300.c +++ b/src/modules/module_13300.c @@ -157,6 +157,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13400.c b/src/modules/module_13400.c index 2a758e450..1d8c4f4ab 100644 --- a/src/modules/module_13400.c +++ b/src/modules/module_13400.c @@ -697,6 +697,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13500.c b/src/modules/module_13500.c index 982267491..b59a9c906 100644 --- a/src/modules/module_13500.c +++ b/src/modules/module_13500.c @@ -250,6 +250,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13600.c b/src/modules/module_13600.c index 3d932754e..60528e366 100644 --- a/src/modules/module_13600.c +++ b/src/modules/module_13600.c @@ -442,6 +442,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13711.c b/src/modules/module_13711.c index 306712862..1948988ed 100644 --- a/src/modules/module_13711.c +++ b/src/modules/module_13711.c @@ -321,6 +321,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13712.c b/src/modules/module_13712.c index 8b5382d32..4ac231ce5 100644 --- a/src/modules/module_13712.c +++ b/src/modules/module_13712.c @@ -321,6 +321,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13713.c b/src/modules/module_13713.c index 97b52e2f8..91d69a767 100644 --- a/src/modules/module_13713.c +++ b/src/modules/module_13713.c @@ -321,6 +321,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13721.c b/src/modules/module_13721.c index 781ae2061..99fcc128d 100644 --- a/src/modules/module_13721.c +++ b/src/modules/module_13721.c @@ -322,6 +322,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13722.c b/src/modules/module_13722.c index 251cdf171..17dd5c082 100644 --- a/src/modules/module_13722.c +++ b/src/modules/module_13722.c @@ -322,6 +322,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13723.c b/src/modules/module_13723.c index 2d35ae03c..25bdbe5eb 100644 --- a/src/modules/module_13723.c +++ b/src/modules/module_13723.c @@ -322,6 +322,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13731.c b/src/modules/module_13731.c index df2f54507..a0062491b 100644 --- a/src/modules/module_13731.c +++ b/src/modules/module_13731.c @@ -321,6 +321,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13732.c b/src/modules/module_13732.c index 8892da953..bb6c45321 100644 --- a/src/modules/module_13732.c +++ b/src/modules/module_13732.c @@ -321,6 +321,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13733.c b/src/modules/module_13733.c index 3b944faba..b5be933eb 100644 --- a/src/modules/module_13733.c +++ b/src/modules/module_13733.c @@ -321,6 +321,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13741.c b/src/modules/module_13741.c index 5725e9825..bec68bcf5 100644 --- a/src/modules/module_13741.c +++ b/src/modules/module_13741.c @@ -322,6 +322,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13742.c b/src/modules/module_13742.c index ac79da8ff..27d585271 100644 --- a/src/modules/module_13742.c +++ b/src/modules/module_13742.c @@ -322,6 +322,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13743.c b/src/modules/module_13743.c index 63846577f..77f9f2d69 100644 --- a/src/modules/module_13743.c +++ b/src/modules/module_13743.c @@ -322,6 +322,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13751.c b/src/modules/module_13751.c index 934619b07..007ef20c6 100644 --- a/src/modules/module_13751.c +++ b/src/modules/module_13751.c @@ -321,6 +321,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13752.c b/src/modules/module_13752.c index cdc566a59..70395556c 100644 --- a/src/modules/module_13752.c +++ b/src/modules/module_13752.c @@ -321,6 +321,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13753.c b/src/modules/module_13753.c index 3b5a198c6..bac3bb312 100644 --- a/src/modules/module_13753.c +++ b/src/modules/module_13753.c @@ -321,6 +321,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13761.c b/src/modules/module_13761.c index 01697bd1b..c7845c394 100644 --- a/src/modules/module_13761.c +++ b/src/modules/module_13761.c @@ -322,6 +322,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13762.c b/src/modules/module_13762.c index 6bca8ab4f..2cca29da7 100644 --- a/src/modules/module_13762.c +++ b/src/modules/module_13762.c @@ -322,6 +322,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13763.c b/src/modules/module_13763.c index 94296cd85..5f3b4a37e 100644 --- a/src/modules/module_13763.c +++ b/src/modules/module_13763.c @@ -322,6 +322,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13771.c b/src/modules/module_13771.c index 73ab4696f..9339bc87d 100644 --- a/src/modules/module_13771.c +++ b/src/modules/module_13771.c @@ -325,6 +325,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13772.c b/src/modules/module_13772.c index 14af6dc9e..b72a010bf 100644 --- a/src/modules/module_13772.c +++ b/src/modules/module_13772.c @@ -325,6 +325,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13773.c b/src/modules/module_13773.c index d620cd97c..7026e47ae 100644 --- a/src/modules/module_13773.c +++ b/src/modules/module_13773.c @@ -342,6 +342,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13800.c b/src/modules/module_13800.c index 996b46999..1b51f6511 100644 --- a/src/modules/module_13800.c +++ b/src/modules/module_13800.c @@ -214,6 +214,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_13900.c b/src/modules/module_13900.c index ba1966ba9..12bebd7e0 100644 --- a/src/modules/module_13900.c +++ b/src/modules/module_13900.c @@ -184,6 +184,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_14000.c b/src/modules/module_14000.c index ed4cb330c..240c9f10f 100644 --- a/src/modules/module_14000.c +++ b/src/modules/module_14000.c @@ -247,6 +247,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_14100.c b/src/modules/module_14100.c index 7d4f0895c..2d21cac0c 100644 --- a/src/modules/module_14100.c +++ b/src/modules/module_14100.c @@ -258,6 +258,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_14400.c b/src/modules/module_14400.c index 09725509c..784e3e30b 100644 --- a/src/modules/module_14400.c +++ b/src/modules/module_14400.c @@ -205,6 +205,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_14600.c b/src/modules/module_14600.c index 236bcc17f..550a665a1 100644 --- a/src/modules/module_14600.c +++ b/src/modules/module_14600.c @@ -634,6 +634,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = module_outfile_check_disable; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = module_potfile_disable; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_14700.c b/src/modules/module_14700.c index f04742e9a..4ac72076f 100644 --- a/src/modules/module_14700.c +++ b/src/modules/module_14700.c @@ -385,6 +385,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_14800.c b/src/modules/module_14800.c index b8980d395..172930a16 100644 --- a/src/modules/module_14800.c +++ b/src/modules/module_14800.c @@ -421,6 +421,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_14900.c b/src/modules/module_14900.c index 2be7fba26..c9584b7a2 100644 --- a/src/modules/module_14900.c +++ b/src/modules/module_14900.c @@ -168,6 +168,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_15000.c b/src/modules/module_15000.c index 642050c89..8a4e20f19 100644 --- a/src/modules/module_15000.c +++ b/src/modules/module_15000.c @@ -272,6 +272,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_15100.c b/src/modules/module_15100.c index 6fd6cefa6..43bb78c88 100644 --- a/src/modules/module_15100.c +++ b/src/modules/module_15100.c @@ -363,6 +363,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_15200.c b/src/modules/module_15200.c index eabb75a6e..8e9839948 100644 --- a/src/modules/module_15200.c +++ b/src/modules/module_15200.c @@ -212,6 +212,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_15300.c b/src/modules/module_15300.c index 824506e4e..71fe58ebc 100644 --- a/src/modules/module_15300.c +++ b/src/modules/module_15300.c @@ -427,6 +427,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_15400.c b/src/modules/module_15400.c index 0d540b4f6..59cb411ec 100644 --- a/src/modules/module_15400.c +++ b/src/modules/module_15400.c @@ -254,6 +254,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_15500.c b/src/modules/module_15500.c index 8c9ac9afe..c0b2ee266 100644 --- a/src/modules/module_15500.c +++ b/src/modules/module_15500.c @@ -325,6 +325,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_15600.c b/src/modules/module_15600.c index bedb16523..48beeb8d3 100644 --- a/src/modules/module_15600.c +++ b/src/modules/module_15600.c @@ -313,6 +313,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_15700.c b/src/modules/module_15700.c index 9d42cd8b1..753e2995d 100644 --- a/src/modules/module_15700.c +++ b/src/modules/module_15700.c @@ -515,6 +515,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_15900.c b/src/modules/module_15900.c index 0a852fd58..10ab07809 100644 --- a/src/modules/module_15900.c +++ b/src/modules/module_15900.c @@ -437,6 +437,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_16000.c b/src/modules/module_16000.c index f427fae1b..551c4ed13 100644 --- a/src/modules/module_16000.c +++ b/src/modules/module_16000.c @@ -166,6 +166,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_16100.c b/src/modules/module_16100.c index c3c18ed70..6d25458d2 100644 --- a/src/modules/module_16100.c +++ b/src/modules/module_16100.c @@ -238,6 +238,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_16200.c b/src/modules/module_16200.c index c471885d3..827a2d1d4 100644 --- a/src/modules/module_16200.c +++ b/src/modules/module_16200.c @@ -289,6 +289,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_16300.c b/src/modules/module_16300.c index 5080ab835..63080290d 100644 --- a/src/modules/module_16300.c +++ b/src/modules/module_16300.c @@ -313,6 +313,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_16400.c b/src/modules/module_16400.c index 7097120ca..af951a30e 100644 --- a/src/modules/module_16400.c +++ b/src/modules/module_16400.c @@ -163,6 +163,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_16500.c b/src/modules/module_16500.c index 5dfc2954b..96fe5a329 100644 --- a/src/modules/module_16500.c +++ b/src/modules/module_16500.c @@ -382,6 +382,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_16600.c b/src/modules/module_16600.c index da29861c1..909f6c1e9 100644 --- a/src/modules/module_16600.c +++ b/src/modules/module_16600.c @@ -234,6 +234,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_16700.c b/src/modules/module_16700.c index eda30f781..829d32db1 100644 --- a/src/modules/module_16700.c +++ b/src/modules/module_16700.c @@ -291,6 +291,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_16800.c b/src/modules/module_16800.c index afedb8e0c..92ee27486 100644 --- a/src/modules/module_16800.c +++ b/src/modules/module_16800.c @@ -28,7 +28,7 @@ static const u64 OPTS_TYPE = OPTS_TYPE_PT_GENERATE_LE | OPTS_TYPE_COPY_TMPS; static const u32 SALT_TYPE = SALT_TYPE_EMBEDDED; static const char *ST_PASS = "hashcat!"; -static const char *ST_HASH = "2582a8281bf9d4308d6f5731d0e61c61*4604ba734d4e*89acf0e761f4*ed487162465a774bfba60eb603a39f3a"; +static const char *ST_HASH = "2582a8281bf9d4308d6f5731d0e61c61:4604ba734d4e:89acf0e761f4:ed487162465a774bfba60eb603a39f3a"; u32 module_attack_exec (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra) { return ATTACK_EXEC; } u32 module_dgst_pos0 (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra) { return DGST_POS0; } @@ -47,6 +47,7 @@ const char *module_st_pass (MAYBE_UNUSED const hashconfig_t *hashconfig, static const u32 ROUNDS_WPA_PBKDF2 = 4096; +/* typedef struct wpa_pmkid { u32 pmkid[4]; @@ -67,6 +68,24 @@ typedef struct wpa_pbkdf2_tmp u32 out[10]; } wpa_pbkdf2_tmp_t; +*/ + +#define DGST_ELEM 4 + +typedef struct digest +{ + u32 digest_buf[DGST_ELEM]; + +} digest_t; + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wunused-parameter" + +#include "emu_general.h" +#include "inc_vendor.h" +#include "m16800-pure.cl" + +#pragma GCC diagnostic pop const char *module_benchmark_mask (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra) { @@ -103,11 +122,154 @@ u32 module_pw_max (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED con return pw_max; } +int module_hash_decode_potfile (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED void *digest_buf, MAYBE_UNUSED salt_t *salt, MAYBE_UNUSED void *esalt_buf, MAYBE_UNUSED void *hook_salt_buf, MAYBE_UNUSED hashinfo_t *hash_info, const char *line_buf, MAYBE_UNUSED const int line_len, MAYBE_UNUSED void *tmps) +{ + wpa_pmkid_t *wpa_pmkid = (wpa_pmkid_t *) esalt_buf; + + wpa_pbkdf2_tmp_t *wpa_pbkdf2_tmp = (wpa_pbkdf2_tmp_t *) tmps; + + // here we have in line_hash_buf: PMK*essid:password + // but we don't care about the password + + // PMK + + wpa_pbkdf2_tmp->out[0] = hex_to_u32 ((const u8 *) line_buf + 0); + wpa_pbkdf2_tmp->out[1] = hex_to_u32 ((const u8 *) line_buf + 8); + wpa_pbkdf2_tmp->out[2] = hex_to_u32 ((const u8 *) line_buf + 16); + wpa_pbkdf2_tmp->out[3] = hex_to_u32 ((const u8 *) line_buf + 24); + wpa_pbkdf2_tmp->out[4] = hex_to_u32 ((const u8 *) line_buf + 32); + wpa_pbkdf2_tmp->out[5] = hex_to_u32 ((const u8 *) line_buf + 40); + wpa_pbkdf2_tmp->out[6] = hex_to_u32 ((const u8 *) line_buf + 48); + wpa_pbkdf2_tmp->out[7] = hex_to_u32 ((const u8 *) line_buf + 56); + + // essid + + char *sep_pos = strrchr (line_buf, ':'); + + if (sep_pos == NULL) return (PARSER_SEPARATOR_UNMATCHED); + + if ((line_buf + 64) != sep_pos) return (PARSER_HASH_LENGTH); + + char *essid_pos = sep_pos + 1; + + const int essid_len = strlen (essid_pos); + + if (essid_len & 1) return (PARSER_SALT_VALUE); + + if (essid_len > 64) return (PARSER_SALT_VALUE); + + wpa_pmkid->essid_len = hex_decode ((const u8 *) essid_pos, essid_len, (u8 *) wpa_pmkid->essid_buf); + + return PARSER_OK; +} + +int module_hash_encode_potfile (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const void *digest_buf, MAYBE_UNUSED const salt_t *salt, MAYBE_UNUSED const void *esalt_buf, MAYBE_UNUSED const void *hook_salt_buf, MAYBE_UNUSED const hashinfo_t *hash_info, char *line_buf, MAYBE_UNUSED const int line_size, MAYBE_UNUSED const void *tmps) +{ + const wpa_pmkid_t *wpa_pmkid = (const wpa_pmkid_t *) esalt_buf; + + const wpa_pbkdf2_tmp_t *wpa_pbkdf2_tmp = (const wpa_pbkdf2_tmp_t *) tmps; + + char tmp_buf[128]; + + const int tmp_len = hex_encode ((const u8 *) wpa_pmkid->essid_buf, wpa_pmkid->essid_len, (u8 *) tmp_buf); + + tmp_buf[tmp_len] = 0; + + const int line_len = snprintf (line_buf, line_size, "%08x%08x%08x%08x%08x%08x%08x%08x:%s", + wpa_pbkdf2_tmp->out[0], + wpa_pbkdf2_tmp->out[1], + wpa_pbkdf2_tmp->out[2], + wpa_pbkdf2_tmp->out[3], + wpa_pbkdf2_tmp->out[4], + wpa_pbkdf2_tmp->out[5], + wpa_pbkdf2_tmp->out[6], + wpa_pbkdf2_tmp->out[7], + tmp_buf); + + return line_len; +} + u32 module_deep_comp_kernel (MAYBE_UNUSED const hashes_t *hashes, MAYBE_UNUSED const u32 salt_pos, MAYBE_UNUSED const u32 digest_pos) { return KERN_RUN_AUX1; } +bool module_potfile_custom_check (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const hash_t *db, MAYBE_UNUSED const hash_t *entry_hash, MAYBE_UNUSED const void *entry_tmps) +{ + const wpa_pmkid_t *wpa_pmkid_entry = (const wpa_pmkid_t *) entry_hash->esalt; + const wpa_pmkid_t *wpa_pmkid_db = (const wpa_pmkid_t *) db->esalt; + + if (wpa_pmkid_db->essid_len != wpa_pmkid_entry->essid_len) return false; + + if (strcmp ((const char *) wpa_pmkid_db->essid_buf, (const char *) wpa_pmkid_entry->essid_buf)) return false; + + const wpa_pbkdf2_tmp_t *wpa_pbkdf2_tmp = (const wpa_pbkdf2_tmp_t *) entry_tmps; + + wpa_pbkdf2_tmp_t tmps; + + tmps.out[0] = byte_swap_32 (wpa_pbkdf2_tmp->out[0]); + tmps.out[1] = byte_swap_32 (wpa_pbkdf2_tmp->out[1]); + tmps.out[2] = byte_swap_32 (wpa_pbkdf2_tmp->out[2]); + tmps.out[3] = byte_swap_32 (wpa_pbkdf2_tmp->out[3]); + tmps.out[4] = byte_swap_32 (wpa_pbkdf2_tmp->out[4]); + tmps.out[5] = byte_swap_32 (wpa_pbkdf2_tmp->out[5]); + tmps.out[6] = byte_swap_32 (wpa_pbkdf2_tmp->out[6]); + tmps.out[7] = byte_swap_32 (wpa_pbkdf2_tmp->out[7]); + + plain_t plains_buf; + + u32 hashes_shown = 0; + + u32 d_return_buf = 0; + + void (*m16800_aux) (KERN_ATTR_TMPS_ESALT (wpa_pbkdf2_tmp_t, wpa_pmkid_t)); + + m16800_aux = m16800_aux1; + + m16800_aux + ( + NULL, // pws + NULL, // rules_buf + NULL, // combs_buf + NULL, // bfs_buf + &tmps, // tmps + NULL, // hooks + NULL, // bitmaps_buf_s1_a + NULL, // bitmaps_buf_s1_b + NULL, // bitmaps_buf_s1_c + NULL, // bitmaps_buf_s1_d + NULL, // bitmaps_buf_s2_a + NULL, // bitmaps_buf_s2_b + NULL, // bitmaps_buf_s2_c + NULL, // bitmaps_buf_s2_d + &plains_buf, // plains_buf + db->digest, // digests_buf + &hashes_shown, // hashes_shown + db->salt, // salt_bufs + db->esalt, // esalt_bufs + &d_return_buf, // d_return_buf + NULL, // d_extra0_buf + NULL, // d_extra1_buf + NULL, // d_extra2_buf + NULL, // d_extra3_buf + 0, // bitmap_mask + 0, // bitmap_shift1 + 0, // bitmap_shift2 + 0, // salt_pos + 0, // loop_pos + 0, // loop_cnt + 0, // il_cnt + 1, // digests_cnt + 0, // digests_offset + 0, // combs_mode + 1 // gid_max + ); + + const bool r = (d_return_buf == 0) ? false : true; + + return r; +} + int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED void *digest_buf, MAYBE_UNUSED salt_t *salt, MAYBE_UNUSED void *esalt_buf, MAYBE_UNUSED void *hook_salt_buf, MAYBE_UNUSED hashinfo_t *hash_info, const char *line_buf, MAYBE_UNUSED const int line_len) { u32 *digest = (u32 *) digest_buf; @@ -118,25 +280,25 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE token.token_cnt = 4; - token.sep[0] = '*'; + token.sep[0] = ':'; token.len_min[0] = 32; token.len_max[0] = 32; token.attr[0] = TOKEN_ATTR_VERIFY_LENGTH | TOKEN_ATTR_VERIFY_HEX; - token.sep[1] = '*'; + token.sep[1] = ':'; token.len_min[1] = 12; token.len_max[1] = 12; token.attr[1] = TOKEN_ATTR_VERIFY_LENGTH | TOKEN_ATTR_VERIFY_HEX; - token.sep[2] = '*'; + token.sep[2] = ':'; token.len_min[2] = 12; token.len_max[2] = 12; token.attr[2] = TOKEN_ATTR_VERIFY_LENGTH | TOKEN_ATTR_VERIFY_HEX; - token.sep[3] = '*'; + token.sep[3] = ':'; token.len_min[3] = 0; token.len_max[3] = 64; token.attr[3] = TOKEN_ATTR_VERIFY_LENGTH @@ -235,32 +397,50 @@ int module_hash_encode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE { const wpa_pmkid_t *wpa_pmkid = (const wpa_pmkid_t *) esalt_buf; - char tmp_buf[128]; + int line_len = 0; - exec_hexify ((const u8*) wpa_pmkid->essid_buf, wpa_pmkid->essid_len, (u8 *) tmp_buf); - - const int tmp_len = wpa_pmkid->essid_len * 2; - - tmp_buf[tmp_len] = 0; - - const int line_len = snprintf (line_buf, line_size, "%08x%08x%08x%08x*%02x%02x%02x%02x%02x%02x*%02x%02x%02x%02x%02x%02x*%s", - byte_swap_32 (wpa_pmkid->pmkid[0]), - byte_swap_32 (wpa_pmkid->pmkid[1]), - byte_swap_32 (wpa_pmkid->pmkid[2]), - byte_swap_32 (wpa_pmkid->pmkid[3]), - wpa_pmkid->orig_mac_ap[0], - wpa_pmkid->orig_mac_ap[1], - wpa_pmkid->orig_mac_ap[2], - wpa_pmkid->orig_mac_ap[3], - wpa_pmkid->orig_mac_ap[4], - wpa_pmkid->orig_mac_ap[5], - wpa_pmkid->orig_mac_sta[0], - wpa_pmkid->orig_mac_sta[1], - wpa_pmkid->orig_mac_sta[2], - wpa_pmkid->orig_mac_sta[3], - wpa_pmkid->orig_mac_sta[4], - wpa_pmkid->orig_mac_sta[5], - tmp_buf); + if (wpa_pmkid->essid_len) + { + char tmp_buf[128]; + + exec_hexify ((const u8*) wpa_pmkid->essid_buf, wpa_pmkid->essid_len, (u8 *) tmp_buf); + + int tmp_len = wpa_pmkid->essid_len * 2; + + tmp_buf[tmp_len] = 0; + + line_len = snprintf (line_buf, line_size, "%02x%02x%02x%02x%02x%02x:%02x%02x%02x%02x%02x%02x:%s", + wpa_pmkid->orig_mac_ap[0], + wpa_pmkid->orig_mac_ap[1], + wpa_pmkid->orig_mac_ap[2], + wpa_pmkid->orig_mac_ap[3], + wpa_pmkid->orig_mac_ap[4], + wpa_pmkid->orig_mac_ap[5], + wpa_pmkid->orig_mac_sta[0], + wpa_pmkid->orig_mac_sta[1], + wpa_pmkid->orig_mac_sta[2], + wpa_pmkid->orig_mac_sta[3], + wpa_pmkid->orig_mac_sta[4], + wpa_pmkid->orig_mac_sta[5], + tmp_buf); + } + else + { + line_len = snprintf (line_buf, line_size, "%02x%02x%02x%02x%02x%02x:%02x%02x%02x%02x%02x%02x:%s", + wpa_pmkid->orig_mac_ap[0], + wpa_pmkid->orig_mac_ap[1], + wpa_pmkid->orig_mac_ap[2], + wpa_pmkid->orig_mac_ap[3], + wpa_pmkid->orig_mac_ap[4], + wpa_pmkid->orig_mac_ap[5], + wpa_pmkid->orig_mac_sta[0], + wpa_pmkid->orig_mac_sta[1], + wpa_pmkid->orig_mac_sta[2], + wpa_pmkid->orig_mac_sta[3], + wpa_pmkid->orig_mac_sta[4], + wpa_pmkid->orig_mac_sta[5], + (const u8 *) wpa_pmkid->essid_buf); + } return line_len; } @@ -290,11 +470,11 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_hash_binary_count = MODULE_DEFAULT; module_ctx->module_hash_binary_parse = MODULE_DEFAULT; module_ctx->module_hash_binary_save = MODULE_DEFAULT; - module_ctx->module_hash_decode_potfile = MODULE_DEFAULT; + module_ctx->module_hash_decode_potfile = module_hash_decode_potfile; module_ctx->module_hash_decode_zero_hash = MODULE_DEFAULT; module_ctx->module_hash_decode = module_hash_decode; module_ctx->module_hash_encode_status = MODULE_DEFAULT; - module_ctx->module_hash_encode_potfile = MODULE_DEFAULT; + module_ctx->module_hash_encode_potfile = module_hash_encode_potfile; module_ctx->module_hash_encode = module_hash_encode; module_ctx->module_hash_init_selftest = MODULE_DEFAULT; module_ctx->module_hash_mode = MODULE_DEFAULT; @@ -319,6 +499,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = module_potfile_custom_check; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_16801.c b/src/modules/module_16801.c index d3ebb89d0..feee9fb2f 100644 --- a/src/modules/module_16801.c +++ b/src/modules/module_16801.c @@ -25,10 +25,11 @@ static const u32 OPTI_TYPE = OPTI_TYPE_ZERO_BYTE static const u64 OPTS_TYPE = OPTS_TYPE_PT_GENERATE_LE | OPTS_TYPE_AUX1 | OPTS_TYPE_DEEP_COMP_KERNEL + | OPTS_TYPE_POTFILE_NOPASS | OPTS_TYPE_COPY_TMPS; static const u32 SALT_TYPE = SALT_TYPE_EMBEDDED; static const char *ST_PASS = "5b13d4babb3714ccc62c9f71864bc984efd6a55f237c7a87fc2151e1ca658a9d"; -static const char *ST_HASH = "2582a8281bf9d4308d6f5731d0e61c61*4604ba734d4e*89acf0e761f4"; +static const char *ST_HASH = "2582a8281bf9d4308d6f5731d0e61c61:4604ba734d4e:89acf0e761f4"; u32 module_attack_exec (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra) { return ATTACK_EXEC; } u32 module_dgst_pos0 (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra) { return DGST_POS0; } @@ -47,6 +48,7 @@ const char *module_st_pass (MAYBE_UNUSED const hashconfig_t *hashconfig, static const u32 ROUNDS_WPA_PMK = 1; +/* typedef struct wpa_pmkid { u32 pmkid[4]; @@ -63,6 +65,24 @@ typedef struct wpa_pmk_tmp u32 out[8]; } wpa_pmk_tmp_t; +*/ + +#define DGST_ELEM 4 + +typedef struct digest +{ + u32 digest_buf[DGST_ELEM]; + +} digest_t; + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wunused-parameter" + +#include "emu_general.h" +#include "inc_vendor.h" +#include "m16801-pure.cl" + +#pragma GCC diagnostic pop const char *module_benchmark_mask (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra) { @@ -99,11 +119,154 @@ u32 module_pw_max (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED con return pw_max; } +int module_hash_decode_potfile (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED void *digest_buf, MAYBE_UNUSED salt_t *salt, MAYBE_UNUSED void *esalt_buf, MAYBE_UNUSED void *hook_salt_buf, MAYBE_UNUSED hashinfo_t *hash_info, const char *line_buf, MAYBE_UNUSED const int line_len, MAYBE_UNUSED void *tmps) +{ + wpa_pmkid_t *wpa_pmkid = (wpa_pmkid_t *) esalt_buf; + + wpa_pmk_tmp_t *wpa_pmk_tmp = (wpa_pmk_tmp_t *) tmps; + + // here we have in line_hash_buf: PMK*essid:password + // but we don't care about the password + + // PMK + + wpa_pmk_tmp->out[0] = hex_to_u32 ((const u8 *) line_buf + 0); + wpa_pmk_tmp->out[1] = hex_to_u32 ((const u8 *) line_buf + 8); + wpa_pmk_tmp->out[2] = hex_to_u32 ((const u8 *) line_buf + 16); + wpa_pmk_tmp->out[3] = hex_to_u32 ((const u8 *) line_buf + 24); + wpa_pmk_tmp->out[4] = hex_to_u32 ((const u8 *) line_buf + 32); + wpa_pmk_tmp->out[5] = hex_to_u32 ((const u8 *) line_buf + 40); + wpa_pmk_tmp->out[6] = hex_to_u32 ((const u8 *) line_buf + 48); + wpa_pmk_tmp->out[7] = hex_to_u32 ((const u8 *) line_buf + 56); + + // essid + + char *sep_pos = strrchr (line_buf, ':'); + + if (sep_pos == NULL) return (PARSER_SEPARATOR_UNMATCHED); + + if ((line_buf + 64) != sep_pos) return (PARSER_HASH_LENGTH); + + char *essid_pos = sep_pos + 1; + + const int essid_len = strlen (essid_pos); + + if (essid_len & 1) return (PARSER_SALT_VALUE); + + if (essid_len > 64) return (PARSER_SALT_VALUE); + + wpa_pmkid->essid_len = hex_decode ((const u8 *) essid_pos, essid_len, (u8 *) wpa_pmkid->essid_buf); + + return PARSER_OK; +} + +int module_hash_encode_potfile (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const void *digest_buf, MAYBE_UNUSED const salt_t *salt, MAYBE_UNUSED const void *esalt_buf, MAYBE_UNUSED const void *hook_salt_buf, MAYBE_UNUSED const hashinfo_t *hash_info, char *line_buf, MAYBE_UNUSED const int line_size, MAYBE_UNUSED const void *tmps) +{ + const wpa_pmkid_t *wpa_pmkid = (const wpa_pmkid_t *) esalt_buf; + + const wpa_pmk_tmp_t *wpa_pmk_tmp = (const wpa_pmk_tmp_t *) tmps; + + char tmp_buf[128]; + + const int tmp_len = hex_encode ((const u8 *) wpa_pmkid->essid_buf, wpa_pmkid->essid_len, (u8 *) tmp_buf); + + tmp_buf[tmp_len] = 0; + + const int line_len = snprintf (line_buf, line_size, "%08x%08x%08x%08x%08x%08x%08x%08x:%s", + wpa_pmk_tmp->out[0], + wpa_pmk_tmp->out[1], + wpa_pmk_tmp->out[2], + wpa_pmk_tmp->out[3], + wpa_pmk_tmp->out[4], + wpa_pmk_tmp->out[5], + wpa_pmk_tmp->out[6], + wpa_pmk_tmp->out[7], + tmp_buf); + + return line_len; +} + u32 module_deep_comp_kernel (MAYBE_UNUSED const hashes_t *hashes, MAYBE_UNUSED const u32 salt_pos, MAYBE_UNUSED const u32 digest_pos) { return KERN_RUN_AUX1; } +bool module_potfile_custom_check (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const hash_t *db, MAYBE_UNUSED const hash_t *entry_hash, MAYBE_UNUSED const void *entry_tmps) +{ + const wpa_pmkid_t *wpa_pmkid_entry = (const wpa_pmkid_t *) entry_hash->esalt; + const wpa_pmkid_t *wpa_pmkid_db = (const wpa_pmkid_t *) db->esalt; + + if (wpa_pmkid_db->essid_len != wpa_pmkid_entry->essid_len) return false; + + if (strcmp ((const char *) wpa_pmkid_db->essid_buf, (const char *) wpa_pmkid_entry->essid_buf)) return false; + + const wpa_pmk_tmp_t *wpa_pmk_tmp = (const wpa_pmk_tmp_t *) entry_tmps; + + wpa_pmk_tmp_t tmps; + + tmps.out[0] = byte_swap_32 (wpa_pmk_tmp->out[0]); + tmps.out[1] = byte_swap_32 (wpa_pmk_tmp->out[1]); + tmps.out[2] = byte_swap_32 (wpa_pmk_tmp->out[2]); + tmps.out[3] = byte_swap_32 (wpa_pmk_tmp->out[3]); + tmps.out[4] = byte_swap_32 (wpa_pmk_tmp->out[4]); + tmps.out[5] = byte_swap_32 (wpa_pmk_tmp->out[5]); + tmps.out[6] = byte_swap_32 (wpa_pmk_tmp->out[6]); + tmps.out[7] = byte_swap_32 (wpa_pmk_tmp->out[7]); + + plain_t plains_buf; + + u32 hashes_shown = 0; + + u32 d_return_buf = 0; + + void (*m16801_aux) (KERN_ATTR_TMPS_ESALT (wpa_pmk_tmp_t, wpa_pmkid_t)); + + m16801_aux = m16801_aux1; + + m16801_aux + ( + NULL, // pws + NULL, // rules_buf + NULL, // combs_buf + NULL, // bfs_buf + &tmps, // tmps + NULL, // hooks + NULL, // bitmaps_buf_s1_a + NULL, // bitmaps_buf_s1_b + NULL, // bitmaps_buf_s1_c + NULL, // bitmaps_buf_s1_d + NULL, // bitmaps_buf_s2_a + NULL, // bitmaps_buf_s2_b + NULL, // bitmaps_buf_s2_c + NULL, // bitmaps_buf_s2_d + &plains_buf, // plains_buf + db->digest, // digests_buf + &hashes_shown, // hashes_shown + db->salt, // salt_bufs + db->esalt, // esalt_bufs + &d_return_buf, // d_return_buf + NULL, // d_extra0_buf + NULL, // d_extra1_buf + NULL, // d_extra2_buf + NULL, // d_extra3_buf + 0, // bitmap_mask + 0, // bitmap_shift1 + 0, // bitmap_shift2 + 0, // salt_pos + 0, // loop_pos + 0, // loop_cnt + 0, // il_cnt + 1, // digests_cnt + 0, // digests_offset + 0, // combs_mode + 1 // gid_max + ); + + const bool r = (d_return_buf == 0) ? false : true; + + return r; +} + int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED void *digest_buf, MAYBE_UNUSED salt_t *salt, MAYBE_UNUSED void *esalt_buf, MAYBE_UNUSED void *hook_salt_buf, MAYBE_UNUSED hashinfo_t *hash_info, const char *line_buf, MAYBE_UNUSED const int line_len) { u32 *digest = (u32 *) digest_buf; @@ -116,19 +279,19 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE token.token_cnt = 3; - token.sep[0] = '*'; + token.sep[0] = ':'; token.len_min[0] = 32; token.len_max[0] = 32; token.attr[0] = TOKEN_ATTR_VERIFY_LENGTH | TOKEN_ATTR_VERIFY_HEX; - token.sep[1] = '*'; + token.sep[1] = ':'; token.len_min[1] = 12; token.len_max[1] = 12; token.attr[1] = TOKEN_ATTR_VERIFY_LENGTH | TOKEN_ATTR_VERIFY_HEX; - token.sep[2] = '*'; + token.sep[2] = ':'; token.len_min[2] = 12; token.len_max[2] = 12; token.attr[2] = TOKEN_ATTR_VERIFY_LENGTH @@ -142,25 +305,25 @@ int module_hash_decode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE token.token_cnt = 4; - token.sep[0] = '*'; + token.sep[0] = ':'; token.len_min[0] = 32; token.len_max[0] = 32; token.attr[0] = TOKEN_ATTR_VERIFY_LENGTH | TOKEN_ATTR_VERIFY_HEX; - token.sep[1] = '*'; + token.sep[1] = ':'; token.len_min[1] = 12; token.len_max[1] = 12; token.attr[1] = TOKEN_ATTR_VERIFY_LENGTH | TOKEN_ATTR_VERIFY_HEX; - token.sep[2] = '*'; + token.sep[2] = ':'; token.len_min[2] = 12; token.len_max[2] = 12; token.attr[2] = TOKEN_ATTR_VERIFY_LENGTH | TOKEN_ATTR_VERIFY_HEX; - token.sep[3] = '*'; + token.sep[3] = ':'; token.len_min[3] = 0; token.len_max[3] = 64; token.attr[3] = TOKEN_ATTR_VERIFY_LENGTH @@ -278,11 +441,7 @@ int module_hash_encode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE tmp_buf[tmp_len] = 0; - line_len = snprintf (line_buf, line_size, "%08x%08x%08x%08x*%02x%02x%02x%02x%02x%02x*%02x%02x%02x%02x%02x%02x*%s", - byte_swap_32 (wpa_pmkid->pmkid[0]), - byte_swap_32 (wpa_pmkid->pmkid[1]), - byte_swap_32 (wpa_pmkid->pmkid[2]), - byte_swap_32 (wpa_pmkid->pmkid[3]), + line_len = snprintf (line_buf, line_size, "%02x%02x%02x%02x%02x%02x:%02x%02x%02x%02x%02x%02x:%s", wpa_pmkid->orig_mac_ap[0], wpa_pmkid->orig_mac_ap[1], wpa_pmkid->orig_mac_ap[2], @@ -299,11 +458,7 @@ int module_hash_encode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE } else { - line_len = snprintf (line_buf, line_size, "%08x%08x%08x%08x*%02x%02x%02x%02x%02x%02x*%02x%02x%02x%02x%02x%02x", - byte_swap_32 (wpa_pmkid->pmkid[0]), - byte_swap_32 (wpa_pmkid->pmkid[1]), - byte_swap_32 (wpa_pmkid->pmkid[2]), - byte_swap_32 (wpa_pmkid->pmkid[3]), + line_len = snprintf (line_buf, line_size, "%02x%02x%02x%02x%02x%02x:%02x%02x%02x%02x%02x%02x:%s", wpa_pmkid->orig_mac_ap[0], wpa_pmkid->orig_mac_ap[1], wpa_pmkid->orig_mac_ap[2], @@ -315,7 +470,8 @@ int module_hash_encode (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSE wpa_pmkid->orig_mac_sta[2], wpa_pmkid->orig_mac_sta[3], wpa_pmkid->orig_mac_sta[4], - wpa_pmkid->orig_mac_sta[5]); + wpa_pmkid->orig_mac_sta[5], + (const u8 *) wpa_pmkid->essid_buf); } return line_len; @@ -346,11 +502,11 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_hash_binary_count = MODULE_DEFAULT; module_ctx->module_hash_binary_parse = MODULE_DEFAULT; module_ctx->module_hash_binary_save = MODULE_DEFAULT; - module_ctx->module_hash_decode_potfile = MODULE_DEFAULT; + module_ctx->module_hash_decode_potfile = module_hash_decode_potfile; module_ctx->module_hash_decode_zero_hash = MODULE_DEFAULT; module_ctx->module_hash_decode = module_hash_decode; module_ctx->module_hash_encode_status = MODULE_DEFAULT; - module_ctx->module_hash_encode_potfile = MODULE_DEFAULT; + module_ctx->module_hash_encode_potfile = module_hash_encode_potfile; module_ctx->module_hash_encode = module_hash_encode; module_ctx->module_hash_init_selftest = MODULE_DEFAULT; module_ctx->module_hash_mode = MODULE_DEFAULT; @@ -375,6 +531,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = module_potfile_custom_check; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_16900.c b/src/modules/module_16900.c index 604094031..e936485ed 100644 --- a/src/modules/module_16900.c +++ b/src/modules/module_16900.c @@ -325,6 +325,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_17300.c b/src/modules/module_17300.c index 47ca15f17..b085e5790 100644 --- a/src/modules/module_17300.c +++ b/src/modules/module_17300.c @@ -158,6 +158,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_17400.c b/src/modules/module_17400.c index 21ab1a139..b8c5ee355 100644 --- a/src/modules/module_17400.c +++ b/src/modules/module_17400.c @@ -149,6 +149,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_17500.c b/src/modules/module_17500.c index 75ba032ad..ee91c47d3 100644 --- a/src/modules/module_17500.c +++ b/src/modules/module_17500.c @@ -155,6 +155,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_17600.c b/src/modules/module_17600.c index 78787bfb6..932efe7c4 100644 --- a/src/modules/module_17600.c +++ b/src/modules/module_17600.c @@ -161,6 +161,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_17700.c b/src/modules/module_17700.c index 80840eec6..3b4012928 100644 --- a/src/modules/module_17700.c +++ b/src/modules/module_17700.c @@ -158,6 +158,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_17800.c b/src/modules/module_17800.c index 9ac7cb322..c5a3a85dc 100644 --- a/src/modules/module_17800.c +++ b/src/modules/module_17800.c @@ -149,6 +149,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_17900.c b/src/modules/module_17900.c index f29523ad4..8f27103d0 100644 --- a/src/modules/module_17900.c +++ b/src/modules/module_17900.c @@ -155,6 +155,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_18000.c b/src/modules/module_18000.c index 2ef480d03..2d8520d94 100644 --- a/src/modules/module_18000.c +++ b/src/modules/module_18000.c @@ -161,6 +161,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_18100.c b/src/modules/module_18100.c index ba3c3162a..2d4c5041e 100644 --- a/src/modules/module_18100.c +++ b/src/modules/module_18100.c @@ -187,6 +187,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_18200.c b/src/modules/module_18200.c index 2a55bbc52..779c55e2f 100644 --- a/src/modules/module_18200.c +++ b/src/modules/module_18200.c @@ -264,6 +264,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = module_pwdump_column; diff --git a/src/modules/module_18300.c b/src/modules/module_18300.c index 2e268288d..8602329d1 100644 --- a/src/modules/module_18300.c +++ b/src/modules/module_18300.c @@ -299,6 +299,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_18400.c b/src/modules/module_18400.c index 60d865d5c..bb1c7daf1 100644 --- a/src/modules/module_18400.c +++ b/src/modules/module_18400.c @@ -331,6 +331,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_18500.c b/src/modules/module_18500.c index a87d845e9..861435cd1 100644 --- a/src/modules/module_18500.c +++ b/src/modules/module_18500.c @@ -187,6 +187,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_18600.c b/src/modules/module_18600.c index c09eeedfe..62ee9cdb9 100644 --- a/src/modules/module_18600.c +++ b/src/modules/module_18600.c @@ -370,6 +370,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_18700.c b/src/modules/module_18700.c index ae1ba0393..29d9a05b3 100644 --- a/src/modules/module_18700.c +++ b/src/modules/module_18700.c @@ -135,6 +135,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_18800.c b/src/modules/module_18800.c index e16741b12..716f01c12 100644 --- a/src/modules/module_18800.c +++ b/src/modules/module_18800.c @@ -252,6 +252,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_18900.c b/src/modules/module_18900.c index f8057366d..5a813fdf0 100644 --- a/src/modules/module_18900.c +++ b/src/modules/module_18900.c @@ -350,6 +350,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_19000.c b/src/modules/module_19000.c index 575d7aceb..572ebe560 100644 --- a/src/modules/module_19000.c +++ b/src/modules/module_19000.c @@ -229,6 +229,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_19100.c b/src/modules/module_19100.c index 964d5b921..26b7b942f 100644 --- a/src/modules/module_19100.c +++ b/src/modules/module_19100.c @@ -268,6 +268,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_19200.c b/src/modules/module_19200.c index 0e3225243..8522f5f6e 100644 --- a/src/modules/module_19200.c +++ b/src/modules/module_19200.c @@ -270,6 +270,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_19300.c b/src/modules/module_19300.c index b85027207..7ce665392 100644 --- a/src/modules/module_19300.c +++ b/src/modules/module_19300.c @@ -240,6 +240,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_19500.c b/src/modules/module_19500.c index 98c15d512..f26628b9e 100644 --- a/src/modules/module_19500.c +++ b/src/modules/module_19500.c @@ -249,6 +249,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_19600.c b/src/modules/module_19600.c index 181b078ec..232a3bc4b 100644 --- a/src/modules/module_19600.c +++ b/src/modules/module_19600.c @@ -333,6 +333,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_19700.c b/src/modules/module_19700.c index d7789a82b..fabdefbdd 100644 --- a/src/modules/module_19700.c +++ b/src/modules/module_19700.c @@ -333,6 +333,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/modules/module_99999.c b/src/modules/module_99999.c index 59b73ceb3..5cbb35dfe 100644 --- a/src/modules/module_99999.c +++ b/src/modules/module_99999.c @@ -166,6 +166,7 @@ void module_init (module_ctx_t *module_ctx) module_ctx->module_opts_type = module_opts_type; module_ctx->module_outfile_check_disable = MODULE_DEFAULT; module_ctx->module_outfile_check_nocomp = MODULE_DEFAULT; + module_ctx->module_potfile_custom_check = MODULE_DEFAULT; module_ctx->module_potfile_disable = MODULE_DEFAULT; module_ctx->module_potfile_keep_all_hashes = MODULE_DEFAULT; module_ctx->module_pwdump_column = MODULE_DEFAULT; diff --git a/src/outfile_check.c b/src/outfile_check.c index 54bd7fde0..d0a4b55e0 100644 --- a/src/outfile_check.c +++ b/src/outfile_check.c @@ -234,7 +234,11 @@ static int outfile_remove (hashcat_ctx_t *hashcat_ctx) if (module_ctx->module_hash_decode_potfile != MODULE_DEFAULT) { - parser_status = module_ctx->module_hash_decode_potfile (hashconfig, hash_buf.digest, hash_buf.salt, hash_buf.esalt, hash_buf.hook_salt, hash_buf.hash_info, line_buf, line_len - 1); + void *tmps = hcmalloc (hashconfig->tmp_size); + + parser_status = module_ctx->module_hash_decode_potfile (hashconfig, hash_buf.digest, hash_buf.salt, hash_buf.esalt, hash_buf.hook_salt, hash_buf.hash_info, line_buf, line_len - 1, tmps); + + hcfree (tmps); } else { diff --git a/src/potfile.c b/src/potfile.c index ac67078ed..ac1ede734 100644 --- a/src/potfile.c +++ b/src/potfile.c @@ -262,7 +262,7 @@ void potfile_write_append (hashcat_ctx_t *hashcat_ctx, const char *out_buf, cons tmp_len += 1; } - if (1) + if ((hashconfig->opts_type & OPTS_TYPE_POTFILE_NOPASS) == 0) { const bool always_ascii = (hashconfig->opts_type & OPTS_TYPE_PT_ALWAYS_ASCII) ? true : false; @@ -514,6 +514,13 @@ int potfile_remove_parse (hashcat_ctx_t *hashcat_ctx) if (rc == -1) return -1; + void *tmps = NULL; + + if (hashconfig->tmp_size > 0) + { + tmps = hcmalloc (hashconfig->tmp_size); + } + char *line_buf = (char *) hcmalloc (HCBUFSIZ_LARGE); while (!feof (potfile_ctx->fp)) @@ -555,9 +562,30 @@ int potfile_remove_parse (hashcat_ctx_t *hashcat_ctx) if (module_ctx->module_hash_decode_potfile != MODULE_DEFAULT) { - const int parser_status = module_ctx->module_hash_decode_potfile (hashconfig, hash_buf.digest, hash_buf.salt, hash_buf.esalt, hash_buf.hook_salt, hash_buf.hash_info, line_hash_buf, line_hash_len); + if (module_ctx->module_potfile_custom_check != MODULE_DEFAULT) + { + const int parser_status = module_ctx->module_hash_decode_potfile (hashconfig, hash_buf.digest, hash_buf.salt, hash_buf.esalt, hash_buf.hook_salt, hash_buf.hash_info, line_hash_buf, line_hash_len, tmps); - if (parser_status != PARSER_OK) continue; + if (parser_status != PARSER_OK) continue; + + for (u32 hashes_pos = 0; hashes_pos < hashes_cnt; hashes_pos++) + { + const bool cracked = module_ctx->module_potfile_custom_check (hashconfig, &hashes_buf[hashes_pos], &hash_buf, tmps); + + if (cracked == true) + { + potfile_update_hash (hashcat_ctx, &hashes_buf[hashes_pos], line_pw_buf, (u32) line_pw_len); + } + } + + continue; + } + else + { + // should be rejected? + //const int parser_status = module_ctx->module_hash_decode_potfile (hashconfig, hash_buf.digest, hash_buf.salt, hash_buf.esalt, hash_buf.hook_salt, hash_buf.hash_info, line_hash_buf, line_hash_len, NULL); + //if (parser_status != PARSER_OK) continue; + } } else { @@ -571,15 +599,20 @@ int potfile_remove_parse (hashcat_ctx_t *hashcat_ctx) continue; } - } - hash_t *found = (hash_t *) hc_bsearch_r (&hash_buf, hashes_buf, hashes_cnt, sizeof (hash_t), sort_by_hash, (void *) hashconfig); + hash_t *found = (hash_t *) hc_bsearch_r (&hash_buf, hashes_buf, hashes_cnt, sizeof (hash_t), sort_by_hash, (void *) hashconfig); - potfile_update_hash (hashcat_ctx, found, line_pw_buf, (u32) line_pw_len); + potfile_update_hash (hashcat_ctx, found, line_pw_buf, (u32) line_pw_len); + } } hcfree (line_buf); + if (hashconfig->tmp_size > 0) + { + hcfree (tmps); + } + potfile_read_close (hashcat_ctx); if (hashconfig->potfile_keep_all_hashes == true)