1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-11-13 19:28:56 +00:00

Fixed memory leak causing problems in sessions with many iterations. for instance, --benchmark-all or large mask files

This commit is contained in:
Jens Steube 2021-05-01 17:27:33 +02:00
parent a02b2ccd5f
commit 59459d0e5b
3 changed files with 3 additions and 4 deletions

View File

@ -47,6 +47,7 @@
- Fixed incorrect maximum password length support for -m 400 in optimized mode (reduced from 55 to 39)
- Fixed internal access on module option attribute OPTS_TYPE_SUGGEST_KG with the result that it was unused
- Fixed invalid handling of outfile folder entries for -m 22000
- Fixed memory leak causing problems in sessions with many iterations. for instance, --benchmark-all or large mask files
- Fixed out-of-boundary reads in case user activates -S for fast but pure hashes in -a 1 or -a 3 mode
- Fixed password reassembling for cracked hashes on host for slow hashes in optimized mode that are longer than 32 characters
- Fixed race condition in potfile check during removal of empty hashes

View File

@ -1417,8 +1417,6 @@ typedef struct hc_device_param
CUdeviceptr cuda_d_pws_amp_buf;
CUdeviceptr cuda_d_pws_comp_buf;
CUdeviceptr cuda_d_pws_idx;
CUdeviceptr cuda_d_words_buf_l;
CUdeviceptr cuda_d_words_buf_r;
CUdeviceptr cuda_d_rules;
CUdeviceptr cuda_d_rules_c;
CUdeviceptr cuda_d_combs;
@ -1503,8 +1501,6 @@ typedef struct hc_device_param
cl_mem opencl_d_pws_amp_buf;
cl_mem opencl_d_pws_comp_buf;
cl_mem opencl_d_pws_idx;
cl_mem opencl_d_words_buf_l;
cl_mem opencl_d_words_buf_r;
cl_mem opencl_d_rules;
cl_mem opencl_d_rules_c;
cl_mem opencl_d_combs;

View File

@ -11143,6 +11143,7 @@ void backend_session_destroy (hashcat_ctx_t *hashcat_ctx)
if (device_param->cuda_module) hc_cuModuleUnload (hashcat_ctx, device_param->cuda_module);
if (device_param->cuda_module_mp) hc_cuModuleUnload (hashcat_ctx, device_param->cuda_module_mp);
if (device_param->cuda_module_amp) hc_cuModuleUnload (hashcat_ctx, device_param->cuda_module_amp);
if (device_param->cuda_module_shared) hc_cuModuleUnload (hashcat_ctx, device_param->cuda_module_shared);
if (device_param->cuda_context) hc_cuCtxDestroy (hashcat_ctx, device_param->cuda_context);
@ -11280,6 +11281,7 @@ void backend_session_destroy (hashcat_ctx_t *hashcat_ctx)
if (device_param->opencl_program) hc_clReleaseProgram (hashcat_ctx, device_param->opencl_program);
if (device_param->opencl_program_mp) hc_clReleaseProgram (hashcat_ctx, device_param->opencl_program_mp);
if (device_param->opencl_program_amp) hc_clReleaseProgram (hashcat_ctx, device_param->opencl_program_amp);
if (device_param->opencl_program_shared) hc_clReleaseProgram (hashcat_ctx, device_param->opencl_program_shared);
if (device_param->opencl_command_queue) hc_clReleaseCommandQueue (hashcat_ctx, device_param->opencl_command_queue);