Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
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.
  • Loading branch information
Joseph Myers committed Apr 8, 2016
1 parent 25dba0a commit fb3227b
Show file tree
Hide file tree
Showing 7 changed files with 19 additions and 7 deletions.
14 changes: 14 additions & 0 deletions ChangeLog
@@ -1,3 +1,17 @@
2016-04-08 Joseph Myers <joseph@codesourcery.com>

[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 <murphyp@linux.vnet.ibm.com>

* sysdeps/powerpc/powerpc64/multiarch/Makefile:
Expand Down
2 changes: 0 additions & 2 deletions conform/Makefile
Expand Up @@ -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
Expand All @@ -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: \
Expand Down
2 changes: 1 addition & 1 deletion sysdeps/unix/sysv/linux/alpha/bits/termios.h
Expand Up @@ -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
Expand Down
2 changes: 1 addition & 1 deletion sysdeps/unix/sysv/linux/bits/termios.h
Expand Up @@ -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
Expand Down
2 changes: 1 addition & 1 deletion sysdeps/unix/sysv/linux/mips/bits/termios.h
Expand Up @@ -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. */
Expand Down
2 changes: 1 addition & 1 deletion sysdeps/unix/sysv/linux/powerpc/bits/termios.h
Expand Up @@ -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
Expand Down
2 changes: 1 addition & 1 deletion sysdeps/unix/sysv/linux/sparc/bits/termios.h
Expand Up @@ -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
Expand Down

0 comments on commit fb3227b

Please sign in to comment.