1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-11-22 16:18:09 +00:00

Automate module interface version management

This commit is contained in:
jsteube 2019-01-12 00:39:13 +01:00
parent 219f2091f3
commit 74265307fe
18 changed files with 25 additions and 47 deletions

View File

@ -13,7 +13,7 @@
#include <limits.h>
#include <inttypes.h>
static const u32 MODULE_VERSION_MINIMUM = 520;
static const int MODULE_INTERFACE_VERSION_MINIMUM = 520;
static const int MODULE_HASH_MODES_MAXIMUM = 100000;

View File

@ -2248,7 +2248,7 @@ typedef struct event_ctx
typedef struct module_ctx
{
void *module_handle;
u32 module_version_current;
int module_interface_version;
void (*module_init) (struct module_ctx *);

View File

@ -10,8 +10,6 @@
#include "convert.h"
#include "shared.h"
static const u32 MODULE_VERSION_CURRENT = 520;
static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL;
static const u32 DGST_POS0 = 0;
static const u32 DGST_POS1 = 3;
@ -148,6 +146,7 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_hook23 = MODULE_DEFAULT;
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
module_ctx->module_hook_size = MODULE_DEFAULT;
module_ctx->module_interface_version = MODULE_INTERFACE_VERSION_CURRENT;
module_ctx->module_jit_build_options = MODULE_DEFAULT;
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
@ -173,6 +172,5 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_st_pass = MODULE_DEFAULT;
module_ctx->module_tmp_size = MODULE_DEFAULT;
module_ctx->module_unstable_warning = MODULE_DEFAULT;
module_ctx->module_version_current = MODULE_VERSION_CURRENT;
module_ctx->module_warmup_disable = MODULE_DEFAULT;
}

View File

@ -10,8 +10,6 @@
#include "convert.h"
#include "shared.h"
static const u32 MODULE_VERSION_CURRENT = 520;
static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL;
static const u32 DGST_POS0 = 0;
static const u32 DGST_POS1 = 3;
@ -178,6 +176,7 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_hook23 = MODULE_DEFAULT;
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
module_ctx->module_hook_size = MODULE_DEFAULT;
module_ctx->module_interface_version = MODULE_INTERFACE_VERSION_CURRENT;
module_ctx->module_jit_build_options = MODULE_DEFAULT;
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
@ -203,6 +202,5 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_st_pass = MODULE_DEFAULT;
module_ctx->module_tmp_size = MODULE_DEFAULT;
module_ctx->module_unstable_warning = MODULE_DEFAULT;
module_ctx->module_version_current = MODULE_VERSION_CURRENT;
module_ctx->module_warmup_disable = MODULE_DEFAULT;
}

View File

@ -10,8 +10,6 @@
#include "convert.h"
#include "shared.h"
static const u32 MODULE_VERSION_CURRENT = 520;
static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL;
static const u32 DGST_POS0 = 0;
static const u32 DGST_POS1 = 3;
@ -178,6 +176,7 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_hook23 = MODULE_DEFAULT;
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
module_ctx->module_hook_size = MODULE_DEFAULT;
module_ctx->module_interface_version = MODULE_INTERFACE_VERSION_CURRENT;
module_ctx->module_jit_build_options = MODULE_DEFAULT;
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
@ -203,6 +202,5 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_st_pass = MODULE_DEFAULT;
module_ctx->module_tmp_size = MODULE_DEFAULT;
module_ctx->module_unstable_warning = MODULE_DEFAULT;
module_ctx->module_version_current = MODULE_VERSION_CURRENT;
module_ctx->module_warmup_disable = MODULE_DEFAULT;
}

View File

