]> granicus.if.org Git - sudo/commitdiff
Terminate the command if an I/O log function returns 0 or -1. This
authorTodd C. Miller <Todd.Miller@courtesan.com>
Thu, 27 Jul 2017 20:10:44 +0000 (14:10 -0600)
committerTodd C. Miller <Todd.Miller@courtesan.com>
Thu, 27 Jul 2017 20:10:44 +0000 (14:10 -0600)
was mistakenly removed by 25b7fd056614 in Sudo 1.8.18 with the
removal of the ignore_iolog_errors variable.

src/exec_pty.c

index 979fccfff905eeb32075e57ba94d60e432223bcf..3e19c1125584cecd3eaebfeb6e473e30ee8d7642 100644 (file)
@@ -192,6 +192,7 @@ log_ttyin(const char *buf, unsigned int n, struct io_buffer *iob)
                    /* Error: disable plugin's I/O function. */
                    plugin->u.io->log_ttyin = NULL;
                }
+               ret = false;
                break;
            }
        }
@@ -223,6 +224,7 @@ log_stdin(const char *buf, unsigned int n, struct io_buffer *iob)
                    /* Error: disable plugin's I/O function. */
                    plugin->u.io->log_stdin = NULL;
                }
+               ret = false;
                break;
            }
        }
@@ -254,6 +256,7 @@ log_ttyout(const char *buf, unsigned int n, struct io_buffer *iob)
                    /* Error: disable plugin's I/O function. */
                    plugin->u.io->log_ttyout = NULL;
                }
+               ret = false;
                break;
            }
        }
@@ -297,6 +300,7 @@ log_stdout(const char *buf, unsigned int n, struct io_buffer *iob)
                    /* Error: disable plugin's I/O function. */
                    plugin->u.io->log_stdout = NULL;
                }
+               ret = false;
                break;
            }
        }
@@ -340,6 +344,7 @@ log_stderr(const char *buf, unsigned int n, struct io_buffer *iob)
                    /* Error: disable plugin's I/O function. */
                    plugin->u.io->log_stderr = NULL;
                }
+               ret = false;
                break;
            }
        }