1#ifndef _mach_port_server_
2#define _mach_port_server_
3
4/* Module mach_port */
5
6#include <string.h>
7#include <mach/ndr.h>
8#include <mach/boolean.h>
9#include <mach/kern_return.h>
10#include <mach/notify.h>
11#include <mach/mach_types.h>
12#include <mach/message.h>
13#include <mach/mig_errors.h>
14#include <mach/port.h>
15
16/* BEGIN MIG_STRNCPY_ZEROFILL CODE */
17
18#if defined(__has_include)
19#if __has_include(<mach/mig_strncpy_zerofill_support.h>)
20#ifndef USING_MIG_STRNCPY_ZEROFILL
21#define USING_MIG_STRNCPY_ZEROFILL
22#endif
23#ifndef __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS__
24#define __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS__
25#ifdef __cplusplus
26extern "C" {
27#endif
28 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
42typedef void (*function_ptr_t)(mach_port_t, char *, mach_msg_type_number_t);
43typedef struct {
44 char *name;
45 function_ptr_t function;
46} function_table_entry;
47typedef function_table_entry *function_table_t;
48#endif /* FUNCTION_PTR_T */
49#endif /* AUTOTEST */
50
51#ifndef mach_port_MSG_COUNT
52#define mach_port_MSG_COUNT 37
53#endif /* mach_port_MSG_COUNT */
54
55#include <mach/std_types.h>
56#include <mach/mig.h>
57#include <ipc/ipc_voucher.h>
58#include <kern/ipc_kobject.h>
59#include <kern/ipc_tt.h>
60#include <kern/ipc_host.h>
61#include <kern/ipc_sync.h>
62#include <kern/ledger.h>
63#include <kern/processor.h>
64#include <kern/sync_lock.h>
65#include <kern/sync_sema.h>
66#include <vm/memory_object.h>
67#include <vm/vm_map.h>
68#include <kern/ipc_mig.h>
69#include <mach/mig.h>
70#include <mach/mach_types.h>
71#include <mach_debug/mach_debug_types.h>
72
73#ifdef __BeforeMigServerHeader
74__BeforeMigServerHeader
75#endif /* __BeforeMigServerHeader */
76
77
78/* Routine mach_port_names */
79#ifdef mig_external
80mig_external
81#else
82extern
83#endif /* mig_external */
84kern_return_t mach_port_names
85(
86 ipc_space_t task,
87 mach_port_name_array_t *names,
88 mach_msg_type_number_t *namesCnt,
89 mach_port_type_array_t *types,
90 mach_msg_type_number_t *typesCnt
91);
92
93/* Routine mach_port_type */
94#ifdef mig_external
95mig_external
96#else
97extern
98#endif /* mig_external */
99kern_return_t mach_port_type
100(
101 ipc_space_t task,
102 mach_port_name_t name,
103 mach_port_type_t *ptype
104);
105
106/* Routine mach_port_rename */
107#ifdef mig_external
108mig_external
109#else
110extern
111#endif /* mig_external */
112kern_return_t mach_port_rename
113(
114 ipc_space_t task,
115 mach_port_name_t old_name,
116 mach_port_name_t new_name
117);
118
119/* Routine mach_port_allocate_name */
120#ifdef mig_external
121mig_external
122#else
123extern
124#endif /* mig_external */
125kern_return_t mach_port_allocate_name
126(
127 ipc_space_t task,
128 mach_port_right_t right,
129 mach_port_name_t name
130);
131
132/* Routine mach_port_allocate */
133#ifdef mig_external
134mig_external
135#else
136extern
137#endif /* mig_external */
138kern_return_t mach_port_allocate
139(
140 ipc_space_t task,
141 mach_port_right_t right,
142 mach_port_name_t *name
143);
144
145/* Routine mach_port_destroy */
146#ifdef mig_external
147mig_external
148#else
149extern
150#endif /* mig_external */
151kern_return_t mach_port_destroy
152(
153 ipc_space_t task,
154 mach_port_name_t name
155);
156
157/* Routine mach_port_deallocate */
158#ifdef mig_external
159mig_external
160#else
161extern
162#endif /* mig_external */
163kern_return_t mach_port_deallocate
164(
165 ipc_space_t task,
166 mach_port_name_t name
167);
168
169/* Routine mach_port_get_refs */
170#ifdef mig_external
171mig_external
172#else
173extern
174#endif /* mig_external */
175kern_return_t mach_port_get_refs
176(
177 ipc_space_t task,
178 mach_port_name_t name,
179 mach_port_right_t right,
180 mach_port_urefs_t *refs
181);
182
183/* Routine mach_port_mod_refs */
184#ifdef mig_external
185mig_external
186#else
187extern
188#endif /* mig_external */
189kern_return_t mach_port_mod_refs
190(
191 ipc_space_t task,
192 mach_port_name_t name,
193 mach_port_right_t right,
194 mach_port_delta_t delta
195);
196
197/* Routine mach_port_peek */
198#ifdef mig_external
199mig_external
200#else
201extern
202#endif /* mig_external */
203kern_return_t mach_port_peek
204(
205 ipc_space_t task,
206 mach_port_name_t name,
207 mach_msg_trailer_type_t trailer_type,
208 mach_port_seqno_t *request_seqnop,
209 mach_msg_size_t *msg_sizep,
210 mach_msg_id_t *msg_idp,
211 mach_msg_trailer_info_t trailer_infop,
212 mach_msg_type_number_t *trailer_infopCnt
213);
214
215/* Routine mach_port_set_mscount */
216#ifdef mig_external
217mig_external
218#else
219extern
220#endif /* mig_external */
221kern_return_t mach_port_set_mscount
222(
223 ipc_space_t task,
224 mach_port_name_t name,
225 mach_port_mscount_t mscount
226);
227
228/* Routine mach_port_get_set_status */
229#ifdef mig_external
230mig_external
231#else
232extern
233#endif /* mig_external */
234kern_return_t mach_port_get_set_status
235(
236 ipc_space_inspect_t task,
237 mach_port_name_t name,
238 mach_port_name_array_t *members,
239 mach_msg_type_number_t *membersCnt
240);
241
242/* Routine mach_port_move_member */
243#ifdef mig_external
244mig_external
245#else
246extern
247#endif /* mig_external */
248kern_return_t mach_port_move_member
249(
250 ipc_space_t task,
251 mach_port_name_t member,
252 mach_port_name_t after
253);
254
255/* Routine mach_port_request_notification */
256#ifdef mig_external
257mig_external
258#else
259extern
260#endif /* mig_external */
261kern_return_t mach_port_request_notification
262(
263 ipc_space_t task,
264 mach_port_name_t name,
265 mach_msg_id_t msgid,
266 mach_port_mscount_t sync,
267 mach_port_t notify,
268 mach_port_t *previous
269);
270
271/* Routine mach_port_insert_right */
272#ifdef mig_external
273mig_external
274#else
275extern
276#endif /* mig_external */
277kern_return_t mach_port_insert_right
278(
279 ipc_space_t task,
280 mach_port_name_t name,
281 mach_port_t poly,
282 mach_msg_type_name_t polyPoly
283);
284
285/* Routine mach_port_extract_right */
286#ifdef mig_external
287mig_external
288#else
289extern
290#endif /* mig_external */
291kern_return_t mach_port_extract_right
292(
293 ipc_space_t task,
294 mach_port_name_t name,
295 mach_msg_type_name_t msgt_name,
296 mach_port_t *poly,
297 mach_msg_type_name_t *polyPoly
298);
299
300/* Routine mach_port_set_seqno */
301#ifdef mig_external
302mig_external
303#else
304extern
305#endif /* mig_external */
306kern_return_t mach_port_set_seqno
307(
308 ipc_space_t task,
309 mach_port_name_t name,
310 mach_port_seqno_t seqno
311);
312
313/* Routine mach_port_get_attributes */
314#ifdef mig_external
315mig_external
316#else
317extern
318#endif /* mig_external */
319kern_return_t mach_port_get_attributes
320(
321 ipc_space_inspect_t task,
322 mach_port_name_t name,
323 mach_port_flavor_t flavor,
324 mach_port_info_t port_info_out,
325 mach_msg_type_number_t *port_info_outCnt
326);
327
328/* Routine mach_port_set_attributes */
329#ifdef mig_external
330mig_external
331#else
332extern
333#endif /* mig_external */
334kern_return_t mach_port_set_attributes
335(
336 ipc_space_t task,
337 mach_port_name_t name,
338 mach_port_flavor_t flavor,
339 mach_port_info_t port_info,
340 mach_msg_type_number_t port_infoCnt
341);
342
343/* Routine mach_port_allocate_qos */
344#ifdef mig_external
345mig_external
346#else
347extern
348#endif /* mig_external */
349kern_return_t mach_port_allocate_qos
350(
351 ipc_space_t task,
352 mach_port_right_t right,
353 mach_port_qos_t *qos,
354 mach_port_name_t *name
355);
356
357/* Routine mach_port_allocate_full */
358#ifdef mig_external
359mig_external
360#else
361extern
362#endif /* mig_external */
363kern_return_t mach_port_allocate_full
364(
365 ipc_space_t task,
366 mach_port_right_t right,
367 mach_port_t proto,
368 mach_port_qos_t *qos,
369 mach_port_name_t *name
370);
371
372/* Routine task_set_port_space */
373#ifdef mig_external
374mig_external
375#else
376extern
377#endif /* mig_external */
378kern_return_t task_set_port_space
379(
380 ipc_space_t task,
381 int table_entries
382);
383
384/* Routine mach_port_get_srights */
385#ifdef mig_external
386mig_external
387#else
388extern
389#endif /* mig_external */
390kern_return_t mach_port_get_srights
391(
392 ipc_space_t task,
393 mach_port_name_t name,
394 mach_port_rights_t *srights
395);
396
397/* Routine mach_port_space_info */
398#ifdef mig_external
399mig_external
400#else
401extern
402#endif /* mig_external */
403kern_return_t mach_port_space_info
404(
405 ipc_space_inspect_t task,
406 ipc_info_space_t *space_info,
407 ipc_info_name_array_t *table_info,
408 mach_msg_type_number_t *table_infoCnt,
409 ipc_info_tree_name_array_t *tree_info,
410 mach_msg_type_number_t *tree_infoCnt
411);
412
413/* Routine mach_port_dnrequest_info */
414#ifdef mig_external
415mig_external
416#else
417extern
418#endif /* mig_external */
419kern_return_t mach_port_dnrequest_info
420(
421 ipc_space_t task,
422 mach_port_name_t name,
423 unsigned *dnr_total,
424 unsigned *dnr_used
425);
426
427/* Routine mach_port_kernel_object */
428#ifdef mig_external
429mig_external
430#else
431extern
432#endif /* mig_external */
433kern_return_t mach_port_kernel_object
434(
435 ipc_space_inspect_t task,
436 mach_port_name_t name,
437 unsigned *object_type,
438 unsigned *object_addr
439);
440
441/* Routine mach_port_insert_member */
442#ifdef mig_external
443mig_external
444#else
445extern
446#endif /* mig_external */
447kern_return_t mach_port_insert_member
448(
449 ipc_space_t task,
450 mach_port_name_t name,
451 mach_port_name_t pset
452);
453
454/* Routine mach_port_extract_member */
455#ifdef mig_external
456mig_external
457#else
458extern
459#endif /* mig_external */
460kern_return_t mach_port_extract_member
461(
462 ipc_space_t task,
463 mach_port_name_t name,
464 mach_port_name_t pset
465);
466
467/* Routine mach_port_get_context */
468#ifdef mig_external
469mig_external
470#else
471extern
472#endif /* mig_external */
473kern_return_t mach_port_get_context
474(
475 ipc_space_inspect_t task,
476 mach_port_name_t name,
477 mach_vm_address_t *context
478);
479
480/* Routine mach_port_set_context */
481#ifdef mig_external
482mig_external
483#else
484extern
485#endif /* mig_external */
486kern_return_t mach_port_set_context
487(
488 ipc_space_t task,
489 mach_port_name_t name,
490 mach_vm_address_t context
491);
492
493/* Routine mach_port_kobject */
494#ifdef mig_external
495mig_external
496#else
497extern
498#endif /* mig_external */
499kern_return_t mach_port_kobject
500(
501 ipc_space_inspect_t task,
502 mach_port_name_t name,
503 natural_t *object_type,
504 mach_vm_address_t *object_addr
505);
506
507/* Routine mach_port_construct */
508#ifdef mig_external
509mig_external
510#else
511extern
512#endif /* mig_external */
513kern_return_t mach_port_construct
514(
515 ipc_space_t task,
516 mach_port_options_ptr_t options,
517 uint64_t context,
518 mach_port_name_t *name
519);
520
521/* Routine mach_port_destruct */
522#ifdef mig_external
523mig_external
524#else
525extern
526#endif /* mig_external */
527kern_return_t mach_port_destruct
528(
529 ipc_space_t task,
530 mach_port_name_t name,
531 mach_port_delta_t srdelta,
532 uint64_t guard
533);
534
535/* Routine mach_port_guard */
536#ifdef mig_external
537mig_external
538#else
539extern
540#endif /* mig_external */
541kern_return_t mach_port_guard
542(
543 ipc_space_t task,
544 mach_port_name_t name,
545 uint64_t guard,
546 boolean_t strict
547);
548
549/* Routine mach_port_unguard */
550#ifdef mig_external
551mig_external
552#else
553extern
554#endif /* mig_external */
555kern_return_t mach_port_unguard
556(
557 ipc_space_t task,
558 mach_port_name_t name,
559 uint64_t guard
560);
561
562/* Routine mach_port_space_basic_info */
563#ifdef mig_external
564mig_external
565#else
566extern
567#endif /* mig_external */
568kern_return_t mach_port_space_basic_info
569(
570 ipc_space_inspect_t task,
571 ipc_info_space_basic_t *basic_info
572);
573
574/* Routine mach_port_special_reply_port_reset_link */
575#ifdef mig_external
576mig_external
577#else
578extern
579#endif /* mig_external */
580kern_return_t mach_port_special_reply_port_reset_link
581(
582 ipc_space_t task,
583 mach_port_name_t name,
584 boolean_t *srp_lost_link
585);
586
587#ifdef mig_external
588mig_external
589#else
590extern
591#endif /* mig_external */
592boolean_t mach_port_server(
593 mach_msg_header_t *InHeadP,
594 mach_msg_header_t *OutHeadP);
595
596#ifdef mig_external
597mig_external
598#else
599extern
600#endif /* mig_external */
601mig_routine_t mach_port_server_routine(
602 mach_msg_header_t *InHeadP);
603
604
605/* Description of this subsystem, for use in direct RPC */
606extern const struct mach_port_subsystem {
607 mig_server_routine_t server; /* Server routine */
608 mach_msg_id_t start; /* Min routine number */
609 mach_msg_id_t end; /* Max routine number + 1 */
610 unsigned int maxsize; /* Max msg size */
611 vm_address_t reserved; /* Reserved */
612 struct routine_descriptor /*Array of routine descriptors */
613 routine[37];
614} mach_port_subsystem;
615
616/* typedefs for all requests */
617
618#ifndef __Request__mach_port_subsystem__defined
619#define __Request__mach_port_subsystem__defined
620
621#ifdef __MigPackStructs
622#pragma pack(4)
623#endif
624 typedef struct {
625 mach_msg_header_t Head;
626 } __Request__mach_port_names_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 mach_port_name_t name;
638 } __Request__mach_port_type_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 NDR_record_t NDR;
649 mach_port_name_t old_name;
650 mach_port_name_t new_name;
651 } __Request__mach_port_rename_t __attribute__((unused));
652#ifdef __MigPackStructs
653#pragma pack()
654#endif
655
656#ifdef __MigPackStructs
657#pragma pack(4)
658#endif
659 typedef struct {
660 mach_msg_header_t Head;
661 NDR_record_t NDR;
662 mach_port_right_t right;
663 mach_port_name_t name;
664 } __Request__mach_port_allocate_name_t __attribute__((unused));
665#ifdef __MigPackStructs
666#pragma pack()
667#endif
668
669#ifdef __MigPackStructs
670#pragma pack(4)
671#endif
672 typedef struct {
673 mach_msg_header_t Head;
674 NDR_record_t NDR;
675 mach_port_right_t right;
676 } __Request__mach_port_allocate_t __attribute__((unused));
677#ifdef __MigPackStructs
678#pragma pack()
679#endif
680
681#ifdef __MigPackStructs
682#pragma pack(4)
683#endif
684 typedef struct {
685 mach_msg_header_t Head;
686 NDR_record_t NDR;
687 mach_port_name_t name;
688 } __Request__mach_port_destroy_t __attribute__((unused));
689#ifdef __MigPackStructs
690#pragma pack()
691#endif
692
693#ifdef __MigPackStructs
694#pragma pack(4)
695#endif
696 typedef struct {
697 mach_msg_header_t Head;
698 NDR_record_t NDR;
699 mach_port_name_t name;
700 } __Request__mach_port_deallocate_t __attribute__((unused));
701#ifdef __MigPackStructs
702#pragma pack()
703#endif
704
705#ifdef __MigPackStructs
706#pragma pack(4)
707#endif
708 typedef struct {
709 mach_msg_header_t Head;
710 NDR_record_t NDR;
711 mach_port_name_t name;
712 mach_port_right_t right;
713 } __Request__mach_port_get_refs_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 mach_port_name_t name;
725 mach_port_right_t right;
726 mach_port_delta_t delta;
727 } __Request__mach_port_mod_refs_t __attribute__((unused));
728#ifdef __MigPackStructs
729#pragma pack()
730#endif
731
732#ifdef __MigPackStructs
733#pragma pack(4)
734#endif
735 typedef struct {
736 mach_msg_header_t Head;
737 NDR_record_t NDR;
738 mach_port_name_t name;
739 mach_msg_trailer_type_t trailer_type;
740 mach_port_seqno_t request_seqnop;
741 mach_msg_type_number_t trailer_infopCnt;
742 } __Request__mach_port_peek_t __attribute__((unused));
743#ifdef __MigPackStructs
744#pragma pack()
745#endif
746
747#ifdef __MigPackStructs
748#pragma pack(4)
749#endif
750 typedef struct {
751 mach_msg_header_t Head;
752 NDR_record_t NDR;
753 mach_port_name_t name;
754 mach_port_mscount_t mscount;
755 } __Request__mach_port_set_mscount_t __attribute__((unused));
756#ifdef __MigPackStructs
757#pragma pack()
758#endif
759
760#ifdef __MigPackStructs
761#pragma pack(4)
762#endif
763 typedef struct {
764 mach_msg_header_t Head;
765 NDR_record_t NDR;
766 mach_port_name_t name;
767 } __Request__mach_port_get_set_status_t __attribute__((unused));
768#ifdef __MigPackStructs
769#pragma pack()
770#endif
771
772#ifdef __MigPackStructs
773#pragma pack(4)
774#endif
775 typedef struct {
776 mach_msg_header_t Head;
777 NDR_record_t NDR;
778 mach_port_name_t member;
779 mach_port_name_t after;
780 } __Request__mach_port_move_member_t __attribute__((unused));
781#ifdef __MigPackStructs
782#pragma pack()
783#endif
784
785#ifdef __MigPackStructs
786#pragma pack(4)
787#endif
788 typedef struct {
789 mach_msg_header_t Head;
790 /* start of the kernel processed data */
791 mach_msg_body_t msgh_body;
792 mach_msg_port_descriptor_t notify;
793 /* end of the kernel processed data */
794 NDR_record_t NDR;
795 mach_port_name_t name;
796 mach_msg_id_t msgid;
797 mach_port_mscount_t sync;
798 } __Request__mach_port_request_notification_t __attribute__((unused));
799#ifdef __MigPackStructs
800#pragma pack()
801#endif
802
803#ifdef __MigPackStructs
804#pragma pack(4)
805#endif
806 typedef struct {
807 mach_msg_header_t Head;
808 /* start of the kernel processed data */
809 mach_msg_body_t msgh_body;
810 mach_msg_port_descriptor_t poly;
811 /* end of the kernel processed data */
812 NDR_record_t NDR;
813 mach_port_name_t name;
814 } __Request__mach_port_insert_right_t __attribute__((unused));
815#ifdef __MigPackStructs
816#pragma pack()
817#endif
818
819#ifdef __MigPackStructs
820#pragma pack(4)
821#endif
822 typedef struct {
823 mach_msg_header_t Head;
824 NDR_record_t NDR;
825 mach_port_name_t name;
826 mach_msg_type_name_t msgt_name;
827 } __Request__mach_port_extract_right_t __attribute__((unused));
828#ifdef __MigPackStructs
829#pragma pack()
830#endif
831
832#ifdef __MigPackStructs
833#pragma pack(4)
834#endif
835 typedef struct {
836 mach_msg_header_t Head;
837 NDR_record_t NDR;
838 mach_port_name_t name;
839 mach_port_seqno_t seqno;
840 } __Request__mach_port_set_seqno_t __attribute__((unused));
841#ifdef __MigPackStructs
842#pragma pack()
843#endif
844
845#ifdef __MigPackStructs
846#pragma pack(4)
847#endif
848 typedef struct {
849 mach_msg_header_t Head;
850 NDR_record_t NDR;
851 mach_port_name_t name;
852 mach_port_flavor_t flavor;
853 mach_msg_type_number_t port_info_outCnt;
854 } __Request__mach_port_get_attributes_t __attribute__((unused));
855#ifdef __MigPackStructs
856#pragma pack()
857#endif
858
859#ifdef __MigPackStructs
860#pragma pack(4)
861#endif
862 typedef struct {
863 mach_msg_header_t Head;
864 NDR_record_t NDR;
865 mach_port_name_t name;
866 mach_port_flavor_t flavor;
867 mach_msg_type_number_t port_infoCnt;
868 integer_t port_info[17];
869 } __Request__mach_port_set_attributes_t __attribute__((unused));
870#ifdef __MigPackStructs
871#pragma pack()
872#endif
873
874#ifdef __MigPackStructs
875#pragma pack(4)
876#endif
877 typedef struct {
878 mach_msg_header_t Head;
879 NDR_record_t NDR;
880 mach_port_right_t right;
881 mach_port_qos_t qos;
882 } __Request__mach_port_allocate_qos_t __attribute__((unused));
883#ifdef __MigPackStructs
884#pragma pack()
885#endif
886
887#ifdef __MigPackStructs
888#pragma pack(4)
889#endif
890 typedef struct {
891 mach_msg_header_t Head;
892 /* start of the kernel processed data */
893 mach_msg_body_t msgh_body;
894 mach_msg_port_descriptor_t proto;
895 /* end of the kernel processed data */
896 NDR_record_t NDR;
897 mach_port_right_t right;
898 mach_port_qos_t qos;
899 mach_port_name_t name;
900 } __Request__mach_port_allocate_full_t __attribute__((unused));
901#ifdef __MigPackStructs
902#pragma pack()
903#endif
904
905#ifdef __MigPackStructs
906#pragma pack(4)
907#endif
908 typedef struct {
909 mach_msg_header_t Head;
910 NDR_record_t NDR;
911 int table_entries;
912 } __Request__task_set_port_space_t __attribute__((unused));
913#ifdef __MigPackStructs
914#pragma pack()
915#endif
916
917#ifdef __MigPackStructs
918#pragma pack(4)
919#endif
920 typedef struct {
921 mach_msg_header_t Head;
922 NDR_record_t NDR;
923 mach_port_name_t name;
924 } __Request__mach_port_get_srights_t __attribute__((unused));
925#ifdef __MigPackStructs
926#pragma pack()
927#endif
928
929#ifdef __MigPackStructs
930#pragma pack(4)
931#endif
932 typedef struct {
933 mach_msg_header_t Head;
934 } __Request__mach_port_space_info_t __attribute__((unused));
935#ifdef __MigPackStructs
936#pragma pack()
937#endif
938
939#ifdef __MigPackStructs
940#pragma pack(4)
941#endif
942 typedef struct {
943 mach_msg_header_t Head;
944 NDR_record_t NDR;
945 mach_port_name_t name;
946 } __Request__mach_port_dnrequest_info_t __attribute__((unused));
947#ifdef __MigPackStructs
948#pragma pack()
949#endif
950
951#ifdef __MigPackStructs
952#pragma pack(4)
953#endif
954 typedef struct {
955 mach_msg_header_t Head;
956 NDR_record_t NDR;
957 mach_port_name_t name;
958 } __Request__mach_port_kernel_object_t __attribute__((unused));
959#ifdef __MigPackStructs
960#pragma pack()
961#endif
962
963#ifdef __MigPackStructs
964#pragma pack(4)
965#endif
966 typedef struct {
967 mach_msg_header_t Head;
968 NDR_record_t NDR;
969 mach_port_name_t name;
970 mach_port_name_t pset;
971 } __Request__mach_port_insert_member_t __attribute__((unused));
972#ifdef __MigPackStructs
973#pragma pack()
974#endif
975
976#ifdef __MigPackStructs
977#pragma pack(4)
978#endif
979 typedef struct {
980 mach_msg_header_t Head;
981 NDR_record_t NDR;
982 mach_port_name_t name;
983 mach_port_name_t pset;
984 } __Request__mach_port_extract_member_t __attribute__((unused));
985#ifdef __MigPackStructs
986#pragma pack()
987#endif
988
989#ifdef __MigPackStructs
990#pragma pack(4)
991#endif
992 typedef struct {
993 mach_msg_header_t Head;
994 NDR_record_t NDR;
995 mach_port_name_t name;
996 } __Request__mach_port_get_context_t __attribute__((unused));
997#ifdef __MigPackStructs
998#pragma pack()
999#endif
1000
1001#ifdef __MigPackStructs
1002#pragma pack(4)
1003#endif
1004 typedef struct {
1005 mach_msg_header_t Head;
1006 NDR_record_t NDR;
1007 mach_port_name_t name;
1008 mach_vm_address_t context;
1009 } __Request__mach_port_set_context_t __attribute__((unused));
1010#ifdef __MigPackStructs
1011#pragma pack()
1012#endif
1013
1014#ifdef __MigPackStructs
1015#pragma pack(4)
1016#endif
1017 typedef struct {
1018 mach_msg_header_t Head;
1019 NDR_record_t NDR;
1020 mach_port_name_t name;
1021 } __Request__mach_port_kobject_t __attribute__((unused));
1022#ifdef __MigPackStructs
1023#pragma pack()
1024#endif
1025
1026#ifdef __MigPackStructs
1027#pragma pack(4)
1028#endif
1029 typedef struct {
1030 mach_msg_header_t Head;
1031 /* start of the kernel processed data */
1032 mach_msg_body_t msgh_body;
1033 mach_msg_ool_descriptor_t options;
1034 /* end of the kernel processed data */
1035 NDR_record_t NDR;
1036 uint64_t context;
1037 } __Request__mach_port_construct_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 NDR_record_t NDR;
1048 mach_port_name_t name;
1049 mach_port_delta_t srdelta;
1050 uint64_t guard;
1051 } __Request__mach_port_destruct_t __attribute__((unused));
1052#ifdef __MigPackStructs
1053#pragma pack()
1054#endif
1055
1056#ifdef __MigPackStructs
1057#pragma pack(4)
1058#endif
1059 typedef struct {
1060 mach_msg_header_t Head;
1061 NDR_record_t NDR;
1062 mach_port_name_t name;
1063 uint64_t guard;
1064 boolean_t strict;
1065 } __Request__mach_port_guard_t __attribute__((unused));
1066#ifdef __MigPackStructs
1067#pragma pack()
1068#endif
1069
1070#ifdef __MigPackStructs
1071#pragma pack(4)
1072#endif
1073 typedef struct {
1074 mach_msg_header_t Head;
1075 NDR_record_t NDR;
1076 mach_port_name_t name;
1077 uint64_t guard;
1078 } __Request__mach_port_unguard_t __attribute__((unused));
1079#ifdef __MigPackStructs
1080#pragma pack()
1081#endif
1082
1083#ifdef __MigPackStructs
1084#pragma pack(4)
1085#endif
1086 typedef struct {
1087 mach_msg_header_t Head;
1088 } __Request__mach_port_space_basic_info_t __attribute__((unused));
1089#ifdef __MigPackStructs
1090#pragma pack()
1091#endif
1092
1093#ifdef __MigPackStructs
1094#pragma pack(4)
1095#endif
1096 typedef struct {
1097 mach_msg_header_t Head;
1098 NDR_record_t NDR;
1099 mach_port_name_t name;
1100 } __Request__mach_port_special_reply_port_reset_link_t __attribute__((unused));
1101#ifdef __MigPackStructs
1102#pragma pack()
1103#endif
1104#endif /* !__Request__mach_port_subsystem__defined */
1105
1106
1107/* union of all requests */
1108
1109#ifndef __RequestUnion__mach_port_subsystem__defined
1110#define __RequestUnion__mach_port_subsystem__defined
1111union __RequestUnion__mach_port_subsystem {
1112 __Request__mach_port_names_t Request_mach_port_names;
1113 __Request__mach_port_type_t Request_mach_port_type;
1114 __Request__mach_port_rename_t Request_mach_port_rename;
1115 __Request__mach_port_allocate_name_t Request_mach_port_allocate_name;
1116 __Request__mach_port_allocate_t Request_mach_port_allocate;
1117 __Request__mach_port_destroy_t Request_mach_port_destroy;
1118 __Request__mach_port_deallocate_t Request_mach_port_deallocate;
1119 __Request__mach_port_get_refs_t Request_mach_port_get_refs;
1120 __Request__mach_port_mod_refs_t Request_mach_port_mod_refs;
1121 __Request__mach_port_peek_t Request_mach_port_peek;
1122 __Request__mach_port_set_mscount_t Request_mach_port_set_mscount;
1123 __Request__mach_port_get_set_status_t Request_mach_port_get_set_status;
1124 __Request__mach_port_move_member_t Request_mach_port_move_member;
1125 __Request__mach_port_request_notification_t Request_mach_port_request_notification;
1126 __Request__mach_port_insert_right_t Request_mach_port_insert_right;
1127 __Request__mach_port_extract_right_t Request_mach_port_extract_right;
1128 __Request__mach_port_set_seqno_t Request_mach_port_set_seqno;
1129 __Request__mach_port_get_attributes_t Request_mach_port_get_attributes;
1130 __Request__mach_port_set_attributes_t Request_mach_port_set_attributes;
1131 __Request__mach_port_allocate_qos_t Request_mach_port_allocate_qos;
1132 __Request__mach_port_allocate_full_t Request_mach_port_allocate_full;
1133 __Request__task_set_port_space_t Request_task_set_port_space;
1134 __Request__mach_port_get_srights_t Request_mach_port_get_srights;
1135 __Request__mach_port_space_info_t Request_mach_port_space_info;
1136 __Request__mach_port_dnrequest_info_t Request_mach_port_dnrequest_info;
1137 __Request__mach_port_kernel_object_t Request_mach_port_kernel_object;
1138 __Request__mach_port_insert_member_t Request_mach_port_insert_member;
1139 __Request__mach_port_extract_member_t Request_mach_port_extract_member;
1140 __Request__mach_port_get_context_t Request_mach_port_get_context;
1141 __Request__mach_port_set_context_t Request_mach_port_set_context;
1142 __Request__mach_port_kobject_t Request_mach_port_kobject;
1143 __Request__mach_port_construct_t Request_mach_port_construct;
1144 __Request__mach_port_destruct_t Request_mach_port_destruct;
1145 __Request__mach_port_guard_t Request_mach_port_guard;
1146 __Request__mach_port_unguard_t Request_mach_port_unguard;
1147 __Request__mach_port_space_basic_info_t Request_mach_port_space_basic_info;
1148 __Request__mach_port_special_reply_port_reset_link_t Request_mach_port_special_reply_port_reset_link;
1149};
1150#endif /* __RequestUnion__mach_port_subsystem__defined */
1151/* typedefs for all replies */
1152
1153#ifndef __Reply__mach_port_subsystem__defined
1154#define __Reply__mach_port_subsystem__defined
1155
1156#ifdef __MigPackStructs
1157#pragma pack(4)
1158#endif
1159 typedef struct {
1160 mach_msg_header_t Head;
1161 /* start of the kernel processed data */
1162 mach_msg_body_t msgh_body;
1163 mach_msg_ool_descriptor_t names;
1164 mach_msg_ool_descriptor_t types;
1165 /* end of the kernel processed data */
1166 NDR_record_t NDR;
1167 mach_msg_type_number_t namesCnt;
1168 mach_msg_type_number_t typesCnt;
1169 } __Reply__mach_port_names_t __attribute__((unused));
1170#ifdef __MigPackStructs
1171#pragma pack()
1172#endif
1173
1174#ifdef __MigPackStructs
1175#pragma pack(4)
1176#endif
1177 typedef struct {
1178 mach_msg_header_t Head;
1179 NDR_record_t NDR;
1180 kern_return_t RetCode;
1181 mach_port_type_t ptype;
1182 } __Reply__mach_port_type_t __attribute__((unused));
1183#ifdef __MigPackStructs
1184#pragma pack()
1185#endif
1186
1187#ifdef __MigPackStructs
1188#pragma pack(4)
1189#endif
1190 typedef struct {
1191 mach_msg_header_t Head;
1192 NDR_record_t NDR;
1193 kern_return_t RetCode;
1194 } __Reply__mach_port_rename_t __attribute__((unused));
1195#ifdef __MigPackStructs
1196#pragma pack()
1197#endif
1198
1199#ifdef __MigPackStructs
1200#pragma pack(4)
1201#endif
1202 typedef struct {
1203 mach_msg_header_t Head;
1204 NDR_record_t NDR;
1205 kern_return_t RetCode;
1206 } __Reply__mach_port_allocate_name_t __attribute__((unused));
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 NDR_record_t NDR;
1217 kern_return_t RetCode;
1218 mach_port_name_t name;
1219 } __Reply__mach_port_allocate_t __attribute__((unused));
1220#ifdef __MigPackStructs
1221#pragma pack()
1222#endif
1223
1224#ifdef __MigPackStructs
1225#pragma pack(4)
1226#endif
1227 typedef struct {
1228 mach_msg_header_t Head;
1229 NDR_record_t NDR;
1230 kern_return_t RetCode;
1231 } __Reply__mach_port_destroy_t __attribute__((unused));
1232#ifdef __MigPackStructs
1233#pragma pack()
1234#endif
1235
1236#ifdef __MigPackStructs
1237#pragma pack(4)
1238#endif
1239 typedef struct {
1240 mach_msg_header_t Head;
1241 NDR_record_t NDR;
1242 kern_return_t RetCode;
1243 } __Reply__mach_port_deallocate_t __attribute__((unused));
1244#ifdef __MigPackStructs
1245#pragma pack()
1246#endif
1247
1248#ifdef __MigPackStructs
1249#pragma pack(4)
1250#endif
1251 typedef struct {
1252 mach_msg_header_t Head;
1253 NDR_record_t NDR;
1254 kern_return_t RetCode;
1255 mach_port_urefs_t refs;
1256 } __Reply__mach_port_get_refs_t __attribute__((unused));
1257#ifdef __MigPackStructs
1258#pragma pack()
1259#endif
1260
1261#ifdef __MigPackStructs
1262#pragma pack(4)
1263#endif
1264 typedef struct {
1265 mach_msg_header_t Head;
1266 NDR_record_t NDR;
1267 kern_return_t RetCode;
1268 } __Reply__mach_port_mod_refs_t __attribute__((unused));
1269#ifdef __MigPackStructs
1270#pragma pack()
1271#endif
1272
1273#ifdef __MigPackStructs
1274#pragma pack(4)
1275#endif
1276 typedef struct {
1277 mach_msg_header_t Head;
1278 NDR_record_t NDR;
1279 kern_return_t RetCode;
1280 mach_port_seqno_t request_seqnop;
1281 mach_msg_size_t msg_sizep;
1282 mach_msg_id_t msg_idp;
1283 mach_msg_type_number_t trailer_infopCnt;
1284 char trailer_infop[68];
1285 } __Reply__mach_port_peek_t __attribute__((unused));
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 NDR_record_t NDR;
1296 kern_return_t RetCode;
1297 } __Reply__mach_port_set_mscount_t __attribute__((unused));
1298#ifdef __MigPackStructs
1299#pragma pack()
1300#endif
1301
1302#ifdef __MigPackStructs
1303#pragma pack(4)
1304#endif
1305 typedef struct {
1306 mach_msg_header_t Head;
1307 /* start of the kernel processed data */
1308 mach_msg_body_t msgh_body;
1309 mach_msg_ool_descriptor_t members;
1310 /* end of the kernel processed data */
1311 NDR_record_t NDR;
1312 mach_msg_type_number_t membersCnt;
1313 } __Reply__mach_port_get_set_status_t __attribute__((unused));
1314#ifdef __MigPackStructs
1315#pragma pack()
1316#endif
1317
1318#ifdef __MigPackStructs
1319#pragma pack(4)
1320#endif
1321 typedef struct {
1322 mach_msg_header_t Head;
1323 NDR_record_t NDR;
1324 kern_return_t RetCode;
1325 } __Reply__mach_port_move_member_t __attribute__((unused));
1326#ifdef __MigPackStructs
1327#pragma pack()
1328#endif
1329
1330#ifdef __MigPackStructs
1331#pragma pack(4)
1332#endif
1333 typedef struct {
1334 mach_msg_header_t Head;
1335 /* start of the kernel processed data */
1336 mach_msg_body_t msgh_body;
1337 mach_msg_port_descriptor_t previous;
1338 /* end of the kernel processed data */
1339 } __Reply__mach_port_request_notification_t __attribute__((unused));
1340#ifdef __MigPackStructs
1341#pragma pack()
1342#endif
1343
1344#ifdef __MigPackStructs
1345#pragma pack(4)
1346#endif
1347 typedef struct {
1348 mach_msg_header_t Head;
1349 NDR_record_t NDR;
1350 kern_return_t RetCode;
1351 } __Reply__mach_port_insert_right_t __attribute__((unused));
1352#ifdef __MigPackStructs
1353#pragma pack()
1354#endif
1355
1356#ifdef __MigPackStructs
1357#pragma pack(4)
1358#endif
1359 typedef struct {
1360 mach_msg_header_t Head;
1361 /* start of the kernel processed data */
1362 mach_msg_body_t msgh_body;
1363 mach_msg_port_descriptor_t poly;
1364 /* end of the kernel processed data */
1365 } __Reply__mach_port_extract_right_t __attribute__((unused));
1366#ifdef __MigPackStructs
1367#pragma pack()
1368#endif
1369
1370#ifdef __MigPackStructs
1371#pragma pack(4)
1372#endif
1373 typedef struct {
1374 mach_msg_header_t Head;
1375 NDR_record_t NDR;
1376 kern_return_t RetCode;
1377 } __Reply__mach_port_set_seqno_t __attribute__((unused));
1378#ifdef __MigPackStructs
1379#pragma pack()
1380#endif
1381
1382#ifdef __MigPackStructs
1383#pragma pack(4)
1384#endif
1385 typedef struct {
1386 mach_msg_header_t Head;
1387 NDR_record_t NDR;
1388 kern_return_t RetCode;
1389 mach_msg_type_number_t port_info_outCnt;
1390 integer_t port_info_out[17];
1391 } __Reply__mach_port_get_attributes_t __attribute__((unused));
1392#ifdef __MigPackStructs
1393#pragma pack()
1394#endif
1395
1396#ifdef __MigPackStructs
1397#pragma pack(4)
1398#endif
1399 typedef struct {
1400 mach_msg_header_t Head;
1401 NDR_record_t NDR;
1402 kern_return_t RetCode;
1403 } __Reply__mach_port_set_attributes_t __attribute__((unused));
1404#ifdef __MigPackStructs
1405#pragma pack()
1406#endif
1407
1408#ifdef __MigPackStructs
1409#pragma pack(4)
1410#endif
1411 typedef struct {
1412 mach_msg_header_t Head;
1413 NDR_record_t NDR;
1414 kern_return_t RetCode;
1415 mach_port_qos_t qos;
1416 mach_port_name_t name;
1417 } __Reply__mach_port_allocate_qos_t __attribute__((unused));
1418#ifdef __MigPackStructs
1419#pragma pack()
1420#endif
1421
1422#ifdef __MigPackStructs
1423#pragma pack(4)
1424#endif
1425 typedef struct {
1426 mach_msg_header_t Head;
1427 NDR_record_t NDR;
1428 kern_return_t RetCode;
1429 mach_port_qos_t qos;
1430 mach_port_name_t name;
1431 } __Reply__mach_port_allocate_full_t __attribute__((unused));
1432#ifdef __MigPackStructs
1433#pragma pack()
1434#endif
1435
1436#ifdef __MigPackStructs
1437#pragma pack(4)
1438#endif
1439 typedef struct {
1440 mach_msg_header_t Head;
1441 NDR_record_t NDR;
1442 kern_return_t RetCode;
1443 } __Reply__task_set_port_space_t __attribute__((unused));
1444#ifdef __MigPackStructs
1445#pragma pack()
1446#endif
1447
1448#ifdef __MigPackStructs
1449#pragma pack(4)
1450#endif
1451 typedef struct {
1452 mach_msg_header_t Head;
1453 NDR_record_t NDR;
1454 kern_return_t RetCode;
1455 mach_port_rights_t srights;
1456 } __Reply__mach_port_get_srights_t __attribute__((unused));
1457#ifdef __MigPackStructs
1458#pragma pack()
1459#endif
1460
1461#ifdef __MigPackStructs
1462#pragma pack(4)
1463#endif
1464 typedef struct {
1465 mach_msg_header_t Head;
1466 /* start of the kernel processed data */
1467 mach_msg_body_t msgh_body;
1468 mach_msg_ool_descriptor_t table_info;
1469 mach_msg_ool_descriptor_t tree_info;
1470 /* end of the kernel processed data */
1471 NDR_record_t NDR;
1472 ipc_info_space_t space_info;
1473 mach_msg_type_number_t table_infoCnt;
1474 mach_msg_type_number_t tree_infoCnt;
1475 } __Reply__mach_port_space_info_t __attribute__((unused));
1476#ifdef __MigPackStructs
1477#pragma pack()
1478#endif
1479
1480#ifdef __MigPackStructs
1481#pragma pack(4)
1482#endif
1483 typedef struct {
1484 mach_msg_header_t Head;
1485 NDR_record_t NDR;
1486 kern_return_t RetCode;
1487 unsigned dnr_total;
1488 unsigned dnr_used;
1489 } __Reply__mach_port_dnrequest_info_t __attribute__((unused));
1490#ifdef __MigPackStructs
1491#pragma pack()
1492#endif
1493
1494#ifdef __MigPackStructs
1495#pragma pack(4)
1496#endif
1497 typedef struct {
1498 mach_msg_header_t Head;
1499 NDR_record_t NDR;
1500 kern_return_t RetCode;
1501 unsigned object_type;
1502 unsigned object_addr;
1503 } __Reply__mach_port_kernel_object_t __attribute__((unused));
1504#ifdef __MigPackStructs
1505#pragma pack()
1506#endif
1507
1508#ifdef __MigPackStructs
1509#pragma pack(4)
1510#endif
1511 typedef struct {
1512 mach_msg_header_t Head;
1513 NDR_record_t NDR;
1514 kern_return_t RetCode;
1515 } __Reply__mach_port_insert_member_t __attribute__((unused));
1516#ifdef __MigPackStructs
1517#pragma pack()
1518#endif
1519
1520#ifdef __MigPackStructs
1521#pragma pack(4)
1522#endif
1523 typedef struct {
1524 mach_msg_header_t Head;
1525 NDR_record_t NDR;
1526 kern_return_t RetCode;
1527 } __Reply__mach_port_extract_member_t __attribute__((unused));
1528#ifdef __MigPackStructs
1529#pragma pack()
1530#endif
1531
1532#ifdef __MigPackStructs
1533#pragma pack(4)
1534#endif
1535 typedef struct {
1536 mach_msg_header_t Head;
1537 NDR_record_t NDR;
1538 kern_return_t RetCode;
1539 mach_vm_address_t context;
1540 } __Reply__mach_port_get_context_t __attribute__((unused));
1541#ifdef __MigPackStructs
1542#pragma pack()
1543#endif
1544
1545#ifdef __MigPackStructs
1546#pragma pack(4)
1547#endif
1548 typedef struct {
1549 mach_msg_header_t Head;
1550 NDR_record_t NDR;
1551 kern_return_t RetCode;
1552 } __Reply__mach_port_set_context_t __attribute__((unused));
1553#ifdef __MigPackStructs
1554#pragma pack()
1555#endif
1556
1557#ifdef __MigPackStructs
1558#pragma pack(4)
1559#endif
1560 typedef struct {
1561 mach_msg_header_t Head;
1562 NDR_record_t NDR;
1563 kern_return_t RetCode;
1564 natural_t object_type;
1565 mach_vm_address_t object_addr;
1566 } __Reply__mach_port_kobject_t __attribute__((unused));
1567#ifdef __MigPackStructs
1568#pragma pack()
1569#endif
1570
1571#ifdef __MigPackStructs
1572#pragma pack(4)
1573#endif
1574 typedef struct {
1575 mach_msg_header_t Head;
1576 NDR_record_t NDR;
1577 kern_return_t RetCode;
1578 mach_port_name_t name;
1579 } __Reply__mach_port_construct_t __attribute__((unused));
1580#ifdef __MigPackStructs
1581#pragma pack()
1582#endif
1583
1584#ifdef __MigPackStructs
1585#pragma pack(4)
1586#endif
1587 typedef struct {
1588 mach_msg_header_t Head;
1589 NDR_record_t NDR;
1590 kern_return_t RetCode;
1591 } __Reply__mach_port_destruct_t __attribute__((unused));
1592#ifdef __MigPackStructs
1593#pragma pack()
1594#endif
1595
1596#ifdef __MigPackStructs
1597#pragma pack(4)
1598#endif
1599 typedef struct {
1600 mach_msg_header_t Head;
1601 NDR_record_t NDR;
1602 kern_return_t RetCode;
1603 } __Reply__mach_port_guard_t __attribute__((unused));
1604#ifdef __MigPackStructs
1605#pragma pack()
1606#endif
1607
1608#ifdef __MigPackStructs
1609#pragma pack(4)
1610#endif
1611 typedef struct {
1612 mach_msg_header_t Head;
1613 NDR_record_t NDR;
1614 kern_return_t RetCode;
1615 } __Reply__mach_port_unguard_t __attribute__((unused));
1616#ifdef __MigPackStructs
1617#pragma pack()
1618#endif
1619
1620#ifdef __MigPackStructs
1621#pragma pack(4)
1622#endif
1623 typedef struct {
1624 mach_msg_header_t Head;
1625 NDR_record_t NDR;
1626 kern_return_t RetCode;
1627 ipc_info_space_basic_t basic_info;
1628 } __Reply__mach_port_space_basic_info_t __attribute__((unused));
1629#ifdef __MigPackStructs
1630#pragma pack()
1631#endif
1632
1633#ifdef __MigPackStructs
1634#pragma pack(4)
1635#endif
1636 typedef struct {
1637 mach_msg_header_t Head;
1638 NDR_record_t NDR;
1639 kern_return_t RetCode;
1640 boolean_t srp_lost_link;
1641 } __Reply__mach_port_special_reply_port_reset_link_t __attribute__((unused));
1642#ifdef __MigPackStructs
1643#pragma pack()
1644#endif
1645#endif /* !__Reply__mach_port_subsystem__defined */
1646
1647
1648/* union of all replies */
1649
1650#ifndef __ReplyUnion__mach_port_subsystem__defined
1651#define __ReplyUnion__mach_port_subsystem__defined
1652union __ReplyUnion__mach_port_subsystem {
1653 __Reply__mach_port_names_t Reply_mach_port_names;
1654 __Reply__mach_port_type_t Reply_mach_port_type;
1655 __Reply__mach_port_rename_t Reply_mach_port_rename;
1656 __Reply__mach_port_allocate_name_t Reply_mach_port_allocate_name;
1657 __Reply__mach_port_allocate_t Reply_mach_port_allocate;
1658 __Reply__mach_port_destroy_t Reply_mach_port_destroy;
1659 __Reply__mach_port_deallocate_t Reply_mach_port_deallocate;
1660 __Reply__mach_port_get_refs_t Reply_mach_port_get_refs;
1661 __Reply__mach_port_mod_refs_t Reply_mach_port_mod_refs;
1662 __Reply__mach_port_peek_t Reply_mach_port_peek;
1663 __Reply__mach_port_set_mscount_t Reply_mach_port_set_mscount;
1664 __Reply__mach_port_get_set_status_t Reply_mach_port_get_set_status;
1665 __Reply__mach_port_move_member_t Reply_mach_port_move_member;
1666 __Reply__mach_port_request_notification_t Reply_mach_port_request_notification;
1667 __Reply__mach_port_insert_right_t Reply_mach_port_insert_right;
1668 __Reply__mach_port_extract_right_t Reply_mach_port_extract_right;
1669 __Reply__mach_port_set_seqno_t Reply_mach_port_set_seqno;
1670 __Reply__mach_port_get_attributes_t Reply_mach_port_get_attributes;
1671 __Reply__mach_port_set_attributes_t Reply_mach_port_set_attributes;
1672 __Reply__mach_port_allocate_qos_t Reply_mach_port_allocate_qos;
1673 __Reply__mach_port_allocate_full_t Reply_mach_port_allocate_full;
1674 __Reply__task_set_port_space_t Reply_task_set_port_space;
1675 __Reply__mach_port_get_srights_t Reply_mach_port_get_srights;
1676 __Reply__mach_port_space_info_t Reply_mach_port_space_info;
1677 __Reply__mach_port_dnrequest_info_t Reply_mach_port_dnrequest_info;
1678 __Reply__mach_port_kernel_object_t Reply_mach_port_kernel_object;
1679 __Reply__mach_port_insert_member_t Reply_mach_port_insert_member;
1680 __Reply__mach_port_extract_member_t Reply_mach_port_extract_member;
1681 __Reply__mach_port_get_context_t Reply_mach_port_get_context;
1682 __Reply__mach_port_set_context_t Reply_mach_port_set_context;
1683 __Reply__mach_port_kobject_t Reply_mach_port_kobject;
1684 __Reply__mach_port_construct_t Reply_mach_port_construct;
1685 __Reply__mach_port_destruct_t Reply_mach_port_destruct;
1686 __Reply__mach_port_guard_t Reply_mach_port_guard;
1687 __Reply__mach_port_unguard_t Reply_mach_port_unguard;
1688 __Reply__mach_port_space_basic_info_t Reply_mach_port_space_basic_info;
1689 __Reply__mach_port_special_reply_port_reset_link_t Reply_mach_port_special_reply_port_reset_link;
1690};
1691#endif /* __RequestUnion__mach_port_subsystem__defined */
1692
1693#ifndef subsystem_to_name_map_mach_port
1694#define subsystem_to_name_map_mach_port \
1695 { "mach_port_names", 3200 },\
1696 { "mach_port_type", 3201 },\
1697 { "mach_port_rename", 3202 },\
1698 { "mach_port_allocate_name", 3203 },\
1699 { "mach_port_allocate", 3204 },\
1700 { "mach_port_destroy", 3205 },\
1701 { "mach_port_deallocate", 3206 },\
1702 { "mach_port_get_refs", 3207 },\
1703 { "mach_port_mod_refs", 3208 },\
1704 { "mach_port_peek", 3209 },\
1705 { "mach_port_set_mscount", 3210 },\
1706 { "mach_port_get_set_status", 3211 },\
1707 { "mach_port_move_member", 3212 },\
1708 { "mach_port_request_notification", 3213 },\
1709 { "mach_port_insert_right", 3214 },\
1710 { "mach_port_extract_right", 3215 },\
1711 { "mach_port_set_seqno", 3216 },\
1712 { "mach_port_get_attributes", 3217 },\
1713 { "mach_port_set_attributes", 3218 },\
1714 { "mach_port_allocate_qos", 3219 },\
1715 { "mach_port_allocate_full", 3220 },\
1716 { "task_set_port_space", 3221 },\
1717 { "mach_port_get_srights", 3222 },\
1718 { "mach_port_space_info", 3223 },\
1719 { "mach_port_dnrequest_info", 3224 },\
1720 { "mach_port_kernel_object", 3225 },\
1721 { "mach_port_insert_member", 3226 },\
1722 { "mach_port_extract_member", 3227 },\
1723 { "mach_port_get_context", 3228 },\
1724 { "mach_port_set_context", 3229 },\
1725 { "mach_port_kobject", 3230 },\
1726 { "mach_port_construct", 3231 },\
1727 { "mach_port_destruct", 3232 },\
1728 { "mach_port_guard", 3233 },\
1729 { "mach_port_unguard", 3234 },\
1730 { "mach_port_space_basic_info", 3235 },\
1731 { "mach_port_special_reply_port_reset_link", 3236 }
1732#endif
1733
1734#ifdef __AfterMigServerHeader
1735__AfterMigServerHeader
1736#endif /* __AfterMigServerHeader */
1737
1738#endif /* _mach_port_server_ */
1739