|
|
|
@ -19,6 +19,8 @@
|
|
|
|
|
#include "terminal.h"
|
|
|
|
|
#include "hashcat.h"
|
|
|
|
|
|
|
|
|
|
static const size_t TERMINAL_LINE_LENGTH = 79;
|
|
|
|
|
|
|
|
|
|
static const char *PROMPT = "[s]tatus [p]ause [r]esume [b]ypass [c]heckpoint [q]uit => ";
|
|
|
|
|
|
|
|
|
|
void welcome_screen (hashcat_ctx_t *hashcat_ctx, const char *version_tag)
|
|
|
|
@ -463,6 +465,29 @@ int tty_fix()
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
void compress_terminal_line_length (char *out_buf, const size_t keep_from_beginning, const size_t keep_from_end)
|
|
|
|
|
{
|
|
|
|
|
const size_t target_len = TERMINAL_LINE_LENGTH - keep_from_beginning;
|
|
|
|
|
|
|
|
|
|
const size_t out_len = strlen (out_buf);
|
|
|
|
|
|
|
|
|
|
if (out_len < target_len) return;
|
|
|
|
|
|
|
|
|
|
char *ptr1 = out_buf + target_len - 3 - keep_from_end;
|
|
|
|
|
char *ptr2 = out_buf + out_len - keep_from_end;
|
|
|
|
|
|
|
|
|
|
*ptr1++ = '.';
|
|
|
|
|
*ptr1++ = '.';
|
|
|
|
|
*ptr1++ = '.';
|
|
|
|
|
|
|
|
|
|
for (size_t i = 0; i < keep_from_end; i++)
|
|
|
|
|
{
|
|
|
|
|
*ptr1++ = *ptr2++;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
*ptr1 = 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void opencl_info (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
{
|
|
|
|
|
const opencl_ctx_t *opencl_ctx = hashcat_ctx->opencl_ctx;
|
|
|
|
@ -695,28 +720,28 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Session..........: %s",
|
|
|
|
|
"Session........: %s",
|
|
|
|
|
hashcat_status->session);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Status...........: %s",
|
|
|
|
|
"Status.........: %s",
|
|
|
|
|
hashcat_status->status_string);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Hash.Type........: %s",
|
|
|
|
|
"Hash.Type......: %s",
|
|
|
|
|
hashcat_status->hash_type);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Hash.Target......: %s",
|
|
|
|
|
"Hash.Target....: %s",
|
|
|
|
|
hashcat_status->hash_target);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Time.Started.....: %s (%s)",
|
|
|
|
|
"Time.Started...: %s (%s)",
|
|
|
|
|
hashcat_status->time_started_absolute,
|
|
|
|
|
hashcat_status->time_started_relative);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Time.Estimated...: %s (%s)",
|
|
|
|
|
"Time.Estimated.: %s (%s)",
|
|
|
|
|
hashcat_status->time_estimated_absolute,
|
|
|
|
|
hashcat_status->time_estimated_relative);
|
|
|
|
|
|
|
|
|
@ -725,7 +750,7 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_STRAIGHT_FILE:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Base.......: File (%s)",
|
|
|
|
|
"Input.Base.....: File (%s)",
|
|
|
|
|
hashcat_status->input_base);
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
@ -733,11 +758,11 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_STRAIGHT_FILE_RULES_FILE:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Base.......: File (%s)",
|
|
|
|
|
"Input.Base.....: File (%s)",
|
|
|
|
|
hashcat_status->input_base);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Mod........: Rules (%s)",
|
|
|
|
|
"Input.Mod......: Rules (%s)",
|
|
|
|
|
hashcat_status->input_mod);
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
@ -745,28 +770,28 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_STRAIGHT_FILE_RULES_GEN:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Base.......: File (%s)",
|
|
|
|
|
"Input.Base.....: File (%s)",
|
|
|
|
|
hashcat_status->input_base);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Mod........: Rules (Generated)");
|
|
|
|
|
"Input.Mod......: Rules (Generated)");
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case INPUT_MODE_STRAIGHT_STDIN:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Base.......: Pipe");
|
|
|
|
|
"Input.Base.....: Pipe");
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case INPUT_MODE_STRAIGHT_STDIN_RULES_FILE:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Base.......: Pipe");
|
|
|
|
|
"Input.Base.....: Pipe");
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Mod........: Rules (%s)",
|
|
|
|
|
"Input.Mod......: Rules (%s)",
|
|
|
|
|
hashcat_status->input_mod);
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
@ -774,21 +799,21 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_STRAIGHT_STDIN_RULES_GEN:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Base.......: Pipe");
|
|
|
|
|
"Input.Base.....: Pipe");
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Mod........: Rules (Generated)");
|
|
|
|
|
"Input.Mod......: Rules (Generated)");
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case INPUT_MODE_COMBINATOR_BASE_LEFT:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Base.......: File (%s), Left Side",
|
|
|
|
|
"Input.Base.....: File (%s), Left Side",
|
|
|
|
|
hashcat_status->input_base);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Mod........: File (%s), Right Side",
|
|
|
|
|
"Input.Mod......: File (%s), Right Side",
|
|
|
|
|
hashcat_status->input_mod);
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
@ -796,11 +821,11 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_COMBINATOR_BASE_RIGHT:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Base.......: File (%s), Right Side",
|
|
|
|
|
"Input.Base.....: File (%s), Right Side",
|
|
|
|
|
hashcat_status->input_base);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Mod........: File (%s), Left Side",
|
|
|
|
|
"Input.Mod......: File (%s), Left Side",
|
|
|
|
|
hashcat_status->input_mod);
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
@ -808,7 +833,7 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_MASK:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Mask.......: %s [%d]",
|
|
|
|
|
"Input.Mask.....: %s [%d]",
|
|
|
|
|
hashcat_status->input_base,
|
|
|
|
|
hashcat_status->input_mask_length);
|
|
|
|
|
|
|
|
|
@ -817,12 +842,12 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_MASK_CS:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Mask.......: %s [%d]",
|
|
|
|
|
"Input.Mask.....: %s [%d]",
|
|
|
|
|
hashcat_status->input_base,
|
|
|
|
|
hashcat_status->input_mask_length);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Charset....: %s ",
|
|
|
|
|
"Input.Charset..: %s ",
|
|
|
|
|
hashcat_status->input_charset);
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
@ -830,11 +855,11 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_HYBRID1:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Base.......: File (%s), Left Side",
|
|
|
|
|
"Input.Base.....: File (%s), Left Side",
|
|
|
|
|
hashcat_status->input_base);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Mod........: Mask (%s) [%d], Right Side",
|
|
|
|
|
"Input.Mod......: Mask (%s) [%d], Right Side",
|
|
|
|
|
hashcat_status->input_mod,
|
|
|
|
|
hashcat_status->input_mask_length);
|
|
|
|
|
|
|
|
|
@ -843,16 +868,16 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_HYBRID1_CS:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Base.......: File (%s), Left Side",
|
|
|
|
|
"Input.Base.....: File (%s), Left Side",
|
|
|
|
|
hashcat_status->input_base);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Mod........: Mask (%s) [%d], Right Side",
|
|
|
|
|
"Input.Mod......: Mask (%s) [%d], Right Side",
|
|
|
|
|
hashcat_status->input_mod,
|
|
|
|
|
hashcat_status->input_mask_length);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Charset....: %s",
|
|
|
|
|
"Input.Charset..: %s",
|
|
|
|
|
hashcat_status->input_charset);
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
@ -860,11 +885,11 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_HYBRID2:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Base.......: File (%s), Right Side",
|
|
|
|
|
"Input.Base.....: File (%s), Right Side",
|
|
|
|
|
hashcat_status->input_base);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Mod........: Mask (%s) [%d], Left Side",
|
|
|
|
|
"Input.Mod......: Mask (%s) [%d], Left Side",
|
|
|
|
|
hashcat_status->input_mod,
|
|
|
|
|
hashcat_status->input_mask_length);
|
|
|
|
|
|
|
|
|
@ -873,16 +898,16 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_HYBRID2_CS:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Base.......: File (%s), Right Side",
|
|
|
|
|
"Input.Base.....: File (%s), Right Side",
|
|
|
|
|
hashcat_status->input_base);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Mod........: Mask (%s) [%d], Left Side",
|
|
|
|
|
"Input.Mod......: Mask (%s) [%d], Left Side",
|
|
|
|
|
hashcat_status->input_mod,
|
|
|
|
|
hashcat_status->input_mask_length);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Charset....: %s",
|
|
|
|
|
"Input.Charset..: %s",
|
|
|
|
|
hashcat_status->input_charset);
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
@ -893,7 +918,7 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_STRAIGHT_FILE:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Queue......: %d/%d (%.02f%%)",
|
|
|
|
|
"Input.Queue....: %d/%d (%.02f%%)",
|
|
|
|
|
hashcat_status->input_base_offset,
|
|
|
|
|
hashcat_status->input_base_count,
|
|
|
|
|
hashcat_status->input_base_percent);
|
|
|
|
@ -903,7 +928,7 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_STRAIGHT_FILE_RULES_FILE:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Queue......: %d/%d (%.02f%%)",
|
|
|
|
|
"Input.Queue....: %d/%d (%.02f%%)",
|
|
|
|
|
hashcat_status->input_base_offset,
|
|
|
|
|
hashcat_status->input_base_count,
|
|
|
|
|
hashcat_status->input_base_percent);
|
|
|
|
@ -913,7 +938,7 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_STRAIGHT_FILE_RULES_GEN:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Queue......: %d/%d (%.02f%%)",
|
|
|
|
|
"Input.Queue....: %d/%d (%.02f%%)",
|
|
|
|
|
hashcat_status->input_base_offset,
|
|
|
|
|
hashcat_status->input_base_count,
|
|
|
|
|
hashcat_status->input_base_percent);
|
|
|
|
@ -923,7 +948,7 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_MASK:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Queue......: %d/%d (%.02f%%)",
|
|
|
|
|
"Input.Queue....: %d/%d (%.02f%%)",
|
|
|
|
|
hashcat_status->input_base_offset,
|
|
|
|
|
hashcat_status->input_base_count,
|
|
|
|
|
hashcat_status->input_base_percent);
|
|
|
|
@ -933,7 +958,7 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case INPUT_MODE_MASK_CS:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Queue......: %d/%d (%.02f%%)",
|
|
|
|
|
"Input.Queue....: %d/%d (%.02f%%)",
|
|
|
|
|
hashcat_status->input_base_offset,
|
|
|
|
|
hashcat_status->input_base_count,
|
|
|
|
|
hashcat_status->input_base_percent);
|
|
|
|
@ -949,7 +974,7 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
hashcat_status->input_base_percent);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Queue.Mod..: %d/%d (%.02f%%)",
|
|
|
|
|
"Input.Queue.Mod: %d/%d (%.02f%%)",
|
|
|
|
|
hashcat_status->input_mod_offset,
|
|
|
|
|
hashcat_status->input_mod_count,
|
|
|
|
|
hashcat_status->input_mod_percent);
|
|
|
|
@ -965,7 +990,7 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
hashcat_status->input_base_percent);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Input.Queue.Mod..: %d/%d (%.02f%%)",
|
|
|
|
|
"Input.Queue.Mod: %d/%d (%.02f%%)",
|
|
|
|
|
hashcat_status->input_mod_offset,
|
|
|
|
|
hashcat_status->input_mod_count,
|
|
|
|
|
hashcat_status->input_mod_percent);
|
|
|
|
@ -980,7 +1005,7 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
if (device_info->skipped_dev == true) continue;
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Speed.Dev.#%d.....: %9sH/s (%0.2fms)", device_id + 1,
|
|
|
|
|
"Speed.Dev.#%d...: %9sH/s (%0.2fms)", device_id + 1,
|
|
|
|
|
device_info->speed_sec_dev,
|
|
|
|
|
device_info->exec_msec_dev);
|
|
|
|
|
}
|
|
|
|
@ -988,12 +1013,12 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
if (hashcat_status->device_info_active > 1)
|
|
|
|
|
{
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Speed.Dev.#*.....: %9sH/s",
|
|
|
|
|
"Speed.Dev.#*...: %9sH/s",
|
|
|
|
|
hashcat_status->speed_sec_all);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Recovered........: %d/%d (%.2f%%) Digests, %d/%d (%.2f%%) Salts",
|
|
|
|
|
"Recovered......: %d/%d (%.2f%%) Digests, %d/%d (%.2f%%) Salts",
|
|
|
|
|
hashcat_status->digests_done,
|
|
|
|
|
hashcat_status->digests_cnt,
|
|
|
|
|
hashcat_status->digests_percent,
|
|
|
|
@ -1004,7 +1029,7 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
if (hashcat_status->digests_cnt > 1000)
|
|
|
|
|
{
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Recovered/Time...: %s",
|
|
|
|
|
"Recovered/Time.: %s",
|
|
|
|
|
hashcat_status->cpt);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1013,19 +1038,19 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case PROGRESS_MODE_KEYSPACE_KNOWN:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Progress.........: %" PRIu64 "/%" PRIu64 " (%.02f%%)",
|
|
|
|
|
"Progress.......: %" PRIu64 "/%" PRIu64 " (%.02f%%)",
|
|
|
|
|
hashcat_status->progress_cur_relative_skip,
|
|
|
|
|
hashcat_status->progress_end_relative_skip,
|
|
|
|
|
hashcat_status->progress_finished_percent);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Rejected.........: %" PRIu64 "/%" PRIu64 " (%.02f%%)",
|
|
|
|
|
"Rejected.......: %" PRIu64 "/%" PRIu64 " (%.02f%%)",
|
|
|
|
|
hashcat_status->progress_rejected,
|
|
|
|
|
hashcat_status->progress_cur_relative_skip,
|
|
|
|
|
hashcat_status->progress_rejected_percent);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Restore.Point....: %" PRIu64 "/%" PRIu64 " (%.02f%%)",
|
|
|
|
|
"Restore.Point..: %" PRIu64 "/%" PRIu64 " (%.02f%%)",
|
|
|
|
|
hashcat_status->restore_point,
|
|
|
|
|
hashcat_status->restore_total,
|
|
|
|
|
hashcat_status->restore_percent);
|
|
|
|
@ -1035,15 +1060,15 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
case PROGRESS_MODE_KEYSPACE_UNKNOWN:
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Progress.........: %" PRIu64,
|
|
|
|
|
"Progress.......: %" PRIu64,
|
|
|
|
|
hashcat_status->progress_cur_relative_skip);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Rejected.........: %" PRIu64,
|
|
|
|
|
"Rejected.......: %" PRIu64,
|
|
|
|
|
hashcat_status->progress_rejected);
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Restore.Point....: %" PRIu64,
|
|
|
|
|
"Restore.Point..: %" PRIu64,
|
|
|
|
|
hashcat_status->restore_point);
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
@ -1058,7 +1083,7 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
if (device_info->input_candidates_dev == NULL) continue;
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Candidates.#%d....: %s", device_id + 1,
|
|
|
|
|
"Candidates.#%d..: %s", device_id + 1,
|
|
|
|
|
device_info->input_candidates_dev);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1073,7 +1098,7 @@ void status_display (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
if (device_info->hwmon_dev == NULL) continue;
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"HWMon.Dev.#%d.....: %s", device_id + 1,
|
|
|
|
|
"HWMon.Dev.#%d...: %s", device_id + 1,
|
|
|
|
|
device_info->hwmon_dev);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -1139,7 +1164,7 @@ void status_benchmark (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
if (device_info->skipped_dev == true) continue;
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Speed.Dev.#%d.....: %9sH/s (%0.2fms)", device_id + 1,
|
|
|
|
|
"Speed.Dev.#%d...: %9sH/s (%0.2fms)", device_id + 1,
|
|
|
|
|
device_info->speed_sec_dev,
|
|
|
|
|
device_info->exec_msec_dev);
|
|
|
|
|
}
|
|
|
|
@ -1147,7 +1172,7 @@ void status_benchmark (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
if (hashcat_status->device_info_active > 1)
|
|
|
|
|
{
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Speed.Dev.#*.....: %9sH/s",
|
|
|
|
|
"Speed.Dev.#*...: %9sH/s",
|
|
|
|
|
hashcat_status->speed_sec_all);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1208,7 +1233,7 @@ void status_speed (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
if (device_info->skipped_dev == true) continue;
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Speed.Dev.#%d.....: %9sH/s (%0.2fms)", device_id + 1,
|
|
|
|
|
"Speed.Dev.#%d...: %9sH/s (%0.2fms)", device_id + 1,
|
|
|
|
|
device_info->speed_sec_dev,
|
|
|
|
|
device_info->exec_msec_dev);
|
|
|
|
|
}
|
|
|
|
@ -1216,7 +1241,7 @@ void status_speed (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
if (hashcat_status->device_info_active > 1)
|
|
|
|
|
{
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Speed.Dev.#*.....: %9sH/s",
|
|
|
|
|
"Speed.Dev.#*...: %9sH/s",
|
|
|
|
|
hashcat_status->speed_sec_all);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1277,7 +1302,7 @@ void status_progress (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
if (device_info->skipped_dev == true) continue;
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Progress.Dev.#%d..: %d", device_id + 1,
|
|
|
|
|
"Progress.Dev.#%d: %d", device_id + 1,
|
|
|
|
|
device_info->progress_dev);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1288,7 +1313,7 @@ void status_progress (hashcat_ctx_t *hashcat_ctx)
|
|
|
|
|
if (device_info->skipped_dev == true) continue;
|
|
|
|
|
|
|
|
|
|
event_log_info (hashcat_ctx,
|
|
|
|
|
"Runtime.Dev.#%d...: %0.2fms", device_id + 1,
|
|
|
|
|
"Runtime.Dev.#%d.: %0.2fms", device_id + 1,
|
|
|
|
|
device_info->runtime_msec_dev);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|