1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-11-23 00:28:11 +00:00
Commit Graph

1306 Commits

Author SHA1 Message Date
jsteube
7d4bea41a0 Get rid of OpenCL/inc_hash_constants.h and OpenCL/inc_hash_functions.cl 2019-03-21 23:00:38 +01:00
jsteube
5ef67a8ab7 Apply previous blowfish optimization for -m 3200 also on -m 9000 and -m 18600 2019-03-18 12:42:47 +01:00
jsteube
42e440611a Fix some broken strict-aliasing rules 2019-03-17 11:09:32 +01:00
jsteube
218322f630 Support for inline VeraCrypt PIM Brute-Force 2019-03-15 21:48:49 +01:00
jsteube
111889d3fc Keep Guessing: No longer automatically activate --keep-guessing for modes 9720, 9820, 14900 and 18100 2019-03-13 19:02:24 +01:00
jsteube
b99d392e78 OpenCL Runtime: Disable OpenCL kernel cache on Apple for Intel CPU (throws CL_BUILD_PROGRAM_FAILURE for no reason) 2019-03-10 10:48:37 +01:00
jsteube
1537fc4e5d Improve handling of temporary skipped devices (due to JiT build failure or unstable_warning) 2019-03-04 10:29:57 +01:00
jsteube
c43ef406a9 Make sure not to abort entire benchmark if a mode was marked as unstable 2019-03-03 20:11:23 +01:00
jsteube
88a051629c Support module specific JiT compiler build options 2019-03-02 11:12:13 +01:00
jsteube
166f908241 Get rid of some old hack and cleanly distinguish between HL_MODE_FILE_PLAIN and HL_MODE_FILE_BINARY 2019-02-25 11:20:22 +01:00
jsteube
540b405e3a Replace IS_ROCM with HAS_VPERM and HAS_VADD3 2019-02-24 10:12:48 +01:00
jsteube
0096f1a56b Add generic_salt_encode so we have both function types 2019-02-14 10:52:24 +01:00
jsteube
6f4b72bcd3 Rename parse_and_store_generic_salt to generic_salt_decode 2019-02-14 09:53:29 +01:00
jsteube
bab735b367 Get rid of hash_type variable. This hopefully reduces some confusion for new hashcat kernel developers 2019-02-12 16:02:27 +01:00
jsteube
75f7172cca Prepare remove of hash_type variable 2019-02-12 15:30:42 +01:00
jsteube
dc9c7e4027 Add -m 3710, 3800, 4010, 4110, 4300, 4400, 4500, 4520, 4521, 4522, 4700 module 2019-02-12 13:17:58 +01:00
jsteube
c584fa3646 Add -m 121, 124, 2600, 2611, 2612, 2711 and 3711 module 2019-02-12 12:37:30 +01:00
jsteube
000d6a0039 Add -m 11700, 11750, 11760, 11800, 11850 and 11860 module 2019-02-11 21:05:09 +01:00
jsteube
0e9330d700 Add -m 6000 and -m 6100 module 2019-02-11 20:46:48 +01:00
jsteube
977598b25d Add -m 4900 module 2019-02-11 20:40:27 +01:00
jsteube
e18bb5864c Add -m 10100 module 2019-02-11 20:35:21 +01:00
jsteube
b195456281 Add -m 111 module 2019-02-11 16:21:39 +01:00
jsteube
aca1776aa5 Add -m 11100 module 2019-02-11 15:54:31 +01:00
jsteube
f689950e0c Remove some leftovers 2019-02-11 15:31:48 +01:00
jsteube
7432db69fa Add -m 10200 module 2019-02-11 14:39:43 +01:00
jsteube
9daaca2188 Add -m 14400 module 2019-02-11 14:25:41 +01:00
jsteube
f4fb9111cf Add -m 9900 module 2019-02-11 13:22:46 +01:00
jsteube
9df982382d Add -m 16600 module 2019-02-11 13:16:58 +01:00
jsteube
c16a3feabc Add -m 16500 module 2019-02-11 13:11:51 +01:00
jsteube
63f0ed45bc Add -m 16400 module 2019-02-11 12:30:37 +01:00
jsteube
9cdc27b7c2 Add -m 16300 module 2019-02-11 11:24:11 +01:00
jsteube
1454580b4f Add -m 15500 module 2019-02-11 11:13:11 +01:00
jsteube
19ec4340e3 Add -m 16200 module 2019-02-11 11:07:08 +01:00
jsteube
535a5c8b40 Add -m 16100 module 2019-02-11 11:01:59 +01:00
jsteube
dafe5bdafc Add -m 15200 module 2019-02-11 10:54:54 +01:00
jsteube
41ba9424fd Add -m 14700 and -m 14800 module 2019-02-11 10:45:54 +01:00
jsteube
444db31e3d Add -m 13800 module 2019-02-11 10:09:42 +01:00
jsteube
2bb5a9f76f Add -m 13600 module 2019-02-11 09:43:01 +01:00
jsteube
c7b424381b Add -m 13300 module 2019-02-11 09:33:46 +01:00
jsteube
d12e6e4c73 Add -m 13200 module 2019-02-11 09:29:37 +01:00
jsteube
08f1637f79 Add -m 12900 module 2019-02-11 09:24:26 +01:00
jsteube
a13f8a8704 Add -m 12800 module 2019-02-11 09:19:32 +01:00
jsteube
2b2471c420 Add -m 12700 module 2019-02-11 09:12:29 +01:00
jsteube
7b38c0f217 Add -m 12300 module 2019-02-11 08:58:28 +01:00
jsteube
ebce25dd79 Add -m 12200 module 2019-02-11 08:52:02 +01:00
jsteube
69659ee9e6 Add -m 15100 module 2019-02-10 18:24:51 +01:00
jsteube
eec67f3519 Add module -m 12100 2019-02-10 18:15:21 +01:00
jsteube
79cdcf9ec6 Add -m 12001 module 2019-02-10 18:07:16 +01:00
jsteube
ddaa21d2f1 Add -m 11900 module 2019-02-10 18:03:13 +01:00
jsteube
5727e1e712 Add -m 11400 module 2019-02-10 17:59:10 +01:00
jsteube
bce84cb17a Add -m 10900 module 2019-02-10 17:40:29 +01:00
jsteube
1cccaad681 Add -m 10700 module 2019-02-10 14:59:26 +01:00
jsteube
762abc48df Add -m 10300 module 2019-02-10 14:40:14 +01:00
jsteube
4b78802dd1 Add -m 10000 module 2019-02-10 14:32:41 +01:00
jsteube
a2d2675d43 Add -m 9500 module 2019-02-10 14:22:34 +01:00
jsteube
9ffcbf6cab Add -m 9400 module 2019-02-10 14:17:38 +01:00
jsteube
cc3169c51c Add module for -m 9200 2019-02-10 12:44:48 +01:00
jsteube
a10837b60b Add -m 8800 module 2019-02-10 09:41:16 +01:00
jsteube
a1cad1108e Add -m 8600 and -m 8700 module 2019-02-10 09:19:56 +01:00
jsteube
186f223667 Add -m 8400 module 2019-02-10 09:03:57 +01:00
jsteube
d5fae7670c Add -m 8300 module 2019-02-09 23:50:11 +01:00
jsteube
fde470b315 Add -m 8100 module 2019-02-09 23:39:01 +01:00
mhasbini
75a013edf2 Add -m 40 module 2019-02-09 20:33:34 +02:00
jsteube
9d36a30b28 Add module -m 8000 2019-02-09 18:15:25 +01:00
jsteube
b8014f459e Add module for -m 7900 2019-02-09 18:08:36 +01:00
jsteube
0cb56b7116 Add module for -m 7801 2019-02-09 17:55:24 +01:00
jsteube
9d1d05d85d Add module for -m 7400 2019-02-09 16:56:36 +01:00
jsteube
3faf9116ce Add module for -m 7400 2019-02-09 16:51:18 +01:00
jsteube
014cc8da6b Add module for -m 7300 2019-02-09 16:44:03 +01:00
jsteube
6cca2ff7ce Add module for -m 6900 2019-02-09 16:38:19 +01:00
jsteube
214593d4b1 Add module for -m 6300 2019-02-09 16:32:06 +01:00
jsteube
84357e2bd4 Add module for -m 6700 2019-02-09 16:28:29 +01:00
jsteube
80151320a2 Add module -m 6500 2019-02-09 12:25:55 +01:00
jsteube
ad0824261a Add module for -m 6400 2019-02-09 12:07:25 +01:00
jsteube
3d203af066 Add module for -m 5700 and -m 5800 2019-02-09 10:03:58 +01:00
jsteube
36157f00d9 Add module -m 4800 2019-02-08 17:41:42 +01:00
jsteube
9f5b297ac9 Add module -m 3100 2019-02-08 17:32:47 +01:00
jsteube
ac1e4bc458 Add module -m 2410 2019-02-08 17:24:55 +01:00
jsteube
bf85dd5c53 Add module -m 8200 2019-02-08 16:33:53 +01:00
jsteube
89faa8330f Add module -m 7200 2019-02-08 16:12:51 +01:00
jsteube
5cc04fe92a Add module -m 6600 2019-02-08 16:04:11 +01:00
jsteube
e20fe6f3d1 add module -m 16700 2019-02-08 15:18:28 +01:00
jsteube
06d8f4cc7b Add module -m 15600 2019-02-08 14:54:08 +01:00
jsteube
ff5d983886 Add module -m 16000 2019-02-08 14:30:34 +01:00
jsteube
c9e796fcf0 Add some more modules converted 2019-02-08 13:00:40 +01:00
jsteube
a59d1c17eb Fix function declaration for execute_keyboard_layout_mapping() 2019-02-07 17:15:45 +01:00
jsteube
6a33be5ea5 Get rid of module_build_plain_postprocess() 2019-02-07 17:11:49 +01:00
jsteube
9b842e30ab Get rid of OPTI_TYPE_PRECOMPUTE_PERMUT 2019-02-07 17:05:02 +01:00
jsteube
62c660afe2 Add -m 14600 module 2019-02-02 11:11:27 +01:00
jsteube
c197262831 Add -m 15700 module 2019-01-31 16:42:52 +01:00
jsteube
fc648c02f5 Add -m 2000 module 2019-01-31 15:19:21 +01:00
jsteube
ccddfcd2f2 Add -m 1100 module 2019-01-31 11:11:47 +01:00
jsteube
78d2706038 Add -m 8900 module and module_extra_tmp_size() 2019-01-28 14:05:58 +01:00
mhasbini
86d7f0a95b Add -m 11500 module & unit test 2019-01-27 19:58:20 +02:00
jsteube
ec518a19b4 Add -m 16900 module 2019-01-27 10:58:11 +01:00
jsteube
773281a58b Add -m 11300 module 2019-01-27 10:47:09 +01:00
jsteube
de851c28e1 Add -m 6800 module 2019-01-27 10:37:25 +01:00
jsteube
53f7f4c09d Add -m 13400 module 2019-01-27 10:26:55 +01:00
jsteube
68736ff7a1 Add -m 18300 and -m 18100 module 2019-01-26 21:50:32 +01:00
jsteube
91f6d7c32e Add -m 99999 module 2019-01-26 21:13:53 +01:00
jsteube
380e836cac Add remaining truecrypt modules 2019-01-26 20:27:06 +01:00
jsteube
c9ad96bbf9 Add -m 6213 module 2019-01-26 19:32:01 +01:00
jsteube
f7d2dc8bfc Add -m 6212 module 2019-01-26 19:29:59 +01:00
jsteube
8eb2558a7e Add -m 6211 module and moved some code around 2019-01-26 16:54:29 +01:00
sharmo
646628e188 Add -m 21 module 2019-01-25 21:13:28 +01:00
jsteube
fa5d122fa0 Add unit test for -m 5500 2019-01-25 17:15:53 +01:00
jsteube
ae81ecf11c Add module for -m 12500 2019-01-25 13:31:32 +01:00
jsteube
b729fe04b7 Add module and unit test for -m 11600 2019-01-25 11:24:17 +01:00
jsteube
2bd55bca74 Add missing hook_salt buffer parameter to decoder/encoder function declaration 2019-01-25 11:14:04 +01:00
Jens Steube
280cc63369
Merge branch 'hash-mode-plugin' into m17600_m18000_modes 2019-01-25 01:03:49 +01:00
Jens Steube
5a768138e5
Merge pull request #1889 from sharmony/hash-mode-plugin
add -m 12 module
2019-01-25 00:58:30 +01:00
sharmo
049d514d60 add -m 12 module 2019-01-24 22:33:06 +01:00
mhasbini
c2fdf6172d Add module and unit test for -m 18000
Add -m 17600
2019-01-24 22:31:14 +02:00
mhasbini
48b710e73e Add module and unit test for -m 17900
Add -m 17500
2019-01-24 22:18:02 +02:00
jsteube
83229acd6b Add module and unit test for hash-mode 7100 2019-01-24 15:25:07 +01:00
jsteube
c67287e754 Add module and unit test for hash-mode 15000 2019-01-24 14:05:49 +01:00
jsteube
fc90bfc00c Add module and unit test for hash-mode 15300 2019-01-24 13:43:07 +01:00
jsteube
67627607be Add module and unit test for hash-mode 18200 2019-01-24 12:34:02 +01:00
jsteube
81c3edede3 Add module and unit test for hash-mode 13100 2019-01-24 12:07:24 +01:00
Jens Steube
17fdf8754d
Merge pull request #1885 from 0xbsec/m17400_m17800_modes
Add module and unit test for -m 17800 (& -m 17400 module)
2019-01-24 09:47:46 +01:00
mhasbini
2f89c47ee1 Add module and unit test for -m 17800
Add -m 17400
2019-01-23 23:57:46 +02:00
jsteube
4951816a30 Add module and unit test for hash-mode 7500 2019-01-23 16:29:14 +01:00
jsteube
fcebe9fadb Add module and unit test for hash-mode 1800 2019-01-23 15:05:22 +01:00
jsteube
748a1aac22 Add module and unit test for hash-mode 12000 2019-01-23 11:05:40 +01:00
mhasbini
5497154a89 Add module and unit test for hash-mode 17700 2019-01-22 21:32:31 +02:00
Jens Steube
e1234a4bbc
Merge pull request #1881 from 0xbsec/m17300_module
Add -m 17300 module
2019-01-21 22:14:34 +01:00
mhasbini
9aeb4f602e Migrate correct parsing function 2019-01-21 20:50:03 +02:00
jsteube
8ad3333d2a Add module and unit test for hash-mode 3200 2019-01-21 15:22:58 +01:00
jsteube
4b9b59a3cb Add module 5500 2019-01-21 13:28:52 +01:00
jsteube
b2154b7ed9 Fix use-after-free of hash_name 2019-01-21 10:00:44 +01:00
mhasbini
cc59de6538 Add -m 17300 module 2019-01-20 21:11:15 +02:00
jsteube
0bec0cfb89 Add -m 3000 module and unit test 2019-01-20 12:04:06 +01:00
jsteube
f859fbea66 Add -m 16800 module and unit test 2019-01-20 11:17:48 +01:00
jsteube
355ae342f7 Add -m 2501 module 2019-01-20 10:41:16 +01:00
jsteube
35265d43f3 Update outfile_check 2019-01-20 10:28:54 +01:00
jsteube
06a5e736b9 Add -m 500 unit test 2019-01-19 20:09:32 +01:00
jsteube
da413b4eaa Add -m 5100 module 2019-01-18 22:56:37 +01:00
jsteube
1e31b3b271 Add -m 14000 module 2019-01-16 19:55:54 +01:00
jsteube
47f78199f8 Add -m 600 module 2019-01-15 17:12:13 +01:00
jsteube
bc1dd699e3 Add -m 1500 module 2019-01-15 11:53:59 +01:00
jsteube
2915266205 Add -m 18500 module 2019-01-15 10:35:49 +01:00
jsteube
79c8618025 Fix cross-compiled binaries and modules 2019-01-14 15:15:21 +01:00
jsteube
083d6e1fb2 Refresh dynloader management 2019-01-14 10:11:23 +01:00
jsteube
02fe28fe6c Preparation for -m 501 2019-01-12 23:42:31 +01:00
jsteube
3c794b370b Add -m 500 module 2019-01-12 21:48:18 +01:00
jsteube
676dd1c410 Clean up some migrated code from interface_migrated.c 2019-01-12 21:30:21 +01:00
jsteube
c3c665a338 Add -m 400 module 2019-01-12 15:33:46 +01:00
jsteube
bc22bfee2e Some cleanup 2019-01-12 15:05:33 +01:00
jsteube
17bd76ee62 Use settings from selftest hash for benchmark unless overriden by module hooks 2019-01-12 01:59:18 +01:00
jsteube
74265307fe Automate module interface version management 2019-01-12 00:39:13 +01:00
jsteube
26033e5787 Make use of return length from ascii_digest instead of calling strlen() 2019-01-11 23:11:56 +01:00
jsteube
fcfd07ceb2 Move parse_and_store_generic_salt to shared.c 2019-01-10 20:51:38 +01:00
jsteube
0ae955c5ba With this commit, all hash_mode depending branches from core files are converted into hooks which can be registered on a module level 2019-01-08 15:55:11 +01:00
jsteube
86819c070f Add module_hash_save_binary() and module_hash_init_selftest() 2019-01-07 10:05:50 +01:00
jsteube
54edd16746 Clean up some code 2019-01-06 13:48:41 +01:00
jsteube
0186f025d3 Add support for hash modules to usage.c 2019-01-06 13:23:45 +01:00
jsteube
4c133c4567 Prepare hash_category 2019-01-05 21:02:19 +01:00
jsteube
bbcc8fea29 Use MODULE_DEFAULT in module_init to reference a global default function 2019-01-05 20:17:12 +01:00
jsteube
888da50aad Get rid of hash_mode depending branches in status.c 2019-01-05 19:18:30 +01:00
jsteube
e0deb3f825 Add module_deep_comp_kernel() 2019-01-05 18:44:43 +01:00
jsteube
6cbb5e4992 Refactor kernel_accel, kernel_loops and kernel_threads management in combination with modules 2019-01-05 18:24:37 +01:00
jsteube
9190be8d44 Add forced_kernel_accel function 2019-01-05 17:01:16 +01:00
jsteube
e17c3a54d8 Add hook for unstable_warning 2019-01-04 11:55:06 +01:00
jsteube
5633d6808f Move hash_mode specific code which enforce the use of the JiT compiler to modules 2019-01-04 11:23:48 +01:00
jsteube
e537197184 Add module_build_plain_postprocess() 2019-01-03 15:43:19 +01:00
jsteube
a81a566121 Remove hashcat_ctx requirement in ascii_digest() 2018-12-21 15:58:15 +01:00
jsteube
0421cc6782 Add OPTS_TYPE_PT_ALWAYS_HEXIFY 2018-12-20 16:12:29 +01:00
jsteube
cfc9772e0e Add module_hash_decode_zero_hash() 2018-12-20 12:59:56 +01:00
jsteube
3ad6fab63e Add module_potfile_disable() 2018-12-20 11:04:37 +01:00
jsteube
da30151b70 Get rid of hash_mode in outfile_check.c 2018-12-20 10:43:57 +01:00
jsteube
6928e5bfbe Get rid of hash_mode in outfile_check.c 2018-12-20 10:33:29 +01:00
jsteube
4028bae578 Use dynloader.c instead of dlopen() directly 2018-12-19 16:09:28 +01:00
jsteube
7e1e1d34f8 Use real dlopen() to load the module 2018-12-19 13:43:45 +01:00
jsteube
fa0b8e643d Fix pwdump column names 2018-12-19 11:15:18 +01:00
jsteube
ac55386553 Get rid of hash_mode in selftest.c 2018-12-19 10:58:06 +01:00
jsteube
ea22065b9c Get rid of hash_mode in user_options.c 2018-12-19 10:13:51 +01:00
jsteube
e56c5035aa Get rid of hash_mode in wordlist.c 2018-12-19 09:51:25 +01:00
jsteube
abbfc3d10b Get rid of hash_mode in hlfmt.c 2018-12-18 16:59:00 +01:00
jsteube
4993a85b27 Get rid of hash_mode in dictstat.c 2018-12-18 15:00:00 +01:00
jsteube
3c37daf94b Get rid of hash_mode in autotune.c 2018-12-17 18:49:07 +01:00
jsteube
e2899aa83c Move code to migrate into separate files 2018-12-17 14:47:34 +01:00
jsteube
074947c6db Get rid of hashconfig_get_kernel_threads() and hashconfig_get_kernel_loops() 2018-12-17 13:03:32 +01:00
jsteube
af22a9d1d9 Remove hashconfig_forced_kernel_threads() 2018-12-17 12:42:07 +01:00
jsteube
6e794841e3 Add default_benchmark_esalt(), default_benchmark_hook_salt(), default_benchmark_salt() 2018-12-17 11:16:53 +01:00
jsteube
e79fa9c22f Simplify use of default functions 2018-12-16 19:01:05 +01:00
jsteube
ca169a890c Add more global default value functions 2018-12-15 19:46:55 +01:00
jsteube
1d8c31a7e2 Add more global default value functions 2018-12-15 19:04:05 +01:00
jsteube
a4fb31e8f7 Add more global default value functions 2018-12-15 16:24:37 +01:00
jsteube
3848c73f80 Add decoder_apply_optimizer ()
Add encoder_apply_optimizer ()
Add decoder_apply_options ()
Add encoder_apply_options ()
2018-12-15 15:22:40 +01:00
Jens Steube
bd37903131 Add hook_size, tmp_size, hook_salt_size 2018-12-14 17:18:17 +01:00
Jens Steube
9cf5d9cd6b
Merge pull request #1823 from hashcat/master
Backports from master
2018-12-14 15:33:53 +01:00
Jens Steube
3aecd150f9 Call module_hash_encode() in ascii_digest() 2018-12-14 15:29:57 +01:00
R. Yushaev
b5a7e967c1 Add support for Open Document Format 1.1
Contains a kernel for the ODF 1.1 encryption implemented in OpenOffice.
The algorithm uses a SHA-1 checksum, a PBKDF2-HMAC-SHA1 key derivation
with 1024 iterations and Blowfish-CFB encryption.

