xref: /netbsd-src/external/gpl3/gcc/dist/libphobos/libdruntime/core/sys/posix/sys/filio.d (revision 0a3071956a3a9fdebdbf7f338cf2d439b45fc728)
1 /**
2  * D header file for POSIX.
3  *
4  * License: $(HTTP www.boost.org/LICENSE_1_0.txt, Boost License 1.0).
5  */
6 
7 module core.sys.posix.sys.filio;
8 
9 import core.sys.posix.sys.ioccom;
10 
11 version (OSX)
12     version = Darwin;
13 else version (iOS)
14     version = Darwin;
15 else version (TVOS)
16     version = Darwin;
17 else version (WatchOS)
18     version = Darwin;
19 
version(Posix)20 version (Posix):
21 
22 nothrow @nogc:
23 @system:
24 
25 version (Darwin)
26 {
27     // File-descriptor ioctl's
28     enum uint FIOCLEX   = _IO('f', 1);         // set close on exec on fd
29     enum uint FIONCLEX  = _IO('f', 2);         // remove close on exec
30     enum uint FIONREAD  = _IOR!(int)('f', 127); // get # bytes to read
31     enum uint FIONBIO   = _IOW!(int)('f', 126); // set/clear non-blocking i/o
32     enum uint FIOASYNC  = _IOW!(int)('f', 125); // set/clear async i/o
33     enum uint FIOSETOWN = _IOW!(int)('f', 124); // set owner
34     enum uint FIOGETOWN = _IOR!(int)('f', 123); // get owner
35     enum uint FIODTYPE  = _IOR!(int)('f', 122); // get d_type
36 }
37 
version(OpenBSD)38 version (OpenBSD)
39 {
40     // File-descriptor ioctl's
41     enum uint FIOCLEX   = _IO('f', 1);         // set close on exec on fd
42     enum uint FIONCLEX  = _IO('f', 2);         // remove close on exec
43     enum uint FIONREAD  = _IOR!(int)('f', 127); // get # bytes to read
44     enum uint FIONBIO   = _IOW!(int)('f', 126); // set/clear non-blocking i/o
45     enum uint FIOASYNC  = _IOW!(int)('f', 125); // set/clear async i/o
46     enum uint FIOSETOWN = _IOW!(int)('f', 124); // set owner
47     enum uint FIOGETOWN = _IOR!(int)('f', 123); // get owner
48 }
49