]> git.ipfire.org Git - thirdparty/gcc.git/blob - libphobos/libdruntime/core/sys/posix/net/if_.d
Add D front-end, libphobos library, and D2 testsuite.
[thirdparty/gcc.git] / libphobos / libdruntime / core / sys / posix / net / if_.d
1 /**
2 * D header file for POSIX.
3 *
4 * Copyright: Copyright Sean Kelly 2005 - 2009.
5 * License: $(HTTP www.boost.org/LICENSE_1_0.txt, Boost License 1.0).
6 * Authors: Sean Kelly
7 * Standards: The Open Group Base Specifications Issue 6, IEEE Std 1003.1, 2004 Edition
8 */
9
10 /* Copyright Sean Kelly 2005 - 2009.
11 * Distributed under the Boost Software License, Version 1.0.
12 * (See accompanying file LICENSE or copy at
13 * http://www.boost.org/LICENSE_1_0.txt)
14 */
15 module core.sys.posix.net.if_;
16
17 private import core.sys.posix.config;
18
19 version (OSX)
20 version = Darwin;
21 else version (iOS)
22 version = Darwin;
23 else version (TVOS)
24 version = Darwin;
25 else version (WatchOS)
26 version = Darwin;
27
28 version (Posix):
29 extern (C) nothrow @nogc:
30
31 //
32 // Required
33 //
34 /*
35 struct if_nameindex // renamed to if_nameindex_t
36 {
37 uint if_index;
38 char* if_name;
39 }
40
41 IF_NAMESIZE
42
43 uint if_nametoindex(in char*);
44 char* if_indextoname(uint, char*);
45 if_nameindex_t* if_nameindex();
46 void if_freenameindex(if_nameindex_t*);
47 */
48
49 version (CRuntime_Glibc)
50 {
51 struct if_nameindex_t
52 {
53 uint if_index;
54 char* if_name;
55 }
56
57 enum IF_NAMESIZE = 16;
58
59 uint if_nametoindex(in char*);
60 char* if_indextoname(uint, char*);
61 if_nameindex_t* if_nameindex();
62 void if_freenameindex(if_nameindex_t*);
63 }
64 else version (Darwin)
65 {
66 struct if_nameindex_t
67 {
68 uint if_index;
69 char* if_name;
70 }
71
72 enum IF_NAMESIZE = 16;
73
74 uint if_nametoindex(in char*);
75 char* if_indextoname(uint, char*);
76 if_nameindex_t* if_nameindex();
77 void if_freenameindex(if_nameindex_t*);
78 }
79 else version (FreeBSD)
80 {
81 struct if_nameindex_t
82 {
83 uint if_index;
84 char* if_name;
85 }
86
87 enum IF_NAMESIZE = 16;
88
89 uint if_nametoindex(in char*);
90 char* if_indextoname(uint, char*);
91 if_nameindex_t* if_nameindex();
92 void if_freenameindex(if_nameindex_t*);
93 }
94 else version (NetBSD)
95 {
96 struct if_nameindex_t
97 {
98 uint if_index;
99 char* if_name;
100 }
101
102 enum IF_NAMESIZE = 16;
103
104 uint if_nametoindex(in char*);
105 char* if_indextoname(uint, char*);
106 if_nameindex_t* if_nameindex();
107 void if_freenameindex(if_nameindex_t*);
108 }
109 else version (DragonFlyBSD)
110 {
111 struct if_nameindex_t
112 {
113 uint if_index;
114 char* if_name;
115 }
116
117 enum IF_NAMESIZE = 16;
118
119 uint if_nametoindex(in char*);
120 char* if_indextoname(uint, char*);
121 if_nameindex_t* if_nameindex();
122 void if_freenameindex(if_nameindex_t*);
123 }
124 else version (CRuntime_Bionic)
125 {
126 enum IF_NAMESIZE = 16;
127
128 uint if_nametoindex(in char*);
129 char* if_indextoname(uint, char*);
130 }
131 else version (CRuntime_UClibc)
132 {
133 struct if_nameindex_t
134 {
135 uint if_index;
136 char* if_name;
137 }
138
139 enum IF_NAMESIZE = 16;
140
141 uint if_nametoindex(in char*);
142 char* if_indextoname(uint, char*);
143 if_nameindex_t* if_nameindex();
144 void if_freenameindex(if_nameindex_t*);
145 }