Valid hashes can be extracted with the libreoffice2john.py script,
available from the John the Ripper Jumbo repository at
https://github.com/magnumripper/JohnTheRipper/blob/bleeding-jumbo/run/libreoffice2john.py

You have to remove the filename suffix at the end of the hash before
passing it to hashcat. Also see 'hashcat -m18600 --example-hashes'.

You can leave the filename prefix if you use the --username option to
process those hashes.

 - Add hash-mode 18600 (Open Document Format (ODF) 1.1 (SHA-1, Blowfish))
 - Tests: add hash-mode 18600 (Open Document Format (ODF) 1.1 (SHA-1, Blowfish))
2018-12-14 13:23:52 +01:00
Jens Steube
222d76f01e Replace parse_func() with module_hash_decode() 2018-12-14 12:22:13 +01:00
Jens Steube
ec3f3cd7b6 Switch from size_t to int 2018-12-14 12:21:14 +01:00
Jens Steube
42c3ab0485
Merge pull request #1820 from hashcat/master
backports from master
2018-12-13 14:22:28 +01:00
Sein Coray
a70a0513bf
Added hash mode 18500 sha1(md5(md5($pass)))
closes hashcat/hashcat#1652
2018-12-10 16:11:11 +01:00
Jens Steube
c6dcb1b8ae
Merge pull request #1809 from hashcat/master
Backports from master
2018-12-09 20:41:00 +01:00
R. Yushaev
6a5b0c821e Add support for Open Document Format 1.2
Contains a kernel for the latest ODF 1.2 encryption implemented in
LibreOffice. The algorithm uses a SHA-256 checksum, a PBKDF2-HMAC-SHA1
key derivation with 100000 iterations and key stretching and AES-CBC
encryption.

