tfc_say(" statless: emit less information in status line (only processed data).");
tfc_say(" norepeat: do not ask for any possible password confirmations.");
tfc_say(" showsecrets: show passwords in plaintext instead of masking them.");
+ tfc_say(" finished: add \"finished\" word before status line when work is finished.");
tfc_say(" prompt=str: set main password prompts to this string.");
tfc_say(" macprompt=str: set MAC password prompts to this string.");
tfc_say(" shorthex: with -H, do not print printable characters, dump only hex string.");
else inplace = "";
if (do_less_stats == YES) {
- tfc_nfsay(stderr, "%s%s:"
+ tfc_nfsay(stderr, "%s%s%s:"
" %s %.2f%s,"
" %.2f%s B/s @%s",
- inplace, progname,
+ inplace, (last && show_when_done) ? "finished: " : "", progname,
oper_mode,
human_totalproc_dst, tfc_getscale(dst_scale_idx),
human_wr_speed, tfc_getscale(wr_speed_scale), tfc_format_time(total_time));
}
else {
- if (ctr_mode <= TFC_MODE_PLAIN) tfc_nfsay(stderr, "%s%s: read: %llu (%.2f%s),"
+ if (ctr_mode <= TFC_MODE_PLAIN) tfc_nfsay(stderr, "%s%s%s: read: %llu (%.2f%s),"
" %s %llu (%.2f%s) bytes,"
" (%llu (%.2f%s) B/s), time %s",
- inplace, progname,
+ inplace, (last && show_when_done) ? "finished: " : "", progname,
total_processed_src, human_totalproc_src, tfc_getscale(src_scale_idx),
oper_mode,
total_processed_dst, human_totalproc_dst, tfc_getscale(dst_scale_idx),
wr_speed, human_wr_speed, tfc_getscale(wr_speed_scale), tfc_format_time(total_time));
- else tfc_nfsay(stderr, "%s%s: read: %llu (%.2f%s),"
+ else tfc_nfsay(stderr, "%s%s%s: read: %llu (%.2f%s),"
" %s %s %llu (%.2f%s) bytes,"
" written %llu (%.2f%s) bytes,"
" (%llu (%.2f%s) B/s), time %s",
- inplace, progname,
+ inplace, (last && show_when_done) ? "finished: " : "", progname,
total_processed_src, human_totalproc_src, tfc_getscale(src_scale_idx),
tfc_modename(ctr_mode), oper_mode,
total_processed_dst, human_totalproc_dst, tfc_getscale(dst_scale_idx),
int idx, write_flags;
tfc_yesno catch_all_errors, ignore_seek_errors, password, overwrite_source, do_fsync, do_pad, do_ftrunc = TFC_NO_FTRUNC;
tfc_yesno do_preserve_time, do_stats_in_gibs, do_statline_dynamic = YES, do_less_stats;
-tfc_yesno no_repeat, do_full_hexdump = YES, verbose, statline_was_shown, show_secrets;
+tfc_yesno no_repeat, do_full_hexdump = YES, verbose, statline_was_shown, show_secrets, show_when_done;
char *srcfname = TFC_STDIN_NAME, *dstfname = TFC_STDOUT_NAME, *do_mac_file, *counter_file, *sksum_hashlist_file;
char *saltf, *genkeyf, *mackeyf, *tweakf;
char *pw_prompt, *mac_pw_prompt;
do_full_key = YES;
else if (!strcmp(s, "showsecrets"))
show_secrets = YES;
+ else if (!strcmp(s, "finished"))
+ show_when_done = YES;
else if (!strncmp(s, "logfile", 7) && *(s+7) == '=')
open_log(s+8);
else if (!strncmp(s, "iobs", 4) && *(s+4) == '=') {
extern int idx, write_flags;
extern tfc_yesno catch_all_errors, ignore_seek_errors, password, overwrite_source, do_fsync, do_pad, do_ftrunc;
extern tfc_yesno do_preserve_time, do_stats_in_gibs, do_statline_dynamic, do_less_stats;
-extern tfc_yesno no_repeat, do_full_hexdump, verbose, statline_was_shown, show_secrets;
+extern tfc_yesno no_repeat, do_full_hexdump, verbose, statline_was_shown, show_secrets, show_when_done;
extern char *srcfname, *dstfname, *do_mac_file, *counter_file, *sksum_hashlist_file;
extern char *saltf, *genkeyf, *mackeyf, *tweakf;
extern char *pw_prompt, *mac_pw_prompt;