Version v0.2.73 - Fixed newline formatting - clean output for pipe mode, spaced for interactive

This commit is contained in:
2025-08-14 11:30:51 -04:00
parent 7810e66114
commit 41ef97c43e
2 changed files with 25 additions and 3 deletions

17
otp.c
View File

@@ -1390,8 +1390,15 @@ int encrypt_text(const char* pad_identifier, const char* input_text) {
printf("Warning: Failed to update state file\n");
}
// Output in ASCII armor format
printf("\n\n-----BEGIN OTP MESSAGE-----\n");
// Output in ASCII armor format - clean format for piping, spaced format for interactive
int is_interactive = (input_text == NULL); // Interactive if no input_text provided
if (is_interactive) {
printf("\n\n-----BEGIN OTP MESSAGE-----\n");
} else {
printf("-----BEGIN OTP MESSAGE-----\n");
}
printf("Version: %s\n", get_version());
printf("Pad-ChkSum: %s\n", chksum_hex);
printf("Pad-Offset: %lu\n", current_offset);
@@ -1403,7 +1410,11 @@ int encrypt_text(const char* pad_identifier, const char* input_text) {
printf("%.64s\n", base64_cipher + i);
}
printf("-----END OTP MESSAGE-----\n\n\n");
if (is_interactive) {
printf("-----END OTP MESSAGE-----\n\n\n");
} else {
printf("-----END OTP MESSAGE-----\n");
}
// Cleanup
free(pad_data);