Valid hashes can be extracted with the libreoffice2john.py script,
available from the John the Ripper Jumbo repository at
https://github.com/magnumripper/JohnTheRipper/blob/bleeding-jumbo/run/libreoffice2john.py

You have to remove the filename suffix at the end of the hash before
passing it to hashcat. Also see 'hashcat -m18400 --example-hashes'.

You can leave the filename prefix if you use the --username option to
process those hashes.

 - Add hash-mode 18400 (Open Document Format (ODF) 1.2 (SHA-256, AES))
 - Tests: add hash-mode 18400 (Open Document Format (ODF) 1.2 (SHA-256, AES))
2018-12-06 18:00:09 +01:00
Jens Steube
55add7c60e The goal of this branch to develop a plugin like interface for hashcat kernels.
The modification of existing core source files to add new hashcat kernels conflicts with the idea of having private hashcat kernel repositories especially when backporting latest hashcat core changes and new features.
The final outcome of this should be a plugin format that does not require modifications on the core soruce files.
Also convert all existing hash-modes to hashcat modules.
We'll start with dynamic loading the modules at runtime rather than linking them at compile time.
This will require some extra code for different OS types but should beneficial on a long term.
This commit add some first ideas of how such modules could look like, however there's no dynamic loading interface yet.
Next steps will be removing all hash-mode depending special code from source files and move them to the modules.
Finally merge with master.
2018-12-06 14:02:10 +01:00