diff options
Diffstat (limited to 'src/msg.c')
-rw-r--r-- | src/msg.c | 30 |
1 files changed, 19 insertions, 11 deletions
@@ -108,7 +108,7 @@ p11t_msg_rv(CK_RV rv) CT(CKR_VENDOR_DEFINED) #undef CT default: - p11t_msg_print("unknown or invalid CK_RV value: 0x%08X", rv); + p11t_check_warn("unknown or invalid CK_RV value encountered: 0x%08X", rv); return ""; } } @@ -164,36 +164,44 @@ p11t_msg_va(const char *message, va_list va) } void -p11t_msg_print(const char *message, ...) +p11t_msg_code(const char *code, const char *message, va_list va) { - va_list va; - va_start(va, message); - p11t_msg_va(message, va); - va_end(va); + size_t len; + + fprintf(stdout, "%s: ", code); + if(the_prefix) + fprintf(stdout, "%s: ", the_prefix); + vfprintf(stdout, message, va); + len = strlen(message); + if(len && message[len - 1] != '\n') + fputc('\n', stdout); + fflush(stdout); } + void -p11t_msg_fatal(const char *message, ...) +p11t_msg_print(const char *message, ...) { va_list va; va_start(va, message); p11t_msg_va(message, va); va_end(va); - exit(1); } void -p11t_msg_exit(int code, const char *message, ...) +p11t_msg_fatal(const char *message, ...) { va_list va; va_start(va, message); p11t_msg_va(message, va); va_end(va); - exit(code); + exit(1); } -void +const char* p11t_msg_prefix(const char *prefix) { + const char *old = the_prefix; the_prefix = prefix; + return old; } |