1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-12-04 22:08:40 +00:00
Commit Graph

218 Commits

Author SHA1 Message Date
jsteube
62b97a6fe6 Move loading rules into outer loop 2016-09-24 12:05:56 +02:00
jsteube
ebe9f1c07f Prepare for rules_ctx_t 2016-09-24 11:08:35 +02:00
jsteube
e6f083b708 Add all defaults for user commandline parameters to user_options.h; Prepare user commandline parameter struct for easier handling of functions calls that require them 2016-09-20 16:04:22 +02:00
jsteube
caeedd5646 Move more code from hashcat.c to opencl.c related to opencl device initialization and shutdown 2016-09-17 17:05:01 +02:00
jsteube
dcdd0d89cd Move thread_monitor() to monitor.c 2016-09-15 04:29:22 +02:00
jsteube
3f5ce6bb8e Continue move thread_calc() and thread_calc_stdin() to dispatch.c 2016-09-15 04:17:19 +02:00
jsteube
bc75ba70a1 Move tons of functions from hashcat.c into hash_management, interface, opencl, restore, status and weak_hash sources 2016-09-14 16:07:24 +02:00
jsteube
3daf0af480 Added docs/credits.txt
Added docs/team.txt
2016-09-11 22:20:15 +02:00
jsteube
2a6e03510b Add template files 2016-09-11 11:42:19 +02:00
jsteube
b7906f6b93 Move outfile specific functions into their own source file 2016-09-10 17:35:58 +02:00
jsteube
63b47eebc9 Prepare move potfile specific functions into their own source file 2016-09-09 23:17:43 +02:00
jsteube
f006542317 Prepare move dictstat specific functions into their own source file 2016-09-08 18:27:53 +02:00
jsteube
e304eed8c5 Move wordlist specific functions into their own source file 2016-09-08 16:32:24 +02:00
jsteube
18534fcdeb Move stdout specific functions into their own source file 2016-09-08 16:01:24 +02:00
jsteube
a8e5172f16 Move filename specific functions into their own source file 2016-09-08 14:44:02 +02:00
jsteube
da8e9d50d9 Move hlfmt specific functions into their own source file 2016-09-08 14:36:15 +02:00
jsteube
51a059a606 Move status specific functions into their own source file 2016-09-08 09:21:25 +02:00
jsteube
9eb47153d4 Replace all #ifdef with #if defined (...) for convention 2016-09-07 22:29:57 +02:00
jsteube
a56855e355 Move restore specific functions into their own source file 2016-09-07 22:01:34 +02:00
jsteube
1fc22dba03 Move bitmap specific functions into their own source file 2016-09-07 21:13:53 +02:00
jsteube
5c5f3264dd Older gcc do not accept _GNU_SOURCE as a replacement for -std=c99 2016-09-07 20:41:57 +02:00
jsteube
25726e4f4e Remove some (hopefully) redundant macros and compiler options 2016-09-07 20:30:14 +02:00
jsteube
8dd57b715b Create real opencl.c to better distinguish between opencl helper functions and library handling functions 2016-09-07 15:13:50 +02:00
jsteube
3ba5c743f8 Move affinity specific functions into their own source file 2016-09-07 11:16:31 +02:00
jsteube
3ed4bfd237 Move tuningdb specific functions into their own source file 2016-09-06 19:44:27 +02:00
jsteube
b8e47c2ba2 Move locking specific functions into their own source file 2016-09-06 19:08:46 +02:00
jsteube
c3fe5b40b1 Move folder specific functions into their own source file 2016-09-06 18:23:26 +02:00
jsteube
176fcb56b1 Reorder objects in Makefile 2016-09-06 15:33:57 +02:00
jsteube
1902e6c2eb Create real cpu_crc32.c and rp_cpu.c 2016-09-06 15:28:56 +02:00
jsteube
0a5759ef1c Move usage specific functions into their own source file 2016-09-06 14:11:03 +02:00
jsteube
21666f77b7 Move maskprocessor and statusprocessor specific functions into their own source file 2016-09-06 13:52:26 +02:00
jsteube
d15ae38723 Move hwmon specific functions into their own source file 2016-09-06 13:29:50 +02:00
jsteube
5dd5c15966 Move tty_*() specific functions into their own source file 2016-09-06 13:16:38 +02:00
jsteube
eb5e192df5 Move logfile() specific functions into their own source file 2016-09-06 13:05:49 +02:00
jsteube
3dc77ced14 More preparation for easier integration of:
* https://github.com/hashcat/hashcat/pull/485
* https://github.com/hashcat/hashcat/pull/486
2016-09-06 11:49:26 +02:00
jsteube
4b79ccd416 Preparation for easier integration of:
* https://github.com/hashcat/hashcat/pull/485
* https://github.com/hashcat/hashcat/pull/486
2016-09-05 21:47:26 +02:00
jsteube
ff376ce112 Moved bit operations out of shared.[hc] and created bitops.[hc]
based on 1aafa13e09
2016-09-05 14:12:31 +02:00
philsmd
04baf0ee54
added additional forward slash between folder and file (to make sure) 2016-08-18 15:48:44 +02:00
philsmd
ab1005ab1a
fixes #425: flexible way of searching for CRT_glob.o on linux and cygwin 2016-08-18 15:16:10 +02:00
Jens Steube
e7214abee3 Do not remove *.dictstat with make clean 2016-07-09 09:54:11 +02:00
jsteube
49f693a1c9 Replace LINUX macro with compiler predefined macro __linux__ 2016-07-08 23:23:16 +02:00
jsteube
96f2ade4bb Replace DARWIN macro with __APPLE__
As discussed on https://github.com/hashcat/hashcat/pull/409
2016-07-08 23:14:57 +02:00
Nikolai Lifanov
f1960ec73c use native compiler on FreeBSD 2016-07-05 15:14:11 -04:00
Nikolai Lifanov
dd66aba33f Revert "make native build play well with external build systems"
This reverts commit 61efadb684.
2016-07-05 15:09:40 -04:00
Nikolai Lifanov
61efadb684 make native build play well with external build systems 2016-07-05 14:59:46 -04:00
Nikolai Lifanov
4a598af78c add FreeBSD Makefile target 2016-07-05 14:58:28 -04:00
anthraxx
7f8aaf7430 extend global CFLAGS and LDFLAGS to aid distro packaging
This preserves globally defined CFLAGS and LDFLAGS and simply
extends those variables to aid distro based packaging toolchains
and predefined distro wide defaults like SSP, relro etc.
2016-07-04 21:01:51 +02:00
Josh de Kock
86cf95e878 Makefile: remove .app for OSX 2016-07-02 00:11:37 +01:00
Josh de Kock
75a38b2e2e Makefile: fix sed on OSX
sed on OSX doesn't have -r so default to the usage of GNU sed
2016-07-02 00:08:12 +01:00
Unix-Ninja
2188a01ae9 Refactor OSX preprocessor constants to read 'DARWIN' 2016-06-27 08:13:50 -04:00
jsteube
9a970c0955 Added support for XNVCTRL on Linux to add support for --gpu-temp-retain for NVidia GPU 2016-06-18 10:59:58 +02:00
jsteube
aa78cf2c74 Fix sed call in Makefile 2016-06-11 11:39:49 +02:00
jsteube
f600b9dd59 Get rid of cp in Makefile install target 2016-06-11 10:52:00 +02:00
philsmd
eb08afa543
makefile: indentation fix (replace tabs with spaces) + comments about cygwin builds 2016-06-11 08:08:22 +02:00
Jens Steube
f30629b21a Merge pull request #369 from hlein/DESTDIR
Added DESTDIR support
2016-06-10 23:54:46 +02:00
Jens Steube
10b086a31d Merge pull request #364 from neheb/patch-2
Add cygwin support
2016-06-10 23:51:04 +02:00
Mangix
37ff7fbc11
Small fix for < 10 Windows 2016-06-10 14:14:22 -07:00
Hank Leininger
8254e2e3c4
Make sure the INSTALL_FOLDER path exists.
This is only likely to come up when using DESTDIR to point to an
alternate directory tree, or if the user has pointed at some
exotic PREFIX for some reason, but should be harmless in the
normal case.
2016-06-10 15:29:10 -04:00
Hank Leininger
8a2bfff917
Added DESTDIR support.
This is a common thing for distros or build environments that want
to install to a sandbox location as part of testing or package-building.
It should be a harmless/no-op change when make is called without
DESTDIR defined.
2016-06-10 15:20:53 -04:00
Hank Leininger
ecb7ba6f3e
Removed obsolete entries from install: target.
These files have been renamed+moved under OpenCL, and are already
installed from there elsewhere in the install: target.
2016-06-10 15:10:50 -04:00
jsteube
b875cb51ac Use CRT_glob.o to enable commandline globbing on windows binaries 2016-06-07 12:39:41 +02:00
neheb
a8bebb4a55 Add cygwin support
Doesn't actually build but "make win64" or "make win32" still works.

