From 6f899539d84c5e98091bd210331c728ad8266a5e Mon Sep 17 00:00:00 2001 From: Markus Uhlin Date: Tue, 24 Mar 2026 18:46:14 +0100 Subject: BrokenPipe: usage of strsignal() --- FICS/ficsmain.c | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/FICS/ficsmain.c b/FICS/ficsmain.c index 3de515d..06e1771 100644 --- a/FICS/ficsmain.c +++ b/FICS/ficsmain.c @@ -88,7 +88,29 @@ PRIVATE __dead void usage(char *); PRIVATE void BrokenPipe(int sig) { - (void) fprintf(stderr, "FICS: Got Broken Pipe (%d)\n", sig); + char buf[1024] = { '\0' }; + + // NOLINTBEGIN + switch (sig) { + case SIGPIPE: + (void) snprintf(buf, sizeof buf, "FICS: Got signal %d " + "(SIGPIPE): ", sig); + break; + default: + (void) snprintf(buf, sizeof buf, "FICS: Got signal %d " + "(Unknown): ", sig); + break; + } + + const char *desc = strsignal(sig); + + (void) strlcat(buf, (desc ? desc : "n/a"), sizeof buf); + + if (strlcat(buf, "\n", sizeof buf) >= sizeof buf) + /* null */; + else + (void) fputs(buf, stderr); + // NOLINTEND } PRIVATE void -- cgit v1.2.3