]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Remove termios2 ioctl defintions from public headers
authorAndreas Schwab <schwab@suse.de>
Thu, 10 Jul 2025 07:19:38 +0000 (09:19 +0200)
committerAndreas Schwab <schwab@suse.de>
Thu, 10 Jul 2025 09:39:43 +0000 (11:39 +0200)
The use of the termios2 ioctl interface is an implementation detail which
should not bleed into public headers.  Remove the PowerPC version of
<bits/ioctls.h> and define the termios2 ioctl numbers in <termios_arch.h>
instead.  Also remove the include check from there which is unneeded in an
internal header.

sysdeps/unix/sysv/linux/powerpc/bits/ioctls.h [deleted file]
sysdeps/unix/sysv/linux/powerpc/termios_arch.h

diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/ioctls.h b/sysdeps/unix/sysv/linux/powerpc/bits/ioctls.h
deleted file mode 100644 (file)
index e1921df..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright (C) 1996-2025 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <https://www.gnu.org/licenses/>.  */
-
-#ifndef _SYS_IOCTL_H
-# error "Never use <bits/ioctls.h> directly; include <sys/ioctl.h> instead."
-#endif
-
-/* Use the definitions from the kernel header files.  */
-#include <asm/ioctls.h>
-
-/* PowerPC quirk: on PowerPC only, ioctl() emulates the TCGETS/TCSETS*
-   ioctls with tcgetattr/tcsetattr using the glibc struct termios.
-   As struct termios2 is the same as the kernel struct termios on PowerPC,
-   simply consider the kernel ones as the termios2 interface, even
-   though the kernel doesn't call it that. */
-
-#define TCGETS2         _IOR ('t', 19, struct termios2)
-#define TCSETS2         _IOW ('t', 20, struct termios2)
-#define TCSETSW2 _IOW ('t', 21, struct termios2)
-#define TCSETSF2 _IOW ('t', 22, struct termios2)
-
-#include <linux/sockios.h>
index 20025f25495acd71451e76abba89812be48bace6..919b4376502cc1bbe0524d7a758f5e5414d0d13a 100644 (file)
@@ -1,4 +1,4 @@
-/* Architectural parameters for Linux termios - Alpha/PowerPC version
+/* Architectural parameters for Linux termios - PowerPC version
 
    Copyright (C) 1997-2025 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    License along with the GNU C Library; if not, see
    <https://www.gnu.org/licenses/>.  */
 
-#ifndef TERMIOS_INTERNALS_H
-# error "<termios_arch.h> should only be included from <termios_internals.h>"
-#endif
-
 #define _TERMIOS2_NCCS 19
 #define _HAVE_TERMIOS2_C_CC_BEFORE_C_LINE 1
 #define _HAVE_STRUCT_OLD_TERMIOS 0
+
+/* PowerPC quirk: on PowerPC only, ioctl() emulates the TCGETS/TCSETS*
+   ioctls with tcgetattr/tcsetattr using the glibc struct termios.
+   As struct termios2 is the same as the kernel struct termios on PowerPC,
+   simply consider the kernel ones as the termios2 interface, even
+   though the kernel doesn't call it that. */
+
+#define TCGETS2         _IOR ('t', 19, struct termios2)
+#define TCSETS2         _IOW ('t', 20, struct termios2)
+#define TCSETSW2 _IOW ('t', 21, struct termios2)
+#define TCSETSF2 _IOW ('t', 22, struct termios2)