summaryrefslogtreecommitdiffstats
path: root/include/linux/tty.h
diff options
context:
space:
mode:
authorPeter Hurley <peter@hurleysoftware.com>2016-01-09 22:55:27 -0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-01-27 16:41:04 -0800
commit309426ae69cdf35b0d72a8bd59a5081f8ddccddd (patch)
treeab1c875ae4e292d7e897d672923c7d5da1ec23aa /include/linux/tty.h
parenteab25a5cd1f91b5c7991affe95f24ce188b8021f (diff)
downloadlinux-309426ae69cdf35b0d72a8bd59a5081f8ddccddd.tar.gz
linux-309426ae69cdf35b0d72a8bd59a5081f8ddccddd.tar.xz
tty: audit: Remove icanon mode from call chain
The tty termios bits cannot change while n_tty_read() is in the i/o loop; the termios_rwsem ensures mutual exclusion with termios changes in n_tty_set_termios(). Check L_ICANON() directly and eliminate icanon parameter. NB: tty_audit_add_data() => tty_audit_buf_get() => tty_audit_buf_alloc() is a single path; ie., tty_audit_buf_get() and tty_audit_buf_alloc() have no other callers. Signed-off-by: Peter Hurley <peter@hurleysoftware.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/tty.h')
-rw-r--r--include/linux/tty.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/include/linux/tty.h b/include/linux/tty.h
index 780adbfc6dce..c011dc205e5c 100644
--- a/include/linux/tty.h
+++ b/include/linux/tty.h
@@ -593,7 +593,7 @@ extern void __init n_tty_init(void);
/* tty_audit.c */
#ifdef CONFIG_AUDIT
extern void tty_audit_add_data(struct tty_struct *tty, const void *data,
- size_t size, unsigned icanon);
+ size_t size);
extern void tty_audit_exit(void);
extern void tty_audit_fork(struct signal_struct *sig);
extern void tty_audit_tiocsti(struct tty_struct *tty, char ch);
@@ -601,7 +601,7 @@ extern void tty_audit_push(struct tty_struct *tty);
extern int tty_audit_push_current(void);
#else
static inline void tty_audit_add_data(struct tty_struct *tty, const void *data,
- size_t size, unsigned icanon)
+ size_t size)
{
}
static inline void tty_audit_tiocsti(struct tty_struct *tty, char ch)