]> granicus.if.org Git - sudo/commitdiff
Sprinkle some extra debugging printfs
authorTodd C. Miller <Todd.Miller@sudo.ws>
Wed, 29 Nov 2017 20:13:33 +0000 (13:13 -0700)
committerTodd C. Miller <Todd.Miller@sudo.ws>
Wed, 29 Nov 2017 20:13:33 +0000 (13:13 -0700)
src/exec_monitor.c
src/signal.c

index 54e79779148d359f817d85adb8f36b1e31e5dca5..602ba004d3be1a887ad1ddd8188884583449bc18 100644 (file)
@@ -380,8 +380,12 @@ exec_cmnd_pty(struct command_details *details, bool foreground, int errfd)
     /* Wait for parent to grant us the tty if we are foreground. */
     if (foreground && !ISSET(details->flags, CD_EXEC_BG)) {
        struct timespec ts = { 0, 1000 };  /* 1us */
+       sudo_debug_printf(SUDO_DEBUG_DEBUG, "%s: waiting for controlling tty",
+           __func__);
        while (tcgetpgrp(io_fds[SFD_SLAVE]) != self)
            nanosleep(&ts, NULL);
+       sudo_debug_printf(SUDO_DEBUG_DEBUG, "%s: got controlling tty",
+           __func__);
     }
 
     /* Done with the pty slave, don't leak it. */
@@ -389,6 +393,8 @@ exec_cmnd_pty(struct command_details *details, bool foreground, int errfd)
        close(io_fds[SFD_SLAVE]);
 
     /* Execute command; only returns on error. */
+    sudo_debug_printf(SUDO_DEBUG_INFO, "executing %s in the %s",
+       details->command, foreground ? "foreground" : "background");
     exec_cmnd(details, errfd);
 
     debug_return;
index f0af73859af91602f6370bbc7008d4de5b05395f..eef29361a87a5f8f0b5a687231285a6c15f50548 100644 (file)
@@ -97,6 +97,10 @@ restore_signals(void)
 
     for (ss = saved_signals; ss->signo != -1; ss++) {
        if (ss->restore) {
+           sudo_debug_printf(SUDO_DEBUG_INFO,
+               "restoring handler for signal %d: %s", ss->signo,
+               ss->sa.sa_handler == SIG_IGN ? "SIG_IGN" :
+               ss->sa.sa_handler == SIG_DFL ? "SIG_DFL" : "???");
            if (sigaction(ss->signo, &ss->sa, NULL) != 0) {
                sudo_warn(U_("unable to restore handler for signal %d"),
                    ss->signo);