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