@ -39,6 +39,15 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
device_param - > kernel_params [ 18 ] = & device_param - > hip_d_st_esalts_buf ;
device_param - > kernel_params [ 18 ] = & device_param - > hip_d_st_esalts_buf ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
device_param - > kernel_params [ 15 ] = device_param - > metal_d_st_digests_buf ;
device_param - > kernel_params [ 17 ] = device_param - > metal_d_st_salts_buf ;
device_param - > kernel_params [ 18 ] = device_param - > metal_d_st_esalts_buf ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
device_param - > kernel_params [ 15 ] = & device_param - > opencl_d_st_digests_buf ;
device_param - > kernel_params [ 15 ] = & device_param - > opencl_d_st_digests_buf ;
@ -105,6 +114,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_pws_buf , & pw , 1 * sizeof ( pw_t ) , device_param - > hip_stream ) = = - 1 ) return - 1 ;
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_pws_buf , & pw , 1 * sizeof ( pw_t ) , device_param - > hip_stream ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( hc_mtlMemcpyHtoD ( hashcat_ctx , device_param - > metal_command_queue , device_param - > metal_d_pws_buf , 0 , & pw , 1 * sizeof ( pw_t ) ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_pws_buf , CL_FALSE , 0 , 1 * sizeof ( pw_t ) , & pw , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_pws_buf , CL_FALSE , 0 , 1 * sizeof ( pw_t ) , & pw , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
@ -143,6 +159,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_pws_buf , & pw , 1 * sizeof ( pw_t ) , device_param - > hip_stream ) = = - 1 ) return - 1 ;
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_pws_buf , & pw , 1 * sizeof ( pw_t ) , device_param - > hip_stream ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( hc_mtlMemcpyHtoD ( hashcat_ctx , device_param - > metal_command_queue , device_param - > metal_d_pws_buf , 0 , & pw , 1 * sizeof ( pw_t ) ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_pws_buf , CL_FALSE , 0 , 1 * sizeof ( pw_t ) , & pw , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_pws_buf , CL_FALSE , 0 , 1 * sizeof ( pw_t ) , & pw , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
@ -210,6 +233,15 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_pws_buf , & pw , 1 * sizeof ( pw_t ) , device_param - > hip_stream ) = = - 1 ) return - 1 ;
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_pws_buf , & pw , 1 * sizeof ( pw_t ) , device_param - > hip_stream ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( hc_mtlMemcpyHtoD ( hashcat_ctx , device_param - > metal_command_queue , device_param - > metal_d_combs_c , 0 , & comb , 1 * sizeof ( pw_t ) ) = = - 1 ) return - 1 ;
if ( hc_mtlMemcpyHtoD ( hashcat_ctx , device_param - > metal_command_queue , device_param - > metal_d_pws_buf , 0 , & pw , 1 * sizeof ( pw_t ) ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_combs_c , CL_FALSE , 0 , 1 * sizeof ( pw_t ) , & comb , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_combs_c , CL_FALSE , 0 , 1 * sizeof ( pw_t ) , & comb , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
@ -248,6 +280,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_pws_buf , & pw , 1 * sizeof ( pw_t ) , device_param - > hip_stream ) = = - 1 ) return - 1 ;
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_pws_buf , & pw , 1 * sizeof ( pw_t ) , device_param - > hip_stream ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( hc_mtlMemcpyHtoD ( hashcat_ctx , device_param - > metal_command_queue , device_param - > metal_d_pws_buf , 0 , & pw , 1 * sizeof ( pw_t ) ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_pws_buf , CL_FALSE , 0 , 1 * sizeof ( pw_t ) , & pw , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_pws_buf , CL_FALSE , 0 , 1 * sizeof ( pw_t ) , & pw , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
@ -302,6 +341,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_bfs_c , & bf , 1 * sizeof ( bf_t ) , device_param - > hip_stream ) = = - 1 ) return - 1 ;
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_bfs_c , & bf , 1 * sizeof ( bf_t ) , device_param - > hip_stream ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( hc_mtlMemcpyHtoD ( hashcat_ctx , device_param - > metal_command_queue , device_param - > metal_d_bfs_c , 0 , & bf , 1 * sizeof ( bf_t ) ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_bfs_c , CL_FALSE , 0 , 1 * sizeof ( bf_t ) , & bf , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_bfs_c , CL_FALSE , 0 , 1 * sizeof ( bf_t ) , & bf , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
@ -401,6 +447,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_pws_buf , & pw , 1 * sizeof ( pw_t ) , device_param - > hip_stream ) = = - 1 ) return - 1 ;
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_pws_buf , & pw , 1 * sizeof ( pw_t ) , device_param - > hip_stream ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( hc_mtlMemcpyHtoD ( hashcat_ctx , device_param - > metal_command_queue , device_param - > metal_d_pws_buf , 0 , & pw , 1 * sizeof ( pw_t ) ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_pws_buf , CL_FALSE , 0 , 1 * sizeof ( pw_t ) , & pw , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_pws_buf , CL_FALSE , 0 , 1 * sizeof ( pw_t ) , & pw , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
@ -432,6 +485,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_pws_buf , & pw , 1 * sizeof ( pw_t ) , device_param - > hip_stream ) = = - 1 ) return - 1 ;
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_pws_buf , & pw , 1 * sizeof ( pw_t ) , device_param - > hip_stream ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( hc_mtlMemcpyHtoD ( hashcat_ctx , device_param - > metal_command_queue , device_param - > metal_d_pws_buf , 0 , & pw , 1 * sizeof ( pw_t ) ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_pws_buf , CL_FALSE , 0 , 1 * sizeof ( pw_t ) , & pw , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_pws_buf , CL_FALSE , 0 , 1 * sizeof ( pw_t ) , & pw , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
@ -487,6 +547,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( run_hip_kernel_utf8toutf16le ( hashcat_ctx , device_param , device_param - > hip_d_pws_buf , 1 ) = = - 1 ) return - 1 ;
if ( run_hip_kernel_utf8toutf16le ( hashcat_ctx , device_param , device_param - > hip_d_pws_buf , 1 ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( run_metal_kernel_utf8toutf16le ( hashcat_ctx , device_param , device_param - > metal_d_pws_buf , 1 ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( run_opencl_kernel_utf8toutf16le ( hashcat_ctx , device_param , device_param - > opencl_d_pws_buf , 1 ) = = - 1 ) return - 1 ;
if ( run_opencl_kernel_utf8toutf16le ( hashcat_ctx , device_param , device_param - > opencl_d_pws_buf , 1 ) = = - 1 ) return - 1 ;
@ -513,6 +580,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( hc_hipStreamSynchronize ( hashcat_ctx , device_param - > hip_stream ) = = - 1 ) return - 1 ;
if ( hc_hipStreamSynchronize ( hashcat_ctx , device_param - > hip_stream ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( hc_mtlMemcpyDtoH ( hashcat_ctx , device_param - > metal_command_queue , device_param - > hooks_buf , device_param - > metal_d_hooks , 0 , device_param - > size_hooks ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
/* blocking */
/* blocking */
@ -531,6 +605,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_hooks , device_param - > hooks_buf , device_param - > size_hooks , device_param - > hip_stream ) = = - 1 ) return - 1 ;
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_hooks , device_param - > hooks_buf , device_param - > size_hooks , device_param - > hip_stream ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( hc_mtlMemcpyHtoD ( hashcat_ctx , device_param - > metal_command_queue , device_param - > metal_d_hooks , 0 , device_param - > hooks_buf , device_param - > size_hooks ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_hooks , CL_FALSE , 0 , device_param - > size_hooks , device_param - > hooks_buf , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_hooks , CL_FALSE , 0 , device_param - > size_hooks , device_param - > hooks_buf , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
@ -591,6 +672,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( hc_hipStreamSynchronize ( hashcat_ctx , device_param - > hip_stream ) = = - 1 ) return - 1 ;
if ( hc_hipStreamSynchronize ( hashcat_ctx , device_param - > hip_stream ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( hc_mtlMemcpyDtoH ( hashcat_ctx , device_param - > metal_command_queue , device_param - > hooks_buf , device_param - > metal_d_hooks , 0 , device_param - > size_hooks ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
/* blocking */
/* blocking */
@ -609,6 +697,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_hooks , device_param - > hooks_buf , device_param - > size_hooks , device_param - > hip_stream ) = = - 1 ) return - 1 ;
if ( hc_hipMemcpyHtoDAsync ( hashcat_ctx , device_param - > hip_d_hooks , device_param - > hooks_buf , device_param - > size_hooks , device_param - > hip_stream ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( hc_mtlMemcpyHtoD ( hashcat_ctx , device_param - > metal_command_queue , device_param - > metal_d_hooks , 0 , device_param - > hooks_buf , device_param - > size_hooks ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_hooks , CL_FALSE , 0 , device_param - > size_hooks , device_param - > hooks_buf , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
if ( hc_clEnqueueWriteBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_hooks , CL_FALSE , 0 , device_param - > size_hooks , device_param - > hooks_buf , 0 , NULL , NULL ) = = - 1 ) return - 1 ;
@ -701,6 +796,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( hc_hipEventRecord ( hashcat_ctx , device_param - > hip_event3 , device_param - > hip_stream ) = = - 1 ) return - 1 ;
if ( hc_hipEventRecord ( hashcat_ctx , device_param - > hip_event3 , device_param - > hip_stream ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( hc_mtlMemcpyDtoH ( hashcat_ctx , device_param - > metal_command_queue , & num_cracked , device_param - > metal_d_result , 0 , sizeof ( u32 ) ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( hc_clEnqueueReadBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_result , CL_FALSE , 0 , sizeof ( u32 ) , & num_cracked , 0 , NULL , & opencl_event ) = = - 1 ) return - 1 ;
if ( hc_clEnqueueReadBuffer ( hashcat_ctx , device_param - > opencl_command_queue , device_param - > opencl_d_result , CL_FALSE , 0 , sizeof ( u32 ) , & num_cracked , 0 , NULL , & opencl_event ) = = - 1 ) return - 1 ;
@ -747,6 +849,22 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( run_hip_kernel_bzero ( hashcat_ctx , device_param , device_param - > hip_d_result , device_param - > size_results ) = = - 1 ) return - 1 ;
if ( run_hip_kernel_bzero ( hashcat_ctx , device_param , device_param - > hip_d_result , device_param - > size_results ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
device_param - > kernel_params [ 15 ] = device_param - > metal_d_digests_buf ;
device_param - > kernel_params [ 17 ] = device_param - > metal_d_salt_bufs ;
device_param - > kernel_params [ 18 ] = device_param - > metal_d_esalt_bufs ;
if ( run_metal_kernel_bzero ( hashcat_ctx , device_param , device_param - > metal_d_pws_buf , device_param - > size_pws ) = = - 1 ) return - 1 ;
if ( run_metal_kernel_bzero ( hashcat_ctx , device_param , device_param - > metal_d_tmps , device_param - > size_tmps ) = = - 1 ) return - 1 ;
if ( run_metal_kernel_bzero ( hashcat_ctx , device_param , device_param - > metal_d_hooks , device_param - > size_hooks ) = = - 1 ) return - 1 ;
if ( run_metal_kernel_bzero ( hashcat_ctx , device_param , device_param - > metal_d_plain_bufs , device_param - > size_plains ) = = - 1 ) return - 1 ;
if ( run_metal_kernel_bzero ( hashcat_ctx , device_param , device_param - > metal_d_digests_shown , device_param - > size_shown ) = = - 1 ) return - 1 ;
if ( run_metal_kernel_bzero ( hashcat_ctx , device_param , device_param - > metal_d_result , device_param - > size_results ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
device_param - > kernel_params [ 15 ] = & device_param - > opencl_d_digests_buf ;
device_param - > kernel_params [ 15 ] = & device_param - > opencl_d_digests_buf ;
@ -773,6 +891,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( run_hip_kernel_bzero ( hashcat_ctx , device_param , device_param - > hip_d_rules_c , device_param - > size_rules_c ) = = - 1 ) return - 1 ;
if ( run_hip_kernel_bzero ( hashcat_ctx , device_param , device_param - > hip_d_rules_c , device_param - > size_rules_c ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( run_metal_kernel_bzero ( hashcat_ctx , device_param , device_param - > metal_d_rules_c , device_param - > size_rules_c ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( run_opencl_kernel_bzero ( hashcat_ctx , device_param , device_param - > opencl_d_rules_c , device_param - > size_rules_c ) = = - 1 ) return - 1 ;
if ( run_opencl_kernel_bzero ( hashcat_ctx , device_param , device_param - > opencl_d_rules_c , device_param - > size_rules_c ) = = - 1 ) return - 1 ;
@ -792,6 +917,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( run_hip_kernel_bzero ( hashcat_ctx , device_param , device_param - > hip_d_rules_c , device_param - > size_rules_c ) = = - 1 ) return - 1 ;
if ( run_hip_kernel_bzero ( hashcat_ctx , device_param , device_param - > hip_d_rules_c , device_param - > size_rules_c ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( run_metal_kernel_bzero ( hashcat_ctx , device_param , device_param - > metal_d_rules_c , device_param - > size_rules_c ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( run_opencl_kernel_bzero ( hashcat_ctx , device_param , device_param - > opencl_d_rules_c , device_param - > size_rules_c ) = = - 1 ) return - 1 ;
if ( run_opencl_kernel_bzero ( hashcat_ctx , device_param , device_param - > opencl_d_rules_c , device_param - > size_rules_c ) = = - 1 ) return - 1 ;
@ -809,6 +941,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( run_hip_kernel_bzero ( hashcat_ctx , device_param , device_param - > hip_d_combs_c , device_param - > size_combs ) = = - 1 ) return - 1 ;
if ( run_hip_kernel_bzero ( hashcat_ctx , device_param , device_param - > hip_d_combs_c , device_param - > size_combs ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( run_metal_kernel_bzero ( hashcat_ctx , device_param , device_param - > metal_d_combs_c , device_param - > size_combs ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( run_opencl_kernel_bzero ( hashcat_ctx , device_param , device_param - > opencl_d_combs_c , device_param - > size_combs ) = = - 1 ) return - 1 ;
if ( run_opencl_kernel_bzero ( hashcat_ctx , device_param , device_param - > opencl_d_combs_c , device_param - > size_combs ) = = - 1 ) return - 1 ;
@ -826,6 +965,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
if ( run_hip_kernel_bzero ( hashcat_ctx , device_param , device_param - > hip_d_bfs_c , device_param - > size_bfs ) = = - 1 ) return - 1 ;
if ( run_hip_kernel_bzero ( hashcat_ctx , device_param , device_param - > hip_d_bfs_c , device_param - > size_bfs ) = = - 1 ) return - 1 ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
if ( run_metal_kernel_bzero ( hashcat_ctx , device_param , device_param - > metal_d_bfs_c , device_param - > size_bfs ) = = - 1 ) return - 1 ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
if ( run_opencl_kernel_bzero ( hashcat_ctx , device_param , device_param - > opencl_d_bfs_c , device_param - > size_bfs ) = = - 1 ) return - 1 ;
if ( run_opencl_kernel_bzero ( hashcat_ctx , device_param , device_param - > opencl_d_bfs_c , device_param - > size_bfs ) = = - 1 ) return - 1 ;
@ -866,6 +1012,13 @@ static int selftest (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param
event_log_error ( hashcat_ctx , " * Device #%u: ATTENTION! HIP kernel self-test failed. " , device_param - > device_id + 1 ) ;
event_log_error ( hashcat_ctx , " * Device #%u: ATTENTION! HIP kernel self-test failed. " , device_param - > device_id + 1 ) ;
}
}
# if defined (__APPLE__)
if ( device_param - > is_metal = = true )
{
event_log_error ( hashcat_ctx , " * Device #%u: ATTENTION! Metal kernel self-test failed. " , device_param - > device_id + 1 ) ;
}
# endif
if ( device_param - > is_opencl = = true )
if ( device_param - > is_opencl = = true )
{
{
event_log_error ( hashcat_ctx , " * Device #%u: ATTENTION! OpenCL kernel self-test failed. " , device_param - > device_id + 1 ) ;
event_log_error ( hashcat_ctx , " * Device #%u: ATTENTION! OpenCL kernel self-test failed. " , device_param - > device_id + 1 ) ;