Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Wed, 29 Jan 2020 16:55:30 +0100
From: Szabolcs Nagy <>
Subject: Re: MUSL not including <sys/ttydefaults.h> in <sys/ioctl.h>

* Petr Vorel <> [2020-01-29 13:50:12 +0100]:
> Hi,
> Glibc is including <sys/ttydefaults.h> in <sys/ioctl.h> with following comment:
> /* On a Unix system, the system <sys/ioctl.h> probably defines some of
>    the symbols we define in <sys/ttydefaults.h> (usually with the same
>    values).  The code to generate <bits/ioctls.h> has omitted these
>    symbols to avoid the conflict, but a Unix program expects <sys/ioctl.h>
>    to define them, so we must include <sys/ttydefaults.h> here.  */
> I guess glibc is (as usual) wrong and therefore users who needs these
> definitions should load also <sys/ttydefaults.h> explicitly.

at some point i did some sys/ioctl.h cleanup
and i don't remember how conciously i omitted
the sys/ttydefaults.h include. (they are both
non-standard headers so in principle including
is ok)

sys/ttydefaults.h is more related to termios.h:
several TTYDEF_* macros depend on termios.h and
termios.h includes it on both glibc and bsd in
non-standard mode i think (termios.h is standard
header). it is weird to include things into
ioctl.h that don't work without termios.h.

i don't think bsd sys/ioctl.h includes it, but
ioctl is very os specific.

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.