From 417d7c9b82d53c2dc1b2c75516b30595f19492cb Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sat, 7 Dec 2019 16:27:17 +0000 Subject: [PATCH] vcfgfatal_maybefile: New suffix argument We are going to want to provide a log_if that calls *cfgfatal*. Messages sent to a log_if do not have a \n, but messages passed to cfgfatal do. (This is daft, btw.) To help resolve this impedance mismatch, provide a "suffix" parameter. We only need this for vcfgfatal_maybefile, not for any of the other variants. No functional change. Signed-off-by: Ian Jackson --- log.c | 8 +++++--- rsa.c | 2 +- secnet.h | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/log.c b/log.c index 1239612..e7d974d 100644 --- a/log.c +++ b/log.c @@ -130,7 +130,8 @@ void fatal_perror_status(int status, const char *message, ...) } void vcfgfatal_maybefile(FILE *maybe_f /* or 0 */, struct cloc loc, - cstring_t facility, const char *message, va_list args) + cstring_t facility, const char *message, va_list args, + const char *suffix) { enter_phase(PHASE_SHUTDOWN); @@ -152,6 +153,7 @@ void vcfgfatal_maybefile(FILE *maybe_f /* or 0 */, struct cloc loc, } vMessage(M_FATAL,message,args); + Message(M_FATAL,"%s",suffix); exit(current_phase); } @@ -161,7 +163,7 @@ void cfgfatal_maybefile(FILE *maybe_f, struct cloc loc, cstring_t facility, va_list args; va_start(args,message); - vcfgfatal_maybefile(maybe_f,loc,facility,message,args); + vcfgfatal_maybefile(maybe_f,loc,facility,message,args,0); va_end(args); } @@ -170,7 +172,7 @@ void cfgfatal(struct cloc loc, cstring_t facility, const char *message, ...) va_list args; va_start(args,message); - vcfgfatal_maybefile(0,loc,facility,message,args); + vcfgfatal_maybefile(0,loc,facility,message,args,""); va_end(args); } diff --git a/rsa.c b/rsa.c index 8fc976b..ef99f91 100644 --- a/rsa.c +++ b/rsa.c @@ -85,7 +85,7 @@ static void verror_cfgfatal(struct load_ctx *l, struct cloc loc, FILE *maybe_f, const char *message, va_list args) { - vcfgfatal_maybefile(maybe_f,l->loc,l->what,message,args); + vcfgfatal_maybefile(maybe_f,l->loc,l->what,message,args,""); } struct rsapriv { diff --git a/secnet.h b/secnet.h index dbf3341..c139796 100644 --- a/secnet.h +++ b/secnet.h @@ -818,7 +818,7 @@ extern NORETURN(cfgfatal(struct cloc loc, cstring_t facility, extern void cfgfile_postreadcheck(struct cloc loc, FILE *f); extern NORETURN(vcfgfatal_maybefile(FILE *maybe_f, struct cloc loc, cstring_t facility, const char *message, - va_list)) + va_list, const char *suffix)) FORMAT(printf,4,0); extern NORETURN(cfgfatal_maybefile(FILE *maybe_f, struct cloc loc, cstring_t facility, -- 2.30.2