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