From de1cce6d446c38fde590cac2531560742d446043 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Tue, 22 Feb 2022 06:30:26 -0800 Subject: termios: overflow in initialization on 32 bits. * termios.c (termios_init): The CMSPAR and CRTSCTS constants cannot be passed to num_fast; they are out of range, and so the corresponding cmspar and crtscts variables will end up with garbage values. --- termios.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'termios.c') diff --git a/termios.c b/termios.c index 818eea47..c717fa76 100644 --- a/termios.c +++ b/termios.c @@ -552,10 +552,10 @@ void termios_init(void) reg_varl(intern(lit("cbaudex"), user_package), num_fast(CBAUDEX)); #endif #ifdef CMSPAR - reg_varl(intern(lit("cmspar"), user_package), num_fast(CMSPAR)); + reg_varl(intern(lit("cmspar"), user_package), num(CMSPAR)); #endif #ifdef CRTSCTS - reg_varl(intern(lit("crtscts"), user_package), num_fast(CRTSCTS)); + reg_varl(intern(lit("crtscts"), user_package), num(CRTSCTS)); #endif /* lflag bits */ reg_varl(intern(lit("isig"), user_package), num_fast(ISIG)); -- cgit v1.2.3