Chameleon

Chameleon Svn Source Tree

Root/trunk/i386/include/mach/ppc/task.h

1#ifndef_task_user_
2#define_task_user_
3
4/* Module task */
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#ifdef AUTOTEST
17#ifndef FUNCTION_PTR_T
18#define FUNCTION_PTR_T
19typedef void (*function_ptr_t)(mach_port_t, char *, mach_msg_type_number_t);
20typedef struct {
21 char *name;
22 function_ptr_t function;
23} function_table_entry;
24typedef function_table_entry *function_table_t;
25#endif /* FUNCTION_PTR_T */
26#endif /* AUTOTEST */
27
28#ifndeftask_MSG_COUNT
29#definetask_MSG_COUNT35
30#endif/* task_MSG_COUNT */
31
32#include <mach/std_types.h>
33#include <mach/mig.h>
34#include <mach/mig.h>
35#include <mach/mach_types.h>
36
37#ifdef __BeforeMigUserHeader
38__BeforeMigUserHeader
39#endif /* __BeforeMigUserHeader */
40
41#include <sys/cdefs.h>
42__BEGIN_DECLS
43
44
45/* Routine task_create */
46#ifdefmig_external
47mig_external
48#else
49extern
50#endif/* mig_external */
51kern_return_t task_create
52(
53task_t target_task,
54ledger_array_t ledgers,
55mach_msg_type_number_t ledgersCnt,
56boolean_t inherit_memory,
57task_t *child_task
58);
59
60/* Routine task_terminate */
61#ifdefmig_external
62mig_external
63#else
64extern
65#endif/* mig_external */
66kern_return_t task_terminate
67(
68task_t target_task
69);
70
71/* Routine task_threads */
72#ifdefmig_external
73mig_external
74#else
75extern
76#endif/* mig_external */
77kern_return_t task_threads
78(
79task_t target_task,
80thread_act_array_t *act_list,
81mach_msg_type_number_t *act_listCnt
82);
83
84/* Routine mach_ports_register */
85#ifdefmig_external
86mig_external
87#else
88extern
89#endif/* mig_external */
90kern_return_t mach_ports_register
91(
92task_t target_task,
93mach_port_array_t init_port_set,
94mach_msg_type_number_t init_port_setCnt
95);
96
97/* Routine mach_ports_lookup */
98#ifdefmig_external
99mig_external
100#else
101extern
102#endif/* mig_external */
103kern_return_t mach_ports_lookup
104(
105task_t target_task,
106mach_port_array_t *init_port_set,
107mach_msg_type_number_t *init_port_setCnt
108);
109
110/* Routine task_info */
111#ifdefmig_external
112mig_external
113#else
114extern
115#endif/* mig_external */
116kern_return_t task_info
117(
118task_name_t target_task,
119task_flavor_t flavor,
120task_info_t task_info_out,
121mach_msg_type_number_t *task_info_outCnt
122);
123
124/* Routine task_set_info */
125#ifdefmig_external
126mig_external
127#else
128extern
129#endif/* mig_external */
130kern_return_t task_set_info
131(
132task_t target_task,
133task_flavor_t flavor,
134task_info_t task_info_in,
135mach_msg_type_number_t task_info_inCnt
136);
137
138/* Routine task_suspend */
139#ifdefmig_external
140mig_external
141#else
142extern
143#endif/* mig_external */
144kern_return_t task_suspend
145(
146task_t target_task
147);
148
149/* Routine task_resume */
150#ifdefmig_external
151mig_external
152#else
153extern
154#endif/* mig_external */
155kern_return_t task_resume
156(
157task_t target_task
158);
159
160/* Routine task_get_special_port */
161#ifdefmig_external
162mig_external
163#else
164extern
165#endif/* mig_external */
166kern_return_t task_get_special_port
167(
168task_t task,
169int which_port,
170mach_port_t *special_port
171);
172
173/* Routine task_set_special_port */
174#ifdefmig_external
175mig_external
176#else
177extern
178#endif/* mig_external */
179kern_return_t task_set_special_port
180(
181task_t task,
182int which_port,
183mach_port_t special_port
184);
185
186/* Routine thread_create */
187#ifdefmig_external
188mig_external
189#else
190extern
191#endif/* mig_external */
192kern_return_t thread_create
193(
194task_t parent_task,
195thread_act_t *child_act
196);
197
198/* Routine thread_create_running */
199#ifdefmig_external
200mig_external
201#else
202extern
203#endif/* mig_external */
204kern_return_t thread_create_running
205(
206task_t parent_task,
207thread_state_flavor_t flavor,
208thread_state_t new_state,
209mach_msg_type_number_t new_stateCnt,
210thread_act_t *child_act
211);
212
213/* Routine task_set_exception_ports */
214#ifdefmig_external
215mig_external
216#else
217extern
218#endif/* mig_external */
219kern_return_t task_set_exception_ports
220(
221task_t task,
222exception_mask_t exception_mask,
223mach_port_t new_port,
224exception_behavior_t behavior,
225thread_state_flavor_t new_flavor
226);
227
228/* Routine task_get_exception_ports */
229#ifdefmig_external
230mig_external
231#else
232extern
233#endif/* mig_external */
234kern_return_t task_get_exception_ports
235(
236task_t task,
237exception_mask_t exception_mask,
238exception_mask_array_t masks,
239mach_msg_type_number_t *masksCnt,
240exception_handler_array_t old_handlers,
241exception_behavior_array_t old_behaviors,
242exception_flavor_array_t old_flavors
243);
244
245/* Routine task_swap_exception_ports */
246#ifdefmig_external
247mig_external
248#else
249extern
250#endif/* mig_external */
251kern_return_t task_swap_exception_ports
252(
253task_t task,
254exception_mask_t exception_mask,
255mach_port_t new_port,
256exception_behavior_t behavior,
257thread_state_flavor_t new_flavor,
258exception_mask_array_t masks,
259mach_msg_type_number_t *masksCnt,
260exception_handler_array_t old_handlerss,
261exception_behavior_array_t old_behaviors,
262exception_flavor_array_t old_flavors
263);
264
265/* Routine lock_set_create */
266#ifdefmig_external
267mig_external
268#else
269extern
270#endif/* mig_external */
271kern_return_t lock_set_create
272(
273task_t task,
274lock_set_t *new_lock_set,
275int n_ulocks,
276int policy
277);
278
279/* Routine lock_set_destroy */
280#ifdefmig_external
281mig_external
282#else
283extern
284#endif/* mig_external */
285kern_return_t lock_set_destroy
286(
287task_t task,
288lock_set_t lock_set
289);
290
291/* Routine semaphore_create */
292#ifdefmig_external
293mig_external
294#else
295extern
296#endif/* mig_external */
297kern_return_t semaphore_create
298(
299task_t task,
300semaphore_t *semaphore,
301int policy,
302int value
303);
304
305/* Routine semaphore_destroy */
306#ifdefmig_external
307mig_external
308#else
309extern
310#endif/* mig_external */
311kern_return_t semaphore_destroy
312(
313task_t task,
314semaphore_t semaphore
315);
316
317/* Routine task_policy_set */
318#ifdefmig_external
319mig_external
320#else
321extern
322#endif/* mig_external */
323kern_return_t task_policy_set
324(
325task_t task,
326task_policy_flavor_t flavor,
327task_policy_t policy_info,
328mach_msg_type_number_t policy_infoCnt
329);
330
331/* Routine task_policy_get */
332#ifdefmig_external
333mig_external
334#else
335extern
336#endif/* mig_external */
337kern_return_t task_policy_get
338(
339task_t task,
340task_policy_flavor_t flavor,
341task_policy_t policy_info,
342mach_msg_type_number_t *policy_infoCnt,
343boolean_t *get_default
344);
345
346/* Routine task_sample */
347#ifdefmig_external
348mig_external
349#else
350extern
351#endif/* mig_external */
352kern_return_t task_sample
353(
354task_t task,
355mach_port_t reply
356);
357
358/* Routine task_policy */
359#ifdefmig_external
360mig_external
361#else
362extern
363#endif/* mig_external */
364kern_return_t task_policy
365(
366task_t task,
367policy_t policy,
368policy_base_t base,
369mach_msg_type_number_t baseCnt,
370boolean_t set_limit,
371boolean_t change
372);
373
374/* Routine task_set_emulation */
375#ifdefmig_external
376mig_external
377#else
378extern
379#endif/* mig_external */
380kern_return_t task_set_emulation
381(
382task_t target_port,
383vm_address_t routine_entry_pt,
384int routine_number
385);
386
387/* Routine task_get_emulation_vector */
388#ifdefmig_external
389mig_external
390#else
391extern
392#endif/* mig_external */
393kern_return_t task_get_emulation_vector
394(
395task_t task,
396int *vector_start,
397emulation_vector_t *emulation_vector,
398mach_msg_type_number_t *emulation_vectorCnt
399);
400
401/* Routine task_set_emulation_vector */
402#ifdefmig_external
403mig_external
404#else
405extern
406#endif/* mig_external */
407kern_return_t task_set_emulation_vector
408(
409task_t task,
410int vector_start,
411emulation_vector_t emulation_vector,
412mach_msg_type_number_t emulation_vectorCnt
413);
414
415/* Routine task_set_ras_pc */
416#ifdefmig_external
417mig_external
418#else
419extern
420#endif/* mig_external */
421kern_return_t task_set_ras_pc
422(
423task_t target_task,
424vm_address_t basepc,
425vm_address_t boundspc
426);
427
428/* Routine task_assign */
429#ifdefmig_external
430mig_external
431#else
432extern
433#endif/* mig_external */
434kern_return_t task_assign
435(
436task_t task,
437processor_set_t new_set,
438boolean_t assign_threads
439);
440
441/* Routine task_assign_default */
442#ifdefmig_external
443mig_external
444#else
445extern
446#endif/* mig_external */
447kern_return_t task_assign_default
448(
449task_t task,
450boolean_t assign_threads
451);
452
453/* Routine task_get_assignment */
454#ifdefmig_external
455mig_external
456#else
457extern
458#endif/* mig_external */
459kern_return_t task_get_assignment
460(
461task_t task,
462processor_set_name_t *assigned_set
463);
464
465/* Routine task_set_policy */
466#ifdefmig_external
467mig_external
468#else
469extern
470#endif/* mig_external */
471kern_return_t task_set_policy
472(
473task_t task,
474processor_set_t pset,
475policy_t policy,
476policy_base_t base,
477mach_msg_type_number_t baseCnt,
478policy_limit_t limit,
479mach_msg_type_number_t limitCnt,
480boolean_t change
481);
482
483/* Routine task_get_state */
484#ifdefmig_external
485mig_external
486#else
487extern
488#endif/* mig_external */
489kern_return_t task_get_state
490(
491task_t task,
492thread_state_flavor_t flavor,
493thread_state_t old_state,
494mach_msg_type_number_t *old_stateCnt
495);
496
497/* Routine task_set_state */
498#ifdefmig_external
499mig_external
500#else
501extern
502#endif/* mig_external */
503kern_return_t task_set_state
504(
505task_t task,
506thread_state_flavor_t flavor,
507thread_state_t new_state,
508mach_msg_type_number_t new_stateCnt
509);
510
511__END_DECLS
512
513/********************** Caution **************************/
514/* The following data types should be used to calculate */
515/* maximum message sizes only. The actual message may be */
516/* smaller, and the position of the arguments within the */
517/* message layout may vary from what is presented here. */
518/* For example, if any of the arguments are variable- */
519/* sized, and less than the maximum is sent, the data */
520/* will be packed tight in the actual message to reduce */
521/* the presence of holes. */
522/********************** Caution **************************/
523
524/* typedefs for all requests */
525
526#ifndef __Request__task_subsystem__defined
527#define __Request__task_subsystem__defined
528
529#ifdef __MigPackStructs
530#pragma pack(4)
531#endif
532typedef struct {
533mach_msg_header_t Head;
534/* start of the kernel processed data */
535mach_msg_body_t msgh_body;
536mach_msg_ool_ports_descriptor_t ledgers;
537/* end of the kernel processed data */
538NDR_record_t NDR;
539mach_msg_type_number_t ledgersCnt;
540boolean_t inherit_memory;
541} __Request__task_create_t;
542#ifdef __MigPackStructs
543#pragma pack()
544#endif
545
546#ifdef __MigPackStructs
547#pragma pack(4)
548#endif
549typedef struct {
550mach_msg_header_t Head;
551} __Request__task_terminate_t;
552#ifdef __MigPackStructs
553#pragma pack()
554#endif
555
556#ifdef __MigPackStructs
557#pragma pack(4)
558#endif
559typedef struct {
560mach_msg_header_t Head;
561} __Request__task_threads_t;
562#ifdef __MigPackStructs
563#pragma pack()
564#endif
565
566#ifdef __MigPackStructs
567#pragma pack(4)
568#endif
569typedef struct {
570mach_msg_header_t Head;
571/* start of the kernel processed data */
572mach_msg_body_t msgh_body;
573mach_msg_ool_ports_descriptor_t init_port_set;
574/* end of the kernel processed data */
575NDR_record_t NDR;
576mach_msg_type_number_t init_port_setCnt;
577} __Request__mach_ports_register_t;
578#ifdef __MigPackStructs
579#pragma pack()
580#endif
581
582#ifdef __MigPackStructs
583#pragma pack(4)
584#endif
585typedef struct {
586mach_msg_header_t Head;
587} __Request__mach_ports_lookup_t;
588#ifdef __MigPackStructs
589#pragma pack()
590#endif
591
592#ifdef __MigPackStructs
593#pragma pack(4)
594#endif
595typedef struct {
596mach_msg_header_t Head;
597NDR_record_t NDR;
598task_flavor_t flavor;
599mach_msg_type_number_t task_info_outCnt;
600} __Request__task_info_t;
601#ifdef __MigPackStructs
602#pragma pack()
603#endif
604
605#ifdef __MigPackStructs
606#pragma pack(4)
607#endif
608typedef struct {
609mach_msg_header_t Head;
610NDR_record_t NDR;
611task_flavor_t flavor;
612mach_msg_type_number_t task_info_inCnt;
613integer_t task_info_in[10];
614} __Request__task_set_info_t;
615#ifdef __MigPackStructs
616#pragma pack()
617#endif
618
619#ifdef __MigPackStructs
620#pragma pack(4)
621#endif
622typedef struct {
623mach_msg_header_t Head;
624} __Request__task_suspend_t;
625#ifdef __MigPackStructs
626#pragma pack()
627#endif
628
629#ifdef __MigPackStructs
630#pragma pack(4)
631#endif
632typedef struct {
633mach_msg_header_t Head;
634} __Request__task_resume_t;
635#ifdef __MigPackStructs
636#pragma pack()
637#endif
638
639#ifdef __MigPackStructs
640#pragma pack(4)
641#endif
642typedef struct {
643mach_msg_header_t Head;
644NDR_record_t NDR;
645int which_port;
646} __Request__task_get_special_port_t;
647#ifdef __MigPackStructs
648#pragma pack()
649#endif
650
651#ifdef __MigPackStructs
652#pragma pack(4)
653#endif
654typedef struct {
655mach_msg_header_t Head;
656/* start of the kernel processed data */
657mach_msg_body_t msgh_body;
658mach_msg_port_descriptor_t special_port;
659/* end of the kernel processed data */
660NDR_record_t NDR;
661int which_port;
662} __Request__task_set_special_port_t;
663#ifdef __MigPackStructs
664#pragma pack()
665#endif
666
667#ifdef __MigPackStructs
668#pragma pack(4)
669#endif
670typedef struct {
671mach_msg_header_t Head;
672} __Request__thread_create_t;
673#ifdef __MigPackStructs
674#pragma pack()
675#endif
676
677#ifdef __MigPackStructs
678#pragma pack(4)
679#endif
680typedef struct {
681mach_msg_header_t Head;
682NDR_record_t NDR;
683thread_state_flavor_t flavor;
684mach_msg_type_number_t new_stateCnt;
685natural_t new_state[144];
686} __Request__thread_create_running_t;
687#ifdef __MigPackStructs
688#pragma pack()
689#endif
690
691#ifdef __MigPackStructs
692#pragma pack(4)
693#endif
694typedef struct {
695mach_msg_header_t Head;
696/* start of the kernel processed data */
697mach_msg_body_t msgh_body;
698mach_msg_port_descriptor_t new_port;
699/* end of the kernel processed data */
700NDR_record_t NDR;
701exception_mask_t exception_mask;
702exception_behavior_t behavior;
703thread_state_flavor_t new_flavor;
704} __Request__task_set_exception_ports_t;
705#ifdef __MigPackStructs
706#pragma pack()
707#endif
708
709#ifdef __MigPackStructs
710#pragma pack(4)
711#endif
712typedef struct {
713mach_msg_header_t Head;
714NDR_record_t NDR;
715exception_mask_t exception_mask;
716} __Request__task_get_exception_ports_t;
717#ifdef __MigPackStructs
718#pragma pack()
719#endif
720
721#ifdef __MigPackStructs
722#pragma pack(4)
723#endif
724typedef struct {
725mach_msg_header_t Head;
726/* start of the kernel processed data */
727mach_msg_body_t msgh_body;
728mach_msg_port_descriptor_t new_port;
729/* end of the kernel processed data */
730NDR_record_t NDR;
731exception_mask_t exception_mask;
732exception_behavior_t behavior;
733thread_state_flavor_t new_flavor;
734} __Request__task_swap_exception_ports_t;
735#ifdef __MigPackStructs
736#pragma pack()
737#endif
738
739#ifdef __MigPackStructs
740#pragma pack(4)
741#endif
742typedef struct {
743mach_msg_header_t Head;
744NDR_record_t NDR;
745int n_ulocks;
746int policy;
747} __Request__lock_set_create_t;
748#ifdef __MigPackStructs
749#pragma pack()
750#endif
751
752#ifdef __MigPackStructs
753#pragma pack(4)
754#endif
755typedef struct {
756mach_msg_header_t Head;
757/* start of the kernel processed data */
758mach_msg_body_t msgh_body;
759mach_msg_port_descriptor_t lock_set;
760/* end of the kernel processed data */
761} __Request__lock_set_destroy_t;
762#ifdef __MigPackStructs
763#pragma pack()
764#endif
765
766#ifdef __MigPackStructs
767#pragma pack(4)
768#endif
769typedef struct {
770mach_msg_header_t Head;
771NDR_record_t NDR;
772int policy;
773int value;
774} __Request__semaphore_create_t;
775#ifdef __MigPackStructs
776#pragma pack()
777#endif
778
779#ifdef __MigPackStructs
780#pragma pack(4)
781#endif
782typedef struct {
783mach_msg_header_t Head;
784/* start of the kernel processed data */
785mach_msg_body_t msgh_body;
786mach_msg_port_descriptor_t semaphore;
787/* end of the kernel processed data */
788} __Request__semaphore_destroy_t;
789#ifdef __MigPackStructs
790#pragma pack()
791#endif
792
793#ifdef __MigPackStructs
794#pragma pack(4)
795#endif
796typedef struct {
797mach_msg_header_t Head;
798NDR_record_t NDR;
799task_policy_flavor_t flavor;
800mach_msg_type_number_t policy_infoCnt;
801integer_t policy_info[16];
802} __Request__task_policy_set_t;
803#ifdef __MigPackStructs
804#pragma pack()
805#endif
806
807#ifdef __MigPackStructs
808#pragma pack(4)
809#endif
810typedef struct {
811mach_msg_header_t Head;
812NDR_record_t NDR;
813task_policy_flavor_t flavor;
814mach_msg_type_number_t policy_infoCnt;
815boolean_t get_default;
816} __Request__task_policy_get_t;
817#ifdef __MigPackStructs
818#pragma pack()
819#endif
820
821#ifdef __MigPackStructs
822#pragma pack(4)
823#endif
824typedef struct {
825mach_msg_header_t Head;
826/* start of the kernel processed data */
827mach_msg_body_t msgh_body;
828mach_msg_port_descriptor_t reply;
829/* end of the kernel processed data */
830} __Request__task_sample_t;
831#ifdef __MigPackStructs
832#pragma pack()
833#endif
834
835#ifdef __MigPackStructs
836#pragma pack(4)
837#endif
838typedef struct {
839mach_msg_header_t Head;
840NDR_record_t NDR;
841policy_t policy;
842mach_msg_type_number_t baseCnt;
843integer_t base[5];
844boolean_t set_limit;
845boolean_t change;
846} __Request__task_policy_t;
847#ifdef __MigPackStructs
848#pragma pack()
849#endif
850
851#ifdef __MigPackStructs
852#pragma pack(4)
853#endif
854typedef struct {
855mach_msg_header_t Head;
856NDR_record_t NDR;
857vm_address_t routine_entry_pt;
858int routine_number;
859} __Request__task_set_emulation_t;
860#ifdef __MigPackStructs
861#pragma pack()
862#endif
863
864#ifdef __MigPackStructs
865#pragma pack(4)
866#endif
867typedef struct {
868mach_msg_header_t Head;
869} __Request__task_get_emulation_vector_t;
870#ifdef __MigPackStructs
871#pragma pack()
872#endif
873
874#ifdef __MigPackStructs
875#pragma pack(4)
876#endif
877typedef struct {
878mach_msg_header_t Head;
879/* start of the kernel processed data */
880mach_msg_body_t msgh_body;
881mach_msg_ool_descriptor_t emulation_vector;
882/* end of the kernel processed data */
883NDR_record_t NDR;
884int vector_start;
885mach_msg_type_number_t emulation_vectorCnt;
886} __Request__task_set_emulation_vector_t;
887#ifdef __MigPackStructs
888#pragma pack()
889#endif
890
891#ifdef __MigPackStructs
892#pragma pack(4)
893#endif
894typedef struct {
895mach_msg_header_t Head;
896NDR_record_t NDR;
897vm_address_t basepc;
898vm_address_t boundspc;
899} __Request__task_set_ras_pc_t;
900#ifdef __MigPackStructs
901#pragma pack()
902#endif
903
904#ifdef __MigPackStructs
905#pragma pack(4)
906#endif
907typedef struct {
908mach_msg_header_t Head;
909/* start of the kernel processed data */
910mach_msg_body_t msgh_body;
911mach_msg_port_descriptor_t new_set;
912/* end of the kernel processed data */
913NDR_record_t NDR;
914boolean_t assign_threads;
915} __Request__task_assign_t;
916#ifdef __MigPackStructs
917#pragma pack()
918#endif
919
920#ifdef __MigPackStructs
921#pragma pack(4)
922#endif
923typedef struct {
924mach_msg_header_t Head;
925NDR_record_t NDR;
926boolean_t assign_threads;
927} __Request__task_assign_default_t;
928#ifdef __MigPackStructs
929#pragma pack()
930#endif
931
932#ifdef __MigPackStructs
933#pragma pack(4)
934#endif
935typedef struct {
936mach_msg_header_t Head;
937} __Request__task_get_assignment_t;
938#ifdef __MigPackStructs
939#pragma pack()
940#endif
941
942#ifdef __MigPackStructs
943#pragma pack(4)
944#endif
945typedef struct {
946mach_msg_header_t Head;
947/* start of the kernel processed data */
948mach_msg_body_t msgh_body;
949mach_msg_port_descriptor_t pset;
950/* end of the kernel processed data */
951NDR_record_t NDR;
952policy_t policy;
953mach_msg_type_number_t baseCnt;
954integer_t base[5];
955mach_msg_type_number_t limitCnt;
956integer_t limit[1];
957boolean_t change;
958} __Request__task_set_policy_t;
959#ifdef __MigPackStructs
960#pragma pack()
961#endif
962
963#ifdef __MigPackStructs
964#pragma pack(4)
965#endif
966typedef struct {
967mach_msg_header_t Head;
968NDR_record_t NDR;
969thread_state_flavor_t flavor;
970mach_msg_type_number_t old_stateCnt;
971} __Request__task_get_state_t;
972#ifdef __MigPackStructs
973#pragma pack()
974#endif
975
976#ifdef __MigPackStructs
977#pragma pack(4)
978#endif
979typedef struct {
980mach_msg_header_t Head;
981NDR_record_t NDR;
982thread_state_flavor_t flavor;
983mach_msg_type_number_t new_stateCnt;
984natural_t new_state[144];
985} __Request__task_set_state_t;
986#ifdef __MigPackStructs
987#pragma pack()
988#endif
989#endif /* !__Request__task_subsystem__defined */
990
991/* union of all requests */
992
993#ifndef __RequestUnion__task_subsystem__defined
994#define __RequestUnion__task_subsystem__defined
995union __RequestUnion__task_subsystem {
996__Request__task_create_t Request_task_create;
997__Request__task_terminate_t Request_task_terminate;
998__Request__task_threads_t Request_task_threads;
999__Request__mach_ports_register_t Request_mach_ports_register;
1000__Request__mach_ports_lookup_t Request_mach_ports_lookup;
1001__Request__task_info_t Request_task_info;
1002__Request__task_set_info_t Request_task_set_info;
1003__Request__task_suspend_t Request_task_suspend;
1004__Request__task_resume_t Request_task_resume;
1005__Request__task_get_special_port_t Request_task_get_special_port;
1006__Request__task_set_special_port_t Request_task_set_special_port;
1007__Request__thread_create_t Request_thread_create;
1008__Request__thread_create_running_t Request_thread_create_running;
1009__Request__task_set_exception_ports_t Request_task_set_exception_ports;
1010__Request__task_get_exception_ports_t Request_task_get_exception_ports;
1011__Request__task_swap_exception_ports_t Request_task_swap_exception_ports;
1012__Request__lock_set_create_t Request_lock_set_create;
1013__Request__lock_set_destroy_t Request_lock_set_destroy;
1014__Request__semaphore_create_t Request_semaphore_create;
1015__Request__semaphore_destroy_t Request_semaphore_destroy;
1016__Request__task_policy_set_t Request_task_policy_set;
1017__Request__task_policy_get_t Request_task_policy_get;
1018__Request__task_sample_t Request_task_sample;
1019__Request__task_policy_t Request_task_policy;
1020__Request__task_set_emulation_t Request_task_set_emulation;
1021__Request__task_get_emulation_vector_t Request_task_get_emulation_vector;
1022__Request__task_set_emulation_vector_t Request_task_set_emulation_vector;
1023__Request__task_set_ras_pc_t Request_task_set_ras_pc;
1024__Request__task_assign_t Request_task_assign;
1025__Request__task_assign_default_t Request_task_assign_default;
1026__Request__task_get_assignment_t Request_task_get_assignment;
1027__Request__task_set_policy_t Request_task_set_policy;
1028__Request__task_get_state_t Request_task_get_state;
1029__Request__task_set_state_t Request_task_set_state;
1030};
1031#endif /* !__RequestUnion__task_subsystem__defined */
1032/* typedefs for all replies */
1033
1034#ifndef __Reply__task_subsystem__defined
1035#define __Reply__task_subsystem__defined
1036
1037#ifdef __MigPackStructs
1038#pragma pack(4)
1039#endif
1040typedef struct {
1041mach_msg_header_t Head;
1042/* start of the kernel processed data */
1043mach_msg_body_t msgh_body;
1044mach_msg_port_descriptor_t child_task;
1045/* end of the kernel processed data */
1046} __Reply__task_create_t;
1047#ifdef __MigPackStructs
1048#pragma pack()
1049#endif
1050
1051#ifdef __MigPackStructs
1052#pragma pack(4)
1053#endif
1054typedef struct {
1055mach_msg_header_t Head;
1056NDR_record_t NDR;
1057kern_return_t RetCode;
1058} __Reply__task_terminate_t;
1059#ifdef __MigPackStructs
1060#pragma pack()
1061#endif
1062
1063#ifdef __MigPackStructs
1064#pragma pack(4)
1065#endif
1066typedef struct {
1067mach_msg_header_t Head;
1068/* start of the kernel processed data */
1069mach_msg_body_t msgh_body;
1070mach_msg_ool_ports_descriptor_t act_list;
1071/* end of the kernel processed data */
1072NDR_record_t NDR;
1073mach_msg_type_number_t act_listCnt;
1074} __Reply__task_threads_t;
1075#ifdef __MigPackStructs
1076#pragma pack()
1077#endif
1078
1079#ifdef __MigPackStructs
1080#pragma pack(4)
1081#endif
1082typedef struct {
1083mach_msg_header_t Head;
1084NDR_record_t NDR;
1085kern_return_t RetCode;
1086} __Reply__mach_ports_register_t;
1087#ifdef __MigPackStructs
1088#pragma pack()
1089#endif
1090
1091#ifdef __MigPackStructs
1092#pragma pack(4)
1093#endif
1094typedef struct {
1095mach_msg_header_t Head;
1096/* start of the kernel processed data */
1097mach_msg_body_t msgh_body;
1098mach_msg_ool_ports_descriptor_t init_port_set;
1099/* end of the kernel processed data */
1100NDR_record_t NDR;
1101mach_msg_type_number_t init_port_setCnt;
1102} __Reply__mach_ports_lookup_t;
1103#ifdef __MigPackStructs
1104#pragma pack()
1105#endif
1106
1107#ifdef __MigPackStructs
1108#pragma pack(4)
1109#endif
1110typedef struct {
1111mach_msg_header_t Head;
1112NDR_record_t NDR;
1113kern_return_t RetCode;
1114mach_msg_type_number_t task_info_outCnt;
1115integer_t task_info_out[10];
1116} __Reply__task_info_t;
1117#ifdef __MigPackStructs
1118#pragma pack()
1119#endif
1120
1121#ifdef __MigPackStructs
1122#pragma pack(4)
1123#endif
1124typedef struct {
1125mach_msg_header_t Head;
1126NDR_record_t NDR;
1127kern_return_t RetCode;
1128} __Reply__task_set_info_t;
1129#ifdef __MigPackStructs
1130#pragma pack()
1131#endif
1132
1133#ifdef __MigPackStructs
1134#pragma pack(4)
1135#endif
1136typedef struct {
1137mach_msg_header_t Head;
1138NDR_record_t NDR;
1139kern_return_t RetCode;
1140} __Reply__task_suspend_t;
1141#ifdef __MigPackStructs
1142#pragma pack()
1143#endif
1144
1145#ifdef __MigPackStructs
1146#pragma pack(4)
1147#endif
1148typedef struct {
1149mach_msg_header_t Head;
1150NDR_record_t NDR;
1151kern_return_t RetCode;
1152} __Reply__task_resume_t;
1153#ifdef __MigPackStructs
1154#pragma pack()
1155#endif
1156
1157#ifdef __MigPackStructs
1158#pragma pack(4)
1159#endif
1160typedef struct {
1161mach_msg_header_t Head;
1162/* start of the kernel processed data */
1163mach_msg_body_t msgh_body;
1164mach_msg_port_descriptor_t special_port;
1165/* end of the kernel processed data */
1166} __Reply__task_get_special_port_t;
1167#ifdef __MigPackStructs
1168#pragma pack()
1169#endif
1170
1171#ifdef __MigPackStructs
1172#pragma pack(4)
1173#endif
1174typedef struct {
1175mach_msg_header_t Head;
1176NDR_record_t NDR;
1177kern_return_t RetCode;
1178} __Reply__task_set_special_port_t;
1179#ifdef __MigPackStructs
1180#pragma pack()
1181#endif
1182
1183#ifdef __MigPackStructs
1184#pragma pack(4)
1185#endif
1186typedef struct {
1187mach_msg_header_t Head;
1188/* start of the kernel processed data */
1189mach_msg_body_t msgh_body;
1190mach_msg_port_descriptor_t child_act;
1191/* end of the kernel processed data */
1192} __Reply__thread_create_t;
1193#ifdef __MigPackStructs
1194#pragma pack()
1195#endif
1196
1197#ifdef __MigPackStructs
1198#pragma pack(4)
1199#endif
1200typedef struct {
1201mach_msg_header_t Head;
1202/* start of the kernel processed data */
1203mach_msg_body_t msgh_body;
1204mach_msg_port_descriptor_t child_act;
1205/* end of the kernel processed data */
1206} __Reply__thread_create_running_t;
1207#ifdef __MigPackStructs
1208#pragma pack()
1209#endif
1210
1211#ifdef __MigPackStructs
1212#pragma pack(4)
1213#endif
1214typedef struct {
1215mach_msg_header_t Head;
1216NDR_record_t NDR;
1217kern_return_t RetCode;
1218} __Reply__task_set_exception_ports_t;
1219#ifdef __MigPackStructs
1220#pragma pack()
1221#endif
1222
1223#ifdef __MigPackStructs
1224#pragma pack(4)
1225#endif
1226typedef struct {
1227mach_msg_header_t Head;
1228/* start of the kernel processed data */
1229mach_msg_body_t msgh_body;
1230mach_msg_port_descriptor_t old_handlers[32];
1231/* end of the kernel processed data */
1232NDR_record_t NDR;
1233mach_msg_type_number_t masksCnt;
1234exception_mask_t masks[32];
1235exception_behavior_t old_behaviors[32];
1236thread_state_flavor_t old_flavors[32];
1237} __Reply__task_get_exception_ports_t;
1238#ifdef __MigPackStructs
1239#pragma pack()
1240#endif
1241
1242#ifdef __MigPackStructs
1243#pragma pack(4)
1244#endif
1245typedef struct {
1246mach_msg_header_t Head;
1247/* start of the kernel processed data */
1248mach_msg_body_t msgh_body;
1249mach_msg_port_descriptor_t old_handlerss[32];
1250/* end of the kernel processed data */
1251NDR_record_t NDR;
1252mach_msg_type_number_t masksCnt;
1253exception_mask_t masks[32];
1254exception_behavior_t old_behaviors[32];
1255thread_state_flavor_t old_flavors[32];
1256} __Reply__task_swap_exception_ports_t;
1257#ifdef __MigPackStructs
1258#pragma pack()
1259#endif
1260
1261#ifdef __MigPackStructs
1262#pragma pack(4)
1263#endif
1264typedef struct {
1265mach_msg_header_t Head;
1266/* start of the kernel processed data */
1267mach_msg_body_t msgh_body;
1268mach_msg_port_descriptor_t new_lock_set;
1269/* end of the kernel processed data */
1270} __Reply__lock_set_create_t;
1271#ifdef __MigPackStructs
1272#pragma pack()
1273#endif
1274
1275#ifdef __MigPackStructs
1276#pragma pack(4)
1277#endif
1278typedef struct {
1279mach_msg_header_t Head;
1280NDR_record_t NDR;
1281kern_return_t RetCode;
1282} __Reply__lock_set_destroy_t;
1283#ifdef __MigPackStructs
1284#pragma pack()
1285#endif
1286
1287#ifdef __MigPackStructs
1288#pragma pack(4)
1289#endif
1290typedef struct {
1291mach_msg_header_t Head;
1292/* start of the kernel processed data */
1293mach_msg_body_t msgh_body;
1294mach_msg_port_descriptor_t semaphore;
1295/* end of the kernel processed data */
1296} __Reply__semaphore_create_t;
1297#ifdef __MigPackStructs
1298#pragma pack()
1299#endif
1300
1301#ifdef __MigPackStructs
1302#pragma pack(4)
1303#endif
1304typedef struct {
1305mach_msg_header_t Head;
1306NDR_record_t NDR;
1307kern_return_t RetCode;
1308} __Reply__semaphore_destroy_t;
1309#ifdef __MigPackStructs
1310#pragma pack()
1311#endif
1312
1313#ifdef __MigPackStructs
1314#pragma pack(4)
1315#endif
1316typedef struct {
1317mach_msg_header_t Head;
1318NDR_record_t NDR;
1319kern_return_t RetCode;
1320} __Reply__task_policy_set_t;
1321#ifdef __MigPackStructs
1322#pragma pack()
1323#endif
1324
1325#ifdef __MigPackStructs
1326#pragma pack(4)
1327#endif
1328typedef struct {
1329mach_msg_header_t Head;
1330NDR_record_t NDR;
1331kern_return_t RetCode;
1332mach_msg_type_number_t policy_infoCnt;
1333integer_t policy_info[16];
1334boolean_t get_default;
1335} __Reply__task_policy_get_t;
1336#ifdef __MigPackStructs
1337#pragma pack()
1338#endif
1339
1340#ifdef __MigPackStructs
1341#pragma pack(4)
1342#endif
1343typedef struct {
1344mach_msg_header_t Head;
1345NDR_record_t NDR;
1346kern_return_t RetCode;
1347} __Reply__task_sample_t;
1348#ifdef __MigPackStructs
1349#pragma pack()
1350#endif
1351
1352#ifdef __MigPackStructs
1353#pragma pack(4)
1354#endif
1355typedef struct {
1356mach_msg_header_t Head;
1357NDR_record_t NDR;
1358kern_return_t RetCode;
1359} __Reply__task_policy_t;
1360#ifdef __MigPackStructs
1361#pragma pack()
1362#endif
1363
1364#ifdef __MigPackStructs
1365#pragma pack(4)
1366#endif
1367typedef struct {
1368mach_msg_header_t Head;
1369NDR_record_t NDR;
1370kern_return_t RetCode;
1371} __Reply__task_set_emulation_t;
1372#ifdef __MigPackStructs
1373#pragma pack()
1374#endif
1375
1376#ifdef __MigPackStructs
1377#pragma pack(4)
1378#endif
1379typedef struct {
1380mach_msg_header_t Head;
1381/* start of the kernel processed data */
1382mach_msg_body_t msgh_body;
1383mach_msg_ool_descriptor_t emulation_vector;
1384/* end of the kernel processed data */
1385NDR_record_t NDR;
1386int vector_start;
1387mach_msg_type_number_t emulation_vectorCnt;
1388} __Reply__task_get_emulation_vector_t;
1389#ifdef __MigPackStructs
1390#pragma pack()
1391#endif
1392
1393#ifdef __MigPackStructs
1394#pragma pack(4)
1395#endif
1396typedef struct {
1397mach_msg_header_t Head;
1398NDR_record_t NDR;
1399kern_return_t RetCode;
1400} __Reply__task_set_emulation_vector_t;
1401#ifdef __MigPackStructs
1402#pragma pack()
1403#endif
1404
1405#ifdef __MigPackStructs
1406#pragma pack(4)
1407#endif
1408typedef struct {
1409mach_msg_header_t Head;
1410NDR_record_t NDR;
1411kern_return_t RetCode;
1412} __Reply__task_set_ras_pc_t;
1413#ifdef __MigPackStructs
1414#pragma pack()
1415#endif
1416
1417#ifdef __MigPackStructs
1418#pragma pack(4)
1419#endif
1420typedef struct {
1421mach_msg_header_t Head;
1422NDR_record_t NDR;
1423kern_return_t RetCode;
1424} __Reply__task_assign_t;
1425#ifdef __MigPackStructs
1426#pragma pack()
1427#endif
1428
1429#ifdef __MigPackStructs
1430#pragma pack(4)
1431#endif
1432typedef struct {
1433mach_msg_header_t Head;
1434NDR_record_t NDR;
1435kern_return_t RetCode;
1436} __Reply__task_assign_default_t;
1437#ifdef __MigPackStructs
1438#pragma pack()
1439#endif
1440
1441#ifdef __MigPackStructs
1442#pragma pack(4)
1443#endif
1444typedef struct {
1445mach_msg_header_t Head;
1446/* start of the kernel processed data */
1447mach_msg_body_t msgh_body;
1448mach_msg_port_descriptor_t assigned_set;
1449/* end of the kernel processed data */
1450} __Reply__task_get_assignment_t;
1451#ifdef __MigPackStructs
1452#pragma pack()
1453#endif
1454
1455#ifdef __MigPackStructs
1456#pragma pack(4)
1457#endif
1458typedef struct {
1459mach_msg_header_t Head;
1460NDR_record_t NDR;
1461kern_return_t RetCode;
1462} __Reply__task_set_policy_t;
1463#ifdef __MigPackStructs
1464#pragma pack()
1465#endif
1466
1467#ifdef __MigPackStructs
1468#pragma pack(4)
1469#endif
1470typedef struct {
1471mach_msg_header_t Head;
1472NDR_record_t NDR;
1473kern_return_t RetCode;
1474mach_msg_type_number_t old_stateCnt;
1475natural_t old_state[144];
1476} __Reply__task_get_state_t;
1477#ifdef __MigPackStructs
1478#pragma pack()
1479#endif
1480
1481#ifdef __MigPackStructs
1482#pragma pack(4)
1483#endif
1484typedef struct {
1485mach_msg_header_t Head;
1486NDR_record_t NDR;
1487kern_return_t RetCode;
1488} __Reply__task_set_state_t;
1489#ifdef __MigPackStructs
1490#pragma pack()
1491#endif
1492#endif /* !__Reply__task_subsystem__defined */
1493
1494/* union of all replies */
1495
1496#ifndef __ReplyUnion__task_subsystem__defined
1497#define __ReplyUnion__task_subsystem__defined
1498union __ReplyUnion__task_subsystem {
1499__Reply__task_create_t Reply_task_create;
1500__Reply__task_terminate_t Reply_task_terminate;
1501__Reply__task_threads_t Reply_task_threads;
1502__Reply__mach_ports_register_t Reply_mach_ports_register;
1503__Reply__mach_ports_lookup_t Reply_mach_ports_lookup;
1504__Reply__task_info_t Reply_task_info;
1505__Reply__task_set_info_t Reply_task_set_info;
1506__Reply__task_suspend_t Reply_task_suspend;
1507__Reply__task_resume_t Reply_task_resume;
1508__Reply__task_get_special_port_t Reply_task_get_special_port;
1509__Reply__task_set_special_port_t Reply_task_set_special_port;
1510__Reply__thread_create_t Reply_thread_create;
1511__Reply__thread_create_running_t Reply_thread_create_running;
1512__Reply__task_set_exception_ports_t Reply_task_set_exception_ports;
1513__Reply__task_get_exception_ports_t Reply_task_get_exception_ports;
1514__Reply__task_swap_exception_ports_t Reply_task_swap_exception_ports;
1515__Reply__lock_set_create_t Reply_lock_set_create;
1516__Reply__lock_set_destroy_t Reply_lock_set_destroy;
1517__Reply__semaphore_create_t Reply_semaphore_create;
1518__Reply__semaphore_destroy_t Reply_semaphore_destroy;
1519__Reply__task_policy_set_t Reply_task_policy_set;
1520__Reply__task_policy_get_t Reply_task_policy_get;
1521__Reply__task_sample_t Reply_task_sample;
1522__Reply__task_policy_t Reply_task_policy;
1523__Reply__task_set_emulation_t Reply_task_set_emulation;
1524__Reply__task_get_emulation_vector_t Reply_task_get_emulation_vector;
1525__Reply__task_set_emulation_vector_t Reply_task_set_emulation_vector;
1526__Reply__task_set_ras_pc_t Reply_task_set_ras_pc;
1527__Reply__task_assign_t Reply_task_assign;
1528__Reply__task_assign_default_t Reply_task_assign_default;
1529__Reply__task_get_assignment_t Reply_task_get_assignment;
1530__Reply__task_set_policy_t Reply_task_set_policy;
1531__Reply__task_get_state_t Reply_task_get_state;
1532__Reply__task_set_state_t Reply_task_set_state;
1533};
1534#endif /* !__RequestUnion__task_subsystem__defined */
1535
1536#ifndef subsystem_to_name_map_task
1537#define subsystem_to_name_map_task \
1538 { "task_create", 3400 },\
1539 { "task_terminate", 3401 },\
1540 { "task_threads", 3402 },\
1541 { "mach_ports_register", 3403 },\
1542 { "mach_ports_lookup", 3404 },\
1543 { "task_info", 3405 },\
1544 { "task_set_info", 3406 },\
1545 { "task_suspend", 3407 },\
1546 { "task_resume", 3408 },\
1547 { "task_get_special_port", 3409 },\
1548 { "task_set_special_port", 3410 },\
1549 { "thread_create", 3411 },\
1550 { "thread_create_running", 3412 },\
1551 { "task_set_exception_ports", 3413 },\
1552 { "task_get_exception_ports", 3414 },\
1553 { "task_swap_exception_ports", 3415 },\
1554 { "lock_set_create", 3416 },\
1555 { "lock_set_destroy", 3417 },\
1556 { "semaphore_create", 3418 },\
1557 { "semaphore_destroy", 3419 },\
1558 { "task_policy_set", 3420 },\
1559 { "task_policy_get", 3421 },\
1560 { "task_sample", 3422 },\
1561 { "task_policy", 3423 },\
1562 { "task_set_emulation", 3424 },\
1563 { "task_get_emulation_vector", 3425 },\
1564 { "task_set_emulation_vector", 3426 },\
1565 { "task_set_ras_pc", 3427 },\
1566 { "task_assign", 3429 },\
1567 { "task_assign_default", 3430 },\
1568 { "task_get_assignment", 3431 },\
1569 { "task_set_policy", 3432 },\
1570 { "task_get_state", 3433 },\
1571 { "task_set_state", 3434 }
1572#endif
1573
1574#ifdef __AfterMigUserHeader
1575__AfterMigUserHeader
1576#endif /* __AfterMigUserHeader */
1577
1578#endif /* _task_user_ */
1579

Archive Download this file

Revision: 881