@ -10,8 +10,6 @@
#include "convert.h"
#include "shared.h"
static const u32 MODULE_VERSION_CURRENT = 520;
static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL;
static const u32 DGST_POS0 = 3;
static const u32 DGST_POS1 = 4;
@ -150,6 +148,7 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_hook23 = MODULE_DEFAULT;
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
module_ctx->module_hook_size = MODULE_DEFAULT;
module_ctx->module_interface_version = MODULE_INTERFACE_VERSION_CURRENT;
module_ctx->module_jit_build_options = MODULE_DEFAULT;
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
@ -174,6 +173,5 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_st_pass = MODULE_DEFAULT;
module_ctx->module_tmp_size = MODULE_DEFAULT;
module_ctx->module_unstable_warning = MODULE_DEFAULT;
module_ctx->module_version_current = MODULE_VERSION_CURRENT;
module_ctx->module_warmup_disable = MODULE_DEFAULT;
}

View File

@ -10,8 +10,6 @@
#include "convert.h"
#include "shared.h"
static const u32 MODULE_VERSION_CURRENT = 520;
static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL;
static const u32 DGST_POS0 = 3;
static const u32 DGST_POS1 = 4;
@ -156,6 +154,7 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_hook23 = MODULE_DEFAULT;
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
module_ctx->module_hook_size = MODULE_DEFAULT;
module_ctx->module_interface_version = MODULE_INTERFACE_VERSION_CURRENT;
module_ctx->module_jit_build_options = MODULE_DEFAULT;
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
@ -180,6 +179,5 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_st_pass = MODULE_DEFAULT;
module_ctx->module_tmp_size = MODULE_DEFAULT;
module_ctx->module_unstable_warning = MODULE_DEFAULT;
module_ctx->module_version_current = MODULE_VERSION_CURRENT;
module_ctx->module_warmup_disable = MODULE_DEFAULT;
}

View File

@ -10,8 +10,6 @@
#include "convert.h"
#include "shared.h"
static const u32 MODULE_VERSION_CURRENT = 520;
static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL;
static const u32 DGST_POS0 = 0;
static const u32 DGST_POS1 = 1;
@ -136,6 +134,7 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_hook23 = MODULE_DEFAULT;
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
module_ctx->module_hook_size = MODULE_DEFAULT;
module_ctx->module_interface_version = MODULE_INTERFACE_VERSION_CURRENT;
module_ctx->module_jit_build_options = MODULE_DEFAULT;
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
@ -161,6 +160,5 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_st_pass = MODULE_DEFAULT;
module_ctx->module_tmp_size = MODULE_DEFAULT;
module_ctx->module_unstable_warning = MODULE_DEFAULT;
module_ctx->module_version_current = MODULE_VERSION_CURRENT;
module_ctx->module_warmup_disable = MODULE_DEFAULT;
}

View File

@ -10,8 +10,6 @@
#include "convert.h"
#include "shared.h"
static const u32 MODULE_VERSION_CURRENT = 520;
static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL;
static const u32 DGST_POS0 = 3;
static const u32 DGST_POS1 = 4;
@ -149,6 +147,7 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_hook23 = MODULE_DEFAULT;
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
module_ctx->module_hook_size = MODULE_DEFAULT;
module_ctx->module_interface_version = MODULE_INTERFACE_VERSION_CURRENT;
module_ctx->module_jit_build_options = MODULE_DEFAULT;
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
@ -173,6 +172,5 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_st_pass = MODULE_DEFAULT;
module_ctx->module_tmp_size = MODULE_DEFAULT;
module_ctx->module_unstable_warning = MODULE_DEFAULT;
module_ctx->module_version_current = MODULE_VERSION_CURRENT;
module_ctx->module_warmup_disable = MODULE_DEFAULT;
}

View File

@ -10,8 +10,6 @@
#include "convert.h"
#include "shared.h"
static const u32 MODULE_VERSION_CURRENT = 520;
static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL;
static const u32 DGST_POS0 = 0;
static const u32 DGST_POS1 = 3;
@ -148,6 +146,7 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_hook23 = MODULE_DEFAULT;
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
module_ctx->module_hook_size = MODULE_DEFAULT;
module_ctx->module_interface_version = MODULE_INTERFACE_VERSION_CURRENT;
module_ctx->module_jit_build_options = MODULE_DEFAULT;
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
@ -173,6 +172,5 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_st_pass = MODULE_DEFAULT;
module_ctx->module_tmp_size = MODULE_DEFAULT;
module_ctx->module_unstable_warning = MODULE_DEFAULT;
module_ctx->module_version_current = MODULE_VERSION_CURRENT;
module_ctx->module_warmup_disable = MODULE_DEFAULT;
}

