1 | #ifndef _host_priv_user_ |
2 | #define _host_priv_user_ |
3 | |
4 | /* Module host_priv */ |
5 | |
6 | #include <string.h> |
7 | #include <mach/ndr.h> |
8 | #include <mach/boolean.h> |
9 | #include <mach/kern_return.h> |
10 | #include <mach/notify.h> |
11 | #include <mach/mach_types.h> |
12 | #include <mach/message.h> |
13 | #include <mach/mig_errors.h> |
14 | #include <mach/port.h> |
15 | |
16 | /* BEGIN MIG_STRNCPY_ZEROFILL CODE */ |
17 | |
18 | #if defined(__has_include) |
19 | #if __has_include(<mach/mig_strncpy_zerofill_support.h>) |
20 | #ifndef USING_MIG_STRNCPY_ZEROFILL |
21 | #define USING_MIG_STRNCPY_ZEROFILL |
22 | #endif |
23 | #ifndef __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS__ |
24 | #define __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS__ |
25 | #ifdef __cplusplus |
26 | extern "C" { |
27 | #endif |
28 | #ifndef __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS_CSTRING_ATTR |
29 | #define __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS_CSTRING_COUNTEDBY_ATTR(C) __unsafe_indexable |
30 | #endif |
31 | extern int mig_strncpy_zerofill(char * dest, const char * src, int len) __attribute__((weak_import)); |
32 | #ifdef __cplusplus |
33 | } |
34 | #endif |
35 | #endif /* __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS__ */ |
36 | #endif /* __has_include(<mach/mig_strncpy_zerofill_support.h>) */ |
37 | #endif /* __has_include */ |
38 | |
39 | /* END MIG_STRNCPY_ZEROFILL CODE */ |
40 | |
41 | |
42 | #ifdef AUTOTEST |
43 | #ifndef FUNCTION_PTR_T |
44 | #define FUNCTION_PTR_T |
45 | typedef void (*function_ptr_t)(mach_port_t, char *, mach_msg_type_number_t); |
46 | typedef struct { |
47 | char * name; |
48 | function_ptr_t function; |
49 | } function_table_entry; |
50 | typedef function_table_entry *function_table_t; |
51 | #endif /* FUNCTION_PTR_T */ |
52 | #endif /* AUTOTEST */ |
53 | |
54 | #ifndef host_priv_MSG_COUNT |
55 | #define host_priv_MSG_COUNT 26 |
56 | #endif /* host_priv_MSG_COUNT */ |
57 | |
58 | #include <Availability.h> |
59 | #include <mach/std_types.h> |
60 | #include <mach/mig.h> |
61 | #include <mach/mig.h> |
62 | #include <mach/mach_types.h> |
63 | #include <mach/mach_types.h> |
64 | #include <mach_debug/mach_debug_types.h> |
65 | |
66 | #ifdef __BeforeMigUserHeader |
67 | __BeforeMigUserHeader |
68 | #endif /* __BeforeMigUserHeader */ |
69 | |
70 | #include <sys/cdefs.h> |
71 | __BEGIN_DECLS |
72 | |
73 | |
74 | /* Routine host_get_boot_info */ |
75 | #ifdef mig_external |
76 | mig_external |
77 | #else |
78 | extern |
79 | #endif /* mig_external */ |
80 | kern_return_t host_get_boot_info |
81 | ( |
82 | host_priv_t host_priv, |
83 | kernel_boot_info_t boot_info |
84 | ); |
85 | |
86 | /* Routine host_reboot */ |
87 | #ifdef mig_external |
88 | mig_external |
89 | #else |
90 | extern |
91 | #endif /* mig_external */ |
92 | kern_return_t host_reboot |
93 | ( |
94 | host_priv_t host_priv, |
95 | int options |
96 | ); |
97 | |
98 | /* Routine host_priv_statistics */ |
99 | #ifdef mig_external |
100 | mig_external |
101 | #else |
102 | extern |
103 | #endif /* mig_external */ |
104 | kern_return_t host_priv_statistics |
105 | ( |
106 | host_priv_t host_priv, |
107 | host_flavor_t flavor, |
108 | host_info_t host_info_out, |
109 | mach_msg_type_number_t *host_info_outCnt |
110 | ); |
111 | |
112 | /* Routine host_default_memory_manager */ |
113 | #ifdef mig_external |
114 | mig_external |
115 | #else |
116 | extern |
117 | #endif /* mig_external */ |
118 | kern_return_t host_default_memory_manager |
119 | ( |
120 | host_priv_t host_priv, |
121 | memory_object_default_t *default_manager, |
122 | memory_object_cluster_size_t cluster_size |
123 | ); |
124 | |
125 | /* Routine vm_wire */ |
126 | #ifdef mig_external |
127 | mig_external |
128 | #else |
129 | extern |
130 | #endif /* mig_external */ |
131 | kern_return_t vm_wire |
132 | ( |
133 | host_priv_t host_priv, |
134 | vm_map_t task, |
135 | vm_address_t address, |
136 | vm_size_t size, |
137 | vm_prot_t desired_access |
138 | ); |
139 | |
140 | /* Routine thread_wire */ |
141 | #ifdef mig_external |
142 | mig_external |
143 | #else |
144 | extern |
145 | #endif /* mig_external */ |
146 | kern_return_t thread_wire |
147 | ( |
148 | host_priv_t host_priv, |
149 | thread_act_t thread, |
150 | boolean_t wired |
151 | ); |
152 | |
153 | /* Routine vm_allocate_cpm */ |
154 | #ifdef mig_external |
155 | mig_external |
156 | #else |
157 | extern |
158 | #endif /* mig_external */ |
159 | kern_return_t vm_allocate_cpm |
160 | ( |
161 | host_priv_t host_priv, |
162 | vm_map_t task, |
163 | vm_address_t *address, |
164 | vm_size_t size, |
165 | int flags |
166 | ); |
167 | |
168 | /* Routine host_processors */ |
169 | #ifdef mig_external |
170 | mig_external |
171 | #else |
172 | extern |
173 | #endif /* mig_external */ |
174 | kern_return_t host_processors |
175 | ( |
176 | host_priv_t host_priv, |
177 | processor_array_t *out_processor_list, |
178 | mach_msg_type_number_t *out_processor_listCnt |
179 | ); |
180 | |
181 | /* Routine host_get_clock_control */ |
182 | #ifdef mig_external |
183 | mig_external |
184 | #else |
185 | extern |
186 | #endif /* mig_external */ |
187 | kern_return_t host_get_clock_control |
188 | ( |
189 | host_priv_t host_priv, |
190 | clock_id_t clock_id, |
191 | clock_ctrl_t *clock_ctrl |
192 | ); |
193 | |
194 | /* Routine kmod_create */ |
195 | #ifdef mig_external |
196 | mig_external |
197 | #else |
198 | extern |
199 | #endif /* mig_external */ |
200 | kern_return_t kmod_create |
201 | ( |
202 | host_priv_t host_priv, |
203 | vm_address_t info, |
204 | kmod_t *module |
205 | ); |
206 | |
207 | /* Routine kmod_destroy */ |
208 | #ifdef mig_external |
209 | mig_external |
210 | #else |
211 | extern |
212 | #endif /* mig_external */ |
213 | kern_return_t kmod_destroy |
214 | ( |
215 | host_priv_t host_priv, |
216 | kmod_t module |
217 | ); |
218 | |
219 | /* Routine kmod_control */ |
220 | #ifdef mig_external |
221 | mig_external |
222 | #else |
223 | extern |
224 | #endif /* mig_external */ |
225 | kern_return_t kmod_control |
226 | ( |
227 | host_priv_t host_priv, |
228 | kmod_t module, |
229 | kmod_control_flavor_t flavor, |
230 | kmod_args_t *data, |
231 | mach_msg_type_number_t *dataCnt |
232 | ); |
233 | |
234 | /* Routine host_get_special_port */ |
235 | #ifdef mig_external |
236 | mig_external |
237 | #else |
238 | extern |
239 | #endif /* mig_external */ |
240 | kern_return_t host_get_special_port |
241 | ( |
242 | host_priv_t host_priv, |
243 | int node, |
244 | int which, |
245 | mach_port_t *port |
246 | ); |
247 | |
248 | /* Routine host_set_special_port */ |
249 | #ifdef mig_external |
250 | mig_external |
251 | #else |
252 | extern |
253 | #endif /* mig_external */ |
254 | kern_return_t host_set_special_port |
255 | ( |
256 | host_priv_t host_priv, |
257 | int which, |
258 | mach_port_t port |
259 | ); |
260 | |
261 | /* Routine host_set_exception_ports */ |
262 | #ifdef mig_external |
263 | mig_external |
264 | #else |
265 | extern |
266 | #endif /* mig_external */ |
267 | kern_return_t host_set_exception_ports |
268 | ( |
269 | host_priv_t host_priv, |
270 | exception_mask_t exception_mask, |
271 | mach_port_t new_port, |
272 | exception_behavior_t behavior, |
273 | thread_state_flavor_t new_flavor |
274 | ); |
275 | |
276 | /* Routine host_get_exception_ports */ |
277 | #ifdef mig_external |
278 | mig_external |
279 | #else |
280 | extern |
281 | #endif /* mig_external */ |
282 | kern_return_t host_get_exception_ports |
283 | ( |
284 | host_priv_t host_priv, |
285 | exception_mask_t exception_mask, |
286 | exception_mask_array_t masks, |
287 | mach_msg_type_number_t *masksCnt, |
288 | exception_handler_array_t old_handlers, |
289 | exception_behavior_array_t old_behaviors, |
290 | exception_flavor_array_t old_flavors |
291 | ); |
292 | |
293 | /* Routine host_swap_exception_ports */ |
294 | #ifdef mig_external |
295 | mig_external |
296 | #else |
297 | extern |
298 | #endif /* mig_external */ |
299 | kern_return_t host_swap_exception_ports |
300 | ( |
301 | host_priv_t host_priv, |
302 | exception_mask_t exception_mask, |
303 | mach_port_t new_port, |
304 | exception_behavior_t behavior, |
305 | thread_state_flavor_t new_flavor, |
306 | exception_mask_array_t masks, |
307 | mach_msg_type_number_t *masksCnt, |
308 | exception_handler_array_t old_handlerss, |
309 | exception_behavior_array_t old_behaviors, |
310 | exception_flavor_array_t old_flavors |
311 | ); |
312 | |
313 | /* Routine mach_vm_wire */ |
314 | #ifdef mig_external |
315 | mig_external |
316 | #else |
317 | extern |
318 | #endif /* mig_external */ |
319 | kern_return_t mach_vm_wire |
320 | ( |
321 | host_priv_t host_priv, |
322 | vm_map_t task, |
323 | mach_vm_address_t address, |
324 | mach_vm_size_t size, |
325 | vm_prot_t desired_access |
326 | ); |
327 | |
328 | /* Routine host_processor_sets */ |
329 | #ifdef mig_external |
330 | mig_external |
331 | #else |
332 | extern |
333 | #endif /* mig_external */ |
334 | kern_return_t host_processor_sets |
335 | ( |
336 | host_priv_t host_priv, |
337 | processor_set_name_array_t *processor_sets, |
338 | mach_msg_type_number_t *processor_setsCnt |
339 | ); |
340 | |
341 | /* Routine host_processor_set_priv */ |
342 | #ifdef mig_external |
343 | mig_external |
344 | #else |
345 | extern |
346 | #endif /* mig_external */ |
347 | kern_return_t host_processor_set_priv |
348 | ( |
349 | host_priv_t host_priv, |
350 | processor_set_name_t set_name, |
351 | processor_set_t *set |
352 | ); |
353 | |
354 | /* Routine host_set_UNDServer */ |
355 | #ifdef mig_external |
356 | mig_external |
357 | #else |
358 | extern |
359 | #endif /* mig_external */ |
360 | kern_return_t host_set_UNDServer |
361 | ( |
362 | host_priv_t host, |
363 | UNDServerRef server |
364 | ); |
365 | |
366 | /* Routine host_get_UNDServer */ |
367 | #ifdef mig_external |
368 | mig_external |
369 | #else |
370 | extern |
371 | #endif /* mig_external */ |
372 | kern_return_t host_get_UNDServer |
373 | ( |
374 | host_priv_t host, |
375 | UNDServerRef *server |
376 | ); |
377 | |
378 | /* Routine kext_request */ |
379 | #ifdef mig_external |
380 | mig_external |
381 | #else |
382 | extern |
383 | #endif /* mig_external */ |
384 | kern_return_t kext_request |
385 | ( |
386 | host_priv_t host_priv, |
387 | uint32_t user_log_flags, |
388 | vm_offset_t request_data, |
389 | mach_msg_type_number_t request_dataCnt, |
390 | vm_offset_t *response_data, |
391 | mach_msg_type_number_t *response_dataCnt, |
392 | vm_offset_t *log_data, |
393 | mach_msg_type_number_t *log_dataCnt, |
394 | kern_return_t *op_result |
395 | ); |
396 | |
397 | __END_DECLS |
398 | |
399 | /********************** Caution **************************/ |
400 | /* The following data types should be used to calculate */ |
401 | /* maximum message sizes only. The actual message may be */ |
402 | /* smaller, and the position of the arguments within the */ |
403 | /* message layout may vary from what is presented here. */ |
404 | /* For example, if any of the arguments are variable- */ |
405 | /* sized, and less than the maximum is sent, the data */ |
406 | /* will be packed tight in the actual message to reduce */ |
407 | /* the presence of holes. */ |
408 | /********************** Caution **************************/ |
409 | |
410 | /* typedefs for all requests */ |
411 | |
412 | #ifndef __Request__host_priv_subsystem__defined |
413 | #define __Request__host_priv_subsystem__defined |
414 | |
415 | #ifdef __MigPackStructs |
416 | #pragma pack(push, 4) |
417 | #endif |
418 | typedef struct { |
419 | mach_msg_header_t Head; |
420 | } __Request__host_get_boot_info_t __attribute__((unused)); |
421 | #ifdef __MigPackStructs |
422 | #pragma pack(pop) |
423 | #endif |
424 | |
425 | #ifdef __MigPackStructs |
426 | #pragma pack(push, 4) |
427 | #endif |
428 | typedef struct { |
429 | mach_msg_header_t Head; |
430 | NDR_record_t NDR; |
431 | int options; |
432 | } __Request__host_reboot_t __attribute__((unused)); |
433 | #ifdef __MigPackStructs |
434 | #pragma pack(pop) |
435 | #endif |
436 | |
437 | #ifdef __MigPackStructs |
438 | #pragma pack(push, 4) |
439 | #endif |
440 | typedef struct { |
441 | mach_msg_header_t Head; |
442 | NDR_record_t NDR; |
443 | host_flavor_t flavor; |
444 | mach_msg_type_number_t host_info_outCnt; |
445 | } __Request__host_priv_statistics_t __attribute__((unused)); |
446 | #ifdef __MigPackStructs |
447 | #pragma pack(pop) |
448 | #endif |
449 | |
450 | #ifdef __MigPackStructs |
451 | #pragma pack(push, 4) |
452 | #endif |
453 | typedef struct { |
454 | mach_msg_header_t Head; |
455 | /* start of the kernel processed data */ |
456 | mach_msg_body_t msgh_body; |
457 | mach_msg_port_descriptor_t default_manager; |
458 | /* end of the kernel processed data */ |
459 | NDR_record_t NDR; |
460 | memory_object_cluster_size_t cluster_size; |
461 | } __Request__host_default_memory_manager_t __attribute__((unused)); |
462 | #ifdef __MigPackStructs |
463 | #pragma pack(pop) |
464 | #endif |
465 | |
466 | #ifdef __MigPackStructs |
467 | #pragma pack(push, 4) |
468 | #endif |
469 | typedef struct { |
470 | mach_msg_header_t Head; |
471 | /* start of the kernel processed data */ |
472 | mach_msg_body_t msgh_body; |
473 | mach_msg_port_descriptor_t task; |
474 | /* end of the kernel processed data */ |
475 | NDR_record_t NDR; |
476 | vm_address_t address; |
477 | vm_size_t size; |
478 | vm_prot_t desired_access; |
479 | } __Request__vm_wire_t __attribute__((unused)); |
480 | #ifdef __MigPackStructs |
481 | #pragma pack(pop) |
482 | #endif |
483 | |
484 | #ifdef __MigPackStructs |
485 | #pragma pack(push, 4) |
486 | #endif |
487 | typedef struct { |
488 | mach_msg_header_t Head; |
489 | /* start of the kernel processed data */ |
490 | mach_msg_body_t msgh_body; |
491 | mach_msg_port_descriptor_t thread; |
492 | /* end of the kernel processed data */ |
493 | NDR_record_t NDR; |
494 | boolean_t wired; |
495 | } __Request__thread_wire_t __attribute__((unused)); |
496 | #ifdef __MigPackStructs |
497 | #pragma pack(pop) |
498 | #endif |
499 | |
500 | #ifdef __MigPackStructs |
501 | #pragma pack(push, 4) |
502 | #endif |
503 | typedef struct { |
504 | mach_msg_header_t Head; |
505 | /* start of the kernel processed data */ |
506 | mach_msg_body_t msgh_body; |
507 | mach_msg_port_descriptor_t task; |
508 | /* end of the kernel processed data */ |
509 | NDR_record_t NDR; |
510 | vm_address_t address; |
511 | vm_size_t size; |
512 | int flags; |
513 | } __Request__vm_allocate_cpm_t __attribute__((unused)); |
514 | #ifdef __MigPackStructs |
515 | #pragma pack(pop) |
516 | #endif |
517 | |
518 | #ifdef __MigPackStructs |
519 | #pragma pack(push, 4) |
520 | #endif |
521 | typedef struct { |
522 | mach_msg_header_t Head; |
523 | } __Request__host_processors_t __attribute__((unused)); |
524 | #ifdef __MigPackStructs |
525 | #pragma pack(pop) |
526 | #endif |
527 | |
528 | #ifdef __MigPackStructs |
529 | #pragma pack(push, 4) |
530 | #endif |
531 | typedef struct { |
532 | mach_msg_header_t Head; |
533 | NDR_record_t NDR; |
534 | clock_id_t clock_id; |
535 | } __Request__host_get_clock_control_t __attribute__((unused)); |
536 | #ifdef __MigPackStructs |
537 | #pragma pack(pop) |
538 | #endif |
539 | |
540 | #ifdef __MigPackStructs |
541 | #pragma pack(push, 4) |
542 | #endif |
543 | typedef struct { |
544 | mach_msg_header_t Head; |
545 | NDR_record_t NDR; |
546 | vm_address_t info; |
547 | } __Request__kmod_create_t __attribute__((unused)); |
548 | #ifdef __MigPackStructs |
549 | #pragma pack(pop) |
550 | #endif |
551 | |
552 | #ifdef __MigPackStructs |
553 | #pragma pack(push, 4) |
554 | #endif |
555 | typedef struct { |
556 | mach_msg_header_t Head; |
557 | NDR_record_t NDR; |
558 | kmod_t module; |
559 | } __Request__kmod_destroy_t __attribute__((unused)); |
560 | #ifdef __MigPackStructs |
561 | #pragma pack(pop) |
562 | #endif |
563 | |
564 | #ifdef __MigPackStructs |
565 | #pragma pack(push, 4) |
566 | #endif |
567 | typedef struct { |
568 | mach_msg_header_t Head; |
569 | /* start of the kernel processed data */ |
570 | mach_msg_body_t msgh_body; |
571 | mach_msg_ool_descriptor_t data; |
572 | /* end of the kernel processed data */ |
573 | NDR_record_t NDR; |
574 | kmod_t module; |
575 | kmod_control_flavor_t flavor; |
576 | mach_msg_type_number_t dataCnt; |
577 | } __Request__kmod_control_t __attribute__((unused)); |
578 | #ifdef __MigPackStructs |
579 | #pragma pack(pop) |
580 | #endif |
581 | |
582 | #ifdef __MigPackStructs |
583 | #pragma pack(push, 4) |
584 | #endif |
585 | typedef struct { |
586 | mach_msg_header_t Head; |
587 | NDR_record_t NDR; |
588 | int node; |
589 | int which; |
590 | } __Request__host_get_special_port_t __attribute__((unused)); |
591 | #ifdef __MigPackStructs |
592 | #pragma pack(pop) |
593 | #endif |
594 | |
595 | #ifdef __MigPackStructs |
596 | #pragma pack(push, 4) |
597 | #endif |
598 | typedef struct { |
599 | mach_msg_header_t Head; |
600 | /* start of the kernel processed data */ |
601 | mach_msg_body_t msgh_body; |
602 | mach_msg_port_descriptor_t port; |
603 | /* end of the kernel processed data */ |
604 | NDR_record_t NDR; |
605 | int which; |
606 | } __Request__host_set_special_port_t __attribute__((unused)); |
607 | #ifdef __MigPackStructs |
608 | #pragma pack(pop) |
609 | #endif |
610 | |
611 | #ifdef __MigPackStructs |
612 | #pragma pack(push, 4) |
613 | #endif |
614 | typedef struct { |
615 | mach_msg_header_t Head; |
616 | /* start of the kernel processed data */ |
617 | mach_msg_body_t msgh_body; |
618 | mach_msg_port_descriptor_t new_port; |
619 | /* end of the kernel processed data */ |
620 | NDR_record_t NDR; |
621 | exception_mask_t exception_mask; |
622 | exception_behavior_t behavior; |
623 | thread_state_flavor_t new_flavor; |
624 | } __Request__host_set_exception_ports_t __attribute__((unused)); |
625 | #ifdef __MigPackStructs |
626 | #pragma pack(pop) |
627 | #endif |
628 | |
629 | #ifdef __MigPackStructs |
630 | #pragma pack(push, 4) |
631 | #endif |
632 | typedef struct { |
633 | mach_msg_header_t Head; |
634 | NDR_record_t NDR; |
635 | exception_mask_t exception_mask; |
636 | } __Request__host_get_exception_ports_t __attribute__((unused)); |
637 | #ifdef __MigPackStructs |
638 | #pragma pack(pop) |
639 | #endif |
640 | |
641 | #ifdef __MigPackStructs |
642 | #pragma pack(push, 4) |
643 | #endif |
644 | typedef struct { |
645 | mach_msg_header_t Head; |
646 | /* start of the kernel processed data */ |
647 | mach_msg_body_t msgh_body; |
648 | mach_msg_port_descriptor_t new_port; |
649 | /* end of the kernel processed data */ |
650 | NDR_record_t NDR; |
651 | exception_mask_t exception_mask; |
652 | exception_behavior_t behavior; |
653 | thread_state_flavor_t new_flavor; |
654 | } __Request__host_swap_exception_ports_t __attribute__((unused)); |
655 | #ifdef __MigPackStructs |
656 | #pragma pack(pop) |
657 | #endif |
658 | |
659 | #ifdef __MigPackStructs |
660 | #pragma pack(push, 4) |
661 | #endif |
662 | typedef struct { |
663 | mach_msg_header_t Head; |
664 | /* start of the kernel processed data */ |
665 | mach_msg_body_t msgh_body; |
666 | mach_msg_port_descriptor_t task; |
667 | /* end of the kernel processed data */ |
668 | NDR_record_t NDR; |
669 | mach_vm_address_t address; |
670 | mach_vm_size_t size; |
671 | vm_prot_t desired_access; |
672 | } __Request__mach_vm_wire_t __attribute__((unused)); |
673 | #ifdef __MigPackStructs |
674 | #pragma pack(pop) |
675 | #endif |
676 | |
677 | #ifdef __MigPackStructs |
678 | #pragma pack(push, 4) |
679 | #endif |
680 | typedef struct { |
681 | mach_msg_header_t Head; |
682 | } __Request__host_processor_sets_t __attribute__((unused)); |
683 | #ifdef __MigPackStructs |
684 | #pragma pack(pop) |
685 | #endif |
686 | |
687 | #ifdef __MigPackStructs |
688 | #pragma pack(push, 4) |
689 | #endif |
690 | typedef struct { |
691 | mach_msg_header_t Head; |
692 | /* start of the kernel processed data */ |
693 | mach_msg_body_t msgh_body; |
694 | mach_msg_port_descriptor_t set_name; |
695 | /* end of the kernel processed data */ |
696 | } __Request__host_processor_set_priv_t __attribute__((unused)); |
697 | #ifdef __MigPackStructs |
698 | #pragma pack(pop) |
699 | #endif |
700 | |
701 | #ifdef __MigPackStructs |
702 | #pragma pack(push, 4) |
703 | #endif |
704 | typedef struct { |
705 | mach_msg_header_t Head; |
706 | /* start of the kernel processed data */ |
707 | mach_msg_body_t msgh_body; |
708 | mach_msg_port_descriptor_t server; |
709 | /* end of the kernel processed data */ |
710 | } __Request__host_set_UNDServer_t __attribute__((unused)); |
711 | #ifdef __MigPackStructs |
712 | #pragma pack(pop) |
713 | #endif |
714 | |
715 | #ifdef __MigPackStructs |
716 | #pragma pack(push, 4) |
717 | #endif |
718 | typedef struct { |
719 | mach_msg_header_t Head; |
720 | } __Request__host_get_UNDServer_t __attribute__((unused)); |
721 | #ifdef __MigPackStructs |
722 | #pragma pack(pop) |
723 | #endif |
724 | |
725 | #ifdef __MigPackStructs |
726 | #pragma pack(push, 4) |
727 | #endif |
728 | typedef struct { |
729 | mach_msg_header_t Head; |
730 | /* start of the kernel processed data */ |
731 | mach_msg_body_t msgh_body; |
732 | mach_msg_ool_descriptor_t request_data; |
733 | /* end of the kernel processed data */ |
734 | NDR_record_t NDR; |
735 | uint32_t user_log_flags; |
736 | mach_msg_type_number_t request_dataCnt; |
737 | } __Request__kext_request_t __attribute__((unused)); |
738 | #ifdef __MigPackStructs |
739 | #pragma pack(pop) |
740 | #endif |
741 | #endif /* !__Request__host_priv_subsystem__defined */ |
742 | |
743 | /* union of all requests */ |
744 | |
745 | #ifndef __RequestUnion__host_priv_subsystem__defined |
746 | #define __RequestUnion__host_priv_subsystem__defined |
747 | union __RequestUnion__host_priv_subsystem { |
748 | __Request__host_get_boot_info_t Request_host_get_boot_info; |
749 | __Request__host_reboot_t Request_host_reboot; |
750 | __Request__host_priv_statistics_t Request_host_priv_statistics; |
751 | __Request__host_default_memory_manager_t Request_host_default_memory_manager; |
752 | __Request__vm_wire_t Request_vm_wire; |
753 | __Request__thread_wire_t Request_thread_wire; |
754 | __Request__vm_allocate_cpm_t Request_vm_allocate_cpm; |
755 | __Request__host_processors_t Request_host_processors; |
756 | __Request__host_get_clock_control_t Request_host_get_clock_control; |
757 | __Request__kmod_create_t Request_kmod_create; |
758 | __Request__kmod_destroy_t Request_kmod_destroy; |
759 | __Request__kmod_control_t Request_kmod_control; |
760 | __Request__host_get_special_port_t Request_host_get_special_port; |
761 | __Request__host_set_special_port_t Request_host_set_special_port; |
762 | __Request__host_set_exception_ports_t Request_host_set_exception_ports; |
763 | __Request__host_get_exception_ports_t Request_host_get_exception_ports; |
764 | __Request__host_swap_exception_ports_t Request_host_swap_exception_ports; |
765 | __Request__mach_vm_wire_t Request_mach_vm_wire; |
766 | __Request__host_processor_sets_t Request_host_processor_sets; |
767 | __Request__host_processor_set_priv_t Request_host_processor_set_priv; |
768 | __Request__host_set_UNDServer_t Request_host_set_UNDServer; |
769 | __Request__host_get_UNDServer_t Request_host_get_UNDServer; |
770 | __Request__kext_request_t Request_kext_request; |
771 | }; |
772 | #endif /* !__RequestUnion__host_priv_subsystem__defined */ |
773 | /* typedefs for all replies */ |
774 | |
775 | #ifndef __Reply__host_priv_subsystem__defined |
776 | #define __Reply__host_priv_subsystem__defined |
777 | |
778 | #ifdef __MigPackStructs |
779 | #pragma pack(push, 4) |
780 | #endif |
781 | typedef struct { |
782 | mach_msg_header_t Head; |
783 | NDR_record_t NDR; |
784 | kern_return_t RetCode; |
785 | mach_msg_type_number_t boot_infoOffset; /* MiG doesn't use it */ |
786 | mach_msg_type_number_t boot_infoCnt; |
787 | char boot_info[4096]; |
788 | } __Reply__host_get_boot_info_t __attribute__((unused)); |
789 | #ifdef __MigPackStructs |
790 | #pragma pack(pop) |
791 | #endif |
792 | |
793 | #ifdef __MigPackStructs |
794 | #pragma pack(push, 4) |
795 | #endif |
796 | typedef struct { |
797 | mach_msg_header_t Head; |
798 | NDR_record_t NDR; |
799 | kern_return_t RetCode; |
800 | } __Reply__host_reboot_t __attribute__((unused)); |
801 | #ifdef __MigPackStructs |
802 | #pragma pack(pop) |
803 | #endif |
804 | |
805 | #ifdef __MigPackStructs |
806 | #pragma pack(push, 4) |
807 | #endif |
808 | typedef struct { |
809 | mach_msg_header_t Head; |
810 | NDR_record_t NDR; |
811 | kern_return_t RetCode; |
812 | mach_msg_type_number_t host_info_outCnt; |
813 | integer_t host_info_out[68]; |
814 | } __Reply__host_priv_statistics_t __attribute__((unused)); |
815 | #ifdef __MigPackStructs |
816 | #pragma pack(pop) |
817 | #endif |
818 | |
819 | #ifdef __MigPackStructs |
820 | #pragma pack(push, 4) |
821 | #endif |
822 | typedef struct { |
823 | mach_msg_header_t Head; |
824 | /* start of the kernel processed data */ |
825 | mach_msg_body_t msgh_body; |
826 | mach_msg_port_descriptor_t default_manager; |
827 | /* end of the kernel processed data */ |
828 | } __Reply__host_default_memory_manager_t __attribute__((unused)); |
829 | #ifdef __MigPackStructs |
830 | #pragma pack(pop) |
831 | #endif |
832 | |
833 | #ifdef __MigPackStructs |
834 | #pragma pack(push, 4) |
835 | #endif |
836 | typedef struct { |
837 | mach_msg_header_t Head; |
838 | NDR_record_t NDR; |
839 | kern_return_t RetCode; |
840 | } __Reply__vm_wire_t __attribute__((unused)); |
841 | #ifdef __MigPackStructs |
842 | #pragma pack(pop) |
843 | #endif |
844 | |
845 | #ifdef __MigPackStructs |
846 | #pragma pack(push, 4) |
847 | #endif |
848 | typedef struct { |
849 | mach_msg_header_t Head; |
850 | NDR_record_t NDR; |
851 | kern_return_t RetCode; |
852 | } __Reply__thread_wire_t __attribute__((unused)); |
853 | #ifdef __MigPackStructs |
854 | #pragma pack(pop) |
855 | #endif |
856 | |
857 | #ifdef __MigPackStructs |
858 | #pragma pack(push, 4) |
859 | #endif |
860 | typedef struct { |
861 | mach_msg_header_t Head; |
862 | NDR_record_t NDR; |
863 | kern_return_t RetCode; |
864 | vm_address_t address; |
865 | } __Reply__vm_allocate_cpm_t __attribute__((unused)); |
866 | #ifdef __MigPackStructs |
867 | #pragma pack(pop) |
868 | #endif |
869 | |
870 | #ifdef __MigPackStructs |
871 | #pragma pack(push, 4) |
872 | #endif |
873 | typedef struct { |
874 | mach_msg_header_t Head; |
875 | /* start of the kernel processed data */ |
876 | mach_msg_body_t msgh_body; |
877 | mach_msg_ool_ports_descriptor_t out_processor_list; |
878 | /* end of the kernel processed data */ |
879 | NDR_record_t NDR; |
880 | mach_msg_type_number_t out_processor_listCnt; |
881 | } __Reply__host_processors_t __attribute__((unused)); |
882 | #ifdef __MigPackStructs |
883 | #pragma pack(pop) |
884 | #endif |
885 | |
886 | #ifdef __MigPackStructs |
887 | #pragma pack(push, 4) |
888 | #endif |
889 | typedef struct { |
890 | mach_msg_header_t Head; |
891 | /* start of the kernel processed data */ |
892 | mach_msg_body_t msgh_body; |
893 | mach_msg_port_descriptor_t clock_ctrl; |
894 | /* end of the kernel processed data */ |
895 | } __Reply__host_get_clock_control_t __attribute__((unused)); |
896 | #ifdef __MigPackStructs |
897 | #pragma pack(pop) |
898 | #endif |
899 | |
900 | #ifdef __MigPackStructs |
901 | #pragma pack(push, 4) |
902 | #endif |
903 | typedef struct { |
904 | mach_msg_header_t Head; |
905 | NDR_record_t NDR; |
906 | kern_return_t RetCode; |
907 | kmod_t module; |
908 | } __Reply__kmod_create_t __attribute__((unused)); |
909 | #ifdef __MigPackStructs |
910 | #pragma pack(pop) |
911 | #endif |
912 | |
913 | #ifdef __MigPackStructs |
914 | #pragma pack(push, 4) |
915 | #endif |
916 | typedef struct { |
917 | mach_msg_header_t Head; |
918 | NDR_record_t NDR; |
919 | kern_return_t RetCode; |
920 | } __Reply__kmod_destroy_t __attribute__((unused)); |
921 | #ifdef __MigPackStructs |
922 | #pragma pack(pop) |
923 | #endif |
924 | |
925 | #ifdef __MigPackStructs |
926 | #pragma pack(push, 4) |
927 | #endif |
928 | typedef struct { |
929 | mach_msg_header_t Head; |
930 | /* start of the kernel processed data */ |
931 | mach_msg_body_t msgh_body; |
932 | mach_msg_ool_descriptor_t data; |
933 | /* end of the kernel processed data */ |
934 | NDR_record_t NDR; |
935 | mach_msg_type_number_t dataCnt; |
936 | } __Reply__kmod_control_t __attribute__((unused)); |
937 | #ifdef __MigPackStructs |
938 | #pragma pack(pop) |
939 | #endif |
940 | |
941 | #ifdef __MigPackStructs |
942 | #pragma pack(push, 4) |
943 | #endif |
944 | typedef struct { |
945 | mach_msg_header_t Head; |
946 | /* start of the kernel processed data */ |
947 | mach_msg_body_t msgh_body; |
948 | mach_msg_port_descriptor_t port; |
949 | /* end of the kernel processed data */ |
950 | } __Reply__host_get_special_port_t __attribute__((unused)); |
951 | #ifdef __MigPackStructs |
952 | #pragma pack(pop) |
953 | #endif |
954 | |
955 | #ifdef __MigPackStructs |
956 | #pragma pack(push, 4) |
957 | #endif |
958 | typedef struct { |
959 | mach_msg_header_t Head; |
960 | NDR_record_t NDR; |
961 | kern_return_t RetCode; |
962 | } __Reply__host_set_special_port_t __attribute__((unused)); |
963 | #ifdef __MigPackStructs |
964 | #pragma pack(pop) |
965 | #endif |
966 | |
967 | #ifdef __MigPackStructs |
968 | #pragma pack(push, 4) |
969 | #endif |
970 | typedef struct { |
971 | mach_msg_header_t Head; |
972 | NDR_record_t NDR; |
973 | kern_return_t RetCode; |
974 | } __Reply__host_set_exception_ports_t __attribute__((unused)); |
975 | #ifdef __MigPackStructs |
976 | #pragma pack(pop) |
977 | #endif |
978 | |
979 | #ifdef __MigPackStructs |
980 | #pragma pack(push, 4) |
981 | #endif |
982 | typedef struct { |
983 | mach_msg_header_t Head; |
984 | /* start of the kernel processed data */ |
985 | mach_msg_body_t msgh_body; |
986 | mach_msg_port_descriptor_t old_handlers[32]; |
987 | /* end of the kernel processed data */ |
988 | NDR_record_t NDR; |
989 | mach_msg_type_number_t masksCnt; |
990 | exception_mask_t masks[32]; |
991 | exception_behavior_t old_behaviors[32]; |
992 | thread_state_flavor_t old_flavors[32]; |
993 | } __Reply__host_get_exception_ports_t __attribute__((unused)); |
994 | #ifdef __MigPackStructs |
995 | #pragma pack(pop) |
996 | #endif |
997 | |
998 | #ifdef __MigPackStructs |
999 | #pragma pack(push, 4) |
1000 | #endif |
1001 | typedef struct { |
1002 | mach_msg_header_t Head; |
1003 | /* start of the kernel processed data */ |
1004 | mach_msg_body_t msgh_body; |
1005 | mach_msg_port_descriptor_t old_handlerss[32]; |
1006 | /* end of the kernel processed data */ |
1007 | NDR_record_t NDR; |
1008 | mach_msg_type_number_t masksCnt; |
1009 | exception_mask_t masks[32]; |
1010 | exception_behavior_t old_behaviors[32]; |
1011 | thread_state_flavor_t old_flavors[32]; |
1012 | } __Reply__host_swap_exception_ports_t __attribute__((unused)); |
1013 | #ifdef __MigPackStructs |
1014 | #pragma pack(pop) |
1015 | #endif |
1016 | |
1017 | #ifdef __MigPackStructs |
1018 | #pragma pack(push, 4) |
1019 | #endif |
1020 | typedef struct { |
1021 | mach_msg_header_t Head; |
1022 | NDR_record_t NDR; |
1023 | kern_return_t RetCode; |
1024 | } __Reply__mach_vm_wire_t __attribute__((unused)); |
1025 | #ifdef __MigPackStructs |
1026 | #pragma pack(pop) |
1027 | #endif |
1028 | |
1029 | #ifdef __MigPackStructs |
1030 | #pragma pack(push, 4) |
1031 | #endif |
1032 | typedef struct { |
1033 | mach_msg_header_t Head; |
1034 | /* start of the kernel processed data */ |
1035 | mach_msg_body_t msgh_body; |
1036 | mach_msg_ool_ports_descriptor_t processor_sets; |
1037 | /* end of the kernel processed data */ |
1038 | NDR_record_t NDR; |
1039 | mach_msg_type_number_t processor_setsCnt; |
1040 | } __Reply__host_processor_sets_t __attribute__((unused)); |
1041 | #ifdef __MigPackStructs |
1042 | #pragma pack(pop) |
1043 | #endif |
1044 | |
1045 | #ifdef __MigPackStructs |
1046 | #pragma pack(push, 4) |
1047 | #endif |
1048 | typedef struct { |
1049 | mach_msg_header_t Head; |
1050 | /* start of the kernel processed data */ |
1051 | mach_msg_body_t msgh_body; |
1052 | mach_msg_port_descriptor_t set; |
1053 | /* end of the kernel processed data */ |
1054 | } __Reply__host_processor_set_priv_t __attribute__((unused)); |
1055 | #ifdef __MigPackStructs |
1056 | #pragma pack(pop) |
1057 | #endif |
1058 | |
1059 | #ifdef __MigPackStructs |
1060 | #pragma pack(push, 4) |
1061 | #endif |
1062 | typedef struct { |
1063 | mach_msg_header_t Head; |
1064 | NDR_record_t NDR; |
1065 | kern_return_t RetCode; |
1066 | } __Reply__host_set_UNDServer_t __attribute__((unused)); |
1067 | #ifdef __MigPackStructs |
1068 | #pragma pack(pop) |
1069 | #endif |
1070 | |
1071 | #ifdef __MigPackStructs |
1072 | #pragma pack(push, 4) |
1073 | #endif |
1074 | typedef struct { |
1075 | mach_msg_header_t Head; |
1076 | /* start of the kernel processed data */ |
1077 | mach_msg_body_t msgh_body; |
1078 | mach_msg_port_descriptor_t server; |
1079 | /* end of the kernel processed data */ |
1080 | } __Reply__host_get_UNDServer_t __attribute__((unused)); |
1081 | #ifdef __MigPackStructs |
1082 | #pragma pack(pop) |
1083 | #endif |
1084 | |
1085 | #ifdef __MigPackStructs |
1086 | #pragma pack(push, 4) |
1087 | #endif |
1088 | typedef struct { |
1089 | mach_msg_header_t Head; |
1090 | /* start of the kernel processed data */ |
1091 | mach_msg_body_t msgh_body; |
1092 | mach_msg_ool_descriptor_t response_data; |
1093 | mach_msg_ool_descriptor_t log_data; |
1094 | /* end of the kernel processed data */ |
1095 | NDR_record_t NDR; |
1096 | mach_msg_type_number_t response_dataCnt; |
1097 | mach_msg_type_number_t log_dataCnt; |
1098 | kern_return_t op_result; |
1099 | } __Reply__kext_request_t __attribute__((unused)); |
1100 | #ifdef __MigPackStructs |
1101 | #pragma pack(pop) |
1102 | #endif |
1103 | #endif /* !__Reply__host_priv_subsystem__defined */ |
1104 | |
1105 | /* union of all replies */ |
1106 | |
1107 | #ifndef __ReplyUnion__host_priv_subsystem__defined |
1108 | #define __ReplyUnion__host_priv_subsystem__defined |
1109 | union __ReplyUnion__host_priv_subsystem { |
1110 | __Reply__host_get_boot_info_t Reply_host_get_boot_info; |
1111 | __Reply__host_reboot_t Reply_host_reboot; |
1112 | __Reply__host_priv_statistics_t Reply_host_priv_statistics; |
1113 | __Reply__host_default_memory_manager_t Reply_host_default_memory_manager; |
1114 | __Reply__vm_wire_t Reply_vm_wire; |
1115 | __Reply__thread_wire_t Reply_thread_wire; |
1116 | __Reply__vm_allocate_cpm_t Reply_vm_allocate_cpm; |
1117 | __Reply__host_processors_t Reply_host_processors; |
1118 | __Reply__host_get_clock_control_t Reply_host_get_clock_control; |
1119 | __Reply__kmod_create_t Reply_kmod_create; |
1120 | __Reply__kmod_destroy_t Reply_kmod_destroy; |
1121 | __Reply__kmod_control_t Reply_kmod_control; |
1122 | __Reply__host_get_special_port_t Reply_host_get_special_port; |
1123 | __Reply__host_set_special_port_t Reply_host_set_special_port; |
1124 | __Reply__host_set_exception_ports_t Reply_host_set_exception_ports; |
1125 | __Reply__host_get_exception_ports_t Reply_host_get_exception_ports; |
1126 | __Reply__host_swap_exception_ports_t Reply_host_swap_exception_ports; |
1127 | __Reply__mach_vm_wire_t Reply_mach_vm_wire; |
1128 | __Reply__host_processor_sets_t Reply_host_processor_sets; |
1129 | __Reply__host_processor_set_priv_t Reply_host_processor_set_priv; |
1130 | __Reply__host_set_UNDServer_t Reply_host_set_UNDServer; |
1131 | __Reply__host_get_UNDServer_t Reply_host_get_UNDServer; |
1132 | __Reply__kext_request_t Reply_kext_request; |
1133 | }; |
1134 | #endif /* !__RequestUnion__host_priv_subsystem__defined */ |
1135 | |
1136 | #ifndef subsystem_to_name_map_host_priv |
1137 | #define subsystem_to_name_map_host_priv \ |
1138 | { "host_get_boot_info", 400 },\ |
1139 | { "host_reboot", 401 },\ |
1140 | { "host_priv_statistics", 402 },\ |
1141 | { "host_default_memory_manager", 403 },\ |
1142 | { "vm_wire", 404 },\ |
1143 | { "thread_wire", 405 },\ |
1144 | { "vm_allocate_cpm", 406 },\ |
1145 | { "host_processors", 407 },\ |
1146 | { "host_get_clock_control", 408 },\ |
1147 | { "kmod_create", 409 },\ |
1148 | { "kmod_destroy", 410 },\ |
1149 | { "kmod_control", 411 },\ |
1150 | { "host_get_special_port", 412 },\ |
1151 | { "host_set_special_port", 413 },\ |
1152 | { "host_set_exception_ports", 414 },\ |
1153 | { "host_get_exception_ports", 415 },\ |
1154 | { "host_swap_exception_ports", 416 },\ |
1155 | { "mach_vm_wire", 418 },\ |
1156 | { "host_processor_sets", 419 },\ |
1157 | { "host_processor_set_priv", 420 },\ |
1158 | { "host_set_UNDServer", 423 },\ |
1159 | { "host_get_UNDServer", 424 },\ |
1160 | { "kext_request", 425 } |
1161 | #endif |
1162 | |
1163 | #ifdef __AfterMigUserHeader |
1164 | __AfterMigUserHeader |
1165 | #endif /* __AfterMigUserHeader */ |
1166 | |
1167 | #endif /* _host_priv_user_ */ |
1168 | |