Print SIGCONT_FG and SIGCONT_BG properly in debug output.

This commit is contained in:
Todd C. Miller
2012-12-28 11:01:36 -05:00
parent 948253a156
commit d129290ec3

View File

@@ -623,7 +623,11 @@ forward_signals(int sock)
while (!tq_empty(&sigfwd_list)) { while (!tq_empty(&sigfwd_list)) {
sigfwd = tq_first(&sigfwd_list); sigfwd = tq_first(&sigfwd_list);
if (sig2str(sigfwd->signo, signame) == -1) if (sigfwd->signo == SIGCONT_FG)
strlcpy(signame, "CONT_FG", sizeof(signame));
else if (sigfwd->signo == SIGCONT_BG)
strlcpy(signame, "CONT_BG", sizeof(signame));
else if (sig2str(sigfwd->signo, signame) == -1)
snprintf(signame, sizeof(signame), "%d", sigfwd->signo); snprintf(signame, sizeof(signame), "%d", sigfwd->signo);
sudo_debug_printf(SUDO_DEBUG_INFO, sudo_debug_printf(SUDO_DEBUG_INFO,
"sending SIG%s to child over backchannel", signame); "sending SIG%s to child over backchannel", signame);
@@ -662,9 +666,13 @@ schedule_signal(int signo)
char signame[SIG2STR_MAX]; char signame[SIG2STR_MAX];
debug_decl(schedule_signal, SUDO_DEBUG_EXEC) debug_decl(schedule_signal, SUDO_DEBUG_EXEC)
if (sig2str(signo, signame) == -1) if (signo == SIGCONT_FG)
strlcpy(signame, "CONT_FG", sizeof(signame));
else if (signo == SIGCONT_BG)
strlcpy(signame, "CONT_BG", sizeof(signame));
else if (sig2str(signo, signame) == -1)
snprintf(signame, sizeof(signame), "%d", signo); snprintf(signame, sizeof(signame), "%d", signo);
sudo_debug_printf(SUDO_DEBUG_DIAG, "forwarding SIG%s to child", signame); sudo_debug_printf(SUDO_DEBUG_DIAG, "scheduled SIG%s for child", signame);
sigfwd = ecalloc(1, sizeof(*sigfwd)); sigfwd = ecalloc(1, sizeof(*sigfwd));
sigfwd->prev = sigfwd; sigfwd->prev = sigfwd;