View File

@ -10,8 +10,6 @@
#include "convert.h"
#include "shared.h"
static const u32 MODULE_VERSION_CURRENT = 520;
static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL;
static const u32 DGST_POS0 = 0;
static const u32 DGST_POS1 = 3;
@ -151,6 +149,7 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_hook23 = MODULE_DEFAULT;
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
module_ctx->module_hook_size = MODULE_DEFAULT;
module_ctx->module_interface_version = MODULE_INTERFACE_VERSION_CURRENT;
module_ctx->module_jit_build_options = MODULE_DEFAULT;
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
@ -176,6 +175,5 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_st_pass = MODULE_DEFAULT;
module_ctx->module_tmp_size = MODULE_DEFAULT;
module_ctx->module_unstable_warning = MODULE_DEFAULT;
module_ctx->module_version_current = MODULE_VERSION_CURRENT;
module_ctx->module_warmup_disable = MODULE_DEFAULT;
}

View File

@ -10,8 +10,6 @@
#include "convert.h"
#include "shared.h"
static const u32 MODULE_VERSION_CURRENT = 520;
static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL;
static const u32 DGST_POS0 = 3;
static const u32 DGST_POS1 = 5;
@ -156,6 +154,7 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_hook23 = MODULE_DEFAULT;
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
module_ctx->module_hook_size = MODULE_DEFAULT;
module_ctx->module_interface_version = MODULE_INTERFACE_VERSION_CURRENT;
module_ctx->module_jit_build_options = MODULE_DEFAULT;
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
@ -180,6 +179,5 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_st_pass = MODULE_DEFAULT;
module_ctx->module_tmp_size = MODULE_DEFAULT;
module_ctx->module_unstable_warning = MODULE_DEFAULT;
module_ctx->module_version_current = MODULE_VERSION_CURRENT;
module_ctx->module_warmup_disable = MODULE_DEFAULT;
}

View File

@ -10,8 +10,6 @@
#include "convert.h"
#include "shared.h"
static const u32 MODULE_VERSION_CURRENT = 520;
static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL;
static const u32 DGST_POS0 = 3;
static const u32 DGST_POS1 = 7;
@ -159,6 +157,7 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_hook23 = MODULE_DEFAULT;
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
module_ctx->module_hook_size = MODULE_DEFAULT;
module_ctx->module_interface_version = MODULE_INTERFACE_VERSION_CURRENT;
module_ctx->module_jit_build_options = MODULE_DEFAULT;
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
@ -183,6 +182,5 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_st_pass = MODULE_DEFAULT;
module_ctx->module_tmp_size = MODULE_DEFAULT;
module_ctx->module_unstable_warning = MODULE_DEFAULT;
module_ctx->module_version_current = MODULE_VERSION_CURRENT;
module_ctx->module_warmup_disable = MODULE_DEFAULT;
}

View File

@ -10,8 +10,6 @@
#include "convert.h"
#include "shared.h"
static const u32 MODULE_VERSION_CURRENT = 520;
static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL;
static const u32 DGST_POS0 = 14;
static const u32 DGST_POS1 = 15;
@ -160,6 +158,7 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_hook23 = MODULE_DEFAULT;
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
module_ctx->module_hook_size = MODULE_DEFAULT;
module_ctx->module_interface_version = MODULE_INTERFACE_VERSION_CURRENT;
module_ctx->module_jit_build_options = MODULE_DEFAULT;
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
@ -184,6 +183,5 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_st_pass = MODULE_DEFAULT;
module_ctx->module_tmp_size = MODULE_DEFAULT;
module_ctx->module_unstable_warning = MODULE_DEFAULT;
module_ctx->module_version_current = MODULE_VERSION_CURRENT;
module_ctx->module_warmup_disable = MODULE_DEFAULT;
}

