typedef struct
{
- u32 key;
+ u32 key;
u64 val;
} hcstat_table_t;
typedef struct
{
- u32 cmds[15];
+ u32 cmds[0x100];
} gpu_rule_t;
-/*
-typedef struct
-{
- u32 plain_buf[16];
- u32 plailen;
-
-} plain_t;
-*/
-
typedef struct
{
u32 gidvid;
Desc.: Dropped CUDA support and switched to OpenCL for NVidia
Type.: Feature
-File.: Host
-Desc.: Implemented a new feature that allows to quit at next restore point update (and disable it)
-Issue: 10
+File.: Kernel
+Desc.: Extended support from 14 to 255 functions calls per rule on GPU
Type.: Feature
File.: Host
Desc.: Added a Makefile target for native compilation
+Issue: 2
Type.: Feature
File.: Host
Desc.: Switched to Khronos OSS OpenCL reference implementation for building
+Issue: 2
Type.: Feature
File.: Host
Desc.: No longer need NVidia-CUDA-SDK, AMD-APP-SDK and NVidia-ForceWare driver in depencies
+Issue: 2
Type.: Feature
File.: Host
Desc.: Added option --gpu-platform to select a single OpenCL platform in case multiple OpenCL platforms are present
+Issue: 2
+
+Type.: Feature
+File.: Host
+Desc.: Implemented a new feature that allows to quit at next restore point update (and disable it)
+Issue: 10
Type.: Feature
File.: Host
Desc.: Moved rules_optimize to hashcat-utils
+Issue: 2
Type.: Bug
File.: Host
typedef struct
{
- uint cmds[15];
+ uint cmds[0x100];
} gpu_rule_t;
} wordr_t;
-#define RULES_MAX 16
+#define RULES_MAX 256
#define PW_MIN 0
#define PW_MAX 54
#define PW_MAX1 (PW_MAX + 1)
#define SET_NAME(rule,val) (rule)->cmds[rule_cnt] = ((val) & 0xff) << 0
#define SET_P0(rule,val) INCR_POS; (rule)->cmds[rule_cnt] |= ((val) & 0xff) << 8
#define SET_P1(rule,val) INCR_POS; (rule)->cmds[rule_cnt] |= ((val) & 0xff) << 16
-#define MAX_GPU_RULES 14
+#define MAX_GPU_RULES 255
#define GET_NAME(rule) rule_cmd = (((rule)->cmds[rule_cnt] >> 0) & 0xff)
#define GET_P0(rule) INCR_POS; rule_buf[rule_pos] = (((rule)->cmds[rule_cnt] >> 8) & 0xff)
#define GET_P1(rule) INCR_POS; rule_buf[rule_pos] = (((rule)->cmds[rule_cnt] >> 16) & 0xff)
#define SET_NAME(rule,val) (rule)->cmds[rule_cnt] = ((val) & 0xff) << 0
#define SET_P0(rule,val) INCR_POS; (rule)->cmds[rule_cnt] |= ((val) & 0xff) << 8
#define SET_P1(rule,val) INCR_POS; (rule)->cmds[rule_cnt] |= ((val) & 0xff) << 16
-#define MAX_GPU_RULES 14
+#define MAX_GPU_RULES 255
#define GET_NAME(rule) rule_cmd = (((rule)->cmds[rule_cnt] >> 0) & 0xff)
#define GET_P0(rule) INCR_POS; rule_buf[rule_pos] = (((rule)->cmds[rule_cnt] >> 8) & 0xff)
#define GET_P1(rule) INCR_POS; rule_buf[rule_pos] = (((rule)->cmds[rule_cnt] >> 16) & 0xff)
#include <inttypes.h>
#include <string.h>
#include "rp_cpu.h"
+
#define BLOCK_SIZE 64
#define RULE_RC_REJECT_ERROR -2
#define RP_RULE_BUFSIZ 0x100
typedef struct
{
- uint cmds[15];
+ uint cmds[256];
} gpu_rule_t;