From 206e8042d86df252b298337be082c2d5aeda4a05 Mon Sep 17 00:00:00 2001 From: Laan Tungir Date: Wed, 13 Aug 2025 10:31:24 -0400 Subject: [PATCH] Version v0.2.25 - Added default output filename prompt with pre-filled value for file encryption --- otp.c | 22 +++++++++++++++++++++- test.txt.otp | Bin 0 -> 98 bytes 2 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 test.txt.otp diff --git a/otp.c b/otp.c index 2c46d56..3d0fe87 100644 --- a/otp.c +++ b/otp.c @@ -2559,7 +2559,27 @@ int handle_file_encrypt(void) { int ascii_armor = (atoi(format_input) == 2) ? 1 : 0; - return encrypt_file(pad_input, input_file, NULL, ascii_armor); + // Generate default output filename + char default_output[512]; + if (ascii_armor) { + snprintf(default_output, sizeof(default_output), "%s.otp.asc", input_file); + } else { + snprintf(default_output, sizeof(default_output), "%s.otp", input_file); + } + + // Ask for output filename with pre-filled default + printf("\nOutput filename [%s]: ", default_output); + char output_file[512]; + if (!fgets(output_file, sizeof(output_file), stdin)) { + printf("Error: Failed to read input\n"); + return 1; + } + output_file[strcspn(output_file, "\n")] = 0; + + // Use default if user just pressed Enter + const char* output_filename = (strlen(output_file) > 0) ? output_file : default_output; + + return encrypt_file(pad_input, input_file, output_filename, ascii_armor); } int handle_smart_decrypt(void) { diff --git a/test.txt.otp b/test.txt.otp new file mode 100644 index 0000000000000000000000000000000000000000..4cc77c219739a175d0ae06ef69d5f2d702a1203e GIT binary patch literal 98 zcmeYd31DDkn11tyc8JJI=ZQ?88|8O$ZMz-@r2pUmK%K`4NoM)`Haq literal 0 HcmV?d00001