View File

@ -10,8 +10,6 @@
#include "convert.h"
#include "shared.h"
static const u32 MODULE_VERSION_CURRENT = 520;
static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL;
static const u32 DGST_POS0 = 0;
static const u32 DGST_POS1 = 3;
@ -174,6 +172,7 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_hook23 = MODULE_DEFAULT;
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
module_ctx->module_hook_size = MODULE_DEFAULT;
module_ctx->module_interface_version = MODULE_INTERFACE_VERSION_CURRENT;
module_ctx->module_jit_build_options = MODULE_DEFAULT;
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
@ -199,6 +198,5 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_st_pass = MODULE_DEFAULT;
module_ctx->module_tmp_size = MODULE_DEFAULT;
module_ctx->module_unstable_warning = MODULE_DEFAULT;
module_ctx->module_version_current = MODULE_VERSION_CURRENT;
module_ctx->module_warmup_disable = MODULE_DEFAULT;
}

View File

@ -10,8 +10,6 @@
#include "convert.h"
#include "shared.h"
static const u32 MODULE_VERSION_CURRENT = 520;
static const u32 ATTACK_EXEC = ATTACK_EXEC_INSIDE_KERNEL;
static const u32 DGST_POS0 = 6;
static const u32 DGST_POS1 = 7;
@ -158,6 +156,7 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_hook23 = MODULE_DEFAULT;
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
module_ctx->module_hook_size = MODULE_DEFAULT;
module_ctx->module_interface_version = MODULE_INTERFACE_VERSION_CURRENT;
module_ctx->module_jit_build_options = MODULE_DEFAULT;
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
@ -182,6 +181,5 @@ void module_init (module_ctx_t *module_ctx)
module_ctx->module_st_pass = MODULE_DEFAULT;
module_ctx->module_tmp_size = MODULE_DEFAULT;
module_ctx->module_unstable_warning = MODULE_DEFAULT;
module_ctx->module_version_current = MODULE_VERSION_CURRENT;
module_ctx->module_warmup_disable = MODULE_DEFAULT;
}

View File

@ -44,6 +44,12 @@ ifneq ($(findstring clean,$(MAKECMDGOALS)),)
MAKEFLAGS += -j 1
endif
##
## Do not modify
##
MODULE_INTERFACE_VERSION := 520
##
## Native compiler paths
##
@ -554,7 +560,7 @@ MODULES_SRC := $(wildcard modules/*.c)
MODULES_LIB := $(patsubst %.c, %.so, $(MODULES_SRC))
modules/module_%.so: modules/module_%.c
$(CC) $(CFLAGS_NATIVE) $< -o $@ -shared -fPIC $(MODULE_DEPEND)
$(CC) $(CFLAGS_NATIVE) $< -o $@ -shared -fPIC $(MODULE_DEPEND) -D MODULE_INTERFACE_VERSION_CURRENT=$(MODULE_INTERFACE_VERSION)
modules: $(MODULES_LIB)

View File

@ -751,9 +751,9 @@ int hashconfig_init (hashcat_ctx_t *hashcat_ctx)
module_ctx->module_init (module_ctx);
if (module_ctx->module_version_current < MODULE_VERSION_MINIMUM)
if (module_ctx->module_interface_version < MODULE_INTERFACE_VERSION_MINIMUM)
{
event_log_error (hashcat_ctx, "module version current (%u) older than minimum (%u)", module_ctx->module_version_current, MODULE_VERSION_MINIMUM);
event_log_error (hashcat_ctx, "module version current (%u) older than minimum (%u)", module_ctx->module_interface_version, MODULE_INTERFACE_VERSION_MINIMUM);
return -1;
}