1 | #ifndef _thread_act_user_ |
2 | #define _thread_act_user_ |
3 | |
4 | /* Module thread_act */ |
5 | |
6 | #include <string.h> |
7 | #include <mach/ndr.h> |
8 | #include <mach/boolean.h> |
9 | #include <mach/kern_return.h> |
10 | #include <mach/notify.h> |
11 | #include <mach/mach_types.h> |
12 | #include <mach/message.h> |
13 | #include <mach/mig_errors.h> |
14 | #include <mach/port.h> |
15 | |
16 | /* BEGIN MIG_STRNCPY_ZEROFILL CODE */ |
17 | |
18 | #if defined(__has_include) |
19 | #if __has_include(<mach/mig_strncpy_zerofill_support.h>) |
20 | #ifndef USING_MIG_STRNCPY_ZEROFILL |
21 | #define USING_MIG_STRNCPY_ZEROFILL |
22 | #endif |
23 | #ifndef __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS__ |
24 | #define __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS__ |
25 | #ifdef __cplusplus |
26 | extern "C" { |
27 | #endif |
28 | extern int mig_strncpy_zerofill(char *dest, const char *src, int len) __attribute__((weak_import)); |
29 | #ifdef __cplusplus |
30 | } |
31 | #endif |
32 | #endif /* __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS__ */ |
33 | #endif /* __has_include(<mach/mig_strncpy_zerofill_support.h>) */ |
34 | #endif /* __has_include */ |
35 | |
36 | /* END MIG_STRNCPY_ZEROFILL CODE */ |
37 | |
38 | |
39 | #ifdef AUTOTEST |
40 | #ifndef FUNCTION_PTR_T |
41 | #define FUNCTION_PTR_T |
42 | typedef void (*function_ptr_t)(mach_port_t, char *, mach_msg_type_number_t); |
43 | typedef struct { |
44 | char *name; |
45 | function_ptr_t function; |
46 | } function_table_entry; |
47 | typedef function_table_entry *function_table_t; |
48 | #endif /* FUNCTION_PTR_T */ |
49 | #endif /* AUTOTEST */ |
50 | |
51 | #ifndef thread_act_MSG_COUNT |
52 | #define thread_act_MSG_COUNT 28 |
53 | #endif /* thread_act_MSG_COUNT */ |
54 | |
55 | #include <mach/std_types.h> |
56 | #include <mach/mig.h> |
57 | #include <mach/mig.h> |
58 | #include <mach/mach_types.h> |
59 | |
60 | #ifdef __BeforeMigUserHeader |
61 | __BeforeMigUserHeader |
62 | #endif /* __BeforeMigUserHeader */ |
63 | |
64 | #include <sys/cdefs.h> |
65 | __BEGIN_DECLS |
66 | |
67 | |
68 | /* Routine thread_terminate */ |
69 | #ifdef mig_external |
70 | mig_external |
71 | #else |
72 | extern |
73 | #endif /* mig_external */ |
74 | kern_return_t thread_terminate |
75 | ( |
76 | thread_act_t target_act |
77 | ); |
78 | |
79 | /* Routine act_get_state */ |
80 | #ifdef mig_external |
81 | mig_external |
82 | #else |
83 | extern |
84 | #endif /* mig_external */ |
85 | kern_return_t act_get_state |
86 | ( |
87 | thread_act_t target_act, |
88 | int flavor, |
89 | thread_state_t old_state, |
90 | mach_msg_type_number_t *old_stateCnt |
91 | ); |
92 | |
93 | /* Routine act_set_state */ |
94 | #ifdef mig_external |
95 | mig_external |
96 | #else |
97 | extern |
98 | #endif /* mig_external */ |
99 | kern_return_t act_set_state |
100 | ( |
101 | thread_act_t target_act, |
102 | int flavor, |
103 | thread_state_t new_state, |
104 | mach_msg_type_number_t new_stateCnt |
105 | ); |
106 | |
107 | /* Routine thread_get_state */ |
108 | #ifdef mig_external |
109 | mig_external |
110 | #else |
111 | extern |
112 | #endif /* mig_external */ |
113 | kern_return_t thread_get_state |
114 | ( |
115 | thread_act_t target_act, |
116 | thread_state_flavor_t flavor, |
117 | thread_state_t old_state, |
118 | mach_msg_type_number_t *old_stateCnt |
119 | ); |
120 | |
121 | /* Routine thread_set_state */ |
122 | #ifdef mig_external |
123 | mig_external |
124 | #else |
125 | extern |
126 | #endif /* mig_external */ |
127 | kern_return_t thread_set_state |
128 | ( |
129 | thread_act_t target_act, |
130 | thread_state_flavor_t flavor, |
131 | thread_state_t new_state, |
132 | mach_msg_type_number_t new_stateCnt |
133 | ); |
134 | |
135 | /* Routine thread_suspend */ |
136 | #ifdef mig_external |
137 | mig_external |
138 | #else |
139 | extern |
140 | #endif /* mig_external */ |
141 | kern_return_t thread_suspend |
142 | ( |
143 | thread_act_t target_act |
144 | ); |
145 | |
146 | /* Routine thread_resume */ |
147 | #ifdef mig_external |
148 | mig_external |
149 | #else |
150 | extern |
151 | #endif /* mig_external */ |
152 | kern_return_t thread_resume |
153 | ( |
154 | thread_act_t target_act |
155 | ); |
156 | |
157 | /* Routine thread_abort */ |
158 | #ifdef mig_external |
159 | mig_external |
160 | #else |
161 | extern |
162 | #endif /* mig_external */ |
163 | kern_return_t thread_abort |
164 | ( |
165 | thread_act_t target_act |
166 | ); |
167 | |
168 | /* Routine thread_abort_safely */ |
169 | #ifdef mig_external |
170 | mig_external |
171 | #else |
172 | extern |
173 | #endif /* mig_external */ |
174 | kern_return_t thread_abort_safely |
175 | ( |
176 | thread_act_t target_act |
177 | ); |
178 | |
179 | /* Routine thread_depress_abort */ |
180 | #ifdef mig_external |
181 | mig_external |
182 | #else |
183 | extern |
184 | #endif /* mig_external */ |
185 | kern_return_t thread_depress_abort |
186 | ( |
187 | thread_act_t thread |
188 | ); |
189 | |
190 | /* Routine thread_get_special_port */ |
191 | #ifdef mig_external |
192 | mig_external |
193 | #else |
194 | extern |
195 | #endif /* mig_external */ |
196 | kern_return_t thread_get_special_port |
197 | ( |
198 | thread_act_t thr_act, |
199 | int which_port, |
200 | mach_port_t *special_port |
201 | ); |
202 | |
203 | /* Routine thread_set_special_port */ |
204 | #ifdef mig_external |
205 | mig_external |
206 | #else |
207 | extern |
208 | #endif /* mig_external */ |
209 | kern_return_t thread_set_special_port |
210 | ( |
211 | thread_act_t thr_act, |
212 | int which_port, |
213 | mach_port_t special_port |
214 | ); |
215 | |
216 | /* Routine thread_info */ |
217 | #ifdef mig_external |
218 | mig_external |
219 | #else |
220 | extern |
221 | #endif /* mig_external */ |
222 | kern_return_t thread_info |
223 | ( |
224 | thread_inspect_t target_act, |
225 | thread_flavor_t flavor, |
226 | thread_info_t thread_info_out, |
227 | mach_msg_type_number_t *thread_info_outCnt |
228 | ); |
229 | |
230 | /* Routine thread_set_exception_ports */ |
231 | #ifdef mig_external |
232 | mig_external |
233 | #else |
234 | extern |
235 | #endif /* mig_external */ |
236 | kern_return_t thread_set_exception_ports |
237 | ( |
238 | thread_act_t thread, |
239 | exception_mask_t exception_mask, |
240 | mach_port_t new_port, |
241 | exception_behavior_t behavior, |
242 | thread_state_flavor_t new_flavor |
243 | ); |
244 | |
245 | /* Routine thread_get_exception_ports */ |
246 | #ifdef mig_external |
247 | mig_external |
248 | #else |
249 | extern |
250 | #endif /* mig_external */ |
251 | kern_return_t thread_get_exception_ports |
252 | ( |
253 | thread_inspect_t thread, |
254 | exception_mask_t exception_mask, |
255 | exception_mask_array_t masks, |
256 | mach_msg_type_number_t *masksCnt, |
257 | exception_handler_array_t old_handlers, |
258 | exception_behavior_array_t old_behaviors, |
259 | exception_flavor_array_t old_flavors |
260 | ); |
261 | |
262 | /* Routine thread_swap_exception_ports */ |
263 | #ifdef mig_external |
264 | mig_external |
265 | #else |
266 | extern |
267 | #endif /* mig_external */ |
268 | kern_return_t thread_swap_exception_ports |
269 | ( |
270 | thread_act_t thread, |
271 | exception_mask_t exception_mask, |
272 | mach_port_t new_port, |
273 | exception_behavior_t behavior, |
274 | thread_state_flavor_t new_flavor, |
275 | exception_mask_array_t masks, |
276 | mach_msg_type_number_t *masksCnt, |
277 | exception_handler_array_t old_handlers, |
278 | exception_behavior_array_t old_behaviors, |
279 | exception_flavor_array_t old_flavors |
280 | ); |
281 | |
282 | /* Routine thread_policy */ |
283 | #ifdef mig_external |
284 | mig_external |
285 | #else |
286 | extern |
287 | #endif /* mig_external */ |
288 | kern_return_t thread_policy |
289 | ( |
290 | thread_act_t thr_act, |
291 | policy_t policy, |
292 | policy_base_t base, |
293 | mach_msg_type_number_t baseCnt, |
294 | boolean_t set_limit |
295 | ); |
296 | |
297 | /* Routine thread_policy_set */ |
298 | #ifdef mig_external |
299 | mig_external |
300 | #else |
301 | extern |
302 | #endif /* mig_external */ |
303 | kern_return_t thread_policy_set |
304 | ( |
305 | thread_act_t thread, |
306 | thread_policy_flavor_t flavor, |
307 | thread_policy_t policy_info, |
308 | mach_msg_type_number_t policy_infoCnt |
309 | ); |
310 | |
311 | /* Routine thread_policy_get */ |
312 | #ifdef mig_external |
313 | mig_external |
314 | #else |
315 | extern |
316 | #endif /* mig_external */ |
317 | kern_return_t thread_policy_get |
318 | ( |
319 | thread_inspect_t thread, |
320 | thread_policy_flavor_t flavor, |
321 | thread_policy_t policy_info, |
322 | mach_msg_type_number_t *policy_infoCnt, |
323 | boolean_t *get_default |
324 | ); |
325 | |
326 | /* Routine thread_sample */ |
327 | #ifdef mig_external |
328 | mig_external |
329 | #else |
330 | extern |
331 | #endif /* mig_external */ |
332 | kern_return_t thread_sample |
333 | ( |
334 | thread_act_t thread, |
335 | mach_port_t reply |
336 | ); |
337 | |
338 | /* Routine etap_trace_thread */ |
339 | #ifdef mig_external |
340 | mig_external |
341 | #else |
342 | extern |
343 | #endif /* mig_external */ |
344 | kern_return_t etap_trace_thread |
345 | ( |
346 | thread_act_t target_act, |
347 | boolean_t trace_status |
348 | ); |
349 | |
350 | /* Routine thread_assign */ |
351 | #ifdef mig_external |
352 | mig_external |
353 | #else |
354 | extern |
355 | #endif /* mig_external */ |
356 | kern_return_t thread_assign |
357 | ( |
358 | thread_act_t thread, |
359 | processor_set_t new_set |
360 | ); |
361 | |
362 | /* Routine thread_assign_default */ |
363 | #ifdef mig_external |
364 | mig_external |
365 | #else |
366 | extern |
367 | #endif /* mig_external */ |
368 | kern_return_t thread_assign_default |
369 | ( |
370 | thread_act_t thread |
371 | ); |
372 | |
373 | /* Routine thread_get_assignment */ |
374 | #ifdef mig_external |
375 | mig_external |
376 | #else |
377 | extern |
378 | #endif /* mig_external */ |
379 | kern_return_t thread_get_assignment |
380 | ( |
381 | thread_act_t thread, |
382 | processor_set_name_t *assigned_set |
383 | ); |
384 | |
385 | /* Routine thread_set_policy */ |
386 | #ifdef mig_external |
387 | mig_external |
388 | #else |
389 | extern |
390 | #endif /* mig_external */ |
391 | kern_return_t thread_set_policy |
392 | ( |
393 | thread_act_t thr_act, |
394 | processor_set_t pset, |
395 | policy_t policy, |
396 | policy_base_t base, |
397 | mach_msg_type_number_t baseCnt, |
398 | policy_limit_t limit, |
399 | mach_msg_type_number_t limitCnt |
400 | ); |
401 | |
402 | /* Routine thread_get_mach_voucher */ |
403 | #ifdef mig_external |
404 | mig_external |
405 | #else |
406 | extern |
407 | #endif /* mig_external */ |
408 | kern_return_t thread_get_mach_voucher |
409 | ( |
410 | thread_act_t thr_act, |
411 | mach_voucher_selector_t which, |
412 | ipc_voucher_t *voucher |
413 | ); |
414 | |
415 | /* Routine thread_set_mach_voucher */ |
416 | #ifdef mig_external |
417 | mig_external |
418 | #else |
419 | extern |
420 | #endif /* mig_external */ |
421 | kern_return_t thread_set_mach_voucher |
422 | ( |
423 | thread_act_t thr_act, |
424 | ipc_voucher_t voucher |
425 | ); |
426 | |
427 | /* Routine thread_swap_mach_voucher */ |
428 | #ifdef mig_external |
429 | mig_external |
430 | #else |
431 | extern |
432 | #endif /* mig_external */ |
433 | kern_return_t thread_swap_mach_voucher |
434 | ( |
435 | thread_act_t thr_act, |
436 | ipc_voucher_t new_voucher, |
437 | ipc_voucher_t *old_voucher |
438 | ); |
439 | |
440 | __END_DECLS |
441 | |
442 | /********************** Caution **************************/ |
443 | /* The following data types should be used to calculate */ |
444 | /* maximum message sizes only. The actual message may be */ |
445 | /* smaller, and the position of the arguments within the */ |
446 | /* message layout may vary from what is presented here. */ |
447 | /* For example, if any of the arguments are variable- */ |
448 | /* sized, and less than the maximum is sent, the data */ |
449 | /* will be packed tight in the actual message to reduce */ |
450 | /* the presence of holes. */ |
451 | /********************** Caution **************************/ |
452 | |
453 | /* typedefs for all requests */ |
454 | |
455 | #ifndef __Request__thread_act_subsystem__defined |
456 | #define __Request__thread_act_subsystem__defined |
457 | |
458 | #ifdef __MigPackStructs |
459 | #pragma pack(4) |
460 | #endif |
461 | typedef struct { |
462 | mach_msg_header_t Head; |
463 | } __Request__thread_terminate_t __attribute__((unused)); |
464 | #ifdef __MigPackStructs |
465 | #pragma pack() |
466 | #endif |
467 | |
468 | #ifdef __MigPackStructs |
469 | #pragma pack(4) |
470 | #endif |
471 | typedef struct { |
472 | mach_msg_header_t Head; |
473 | NDR_record_t NDR; |
474 | int flavor; |
475 | mach_msg_type_number_t old_stateCnt; |
476 | } __Request__act_get_state_t __attribute__((unused)); |
477 | #ifdef __MigPackStructs |
478 | #pragma pack() |
479 | #endif |
480 | |
481 | #ifdef __MigPackStructs |
482 | #pragma pack(4) |
483 | #endif |
484 | typedef struct { |
485 | mach_msg_header_t Head; |
486 | NDR_record_t NDR; |
487 | int flavor; |
488 | mach_msg_type_number_t new_stateCnt; |
489 | natural_t new_state[614]; |
490 | } __Request__act_set_state_t __attribute__((unused)); |
491 | #ifdef __MigPackStructs |
492 | #pragma pack() |
493 | #endif |
494 | |
495 | #ifdef __MigPackStructs |
496 | #pragma pack(4) |
497 | #endif |
498 | typedef struct { |
499 | mach_msg_header_t Head; |
500 | NDR_record_t NDR; |
501 | thread_state_flavor_t flavor; |
502 | mach_msg_type_number_t old_stateCnt; |
503 | } __Request__thread_get_state_t __attribute__((unused)); |
504 | #ifdef __MigPackStructs |
505 | #pragma pack() |
506 | #endif |
507 | |
508 | #ifdef __MigPackStructs |
509 | #pragma pack(4) |
510 | #endif |
511 | typedef struct { |
512 | mach_msg_header_t Head; |
513 | NDR_record_t NDR; |
514 | thread_state_flavor_t flavor; |
515 | mach_msg_type_number_t new_stateCnt; |
516 | natural_t new_state[614]; |
517 | } __Request__thread_set_state_t __attribute__((unused)); |
518 | #ifdef __MigPackStructs |
519 | #pragma pack() |
520 | #endif |
521 | |
522 | #ifdef __MigPackStructs |
523 | #pragma pack(4) |
524 | #endif |
525 | typedef struct { |
526 | mach_msg_header_t Head; |
527 | } __Request__thread_suspend_t __attribute__((unused)); |
528 | #ifdef __MigPackStructs |
529 | #pragma pack() |
530 | #endif |
531 | |
532 | #ifdef __MigPackStructs |
533 | #pragma pack(4) |
534 | #endif |
535 | typedef struct { |
536 | mach_msg_header_t Head; |
537 | } __Request__thread_resume_t __attribute__((unused)); |
538 | #ifdef __MigPackStructs |
539 | #pragma pack() |
540 | #endif |
541 | |
542 | #ifdef __MigPackStructs |
543 | #pragma pack(4) |
544 | #endif |
545 | typedef struct { |
546 | mach_msg_header_t Head; |
547 | } __Request__thread_abort_t __attribute__((unused)); |
548 | #ifdef __MigPackStructs |
549 | #pragma pack() |
550 | #endif |
551 | |
552 | #ifdef __MigPackStructs |
553 | #pragma pack(4) |
554 | #endif |
555 | typedef struct { |
556 | mach_msg_header_t Head; |
557 | } __Request__thread_abort_safely_t __attribute__((unused)); |
558 | #ifdef __MigPackStructs |
559 | #pragma pack() |
560 | #endif |
561 | |
562 | #ifdef __MigPackStructs |
563 | #pragma pack(4) |
564 | #endif |
565 | typedef struct { |
566 | mach_msg_header_t Head; |
567 | } __Request__thread_depress_abort_t __attribute__((unused)); |
568 | #ifdef __MigPackStructs |
569 | #pragma pack() |
570 | #endif |
571 | |
572 | #ifdef __MigPackStructs |
573 | #pragma pack(4) |
574 | #endif |
575 | typedef struct { |
576 | mach_msg_header_t Head; |
577 | NDR_record_t NDR; |
578 | int which_port; |
579 | } __Request__thread_get_special_port_t __attribute__((unused)); |
580 | #ifdef __MigPackStructs |
581 | #pragma pack() |
582 | #endif |
583 | |
584 | #ifdef __MigPackStructs |
585 | #pragma pack(4) |
586 | #endif |
587 | typedef struct { |
588 | mach_msg_header_t Head; |
589 | /* start of the kernel processed data */ |
590 | mach_msg_body_t msgh_body; |
591 | mach_msg_port_descriptor_t special_port; |
592 | /* end of the kernel processed data */ |
593 | NDR_record_t NDR; |
594 | int which_port; |
595 | } __Request__thread_set_special_port_t __attribute__((unused)); |
596 | #ifdef __MigPackStructs |
597 | #pragma pack() |
598 | #endif |
599 | |
600 | #ifdef __MigPackStructs |
601 | #pragma pack(4) |
602 | #endif |
603 | typedef struct { |
604 | mach_msg_header_t Head; |
605 | NDR_record_t NDR; |
606 | thread_flavor_t flavor; |
607 | mach_msg_type_number_t thread_info_outCnt; |
608 | } __Request__thread_info_t __attribute__((unused)); |
609 | #ifdef __MigPackStructs |
610 | #pragma pack() |
611 | #endif |
612 | |
613 | #ifdef __MigPackStructs |
614 | #pragma pack(4) |
615 | #endif |
616 | typedef struct { |
617 | mach_msg_header_t Head; |
618 | /* start of the kernel processed data */ |
619 | mach_msg_body_t msgh_body; |
620 | mach_msg_port_descriptor_t new_port; |
621 | /* end of the kernel processed data */ |
622 | NDR_record_t NDR; |
623 | exception_mask_t exception_mask; |
624 | exception_behavior_t behavior; |
625 | thread_state_flavor_t new_flavor; |
626 | } __Request__thread_set_exception_ports_t __attribute__((unused)); |
627 | #ifdef __MigPackStructs |
628 | #pragma pack() |
629 | #endif |
630 | |
631 | #ifdef __MigPackStructs |
632 | #pragma pack(4) |
633 | #endif |
634 | typedef struct { |
635 | mach_msg_header_t Head; |
636 | NDR_record_t NDR; |
637 | exception_mask_t exception_mask; |
638 | } __Request__thread_get_exception_ports_t __attribute__((unused)); |
639 | #ifdef __MigPackStructs |
640 | #pragma pack() |
641 | #endif |
642 | |
643 | #ifdef __MigPackStructs |
644 | #pragma pack(4) |
645 | #endif |
646 | typedef struct { |
647 | mach_msg_header_t Head; |
648 | /* start of the kernel processed data */ |
649 | mach_msg_body_t msgh_body; |
650 | mach_msg_port_descriptor_t new_port; |
651 | /* end of the kernel processed data */ |
652 | NDR_record_t NDR; |
653 | exception_mask_t exception_mask; |
654 | exception_behavior_t behavior; |
655 | thread_state_flavor_t new_flavor; |
656 | } __Request__thread_swap_exception_ports_t __attribute__((unused)); |
657 | #ifdef __MigPackStructs |
658 | #pragma pack() |
659 | #endif |
660 | |
661 | #ifdef __MigPackStructs |
662 | #pragma pack(4) |
663 | #endif |
664 | typedef struct { |
665 | mach_msg_header_t Head; |
666 | NDR_record_t NDR; |
667 | policy_t policy; |
668 | mach_msg_type_number_t baseCnt; |
669 | integer_t base[5]; |
670 | boolean_t set_limit; |
671 | } __Request__thread_policy_t __attribute__((unused)); |
672 | #ifdef __MigPackStructs |
673 | #pragma pack() |
674 | #endif |
675 | |
676 | #ifdef __MigPackStructs |
677 | #pragma pack(4) |
678 | #endif |
679 | typedef struct { |
680 | mach_msg_header_t Head; |
681 | NDR_record_t NDR; |
682 | thread_policy_flavor_t flavor; |
683 | mach_msg_type_number_t policy_infoCnt; |
684 | integer_t policy_info[16]; |
685 | } __Request__thread_policy_set_t __attribute__((unused)); |
686 | #ifdef __MigPackStructs |
687 | #pragma pack() |
688 | #endif |
689 | |
690 | #ifdef __MigPackStructs |
691 | #pragma pack(4) |
692 | #endif |
693 | typedef struct { |
694 | mach_msg_header_t Head; |
695 | NDR_record_t NDR; |
696 | thread_policy_flavor_t flavor; |
697 | mach_msg_type_number_t policy_infoCnt; |
698 | boolean_t get_default; |
699 | } __Request__thread_policy_get_t __attribute__((unused)); |
700 | #ifdef __MigPackStructs |
701 | #pragma pack() |
702 | #endif |
703 | |
704 | #ifdef __MigPackStructs |
705 | #pragma pack(4) |
706 | #endif |
707 | typedef struct { |
708 | mach_msg_header_t Head; |
709 | /* start of the kernel processed data */ |
710 | mach_msg_body_t msgh_body; |
711 | mach_msg_port_descriptor_t reply; |
712 | /* end of the kernel processed data */ |
713 | } __Request__thread_sample_t __attribute__((unused)); |
714 | #ifdef __MigPackStructs |
715 | #pragma pack() |
716 | #endif |
717 | |
718 | #ifdef __MigPackStructs |
719 | #pragma pack(4) |
720 | #endif |
721 | typedef struct { |
722 | mach_msg_header_t Head; |
723 | NDR_record_t NDR; |
724 | boolean_t trace_status; |
725 | } __Request__etap_trace_thread_t __attribute__((unused)); |
726 | #ifdef __MigPackStructs |
727 | #pragma pack() |
728 | #endif |
729 | |
730 | #ifdef __MigPackStructs |
731 | #pragma pack(4) |
732 | #endif |
733 | typedef struct { |
734 | mach_msg_header_t Head; |
735 | /* start of the kernel processed data */ |
736 | mach_msg_body_t msgh_body; |
737 | mach_msg_port_descriptor_t new_set; |
738 | /* end of the kernel processed data */ |
739 | } __Request__thread_assign_t __attribute__((unused)); |
740 | #ifdef __MigPackStructs |
741 | #pragma pack() |
742 | #endif |
743 | |
744 | #ifdef __MigPackStructs |
745 | #pragma pack(4) |
746 | #endif |
747 | typedef struct { |
748 | mach_msg_header_t Head; |
749 | } __Request__thread_assign_default_t __attribute__((unused)); |
750 | #ifdef __MigPackStructs |
751 | #pragma pack() |
752 | #endif |
753 | |
754 | #ifdef __MigPackStructs |
755 | #pragma pack(4) |
756 | #endif |
757 | typedef struct { |
758 | mach_msg_header_t Head; |
759 | } __Request__thread_get_assignment_t __attribute__((unused)); |
760 | #ifdef __MigPackStructs |
761 | #pragma pack() |
762 | #endif |
763 | |
764 | #ifdef __MigPackStructs |
765 | #pragma pack(4) |
766 | #endif |
767 | typedef struct { |
768 | mach_msg_header_t Head; |
769 | /* start of the kernel processed data */ |
770 | mach_msg_body_t msgh_body; |
771 | mach_msg_port_descriptor_t pset; |
772 | /* end of the kernel processed data */ |
773 | NDR_record_t NDR; |
774 | policy_t policy; |
775 | mach_msg_type_number_t baseCnt; |
776 | integer_t base[5]; |
777 | mach_msg_type_number_t limitCnt; |
778 | integer_t limit[1]; |
779 | } __Request__thread_set_policy_t __attribute__((unused)); |
780 | #ifdef __MigPackStructs |
781 | #pragma pack() |
782 | #endif |
783 | |
784 | #ifdef __MigPackStructs |
785 | #pragma pack(4) |
786 | #endif |
787 | typedef struct { |
788 | mach_msg_header_t Head; |
789 | NDR_record_t NDR; |
790 | mach_voucher_selector_t which; |
791 | } __Request__thread_get_mach_voucher_t __attribute__((unused)); |
792 | #ifdef __MigPackStructs |
793 | #pragma pack() |
794 | #endif |
795 | |
796 | #ifdef __MigPackStructs |
797 | #pragma pack(4) |
798 | #endif |
799 | typedef struct { |
800 | mach_msg_header_t Head; |
801 | /* start of the kernel processed data */ |
802 | mach_msg_body_t msgh_body; |
803 | mach_msg_port_descriptor_t voucher; |
804 | /* end of the kernel processed data */ |
805 | } __Request__thread_set_mach_voucher_t __attribute__((unused)); |
806 | #ifdef __MigPackStructs |
807 | #pragma pack() |
808 | #endif |
809 | |
810 | #ifdef __MigPackStructs |
811 | #pragma pack(4) |
812 | #endif |
813 | typedef struct { |
814 | mach_msg_header_t Head; |
815 | /* start of the kernel processed data */ |
816 | mach_msg_body_t msgh_body; |
817 | mach_msg_port_descriptor_t new_voucher; |
818 | mach_msg_port_descriptor_t old_voucher; |
819 | /* end of the kernel processed data */ |
820 | } __Request__thread_swap_mach_voucher_t __attribute__((unused)); |
821 | #ifdef __MigPackStructs |
822 | #pragma pack() |
823 | #endif |
824 | #endif /* !__Request__thread_act_subsystem__defined */ |
825 | |
826 | /* union of all requests */ |
827 | |
828 | #ifndef __RequestUnion__thread_act_subsystem__defined |
829 | #define __RequestUnion__thread_act_subsystem__defined |
830 | union __RequestUnion__thread_act_subsystem { |
831 | __Request__thread_terminate_t Request_thread_terminate; |
832 | __Request__act_get_state_t Request_act_get_state; |
833 | __Request__act_set_state_t Request_act_set_state; |
834 | __Request__thread_get_state_t Request_thread_get_state; |
835 | __Request__thread_set_state_t Request_thread_set_state; |
836 | __Request__thread_suspend_t Request_thread_suspend; |
837 | __Request__thread_resume_t Request_thread_resume; |
838 | __Request__thread_abort_t Request_thread_abort; |
839 | __Request__thread_abort_safely_t Request_thread_abort_safely; |
840 | __Request__thread_depress_abort_t Request_thread_depress_abort; |
841 | __Request__thread_get_special_port_t Request_thread_get_special_port; |
842 | __Request__thread_set_special_port_t Request_thread_set_special_port; |
843 | __Request__thread_info_t Request_thread_info; |
844 | __Request__thread_set_exception_ports_t Request_thread_set_exception_ports; |
845 | __Request__thread_get_exception_ports_t Request_thread_get_exception_ports; |
846 | __Request__thread_swap_exception_ports_t Request_thread_swap_exception_ports; |
847 | __Request__thread_policy_t Request_thread_policy; |
848 | __Request__thread_policy_set_t Request_thread_policy_set; |
849 | __Request__thread_policy_get_t Request_thread_policy_get; |
850 | __Request__thread_sample_t Request_thread_sample; |
851 | __Request__etap_trace_thread_t Request_etap_trace_thread; |
852 | __Request__thread_assign_t Request_thread_assign; |
853 | __Request__thread_assign_default_t Request_thread_assign_default; |
854 | __Request__thread_get_assignment_t Request_thread_get_assignment; |
855 | __Request__thread_set_policy_t Request_thread_set_policy; |
856 | __Request__thread_get_mach_voucher_t Request_thread_get_mach_voucher; |
857 | __Request__thread_set_mach_voucher_t Request_thread_set_mach_voucher; |
858 | __Request__thread_swap_mach_voucher_t Request_thread_swap_mach_voucher; |
859 | }; |
860 | #endif /* !__RequestUnion__thread_act_subsystem__defined */ |
861 | /* typedefs for all replies */ |
862 | |
863 | #ifndef __Reply__thread_act_subsystem__defined |
864 | #define __Reply__thread_act_subsystem__defined |
865 | |
866 | #ifdef __MigPackStructs |
867 | #pragma pack(4) |
868 | #endif |
869 | typedef struct { |
870 | mach_msg_header_t Head; |
871 | NDR_record_t NDR; |
872 | kern_return_t RetCode; |
873 | } __Reply__thread_terminate_t __attribute__((unused)); |
874 | #ifdef __MigPackStructs |
875 | #pragma pack() |
876 | #endif |
877 | |
878 | #ifdef __MigPackStructs |
879 | #pragma pack(4) |
880 | #endif |
881 | typedef struct { |
882 | mach_msg_header_t Head; |
883 | NDR_record_t NDR; |
884 | kern_return_t RetCode; |
885 | mach_msg_type_number_t old_stateCnt; |
886 | natural_t old_state[614]; |
887 | } __Reply__act_get_state_t __attribute__((unused)); |
888 | #ifdef __MigPackStructs |
889 | #pragma pack() |
890 | #endif |
891 | |
892 | #ifdef __MigPackStructs |
893 | #pragma pack(4) |
894 | #endif |
895 | typedef struct { |
896 | mach_msg_header_t Head; |
897 | NDR_record_t NDR; |
898 | kern_return_t RetCode; |
899 | } __Reply__act_set_state_t __attribute__((unused)); |
900 | #ifdef __MigPackStructs |
901 | #pragma pack() |
902 | #endif |
903 | |
904 | #ifdef __MigPackStructs |
905 | #pragma pack(4) |
906 | #endif |
907 | typedef struct { |
908 | mach_msg_header_t Head; |
909 | NDR_record_t NDR; |
910 | kern_return_t RetCode; |
911 | mach_msg_type_number_t old_stateCnt; |
912 | natural_t old_state[614]; |
913 | } __Reply__thread_get_state_t __attribute__((unused)); |
914 | #ifdef __MigPackStructs |
915 | #pragma pack() |
916 | #endif |
917 | |
918 | #ifdef __MigPackStructs |
919 | #pragma pack(4) |
920 | #endif |
921 | typedef struct { |
922 | mach_msg_header_t Head; |
923 | NDR_record_t NDR; |
924 | kern_return_t RetCode; |
925 | } __Reply__thread_set_state_t __attribute__((unused)); |
926 | #ifdef __MigPackStructs |
927 | #pragma pack() |
928 | #endif |
929 | |
930 | #ifdef __MigPackStructs |
931 | #pragma pack(4) |
932 | #endif |
933 | typedef struct { |
934 | mach_msg_header_t Head; |
935 | NDR_record_t NDR; |
936 | kern_return_t RetCode; |
937 | } __Reply__thread_suspend_t __attribute__((unused)); |
938 | #ifdef __MigPackStructs |
939 | #pragma pack() |
940 | #endif |
941 | |
942 | #ifdef __MigPackStructs |
943 | #pragma pack(4) |
944 | #endif |
945 | typedef struct { |
946 | mach_msg_header_t Head; |
947 | NDR_record_t NDR; |
948 | kern_return_t RetCode; |
949 | } __Reply__thread_resume_t __attribute__((unused)); |
950 | #ifdef __MigPackStructs |
951 | #pragma pack() |
952 | #endif |
953 | |
954 | #ifdef __MigPackStructs |
955 | #pragma pack(4) |
956 | #endif |
957 | typedef struct { |
958 | mach_msg_header_t Head; |
959 | NDR_record_t NDR; |
960 | kern_return_t RetCode; |
961 | } __Reply__thread_abort_t __attribute__((unused)); |
962 | #ifdef __MigPackStructs |
963 | #pragma pack() |
964 | #endif |
965 | |
966 | #ifdef __MigPackStructs |
967 | #pragma pack(4) |
968 | #endif |
969 | typedef struct { |
970 | mach_msg_header_t Head; |
971 | NDR_record_t NDR; |
972 | kern_return_t RetCode; |
973 | } __Reply__thread_abort_safely_t __attribute__((unused)); |
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 | NDR_record_t NDR; |
984 | kern_return_t RetCode; |
985 | } __Reply__thread_depress_abort_t __attribute__((unused)); |
986 | #ifdef __MigPackStructs |
987 | #pragma pack() |
988 | #endif |
989 | |
990 | #ifdef __MigPackStructs |
991 | #pragma pack(4) |
992 | #endif |
993 | typedef struct { |
994 | mach_msg_header_t Head; |
995 | /* start of the kernel processed data */ |
996 | mach_msg_body_t msgh_body; |
997 | mach_msg_port_descriptor_t special_port; |
998 | /* end of the kernel processed data */ |
999 | } __Reply__thread_get_special_port_t __attribute__((unused)); |
1000 | #ifdef __MigPackStructs |
1001 | #pragma pack() |
1002 | #endif |
1003 | |
1004 | #ifdef __MigPackStructs |
1005 | #pragma pack(4) |
1006 | #endif |
1007 | typedef struct { |
1008 | mach_msg_header_t Head; |
1009 | NDR_record_t NDR; |
1010 | kern_return_t RetCode; |
1011 | } __Reply__thread_set_special_port_t __attribute__((unused)); |
1012 | #ifdef __MigPackStructs |
1013 | #pragma pack() |
1014 | #endif |
1015 | |
1016 | #ifdef __MigPackStructs |
1017 | #pragma pack(4) |
1018 | #endif |
1019 | typedef struct { |
1020 | mach_msg_header_t Head; |
1021 | NDR_record_t NDR; |
1022 | kern_return_t RetCode; |
1023 | mach_msg_type_number_t thread_info_outCnt; |
1024 | integer_t thread_info_out[32]; |
1025 | } __Reply__thread_info_t __attribute__((unused)); |
1026 | #ifdef __MigPackStructs |
1027 | #pragma pack() |
1028 | #endif |
1029 | |
1030 | #ifdef __MigPackStructs |
1031 | #pragma pack(4) |
1032 | #endif |
1033 | typedef struct { |
1034 | mach_msg_header_t Head; |
1035 | NDR_record_t NDR; |
1036 | kern_return_t RetCode; |
1037 | } __Reply__thread_set_exception_ports_t __attribute__((unused)); |
1038 | #ifdef __MigPackStructs |
1039 | #pragma pack() |
1040 | #endif |
1041 | |
1042 | #ifdef __MigPackStructs |
1043 | #pragma pack(4) |
1044 | #endif |
1045 | typedef struct { |
1046 | mach_msg_header_t Head; |
1047 | /* start of the kernel processed data */ |
1048 | mach_msg_body_t msgh_body; |
1049 | mach_msg_port_descriptor_t old_handlers[32]; |
1050 | /* end of the kernel processed data */ |
1051 | NDR_record_t NDR; |
1052 | mach_msg_type_number_t masksCnt; |
1053 | exception_mask_t masks[32]; |
1054 | exception_behavior_t old_behaviors[32]; |
1055 | thread_state_flavor_t old_flavors[32]; |
1056 | } __Reply__thread_get_exception_ports_t __attribute__((unused)); |
1057 | #ifdef __MigPackStructs |
1058 | #pragma pack() |
1059 | #endif |
1060 | |
1061 | #ifdef __MigPackStructs |
1062 | #pragma pack(4) |
1063 | #endif |
1064 | typedef struct { |
1065 | mach_msg_header_t Head; |
1066 | /* start of the kernel processed data */ |
1067 | mach_msg_body_t msgh_body; |
1068 | mach_msg_port_descriptor_t old_handlers[32]; |
1069 | /* end of the kernel processed data */ |
1070 | NDR_record_t NDR; |
1071 | mach_msg_type_number_t masksCnt; |
1072 | exception_mask_t masks[32]; |
1073 | exception_behavior_t old_behaviors[32]; |
1074 | thread_state_flavor_t old_flavors[32]; |
1075 | } __Reply__thread_swap_exception_ports_t __attribute__((unused)); |
1076 | #ifdef __MigPackStructs |
1077 | #pragma pack() |
1078 | #endif |
1079 | |
1080 | #ifdef __MigPackStructs |
1081 | #pragma pack(4) |
1082 | #endif |
1083 | typedef struct { |
1084 | mach_msg_header_t Head; |
1085 | NDR_record_t NDR; |
1086 | kern_return_t RetCode; |
1087 | } __Reply__thread_policy_t __attribute__((unused)); |
1088 | #ifdef __MigPackStructs |
1089 | #pragma pack() |
1090 | #endif |
1091 | |
1092 | #ifdef __MigPackStructs |
1093 | #pragma pack(4) |
1094 | #endif |
1095 | typedef struct { |
1096 | mach_msg_header_t Head; |
1097 | NDR_record_t NDR; |
1098 | kern_return_t RetCode; |
1099 | } __Reply__thread_policy_set_t __attribute__((unused)); |
1100 | #ifdef __MigPackStructs |
1101 | #pragma pack() |
1102 | #endif |
1103 | |
1104 | #ifdef __MigPackStructs |
1105 | #pragma pack(4) |
1106 | #endif |
1107 | typedef struct { |
1108 | mach_msg_header_t Head; |
1109 | NDR_record_t NDR; |
1110 | kern_return_t RetCode; |
1111 | mach_msg_type_number_t policy_infoCnt; |
1112 | integer_t policy_info[16]; |
1113 | boolean_t get_default; |
1114 | } __Reply__thread_policy_get_t __attribute__((unused)); |
1115 | #ifdef __MigPackStructs |
1116 | #pragma pack() |
1117 | #endif |
1118 | |
1119 | #ifdef __MigPackStructs |
1120 | #pragma pack(4) |
1121 | #endif |
1122 | typedef struct { |
1123 | mach_msg_header_t Head; |
1124 | NDR_record_t NDR; |
1125 | kern_return_t RetCode; |
1126 | } __Reply__thread_sample_t __attribute__((unused)); |
1127 | #ifdef __MigPackStructs |
1128 | #pragma pack() |
1129 | #endif |
1130 | |
1131 | #ifdef __MigPackStructs |
1132 | #pragma pack(4) |
1133 | #endif |
1134 | typedef struct { |
1135 | mach_msg_header_t Head; |
1136 | NDR_record_t NDR; |
1137 | kern_return_t RetCode; |
1138 | } __Reply__etap_trace_thread_t __attribute__((unused)); |
1139 | #ifdef __MigPackStructs |
1140 | #pragma pack() |
1141 | #endif |
1142 | |
1143 | #ifdef __MigPackStructs |
1144 | #pragma pack(4) |
1145 | #endif |
1146 | typedef struct { |
1147 | mach_msg_header_t Head; |
1148 | NDR_record_t NDR; |
1149 | kern_return_t RetCode; |
1150 | } __Reply__thread_assign_t __attribute__((unused)); |
1151 | #ifdef __MigPackStructs |
1152 | #pragma pack() |
1153 | #endif |
1154 | |
1155 | #ifdef __MigPackStructs |
1156 | #pragma pack(4) |
1157 | #endif |
1158 | typedef struct { |
1159 | mach_msg_header_t Head; |
1160 | NDR_record_t NDR; |
1161 | kern_return_t RetCode; |
1162 | } __Reply__thread_assign_default_t __attribute__((unused)); |
1163 | #ifdef __MigPackStructs |
1164 | #pragma pack() |
1165 | #endif |
1166 | |
1167 | #ifdef __MigPackStructs |
1168 | #pragma pack(4) |
1169 | #endif |
1170 | typedef struct { |
1171 | mach_msg_header_t Head; |
1172 | /* start of the kernel processed data */ |
1173 | mach_msg_body_t msgh_body; |
1174 | mach_msg_port_descriptor_t assigned_set; |
1175 | /* end of the kernel processed data */ |
1176 | } __Reply__thread_get_assignment_t __attribute__((unused)); |
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 | NDR_record_t NDR; |
1187 | kern_return_t RetCode; |
1188 | } __Reply__thread_set_policy_t __attribute__((unused)); |
1189 | #ifdef __MigPackStructs |
1190 | #pragma pack() |
1191 | #endif |
1192 | |
1193 | #ifdef __MigPackStructs |
1194 | #pragma pack(4) |
1195 | #endif |
1196 | typedef struct { |
1197 | mach_msg_header_t Head; |
1198 | /* start of the kernel processed data */ |
1199 | mach_msg_body_t msgh_body; |
1200 | mach_msg_port_descriptor_t voucher; |
1201 | /* end of the kernel processed data */ |
1202 | } __Reply__thread_get_mach_voucher_t __attribute__((unused)); |
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 | NDR_record_t NDR; |
1213 | kern_return_t RetCode; |
1214 | } __Reply__thread_set_mach_voucher_t __attribute__((unused)); |
1215 | #ifdef __MigPackStructs |
1216 | #pragma pack() |
1217 | #endif |
1218 | |
1219 | #ifdef __MigPackStructs |
1220 | #pragma pack(4) |
1221 | #endif |
1222 | typedef struct { |
1223 | mach_msg_header_t Head; |
1224 | /* start of the kernel processed data */ |
1225 | mach_msg_body_t msgh_body; |
1226 | mach_msg_port_descriptor_t old_voucher; |
1227 | /* end of the kernel processed data */ |
1228 | } __Reply__thread_swap_mach_voucher_t __attribute__((unused)); |
1229 | #ifdef __MigPackStructs |
1230 | #pragma pack() |
1231 | #endif |
1232 | #endif /* !__Reply__thread_act_subsystem__defined */ |
1233 | |
1234 | /* union of all replies */ |
1235 | |
1236 | #ifndef __ReplyUnion__thread_act_subsystem__defined |
1237 | #define __ReplyUnion__thread_act_subsystem__defined |
1238 | union __ReplyUnion__thread_act_subsystem { |
1239 | __Reply__thread_terminate_t Reply_thread_terminate; |
1240 | __Reply__act_get_state_t Reply_act_get_state; |
1241 | __Reply__act_set_state_t Reply_act_set_state; |
1242 | __Reply__thread_get_state_t Reply_thread_get_state; |
1243 | __Reply__thread_set_state_t Reply_thread_set_state; |
1244 | __Reply__thread_suspend_t Reply_thread_suspend; |
1245 | __Reply__thread_resume_t Reply_thread_resume; |
1246 | __Reply__thread_abort_t Reply_thread_abort; |
1247 | __Reply__thread_abort_safely_t Reply_thread_abort_safely; |
1248 | __Reply__thread_depress_abort_t Reply_thread_depress_abort; |
1249 | __Reply__thread_get_special_port_t Reply_thread_get_special_port; |
1250 | __Reply__thread_set_special_port_t Reply_thread_set_special_port; |
1251 | __Reply__thread_info_t Reply_thread_info; |
1252 | __Reply__thread_set_exception_ports_t Reply_thread_set_exception_ports; |
1253 | __Reply__thread_get_exception_ports_t Reply_thread_get_exception_ports; |
1254 | __Reply__thread_swap_exception_ports_t Reply_thread_swap_exception_ports; |
1255 | __Reply__thread_policy_t Reply_thread_policy; |
1256 | __Reply__thread_policy_set_t Reply_thread_policy_set; |
1257 | __Reply__thread_policy_get_t Reply_thread_policy_get; |
1258 | __Reply__thread_sample_t Reply_thread_sample; |
1259 | __Reply__etap_trace_thread_t Reply_etap_trace_thread; |
1260 | __Reply__thread_assign_t Reply_thread_assign; |
1261 | __Reply__thread_assign_default_t Reply_thread_assign_default; |
1262 | __Reply__thread_get_assignment_t Reply_thread_get_assignment; |
1263 | __Reply__thread_set_policy_t Reply_thread_set_policy; |
1264 | __Reply__thread_get_mach_voucher_t Reply_thread_get_mach_voucher; |
1265 | __Reply__thread_set_mach_voucher_t Reply_thread_set_mach_voucher; |
1266 | __Reply__thread_swap_mach_voucher_t Reply_thread_swap_mach_voucher; |
1267 | }; |
1268 | #endif /* !__RequestUnion__thread_act_subsystem__defined */ |
1269 | |
1270 | #ifndef subsystem_to_name_map_thread_act |
1271 | #define subsystem_to_name_map_thread_act \ |
1272 | { "thread_terminate", 3600 },\ |
1273 | { "act_get_state", 3601 },\ |
1274 | { "act_set_state", 3602 },\ |
1275 | { "thread_get_state", 3603 },\ |
1276 | { "thread_set_state", 3604 },\ |
1277 | { "thread_suspend", 3605 },\ |
1278 | { "thread_resume", 3606 },\ |
1279 | { "thread_abort", 3607 },\ |
1280 | { "thread_abort_safely", 3608 },\ |
1281 | { "thread_depress_abort", 3609 },\ |
1282 | { "thread_get_special_port", 3610 },\ |
1283 | { "thread_set_special_port", 3611 },\ |
1284 | { "thread_info", 3612 },\ |
1285 | { "thread_set_exception_ports", 3613 },\ |
1286 | { "thread_get_exception_ports", 3614 },\ |
1287 | { "thread_swap_exception_ports", 3615 },\ |
1288 | { "thread_policy", 3616 },\ |
1289 | { "thread_policy_set", 3617 },\ |
1290 | { "thread_policy_get", 3618 },\ |
1291 | { "thread_sample", 3619 },\ |
1292 | { "etap_trace_thread", 3620 },\ |
1293 | { "thread_assign", 3621 },\ |
1294 | { "thread_assign_default", 3622 },\ |
1295 | { "thread_get_assignment", 3623 },\ |
1296 | { "thread_set_policy", 3624 },\ |
1297 | { "thread_get_mach_voucher", 3625 },\ |
1298 | { "thread_set_mach_voucher", 3626 },\ |
1299 | { "thread_swap_mach_voucher", 3627 } |
1300 | #endif |
1301 | |
1302 | #ifdef __AfterMigUserHeader |
1303 | __AfterMigUserHeader |
1304 | #endif /* __AfterMigUserHeader */ |
1305 | |
1306 | #endif /* _thread_act_user_ */ |
1307 | |