2015-12-04 14:47:52 +00:00
|
|
|
/**
|
2016-09-11 20:20:15 +00:00
|
|
|
* Author......: See docs/credits.txt
|
2015-12-04 14:47:52 +00:00
|
|
|
* License.....: MIT
|
|
|
|
*/
|
|
|
|
|
2016-09-06 16:44:05 +00:00
|
|
|
#ifndef _COMMON_H
|
|
|
|
#define _COMMON_H
|
2015-12-04 14:47:52 +00:00
|
|
|
|
2016-09-21 14:07:49 +00:00
|
|
|
#define PROGNAME "hashcat"
|
|
|
|
|
2016-11-29 21:39:22 +00:00
|
|
|
#if defined (__linux__) || defined (__CYGWIN__)
|
2016-09-07 20:29:57 +00:00
|
|
|
#define _POSIX
|
|
|
|
#elif defined (__APPLE__)
|
|
|
|
#define _POSIX
|
|
|
|
#elif defined (__FreeBSD__)
|
|
|
|
#define _POSIX
|
|
|
|
#elif defined (_WIN32) || defined (_WIN64)
|
2016-10-01 11:37:09 +00:00
|
|
|
#define _WIN 1
|
|
|
|
#define WIN 1
|
2016-12-03 05:32:18 +00:00
|
|
|
#define _POSIX_THREAD_SAFE_FUNCTIONS 200112L //for *time_r functions
|
2016-09-07 20:29:57 +00:00
|
|
|
#else
|
|
|
|
#error Your Operating System is not supported or detected
|
|
|
|
#endif
|
|
|
|
|
2015-12-04 14:47:52 +00:00
|
|
|
#define _GNU_SOURCE
|
|
|
|
#define _FILE_OFFSET_BITS 64
|
|
|
|
|
2016-10-25 10:25:53 +00:00
|
|
|
#define NOMINMAX 1
|
2016-06-14 08:18:42 +00:00
|
|
|
|
2016-01-15 16:16:43 +00:00
|
|
|
#define MIN(a,b) (((a) < (b)) ? (a) : (b))
|
|
|
|
#define MAX(a,b) (((a) > (b)) ? (a) : (b))
|
2015-12-15 17:41:11 +00:00
|
|
|
|
2016-05-01 16:34:59 +00:00
|
|
|
#define CEIL(a) ((a - (int) (a)) > 0 ? a + 1 : a)
|
|
|
|
|
2016-09-07 20:29:57 +00:00
|
|
|
#if defined (__APPLE__)
|
2016-09-05 19:47:26 +00:00
|
|
|
#define __stdcall
|
|
|
|
#endif
|
|
|
|
|
2016-10-01 11:40:09 +00:00
|
|
|
#if defined (__MSC_VER)
|
|
|
|
#define HC_API_CALL __cdecl
|
2016-11-29 21:39:22 +00:00
|
|
|
#elif defined (_WIN32) || defined (__WIN32__)
|
2016-09-08 07:21:25 +00:00
|
|
|
#define HC_API_CALL __stdcall
|
|
|
|
#else
|
|
|
|
#define HC_API_CALL
|
|
|
|
#endif
|
|
|
|
|
2016-09-07 20:29:57 +00:00
|
|
|
#if defined (_WIN)
|
2016-09-05 19:47:26 +00:00
|
|
|
#define WIN32_LEAN_AND_MEAN
|
|
|
|
#endif
|
2016-09-06 16:44:05 +00:00
|
|
|
|
2016-10-01 11:42:40 +00:00
|
|
|
/* The C++ standard denies redefinition of keywords,
|
|
|
|
but this is nededed for VS compiler which doesn't have inline keyword but has __inline
|
|
|
|
*/
|
|
|
|
#ifndef __cplusplus
|
|
|
|
#if defined (_MSC_VER)
|
|
|
|
#define inline __inline
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
2016-10-25 10:25:53 +00:00
|
|
|
#define MAYBE_UNUSED __attribute__((unused))
|
|
|
|
|
|
|
|
// config section
|
|
|
|
// do not try to simply change this, it will not work
|
|
|
|
|
|
|
|
#define PW_MIN 0
|
|
|
|
#define PW_MAX 54
|
|
|
|
#define PW_MAX1 (PW_MAX + 1)
|
|
|
|
#define PW_DICTMAX 31
|
|
|
|
#define PW_DICTMAX1 (PW_DICTMAX + 1)
|
|
|
|
|
2016-10-29 11:51:32 +00:00
|
|
|
#define HCBUFSIZ_TINY 0x1000
|
2016-10-25 10:25:53 +00:00
|
|
|
#define HCBUFSIZ_LARGE 0x50000
|
|
|
|
|
|
|
|
#define CPT_CACHE 0x20000
|
|
|
|
#define PARAMCNT 64
|
|
|
|
#define DEVICES_MAX 128
|
|
|
|
#define EXEC_CACHE 128
|
|
|
|
#define SPEED_CACHE 128
|
|
|
|
#define SPEED_MAXAGE 4096
|
|
|
|
#define BLOCK_SIZE 64
|
|
|
|
#define EXPECTED_ITERATIONS 10000
|
|
|
|
|
2016-09-08 12:22:10 +00:00
|
|
|
#if defined (_WIN)
|
|
|
|
#define EOL "\r\n"
|
|
|
|
#else
|
|
|
|
#define EOL "\n"
|
|
|
|
#endif
|
|
|
|
|
2016-09-06 16:44:05 +00:00
|
|
|
#endif // _COMMON_H
|