]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
tty: wipe buffer.
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 4 Oct 2018 18:06:13 +0000 (11:06 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 11 Oct 2018 17:50:00 +0000 (19:50 +0200)
After we are done with the tty buffer, zero it out.

Reported-by: aszlig <aszlig@nix.build>
Tested-by: Milan Broz <gmazyland@gmail.com>
Tested-by: Daniel Zatovic <daniel.zatovic@gmail.com>
Tested-by: aszlig <aszlig@nix.build>
Cc: Willy Tarreau <w@1wt.eu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/tty_buffer.c

index 76151c00285822c100a45a76206d26d5970fdd89..77070c2d1240421fa34f48db9a2ddb24a961f2f0 100644 (file)
@@ -473,11 +473,15 @@ receive_buf(struct tty_port *port, struct tty_buffer *head, int count)
 {
        unsigned char *p = char_buf_ptr(head, head->read);
        char          *f = NULL;
+       int n;
 
        if (~head->flags & TTYB_NORMAL)
                f = flag_buf_ptr(head, head->read);
 
-       return port->client_ops->receive_buf(port, p, f, count);
+       n = port->client_ops->receive_buf(port, p, f, count);
+       if (n > 0)
+               memset(p, 0, n);
+       return n;
 }
 
 /**