mirror of
https://github.com/hashcat/hashcat.git
synced 2024-12-22 14:48:12 +00:00
Kernels: Refactored standard kernel declaration to use a structure holding u32/u64 attributes to reduce the number of attributes
This commit is contained in:
parent
2344cb0365
commit
668d2179cd
@ -26,85 +26,63 @@
|
||||
* - P19: Type of the esalt_bufs structure with additional data, or void.
|
||||
*/
|
||||
|
||||
|
||||
#if defined IS_CUDA || defined IS_HIP
|
||||
#define KERN_ATTR(p2,p4,p5,p6,p19) \
|
||||
MAYBE_UNUSED GLOBAL_AS pw_t *pws, \
|
||||
MAYBE_UNUSED p2 const kernel_rule_t *g_rules_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS const pw_t *combs_buf, \
|
||||
MAYBE_UNUSED p4, \
|
||||
MAYBE_UNUSED GLOBAL_AS p5 *tmps, \
|
||||
MAYBE_UNUSED GLOBAL_AS p6 *hooks, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_a, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_b, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_c, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_d, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_a, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_b, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_c, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_d, \
|
||||
MAYBE_UNUSED GLOBAL_AS plain_t *plains_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS const digest_t *digests_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS u32 *hashes_shown, \
|
||||
MAYBE_UNUSED GLOBAL_AS const salt_t *salt_bufs, \
|
||||
MAYBE_UNUSED GLOBAL_AS const p19 *esalt_bufs, \
|
||||
MAYBE_UNUSED GLOBAL_AS u32 *d_return_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra0_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra1_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra2_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra3_buf, \
|
||||
MAYBE_UNUSED const u32 bitmap_mask, \
|
||||
MAYBE_UNUSED const u32 bitmap_shift1, \
|
||||
MAYBE_UNUSED const u32 bitmap_shift2, \
|
||||
MAYBE_UNUSED const u32 salt_pos_host, \
|
||||
MAYBE_UNUSED const u32 loop_pos, \
|
||||
MAYBE_UNUSED const u32 loop_cnt, \
|
||||
MAYBE_UNUSED const u32 il_cnt, \
|
||||
MAYBE_UNUSED const u32 digests_cnt, \
|
||||
MAYBE_UNUSED const u32 digests_offset_host, \
|
||||
MAYBE_UNUSED const u32 combs_mode, \
|
||||
MAYBE_UNUSED const u32 salt_repeat, \
|
||||
MAYBE_UNUSED const u64 pws_pos, \
|
||||
MAYBE_UNUSED const u64 gid_max
|
||||
#define KERN_ATTR(p2,p4,p5,p6,p19) \
|
||||
MAYBE_UNUSED GLOBAL_AS pw_t *pws, \
|
||||
MAYBE_UNUSED p2 const kernel_rule_t *g_rules_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS const pw_t *combs_buf, \
|
||||
MAYBE_UNUSED p4, \
|
||||
MAYBE_UNUSED GLOBAL_AS p5 *tmps, \
|
||||
MAYBE_UNUSED GLOBAL_AS p6 *hooks, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_a, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_b, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_c, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_d, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_a, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_b, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_c, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_d, \
|
||||
MAYBE_UNUSED GLOBAL_AS plain_t *plains_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS const digest_t *digests_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS u32 *hashes_shown, \
|
||||
MAYBE_UNUSED GLOBAL_AS const salt_t *salt_bufs, \
|
||||
MAYBE_UNUSED GLOBAL_AS const p19 *esalt_bufs, \
|
||||
MAYBE_UNUSED GLOBAL_AS u32 *d_return_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra0_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra1_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra2_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra3_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS const kernel_param_t *kernel_param
|
||||
#else
|
||||
#define KERN_ATTR(p2,p4,p5,p6,p19) \
|
||||
MAYBE_UNUSED GLOBAL_AS pw_t *pws, \
|
||||
MAYBE_UNUSED p2 const kernel_rule_t *rules_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS const pw_t *combs_buf, \
|
||||
MAYBE_UNUSED p4, \
|
||||
MAYBE_UNUSED GLOBAL_AS p5 *tmps, \
|
||||
MAYBE_UNUSED GLOBAL_AS p6 *hooks, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_a, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_b, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_c, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_d, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_a, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_b, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_c, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_d, \
|
||||
MAYBE_UNUSED GLOBAL_AS plain_t *plains_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS const digest_t *digests_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS u32 *hashes_shown, \
|
||||
MAYBE_UNUSED GLOBAL_AS const salt_t *salt_bufs, \
|
||||
MAYBE_UNUSED GLOBAL_AS const p19 *esalt_bufs, \
|
||||
MAYBE_UNUSED GLOBAL_AS u32 *d_return_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra0_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra1_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra2_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra3_buf, \
|
||||
MAYBE_UNUSED const u32 bitmap_mask, \
|
||||
MAYBE_UNUSED const u32 bitmap_shift1, \
|
||||
MAYBE_UNUSED const u32 bitmap_shift2, \
|
||||
MAYBE_UNUSED const u32 salt_pos_host, \
|
||||
MAYBE_UNUSED const u32 loop_pos, \
|
||||
MAYBE_UNUSED const u32 loop_cnt, \
|
||||
MAYBE_UNUSED const u32 il_cnt, \
|
||||
MAYBE_UNUSED const u32 digests_cnt, \
|
||||
MAYBE_UNUSED const u32 digests_offset_host, \
|
||||
MAYBE_UNUSED const u32 combs_mode, \
|
||||
MAYBE_UNUSED const u32 salt_repeat, \
|
||||
MAYBE_UNUSED const u64 pws_pos, \
|
||||
MAYBE_UNUSED const u64 gid_max
|
||||
#define KERN_ATTR(p2,p4,p5,p6,p19) \
|
||||
MAYBE_UNUSED GLOBAL_AS pw_t *pws, \
|
||||
MAYBE_UNUSED p2 const kernel_rule_t *rules_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS const pw_t *combs_buf, \
|
||||
MAYBE_UNUSED p4, \
|
||||
MAYBE_UNUSED GLOBAL_AS p5 *tmps, \
|
||||
MAYBE_UNUSED GLOBAL_AS p6 *hooks, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_a, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_b, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_c, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s1_d, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_a, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_b, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_c, \
|
||||
MAYBE_UNUSED GLOBAL_AS const u32 *bitmaps_buf_s2_d, \
|
||||
MAYBE_UNUSED GLOBAL_AS plain_t *plains_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS const digest_t *digests_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS u32 *hashes_shown, \
|
||||
MAYBE_UNUSED GLOBAL_AS const salt_t *salt_bufs, \
|
||||
MAYBE_UNUSED GLOBAL_AS const p19 *esalt_bufs, \
|
||||
MAYBE_UNUSED GLOBAL_AS u32 *d_return_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra0_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra1_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra2_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS void *d_extra3_buf, \
|
||||
MAYBE_UNUSED GLOBAL_AS const kernel_param_t *kernel_param
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Shortcut macros for usage in the actual kernels
|
||||
*
|
||||
|
@ -14,19 +14,19 @@ if (check (digest_tp,
|
||||
bitmaps_buf_s2_b,
|
||||
bitmaps_buf_s2_c,
|
||||
bitmaps_buf_s2_d,
|
||||
bitmap_mask,
|
||||
bitmap_shift1,
|
||||
bitmap_shift2))
|
||||
BITMAP_MASK,
|
||||
BITMAP_SHIFT1,
|
||||
BITMAP_SHIFT2))
|
||||
{
|
||||
int digest_pos = find_hash (digest_tp, digests_cnt, &digests_buf[DIGESTS_OFFSET]);
|
||||
int digest_pos = find_hash (digest_tp, DIGESTS_CNT, &digests_buf[DIGESTS_OFFSET_HOST]);
|
||||
|
||||
if (digest_pos != -1)
|
||||
{
|
||||
const u32 final_hash_pos = DIGESTS_OFFSET + digest_pos;
|
||||
const u32 final_hash_pos = DIGESTS_OFFSET_HOST + digest_pos;
|
||||
|
||||
if (hc_atomic_inc (&hashes_shown[final_hash_pos]) == 0)
|
||||
{
|
||||
mark_hash (plains_buf, d_return_buf, SALT_POS, digests_cnt, digest_pos, final_hash_pos, gid, il_pos, 0, 0);
|
||||
mark_hash (plains_buf, d_return_buf, SALT_POS_HOST, DIGESTS_CNT, digest_pos, final_hash_pos, gid, il_pos, 0, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -14,21 +14,21 @@ if (check (digest_tp,
|
||||
bitmaps_buf_s2_b,
|
||||
bitmaps_buf_s2_c,
|
||||
bitmaps_buf_s2_d,
|
||||
bitmap_mask,
|
||||
bitmap_shift1,
|
||||
bitmap_shift2))
|
||||
BITMAP_MASK,
|
||||
BITMAP_SHIFT1,
|
||||
BITMAP_SHIFT2))
|
||||
{
|
||||
int digest_pos = find_hash (digest_tp, digests_cnt, &digests_buf[DIGESTS_OFFSET]);
|
||||
int digest_pos = find_hash (digest_tp, DIGESTS_CNT, &digests_buf[DIGESTS_OFFSET_HOST]);
|
||||
|
||||
if (digest_pos != -1)
|
||||
{
|
||||
if ((il_pos + slice) < il_cnt)
|
||||
if ((il_pos + slice) < IL_CNT)
|
||||
{
|
||||
const u32 final_hash_pos = DIGESTS_OFFSET + digest_pos;
|
||||
const u32 final_hash_pos = DIGESTS_OFFSET_HOST + digest_pos;
|
||||
|
||||
if (hc_atomic_inc (&hashes_shown[final_hash_pos]) == 0)
|
||||
{
|
||||
mark_hash (plains_buf, d_return_buf, SALT_POS, digests_cnt, digest_pos, final_hash_pos, gid, il_pos + slice, 0, 0);
|
||||
mark_hash (plains_buf, d_return_buf, SALT_POS_HOST, DIGESTS_CNT, digest_pos, final_hash_pos, gid, il_pos + slice, 0, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -3,10 +3,10 @@ if ((r0 == search[0])
|
||||
&& (r2 == search[2])
|
||||
&& (r3 == search[3]))
|
||||
{
|
||||
const u32 final_hash_pos = DIGESTS_OFFSET + 0;
|
||||
const u32 final_hash_pos = DIGESTS_OFFSET_HOST + 0;
|
||||
|
||||
if (hc_atomic_inc (&hashes_shown[final_hash_pos]) == 0)
|
||||
{
|
||||
mark_hash (plains_buf, d_return_buf, SALT_POS, digests_cnt, 0, final_hash_pos, gid, il_pos, 0, 0);
|
||||
mark_hash (plains_buf, d_return_buf, SALT_POS_HOST, DIGESTS_CNT, 0, final_hash_pos, gid, il_pos, 0, 0);
|
||||
}
|
||||
}
|
||||
|
@ -1,10 +1,10 @@
|
||||
|
||||
if ((il_pos + slice) < il_cnt)
|
||||
if ((il_pos + slice) < IL_CNT)
|
||||
{
|
||||
const u32 final_hash_pos = DIGESTS_OFFSET + 0;
|
||||
const u32 final_hash_pos = DIGESTS_OFFSET_HOST + 0;
|
||||
|
||||
if (hc_atomic_inc (&hashes_shown[final_hash_pos]) == 0)
|
||||
{
|
||||
mark_hash (plains_buf, d_return_buf, SALT_POS, digests_cnt, 0, final_hash_pos, gid, il_pos + slice, 0, 0);
|
||||
mark_hash (plains_buf, d_return_buf, SALT_POS_HOST, DIGESTS_CNT, 0, final_hash_pos, gid, il_pos + slice, 0, 0);
|
||||
}
|
||||
}
|
||||
|
@ -7,11 +7,11 @@
|
||||
{ \
|
||||
if (((h0) == search[0]) && ((h1) == search[1]) && ((h2) == search[2]) && ((h3) == search[3])) \
|
||||
{ \
|
||||
const u32 final_hash_pos = DIGESTS_OFFSET + 0; \
|
||||
const u32 final_hash_pos = DIGESTS_OFFSET_HOST + 0; \
|
||||
\
|
||||
if (hc_atomic_inc (&hashes_shown[final_hash_pos]) == 0) \
|
||||
{ \
|
||||
mark_hash (plains_buf, d_return_buf, SALT_POS, digests_cnt, 0, final_hash_pos, gid, il_pos, 0, 0); \
|
||||
mark_hash (plains_buf, d_return_buf, SALT_POS_HOST, DIGESTS_CNT, 0, final_hash_pos, gid, il_pos, 0, 0); \
|
||||
} \
|
||||
} \
|
||||
}
|
||||
@ -23,19 +23,19 @@
|
||||
if (check (digest_tp0, \
|
||||
bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, \
|
||||
bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, \
|
||||
bitmap_mask, \
|
||||
bitmap_shift1, \
|
||||
bitmap_shift2)) \
|
||||
BITMAP_MASK, \
|
||||
BITMAP_SHIFT1, \
|
||||
BITMAP_SHIFT2)) \
|
||||
{ \
|
||||
int digest_pos = find_hash (digest_tp0, digests_cnt, &digests_buf[DIGESTS_OFFSET]); \
|
||||
int digest_pos = find_hash (digest_tp0, DIGESTS_CNT, &digests_buf[DIGESTS_OFFSET_HOST]); \
|
||||
\
|
||||
if (digest_pos != -1) \
|
||||
{ \
|
||||
const u32 final_hash_pos = DIGESTS_OFFSET + digest_pos; \
|
||||
const u32 final_hash_pos = DIGESTS_OFFSET_HOST + digest_pos; \
|
||||
\
|
||||
if (hc_atomic_inc (&hashes_shown[final_hash_pos]) == 0) \
|
||||
{ \
|
||||
mark_hash (plains_buf, d_return_buf, SALT_POS, digests_cnt, digest_pos, final_hash_pos, gid, il_pos, 0, 0); \
|
||||
mark_hash (plains_buf, d_return_buf, SALT_POS_HOST, DIGESTS_CNT, digest_pos, final_hash_pos, gid, il_pos, 0, 0); \
|
||||
} \
|
||||
} \
|
||||
} \
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -7,13 +7,33 @@
|
||||
#define _INC_TYPES_H
|
||||
|
||||
#if ATTACK_MODE == 9
|
||||
#define SALT_POS (pws_pos + gid)
|
||||
#define DIGESTS_CNT 1
|
||||
#define DIGESTS_OFFSET (pws_pos + gid)
|
||||
#define BITMAP_MASK kernel_param->bitmap_mask
|
||||
#define BITMAP_SHIFT1 kernel_param->bitmap_shift1
|
||||
#define BITMAP_SHIFT2 kernel_param->bitmap_shift2
|
||||
#define SALT_POS_HOST (pws_pos + gid)
|
||||
#define LOOP_POS kernel_param->loop_pos
|
||||
#define LOOP_CNT kernel_param->loop_cnt
|
||||
#define IL_CNT kernel_param->il_cnt
|
||||
#define DIGESTS_CNT 1
|
||||
#define DIGESTS_OFFSET_HOST (pws_pos + gid)
|
||||
#define COMBS_MODE kernel_param->combs_mode
|
||||
#define SALT_REPEAT kernel_param->salt_repeat
|
||||
#define PWS_POS kernel_param->pws_pos
|
||||
#define GID_MAX kernel_param->gid_max
|
||||
#else
|
||||
#define SALT_POS salt_pos_host
|
||||
#define DIGESTS_CNT digests_cnt_host
|
||||
#define DIGESTS_OFFSET digests_offset_host
|
||||
#define BITMAP_MASK kernel_param->bitmap_mask
|
||||
#define BITMAP_SHIFT1 kernel_param->bitmap_shift1
|
||||
#define BITMAP_SHIFT2 kernel_param->bitmap_shift2
|
||||
#define SALT_POS_HOST kernel_param->salt_pos_host
|
||||
#define LOOP_POS kernel_param->loop_pos
|
||||
#define LOOP_CNT kernel_param->loop_cnt
|
||||
#define IL_CNT kernel_param->il_cnt
|
||||
#define DIGESTS_CNT kernel_param->digests_cnt
|
||||
#define DIGESTS_OFFSET_HOST kernel_param->digests_offset_host
|
||||
#define COMBS_MODE kernel_param->combs_mode
|
||||
#define SALT_REPEAT kernel_param->salt_repeat
|
||||
#define PWS_POS kernel_param->pws_pos
|
||||
#define GID_MAX kernel_param->gid_max
|
||||
#endif
|
||||
|
||||
#ifdef IS_CUDA
|
||||
@ -1641,6 +1661,26 @@ typedef struct digest
|
||||
} digest_t;
|
||||
#endif
|
||||
|
||||
typedef struct kernel_param
|
||||
{
|
||||
// We can only move attributes into this struct which do not use special declarations like __global
|
||||
|
||||
u32 bitmap_mask; // 24
|
||||
u32 bitmap_shift1; // 25
|
||||
u32 bitmap_shift2; // 26
|
||||
u32 salt_pos_host; // 27
|
||||
u32 loop_pos; // 28
|
||||
u32 loop_cnt; // 29
|
||||
u32 il_cnt; // 30
|
||||
u32 digests_cnt; // 31
|
||||
u32 digests_offset_host; // 32
|
||||
u32 combs_mode; // 33
|
||||
u32 salt_repeat; // 34
|
||||
u64 pws_pos; // 35
|
||||
u64 gid_max; // 36
|
||||
|
||||
} kernel_param_t;
|
||||
|
||||
typedef struct salt
|
||||
{
|
||||
u32 salt_buf[64];
|
||||
|
@ -30,7 +30,7 @@ KERNEL_FQ void m00000_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -50,7 +50,7 @@ KERNEL_FQ void m00000_m04 (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -165,7 +165,7 @@ KERNEL_FQ void m00000_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -187,17 +187,17 @@ KERNEL_FQ void m00000_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00000_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -37,7 +37,7 @@ KERNEL_FQ void m00000_mxx (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -69,7 +69,7 @@ KERNEL_FQ void m00000_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -77,10 +77,10 @@ KERNEL_FQ void m00000_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -93,7 +93,7 @@ KERNEL_FQ void m00000_sxx (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -29,7 +29,7 @@ KERNEL_FQ void m00000_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -49,7 +49,7 @@ KERNEL_FQ void m00000_m04 (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -87,7 +87,7 @@ KERNEL_FQ void m00000_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -223,7 +223,7 @@ KERNEL_FQ void m00000_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -245,17 +245,17 @@ KERNEL_FQ void m00000_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -293,7 +293,7 @@ KERNEL_FQ void m00000_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00000_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -39,7 +39,7 @@ KERNEL_FQ void m00000_mxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
md5_ctx_t ctx = ctx0;
|
||||
|
||||
@ -65,7 +65,7 @@ KERNEL_FQ void m00000_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -73,10 +73,10 @@ KERNEL_FQ void m00000_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -93,7 +93,7 @@ KERNEL_FQ void m00000_sxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
md5_ctx_t ctx = ctx0;
|
||||
|
||||
|
@ -118,7 +118,7 @@ DECLSPEC void m00000m (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
u32 w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -290,20 +290,20 @@ DECLSPEC void m00000s (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* reverse
|
||||
*/
|
||||
|
||||
u32 a_rev = digests_buf[DIGESTS_OFFSET].digest_buf[0];
|
||||
u32 b_rev = digests_buf[DIGESTS_OFFSET].digest_buf[1];
|
||||
u32 c_rev = digests_buf[DIGESTS_OFFSET].digest_buf[2];
|
||||
u32 d_rev = digests_buf[DIGESTS_OFFSET].digest_buf[3];
|
||||
u32 a_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[0];
|
||||
u32 b_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[1];
|
||||
u32 c_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[2];
|
||||
u32 d_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[3];
|
||||
|
||||
MD5_STEP_REV (MD5_I_S, b_rev, c_rev, d_rev, a_rev, w[ 9], MD5C3f, MD5S33);
|
||||
MD5_STEP_REV (MD5_I_S, c_rev, d_rev, a_rev, b_rev, w[ 2], MD5C3e, MD5S32);
|
||||
@ -333,7 +333,7 @@ DECLSPEC void m00000s (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
u32 w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -437,7 +437,7 @@ KERNEL_FQ void m00000_m04 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -464,7 +464,7 @@ KERNEL_FQ void m00000_m04 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00000m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00000m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00000_m08 (KERN_ATTR_VECTOR ())
|
||||
@ -475,7 +475,7 @@ KERNEL_FQ void m00000_m08 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -502,7 +502,7 @@ KERNEL_FQ void m00000_m08 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00000m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00000m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00000_m16 (KERN_ATTR_VECTOR ())
|
||||
@ -513,7 +513,7 @@ KERNEL_FQ void m00000_m16 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -540,7 +540,7 @@ KERNEL_FQ void m00000_m16 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00000m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00000m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00000_s04 (KERN_ATTR_VECTOR ())
|
||||
@ -551,7 +551,7 @@ KERNEL_FQ void m00000_s04 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -578,7 +578,7 @@ KERNEL_FQ void m00000_s04 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00000s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00000s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00000_s08 (KERN_ATTR_VECTOR ())
|
||||
@ -589,7 +589,7 @@ KERNEL_FQ void m00000_s08 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -616,7 +616,7 @@ KERNEL_FQ void m00000_s08 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00000s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00000s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00000_s16 (KERN_ATTR_VECTOR ())
|
||||
@ -627,7 +627,7 @@ KERNEL_FQ void m00000_s16 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -654,5 +654,5 @@ KERNEL_FQ void m00000_s16 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00000s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00000s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00000_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -44,7 +44,7 @@ KERNEL_FQ void m00000_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -78,7 +78,7 @@ KERNEL_FQ void m00000_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -86,10 +86,10 @@ KERNEL_FQ void m00000_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -111,7 +111,7 @@ KERNEL_FQ void m00000_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -30,7 +30,7 @@ KERNEL_FQ void m00010_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -55,30 +55,30 @@ KERNEL_FQ void m00010_m04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -239,7 +239,7 @@ KERNEL_FQ void m00010_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -264,24 +264,24 @@ KERNEL_FQ void m00010_s04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -289,17 +289,17 @@ KERNEL_FQ void m00010_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00010_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -33,20 +33,20 @@ KERNEL_FQ void m00010_mxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -80,7 +80,7 @@ KERNEL_FQ void m00010_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -88,10 +88,10 @@ KERNEL_FQ void m00010_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -100,20 +100,20 @@ KERNEL_FQ void m00010_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -28,7 +28,7 @@ KERNEL_FQ void m00010_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -53,30 +53,30 @@ KERNEL_FQ void m00010_m04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -114,7 +114,7 @@ KERNEL_FQ void m00010_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -297,7 +297,7 @@ KERNEL_FQ void m00010_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -322,24 +322,24 @@ KERNEL_FQ void m00010_s04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -347,17 +347,17 @@ KERNEL_FQ void m00010_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -395,7 +395,7 @@ KERNEL_FQ void m00010_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,19 +23,19 @@ KERNEL_FQ void m00010_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
*/
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
md5_ctx_t ctx0;
|
||||
@ -48,7 +48,7 @@ KERNEL_FQ void m00010_mxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
md5_ctx_t ctx = ctx0;
|
||||
|
||||
@ -76,7 +76,7 @@ KERNEL_FQ void m00010_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -84,23 +84,23 @@ KERNEL_FQ void m00010_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* base
|
||||
*/
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
md5_ctx_t ctx0;
|
||||
@ -113,7 +113,7 @@ KERNEL_FQ void m00010_sxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
md5_ctx_t ctx = ctx0;
|
||||
|
||||
|
@ -49,24 +49,24 @@ DECLSPEC void m00010m (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
const u32 pw_salt_len = pw_len + salt_len;
|
||||
|
||||
@ -167,7 +167,7 @@ DECLSPEC void m00010m (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
u32 w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -339,20 +339,20 @@ DECLSPEC void m00010s (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* reverse
|
||||
*/
|
||||
|
||||
u32 a_rev = digests_buf[DIGESTS_OFFSET].digest_buf[0];
|
||||
u32 b_rev = digests_buf[DIGESTS_OFFSET].digest_buf[1];
|
||||
u32 c_rev = digests_buf[DIGESTS_OFFSET].digest_buf[2];
|
||||
u32 d_rev = digests_buf[DIGESTS_OFFSET].digest_buf[3];
|
||||
u32 a_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[0];
|
||||
u32 b_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[1];
|
||||
u32 c_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[2];
|
||||
u32 d_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[3];
|
||||
|
||||
MD5_STEP_REV (MD5_I_S, b_rev, c_rev, d_rev, a_rev, w[ 9], MD5C3f, MD5S33);
|
||||
MD5_STEP_REV (MD5_I_S, c_rev, d_rev, a_rev, b_rev, w[ 2], MD5C3e, MD5S32);
|
||||
@ -382,7 +382,7 @@ DECLSPEC void m00010s (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
u32 w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -486,7 +486,7 @@ KERNEL_FQ void m00010_m04 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -513,7 +513,7 @@ KERNEL_FQ void m00010_m04 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00010m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00010m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00010_m08 (KERN_ATTR_VECTOR ())
|
||||
@ -524,7 +524,7 @@ KERNEL_FQ void m00010_m08 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -551,7 +551,7 @@ KERNEL_FQ void m00010_m08 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00010m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00010m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00010_m16 (KERN_ATTR_VECTOR ())
|
||||
@ -562,7 +562,7 @@ KERNEL_FQ void m00010_m16 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -589,7 +589,7 @@ KERNEL_FQ void m00010_m16 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00010m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00010m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00010_s04 (KERN_ATTR_VECTOR ())
|
||||
@ -600,7 +600,7 @@ KERNEL_FQ void m00010_s04 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -627,7 +627,7 @@ KERNEL_FQ void m00010_s04 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00010s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00010s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00010_s08 (KERN_ATTR_VECTOR ())
|
||||
@ -638,7 +638,7 @@ KERNEL_FQ void m00010_s08 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -665,7 +665,7 @@ KERNEL_FQ void m00010_s08 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00010s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00010s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00010_s16 (KERN_ATTR_VECTOR ())
|
||||
@ -676,7 +676,7 @@ KERNEL_FQ void m00010_s16 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -703,5 +703,5 @@ KERNEL_FQ void m00010_s16 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00010s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00010s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00010_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -38,13 +38,13 @@ KERNEL_FQ void m00010_mxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
/**
|
||||
@ -53,7 +53,7 @@ KERNEL_FQ void m00010_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -89,7 +89,7 @@ KERNEL_FQ void m00010_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -97,10 +97,10 @@ KERNEL_FQ void m00010_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -116,13 +116,13 @@ KERNEL_FQ void m00010_sxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
/**
|
||||
@ -131,7 +131,7 @@ KERNEL_FQ void m00010_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -30,7 +30,7 @@ KERNEL_FQ void m00020_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -55,30 +55,30 @@ KERNEL_FQ void m00020_m04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -219,7 +219,7 @@ KERNEL_FQ void m00020_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -244,24 +244,24 @@ KERNEL_FQ void m00020_s04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -269,17 +269,17 @@ KERNEL_FQ void m00020_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00020_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -37,13 +37,13 @@ KERNEL_FQ void m00020_mxx (KERN_ATTR_RULES ())
|
||||
|
||||
md5_init (&ctx0);
|
||||
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -73,7 +73,7 @@ KERNEL_FQ void m00020_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -81,10 +81,10 @@ KERNEL_FQ void m00020_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -97,13 +97,13 @@ KERNEL_FQ void m00020_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
md5_init (&ctx0);
|
||||
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -28,7 +28,7 @@ KERNEL_FQ void m00020_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -53,30 +53,30 @@ KERNEL_FQ void m00020_m04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -114,7 +114,7 @@ KERNEL_FQ void m00020_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -275,7 +275,7 @@ KERNEL_FQ void m00020_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -300,24 +300,24 @@ KERNEL_FQ void m00020_s04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -325,17 +325,17 @@ KERNEL_FQ void m00020_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -373,7 +373,7 @@ KERNEL_FQ void m00020_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00020_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -33,7 +33,7 @@ KERNEL_FQ void m00020_mxx (KERN_ATTR_BASIC ())
|
||||
|
||||
md5_init (&ctx0);
|
||||
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
md5_update_global (&ctx0, pws[gid].i, pws[gid].pw_len);
|
||||
|
||||
@ -41,7 +41,7 @@ KERNEL_FQ void m00020_mxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
md5_ctx_t ctx = ctx0;
|
||||
|
||||
@ -67,7 +67,7 @@ KERNEL_FQ void m00020_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -75,10 +75,10 @@ KERNEL_FQ void m00020_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -89,7 +89,7 @@ KERNEL_FQ void m00020_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
md5_init (&ctx0);
|
||||
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
md5_update_global (&ctx0, pws[gid].i, pws[gid].pw_len);
|
||||
|
||||
@ -97,7 +97,7 @@ KERNEL_FQ void m00020_sxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
md5_ctx_t ctx = ctx0;
|
||||
|
||||
|
@ -32,24 +32,24 @@ DECLSPEC void m00020m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
const u32 pw_salt_len = pw_len + salt_len;
|
||||
|
||||
@ -59,7 +59,7 @@ DECLSPEC void m00020m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -204,10 +204,10 @@ DECLSPEC void m00020s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -219,24 +219,24 @@ DECLSPEC void m00020s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
const u32 pw_salt_len = pw_len + salt_len;
|
||||
|
||||
@ -246,7 +246,7 @@ DECLSPEC void m00020s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -387,7 +387,7 @@ KERNEL_FQ void m00020_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -423,7 +423,7 @@ KERNEL_FQ void m00020_m04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00020m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00020m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00020_m08 (KERN_ATTR_BASIC ())
|
||||
@ -434,7 +434,7 @@ KERNEL_FQ void m00020_m08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -470,7 +470,7 @@ KERNEL_FQ void m00020_m08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00020m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00020m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00020_m16 (KERN_ATTR_BASIC ())
|
||||
@ -481,7 +481,7 @@ KERNEL_FQ void m00020_m16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -517,7 +517,7 @@ KERNEL_FQ void m00020_m16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00020m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00020m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00020_s04 (KERN_ATTR_BASIC ())
|
||||
@ -528,7 +528,7 @@ KERNEL_FQ void m00020_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -564,7 +564,7 @@ KERNEL_FQ void m00020_s04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00020s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00020s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00020_s08 (KERN_ATTR_BASIC ())
|
||||
@ -575,7 +575,7 @@ KERNEL_FQ void m00020_s08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -611,7 +611,7 @@ KERNEL_FQ void m00020_s08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00020s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00020s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00020_s16 (KERN_ATTR_BASIC ())
|
||||
@ -622,7 +622,7 @@ KERNEL_FQ void m00020_s16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -658,5 +658,5 @@ KERNEL_FQ void m00020_s16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00020s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00020s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00020_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -42,7 +42,7 @@ KERNEL_FQ void m00020_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
md5_init (&ctx0);
|
||||
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -50,7 +50,7 @@ KERNEL_FQ void m00020_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -84,7 +84,7 @@ KERNEL_FQ void m00020_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -92,10 +92,10 @@ KERNEL_FQ void m00020_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -115,7 +115,7 @@ KERNEL_FQ void m00020_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
md5_init (&ctx0);
|
||||
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -123,7 +123,7 @@ KERNEL_FQ void m00020_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -30,7 +30,7 @@ KERNEL_FQ void m00030_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -55,30 +55,30 @@ KERNEL_FQ void m00030_m04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -244,7 +244,7 @@ KERNEL_FQ void m00030_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -269,24 +269,24 @@ KERNEL_FQ void m00030_s04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -294,17 +294,17 @@ KERNEL_FQ void m00030_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00030_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -33,20 +33,20 @@ KERNEL_FQ void m00030_mxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -80,7 +80,7 @@ KERNEL_FQ void m00030_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -88,10 +88,10 @@ KERNEL_FQ void m00030_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -100,20 +100,20 @@ KERNEL_FQ void m00030_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -28,7 +28,7 @@ KERNEL_FQ void m00030_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -53,30 +53,30 @@ KERNEL_FQ void m00030_m04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -114,7 +114,7 @@ KERNEL_FQ void m00030_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -302,7 +302,7 @@ KERNEL_FQ void m00030_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -327,24 +327,24 @@ KERNEL_FQ void m00030_s04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -352,17 +352,17 @@ KERNEL_FQ void m00030_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -400,7 +400,7 @@ KERNEL_FQ void m00030_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,19 +23,19 @@ KERNEL_FQ void m00030_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
*/
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
md5_ctx_t ctx0;
|
||||
@ -48,7 +48,7 @@ KERNEL_FQ void m00030_mxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
md5_ctx_t ctx = ctx0;
|
||||
|
||||
@ -76,7 +76,7 @@ KERNEL_FQ void m00030_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -84,23 +84,23 @@ KERNEL_FQ void m00030_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* base
|
||||
*/
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
md5_ctx_t ctx0;
|
||||
@ -113,7 +113,7 @@ KERNEL_FQ void m00030_sxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
md5_ctx_t ctx = ctx0;
|
||||
|
||||
|
@ -49,24 +49,24 @@ DECLSPEC void m00030m (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
const u32 pw_salt_len = pw_len + salt_len;
|
||||
|
||||
@ -167,7 +167,7 @@ DECLSPEC void m00030m (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
u32 w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -339,20 +339,20 @@ DECLSPEC void m00030s (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* reverse
|
||||
*/
|
||||
|
||||
u32 a_rev = digests_buf[DIGESTS_OFFSET].digest_buf[0];
|
||||
u32 b_rev = digests_buf[DIGESTS_OFFSET].digest_buf[1];
|
||||
u32 c_rev = digests_buf[DIGESTS_OFFSET].digest_buf[2];
|
||||
u32 d_rev = digests_buf[DIGESTS_OFFSET].digest_buf[3];
|
||||
u32 a_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[0];
|
||||
u32 b_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[1];
|
||||
u32 c_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[2];
|
||||
u32 d_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[3];
|
||||
|
||||
MD5_STEP_REV (MD5_I_S, b_rev, c_rev, d_rev, a_rev, w[ 9], MD5C3f, MD5S33);
|
||||
MD5_STEP_REV (MD5_I_S, c_rev, d_rev, a_rev, b_rev, w[ 2], MD5C3e, MD5S32);
|
||||
@ -382,7 +382,7 @@ DECLSPEC void m00030s (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
u32 w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -486,7 +486,7 @@ KERNEL_FQ void m00030_m04 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -513,7 +513,7 @@ KERNEL_FQ void m00030_m04 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00030m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00030m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00030_m08 (KERN_ATTR_VECTOR ())
|
||||
@ -524,7 +524,7 @@ KERNEL_FQ void m00030_m08 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -551,7 +551,7 @@ KERNEL_FQ void m00030_m08 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00030m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00030m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00030_m16 (KERN_ATTR_VECTOR ())
|
||||
@ -562,7 +562,7 @@ KERNEL_FQ void m00030_m16 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -589,7 +589,7 @@ KERNEL_FQ void m00030_m16 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00030m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00030m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00030_s04 (KERN_ATTR_VECTOR ())
|
||||
@ -600,7 +600,7 @@ KERNEL_FQ void m00030_s04 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -627,7 +627,7 @@ KERNEL_FQ void m00030_s04 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00030s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00030s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00030_s08 (KERN_ATTR_VECTOR ())
|
||||
@ -638,7 +638,7 @@ KERNEL_FQ void m00030_s08 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -665,7 +665,7 @@ KERNEL_FQ void m00030_s08 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00030s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00030s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00030_s16 (KERN_ATTR_VECTOR ())
|
||||
@ -676,7 +676,7 @@ KERNEL_FQ void m00030_s16 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -703,5 +703,5 @@ KERNEL_FQ void m00030_s16 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00030s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00030s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00030_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -38,13 +38,13 @@ KERNEL_FQ void m00030_mxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
/**
|
||||
@ -53,7 +53,7 @@ KERNEL_FQ void m00030_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -89,7 +89,7 @@ KERNEL_FQ void m00030_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -97,10 +97,10 @@ KERNEL_FQ void m00030_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -116,13 +116,13 @@ KERNEL_FQ void m00030_sxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
/**
|
||||
@ -131,7 +131,7 @@ KERNEL_FQ void m00030_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -30,7 +30,7 @@ KERNEL_FQ void m00040_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -55,30 +55,30 @@ KERNEL_FQ void m00040_m04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -224,7 +224,7 @@ KERNEL_FQ void m00040_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -249,24 +249,24 @@ KERNEL_FQ void m00040_s04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -274,17 +274,17 @@ KERNEL_FQ void m00040_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00040_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -37,13 +37,13 @@ KERNEL_FQ void m00040_mxx (KERN_ATTR_RULES ())
|
||||
|
||||
md5_init (&ctx0);
|
||||
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -73,7 +73,7 @@ KERNEL_FQ void m00040_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -81,10 +81,10 @@ KERNEL_FQ void m00040_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -97,13 +97,13 @@ KERNEL_FQ void m00040_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
md5_init (&ctx0);
|
||||
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -28,7 +28,7 @@ KERNEL_FQ void m00040_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -53,30 +53,30 @@ KERNEL_FQ void m00040_m04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -114,7 +114,7 @@ KERNEL_FQ void m00040_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -280,7 +280,7 @@ KERNEL_FQ void m00040_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -305,24 +305,24 @@ KERNEL_FQ void m00040_s04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -330,17 +330,17 @@ KERNEL_FQ void m00040_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -378,7 +378,7 @@ KERNEL_FQ void m00040_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00040_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -33,7 +33,7 @@ KERNEL_FQ void m00040_mxx (KERN_ATTR_BASIC ())
|
||||
|
||||
md5_init (&ctx0);
|
||||
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
md5_update_global_utf16le (&ctx0, pws[gid].i, pws[gid].pw_len);
|
||||
|
||||
@ -41,7 +41,7 @@ KERNEL_FQ void m00040_mxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
md5_ctx_t ctx = ctx0;
|
||||
|
||||
@ -67,7 +67,7 @@ KERNEL_FQ void m00040_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -75,10 +75,10 @@ KERNEL_FQ void m00040_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -89,7 +89,7 @@ KERNEL_FQ void m00040_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
md5_init (&ctx0);
|
||||
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
md5_update_global_utf16le (&ctx0, pws[gid].i, pws[gid].pw_len);
|
||||
|
||||
@ -97,7 +97,7 @@ KERNEL_FQ void m00040_sxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
md5_ctx_t ctx = ctx0;
|
||||
|
||||
|
@ -32,24 +32,24 @@ DECLSPEC void m00040m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
const u32 pw_salt_len = pw_len + salt_len;
|
||||
|
||||
@ -59,7 +59,7 @@ DECLSPEC void m00040m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -204,10 +204,10 @@ DECLSPEC void m00040s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -219,24 +219,24 @@ DECLSPEC void m00040s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
const u32 pw_salt_len = pw_len + salt_len;
|
||||
|
||||
@ -246,7 +246,7 @@ DECLSPEC void m00040s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -387,7 +387,7 @@ KERNEL_FQ void m00040_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -423,7 +423,7 @@ KERNEL_FQ void m00040_m04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00040m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00040m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00040_m08 (KERN_ATTR_BASIC ())
|
||||
@ -434,7 +434,7 @@ KERNEL_FQ void m00040_m08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -470,7 +470,7 @@ KERNEL_FQ void m00040_m08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00040m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00040m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00040_m16 (KERN_ATTR_BASIC ())
|
||||
@ -481,7 +481,7 @@ KERNEL_FQ void m00040_m16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -517,7 +517,7 @@ KERNEL_FQ void m00040_m16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00040m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00040m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00040_s04 (KERN_ATTR_BASIC ())
|
||||
@ -528,7 +528,7 @@ KERNEL_FQ void m00040_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -564,7 +564,7 @@ KERNEL_FQ void m00040_s04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00040s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00040s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00040_s08 (KERN_ATTR_BASIC ())
|
||||
@ -575,7 +575,7 @@ KERNEL_FQ void m00040_s08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -611,7 +611,7 @@ KERNEL_FQ void m00040_s08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00040s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00040s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00040_s16 (KERN_ATTR_BASIC ())
|
||||
@ -622,7 +622,7 @@ KERNEL_FQ void m00040_s16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -658,5 +658,5 @@ KERNEL_FQ void m00040_s16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00040s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00040s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00040_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -42,7 +42,7 @@ KERNEL_FQ void m00040_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
md5_init (&ctx0);
|
||||
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -50,7 +50,7 @@ KERNEL_FQ void m00040_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -84,7 +84,7 @@ KERNEL_FQ void m00040_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -92,10 +92,10 @@ KERNEL_FQ void m00040_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -115,7 +115,7 @@ KERNEL_FQ void m00040_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
md5_init (&ctx0);
|
||||
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
md5_update_global (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -123,7 +123,7 @@ KERNEL_FQ void m00040_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -115,7 +115,7 @@ KERNEL_FQ void m00050_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -140,30 +140,30 @@ KERNEL_FQ void m00050_m04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -228,7 +228,7 @@ KERNEL_FQ void m00050_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -253,24 +253,24 @@ KERNEL_FQ void m00050_s04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -278,17 +278,17 @@ KERNEL_FQ void m00050_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00050_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -33,20 +33,20 @@ KERNEL_FQ void m00050_mxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -78,7 +78,7 @@ KERNEL_FQ void m00050_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -86,10 +86,10 @@ KERNEL_FQ void m00050_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -98,20 +98,20 @@ KERNEL_FQ void m00050_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -113,7 +113,7 @@ KERNEL_FQ void m00050_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -138,30 +138,30 @@ KERNEL_FQ void m00050_m04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -199,7 +199,7 @@ KERNEL_FQ void m00050_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -286,7 +286,7 @@ KERNEL_FQ void m00050_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -311,24 +311,24 @@ KERNEL_FQ void m00050_s04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -336,17 +336,17 @@ KERNEL_FQ void m00050_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -384,7 +384,7 @@ KERNEL_FQ void m00050_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00050_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -38,20 +38,20 @@ KERNEL_FQ void m00050_mxx (KERN_ATTR_BASIC ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
const u32 comb_len = combs_buf[il_pos].pw_len;
|
||||
|
||||
@ -101,7 +101,7 @@ KERNEL_FQ void m00050_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -109,10 +109,10 @@ KERNEL_FQ void m00050_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -128,20 +128,20 @@ KERNEL_FQ void m00050_sxx (KERN_ATTR_BASIC ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
const u32 comb_len = combs_buf[il_pos].pw_len;
|
||||
|
||||
|
@ -117,24 +117,24 @@ DECLSPEC void m00050m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -142,7 +142,7 @@ DECLSPEC void m00050m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -222,24 +222,24 @@ DECLSPEC void m00050s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -247,10 +247,10 @@ DECLSPEC void m00050s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -259,7 +259,7 @@ DECLSPEC void m00050s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -329,7 +329,7 @@ KERNEL_FQ void m00050_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -365,7 +365,7 @@ KERNEL_FQ void m00050_m04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00050m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00050m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00050_m08 (KERN_ATTR_BASIC ())
|
||||
@ -376,7 +376,7 @@ KERNEL_FQ void m00050_m08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -412,7 +412,7 @@ KERNEL_FQ void m00050_m08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00050m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00050m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00050_m16 (KERN_ATTR_BASIC ())
|
||||
@ -423,7 +423,7 @@ KERNEL_FQ void m00050_m16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -459,7 +459,7 @@ KERNEL_FQ void m00050_m16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00050m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00050m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00050_s04 (KERN_ATTR_BASIC ())
|
||||
@ -470,7 +470,7 @@ KERNEL_FQ void m00050_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -506,7 +506,7 @@ KERNEL_FQ void m00050_s04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00050s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00050s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00050_s08 (KERN_ATTR_BASIC ())
|
||||
@ -517,7 +517,7 @@ KERNEL_FQ void m00050_s08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -553,7 +553,7 @@ KERNEL_FQ void m00050_s08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00050s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00050s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00050_s16 (KERN_ATTR_BASIC ())
|
||||
@ -564,7 +564,7 @@ KERNEL_FQ void m00050_s16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -600,5 +600,5 @@ KERNEL_FQ void m00050_s16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00050s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00050s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00050_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -38,13 +38,13 @@ KERNEL_FQ void m00050_mxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
/**
|
||||
@ -53,7 +53,7 @@ KERNEL_FQ void m00050_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -87,7 +87,7 @@ KERNEL_FQ void m00050_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -95,10 +95,10 @@ KERNEL_FQ void m00050_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -114,13 +114,13 @@ KERNEL_FQ void m00050_sxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
/**
|
||||
@ -129,7 +129,7 @@ KERNEL_FQ void m00050_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -115,7 +115,7 @@ KERNEL_FQ void m00060_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -140,22 +140,22 @@ KERNEL_FQ void m00060_m04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -192,7 +192,7 @@ KERNEL_FQ void m00060_m04 (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -250,7 +250,7 @@ KERNEL_FQ void m00060_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -275,22 +275,22 @@ KERNEL_FQ void m00060_s04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -329,17 +329,17 @@ KERNEL_FQ void m00060_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00060_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -33,13 +33,13 @@ KERNEL_FQ void m00060_mxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
md5_hmac_ctx_t ctx0;
|
||||
@ -50,7 +50,7 @@ KERNEL_FQ void m00060_mxx (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -80,7 +80,7 @@ KERNEL_FQ void m00060_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -88,10 +88,10 @@ KERNEL_FQ void m00060_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -100,13 +100,13 @@ KERNEL_FQ void m00060_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
md5_hmac_ctx_t ctx0;
|
||||
@ -117,7 +117,7 @@ KERNEL_FQ void m00060_sxx (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -113,7 +113,7 @@ KERNEL_FQ void m00060_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -138,22 +138,22 @@ KERNEL_FQ void m00060_m04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -190,7 +190,7 @@ KERNEL_FQ void m00060_m04 (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -228,7 +228,7 @@ KERNEL_FQ void m00060_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -289,7 +289,7 @@ KERNEL_FQ void m00060_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -314,22 +314,22 @@ KERNEL_FQ void m00060_s04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -368,17 +368,17 @@ KERNEL_FQ void m00060_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -416,7 +416,7 @@ KERNEL_FQ void m00060_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00060_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -38,13 +38,13 @@ KERNEL_FQ void m00060_mxx (KERN_ATTR_BASIC ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
md5_hmac_ctx_t ctx0;
|
||||
@ -55,7 +55,7 @@ KERNEL_FQ void m00060_mxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
const u32 comb_len = combs_buf[il_pos].pw_len;
|
||||
|
||||
@ -103,7 +103,7 @@ KERNEL_FQ void m00060_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -111,10 +111,10 @@ KERNEL_FQ void m00060_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -130,13 +130,13 @@ KERNEL_FQ void m00060_sxx (KERN_ATTR_BASIC ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
md5_hmac_ctx_t ctx0;
|
||||
@ -147,7 +147,7 @@ KERNEL_FQ void m00060_sxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
const u32 comb_len = combs_buf[il_pos].pw_len;
|
||||
|
||||
|
@ -117,22 +117,22 @@ DECLSPEC void m00060m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -171,7 +171,7 @@ DECLSPEC void m00060m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -220,22 +220,22 @@ DECLSPEC void m00060s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -274,10 +274,10 @@ DECLSPEC void m00060s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -286,7 +286,7 @@ DECLSPEC void m00060s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -325,7 +325,7 @@ KERNEL_FQ void m00060_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -361,7 +361,7 @@ KERNEL_FQ void m00060_m04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00060m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00060m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00060_m08 (KERN_ATTR_BASIC ())
|
||||
@ -372,7 +372,7 @@ KERNEL_FQ void m00060_m08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -408,7 +408,7 @@ KERNEL_FQ void m00060_m08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00060m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00060m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00060_m16 (KERN_ATTR_BASIC ())
|
||||
@ -419,7 +419,7 @@ KERNEL_FQ void m00060_m16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -455,7 +455,7 @@ KERNEL_FQ void m00060_m16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00060m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00060m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00060_s04 (KERN_ATTR_BASIC ())
|
||||
@ -466,7 +466,7 @@ KERNEL_FQ void m00060_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -502,7 +502,7 @@ KERNEL_FQ void m00060_s04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00060s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00060s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00060_s08 (KERN_ATTR_BASIC ())
|
||||
@ -513,7 +513,7 @@ KERNEL_FQ void m00060_s08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -549,7 +549,7 @@ KERNEL_FQ void m00060_s08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00060s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00060s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00060_s16 (KERN_ATTR_BASIC ())
|
||||
@ -560,7 +560,7 @@ KERNEL_FQ void m00060_s16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -596,5 +596,5 @@ KERNEL_FQ void m00060_s16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00060s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00060s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00060_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -38,13 +38,13 @@ KERNEL_FQ void m00060_mxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
md5_hmac_ctx_vector_t ctx0;
|
||||
@ -57,7 +57,7 @@ KERNEL_FQ void m00060_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -89,7 +89,7 @@ KERNEL_FQ void m00060_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -97,10 +97,10 @@ KERNEL_FQ void m00060_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -116,13 +116,13 @@ KERNEL_FQ void m00060_sxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = salt_bufs[SALT_POS].salt_buf[idx];
|
||||
s[idx] = salt_bufs[SALT_POS_HOST].salt_buf[idx];
|
||||
}
|
||||
|
||||
md5_hmac_ctx_vector_t ctx0;
|
||||
@ -135,7 +135,7 @@ KERNEL_FQ void m00060_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -30,7 +30,7 @@ KERNEL_FQ void m00070_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -50,7 +50,7 @@ KERNEL_FQ void m00070_m04 (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -174,7 +174,7 @@ KERNEL_FQ void m00070_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -196,17 +196,17 @@ KERNEL_FQ void m00070_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00070_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -37,7 +37,7 @@ KERNEL_FQ void m00070_mxx (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -69,7 +69,7 @@ KERNEL_FQ void m00070_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -77,10 +77,10 @@ KERNEL_FQ void m00070_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -93,7 +93,7 @@ KERNEL_FQ void m00070_sxx (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -28,7 +28,7 @@ KERNEL_FQ void m00070_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -48,7 +48,7 @@ KERNEL_FQ void m00070_m04 (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -86,7 +86,7 @@ KERNEL_FQ void m00070_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -232,7 +232,7 @@ KERNEL_FQ void m00070_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -254,17 +254,17 @@ KERNEL_FQ void m00070_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -302,7 +302,7 @@ KERNEL_FQ void m00070_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00070_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -39,7 +39,7 @@ KERNEL_FQ void m00070_mxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
md5_ctx_t ctx = ctx0;
|
||||
|
||||
@ -65,7 +65,7 @@ KERNEL_FQ void m00070_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -73,10 +73,10 @@ KERNEL_FQ void m00070_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -93,7 +93,7 @@ KERNEL_FQ void m00070_sxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
md5_ctx_t ctx = ctx0;
|
||||
|
||||
|
@ -121,7 +121,7 @@ DECLSPEC void m00070m (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
u32 w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -293,20 +293,20 @@ DECLSPEC void m00070s (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* reverse
|
||||
*/
|
||||
|
||||
u32 a_rev = digests_buf[DIGESTS_OFFSET].digest_buf[0];
|
||||
u32 b_rev = digests_buf[DIGESTS_OFFSET].digest_buf[1];
|
||||
u32 c_rev = digests_buf[DIGESTS_OFFSET].digest_buf[2];
|
||||
u32 d_rev = digests_buf[DIGESTS_OFFSET].digest_buf[3];
|
||||
u32 a_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[0];
|
||||
u32 b_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[1];
|
||||
u32 c_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[2];
|
||||
u32 d_rev = digests_buf[DIGESTS_OFFSET_HOST].digest_buf[3];
|
||||
|
||||
MD5_STEP_REV (MD5_I_S, b_rev, c_rev, d_rev, a_rev, w[ 9], MD5C3f, MD5S33);
|
||||
MD5_STEP_REV (MD5_I_S, c_rev, d_rev, a_rev, b_rev, w[ 2], MD5C3e, MD5S32);
|
||||
@ -336,7 +336,7 @@ DECLSPEC void m00070s (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
u32 w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -440,7 +440,7 @@ KERNEL_FQ void m00070_m04 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -467,7 +467,7 @@ KERNEL_FQ void m00070_m04 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00070m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00070m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00070_m08 (KERN_ATTR_VECTOR ())
|
||||
@ -478,7 +478,7 @@ KERNEL_FQ void m00070_m08 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -505,7 +505,7 @@ KERNEL_FQ void m00070_m08 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00070m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00070m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00070_m16 (KERN_ATTR_VECTOR ())
|
||||
@ -516,7 +516,7 @@ KERNEL_FQ void m00070_m16 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -543,7 +543,7 @@ KERNEL_FQ void m00070_m16 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00070m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00070m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00070_s04 (KERN_ATTR_VECTOR ())
|
||||
@ -554,7 +554,7 @@ KERNEL_FQ void m00070_s04 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -581,7 +581,7 @@ KERNEL_FQ void m00070_s04 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00070s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00070s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00070_s08 (KERN_ATTR_VECTOR ())
|
||||
@ -592,7 +592,7 @@ KERNEL_FQ void m00070_s08 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -619,7 +619,7 @@ KERNEL_FQ void m00070_s08 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00070s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00070s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00070_s16 (KERN_ATTR_VECTOR ())
|
||||
@ -630,7 +630,7 @@ KERNEL_FQ void m00070_s16 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -657,5 +657,5 @@ KERNEL_FQ void m00070_s16 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00070s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00070s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00070_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -44,7 +44,7 @@ KERNEL_FQ void m00070_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -78,7 +78,7 @@ KERNEL_FQ void m00070_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -86,10 +86,10 @@ KERNEL_FQ void m00070_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -111,7 +111,7 @@ KERNEL_FQ void m00070_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -30,7 +30,7 @@ KERNEL_FQ void m00100_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -50,7 +50,7 @@ KERNEL_FQ void m00100_m04 (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -210,7 +210,7 @@ KERNEL_FQ void m00100_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -232,10 +232,10 @@ KERNEL_FQ void m00100_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -248,7 +248,7 @@ KERNEL_FQ void m00100_s04 (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00100_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -37,7 +37,7 @@ KERNEL_FQ void m00100_mxx (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -69,7 +69,7 @@ KERNEL_FQ void m00100_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -77,10 +77,10 @@ KERNEL_FQ void m00100_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -93,7 +93,7 @@ KERNEL_FQ void m00100_sxx (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -28,7 +28,7 @@ KERNEL_FQ void m00100_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -48,7 +48,7 @@ KERNEL_FQ void m00100_m04 (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -86,7 +86,7 @@ KERNEL_FQ void m00100_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -266,7 +266,7 @@ KERNEL_FQ void m00100_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -288,10 +288,10 @@ KERNEL_FQ void m00100_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -304,7 +304,7 @@ KERNEL_FQ void m00100_s04 (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -342,7 +342,7 @@ KERNEL_FQ void m00100_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00100_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -39,7 +39,7 @@ KERNEL_FQ void m00100_mxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
sha1_ctx_t ctx = ctx0;
|
||||
|
||||
@ -65,7 +65,7 @@ KERNEL_FQ void m00100_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -73,10 +73,10 @@ KERNEL_FQ void m00100_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -93,7 +93,7 @@ KERNEL_FQ void m00100_sxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
sha1_ctx_t ctx = ctx0;
|
||||
|
||||
|
@ -110,7 +110,7 @@ DECLSPEC void m00100m (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
u32 w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -354,10 +354,10 @@ DECLSPEC void m00100s (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -372,7 +372,7 @@ DECLSPEC void m00100s (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
u32 w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -530,7 +530,7 @@ KERNEL_FQ void m00100_m04 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -557,7 +557,7 @@ KERNEL_FQ void m00100_m04 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00100m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00100m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00100_m08 (KERN_ATTR_VECTOR ())
|
||||
@ -568,7 +568,7 @@ KERNEL_FQ void m00100_m08 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -595,7 +595,7 @@ KERNEL_FQ void m00100_m08 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00100m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00100m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00100_m16 (KERN_ATTR_VECTOR ())
|
||||
@ -606,7 +606,7 @@ KERNEL_FQ void m00100_m16 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -633,7 +633,7 @@ KERNEL_FQ void m00100_m16 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00100m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00100m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00100_s04 (KERN_ATTR_VECTOR ())
|
||||
@ -644,7 +644,7 @@ KERNEL_FQ void m00100_s04 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -671,7 +671,7 @@ KERNEL_FQ void m00100_s04 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00100s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00100s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00100_s08 (KERN_ATTR_VECTOR ())
|
||||
@ -682,7 +682,7 @@ KERNEL_FQ void m00100_s08 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -709,7 +709,7 @@ KERNEL_FQ void m00100_s08 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00100s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00100s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00100_s16 (KERN_ATTR_VECTOR ())
|
||||
@ -720,7 +720,7 @@ KERNEL_FQ void m00100_s16 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -747,5 +747,5 @@ KERNEL_FQ void m00100_s16 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00100s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00100s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00100_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -44,7 +44,7 @@ KERNEL_FQ void m00100_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -78,7 +78,7 @@ KERNEL_FQ void m00100_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -86,10 +86,10 @@ KERNEL_FQ void m00100_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -111,7 +111,7 @@ KERNEL_FQ void m00100_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -30,7 +30,7 @@ KERNEL_FQ void m00110_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -55,30 +55,30 @@ KERNEL_FQ void m00110_m04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -283,7 +283,7 @@ KERNEL_FQ void m00110_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -308,24 +308,24 @@ KERNEL_FQ void m00110_s04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -333,10 +333,10 @@ KERNEL_FQ void m00110_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -349,7 +349,7 @@ KERNEL_FQ void m00110_s04 (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00110_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -33,20 +33,20 @@ KERNEL_FQ void m00110_mxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -80,7 +80,7 @@ KERNEL_FQ void m00110_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -88,10 +88,10 @@ KERNEL_FQ void m00110_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -100,20 +100,20 @@ KERNEL_FQ void m00110_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -28,7 +28,7 @@ KERNEL_FQ void m00110_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -53,30 +53,30 @@ KERNEL_FQ void m00110_m04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -114,7 +114,7 @@ KERNEL_FQ void m00110_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -341,7 +341,7 @@ KERNEL_FQ void m00110_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -366,24 +366,24 @@ KERNEL_FQ void m00110_s04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -391,10 +391,10 @@ KERNEL_FQ void m00110_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -407,7 +407,7 @@ KERNEL_FQ void m00110_s04 (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -445,7 +445,7 @@ KERNEL_FQ void m00110_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,19 +23,19 @@ KERNEL_FQ void m00110_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
*/
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
sha1_ctx_t ctx0;
|
||||
@ -48,7 +48,7 @@ KERNEL_FQ void m00110_mxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
sha1_ctx_t ctx = ctx0;
|
||||
|
||||
@ -76,7 +76,7 @@ KERNEL_FQ void m00110_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -84,23 +84,23 @@ KERNEL_FQ void m00110_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* base
|
||||
*/
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
sha1_ctx_t ctx0;
|
||||
@ -113,7 +113,7 @@ KERNEL_FQ void m00110_sxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
sha1_ctx_t ctx = ctx0;
|
||||
|
||||
|
@ -32,22 +32,22 @@ DECLSPEC void m00110m (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
switch_buffer_by_offset_le_S (salt_buf0, salt_buf1, salt_buf2, salt_buf3, pw_len);
|
||||
|
||||
@ -68,7 +68,7 @@ DECLSPEC void m00110m (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
w[14] |= hc_swap32_S (salt_buf3[2]);
|
||||
w[15] |= hc_swap32_S (salt_buf3[3]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
const u32 pw_salt_len = pw_len + salt_len;
|
||||
|
||||
@ -165,7 +165,7 @@ DECLSPEC void m00110m (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
u32 w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -402,10 +402,10 @@ DECLSPEC void m00110s (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -420,7 +420,7 @@ DECLSPEC void m00110s (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
u32 w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -578,7 +578,7 @@ KERNEL_FQ void m00110_m04 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -605,7 +605,7 @@ KERNEL_FQ void m00110_m04 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00110m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00110m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00110_m08 (KERN_ATTR_VECTOR ())
|
||||
@ -616,7 +616,7 @@ KERNEL_FQ void m00110_m08 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -643,7 +643,7 @@ KERNEL_FQ void m00110_m08 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00110m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00110m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00110_m16 (KERN_ATTR_VECTOR ())
|
||||
@ -654,7 +654,7 @@ KERNEL_FQ void m00110_m16 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -681,7 +681,7 @@ KERNEL_FQ void m00110_m16 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00110m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00110m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00110_s04 (KERN_ATTR_VECTOR ())
|
||||
@ -692,7 +692,7 @@ KERNEL_FQ void m00110_s04 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -719,7 +719,7 @@ KERNEL_FQ void m00110_s04 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00110s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00110s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00110_s08 (KERN_ATTR_VECTOR ())
|
||||
@ -730,7 +730,7 @@ KERNEL_FQ void m00110_s08 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -757,7 +757,7 @@ KERNEL_FQ void m00110_s08 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00110s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00110s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00110_s16 (KERN_ATTR_VECTOR ())
|
||||
@ -768,7 +768,7 @@ KERNEL_FQ void m00110_s16 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -795,5 +795,5 @@ KERNEL_FQ void m00110_s16 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00110s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00110s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00110_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -38,13 +38,13 @@ KERNEL_FQ void m00110_mxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -53,7 +53,7 @@ KERNEL_FQ void m00110_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -89,7 +89,7 @@ KERNEL_FQ void m00110_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -97,10 +97,10 @@ KERNEL_FQ void m00110_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -116,13 +116,13 @@ KERNEL_FQ void m00110_sxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -131,7 +131,7 @@ KERNEL_FQ void m00110_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -30,7 +30,7 @@ KERNEL_FQ void m00120_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -55,24 +55,24 @@ KERNEL_FQ void m00120_m04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -80,17 +80,17 @@ KERNEL_FQ void m00120_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -275,7 +275,7 @@ KERNEL_FQ void m00120_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -300,24 +300,24 @@ KERNEL_FQ void m00120_s04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -325,10 +325,10 @@ KERNEL_FQ void m00120_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -341,7 +341,7 @@ KERNEL_FQ void m00120_s04 (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00120_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -37,13 +37,13 @@ KERNEL_FQ void m00120_mxx (KERN_ATTR_RULES ())
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -73,7 +73,7 @@ KERNEL_FQ void m00120_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -81,10 +81,10 @@ KERNEL_FQ void m00120_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -97,13 +97,13 @@ KERNEL_FQ void m00120_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -28,7 +28,7 @@ KERNEL_FQ void m00120_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -53,24 +53,24 @@ KERNEL_FQ void m00120_m04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -78,17 +78,17 @@ KERNEL_FQ void m00120_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -126,7 +126,7 @@ KERNEL_FQ void m00120_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -331,7 +331,7 @@ KERNEL_FQ void m00120_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -356,24 +356,24 @@ KERNEL_FQ void m00120_s04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -381,10 +381,10 @@ KERNEL_FQ void m00120_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -397,7 +397,7 @@ KERNEL_FQ void m00120_s04 (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -435,7 +435,7 @@ KERNEL_FQ void m00120_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00120_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -33,7 +33,7 @@ KERNEL_FQ void m00120_mxx (KERN_ATTR_BASIC ())
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
sha1_update_global_swap (&ctx0, pws[gid].i, pws[gid].pw_len);
|
||||
|
||||
@ -41,7 +41,7 @@ KERNEL_FQ void m00120_mxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
sha1_ctx_t ctx = ctx0;
|
||||
|
||||
@ -67,7 +67,7 @@ KERNEL_FQ void m00120_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -75,10 +75,10 @@ KERNEL_FQ void m00120_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -89,7 +89,7 @@ KERNEL_FQ void m00120_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
sha1_update_global_swap (&ctx0, pws[gid].i, pws[gid].pw_len);
|
||||
|
||||
@ -97,7 +97,7 @@ KERNEL_FQ void m00120_sxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
sha1_ctx_t ctx = ctx0;
|
||||
|
||||
|
@ -32,24 +32,24 @@ DECLSPEC void m00120m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
const u32 pw_salt_len = pw_len + salt_len;
|
||||
|
||||
@ -59,7 +59,7 @@ DECLSPEC void m00120m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -248,10 +248,10 @@ DECLSPEC void m00120s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -269,24 +269,24 @@ DECLSPEC void m00120s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
const u32 pw_salt_len = pw_len + salt_len;
|
||||
|
||||
@ -296,7 +296,7 @@ DECLSPEC void m00120s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -481,7 +481,7 @@ KERNEL_FQ void m00120_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -517,7 +517,7 @@ KERNEL_FQ void m00120_m04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00120m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00120m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00120_m08 (KERN_ATTR_BASIC ())
|
||||
@ -528,7 +528,7 @@ KERNEL_FQ void m00120_m08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -564,7 +564,7 @@ KERNEL_FQ void m00120_m08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00120m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00120m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00120_m16 (KERN_ATTR_BASIC ())
|
||||
@ -575,7 +575,7 @@ KERNEL_FQ void m00120_m16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -611,7 +611,7 @@ KERNEL_FQ void m00120_m16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00120m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00120m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00120_s04 (KERN_ATTR_BASIC ())
|
||||
@ -622,7 +622,7 @@ KERNEL_FQ void m00120_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -658,7 +658,7 @@ KERNEL_FQ void m00120_s04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00120s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00120s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00120_s08 (KERN_ATTR_BASIC ())
|
||||
@ -669,7 +669,7 @@ KERNEL_FQ void m00120_s08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -705,7 +705,7 @@ KERNEL_FQ void m00120_s08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00120s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00120s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00120_s16 (KERN_ATTR_BASIC ())
|
||||
@ -716,7 +716,7 @@ KERNEL_FQ void m00120_s16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -752,5 +752,5 @@ KERNEL_FQ void m00120_s16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00120s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00120s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00120_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -42,7 +42,7 @@ KERNEL_FQ void m00120_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -50,7 +50,7 @@ KERNEL_FQ void m00120_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -84,7 +84,7 @@ KERNEL_FQ void m00120_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -92,10 +92,10 @@ KERNEL_FQ void m00120_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -115,7 +115,7 @@ KERNEL_FQ void m00120_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -123,7 +123,7 @@ KERNEL_FQ void m00120_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -30,7 +30,7 @@ KERNEL_FQ void m00130_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -55,30 +55,30 @@ KERNEL_FQ void m00130_m04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -288,7 +288,7 @@ KERNEL_FQ void m00130_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -313,24 +313,24 @@ KERNEL_FQ void m00130_s04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -338,10 +338,10 @@ KERNEL_FQ void m00130_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -354,7 +354,7 @@ KERNEL_FQ void m00130_s04 (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00130_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -33,20 +33,20 @@ KERNEL_FQ void m00130_mxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -80,7 +80,7 @@ KERNEL_FQ void m00130_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -88,10 +88,10 @@ KERNEL_FQ void m00130_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -100,20 +100,20 @@ KERNEL_FQ void m00130_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -28,7 +28,7 @@ KERNEL_FQ void m00130_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -53,30 +53,30 @@ KERNEL_FQ void m00130_m04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -114,7 +114,7 @@ KERNEL_FQ void m00130_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -346,7 +346,7 @@ KERNEL_FQ void m00130_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -371,24 +371,24 @@ KERNEL_FQ void m00130_s04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -396,10 +396,10 @@ KERNEL_FQ void m00130_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -412,7 +412,7 @@ KERNEL_FQ void m00130_s04 (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -450,7 +450,7 @@ KERNEL_FQ void m00130_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,19 +23,19 @@ KERNEL_FQ void m00130_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
*/
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
sha1_ctx_t ctx0;
|
||||
@ -48,7 +48,7 @@ KERNEL_FQ void m00130_mxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
sha1_ctx_t ctx = ctx0;
|
||||
|
||||
@ -76,7 +76,7 @@ KERNEL_FQ void m00130_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -84,23 +84,23 @@ KERNEL_FQ void m00130_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* base
|
||||
*/
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
sha1_ctx_t ctx0;
|
||||
@ -113,7 +113,7 @@ KERNEL_FQ void m00130_sxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
sha1_ctx_t ctx = ctx0;
|
||||
|
||||
|
@ -32,22 +32,22 @@ DECLSPEC void m00130m (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
switch_buffer_by_offset_le_S (salt_buf0, salt_buf1, salt_buf2, salt_buf3, pw_len);
|
||||
|
||||
@ -68,7 +68,7 @@ DECLSPEC void m00130m (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
w[14] |= hc_swap32_S (salt_buf3[2]);
|
||||
w[15] |= hc_swap32_S (salt_buf3[3]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
const u32 pw_salt_len = pw_len + salt_len;
|
||||
|
||||
@ -165,7 +165,7 @@ DECLSPEC void m00130m (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
u32 w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -402,10 +402,10 @@ DECLSPEC void m00130s (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -420,7 +420,7 @@ DECLSPEC void m00130s (u32 *w, const u32 pw_len, KERN_ATTR_VECTOR ())
|
||||
|
||||
u32 w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -578,7 +578,7 @@ KERNEL_FQ void m00130_m04 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -605,7 +605,7 @@ KERNEL_FQ void m00130_m04 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00130m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00130m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00130_m08 (KERN_ATTR_VECTOR ())
|
||||
@ -616,7 +616,7 @@ KERNEL_FQ void m00130_m08 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -643,7 +643,7 @@ KERNEL_FQ void m00130_m08 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00130m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00130m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00130_m16 (KERN_ATTR_VECTOR ())
|
||||
@ -654,7 +654,7 @@ KERNEL_FQ void m00130_m16 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -681,7 +681,7 @@ KERNEL_FQ void m00130_m16 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00130m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00130m (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00130_s04 (KERN_ATTR_VECTOR ())
|
||||
@ -692,7 +692,7 @@ KERNEL_FQ void m00130_s04 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -719,7 +719,7 @@ KERNEL_FQ void m00130_s04 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00130s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00130s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00130_s08 (KERN_ATTR_VECTOR ())
|
||||
@ -730,7 +730,7 @@ KERNEL_FQ void m00130_s08 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -757,7 +757,7 @@ KERNEL_FQ void m00130_s08 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00130s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00130s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00130_s16 (KERN_ATTR_VECTOR ())
|
||||
@ -768,7 +768,7 @@ KERNEL_FQ void m00130_s16 (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w[16];
|
||||
|
||||
@ -795,5 +795,5 @@ KERNEL_FQ void m00130_s16 (KERN_ATTR_VECTOR ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00130s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00130s (w, pw_len, pws, rules_buf, combs_buf, words_buf_r, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00130_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -38,13 +38,13 @@ KERNEL_FQ void m00130_mxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -53,7 +53,7 @@ KERNEL_FQ void m00130_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -89,7 +89,7 @@ KERNEL_FQ void m00130_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -97,10 +97,10 @@ KERNEL_FQ void m00130_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -116,13 +116,13 @@ KERNEL_FQ void m00130_sxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -131,7 +131,7 @@ KERNEL_FQ void m00130_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -30,7 +30,7 @@ KERNEL_FQ void m00140_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -55,30 +55,30 @@ KERNEL_FQ void m00140_m04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -268,7 +268,7 @@ KERNEL_FQ void m00140_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -293,24 +293,24 @@ KERNEL_FQ void m00140_s04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -318,10 +318,10 @@ KERNEL_FQ void m00140_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -334,7 +334,7 @@ KERNEL_FQ void m00140_s04 (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00140_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -37,13 +37,13 @@ KERNEL_FQ void m00140_mxx (KERN_ATTR_RULES ())
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -73,7 +73,7 @@ KERNEL_FQ void m00140_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -81,10 +81,10 @@ KERNEL_FQ void m00140_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -97,13 +97,13 @@ KERNEL_FQ void m00140_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -28,7 +28,7 @@ KERNEL_FQ void m00140_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -53,30 +53,30 @@ KERNEL_FQ void m00140_m04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -114,7 +114,7 @@ KERNEL_FQ void m00140_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -324,7 +324,7 @@ KERNEL_FQ void m00140_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -349,24 +349,24 @@ KERNEL_FQ void m00140_s04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = salt_bufs[SALT_POS].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS].salt_buf[15];
|
||||
salt_buf0[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 0];
|
||||
salt_buf0[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 1];
|
||||
salt_buf0[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 2];
|
||||
salt_buf0[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 3];
|
||||
salt_buf1[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 4];
|
||||
salt_buf1[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 5];
|
||||
salt_buf1[2] = salt_bufs[SALT_POS_HOST].salt_buf[ 6];
|
||||
salt_buf1[3] = salt_bufs[SALT_POS_HOST].salt_buf[ 7];
|
||||
salt_buf2[0] = salt_bufs[SALT_POS_HOST].salt_buf[ 8];
|
||||
salt_buf2[1] = salt_bufs[SALT_POS_HOST].salt_buf[ 9];
|
||||
salt_buf2[2] = salt_bufs[SALT_POS_HOST].salt_buf[10];
|
||||
salt_buf2[3] = salt_bufs[SALT_POS_HOST].salt_buf[11];
|
||||
salt_buf3[0] = salt_bufs[SALT_POS_HOST].salt_buf[12];
|
||||
salt_buf3[1] = salt_bufs[SALT_POS_HOST].salt_buf[13];
|
||||
salt_buf3[2] = salt_bufs[SALT_POS_HOST].salt_buf[14];
|
||||
salt_buf3[3] = salt_bufs[SALT_POS_HOST].salt_buf[15];
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -374,10 +374,10 @@ KERNEL_FQ void m00140_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -390,7 +390,7 @@ KERNEL_FQ void m00140_s04 (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -428,7 +428,7 @@ KERNEL_FQ void m00140_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00140_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -33,7 +33,7 @@ KERNEL_FQ void m00140_mxx (KERN_ATTR_BASIC ())
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
sha1_update_global_utf16le_swap (&ctx0, pws[gid].i, pws[gid].pw_len);
|
||||
|
||||
@ -41,7 +41,7 @@ KERNEL_FQ void m00140_mxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
sha1_ctx_t ctx = ctx0;
|
||||
|
||||
@ -67,7 +67,7 @@ KERNEL_FQ void m00140_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -75,10 +75,10 @@ KERNEL_FQ void m00140_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -89,7 +89,7 @@ KERNEL_FQ void m00140_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
sha1_update_global_utf16le_swap (&ctx0, pws[gid].i, pws[gid].pw_len);
|
||||
|
||||
@ -97,7 +97,7 @@ KERNEL_FQ void m00140_sxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
sha1_ctx_t ctx = ctx0;
|
||||
|
||||
|
@ -32,24 +32,24 @@ DECLSPEC void m00140m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
const u32 pw_salt_len = pw_len + salt_len;
|
||||
|
||||
@ -59,7 +59,7 @@ DECLSPEC void m00140m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -248,10 +248,10 @@ DECLSPEC void m00140s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -269,24 +269,24 @@ DECLSPEC void m00140s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
const u32 pw_salt_len = pw_len + salt_len;
|
||||
|
||||
@ -296,7 +296,7 @@ DECLSPEC void m00140s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -481,7 +481,7 @@ KERNEL_FQ void m00140_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -517,7 +517,7 @@ KERNEL_FQ void m00140_m04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00140m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00140m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00140_m08 (KERN_ATTR_BASIC ())
|
||||
@ -528,7 +528,7 @@ KERNEL_FQ void m00140_m08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -564,7 +564,7 @@ KERNEL_FQ void m00140_m08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00140m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00140m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00140_m16 (KERN_ATTR_BASIC ())
|
||||
@ -575,7 +575,7 @@ KERNEL_FQ void m00140_m16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -611,7 +611,7 @@ KERNEL_FQ void m00140_m16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00140m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00140m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00140_s04 (KERN_ATTR_BASIC ())
|
||||
@ -622,7 +622,7 @@ KERNEL_FQ void m00140_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -658,7 +658,7 @@ KERNEL_FQ void m00140_s04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00140s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00140s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00140_s08 (KERN_ATTR_BASIC ())
|
||||
@ -669,7 +669,7 @@ KERNEL_FQ void m00140_s08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -705,7 +705,7 @@ KERNEL_FQ void m00140_s08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00140s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00140s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00140_s16 (KERN_ATTR_BASIC ())
|
||||
@ -716,7 +716,7 @@ KERNEL_FQ void m00140_s16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -752,5 +752,5 @@ KERNEL_FQ void m00140_s16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00140s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00140s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00140_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -42,7 +42,7 @@ KERNEL_FQ void m00140_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -50,7 +50,7 @@ KERNEL_FQ void m00140_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -84,7 +84,7 @@ KERNEL_FQ void m00140_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -92,10 +92,10 @@ KERNEL_FQ void m00140_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -115,7 +115,7 @@ KERNEL_FQ void m00140_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS].salt_buf, salt_bufs[SALT_POS].salt_len);
|
||||
sha1_update_global_swap (&ctx0, salt_bufs[SALT_POS_HOST].salt_buf, salt_bufs[SALT_POS_HOST].salt_len);
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -123,7 +123,7 @@ KERNEL_FQ void m00140_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -119,7 +119,7 @@ KERNEL_FQ void m00150_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -144,30 +144,30 @@ KERNEL_FQ void m00150_m04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -241,7 +241,7 @@ KERNEL_FQ void m00150_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -266,24 +266,24 @@ KERNEL_FQ void m00150_s04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -291,17 +291,17 @@ KERNEL_FQ void m00150_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00150_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -33,20 +33,20 @@ KERNEL_FQ void m00150_mxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -78,7 +78,7 @@ KERNEL_FQ void m00150_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -86,10 +86,10 @@ KERNEL_FQ void m00150_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -98,20 +98,20 @@ KERNEL_FQ void m00150_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -117,7 +117,7 @@ KERNEL_FQ void m00150_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -142,30 +142,30 @@ KERNEL_FQ void m00150_m04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -203,7 +203,7 @@ KERNEL_FQ void m00150_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -307,7 +307,7 @@ KERNEL_FQ void m00150_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -332,24 +332,24 @@ KERNEL_FQ void m00150_s04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -357,17 +357,17 @@ KERNEL_FQ void m00150_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -405,7 +405,7 @@ KERNEL_FQ void m00150_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00150_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -38,20 +38,20 @@ KERNEL_FQ void m00150_mxx (KERN_ATTR_BASIC ())
|
||||
w[idx] = hc_swap32_S (pws[gid].i[idx]);
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
const u32 comb_len = combs_buf[il_pos].pw_len;
|
||||
|
||||
@ -101,7 +101,7 @@ KERNEL_FQ void m00150_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -109,10 +109,10 @@ KERNEL_FQ void m00150_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -128,20 +128,20 @@ KERNEL_FQ void m00150_sxx (KERN_ATTR_BASIC ())
|
||||
w[idx] = hc_swap32_S (pws[gid].i[idx]);
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
const u32 comb_len = combs_buf[il_pos].pw_len;
|
||||
|
||||
|
@ -121,24 +121,24 @@ DECLSPEC void m00150m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -146,7 +146,7 @@ DECLSPEC void m00150m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -226,24 +226,24 @@ DECLSPEC void m00150s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -251,10 +251,10 @@ DECLSPEC void m00150s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -263,7 +263,7 @@ DECLSPEC void m00150s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -333,7 +333,7 @@ KERNEL_FQ void m00150_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -369,7 +369,7 @@ KERNEL_FQ void m00150_m04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00150m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00150m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00150_m08 (KERN_ATTR_BASIC ())
|
||||
@ -380,7 +380,7 @@ KERNEL_FQ void m00150_m08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -416,7 +416,7 @@ KERNEL_FQ void m00150_m08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00150m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00150m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00150_m16 (KERN_ATTR_BASIC ())
|
||||
@ -427,7 +427,7 @@ KERNEL_FQ void m00150_m16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -463,7 +463,7 @@ KERNEL_FQ void m00150_m16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00150m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00150m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00150_s04 (KERN_ATTR_BASIC ())
|
||||
@ -474,7 +474,7 @@ KERNEL_FQ void m00150_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -510,7 +510,7 @@ KERNEL_FQ void m00150_s04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00150s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00150s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00150_s08 (KERN_ATTR_BASIC ())
|
||||
@ -521,7 +521,7 @@ KERNEL_FQ void m00150_s08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -557,7 +557,7 @@ KERNEL_FQ void m00150_s08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00150s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00150s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00150_s16 (KERN_ATTR_BASIC ())
|
||||
@ -568,7 +568,7 @@ KERNEL_FQ void m00150_s16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -604,5 +604,5 @@ KERNEL_FQ void m00150_s16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00150s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00150s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00150_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -38,13 +38,13 @@ KERNEL_FQ void m00150_mxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -53,7 +53,7 @@ KERNEL_FQ void m00150_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -87,7 +87,7 @@ KERNEL_FQ void m00150_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -95,10 +95,10 @@ KERNEL_FQ void m00150_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -114,13 +114,13 @@ KERNEL_FQ void m00150_sxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -129,7 +129,7 @@ KERNEL_FQ void m00150_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -119,7 +119,7 @@ KERNEL_FQ void m00160_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -144,22 +144,22 @@ KERNEL_FQ void m00160_m04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -196,7 +196,7 @@ KERNEL_FQ void m00160_m04 (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -254,7 +254,7 @@ KERNEL_FQ void m00160_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -279,22 +279,22 @@ KERNEL_FQ void m00160_s04 (KERN_ATTR_RULES ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -333,17 +333,17 @@ KERNEL_FQ void m00160_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00160_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -33,13 +33,13 @@ KERNEL_FQ void m00160_mxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
sha1_hmac_ctx_t ctx0;
|
||||
@ -50,7 +50,7 @@ KERNEL_FQ void m00160_mxx (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -80,7 +80,7 @@ KERNEL_FQ void m00160_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -88,10 +88,10 @@ KERNEL_FQ void m00160_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -100,13 +100,13 @@ KERNEL_FQ void m00160_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
sha1_hmac_ctx_t ctx0;
|
||||
@ -117,7 +117,7 @@ KERNEL_FQ void m00160_sxx (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
@ -117,7 +117,7 @@ KERNEL_FQ void m00160_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -142,22 +142,22 @@ KERNEL_FQ void m00160_m04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -194,7 +194,7 @@ KERNEL_FQ void m00160_m04 (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -232,7 +232,7 @@ KERNEL_FQ void m00160_m04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
@ -312,7 +312,7 @@ KERNEL_FQ void m00160_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -337,22 +337,22 @@ KERNEL_FQ void m00160_s04 (KERN_ATTR_BASIC ())
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -391,17 +391,17 @@ KERNEL_FQ void m00160_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x pw_r_len = pwlenx_create_combt (combs_buf, il_pos) & 63;
|
||||
|
||||
@ -439,7 +439,7 @@ KERNEL_FQ void m00160_s04 (KERN_ATTR_BASIC ())
|
||||
wordr1[2] = ix_create_combt (combs_buf, il_pos, 6);
|
||||
wordr1[3] = ix_create_combt (combs_buf, il_pos, 7);
|
||||
|
||||
if (combs_mode == COMBINATOR_MODE_BASE_LEFT)
|
||||
if (COMBS_MODE == COMBINATOR_MODE_BASE_LEFT)
|
||||
{
|
||||
switch_buffer_by_offset_le_VV (wordr0, wordr1, wordr2, wordr3, pw_l_len);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00160_mxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -38,13 +38,13 @@ KERNEL_FQ void m00160_mxx (KERN_ATTR_BASIC ())
|
||||
w[idx] = hc_swap32_S (pws[gid].i[idx]);
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
sha1_hmac_ctx_t ctx0;
|
||||
@ -55,7 +55,7 @@ KERNEL_FQ void m00160_mxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
const u32 comb_len = combs_buf[il_pos].pw_len;
|
||||
|
||||
@ -103,7 +103,7 @@ KERNEL_FQ void m00160_sxx (KERN_ATTR_BASIC ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -111,10 +111,10 @@ KERNEL_FQ void m00160_sxx (KERN_ATTR_BASIC ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -130,13 +130,13 @@ KERNEL_FQ void m00160_sxx (KERN_ATTR_BASIC ())
|
||||
w[idx] = hc_swap32_S (pws[gid].i[idx]);
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32 s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
sha1_hmac_ctx_t ctx0;
|
||||
@ -147,7 +147,7 @@ KERNEL_FQ void m00160_sxx (KERN_ATTR_BASIC ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
const u32 comb_len = combs_buf[il_pos].pw_len;
|
||||
|
||||
|
@ -121,22 +121,22 @@ DECLSPEC void m00160m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -175,7 +175,7 @@ DECLSPEC void m00160m (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -224,22 +224,22 @@ DECLSPEC void m00160s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[15]);
|
||||
salt_buf0[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 0]);
|
||||
salt_buf0[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 1]);
|
||||
salt_buf0[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 2]);
|
||||
salt_buf0[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 3]);
|
||||
salt_buf1[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 4]);
|
||||
salt_buf1[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 5]);
|
||||
salt_buf1[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 6]);
|
||||
salt_buf1[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 7]);
|
||||
salt_buf2[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 8]);
|
||||
salt_buf2[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[ 9]);
|
||||
salt_buf2[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[10]);
|
||||
salt_buf2[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[11]);
|
||||
salt_buf3[0] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[12]);
|
||||
salt_buf3[1] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[13]);
|
||||
salt_buf3[2] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[14]);
|
||||
salt_buf3[3] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[15]);
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -278,10 +278,10 @@ DECLSPEC void m00160s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -290,7 +290,7 @@ DECLSPEC void m00160s (u32 *w0, u32 *w1, u32 *w2, u32 *w3, const u32 pw_len, KER
|
||||
|
||||
u32 w0l = w0[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = ix_create_bft (bfs_buf, il_pos);
|
||||
|
||||
@ -329,7 +329,7 @@ KERNEL_FQ void m00160_m04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -365,7 +365,7 @@ KERNEL_FQ void m00160_m04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00160m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00160m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00160_m08 (KERN_ATTR_BASIC ())
|
||||
@ -376,7 +376,7 @@ KERNEL_FQ void m00160_m08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -412,7 +412,7 @@ KERNEL_FQ void m00160_m08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00160m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00160m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00160_m16 (KERN_ATTR_BASIC ())
|
||||
@ -423,7 +423,7 @@ KERNEL_FQ void m00160_m16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -459,7 +459,7 @@ KERNEL_FQ void m00160_m16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00160m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00160m (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00160_s04 (KERN_ATTR_BASIC ())
|
||||
@ -470,7 +470,7 @@ KERNEL_FQ void m00160_s04 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -506,7 +506,7 @@ KERNEL_FQ void m00160_s04 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00160s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00160s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00160_s08 (KERN_ATTR_BASIC ())
|
||||
@ -517,7 +517,7 @@ KERNEL_FQ void m00160_s08 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -553,7 +553,7 @@ KERNEL_FQ void m00160_s08 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00160s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00160s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
||||
KERNEL_FQ void m00160_s16 (KERN_ATTR_BASIC ())
|
||||
@ -564,7 +564,7 @@ KERNEL_FQ void m00160_s16 (KERN_ATTR_BASIC ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 w0[4];
|
||||
|
||||
@ -600,5 +600,5 @@ KERNEL_FQ void m00160_s16 (KERN_ATTR_BASIC ())
|
||||
* main
|
||||
*/
|
||||
|
||||
m00160s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, bitmap_mask, bitmap_shift1, bitmap_shift2, SALT_POS, loop_pos, loop_cnt, il_cnt, digests_cnt, DIGESTS_OFFSET, combs_mode, salt_repeat, pws_pos, gid_max);
|
||||
m00160s (w0, w1, w2, w3, pw_len, pws, rules_buf, combs_buf, bfs_buf, tmps, hooks, bitmaps_buf_s1_a, bitmaps_buf_s1_b, bitmaps_buf_s1_c, bitmaps_buf_s1_d, bitmaps_buf_s2_a, bitmaps_buf_s2_b, bitmaps_buf_s2_c, bitmaps_buf_s2_d, plains_buf, digests_buf, hashes_shown, salt_bufs, esalt_bufs, d_return_buf, d_extra0_buf, d_extra1_buf, d_extra2_buf, d_extra3_buf, kernel_param);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ KERNEL_FQ void m00160_mxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -38,13 +38,13 @@ KERNEL_FQ void m00160_mxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
sha1_hmac_ctx_vector_t ctx0;
|
||||
@ -57,7 +57,7 @@ KERNEL_FQ void m00160_mxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
@ -89,7 +89,7 @@ KERNEL_FQ void m00160_sxx (KERN_ATTR_VECTOR ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -97,10 +97,10 @@ KERNEL_FQ void m00160_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -116,13 +116,13 @@ KERNEL_FQ void m00160_sxx (KERN_ATTR_VECTOR ())
|
||||
w[idx] = pws[gid].i[idx];
|
||||
}
|
||||
|
||||
const u32 salt_len = salt_bufs[SALT_POS].salt_len;
|
||||
const u32 salt_len = salt_bufs[SALT_POS_HOST].salt_len;
|
||||
|
||||
u32x s[64] = { 0 };
|
||||
|
||||
for (u32 i = 0, idx = 0; i < salt_len; i += 4, idx += 1)
|
||||
{
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS].salt_buf[idx]);
|
||||
s[idx] = hc_swap32_S (salt_bufs[SALT_POS_HOST].salt_buf[idx]);
|
||||
}
|
||||
|
||||
sha1_hmac_ctx_vector_t ctx0;
|
||||
@ -135,7 +135,7 @@ KERNEL_FQ void m00160_sxx (KERN_ATTR_VECTOR ())
|
||||
|
||||
u32x w0l = w[0];
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
const u32x w0r = words_buf_r[il_pos / VECT_SIZE];
|
||||
|
||||
|
@ -30,7 +30,7 @@ KERNEL_FQ void m00170_m04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -50,7 +50,7 @@ KERNEL_FQ void m00170_m04 (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
@ -215,7 +215,7 @@ KERNEL_FQ void m00170_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
u32 pw_buf0[4];
|
||||
u32 pw_buf1[4];
|
||||
@ -237,10 +237,10 @@ KERNEL_FQ void m00170_s04 (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -253,7 +253,7 @@ KERNEL_FQ void m00170_s04 (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos += VECT_SIZE)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos += VECT_SIZE)
|
||||
{
|
||||
u32x w0[4] = { 0 };
|
||||
u32x w1[4] = { 0 };
|
||||
|
@ -25,7 +25,7 @@ KERNEL_FQ void m00170_mxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -37,7 +37,7 @@ KERNEL_FQ void m00170_mxx (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
@ -69,7 +69,7 @@ KERNEL_FQ void m00170_sxx (KERN_ATTR_RULES ())
|
||||
const u64 lid = get_local_id (0);
|
||||
const u64 gid = get_global_id (0);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
if (gid >= GID_MAX) return;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -77,10 +77,10 @@ KERNEL_FQ void m00170_sxx (KERN_ATTR_RULES ())
|
||||
|
||||
const u32 search[4] =
|
||||
{
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET].digest_buf[DGST_R3]
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R0],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R1],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R2],
|
||||
digests_buf[DIGESTS_OFFSET_HOST].digest_buf[DGST_R3]
|
||||
};
|
||||
|
||||
/**
|
||||
@ -93,7 +93,7 @@ KERNEL_FQ void m00170_sxx (KERN_ATTR_RULES ())
|
||||
* loop
|
||||
*/
|
||||
|
||||
for (u32 il_pos = 0; il_pos < il_cnt; il_pos++)
|
||||
for (u32 il_pos = 0; il_pos < IL_CNT; il_pos++)
|
||||
{
|
||||
pw_t tmp = PASTE_PW;
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user