From 316f6b0d9304587dc9b768785ada805a0722567b Mon Sep 17 00:00:00 2001 From: Chris Kuehl Date: Fri, 2 Oct 2015 10:48:23 -0700 Subject: [PATCH] Prefix output with [dumb-init] --- dumb-init.c | 24 +++++++++++------------- tests/child_processes_test.py | 2 +- 2 files changed, 12 insertions(+), 14 deletions(-) diff --git a/dumb-init.c b/dumb-init.c index f9c895d..b270eb1 100644 --- a/dumb-init.c +++ b/dumb-init.c @@ -18,9 +18,13 @@ #include #include +#define PRINTERR(...) do { \ + fprintf(stderr, "[dumb-init] " __VA_ARGS__); \ +} while (0) + #define DEBUG(...) do { \ if (debug) { \ - fprintf(stderr, __VA_ARGS__); \ + PRINTERR(__VA_ARGS__); \ } \ } while (0) @@ -31,9 +35,9 @@ char use_setsid = 1; void forward_signal(int signum) { if (child_pid > 0) { kill(use_setsid ? -child_pid : child_pid, signum); - DEBUG("Forwarded signal %d to child.\n", signum); + DEBUG("Forwarded signal %d to children.\n", signum); } else { - DEBUG("Didn't forward signal %d, no child exists yet.\n", signum); + DEBUG("Didn't forward signal %d, no children exists yet.\n", signum); } } @@ -150,7 +154,7 @@ int main(int argc, char *argv[]) { continue; if (signal(signum, handle_signal) == SIG_ERR) { - fprintf(stderr, "Error: Couldn't register signal handler for signal `%d`. Exiting.\n", signum); + PRINTERR("Couldn't register signal handler for signal `%d`. Exiting.\n", signum); return 1; } } @@ -159,7 +163,7 @@ int main(int argc, char *argv[]) { child_pid = fork(); if (child_pid < 0) { - fprintf(stderr, "Unable to fork. Exiting.\n"); + PRINTERR("Unable to fork. Exiting.\n"); return 1; } @@ -167,8 +171,7 @@ int main(int argc, char *argv[]) { if (use_setsid) { pid_t result = setsid(); if (result == -1) { - fprintf( - stderr, + PRINTERR( "Unable to setsid (errno=%d %s). Exiting.\n", errno, strerror(errno) @@ -181,12 +184,7 @@ int main(int argc, char *argv[]) { execvp(argv[1], &argv[1]); // if this point is reached, exec failed, so we should exit nonzero - fprintf( - stderr, - "dumb-init: %s: %s\n", - argv[1], - strerror(errno) - ); + PRINTERR("%s: %s\n", argv[1], strerror(errno)); exit(2); } else { pid_t killed_pid; diff --git a/tests/child_processes_test.py b/tests/child_processes_test.py index 315795a..f001af6 100644 --- a/tests/child_processes_test.py +++ b/tests/child_processes_test.py @@ -131,6 +131,6 @@ def test_fails_nonzero_with_bad_exec(both_debug_modes, both_setsid_modes): proc.wait() assert proc.returncode != 0 assert ( - b'dumb-init: /doesnotexist: No such file or directory\n' + b'[dumb-init] /doesnotexist: No such file or directory\n' in proc.stderr )