/** * Author......: See docs/credits.txt * License.....: MIT */ #ifndef _OPENCL_H #define _OPENCL_H #include #include static const char CL_VENDOR_AMD[] = "Advanced Micro Devices, Inc."; static const char CL_VENDOR_AMD_USE_INTEL[] = "GenuineIntel"; static const char CL_VENDOR_APPLE[] = "Apple"; static const char CL_VENDOR_INTEL_BEIGNET[] = "Intel"; static const char CL_VENDOR_INTEL_SDK[] = "Intel(R) Corporation"; static const char CL_VENDOR_MESA[] = "Mesa"; static const char CL_VENDOR_NV[] = "NVIDIA Corporation"; static const char CL_VENDOR_POCL[] = "The pocl project"; int gidd_to_pw_t (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param, const u64 gidd, pw_t *pw); int choose_kernel (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param, const u32 highest_pw_len, const u32 pws_cnt, const u32 fast_iteration, const u32 salt_pos); int run_kernel (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param, const u32 kern_run, const u32 num, const u32 event_update, const u32 iteration); int run_kernel_mp (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param, const u32 kern_run, const u32 num); int run_kernel_tm (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param); int run_kernel_amp (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param, const u32 num); int run_kernel_memset (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param, cl_mem buf, const u32 value, const u32 num); int run_kernel_bzero (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param, cl_mem buf, const size_t size); int run_copy (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param, const u32 pws_cnt); int run_cracker (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param, const u32 pws_cnt); int opencl_ctx_init (hashcat_ctx_t *hashcat_ctx); void opencl_ctx_destroy (hashcat_ctx_t *hashcat_ctx); int opencl_ctx_devices_init (hashcat_ctx_t *hashcat_ctx, const int comptime); void opencl_ctx_devices_destroy (hashcat_ctx_t *hashcat_ctx); void opencl_ctx_devices_update_power (hashcat_ctx_t *hashcat_ctx); void opencl_ctx_devices_kernel_loops (hashcat_ctx_t *hashcat_ctx); int opencl_session_begin (hashcat_ctx_t *hashcat_ctx); void opencl_session_destroy (hashcat_ctx_t *hashcat_ctx); void opencl_session_reset (hashcat_ctx_t *hashcat_ctx); int opencl_session_update_combinator (hashcat_ctx_t *hashcat_ctx); int opencl_session_update_mp (hashcat_ctx_t *hashcat_ctx); int opencl_session_update_mp_rl (hashcat_ctx_t *hashcat_ctx, const u32 css_cnt_l, const u32 css_cnt_r); #endif // _OPENCL_H