1 #ifndef _task_user_
2 #define _task_user_
3
4 /* Module task */
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 task_MSG_COUNT
39 #define task_MSG_COUNT 42
40 #endif /* task_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_debug/mach_debug_types.h>
48
49 #ifdef __BeforeMigUserHeader
50 __BeforeMigUserHeader
51 #endif /* __BeforeMigUserHeader */
52
53 #include <sys/cdefs.h>
54 __BEGIN_DECLS
55
56
57 /* Routine task_create */
58 #ifdef mig_external
59 mig_external
60 #else
61 extern
62 #endif /* mig_external */
task_create(target_task,ledgers,ledgersCnt,inherit_memory,child_task)63 kern_return_t task_create
64 #if defined(LINTLIBRARY)
65 (target_task, ledgers, ledgersCnt, inherit_memory, child_task)
66 task_t target_task;
67 ledger_array_t ledgers;
68 mach_msg_type_number_t ledgersCnt;
69 boolean_t inherit_memory;
70 task_t *child_task;
71 { return task_create(target_task, ledgers, ledgersCnt, inherit_memory, child_task); }
72 #else
73 (
74 task_t target_task,
75 ledger_array_t ledgers,
76 mach_msg_type_number_t ledgersCnt,
77 boolean_t inherit_memory,
78 task_t *child_task
79 );
80 #endif /* defined(LINTLIBRARY) */
81
82 /* Routine task_terminate */
83 #ifdef mig_external
84 mig_external
85 #else
86 extern
87 #endif /* mig_external */
task_terminate(target_task)88 kern_return_t task_terminate
89 #if defined(LINTLIBRARY)
90 (target_task)
91 task_t target_task;
92 { return task_terminate(target_task); }
93 #else
94 (
95 task_t target_task
96 );
97 #endif /* defined(LINTLIBRARY) */
98
99 /* Routine task_threads */
100 #ifdef mig_external
101 mig_external
102 #else
103 extern
104 #endif /* mig_external */
task_threads(target_task,act_list,act_listCnt)105 kern_return_t task_threads
106 #if defined(LINTLIBRARY)
107 (target_task, act_list, act_listCnt)
108 task_t target_task;
109 thread_act_array_t *act_list;
110 mach_msg_type_number_t *act_listCnt;
111 { return task_threads(target_task, act_list, act_listCnt); }
112 #else
113 (
114 task_t target_task,
115 thread_act_array_t *act_list,
116 mach_msg_type_number_t *act_listCnt
117 );
118 #endif /* defined(LINTLIBRARY) */
119
120 /* Routine mach_ports_register */
121 #ifdef mig_external
122 mig_external
123 #else
124 extern
125 #endif /* mig_external */
mach_ports_register(target_task,init_port_set,init_port_setCnt)126 kern_return_t mach_ports_register
127 #if defined(LINTLIBRARY)
128 (target_task, init_port_set, init_port_setCnt)
129 task_t target_task;
130 mach_port_array_t init_port_set;
131 mach_msg_type_number_t init_port_setCnt;
132 { return mach_ports_register(target_task, init_port_set, init_port_setCnt); }
133 #else
134 (
135 task_t target_task,
136 mach_port_array_t init_port_set,
137 mach_msg_type_number_t init_port_setCnt
138 );
139 #endif /* defined(LINTLIBRARY) */
140
141 /* Routine mach_ports_lookup */
142 #ifdef mig_external
143 mig_external
144 #else
145 extern
146 #endif /* mig_external */
mach_ports_lookup(target_task,init_port_set,init_port_setCnt)147 kern_return_t mach_ports_lookup
148 #if defined(LINTLIBRARY)
149 (target_task, init_port_set, init_port_setCnt)
150 task_t target_task;
151 mach_port_array_t *init_port_set;
152 mach_msg_type_number_t *init_port_setCnt;
153 { return mach_ports_lookup(target_task, init_port_set, init_port_setCnt); }
154 #else
155 (
156 task_t target_task,
157 mach_port_array_t *init_port_set,
158 mach_msg_type_number_t *init_port_setCnt
159 );
160 #endif /* defined(LINTLIBRARY) */
161
162 /* Routine task_info */
163 #ifdef mig_external
164 mig_external
165 #else
166 extern
167 #endif /* mig_external */
task_info(target_task,flavor,task_info_out,task_info_outCnt)168 kern_return_t task_info
169 #if defined(LINTLIBRARY)
170 (target_task, flavor, task_info_out, task_info_outCnt)
171 task_name_t target_task;
172 task_flavor_t flavor;
173 task_info_t task_info_out;
174 mach_msg_type_number_t *task_info_outCnt;
175 { return task_info(target_task, flavor, task_info_out, task_info_outCnt); }
176 #else
177 (
178 task_name_t target_task,
179 task_flavor_t flavor,
180 task_info_t task_info_out,
181 mach_msg_type_number_t *task_info_outCnt
182 );
183 #endif /* defined(LINTLIBRARY) */
184
185 /* Routine task_set_info */
186 #ifdef mig_external
187 mig_external
188 #else
189 extern
190 #endif /* mig_external */
task_set_info(target_task,flavor,task_info_in,task_info_inCnt)191 kern_return_t task_set_info
192 #if defined(LINTLIBRARY)
193 (target_task, flavor, task_info_in, task_info_inCnt)
194 task_t target_task;
195 task_flavor_t flavor;
196 task_info_t task_info_in;
197 mach_msg_type_number_t task_info_inCnt;
198 { return task_set_info(target_task, flavor, task_info_in, task_info_inCnt); }
199 #else
200 (
201 task_t target_task,
202 task_flavor_t flavor,
203 task_info_t task_info_in,
204 mach_msg_type_number_t task_info_inCnt
205 );
206 #endif /* defined(LINTLIBRARY) */
207
208 /* Routine task_suspend */
209 #ifdef mig_external
210 mig_external
211 #else
212 extern
213 #endif /* mig_external */
task_suspend(target_task)214 kern_return_t task_suspend
215 #if defined(LINTLIBRARY)
216 (target_task)
217 task_t target_task;
218 { return task_suspend(target_task); }
219 #else
220 (
221 task_t target_task
222 );
223 #endif /* defined(LINTLIBRARY) */
224
225 /* Routine task_resume */
226 #ifdef mig_external
227 mig_external
228 #else
229 extern
230 #endif /* mig_external */
task_resume(target_task)231 kern_return_t task_resume
232 #if defined(LINTLIBRARY)
233 (target_task)
234 task_t target_task;
235 { return task_resume(target_task); }
236 #else
237 (
238 task_t target_task
239 );
240 #endif /* defined(LINTLIBRARY) */
241
242 /* Routine task_get_special_port */
243 #ifdef mig_external
244 mig_external
245 #else
246 extern
247 #endif /* mig_external */
task_get_special_port(task,which_port,special_port)248 kern_return_t task_get_special_port
249 #if defined(LINTLIBRARY)
250 (task, which_port, special_port)
251 task_t task;
252 int which_port;
253 mach_port_t *special_port;
254 { return task_get_special_port(task, which_port, special_port); }
255 #else
256 (
257 task_t task,
258 int which_port,
259 mach_port_t *special_port
260 );
261 #endif /* defined(LINTLIBRARY) */
262
263 /* Routine task_set_special_port */
264 #ifdef mig_external
265 mig_external
266 #else
267 extern
268 #endif /* mig_external */
task_set_special_port(task,which_port,special_port)269 kern_return_t task_set_special_port
270 #if defined(LINTLIBRARY)
271 (task, which_port, special_port)
272 task_t task;
273 int which_port;
274 mach_port_t special_port;
275 { return task_set_special_port(task, which_port, special_port); }
276 #else
277 (
278 task_t task,
279 int which_port,
280 mach_port_t special_port
281 );
282 #endif /* defined(LINTLIBRARY) */
283
284 /* Routine thread_create */
285 #ifdef mig_external
286 mig_external
287 #else
288 extern
289 #endif /* mig_external */
thread_create(parent_task,child_act)290 kern_return_t thread_create
291 #if defined(LINTLIBRARY)
292 (parent_task, child_act)
293 task_t parent_task;
294 thread_act_t *child_act;
295 { return thread_create(parent_task, child_act); }
296 #else
297 (
298 task_t parent_task,
299 thread_act_t *child_act
300 );
301 #endif /* defined(LINTLIBRARY) */
302
303 /* Routine thread_create_running */
304 #ifdef mig_external
305 mig_external
306 #else
307 extern
308 #endif /* mig_external */
thread_create_running(parent_task,flavor,new_state,new_stateCnt,child_act)309 kern_return_t thread_create_running
310 #if defined(LINTLIBRARY)
311 (parent_task, flavor, new_state, new_stateCnt, child_act)
312 task_t parent_task;
313 thread_state_flavor_t flavor;
314 thread_state_t new_state;
315 mach_msg_type_number_t new_stateCnt;
316 thread_act_t *child_act;
317 { return thread_create_running(parent_task, flavor, new_state, new_stateCnt, child_act); }
318 #else
319 (
320 task_t parent_task,
321 thread_state_flavor_t flavor,
322 thread_state_t new_state,
323 mach_msg_type_number_t new_stateCnt,
324 thread_act_t *child_act
325 );
326 #endif /* defined(LINTLIBRARY) */
327
328 /* Routine task_set_exception_ports */
329 #ifdef mig_external
330 mig_external
331 #else
332 extern
333 #endif /* mig_external */
task_set_exception_ports(task,exception_mask,new_port,behavior,new_flavor)334 kern_return_t task_set_exception_ports
335 #if defined(LINTLIBRARY)
336 (task, exception_mask, new_port, behavior, new_flavor)
337 task_t task;
338 exception_mask_t exception_mask;
339 mach_port_t new_port;
340 exception_behavior_t behavior;
341 thread_state_flavor_t new_flavor;
342 { return task_set_exception_ports(task, exception_mask, new_port, behavior, new_flavor); }
343 #else
344 (
345 task_t task,
346 exception_mask_t exception_mask,
347 mach_port_t new_port,
348 exception_behavior_t behavior,
349 thread_state_flavor_t new_flavor
350 );
351 #endif /* defined(LINTLIBRARY) */
352
353 /* Routine task_get_exception_ports */
354 #ifdef mig_external
355 mig_external
356 #else
357 extern
358 #endif /* mig_external */
task_get_exception_ports(task,exception_mask,masks,masksCnt,old_handlers,old_behaviors,old_flavors)359 kern_return_t task_get_exception_ports
360 #if defined(LINTLIBRARY)
361 (task, exception_mask, masks, masksCnt, old_handlers, old_behaviors, old_flavors)
362 task_t task;
363 exception_mask_t exception_mask;
364 exception_mask_array_t masks;
365 mach_msg_type_number_t *masksCnt;
366 exception_handler_array_t old_handlers;
367 exception_behavior_array_t old_behaviors;
368 exception_flavor_array_t old_flavors;
369 { return task_get_exception_ports(task, exception_mask, masks, masksCnt, old_handlers, old_behaviors, old_flavors); }
370 #else
371 (
372 task_t task,
373 exception_mask_t exception_mask,
374 exception_mask_array_t masks,
375 mach_msg_type_number_t *masksCnt,
376 exception_handler_array_t old_handlers,
377 exception_behavior_array_t old_behaviors,
378 exception_flavor_array_t old_flavors
379 );
380 #endif /* defined(LINTLIBRARY) */
381
382 /* Routine task_swap_exception_ports */
383 #ifdef mig_external
384 mig_external
385 #else
386 extern
387 #endif /* mig_external */
task_swap_exception_ports(task,exception_mask,new_port,behavior,new_flavor,masks,masksCnt,old_handlerss,old_behaviors,old_flavors)388 kern_return_t task_swap_exception_ports
389 #if defined(LINTLIBRARY)
390 (task, exception_mask, new_port, behavior, new_flavor, masks, masksCnt, old_handlerss, old_behaviors, old_flavors)
391 task_t task;
392 exception_mask_t exception_mask;
393 mach_port_t new_port;
394 exception_behavior_t behavior;
395 thread_state_flavor_t new_flavor;
396 exception_mask_array_t masks;
397 mach_msg_type_number_t *masksCnt;
398 exception_handler_array_t old_handlerss;
399 exception_behavior_array_t old_behaviors;
400 exception_flavor_array_t old_flavors;
401 { return task_swap_exception_ports(task, exception_mask, new_port, behavior, new_flavor, masks, masksCnt, old_handlerss, old_behaviors, old_flavors); }
402 #else
403 (
404 task_t task,
405 exception_mask_t exception_mask,
406 mach_port_t new_port,
407 exception_behavior_t behavior,
408 thread_state_flavor_t new_flavor,
409 exception_mask_array_t masks,
410 mach_msg_type_number_t *masksCnt,
411 exception_handler_array_t old_handlerss,
412 exception_behavior_array_t old_behaviors,
413 exception_flavor_array_t old_flavors
414 );
415 #endif /* defined(LINTLIBRARY) */
416
417 /* Routine semaphore_create */
418 #ifdef mig_external
419 mig_external
420 #else
421 extern
422 #endif /* mig_external */
semaphore_create(task,semaphore,policy,value)423 kern_return_t semaphore_create
424 #if defined(LINTLIBRARY)
425 (task, semaphore, policy, value)
426 task_t task;
427 semaphore_t *semaphore;
428 int policy;
429 int value;
430 { return semaphore_create(task, semaphore, policy, value); }
431 #else
432 (
433 task_t task,
434 semaphore_t *semaphore,
435 int policy,
436 int value
437 );
438 #endif /* defined(LINTLIBRARY) */
439
440 /* Routine semaphore_destroy */
441 #ifdef mig_external
442 mig_external
443 #else
444 extern
445 #endif /* mig_external */
semaphore_destroy(task,semaphore)446 kern_return_t semaphore_destroy
447 #if defined(LINTLIBRARY)
448 (task, semaphore)
449 task_t task;
450 semaphore_t semaphore;
451 { return semaphore_destroy(task, semaphore); }
452 #else
453 (
454 task_t task,
455 semaphore_t semaphore
456 );
457 #endif /* defined(LINTLIBRARY) */
458
459 /* Routine task_policy_set */
460 #ifdef mig_external
461 mig_external
462 #else
463 extern
464 #endif /* mig_external */
task_policy_set(task,flavor,policy_info,policy_infoCnt)465 kern_return_t task_policy_set
466 #if defined(LINTLIBRARY)
467 (task, flavor, policy_info, policy_infoCnt)
468 task_t task;
469 task_policy_flavor_t flavor;
470 task_policy_t policy_info;
471 mach_msg_type_number_t policy_infoCnt;
472 { return task_policy_set(task, flavor, policy_info, policy_infoCnt); }
473 #else
474 (
475 task_t task,
476 task_policy_flavor_t flavor,
477 task_policy_t policy_info,
478 mach_msg_type_number_t policy_infoCnt
479 );
480 #endif /* defined(LINTLIBRARY) */
481
482 /* Routine task_policy_get */
483 #ifdef mig_external
484 mig_external
485 #else
486 extern
487 #endif /* mig_external */
task_policy_get(task,flavor,policy_info,policy_infoCnt,get_default)488 kern_return_t task_policy_get
489 #if defined(LINTLIBRARY)
490 (task, flavor, policy_info, policy_infoCnt, get_default)
491 task_t task;
492 task_policy_flavor_t flavor;
493 task_policy_t policy_info;
494 mach_msg_type_number_t *policy_infoCnt;
495 boolean_t *get_default;
496 { return task_policy_get(task, flavor, policy_info, policy_infoCnt, get_default); }
497 #else
498 (
499 task_t task,
500 task_policy_flavor_t flavor,
501 task_policy_t policy_info,
502 mach_msg_type_number_t *policy_infoCnt,
503 boolean_t *get_default
504 );
505 #endif /* defined(LINTLIBRARY) */
506
507 /* Routine task_sample */
508 #ifdef mig_external
509 mig_external
510 #else
511 extern
512 #endif /* mig_external */
task_sample(task,reply)513 kern_return_t task_sample
514 #if defined(LINTLIBRARY)
515 (task, reply)
516 task_t task;
517 mach_port_t reply;
518 { return task_sample(task, reply); }
519 #else
520 (
521 task_t task,
522 mach_port_t reply
523 );
524 #endif /* defined(LINTLIBRARY) */
525
526 /* Routine task_policy */
527 #ifdef mig_external
528 mig_external
529 #else
530 extern
531 #endif /* mig_external */
task_policy(task,policy,base,baseCnt,set_limit,change)532 kern_return_t task_policy
533 #if defined(LINTLIBRARY)
534 (task, policy, base, baseCnt, set_limit, change)
535 task_t task;
536 policy_t policy;
537 policy_base_t base;
538 mach_msg_type_number_t baseCnt;
539 boolean_t set_limit;
540 boolean_t change;
541 { return task_policy(task, policy, base, baseCnt, set_limit, change); }
542 #else
543 (
544 task_t task,
545 policy_t policy,
546 policy_base_t base,
547 mach_msg_type_number_t baseCnt,
548 boolean_t set_limit,
549 boolean_t change
550 );
551 #endif /* defined(LINTLIBRARY) */
552
553 /* Routine task_set_ras_pc */
554 #ifdef mig_external
555 mig_external
556 #else
557 extern
558 #endif /* mig_external */
task_set_ras_pc(target_task,basepc,boundspc)559 kern_return_t task_set_ras_pc
560 #if defined(LINTLIBRARY)
561 (target_task, basepc, boundspc)
562 task_t target_task;
563 vm_address_t basepc;
564 vm_address_t boundspc;
565 { return task_set_ras_pc(target_task, basepc, boundspc); }
566 #else
567 (
568 task_t target_task,
569 vm_address_t basepc,
570 vm_address_t boundspc
571 );
572 #endif /* defined(LINTLIBRARY) */
573
574 /* Routine task_zone_info */
575 #ifdef mig_external
576 mig_external
577 #else
578 extern
579 #endif /* mig_external */
task_zone_info(target_task,names,namesCnt,info,infoCnt)580 kern_return_t task_zone_info
581 #if defined(LINTLIBRARY)
582 (target_task, names, namesCnt, info, infoCnt)
583 task_t target_task;
584 mach_zone_name_array_t *names;
585 mach_msg_type_number_t *namesCnt;
586 task_zone_info_array_t *info;
587 mach_msg_type_number_t *infoCnt;
588 { return task_zone_info(target_task, names, namesCnt, info, infoCnt); }
589 #else
590 (
591 task_t target_task,
592 mach_zone_name_array_t *names,
593 mach_msg_type_number_t *namesCnt,
594 task_zone_info_array_t *info,
595 mach_msg_type_number_t *infoCnt
596 );
597 #endif /* defined(LINTLIBRARY) */
598
599 /* Routine task_assign */
600 #ifdef mig_external
601 mig_external
602 #else
603 extern
604 #endif /* mig_external */
task_assign(task,new_set,assign_threads)605 kern_return_t task_assign
606 #if defined(LINTLIBRARY)
607 (task, new_set, assign_threads)
608 task_t task;
609 processor_set_t new_set;
610 boolean_t assign_threads;
611 { return task_assign(task, new_set, assign_threads); }
612 #else
613 (
614 task_t task,
615 processor_set_t new_set,
616 boolean_t assign_threads
617 );
618 #endif /* defined(LINTLIBRARY) */
619
620 /* Routine task_assign_default */
621 #ifdef mig_external
622 mig_external
623 #else
624 extern
625 #endif /* mig_external */
task_assign_default(task,assign_threads)626 kern_return_t task_assign_default
627 #if defined(LINTLIBRARY)
628 (task, assign_threads)
629 task_t task;
630 boolean_t assign_threads;
631 { return task_assign_default(task, assign_threads); }
632 #else
633 (
634 task_t task,
635 boolean_t assign_threads
636 );
637 #endif /* defined(LINTLIBRARY) */
638
639 /* Routine task_get_assignment */
640 #ifdef mig_external
641 mig_external
642 #else
643 extern
644 #endif /* mig_external */
task_get_assignment(task,assigned_set)645 kern_return_t task_get_assignment
646 #if defined(LINTLIBRARY)
647 (task, assigned_set)
648 task_t task;
649 processor_set_name_t *assigned_set;
650 { return task_get_assignment(task, assigned_set); }
651 #else
652 (
653 task_t task,
654 processor_set_name_t *assigned_set
655 );
656 #endif /* defined(LINTLIBRARY) */
657
658 /* Routine task_set_policy */
659 #ifdef mig_external
660 mig_external
661 #else
662 extern
663 #endif /* mig_external */
task_set_policy(task,pset,policy,base,baseCnt,limit,limitCnt,change)664 kern_return_t task_set_policy
665 #if defined(LINTLIBRARY)
666 (task, pset, policy, base, baseCnt, limit, limitCnt, change)
667 task_t task;
668 processor_set_t pset;
669 policy_t policy;
670 policy_base_t base;
671 mach_msg_type_number_t baseCnt;
672 policy_limit_t limit;
673 mach_msg_type_number_t limitCnt;
674 boolean_t change;
675 { return task_set_policy(task, pset, policy, base, baseCnt, limit, limitCnt, change); }
676 #else
677 (
678 task_t task,
679 processor_set_t pset,
680 policy_t policy,
681 policy_base_t base,
682 mach_msg_type_number_t baseCnt,
683 policy_limit_t limit,
684 mach_msg_type_number_t limitCnt,
685 boolean_t change
686 );
687 #endif /* defined(LINTLIBRARY) */
688
689 /* Routine task_get_state */
690 #ifdef mig_external
691 mig_external
692 #else
693 extern
694 #endif /* mig_external */
task_get_state(task,flavor,old_state,old_stateCnt)695 kern_return_t task_get_state
696 #if defined(LINTLIBRARY)
697 (task, flavor, old_state, old_stateCnt)
698 task_t task;
699 thread_state_flavor_t flavor;
700 thread_state_t old_state;
701 mach_msg_type_number_t *old_stateCnt;
702 { return task_get_state(task, flavor, old_state, old_stateCnt); }
703 #else
704 (
705 task_t task,
706 thread_state_flavor_t flavor,
707 thread_state_t old_state,
708 mach_msg_type_number_t *old_stateCnt
709 );
710 #endif /* defined(LINTLIBRARY) */
711
712 /* Routine task_set_state */
713 #ifdef mig_external
714 mig_external
715 #else
716 extern
717 #endif /* mig_external */
task_set_state(task,flavor,new_state,new_stateCnt)718 kern_return_t task_set_state
719 #if defined(LINTLIBRARY)
720 (task, flavor, new_state, new_stateCnt)
721 task_t task;
722 thread_state_flavor_t flavor;
723 thread_state_t new_state;
724 mach_msg_type_number_t new_stateCnt;
725 { return task_set_state(task, flavor, new_state, new_stateCnt); }
726 #else
727 (
728 task_t task,
729 thread_state_flavor_t flavor,
730 thread_state_t new_state,
731 mach_msg_type_number_t new_stateCnt
732 );
733 #endif /* defined(LINTLIBRARY) */
734
735 /* Routine task_set_phys_footprint_limit */
736 #ifdef mig_external
737 mig_external
738 #else
739 extern
740 #endif /* mig_external */
task_set_phys_footprint_limit(task,new_limit,old_limit)741 kern_return_t task_set_phys_footprint_limit
742 #if defined(LINTLIBRARY)
743 (task, new_limit, old_limit)
744 task_t task;
745 int new_limit;
746 int *old_limit;
747 { return task_set_phys_footprint_limit(task, new_limit, old_limit); }
748 #else
749 (
750 task_t task,
751 int new_limit,
752 int *old_limit
753 );
754 #endif /* defined(LINTLIBRARY) */
755
756 /* Routine task_suspend2 */
757 #ifdef mig_external
758 mig_external
759 #else
760 extern
761 #endif /* mig_external */
task_suspend2(target_task,suspend_token)762 kern_return_t task_suspend2
763 #if defined(LINTLIBRARY)
764 (target_task, suspend_token)
765 task_t target_task;
766 task_suspension_token_t *suspend_token;
767 { return task_suspend2(target_task, suspend_token); }
768 #else
769 (
770 task_t target_task,
771 task_suspension_token_t *suspend_token
772 );
773 #endif /* defined(LINTLIBRARY) */
774
775 /* Routine task_resume2 */
776 #ifdef mig_external
777 mig_external
778 #else
779 extern
780 #endif /* mig_external */
task_resume2(suspend_token)781 kern_return_t task_resume2
782 #if defined(LINTLIBRARY)
783 (suspend_token)
784 task_suspension_token_t suspend_token;
785 { return task_resume2(suspend_token); }
786 #else
787 (
788 task_suspension_token_t suspend_token
789 );
790 #endif /* defined(LINTLIBRARY) */
791
792 /* Routine task_purgable_info */
793 #ifdef mig_external
794 mig_external
795 #else
796 extern
797 #endif /* mig_external */
task_purgable_info(task,stats)798 kern_return_t task_purgable_info
799 #if defined(LINTLIBRARY)
800 (task, stats)
801 task_t task;
802 task_purgable_info_t *stats;
803 { return task_purgable_info(task, stats); }
804 #else
805 (
806 task_t task,
807 task_purgable_info_t *stats
808 );
809 #endif /* defined(LINTLIBRARY) */
810
811 /* Routine task_get_mach_voucher */
812 #ifdef mig_external
813 mig_external
814 #else
815 extern
816 #endif /* mig_external */
task_get_mach_voucher(task,which,voucher)817 kern_return_t task_get_mach_voucher
818 #if defined(LINTLIBRARY)
819 (task, which, voucher)
820 task_t task;
821 mach_voucher_selector_t which;
822 ipc_voucher_t *voucher;
823 { return task_get_mach_voucher(task, which, voucher); }
824 #else
825 (
826 task_t task,
827 mach_voucher_selector_t which,
828 ipc_voucher_t *voucher
829 );
830 #endif /* defined(LINTLIBRARY) */
831
832 /* Routine task_set_mach_voucher */
833 #ifdef mig_external
834 mig_external
835 #else
836 extern
837 #endif /* mig_external */
task_set_mach_voucher(task,voucher)838 kern_return_t task_set_mach_voucher
839 #if defined(LINTLIBRARY)
840 (task, voucher)
841 task_t task;
842 ipc_voucher_t voucher;
843 { return task_set_mach_voucher(task, voucher); }
844 #else
845 (
846 task_t task,
847 ipc_voucher_t voucher
848 );
849 #endif /* defined(LINTLIBRARY) */
850
851 /* Routine task_swap_mach_voucher */
852 #ifdef mig_external
853 mig_external
854 #else
855 extern
856 #endif /* mig_external */
task_swap_mach_voucher(task,new_voucher,old_voucher)857 kern_return_t task_swap_mach_voucher
858 #if defined(LINTLIBRARY)
859 (task, new_voucher, old_voucher)
860 task_t task;
861 ipc_voucher_t new_voucher;
862 ipc_voucher_t *old_voucher;
863 { return task_swap_mach_voucher(task, new_voucher, old_voucher); }
864 #else
865 (
866 task_t task,
867 ipc_voucher_t new_voucher,
868 ipc_voucher_t *old_voucher
869 );
870 #endif /* defined(LINTLIBRARY) */
871
872 __END_DECLS
873
874 /********************** Caution **************************/
875 /* The following data types should be used to calculate */
876 /* maximum message sizes only. The actual message may be */
877 /* smaller, and the position of the arguments within the */
878 /* message layout may vary from what is presented here. */
879 /* For example, if any of the arguments are variable- */
880 /* sized, and less than the maximum is sent, the data */
881 /* will be packed tight in the actual message to reduce */
882 /* the presence of holes. */
883 /********************** Caution **************************/
884
885 /* typedefs for all requests */
886
887 #ifndef __Request__task_subsystem__defined
888 #define __Request__task_subsystem__defined
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 mach_msg_ool_ports_descriptor_t ledgers;
898 /* end of the kernel processed data */
899 NDR_record_t NDR;
900 mach_msg_type_number_t ledgersCnt;
901 boolean_t inherit_memory;
902 } __Request__task_create_t;
903 #ifdef __MigPackStructs
904 #pragma pack()
905 #endif
906
907 #ifdef __MigPackStructs
908 #pragma pack(4)
909 #endif
910 typedef struct {
911 mach_msg_header_t Head;
912 /* start of the kernel processed data */
913 mach_msg_body_t msgh_body;
914 /* end of the kernel processed data */
915 } __Request__task_terminate_t;
916 #ifdef __MigPackStructs
917 #pragma pack()
918 #endif
919
920 #ifdef __MigPackStructs
921 #pragma pack(4)
922 #endif
923 typedef struct {
924 mach_msg_header_t Head;
925 /* start of the kernel processed data */
926 mach_msg_body_t msgh_body;
927 /* end of the kernel processed data */
928 } __Request__task_threads_t;
929 #ifdef __MigPackStructs
930 #pragma pack()
931 #endif
932
933 #ifdef __MigPackStructs
934 #pragma pack(4)
935 #endif
936 typedef struct {
937 mach_msg_header_t Head;
938 /* start of the kernel processed data */
939 mach_msg_body_t msgh_body;
940 mach_msg_ool_ports_descriptor_t init_port_set;
941 /* end of the kernel processed data */
942 NDR_record_t NDR;
943 mach_msg_type_number_t init_port_setCnt;
944 } __Request__mach_ports_register_t;
945 #ifdef __MigPackStructs
946 #pragma pack()
947 #endif
948
949 #ifdef __MigPackStructs
950 #pragma pack(4)
951 #endif
952 typedef struct {
953 mach_msg_header_t Head;
954 /* start of the kernel processed data */
955 mach_msg_body_t msgh_body;
956 /* end of the kernel processed data */
957 } __Request__mach_ports_lookup_t;
958 #ifdef __MigPackStructs
959 #pragma pack()
960 #endif
961
962 #ifdef __MigPackStructs
963 #pragma pack(4)
964 #endif
965 typedef struct {
966 mach_msg_header_t Head;
967 /* start of the kernel processed data */
968 mach_msg_body_t msgh_body;
969 /* end of the kernel processed data */
970 NDR_record_t NDR;
971 task_flavor_t flavor;
972 mach_msg_type_number_t task_info_outCnt;
973 } __Request__task_info_t;
974 #ifdef __MigPackStructs
975 #pragma pack()
976 #endif
977
978 #ifdef __MigPackStructs
979 #pragma pack(4)
980 #endif
981 typedef struct {
982 mach_msg_header_t Head;
983 /* start of the kernel processed data */
984 mach_msg_body_t msgh_body;
985 /* end of the kernel processed data */
986 NDR_record_t NDR;
987 task_flavor_t flavor;
988 mach_msg_type_number_t task_info_inCnt;
989 integer_t task_info_in[52];
990 } __Request__task_set_info_t;
991 #ifdef __MigPackStructs
992 #pragma pack()
993 #endif
994
995 #ifdef __MigPackStructs
996 #pragma pack(4)
997 #endif
998 typedef struct {
999 mach_msg_header_t Head;
1000 /* start of the kernel processed data */
1001 mach_msg_body_t msgh_body;
1002 /* end of the kernel processed data */
1003 } __Request__task_suspend_t;
1004 #ifdef __MigPackStructs
1005 #pragma pack()
1006 #endif
1007
1008 #ifdef __MigPackStructs
1009 #pragma pack(4)
1010 #endif
1011 typedef struct {
1012 mach_msg_header_t Head;
1013 /* start of the kernel processed data */
1014 mach_msg_body_t msgh_body;
1015 /* end of the kernel processed data */
1016 } __Request__task_resume_t;
1017 #ifdef __MigPackStructs
1018 #pragma pack()
1019 #endif
1020
1021 #ifdef __MigPackStructs
1022 #pragma pack(4)
1023 #endif
1024 typedef struct {
1025 mach_msg_header_t Head;
1026 /* start of the kernel processed data */
1027 mach_msg_body_t msgh_body;
1028 /* end of the kernel processed data */
1029 NDR_record_t NDR;
1030 int which_port;
1031 } __Request__task_get_special_port_t;
1032 #ifdef __MigPackStructs
1033 #pragma pack()
1034 #endif
1035
1036 #ifdef __MigPackStructs
1037 #pragma pack(4)
1038 #endif
1039 typedef struct {
1040 mach_msg_header_t Head;
1041 /* start of the kernel processed data */
1042 mach_msg_body_t msgh_body;
1043 mach_msg_port_descriptor_t special_port;
1044 /* end of the kernel processed data */
1045 NDR_record_t NDR;
1046 int which_port;
1047 } __Request__task_set_special_port_t;
1048 #ifdef __MigPackStructs
1049 #pragma pack()
1050 #endif
1051
1052 #ifdef __MigPackStructs
1053 #pragma pack(4)
1054 #endif
1055 typedef struct {
1056 mach_msg_header_t Head;
1057 /* start of the kernel processed data */
1058 mach_msg_body_t msgh_body;
1059 /* end of the kernel processed data */
1060 } __Request__thread_create_t;
1061 #ifdef __MigPackStructs
1062 #pragma pack()
1063 #endif
1064
1065 #ifdef __MigPackStructs
1066 #pragma pack(4)
1067 #endif
1068 typedef struct {
1069 mach_msg_header_t Head;
1070 /* start of the kernel processed data */
1071 mach_msg_body_t msgh_body;
1072 /* end of the kernel processed data */
1073 NDR_record_t NDR;
1074 thread_state_flavor_t flavor;
1075 mach_msg_type_number_t new_stateCnt;
1076 natural_t new_state[32];
1077 } __Request__thread_create_running_t;
1078 #ifdef __MigPackStructs
1079 #pragma pack()
1080 #endif
1081
1082 #ifdef __MigPackStructs
1083 #pragma pack(4)
1084 #endif
1085 typedef struct {
1086 mach_msg_header_t Head;
1087 /* start of the kernel processed data */
1088 mach_msg_body_t msgh_body;
1089 mach_msg_port_descriptor_t new_port;
1090 /* end of the kernel processed data */
1091 NDR_record_t NDR;
1092 exception_mask_t exception_mask;
1093 exception_behavior_t behavior;
1094 thread_state_flavor_t new_flavor;
1095 } __Request__task_set_exception_ports_t;
1096 #ifdef __MigPackStructs
1097 #pragma pack()
1098 #endif
1099
1100 #ifdef __MigPackStructs
1101 #pragma pack(4)
1102 #endif
1103 typedef struct {
1104 mach_msg_header_t Head;
1105 /* start of the kernel processed data */
1106 mach_msg_body_t msgh_body;
1107 /* end of the kernel processed data */
1108 NDR_record_t NDR;
1109 exception_mask_t exception_mask;
1110 } __Request__task_get_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 new_port;
1123 /* end of the kernel processed data */
1124 NDR_record_t NDR;
1125 exception_mask_t exception_mask;
1126 exception_behavior_t behavior;
1127 thread_state_flavor_t new_flavor;
1128 } __Request__task_swap_exception_ports_t;
1129 #ifdef __MigPackStructs
1130 #pragma pack()
1131 #endif
1132
1133 #ifdef __MigPackStructs
1134 #pragma pack(4)
1135 #endif
1136 typedef struct {
1137 mach_msg_header_t Head;
1138 /* start of the kernel processed data */
1139 mach_msg_body_t msgh_body;
1140 /* end of the kernel processed data */
1141 NDR_record_t NDR;
1142 int policy;
1143 int value;
1144 } __Request__semaphore_create_t;
1145 #ifdef __MigPackStructs
1146 #pragma pack()
1147 #endif
1148
1149 #ifdef __MigPackStructs
1150 #pragma pack(4)
1151 #endif
1152 typedef struct {
1153 mach_msg_header_t Head;
1154 /* start of the kernel processed data */
1155 mach_msg_body_t msgh_body;
1156 mach_msg_port_descriptor_t semaphore;
1157 /* end of the kernel processed data */
1158 } __Request__semaphore_destroy_t;
1159 #ifdef __MigPackStructs
1160 #pragma pack()
1161 #endif
1162
1163 #ifdef __MigPackStructs
1164 #pragma pack(4)
1165 #endif
1166 typedef struct {
1167 mach_msg_header_t Head;
1168 /* start of the kernel processed data */
1169 mach_msg_body_t msgh_body;
1170 /* end of the kernel processed data */
1171 NDR_record_t NDR;
1172 task_policy_flavor_t flavor;
1173 mach_msg_type_number_t policy_infoCnt;
1174 integer_t policy_info[16];
1175 } __Request__task_policy_set_t;
1176 #ifdef __MigPackStructs
1177 #pragma pack()
1178 #endif
1179
1180 #ifdef __MigPackStructs
1181 #pragma pack(4)
1182 #endif
1183 typedef struct {
1184 mach_msg_header_t Head;
1185 /* start of the kernel processed data */
1186 mach_msg_body_t msgh_body;
1187 /* end of the kernel processed data */
1188 NDR_record_t NDR;
1189 task_policy_flavor_t flavor;
1190 mach_msg_type_number_t policy_infoCnt;
1191 boolean_t get_default;
1192 } __Request__task_policy_get_t;
1193 #ifdef __MigPackStructs
1194 #pragma pack()
1195 #endif
1196
1197 #ifdef __MigPackStructs
1198 #pragma pack(4)
1199 #endif
1200 typedef struct {
1201 mach_msg_header_t Head;
1202 /* start of the kernel processed data */
1203 mach_msg_body_t msgh_body;
1204 mach_msg_port_descriptor_t reply;
1205 /* end of the kernel processed data */
1206 } __Request__task_sample_t;
1207 #ifdef __MigPackStructs
1208 #pragma pack()
1209 #endif
1210
1211 #ifdef __MigPackStructs
1212 #pragma pack(4)
1213 #endif
1214 typedef struct {
1215 mach_msg_header_t Head;
1216 /* start of the kernel processed data */
1217 mach_msg_body_t msgh_body;
1218 /* end of the kernel processed data */
1219 NDR_record_t NDR;
1220 policy_t policy;
1221 mach_msg_type_number_t baseCnt;
1222 integer_t base[5];
1223 boolean_t set_limit;
1224 boolean_t change;
1225 } __Request__task_policy_t;
1226 #ifdef __MigPackStructs
1227 #pragma pack()
1228 #endif
1229
1230 #ifdef __MigPackStructs
1231 #pragma pack(4)
1232 #endif
1233 typedef struct {
1234 mach_msg_header_t Head;
1235 /* start of the kernel processed data */
1236 mach_msg_body_t msgh_body;
1237 /* end of the kernel processed data */
1238 NDR_record_t NDR;
1239 vm_address_t basepc;
1240 vm_address_t boundspc;
1241 } __Request__task_set_ras_pc_t;
1242 #ifdef __MigPackStructs
1243 #pragma pack()
1244 #endif
1245
1246 #ifdef __MigPackStructs
1247 #pragma pack(4)
1248 #endif
1249 typedef struct {
1250 mach_msg_header_t Head;
1251 /* start of the kernel processed data */
1252 mach_msg_body_t msgh_body;
1253 /* end of the kernel processed data */
1254 } __Request__task_zone_info_t;
1255 #ifdef __MigPackStructs
1256 #pragma pack()
1257 #endif
1258
1259 #ifdef __MigPackStructs
1260 #pragma pack(4)
1261 #endif
1262 typedef struct {
1263 mach_msg_header_t Head;
1264 /* start of the kernel processed data */
1265 mach_msg_body_t msgh_body;
1266 mach_msg_port_descriptor_t new_set;
1267 /* end of the kernel processed data */
1268 NDR_record_t NDR;
1269 boolean_t assign_threads;
1270 } __Request__task_assign_t;
1271 #ifdef __MigPackStructs
1272 #pragma pack()
1273 #endif
1274
1275 #ifdef __MigPackStructs
1276 #pragma pack(4)
1277 #endif
1278 typedef struct {
1279 mach_msg_header_t Head;
1280 /* start of the kernel processed data */
1281 mach_msg_body_t msgh_body;
1282 /* end of the kernel processed data */
1283 NDR_record_t NDR;
1284 boolean_t assign_threads;
1285 } __Request__task_assign_default_t;
1286 #ifdef __MigPackStructs
1287 #pragma pack()
1288 #endif
1289
1290 #ifdef __MigPackStructs
1291 #pragma pack(4)
1292 #endif
1293 typedef struct {
1294 mach_msg_header_t Head;
1295 /* start of the kernel processed data */
1296 mach_msg_body_t msgh_body;
1297 /* end of the kernel processed data */
1298 } __Request__task_get_assignment_t;
1299 #ifdef __MigPackStructs
1300 #pragma pack()
1301 #endif
1302
1303 #ifdef __MigPackStructs
1304 #pragma pack(4)
1305 #endif
1306 typedef struct {
1307 mach_msg_header_t Head;
1308 /* start of the kernel processed data */
1309 mach_msg_body_t msgh_body;
1310 mach_msg_port_descriptor_t pset;
1311 /* end of the kernel processed data */
1312 NDR_record_t NDR;
1313 policy_t policy;
1314 mach_msg_type_number_t baseCnt;
1315 integer_t base[5];
1316 mach_msg_type_number_t limitCnt;
1317 integer_t limit[1];
1318 boolean_t change;
1319 } __Request__task_set_policy_t;
1320 #ifdef __MigPackStructs
1321 #pragma pack()
1322 #endif
1323
1324 #ifdef __MigPackStructs
1325 #pragma pack(4)
1326 #endif
1327 typedef struct {
1328 mach_msg_header_t Head;
1329 /* start of the kernel processed data */
1330 mach_msg_body_t msgh_body;
1331 /* end of the kernel processed data */
1332 NDR_record_t NDR;
1333 thread_state_flavor_t flavor;
1334 mach_msg_type_number_t old_stateCnt;
1335 } __Request__task_get_state_t;
1336 #ifdef __MigPackStructs
1337 #pragma pack()
1338 #endif
1339
1340 #ifdef __MigPackStructs
1341 #pragma pack(4)
1342 #endif
1343 typedef struct {
1344 mach_msg_header_t Head;
1345 /* start of the kernel processed data */
1346 mach_msg_body_t msgh_body;
1347 /* end of the kernel processed data */
1348 NDR_record_t NDR;
1349 thread_state_flavor_t flavor;
1350 mach_msg_type_number_t new_stateCnt;
1351 natural_t new_state[32];
1352 } __Request__task_set_state_t;
1353 #ifdef __MigPackStructs
1354 #pragma pack()
1355 #endif
1356
1357 #ifdef __MigPackStructs
1358 #pragma pack(4)
1359 #endif
1360 typedef struct {
1361 mach_msg_header_t Head;
1362 /* start of the kernel processed data */
1363 mach_msg_body_t msgh_body;
1364 /* end of the kernel processed data */
1365 NDR_record_t NDR;
1366 int new_limit;
1367 } __Request__task_set_phys_footprint_limit_t;
1368 #ifdef __MigPackStructs
1369 #pragma pack()
1370 #endif
1371
1372 #ifdef __MigPackStructs
1373 #pragma pack(4)
1374 #endif
1375 typedef struct {
1376 mach_msg_header_t Head;
1377 /* start of the kernel processed data */
1378 mach_msg_body_t msgh_body;
1379 /* end of the kernel processed data */
1380 } __Request__task_suspend2_t;
1381 #ifdef __MigPackStructs
1382 #pragma pack()
1383 #endif
1384
1385 #ifdef __MigPackStructs
1386 #pragma pack(4)
1387 #endif
1388 typedef struct {
1389 mach_msg_header_t Head;
1390 /* start of the kernel processed data */
1391 mach_msg_body_t msgh_body;
1392 /* end of the kernel processed data */
1393 } __Request__task_resume2_t;
1394 #ifdef __MigPackStructs
1395 #pragma pack()
1396 #endif
1397
1398 #ifdef __MigPackStructs
1399 #pragma pack(4)
1400 #endif
1401 typedef struct {
1402 mach_msg_header_t Head;
1403 /* start of the kernel processed data */
1404 mach_msg_body_t msgh_body;
1405 /* end of the kernel processed data */
1406 } __Request__task_purgable_info_t;
1407 #ifdef __MigPackStructs
1408 #pragma pack()
1409 #endif
1410
1411 #ifdef __MigPackStructs
1412 #pragma pack(4)
1413 #endif
1414 typedef struct {
1415 mach_msg_header_t Head;
1416 /* start of the kernel processed data */
1417 mach_msg_body_t msgh_body;
1418 /* end of the kernel processed data */
1419 NDR_record_t NDR;
1420 mach_voucher_selector_t which;
1421 } __Request__task_get_mach_voucher_t;
1422 #ifdef __MigPackStructs
1423 #pragma pack()
1424 #endif
1425
1426 #ifdef __MigPackStructs
1427 #pragma pack(4)
1428 #endif
1429 typedef struct {
1430 mach_msg_header_t Head;
1431 /* start of the kernel processed data */
1432 mach_msg_body_t msgh_body;
1433 mach_msg_port_descriptor_t voucher;
1434 /* end of the kernel processed data */
1435 } __Request__task_set_mach_voucher_t;
1436 #ifdef __MigPackStructs
1437 #pragma pack()
1438 #endif
1439
1440 #ifdef __MigPackStructs
1441 #pragma pack(4)
1442 #endif
1443 typedef struct {
1444 mach_msg_header_t Head;
1445 /* start of the kernel processed data */
1446 mach_msg_body_t msgh_body;
1447 mach_msg_port_descriptor_t new_voucher;
1448 mach_msg_port_descriptor_t old_voucher;
1449 /* end of the kernel processed data */
1450 } __Request__task_swap_mach_voucher_t;
1451 #ifdef __MigPackStructs
1452 #pragma pack()
1453 #endif
1454 #endif /* !__Request__task_subsystem__defined */
1455
1456 /* union of all requests */
1457
1458 #ifndef __RequestUnion__task_subsystem__defined
1459 #define __RequestUnion__task_subsystem__defined
1460 union __RequestUnion__task_subsystem {
1461 __Request__task_create_t Request_task_create;
1462 __Request__task_terminate_t Request_task_terminate;
1463 __Request__task_threads_t Request_task_threads;
1464 __Request__mach_ports_register_t Request_mach_ports_register;
1465 __Request__mach_ports_lookup_t Request_mach_ports_lookup;
1466 __Request__task_info_t Request_task_info;
1467 __Request__task_set_info_t Request_task_set_info;
1468 __Request__task_suspend_t Request_task_suspend;
1469 __Request__task_resume_t Request_task_resume;
1470 __Request__task_get_special_port_t Request_task_get_special_port;
1471 __Request__task_set_special_port_t Request_task_set_special_port;
1472 __Request__thread_create_t Request_thread_create;
1473 __Request__thread_create_running_t Request_thread_create_running;
1474 __Request__task_set_exception_ports_t Request_task_set_exception_ports;
1475 __Request__task_get_exception_ports_t Request_task_get_exception_ports;
1476 __Request__task_swap_exception_ports_t Request_task_swap_exception_ports;
1477 __Request__semaphore_create_t Request_semaphore_create;
1478 __Request__semaphore_destroy_t Request_semaphore_destroy;
1479 __Request__task_policy_set_t Request_task_policy_set;
1480 __Request__task_policy_get_t Request_task_policy_get;
1481 __Request__task_sample_t Request_task_sample;
1482 __Request__task_policy_t Request_task_policy;
1483 __Request__task_set_ras_pc_t Request_task_set_ras_pc;
1484 __Request__task_zone_info_t Request_task_zone_info;
1485 __Request__task_assign_t Request_task_assign;
1486 __Request__task_assign_default_t Request_task_assign_default;
1487 __Request__task_get_assignment_t Request_task_get_assignment;
1488 __Request__task_set_policy_t Request_task_set_policy;
1489 __Request__task_get_state_t Request_task_get_state;
1490 __Request__task_set_state_t Request_task_set_state;
1491 __Request__task_set_phys_footprint_limit_t Request_task_set_phys_footprint_limit;
1492 __Request__task_suspend2_t Request_task_suspend2;
1493 __Request__task_resume2_t Request_task_resume2;
1494 __Request__task_purgable_info_t Request_task_purgable_info;
1495 __Request__task_get_mach_voucher_t Request_task_get_mach_voucher;
1496 __Request__task_set_mach_voucher_t Request_task_set_mach_voucher;
1497 __Request__task_swap_mach_voucher_t Request_task_swap_mach_voucher;
1498 };
1499 #endif /* !__RequestUnion__task_subsystem__defined */
1500 /* typedefs for all replies */
1501
1502 #ifndef __Reply__task_subsystem__defined
1503 #define __Reply__task_subsystem__defined
1504
1505 #ifdef __MigPackStructs
1506 #pragma pack(4)
1507 #endif
1508 typedef struct {
1509 mach_msg_header_t Head;
1510 /* start of the kernel processed data */
1511 mach_msg_body_t msgh_body;
1512 mach_msg_port_descriptor_t child_task;
1513 /* end of the kernel processed data */
1514 } __Reply__task_create_t;
1515 #ifdef __MigPackStructs
1516 #pragma pack()
1517 #endif
1518
1519 #ifdef __MigPackStructs
1520 #pragma pack(4)
1521 #endif
1522 typedef struct {
1523 mach_msg_header_t Head;
1524 NDR_record_t NDR;
1525 kern_return_t RetCode;
1526 } __Reply__task_terminate_t;
1527 #ifdef __MigPackStructs
1528 #pragma pack()
1529 #endif
1530
1531 #ifdef __MigPackStructs
1532 #pragma pack(4)
1533 #endif
1534 typedef struct {
1535 mach_msg_header_t Head;
1536 /* start of the kernel processed data */
1537 mach_msg_body_t msgh_body;
1538 mach_msg_ool_ports_descriptor_t act_list;
1539 /* end of the kernel processed data */
1540 NDR_record_t NDR;
1541 mach_msg_type_number_t act_listCnt;
1542 } __Reply__task_threads_t;
1543 #ifdef __MigPackStructs
1544 #pragma pack()
1545 #endif
1546
1547 #ifdef __MigPackStructs
1548 #pragma pack(4)
1549 #endif
1550 typedef struct {
1551 mach_msg_header_t Head;
1552 NDR_record_t NDR;
1553 kern_return_t RetCode;
1554 } __Reply__mach_ports_register_t;
1555 #ifdef __MigPackStructs
1556 #pragma pack()
1557 #endif
1558
1559 #ifdef __MigPackStructs
1560 #pragma pack(4)
1561 #endif
1562 typedef struct {
1563 mach_msg_header_t Head;
1564 /* start of the kernel processed data */
1565 mach_msg_body_t msgh_body;
1566 mach_msg_ool_ports_descriptor_t init_port_set;
1567 /* end of the kernel processed data */
1568 NDR_record_t NDR;
1569 mach_msg_type_number_t init_port_setCnt;
1570 } __Reply__mach_ports_lookup_t;
1571 #ifdef __MigPackStructs
1572 #pragma pack()
1573 #endif
1574
1575 #ifdef __MigPackStructs
1576 #pragma pack(4)
1577 #endif
1578 typedef struct {
1579 mach_msg_header_t Head;
1580 NDR_record_t NDR;
1581 kern_return_t RetCode;
1582 mach_msg_type_number_t task_info_outCnt;
1583 integer_t task_info_out[52];
1584 } __Reply__task_info_t;
1585 #ifdef __MigPackStructs
1586 #pragma pack()
1587 #endif
1588
1589 #ifdef __MigPackStructs
1590 #pragma pack(4)
1591 #endif
1592 typedef struct {
1593 mach_msg_header_t Head;
1594 NDR_record_t NDR;
1595 kern_return_t RetCode;
1596 } __Reply__task_set_info_t;
1597 #ifdef __MigPackStructs
1598 #pragma pack()
1599 #endif
1600
1601 #ifdef __MigPackStructs
1602 #pragma pack(4)
1603 #endif
1604 typedef struct {
1605 mach_msg_header_t Head;
1606 NDR_record_t NDR;
1607 kern_return_t RetCode;
1608 } __Reply__task_suspend_t;
1609 #ifdef __MigPackStructs
1610 #pragma pack()
1611 #endif
1612
1613 #ifdef __MigPackStructs
1614 #pragma pack(4)
1615 #endif
1616 typedef struct {
1617 mach_msg_header_t Head;
1618 NDR_record_t NDR;
1619 kern_return_t RetCode;
1620 } __Reply__task_resume_t;
1621 #ifdef __MigPackStructs
1622 #pragma pack()
1623 #endif
1624
1625 #ifdef __MigPackStructs
1626 #pragma pack(4)
1627 #endif
1628 typedef struct {
1629 mach_msg_header_t Head;
1630 /* start of the kernel processed data */
1631 mach_msg_body_t msgh_body;
1632 mach_msg_port_descriptor_t special_port;
1633 /* end of the kernel processed data */
1634 } __Reply__task_get_special_port_t;
1635 #ifdef __MigPackStructs
1636 #pragma pack()
1637 #endif
1638
1639 #ifdef __MigPackStructs
1640 #pragma pack(4)
1641 #endif
1642 typedef struct {
1643 mach_msg_header_t Head;
1644 NDR_record_t NDR;
1645 kern_return_t RetCode;
1646 } __Reply__task_set_special_port_t;
1647 #ifdef __MigPackStructs
1648 #pragma pack()
1649 #endif
1650
1651 #ifdef __MigPackStructs
1652 #pragma pack(4)
1653 #endif
1654 typedef struct {
1655 mach_msg_header_t Head;
1656 /* start of the kernel processed data */
1657 mach_msg_body_t msgh_body;
1658 mach_msg_port_descriptor_t child_act;
1659 /* end of the kernel processed data */
1660 } __Reply__thread_create_t;
1661 #ifdef __MigPackStructs
1662 #pragma pack()
1663 #endif
1664
1665 #ifdef __MigPackStructs
1666 #pragma pack(4)
1667 #endif
1668 typedef struct {
1669 mach_msg_header_t Head;
1670 /* start of the kernel processed data */
1671 mach_msg_body_t msgh_body;
1672 mach_msg_port_descriptor_t child_act;
1673 /* end of the kernel processed data */
1674 } __Reply__thread_create_running_t;
1675 #ifdef __MigPackStructs
1676 #pragma pack()
1677 #endif
1678
1679 #ifdef __MigPackStructs
1680 #pragma pack(4)
1681 #endif
1682 typedef struct {
1683 mach_msg_header_t Head;
1684 NDR_record_t NDR;
1685 kern_return_t RetCode;
1686 } __Reply__task_set_exception_ports_t;
1687 #ifdef __MigPackStructs
1688 #pragma pack()
1689 #endif
1690
1691 #ifdef __MigPackStructs
1692 #pragma pack(4)
1693 #endif
1694 typedef struct {
1695 mach_msg_header_t Head;
1696 /* start of the kernel processed data */
1697 mach_msg_body_t msgh_body;
1698 mach_msg_port_descriptor_t old_handlers[32];
1699 /* end of the kernel processed data */
1700 NDR_record_t NDR;
1701 mach_msg_type_number_t masksCnt;
1702 exception_mask_t masks[32];
1703 exception_behavior_t old_behaviors[32];
1704 thread_state_flavor_t old_flavors[32];
1705 } __Reply__task_get_exception_ports_t;
1706 #ifdef __MigPackStructs
1707 #pragma pack()
1708 #endif
1709
1710 #ifdef __MigPackStructs
1711 #pragma pack(4)
1712 #endif
1713 typedef struct {
1714 mach_msg_header_t Head;
1715 /* start of the kernel processed data */
1716 mach_msg_body_t msgh_body;
1717 mach_msg_port_descriptor_t old_handlerss[32];
1718 /* end of the kernel processed data */
1719 NDR_record_t NDR;
1720 mach_msg_type_number_t masksCnt;
1721 exception_mask_t masks[32];
1722 exception_behavior_t old_behaviors[32];
1723 thread_state_flavor_t old_flavors[32];
1724 } __Reply__task_swap_exception_ports_t;
1725 #ifdef __MigPackStructs
1726 #pragma pack()
1727 #endif
1728
1729 #ifdef __MigPackStructs
1730 #pragma pack(4)
1731 #endif
1732 typedef struct {
1733 mach_msg_header_t Head;
1734 /* start of the kernel processed data */
1735 mach_msg_body_t msgh_body;
1736 mach_msg_port_descriptor_t semaphore;
1737 /* end of the kernel processed data */
1738 } __Reply__semaphore_create_t;
1739 #ifdef __MigPackStructs
1740 #pragma pack()
1741 #endif
1742
1743 #ifdef __MigPackStructs
1744 #pragma pack(4)
1745 #endif
1746 typedef struct {
1747 mach_msg_header_t Head;
1748 NDR_record_t NDR;
1749 kern_return_t RetCode;
1750 } __Reply__semaphore_destroy_t;
1751 #ifdef __MigPackStructs
1752 #pragma pack()
1753 #endif
1754
1755 #ifdef __MigPackStructs
1756 #pragma pack(4)
1757 #endif
1758 typedef struct {
1759 mach_msg_header_t Head;
1760 NDR_record_t NDR;
1761 kern_return_t RetCode;
1762 } __Reply__task_policy_set_t;
1763 #ifdef __MigPackStructs
1764 #pragma pack()
1765 #endif
1766
1767 #ifdef __MigPackStructs
1768 #pragma pack(4)
1769 #endif
1770 typedef struct {
1771 mach_msg_header_t Head;
1772 NDR_record_t NDR;
1773 kern_return_t RetCode;
1774 mach_msg_type_number_t policy_infoCnt;
1775 integer_t policy_info[16];
1776 boolean_t get_default;
1777 } __Reply__task_policy_get_t;
1778 #ifdef __MigPackStructs
1779 #pragma pack()
1780 #endif
1781
1782 #ifdef __MigPackStructs
1783 #pragma pack(4)
1784 #endif
1785 typedef struct {
1786 mach_msg_header_t Head;
1787 NDR_record_t NDR;
1788 kern_return_t RetCode;
1789 } __Reply__task_sample_t;
1790 #ifdef __MigPackStructs
1791 #pragma pack()
1792 #endif
1793
1794 #ifdef __MigPackStructs
1795 #pragma pack(4)
1796 #endif
1797 typedef struct {
1798 mach_msg_header_t Head;
1799 NDR_record_t NDR;
1800 kern_return_t RetCode;
1801 } __Reply__task_policy_t;
1802 #ifdef __MigPackStructs
1803 #pragma pack()
1804 #endif
1805
1806 #ifdef __MigPackStructs
1807 #pragma pack(4)
1808 #endif
1809 typedef struct {
1810 mach_msg_header_t Head;
1811 NDR_record_t NDR;
1812 kern_return_t RetCode;
1813 } __Reply__task_set_ras_pc_t;
1814 #ifdef __MigPackStructs
1815 #pragma pack()
1816 #endif
1817
1818 #ifdef __MigPackStructs
1819 #pragma pack(4)
1820 #endif
1821 typedef struct {
1822 mach_msg_header_t Head;
1823 /* start of the kernel processed data */
1824 mach_msg_body_t msgh_body;
1825 mach_msg_ool_descriptor_t names;
1826 mach_msg_ool_descriptor_t info;
1827 /* end of the kernel processed data */
1828 NDR_record_t NDR;
1829 mach_msg_type_number_t namesCnt;
1830 mach_msg_type_number_t infoCnt;
1831 } __Reply__task_zone_info_t;
1832 #ifdef __MigPackStructs
1833 #pragma pack()
1834 #endif
1835
1836 #ifdef __MigPackStructs
1837 #pragma pack(4)
1838 #endif
1839 typedef struct {
1840 mach_msg_header_t Head;
1841 NDR_record_t NDR;
1842 kern_return_t RetCode;
1843 } __Reply__task_assign_t;
1844 #ifdef __MigPackStructs
1845 #pragma pack()
1846 #endif
1847
1848 #ifdef __MigPackStructs
1849 #pragma pack(4)
1850 #endif
1851 typedef struct {
1852 mach_msg_header_t Head;
1853 NDR_record_t NDR;
1854 kern_return_t RetCode;
1855 } __Reply__task_assign_default_t;
1856 #ifdef __MigPackStructs
1857 #pragma pack()
1858 #endif
1859
1860 #ifdef __MigPackStructs
1861 #pragma pack(4)
1862 #endif
1863 typedef struct {
1864 mach_msg_header_t Head;
1865 /* start of the kernel processed data */
1866 mach_msg_body_t msgh_body;
1867 mach_msg_port_descriptor_t assigned_set;
1868 /* end of the kernel processed data */
1869 } __Reply__task_get_assignment_t;
1870 #ifdef __MigPackStructs
1871 #pragma pack()
1872 #endif
1873
1874 #ifdef __MigPackStructs
1875 #pragma pack(4)
1876 #endif
1877 typedef struct {
1878 mach_msg_header_t Head;
1879 NDR_record_t NDR;
1880 kern_return_t RetCode;
1881 } __Reply__task_set_policy_t;
1882 #ifdef __MigPackStructs
1883 #pragma pack()
1884 #endif
1885
1886 #ifdef __MigPackStructs
1887 #pragma pack(4)
1888 #endif
1889 typedef struct {
1890 mach_msg_header_t Head;
1891 NDR_record_t NDR;
1892 kern_return_t RetCode;
1893 mach_msg_type_number_t old_stateCnt;
1894 natural_t old_state[32];
1895 } __Reply__task_get_state_t;
1896 #ifdef __MigPackStructs
1897 #pragma pack()
1898 #endif
1899
1900 #ifdef __MigPackStructs
1901 #pragma pack(4)
1902 #endif
1903 typedef struct {
1904 mach_msg_header_t Head;
1905 NDR_record_t NDR;
1906 kern_return_t RetCode;
1907 } __Reply__task_set_state_t;
1908 #ifdef __MigPackStructs
1909 #pragma pack()
1910 #endif
1911
1912 #ifdef __MigPackStructs
1913 #pragma pack(4)
1914 #endif
1915 typedef struct {
1916 mach_msg_header_t Head;
1917 NDR_record_t NDR;
1918 kern_return_t RetCode;
1919 int old_limit;
1920 } __Reply__task_set_phys_footprint_limit_t;
1921 #ifdef __MigPackStructs
1922 #pragma pack()
1923 #endif
1924
1925 #ifdef __MigPackStructs
1926 #pragma pack(4)
1927 #endif
1928 typedef struct {
1929 mach_msg_header_t Head;
1930 /* start of the kernel processed data */
1931 mach_msg_body_t msgh_body;
1932 mach_msg_port_descriptor_t suspend_token;
1933 /* end of the kernel processed data */
1934 } __Reply__task_suspend2_t;
1935 #ifdef __MigPackStructs
1936 #pragma pack()
1937 #endif
1938
1939 #ifdef __MigPackStructs
1940 #pragma pack(4)
1941 #endif
1942 typedef struct {
1943 mach_msg_header_t Head;
1944 NDR_record_t NDR;
1945 kern_return_t RetCode;
1946 } __Reply__task_resume2_t;
1947 #ifdef __MigPackStructs
1948 #pragma pack()
1949 #endif
1950
1951 #ifdef __MigPackStructs
1952 #pragma pack(4)
1953 #endif
1954 typedef struct {
1955 mach_msg_header_t Head;
1956 NDR_record_t NDR;
1957 kern_return_t RetCode;
1958 task_purgable_info_t stats;
1959 } __Reply__task_purgable_info_t;
1960 #ifdef __MigPackStructs
1961 #pragma pack()
1962 #endif
1963
1964 #ifdef __MigPackStructs
1965 #pragma pack(4)
1966 #endif
1967 typedef struct {
1968 mach_msg_header_t Head;
1969 /* start of the kernel processed data */
1970 mach_msg_body_t msgh_body;
1971 mach_msg_port_descriptor_t voucher;
1972 /* end of the kernel processed data */
1973 } __Reply__task_get_mach_voucher_t;
1974 #ifdef __MigPackStructs
1975 #pragma pack()
1976 #endif
1977
1978 #ifdef __MigPackStructs
1979 #pragma pack(4)
1980 #endif
1981 typedef struct {
1982 mach_msg_header_t Head;
1983 NDR_record_t NDR;
1984 kern_return_t RetCode;
1985 } __Reply__task_set_mach_voucher_t;
1986 #ifdef __MigPackStructs
1987 #pragma pack()
1988 #endif
1989
1990 #ifdef __MigPackStructs
1991 #pragma pack(4)
1992 #endif
1993 typedef struct {
1994 mach_msg_header_t Head;
1995 /* start of the kernel processed data */
1996 mach_msg_body_t msgh_body;
1997 mach_msg_port_descriptor_t old_voucher;
1998 /* end of the kernel processed data */
1999 } __Reply__task_swap_mach_voucher_t;
2000 #ifdef __MigPackStructs
2001 #pragma pack()
2002 #endif
2003 #endif /* !__Reply__task_subsystem__defined */
2004
2005 /* union of all replies */
2006
2007 #ifndef __ReplyUnion__task_subsystem__defined
2008 #define __ReplyUnion__task_subsystem__defined
2009 union __ReplyUnion__task_subsystem {
2010 __Reply__task_create_t Reply_task_create;
2011 __Reply__task_terminate_t Reply_task_terminate;
2012 __Reply__task_threads_t Reply_task_threads;
2013 __Reply__mach_ports_register_t Reply_mach_ports_register;
2014 __Reply__mach_ports_lookup_t Reply_mach_ports_lookup;
2015 __Reply__task_info_t Reply_task_info;
2016 __Reply__task_set_info_t Reply_task_set_info;
2017 __Reply__task_suspend_t Reply_task_suspend;
2018 __Reply__task_resume_t Reply_task_resume;
2019 __Reply__task_get_special_port_t Reply_task_get_special_port;
2020 __Reply__task_set_special_port_t Reply_task_set_special_port;
2021 __Reply__thread_create_t Reply_thread_create;
2022 __Reply__thread_create_running_t Reply_thread_create_running;
2023 __Reply__task_set_exception_ports_t Reply_task_set_exception_ports;
2024 __Reply__task_get_exception_ports_t Reply_task_get_exception_ports;
2025 __Reply__task_swap_exception_ports_t Reply_task_swap_exception_ports;
2026 __Reply__semaphore_create_t Reply_semaphore_create;
2027 __Reply__semaphore_destroy_t Reply_semaphore_destroy;
2028 __Reply__task_policy_set_t Reply_task_policy_set;
2029 __Reply__task_policy_get_t Reply_task_policy_get;
2030 __Reply__task_sample_t Reply_task_sample;
2031 __Reply__task_policy_t Reply_task_policy;
2032 __Reply__task_set_ras_pc_t Reply_task_set_ras_pc;
2033 __Reply__task_zone_info_t Reply_task_zone_info;
2034 __Reply__task_assign_t Reply_task_assign;
2035 __Reply__task_assign_default_t Reply_task_assign_default;
2036 __Reply__task_get_assignment_t Reply_task_get_assignment;
2037 __Reply__task_set_policy_t Reply_task_set_policy;
2038 __Reply__task_get_state_t Reply_task_get_state;
2039 __Reply__task_set_state_t Reply_task_set_state;
2040 __Reply__task_set_phys_footprint_limit_t Reply_task_set_phys_footprint_limit;
2041 __Reply__task_suspend2_t Reply_task_suspend2;
2042 __Reply__task_resume2_t Reply_task_resume2;
2043 __Reply__task_purgable_info_t Reply_task_purgable_info;
2044 __Reply__task_get_mach_voucher_t Reply_task_get_mach_voucher;
2045 __Reply__task_set_mach_voucher_t Reply_task_set_mach_voucher;
2046 __Reply__task_swap_mach_voucher_t Reply_task_swap_mach_voucher;
2047 };
2048 #endif /* !__RequestUnion__task_subsystem__defined */
2049
2050 #ifndef subsystem_to_name_map_task
2051 #define subsystem_to_name_map_task \
2052 { "task_create", 3400 },\
2053 { "task_terminate", 3401 },\
2054 { "task_threads", 3402 },\
2055 { "mach_ports_register", 3403 },\
2056 { "mach_ports_lookup", 3404 },\
2057 { "task_info", 3405 },\
2058 { "task_set_info", 3406 },\
2059 { "task_suspend", 3407 },\
2060 { "task_resume", 3408 },\
2061 { "task_get_special_port", 3409 },\
2062 { "task_set_special_port", 3410 },\
2063 { "thread_create", 3411 },\
2064 { "thread_create_running", 3412 },\
2065 { "task_set_exception_ports", 3413 },\
2066 { "task_get_exception_ports", 3414 },\
2067 { "task_swap_exception_ports", 3415 },\
2068 { "semaphore_create", 3418 },\
2069 { "semaphore_destroy", 3419 },\
2070 { "task_policy_set", 3420 },\
2071 { "task_policy_get", 3421 },\
2072 { "task_sample", 3422 },\
2073 { "task_policy", 3423 },\
2074 { "task_set_ras_pc", 3427 },\
2075 { "task_zone_info", 3428 },\
2076 { "task_assign", 3429 },\
2077 { "task_assign_default", 3430 },\
2078 { "task_get_assignment", 3431 },\
2079 { "task_set_policy", 3432 },\
2080 { "task_get_state", 3433 },\
2081 { "task_set_state", 3434 },\
2082 { "task_set_phys_footprint_limit", 3435 },\
2083 { "task_suspend2", 3436 },\
2084 { "task_resume2", 3437 },\
2085 { "task_purgable_info", 3438 },\
2086 { "task_get_mach_voucher", 3439 },\
2087 { "task_set_mach_voucher", 3440 },\
2088 { "task_swap_mach_voucher", 3441 }
2089 #endif
2090
2091 #ifdef __AfterMigUserHeader
2092 __AfterMigUserHeader
2093 #endif /* __AfterMigUserHeader */
2094
2095 #endif /* _task_user_ */
2096