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
26extern "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
45typedef void (*function_ptr_t)(mach_port_t, char *, mach_msg_type_number_t);
46typedef struct {
47 char * name;
48 function_ptr_t function;
49} function_table_entry;
50typedef 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
76mig_external
77#else
78extern
79#endif /* mig_external */
80kern_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
88mig_external
89#else
90extern
91#endif /* mig_external */
92kern_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
100mig_external
101#else
102extern
103#endif /* mig_external */
104kern_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
114mig_external
115#else
116extern
117#endif /* mig_external */
118kern_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
127mig_external
128#else
129extern
130#endif /* mig_external */
131kern_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
142mig_external
143#else
144extern
145#endif /* mig_external */
146kern_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
155mig_external
156#else
157extern
158#endif /* mig_external */
159kern_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
170mig_external
171#else
172extern
173#endif /* mig_external */
174kern_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
183mig_external
184#else
185extern
186#endif /* mig_external */
187kern_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
196mig_external
197#else
198extern
199#endif /* mig_external */
200kern_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
209mig_external
210#else
211extern
212#endif /* mig_external */
213kern_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
221mig_external
222#else
223extern
224#endif /* mig_external */
225kern_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
236mig_external
237#else
238extern
239#endif /* mig_external */
240kern_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
250mig_external
251#else
252extern
253#endif /* mig_external */
254kern_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
263mig_external
264#else
265extern
266#endif /* mig_external */
267kern_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
278mig_external
279#else
280extern
281#endif /* mig_external */
282kern_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
295mig_external
296#else
297extern
298#endif /* mig_external */
299kern_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
315mig_external
316#else
317extern
318#endif /* mig_external */
319kern_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
330mig_external
331#else
332extern
333#endif /* mig_external */
334kern_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
343mig_external
344#else
345extern
346#endif /* mig_external */
347kern_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
356mig_external
357#else
358extern
359#endif /* mig_external */
360kern_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
368mig_external
369#else
370extern
371#endif /* mig_external */
372kern_return_t host_get_UNDServer
373(
374 host_priv_t host,
375 UNDServerRef *server
376);
377
378/* Routine kext_request */
379#ifdef mig_external
380mig_external
381#else
382extern
383#endif /* mig_external */
384kern_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
747union __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
1109union __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