From: Joseph Myers Date: Fri, 8 Apr 2016 18:16:09 +0000 (+0000) Subject: Fix termios.h XCASE namespace (bug 19925). X-Git-Tag: glibc-2.24~415 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fb3227b95caae0d99d0c185099486240a75e2076;p=thirdparty%2Fglibc.git Fix termios.h XCASE namespace (bug 19925). bits/termios.h (various versions under sysdeps/unix/sysv/linux) defines XCASE if defined __USE_MISC || defined __USE_XOPEN. This macro was removed in the 2001 edition of POSIX, and is not otherwise reserved, so should not be defined for 2001 and later versions of POSIX. This patch fixes the conditions accordingly (leaving the macro defined for __USE_MISC, so still in the default namespace). Tested for x86_64 and x86 (testsuite, and that installed shared libraries are unchanged by the patch). [BZ #19925] * sysdeps/unix/sysv/linux/alpha/bits/termios.h (XCASE): Do not define if [!__USE_MISC && __USE_XOPEN2K]. * sysdeps/unix/sysv/linux/bits/termios.h (XCASE): Likewise. * sysdeps/unix/sysv/linux/mips/bits/termios.h (XCASE): Likewise. * sysdeps/unix/sysv/linux/powerpc/bits/termios.h (XCASE): Likewise. * sysdeps/unix/sysv/linux/sparc/bits/termios.h (XCASE): Likewise. * conform/Makefile (test-xfail-XOPEN2K/termios.h/conform): Remove variable. (test-xfail-XOPEN2K8/termios.h/conform): Likewise. --- diff --git a/ChangeLog b/ChangeLog index 9d48c8beb36..61562e2a7c1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,17 @@ +2016-04-08 Joseph Myers + + [BZ #19925] + * sysdeps/unix/sysv/linux/alpha/bits/termios.h (XCASE): Do not + define if [!__USE_MISC && __USE_XOPEN2K]. + * sysdeps/unix/sysv/linux/bits/termios.h (XCASE): Likewise. + * sysdeps/unix/sysv/linux/mips/bits/termios.h (XCASE): Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/termios.h (XCASE): + Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios.h (XCASE): Likewise. + * conform/Makefile (test-xfail-XOPEN2K/termios.h/conform): Remove + variable. + (test-xfail-XOPEN2K8/termios.h/conform): Likewise. + 2016-04-07 Paul E. Murphy * sysdeps/powerpc/powerpc64/multiarch/Makefile: diff --git a/conform/Makefile b/conform/Makefile index fddeaa17685..ed94ffc7358 100644 --- a/conform/Makefile +++ b/conform/Makefile @@ -218,7 +218,6 @@ test-xfail-XOPEN2K/signal.h/conform = yes test-xfail-XOPEN2K/stdarg.h/conform = yes test-xfail-XOPEN2K/stdio.h/conform = yes test-xfail-XOPEN2K/sys/wait.h/conform = yes -test-xfail-XOPEN2K/termios.h/conform = yes test-xfail-XOPEN2K/ucontext.h/conform = yes test-xfail-POSIX2008/arpa/inet.h/conform = yes test-xfail-POSIX2008/netdb.h/conform = yes @@ -230,7 +229,6 @@ test-xfail-XOPEN2K8/limits.h/conform = yes test-xfail-XOPEN2K8/signal.h/conform = yes test-xfail-XOPEN2K8/stdio.h/conform = yes test-xfail-XOPEN2K8/sys/wait.h/conform = yes -test-xfail-XOPEN2K8/termios.h/conform = yes conformtest-cc-flags = -I../include $(+sysdep-includes) $(sysincludes) -I.. $(conformtest-header-tests): $(objpfx)%/conform.out: \ diff --git a/sysdeps/unix/sysv/linux/alpha/bits/termios.h b/sysdeps/unix/sysv/linux/alpha/bits/termios.h index d9b5be9f443..ddb0e427a78 100644 --- a/sysdeps/unix/sysv/linux/alpha/bits/termios.h +++ b/sysdeps/unix/sysv/linux/alpha/bits/termios.h @@ -185,7 +185,7 @@ struct termios /* c_lflag bits */ #define ISIG 0x00000080 #define ICANON 0x00000100 -#if defined __USE_MISC || defined __USE_XOPEN +#if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) # define XCASE 0x00004000 #endif #define ECHO 0x00000008 diff --git a/sysdeps/unix/sysv/linux/bits/termios.h b/sysdeps/unix/sysv/linux/bits/termios.h index bbf093dc67e..e09f826e0f7 100644 --- a/sysdeps/unix/sysv/linux/bits/termios.h +++ b/sysdeps/unix/sysv/linux/bits/termios.h @@ -177,7 +177,7 @@ struct termios /* c_lflag bits */ #define ISIG 0000001 #define ICANON 0000002 -#if defined __USE_MISC || defined __USE_XOPEN +#if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) # define XCASE 0000004 #endif #define ECHO 0000010 diff --git a/sysdeps/unix/sysv/linux/mips/bits/termios.h b/sysdeps/unix/sysv/linux/mips/bits/termios.h index 7013cdd8232..8ca3f98d22a 100644 --- a/sysdeps/unix/sysv/linux/mips/bits/termios.h +++ b/sysdeps/unix/sysv/linux/mips/bits/termios.h @@ -175,7 +175,7 @@ struct termios /* c_lflag bits */ #define ISIG 0000001 /* Enable signals. */ #define ICANON 0000002 /* Do erase and kill processing. */ -#if defined __USE_MISC || defined __USE_XOPEN +#if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) # define XCASE 0000004 #endif #define ECHO 0000010 /* Enable echo. */ diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/termios.h b/sysdeps/unix/sysv/linux/powerpc/bits/termios.h index e13ea3f6769..ba8a388a5a4 100644 --- a/sysdeps/unix/sysv/linux/powerpc/bits/termios.h +++ b/sysdeps/unix/sysv/linux/powerpc/bits/termios.h @@ -187,7 +187,7 @@ struct termios { /* c_lflag bits */ #define ISIG 0x00000080 #define ICANON 0x00000100 -#if defined __USE_MISC || defined __USE_XOPEN +#if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) # define XCASE 0x00004000 #endif #define ECHO 0x00000008 diff --git a/sysdeps/unix/sysv/linux/sparc/bits/termios.h b/sysdeps/unix/sysv/linux/sparc/bits/termios.h index 65673aafdc3..3d04f415df0 100644 --- a/sysdeps/unix/sysv/linux/sparc/bits/termios.h +++ b/sysdeps/unix/sysv/linux/sparc/bits/termios.h @@ -181,7 +181,7 @@ struct termios /* c_lflag bits */ #define ISIG 0x00000001 #define ICANON 0x00000002 -#if defined __USE_MISC || defined __USE_XOPEN +#if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K) # define XCASE 0x00000004 #endif #define ECHO 0x00000008