Move files from include/ to OpenCL/ if they are used within kernels
[hashcat.git] / include / types.h
index ef31a3e..373bd6c 100644 (file)
@@ -64,6 +64,10 @@ typedef struct
   uint eapol[64];
   int  eapol_size;
   int  keyver;
+  u8   orig_mac1[6];
+  u8   orig_mac2[6];
+  u8   orig_nonce1[32];
+  u8   orig_nonce2[32];
 
 } wpa_t;
 
@@ -144,7 +148,7 @@ typedef struct
   /* key-file handling */
   u32 keyfile_len;
   u32 keyfile[8];
-  
+
   u32 final_random_seed[8];
   u32 transf_random_seed[8];
   u32 enc_iv[4];
@@ -152,7 +156,7 @@ typedef struct
 
   /* specific to version 1 */
   u32 contents_len;
-  u32 contents[12500];
+  u32 contents[75000];
 
   /* specific to version 2 */
   u32 expected_bytes[8];
@@ -164,6 +168,7 @@ typedef struct
   uint salt_buf[16];
   uint data_buf[112];
   uint keyfile_buf[16];
+  uint signature;
 
 } tc_t;
 
@@ -252,6 +257,32 @@ typedef struct
 
 } oldoffice34_t;
 
+typedef struct
+{
+  u32 salt_buf[128];
+  u32 salt_len;
+
+  u32 pc_digest[5];
+  u32 pc_offset;
+
+} pstoken_t;
+
+typedef struct
+{
+  u32 type;
+  u32 mode;
+  u32 magic;
+  u32 salt_len;
+  u32 salt_buf[4];
+  u32 verify_bytes;
+  u32 compress_length;
+  u32 data_len;
+  u32 data_buf[2048];
+  u32 auth_len;
+  u32 auth_buf[4];
+
+} zip2_t;
+
 typedef struct
 {
   uint P[256];
@@ -828,6 +859,9 @@ typedef struct
 
 typedef struct
 {
+  uint salt_pos;
+  uint digest_pos;
+  uint hash_pos;
   uint gidvid;
   uint il_pos;
 
@@ -901,6 +935,7 @@ struct __hc_device_param
   u64     device_maxmem_alloc;
   u64     device_global_mem;
   u32     device_maxclock_frequency;
+  size_t  device_maxworkgroup_size;
 
   uint    vector_width;
 
@@ -914,20 +949,20 @@ struct __hc_device_param
   uint    kernel_power;
   uint    kernel_power_user;
 
-  uint    size_pws;
-  uint    size_tmps;
-  uint    size_hooks;
-  uint    size_bfs;
-  uint    size_combs;
-  uint    size_rules;
-  uint    size_rules_c;
-  uint    size_root_css;
-  uint    size_markov_css;
-  uint    size_digests;
-  uint    size_salts;
-  uint    size_shown;
-  uint    size_results;
-  uint    size_plains;
+  size_t  size_pws;
+  size_t  size_tmps;
+  size_t  size_hooks;
+  size_t  size_bfs;
+  size_t  size_combs;
+  size_t  size_rules;
+  size_t  size_rules_c;
+  size_t  size_root_css;
+  size_t  size_markov_css;
+  size_t  size_digests;
+  size_t  size_salts;
+  size_t  size_shown;
+  size_t  size_results;
+  size_t  size_plains;
 
   FILE   *combs_fp;
   comb_t *combs_buf;
@@ -940,8 +975,6 @@ struct __hc_device_param
   u64     words_off;
   u64     words_done;
 
-  uint   *result;
-
   uint    outerloop_pos;
   uint    outerloop_left;
 
@@ -951,11 +984,11 @@ struct __hc_device_param
   uint    exec_pos;
   double  exec_ms[EXEC_CACHE];
 
+  // this is "current" speed
+
   uint    speed_pos;
   u64     speed_cnt[SPEED_CACHE];
-  float   speed_ms[SPEED_CACHE];
-
-  hc_timer_t speed_rec[SPEED_CACHE];
+  double  speed_ms[SPEED_CACHE];
 
   hc_timer_t timer_speed;
 
@@ -1226,6 +1259,8 @@ typedef struct
   uint    scrypt_tmto;
   uint    segment_size;
   char   *truecrypt_keyfiles;
+  char   *veracrypt_keyfiles;
+  uint    veracrypt_pim;
   uint    workload_profile;
 
   uint    hash_mode;
@@ -1287,7 +1322,7 @@ typedef struct
   hc_timer_t timer_running;         // timer on current dict
   hc_timer_t timer_paused;          // timer on current dict
 
-  float   ms_paused;                // timer on current dict
+  double  ms_paused;                // timer on current dict
 
   /**
     * hash_info and username