Header file termios.h contains incompatible definitions for linux ioctl calls. Correct definitions are exported by header file linux/termios.h but this file conflicts with sys/ioctl.h header file (required for ioctl() call). Therefore include direct asm header file asm/termbits.h which contains compatible definitions and structures for ioctl calls. Signed-off-by: Pali Rohár <pali@xxxxxxxxxx> --- man2/ioctl_tty.2 | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/man2/ioctl_tty.2 b/man2/ioctl_tty.2 index c1875530f0b1..91aceddb7828 100644 --- a/man2/ioctl_tty.2 +++ b/man2/ioctl_tty.2 @@ -11,8 +11,8 @@ ioctl_tty \- ioctls for terminals and serial lines .SH SYNOPSIS .nf .B #include <sys/ioctl.h> -.BR "#include <termios.h>" " /* Definition of " CLOCAL ", and" -.BR " TC*" { FLUSH , ON , OFF "} constants */" +.BR "#include <asm/termbits.h>" " /* Definition of " struct " " termios ", " struct " " termios2 "," +.BR " " " " BOTHER ", " CLOCAL ", and " TC* { FLUSH , ON , OFF "} constants */" .PP .BI "int ioctl(int " fd ", int " cmd ", ...);" .fi @@ -31,6 +31,19 @@ makes for nonportable programs. Use the POSIX interface described in .BR termios (3) whenever possible. +.PP +Please note that +.B struct termios +from +.B #include <asm/termbits.h> +is different and incompatible with +.B struct termios +from +.BR "#include <termios.h>" . +These ioctl calls require +.B struct termios +from +.BR "#include <asm/termbits.h>" . .SS Get and set terminal attributes .TP .B TCGETS -- 2.20.1