df4882cdedeb8df2ca100261502333f9ef8de5d8
[virt-mem.git] / lib / kernel_net.ml
1 (* WARNING: This file and the corresponding mli (interface) are
2  * automatically generated by the extract/codegen/kerneldb_to_parser.ml
3  * program.
4  *
5  * Any edits you make to this file will be lost.
6  *
7  * To update this file from the latest kernel database, it is recommended
8  * that you do 'make update-kernel-structs'.
9  *)
10
11 let zero = 0;;
12 let struct_name = "net";;
13 let match_err = "failed to match kernel structure";;
14 type t = { net_dev_base_head'next : Virt_mem_mmap.addr };;
15 type fs_t = { __fs_net_dev_base_head'next : Virt_mem_types.fieldsig };;
16 let fieldsig_1 =
17   {
18     (())
19     with
20     __fs_net_dev_base_head'next =
21       { Virt_mem_types.field_available = true; field_offset = 64; };
22   };;
23 let fieldsig_2 =
24   {
25     (())
26     with
27     __fs_net_dev_base_head'next =
28       { Virt_mem_types.field_available = true; field_offset = 48; };
29   };;
30 let fieldsig_3 =
31   {
32     (())
33     with
34     __fs_net_dev_base_head'next =
35       { Virt_mem_types.field_available = true; field_offset = 72; };
36   };;
37 let fieldsig_4 =
38   {
39     (())
40     with
41     __fs_net_dev_base_head'next =
42       { Virt_mem_types.field_available = true; field_offset = 128; };
43   };;
44 let fieldsig_5 =
45   {
46     (())
47     with
48     __fs_net_dev_base_head'next =
49       { Virt_mem_types.field_available = true; field_offset = 48; };
50   };;
51 let fieldsig_6 =
52   {
53     (())
54     with
55     __fs_net_dev_base_head'next =
56       { Virt_mem_types.field_available = true; field_offset = 88; };
57   };;
58 let fieldsig_7 =
59   {
60     (())
61     with
62     __fs_net_dev_base_head'next =
63       { Virt_mem_types.field_available = true; field_offset = 120; };
64   };;
65 let fieldsig_8 =
66   {
67     (())
68     with
69     __fs_net_dev_base_head'next =
70       { Virt_mem_types.field_available = true; field_offset = 52; };
71   };;
72 let fieldsig_9 =
73   {
74     (())
75     with
76     __fs_net_dev_base_head'next =
77       { Virt_mem_types.field_available = true; field_offset = 96; };
78   };;
79 let fieldsig_10 =
80   {
81     (())
82     with
83     __fs_net_dev_base_head'next =
84       { Virt_mem_types.field_available = true; field_offset = 96; };
85   };;
86 let fieldsig_11 =
87   {
88     (())
89     with
90     __fs_net_dev_base_head'next =
91       { Virt_mem_types.field_available = true; field_offset = 56; };
92   };;
93 let fieldsig_12 =
94   {
95     (())
96     with
97     __fs_net_dev_base_head'next =
98       { Virt_mem_types.field_available = true; field_offset = 144; };
99   };;
100 let fieldsig_13 =
101   {
102     (())
103     with
104     __fs_net_dev_base_head'next =
105       { Virt_mem_types.field_available = true; field_offset = 144; };
106   };;
107 let parser_1 bits = 
108   bitmatch bits with
109   | { net_dev_base_head'next : zero+32 : offset(512), littleendian } ->
110       { net_dev_base_head'next = Int64.sub net_dev_base_head'next 64L }
111   | { _ } ->
112       raise (Virt_mem_types.ParseError (struct_name, "parser_1", match_err));;
113 let parser_2 bits = 
114   bitmatch bits with
115   | { net_dev_base_head'next : zero+32 : offset(384), littleendian } ->
116       { net_dev_base_head'next = Int64.sub net_dev_base_head'next 48L }
117   | { _ } ->
118       raise (Virt_mem_types.ParseError (struct_name, "parser_2", match_err));;
119 let parser_3 bits = 
120   bitmatch bits with
121   | { net_dev_base_head'next : zero+32 : offset(576), littleendian } ->
122       { net_dev_base_head'next = Int64.sub net_dev_base_head'next 72L }
123   | { _ } ->
124       raise (Virt_mem_types.ParseError (struct_name, "parser_3", match_err));;
125 let parser_4 bits = 
126   bitmatch bits with
127   | { net_dev_base_head'next : zero+64 : offset(1024), littleendian } ->
128       { net_dev_base_head'next = Int64.sub net_dev_base_head'next 128L }
129   | { _ } ->
130       raise (Virt_mem_types.ParseError (struct_name, "parser_4", match_err));;
131 let parser_5 bits = 
132   bitmatch bits with
133   | { net_dev_base_head'next : zero+32 : offset(384), bigendian } ->
134       { net_dev_base_head'next = Int64.sub net_dev_base_head'next 48L }
135   | { _ } ->
136       raise (Virt_mem_types.ParseError (struct_name, "parser_5", match_err));;
137 let parser_6 bits = 
138   bitmatch bits with
139   | { net_dev_base_head'next : zero+64 : offset(704), bigendian } ->
140       { net_dev_base_head'next = Int64.sub net_dev_base_head'next 88L }
141   | { _ } ->
142       raise (Virt_mem_types.ParseError (struct_name, "parser_6", match_err));;
143 let parser_7 bits = 
144   bitmatch bits with
145   | { net_dev_base_head'next : zero+64 : offset(960), littleendian } ->
146       { net_dev_base_head'next = Int64.sub net_dev_base_head'next 120L }
147   | { _ } ->
148       raise (Virt_mem_types.ParseError (struct_name, "parser_7", match_err));;
149 let parser_8 bits = 
150   bitmatch bits with
151   | { net_dev_base_head'next : zero+32 : offset(416), littleendian } ->
152       { net_dev_base_head'next = Int64.sub net_dev_base_head'next 52L }
153   | { _ } ->
154       raise (Virt_mem_types.ParseError (struct_name, "parser_8", match_err));;
155 let parser_9 bits = 
156   bitmatch bits with
157   | { net_dev_base_head'next : zero+64 : offset(768), littleendian } ->
158       { net_dev_base_head'next = Int64.sub net_dev_base_head'next 96L }
159   | { _ } ->
160       raise (Virt_mem_types.ParseError (struct_name, "parser_9", match_err));;
161 let parser_10 bits = 
162   bitmatch bits with
163   | { net_dev_base_head'next : zero+64 : offset(768), bigendian } ->
164       { net_dev_base_head'next = Int64.sub net_dev_base_head'next 96L }
165   | { _ } ->
166       raise (Virt_mem_types.ParseError (struct_name, "parser_10", match_err));;
167 let parser_11 bits = 
168   bitmatch bits with
169   | { net_dev_base_head'next : zero+32 : offset(448), bigendian } ->
170       { net_dev_base_head'next = Int64.sub net_dev_base_head'next 56L }
171   | { _ } ->
172       raise (Virt_mem_types.ParseError (struct_name, "parser_11", match_err));;
173 let parser_12 bits = 
174   bitmatch bits with
175   | { net_dev_base_head'next : zero+64 : offset(1152), bigendian } ->
176       { net_dev_base_head'next = Int64.sub net_dev_base_head'next 144L }
177   | { _ } ->
178       raise (Virt_mem_types.ParseError (struct_name, "parser_12", match_err));;
179 let parser_13 bits = 
180   bitmatch bits with
181   | { net_dev_base_head'next : zero+64 : offset(1152), littleendian } ->
182       { net_dev_base_head'next = Int64.sub net_dev_base_head'next 144L }
183   | { _ } ->
184       raise (Virt_mem_types.ParseError (struct_name, "parser_13", match_err));;
185 module StringMap = Map.Make(String);;
186 let map = StringMap.empty;;
187 let v = (parser_1, 732, fieldsig_1);;
188 let map = StringMap.add "2.6.26.2-2.fc8.i686" v map;;
189 let v = (parser_1, 80, fieldsig_1);;
190 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.i686" v map;;
191 let v = (parser_1, 80, fieldsig_1);;
192 let map = StringMap.add "2.6.24-7.fc9.i686" v map;;
193 let v = (parser_1, 80, fieldsig_1);;
194 let map = StringMap.add "2.6.24-9.fc9.i686" v map;;
195 let v = (parser_2, 660, fieldsig_2);;
196 let map = StringMap.add "2.6.26.2-2.fc8.i686" v map;;
197 let v = (parser_3, 912, fieldsig_3);;
198 let map = StringMap.add "2.6.27-0.231.rc1.git6.fc10.i686" v map;;
199 let v = (parser_3, 912, fieldsig_3);;
200 let map = StringMap.add "2.6.27-0.237.rc2.fc10.i686" v map;;
201 let v = (parser_3, 912, fieldsig_3);;
202 let map = StringMap.add "2.6.27-0.238.rc2.fc10.i686" v map;;
203 let v = (parser_3, 912, fieldsig_3);;
204 let map = StringMap.add "2.6.27-0.241.rc2.git1.fc10.i686" v map;;
205 let v = (parser_3, 912, fieldsig_3);;
206 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.i686" v map;;
207 let v = (parser_1, 732, fieldsig_1);;
208 let map = StringMap.add "2.6.26.2-2.fc8.i686" v map;;
209 let v = (parser_4, 1352, fieldsig_4);;
210 let map = StringMap.add "2.6.26.2-2.fc8.x86_64" v map;;
211 let v = (parser_1, 80, fieldsig_1);;
212 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.i586" v map;;
213 let v = (parser_1, 80, fieldsig_1);;
214 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.i686" v map;;
215 let v = (parser_5, 64, fieldsig_5);;
216 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.ppc" v map;;
217 let v = (parser_6, 120, fieldsig_6);;
218 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.ppc64" v map;;
219 let v = (parser_7, 152, fieldsig_7);;
220 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.x86_64" v map;;
221 let v = (parser_1, 80, fieldsig_1);;
222 let map = StringMap.add "2.6.24-7.fc9.i586" v map;;
223 let v = (parser_1, 80, fieldsig_1);;
224 let map = StringMap.add "2.6.24-7.fc9.i686" v map;;
225 let v = (parser_5, 64, fieldsig_5);;
226 let map = StringMap.add "2.6.24-7.fc9.ppc" v map;;
227 let v = (parser_6, 120, fieldsig_6);;
228 let map = StringMap.add "2.6.24-7.fc9.ppc64" v map;;
229 let v = (parser_7, 152, fieldsig_7);;
230 let map = StringMap.add "2.6.24-7.fc9.x86_64" v map;;
231 let v = (parser_1, 80, fieldsig_1);;
232 let map = StringMap.add "2.6.24-9.fc9.i586" v map;;
233 let v = (parser_1, 80, fieldsig_1);;
234 let map = StringMap.add "2.6.24-9.fc9.i686" v map;;
235 let v = (parser_5, 64, fieldsig_5);;
236 let map = StringMap.add "2.6.24-9.fc9.ppc" v map;;
237 let v = (parser_6, 120, fieldsig_6);;
238 let map = StringMap.add "2.6.24-9.fc9.ppc64" v map;;
239 let v = (parser_7, 152, fieldsig_7);;
240 let map = StringMap.add "2.6.24-9.fc9.x86_64" v map;;
241 let v = (parser_8, 284, fieldsig_8);;
242 let map = StringMap.add "2.6.25.11-97.fc9.i686" v map;;
243 let v = (parser_9, 488, fieldsig_9);;
244 let map = StringMap.add "2.6.25.11-97.fc9.x86_64" v map;;
245 let v = (parser_2, 660, fieldsig_2);;
246 let map = StringMap.add "2.6.26.2-2.fc8.i586" v map;;
247 let v = (parser_2, 660, fieldsig_2);;
248 let map = StringMap.add "2.6.26.2-2.fc8.i686" v map;;
249 let v = (parser_5, 652, fieldsig_5);;
250 let map = StringMap.add "2.6.26.2-2.fc8.ppc" v map;;
251 let v = (parser_10, 1224, fieldsig_10);;
252 let map = StringMap.add "2.6.26.2-2.fc8.ppc64" v map;;
253 let v = (parser_9, 1224, fieldsig_9);;
254 let map = StringMap.add "2.6.26.2-2.fc8.x86_64" v map;;
255 let v = (parser_3, 912, fieldsig_3);;
256 let map = StringMap.add "2.6.27-0.231.rc1.git6.fc10.i686" v map;;
257 let v = (parser_3, 912, fieldsig_3);;
258 let map = StringMap.add "2.6.27-0.237.rc2.fc10.i586" v map;;
259 let v = (parser_3, 912, fieldsig_3);;
260 let map = StringMap.add "2.6.27-0.237.rc2.fc10.i686" v map;;
261 let v = (parser_11, 860, fieldsig_11);;
262 let map = StringMap.add "2.6.27-0.237.rc2.fc10.ppc" v map;;
263 let v = (parser_12, 1680, fieldsig_12);;
264 let map = StringMap.add "2.6.27-0.237.rc2.fc10.ppc64" v map;;
265 let v = (parser_13, 1680, fieldsig_13);;
266 let map = StringMap.add "2.6.27-0.237.rc2.fc10.x86_64" v map;;
267 let v = (parser_3, 912, fieldsig_3);;
268 let map = StringMap.add "2.6.27-0.238.rc2.fc10.i586" v map;;
269 let v = (parser_3, 912, fieldsig_3);;
270 let map = StringMap.add "2.6.27-0.238.rc2.fc10.i686" v map;;
271 let v = (parser_11, 860, fieldsig_11);;
272 let map = StringMap.add "2.6.27-0.238.rc2.fc10.ppc" v map;;
273 let v = (parser_12, 1680, fieldsig_12);;
274 let map = StringMap.add "2.6.27-0.238.rc2.fc10.ppc64" v map;;
275 let v = (parser_13, 1680, fieldsig_13);;
276 let map = StringMap.add "2.6.27-0.238.rc2.fc10.x86_64" v map;;
277 let v = (parser_3, 912, fieldsig_3);;
278 let map = StringMap.add "2.6.27-0.241.rc2.git1.fc10.i586" v map;;
279 let v = (parser_3, 912, fieldsig_3);;
280 let map = StringMap.add "2.6.27-0.241.rc2.git1.fc10.i686" v map;;
281 let v = (parser_11, 860, fieldsig_11);;
282 let map = StringMap.add "2.6.27-0.241.rc2.git1.fc10.ppc" v map;;
283 let v = (parser_12, 1680, fieldsig_12);;
284 let map = StringMap.add "2.6.27-0.241.rc2.git1.fc10.ppc64" v map;;
285 let v = (parser_13, 1680, fieldsig_13);;
286 let map = StringMap.add "2.6.27-0.241.rc2.git1.fc10.x86_64" v map;;
287 let v = (parser_3, 912, fieldsig_3);;
288 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.i586" v map;;
289 let v = (parser_3, 912, fieldsig_3);;
290 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.i686" v map;;
291 let v = (parser_11, 860, fieldsig_11);;
292 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.ppc" v map;;
293 let v = (parser_12, 1680, fieldsig_12);;
294 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.ppc64" v map;;
295 let v = (parser_13, 1680, fieldsig_13);;
296 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.x86_64" v map;;
297 let v = (parser_6, 120, fieldsig_6);;
298 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.ppc64" v map;;
299 let v = (parser_6, 120, fieldsig_6);;
300 let map = StringMap.add "2.6.24-7.fc9.ppc64" v map;;
301 let v = (parser_6, 120, fieldsig_6);;
302 let map = StringMap.add "2.6.24-9.fc9.ppc64" v map;;
303 let v = (parser_10, 1224, fieldsig_10);;
304 let map = StringMap.add "2.6.26.2-2.fc8.ppc64" v map;;
305 let v = (parser_12, 1680, fieldsig_12);;
306 let map = StringMap.add "2.6.27-0.231.rc1.git6.fc10.ppc64" v map;;
307 let v = (parser_12, 1680, fieldsig_12);;
308 let map = StringMap.add "2.6.27-0.237.rc2.fc10.ppc64" v map;;
309 let v = (parser_12, 1680, fieldsig_12);;
310 let map = StringMap.add "2.6.27-0.238.rc2.fc10.ppc64" v map;;
311 let v = (parser_12, 1680, fieldsig_12);;
312 let map = StringMap.add "2.6.27-0.241.rc2.git1.fc10.ppc64" v map;;
313 let v = (parser_12, 1680, fieldsig_12);;
314 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.ppc64" v map;;
315 let v = (parser_5, 64, fieldsig_5);;
316 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.ppc" v map;;
317 let v = (parser_5, 64, fieldsig_5);;
318 let map = StringMap.add "2.6.24-7.fc9.ppc" v map;;
319 let v = (parser_5, 64, fieldsig_5);;
320 let map = StringMap.add "2.6.24-9.fc9.ppc" v map;;
321 let v = (parser_5, 660, fieldsig_5);;
322 let map = StringMap.add "2.6.26.2-2.fc8.ppc" v map;;
323 let v = (parser_11, 864, fieldsig_11);;
324 let map = StringMap.add "2.6.27-0.237.rc2.fc10.ppc" v map;;
325 let v = (parser_11, 864, fieldsig_11);;
326 let map = StringMap.add "2.6.27-0.238.rc2.fc10.ppc" v map;;
327 let v = (parser_11, 864, fieldsig_11);;
328 let map = StringMap.add "2.6.27-0.241.rc2.git1.fc10.ppc" v map;;
329 let v = (parser_11, 864, fieldsig_11);;
330 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.ppc" v map;;
331 type kernel_version = string;;
332 let net_known version = StringMap.mem version map;;
333 let net_size version =
334   let (_, size, _) = StringMap.find version map in size;;
335 let net_of_bits version bits =
336   let (parsefn, _, _) = StringMap.find version map in parsefn bits;;
337 let get_net version mem addr =
338   let (parsefn, size, _) = StringMap.find version map in
339   let bytes = Virt_mem_mmap.get_bytes mem addr size in
340   let bits = Bitstring.bitstring_of_string bytes in parsefn bits;;
341 let field_signature_of_net_dev_base_head'next version =
342   let (_, _, fs) = StringMap.find version map
343   in fs.__fs_net_dev_base_head'next;;