Actually, why is the operating system even checked in the makefile?
2016-06-05 13:22:38 -07:00
jsteube
829289b109 Fix calling conventions for external libraries (mingw doesn't handle it alone); Fix first print of PROMPT after autotune; 2016-06-04 00:54:28 +02:00
jsteube
e9960709b5 Makefile fix 2016-06-03 13:05:18 +02:00
jsteube
040bbd416a More nvapi preparations and display skip reason in benchmark 2016-06-03 11:33:59 +02:00
jsteube
3c6296801a Prepare for reintegration of nvapi for checking thermal limit 2016-06-02 14:20:15 +02:00
jsteube
d89a8a68d6 Finally got rid of NvAPI on Windows, replace with NVML 2016-05-31 22:48:58 +02:00
jsteube
19e36694da Added support for --gpu-temp-retain for nvidia devices on windows
Disabled retain support by default, you can reactive it using --gpu-temp-retain
Completely get rid of HAVE_ADL, HAVE_NVML and HAVE_NVAPI in sources
2016-05-30 00:05:46 +02:00
Jens Steube
2899f53a15 Move files from include/ to OpenCL/ if they are used within kernels
Rename includes in OpenCL so that it's easier to recognize them as such
2016-05-25 23:04:26 +02:00
anthraxx
3828ea354c fallback for Makefile version if its not a git checkout (tarball) (refix)
This makes use of git export-subst to insert the current ref names.
If git describe fails because because an extracted tarball is used
to build from source then the fallback will get called and the last
part of the ref names will be used for the version variable.

if it is a git checkout and HEAD is the current tag:

    v3.00-beta

If it is a git checkout and HEAD is ahead of the latest tag:

    v3.00-beta-36-g24a6095

If it is a tarball from a tag created via 'git archive HEAD --format=tar':

    v3.00-beta

If it is a tarball from the master created via 'git archive HEAD --format=tar':

    master

NOTE: If a tarball is manually created (without git archive) then the
version will "$Format:%D$", however before this commit it would not be
possible to build a release tarball at all (because git describe would fail)

Tarballs that you manually want to distribute on your website need to be either
downloaded from github and re-uploaded or need to be create via git-archive:

gzip:

git archive --format=tar HEAD|gzip > oclHashcat.tar.gz

bzip2:

git archive --format=tar HEAD|bzip2 > oclHashcat.tar.bz2

You can also use a tag for git archive like:

git archive --format=tar v2.01|bzip2 > oclHashcat-2.01.tar.bz2
2016-05-19 14:03:58 +02:00
Jens Steube
a55c051c28 Revert "fallback for Makefile version if its not a git checkout (tarball)" 2016-05-19 11:10:16 +02:00
anthraxx
a4e1692647 fallback for Makefile version if its not a git checkout (tarball)
This makes use of git export-subst to insert the current ref names.
If git describe fails because because an extracted tarball is used
to build from source then the fallback will get called and the last
part of the ref names will be used for the version variable.

if it is a git checkout and HEAD is the current tag:
- v3.00-beta

If it is a git checkout and HEAD is ahead of the latest tag:
- v3.00-beta-36-g24a6095

If it is a tarball from a tag created via 'git archive HEAD --format=tar':
- v3.00-beta

If it is a tarball from the master created via 'git archive HEAD --format=tar':
- master

NOTE: If a tarball is manually created (without git archive) then the
version will "$Format:%D$", however before this commit it would not be
possible to build a release tarball that is not a git checkout (because
git describe would fail)
2016-05-18 19:20:42 +02:00
jsteube
aefd3b03a3 Use VERSION_TAG only, but uncut 2016-05-11 12:19:02 +02:00
jsteube
e47030ed7d Prepare to rename project into hashcat
This release markes the fusion of "hashcat" and "oclHashcat" into "hashcat".
It combines all features of all hashcat projects in one project.
2016-05-10 19:07:07 +02:00
Jens Steube
d7f8b356ef Fix for #265: hashcat_tuning.hctab wasn't installed automatically 2016-03-10 19:20:05 +01:00
philsmd
6636cc144d #245: Makefile DEBUG fix 2016-03-06 12:03:08 +01:00
magnum
a5be8a75ed Allow and support vector-width 16, which is current maximum for
OpenCL. Closes #226.
2016-02-18 08:51:45 +01:00
Jens Steube
e01038083c Update Makefile and BUILD.md 2016-02-04 09:44:52 +01:00
Gabriele 'matrix' Gristina
f3407cd7f4 HWMon mod 2016-02-02 01:14:33 +01:00
Gabriele 'matrix' Gristina
d120ede655 Update ADL Library Loader 2016-01-31 23:48:38 +01:00
jsteube
21525b74e1 Remove more unnecessary libOpenCL*.a related stuff 2016-01-31 22:01:32 +01:00
Gabriele 'matrix' Gristina
dcb4888dd5 Remove unnecessary libOpenCL*.a from Makefile 2016-01-31 19:48:40 +01:00
Jens Steube
bfe3f148d7 As long as we depend on NVAPI for windows we also need to add a path to its includes 2016-01-27 20:09:17 +01:00
magnum
115d2b6a5a Drop dependencies on non-distributable ADL/NVML headers. The needed glue
is copied into our respective local headers. Should close #120.
2016-01-27 18:48:54 +01:00
Jens Steube
cae457df0c Merge pull request #167 from gm4tr1x/issue84
Issue84
2016-01-27 18:43:18 +01:00
Gabriele 'matrix' Gristina
5bae9de3a3 Implemented OpenCL library loader 2016-01-26 21:40:49 +01:00
Gabriele 'matrix' Gristina
dcc4b5a60f Added custom OSX kernel loops and gpu accel default values
Disabled some not yet worked hash types in OSX
2016-01-24 22:48:01 +01:00
Jens Steube
0997ae029e Remove NO-BREAK SPACE character (utf8) from sources 2016-01-24 17:08:49 +01:00
Jens Steube
add18eaa6d Fix for last commit 2016-01-21 10:22:57 +01:00
Jens Steube
bfc4495bd3 Expanded version information as discussed in https://github.com/hashcat/oclHashcat/issues/138 2016-01-21 10:17:22 +01:00
Gabriele 'matrix' Gristina
5da79e4411 Added support for build without ADL/NVML/NVAPI (issue #120)
Added support for build OSX native binaries (issue #63)
2016-01-20 20:55:09 +01:00
Jens Steube
b35d2dd2eb Fix native compiler 2016-01-15 17:24:51 +01:00
Jens Steube
05505030b8 Fix CFLAGS 2016-01-15 17:24:20 +01:00
Jens Steube
63e06f582b Prepare fix for datatypes, not final 2016-01-15 17:16:43 +01:00
Jens Steube
7bfee268d4 Fixed some heap buffer overflow 2016-01-14 20:30:38 +01:00
philsmd
7081e3cdf6 Makefile: remove kernels/ directory when running make clean 2016-01-13 18:16:56 +01:00
jsteube
331188167c Replace the substring GPU to a more appropriate "device" or "kernel" substring depending on the context 2016-01-05 08:26:44 +01:00
philsmd
f2b8f008c0 pr #53 did not copy the example .hash and .dict files to the doc folder 2016-01-03 23:29:39 +01:00
philsmd
d8ac4c3bbc install also the example scripts, place them into the doc folder 2016-01-03 22:01:02 +01:00
Jens Steube
0952a4dfd3 Fix CFLAGS_CROSS_LINUX in Makefile 2016-01-03 18:50:02 +01:00
Jens Steube
dc13c2fc71 Switched to Khronos OSS OpenCL reference implementation for building
For detailed information see: https://github.com/hashcat/oclHashcat/issues/40
2016-01-03 13:17:14 +01:00
jsteube
61744662c0 Fix path to includes 2016-01-03 01:56:41 +01:00
jsteube
5f7c47b461 Fix path to includes 2016-01-03 01:48:05 +01:00
jsteube
d008a45f3c Activate reordering or files to help integration into linux distributions
Details can be found here: https://github.com/hashcat/oclHashcat/issues/20
2016-01-03 00:40:31 +01:00
jsteube
2be8f5f982 - Added Makefile target for native compilation
- Moved rules_optimize tool to hashcat-utils
2016-01-02 17:42:47 +01:00
philsmd
fc65b6fd44 issue #38: NVIDIA SDK is not needed anymore, the lib is dynamically loaded on NVidia systems 2016-01-01 17:41:03 +01:00
jsteube
e2412c9b10 We do not depend on CUDA any longer, so get rid of it :) 2015-12-21 12:20:08 +01:00
jsteube
80f86c52a1 Cleanup makefile
Remove unused CUDA library defs
2015-12-15 19:18:45 +01:00
jsteube
4a0c47ca08 It's safe now to use AMD's OpenCL includes, tested on NV 2015-12-15 18:58:02 +01:00
philsmd
cff683eac1 change in library loading: libnvidia-ml now does load dynamically only on NVidia systems 2015-12-15 20:34:07 +01:00
jsteube
0bf4e3c34a - Dropped all vector code since new GPU's are all scalar, makes the code much easier
- Some performance on low-end GPU may drop because of that, but only for a few hash-modes
- Dropped scalar code (aka warp) since we do not have any vector datatypes anymore
- Renamed C++ overloading functions memcat32_9 -> memcat_c32_w4x4_a3x4
- Still need to fix kernels to new function names, needs to be done manually
- Temperature Management needs to be rewritten partially because of conflicting datatypes names
- Added code to create different codepaths for NV on AMD in runtime in host (see data.vendor_id)
- Added code to create different codepaths for NV on AMD in runtime in kernels (see IS_NV and IS_AMD)
- First tests working for -m 0, for example
- Great performance increases in general for NV so far
- Tested amp_* and markov_* kernel
- Migrated special NV optimizations for rule processor
2015-12-15 12:04:22 +01:00
Jens Steube
1537390fae Prepare reordering or files to help integration into linux distributions as discussed in https://github.com/hashcat/oclHashcat/issues/20
TODOS:
- Let oclHashcat actually use the new paths
- Find a better way for native compilation
- Replace /bin/cp with /usr/bin/install where it has to copy files recursive
2015-12-13 12:21:36 +01:00
philsmd
c15f0d6146 issue #16: use just "deps" instead of "hashcat-deps" as directory name 2015-12-09 15:55:06 +01:00
philsmd
29547c4f9b issue #14: move /opt/hashcat-deps/ to [git_clone_dir]/hascat-deps/ 2015-12-09 13:33:21 +01:00
philsmd
ffcf763b13 typo fixed in Makefile 2015-12-06 18:48:20 +01:00
Jens Steube
ab66fa1772 Revert "Remove NPROCS from Makefile, make is able to automatically detect the optimal number of parallel threads"
Problem here is; This process requires alot of memory. If host memory is too small it will segfault somewhere inside AMD's OpenCL runtime library. Therefore it's better to stick to NPROCS as part of a workaround.

This reverts commit e5adccbf38.
2015-12-06 13:09:17 +01:00
Jens Steube
e5adccbf38 Remove NPROCS from Makefile, make is able to automatically detect the optimal number of parallel threads 2015-12-05 14:30:09 +01:00
Jens Steube
5065474b4e Initial commit 2015-12-04 15:47:52 +01:00