master
1#ifndef _mach_port_user_
2#define _mach_port_user_
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#ifndef __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS_CSTRING_ATTR
29#define __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS_CSTRING_COUNTEDBY_ATTR(C) __unsafe_indexable
30#endif
31 extern int mig_strncpy_zerofill(char * dest, const char * src, int len) __attribute__((weak_import));
32#ifdef __cplusplus
33}
34#endif
35#endif /* __MIG_STRNCPY_ZEROFILL_FORWARD_TYPE_DECLS__ */
36#endif /* __has_include(<mach/mig_strncpy_zerofill_support.h>) */
37#endif /* __has_include */
38
39/* END MIG_STRNCPY_ZEROFILL CODE */
40
41
42#ifdef AUTOTEST
43#ifndef FUNCTION_PTR_T
44#define FUNCTION_PTR_T
45typedef void (*function_ptr_t)(mach_port_t, char *, mach_msg_type_number_t);
46typedef struct {
47 char * name;
48 function_ptr_t function;
49} function_table_entry;
50typedef function_table_entry *function_table_t;
51#endif /* FUNCTION_PTR_T */
52#endif /* AUTOTEST */
53
54#ifndef mach_port_MSG_COUNT
55#define mach_port_MSG_COUNT 43
56#endif /* mach_port_MSG_COUNT */
57
58#include <Availability.h>
59#include <mach/std_types.h>
60#include <mach/mig.h>
61#include <mach/mig.h>
62#include <mach/mach_types.h>
63#include <mach_debug/mach_debug_types.h>
64
65#ifdef __BeforeMigUserHeader
66__BeforeMigUserHeader
67#endif /* __BeforeMigUserHeader */
68
69#include <sys/cdefs.h>
70__BEGIN_DECLS
71
72
73/* Routine mach_port_names */
74#ifdef mig_external
75mig_external
76#else
77extern
78#endif /* mig_external */
79kern_return_t mach_port_names
80(
81 ipc_space_t task,
82 mach_port_name_array_t *names,
83 mach_msg_type_number_t *namesCnt,
84 mach_port_type_array_t *types,
85 mach_msg_type_number_t *typesCnt
86);
87
88/* Routine mach_port_type */
89#ifdef mig_external
90mig_external
91#else
92extern
93#endif /* mig_external */
94kern_return_t mach_port_type
95(
96 ipc_space_t task,
97 mach_port_name_t name,
98 mach_port_type_t *ptype
99);
100
101/* Routine mach_port_rename */
102#ifdef mig_external
103mig_external
104#else
105extern
106#endif /* mig_external */
107kern_return_t mach_port_rename
108(
109 ipc_space_t task,
110 mach_port_name_t old_name,
111 mach_port_name_t new_name
112);
113
114/* Routine mach_port_allocate_name */
115#ifdef mig_external
116mig_external
117#else
118extern
119#endif /* mig_external */
120__TVOS_PROHIBITED __WATCHOS_PROHIBITED
121kern_return_t mach_port_allocate_name
122(
123 ipc_space_t task,
124 mach_port_right_t right,
125 mach_port_name_t name
126);
127
128/* Routine mach_port_allocate */
129#ifdef mig_external
130mig_external
131#else
132extern
133#endif /* mig_external */
134kern_return_t mach_port_allocate
135(
136 ipc_space_t task,
137 mach_port_right_t right,
138 mach_port_name_t *name
139);
140
141/* Routine mach_port_destroy */
142#ifdef mig_external
143mig_external
144#else
145extern
146#endif /* mig_external */
147__API_DEPRECATED("Inherently unsafe API: instead manage rights with "
148 "mach_port_destruct(), mach_port_deallocate() or mach_port_mod_refs()",
149 macos(10.0, 12.0), ios(2.0, 15.0), tvos(9.0, 15.0), watchos(2.0, 8.0))
150kern_return_t mach_port_destroy
151(
152 ipc_space_t task,
153 mach_port_name_t name
154);
155
156/* Routine mach_port_deallocate */
157#ifdef mig_external
158mig_external
159#else
160extern
161#endif /* mig_external */
162kern_return_t mach_port_deallocate
163(
164 ipc_space_t task,
165 mach_port_name_t name
166);
167
168/* Routine mach_port_get_refs */
169#ifdef mig_external
170mig_external
171#else
172extern
173#endif /* mig_external */
174kern_return_t mach_port_get_refs
175(
176 ipc_space_t task,
177 mach_port_name_t name,
178 mach_port_right_t right,
179 mach_port_urefs_t *refs
180);
181
182/* Routine mach_port_mod_refs */
183#ifdef mig_external
184mig_external
185#else
186extern
187#endif /* mig_external */
188kern_return_t mach_port_mod_refs
189(
190 ipc_space_t task,
191 mach_port_name_t name,
192 mach_port_right_t right,
193 mach_port_delta_t delta
194);
195
196/* Routine mach_port_peek */
197#ifdef mig_external
198mig_external
199#else
200extern
201#endif /* mig_external */
202kern_return_t mach_port_peek
203(
204 ipc_space_t task,
205 mach_port_name_t name,
206 mach_msg_trailer_type_t trailer_type,
207 mach_port_seqno_t *request_seqnop,
208 mach_msg_size_t *msg_sizep,
209 mach_msg_id_t *msg_idp,
210 mach_msg_trailer_info_t trailer_infop,
211 mach_msg_type_number_t *trailer_infopCnt
212);
213
214/* Routine mach_port_set_mscount */
215#ifdef mig_external
216mig_external
217#else
218extern
219#endif /* mig_external */
220kern_return_t mach_port_set_mscount
221(
222 ipc_space_t task,
223 mach_port_name_t name,
224 mach_port_mscount_t mscount
225);
226
227/* Routine mach_port_get_set_status */
228#ifdef mig_external
229mig_external
230#else
231extern
232#endif /* mig_external */
233kern_return_t mach_port_get_set_status
234(
235 ipc_space_read_t task,
236 mach_port_name_t name,
237 mach_port_name_array_t *members,
238 mach_msg_type_number_t *membersCnt
239);
240
241/* Routine mach_port_move_member */
242#ifdef mig_external
243mig_external
244#else
245extern
246#endif /* mig_external */
247kern_return_t mach_port_move_member
248(
249 ipc_space_t task,
250 mach_port_name_t member,
251 mach_port_name_t after
252);
253
254/* Routine mach_port_request_notification */
255#ifdef mig_external
256mig_external
257#else
258extern
259#endif /* mig_external */
260kern_return_t mach_port_request_notification
261(
262 ipc_space_t task,
263 mach_port_name_t name,
264 mach_msg_id_t msgid,
265 mach_port_mscount_t sync,
266 mach_port_t notify,
267 mach_msg_type_name_t notifyPoly,
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_read_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 */
378__TVOS_PROHIBITED __WATCHOS_PROHIBITED
379kern_return_t task_set_port_space
380(
381 ipc_space_t task,
382 int table_entries
383);
384
385/* Routine mach_port_get_srights */
386#ifdef mig_external
387mig_external
388#else
389extern
390#endif /* mig_external */
391kern_return_t mach_port_get_srights
392(
393 ipc_space_t task,
394 mach_port_name_t name,
395 mach_port_rights_t *srights
396);
397
398/* Routine mach_port_space_info */
399#ifdef mig_external
400mig_external
401#else
402extern
403#endif /* mig_external */
404kern_return_t mach_port_space_info
405(
406 ipc_space_read_t space,
407 ipc_info_space_t *space_info,
408 ipc_info_name_array_t *table_info,
409 mach_msg_type_number_t *table_infoCnt,
410 ipc_info_tree_name_array_t *tree_info,
411 mach_msg_type_number_t *tree_infoCnt
412);
413
414/* Routine mach_port_dnrequest_info */
415#ifdef mig_external
416mig_external
417#else
418extern
419#endif /* mig_external */
420kern_return_t mach_port_dnrequest_info
421(
422 ipc_space_t task,
423 mach_port_name_t name,
424 unsigned *dnr_total,
425 unsigned *dnr_used
426);
427
428/* Routine mach_port_kernel_object */
429#ifdef mig_external
430mig_external
431#else
432extern
433#endif /* mig_external */
434kern_return_t mach_port_kernel_object
435(
436 ipc_space_read_t task,
437 mach_port_name_t name,
438 unsigned *object_type,
439 unsigned *object_addr
440);
441
442/* Routine mach_port_insert_member */
443#ifdef mig_external
444mig_external
445#else
446extern
447#endif /* mig_external */
448kern_return_t mach_port_insert_member
449(
450 ipc_space_t task,
451 mach_port_name_t name,
452 mach_port_name_t pset
453);
454
455/* Routine mach_port_extract_member */
456#ifdef mig_external
457mig_external
458#else
459extern
460#endif /* mig_external */
461kern_return_t mach_port_extract_member
462(
463 ipc_space_t task,
464 mach_port_name_t name,
465 mach_port_name_t pset
466);
467
468/* Routine mach_port_get_context */
469#ifdef mig_external
470mig_external
471#else
472extern
473#endif /* mig_external */
474kern_return_t mach_port_get_context
475(
476 ipc_space_read_t task,
477 mach_port_name_t name,
478 mach_port_context_t *context
479);
480
481/* Routine mach_port_set_context */
482#ifdef mig_external
483mig_external
484#else
485extern
486#endif /* mig_external */
487kern_return_t mach_port_set_context
488(
489 ipc_space_t task,
490 mach_port_name_t name,
491 mach_port_context_t context
492);
493
494/* Routine mach_port_kobject */
495#ifdef mig_external
496mig_external
497#else
498extern
499#endif /* mig_external */
500kern_return_t mach_port_kobject
501(
502 ipc_space_read_t task,
503 mach_port_name_t name,
504 ipc_info_object_type_t *object_type,
505 mach_vm_address_t *object_addr
506);
507
508/* Routine mach_port_construct */
509#ifdef mig_external
510mig_external
511#else
512extern
513#endif /* mig_external */
514kern_return_t mach_port_construct
515(
516 ipc_space_t task,
517 mach_port_options_ptr_t options,
518 mach_port_context_t context,
519 mach_port_name_t *name
520);
521
522/* Routine mach_port_destruct */
523#ifdef mig_external
524mig_external
525#else
526extern
527#endif /* mig_external */
528kern_return_t mach_port_destruct
529(
530 ipc_space_t task,
531 mach_port_name_t name,
532 mach_port_delta_t srdelta,
533 mach_port_context_t guard
534);
535
536/* Routine mach_port_guard */
537#ifdef mig_external
538mig_external
539#else
540extern
541#endif /* mig_external */
542kern_return_t mach_port_guard
543(
544 ipc_space_t task,
545 mach_port_name_t name,
546 mach_port_context_t guard,
547 boolean_t strict
548);
549
550/* Routine mach_port_unguard */
551#ifdef mig_external
552mig_external
553#else
554extern
555#endif /* mig_external */
556kern_return_t mach_port_unguard
557(
558 ipc_space_t task,
559 mach_port_name_t name,
560 mach_port_context_t guard
561);
562
563/* Routine mach_port_space_basic_info */
564#ifdef mig_external
565mig_external
566#else
567extern
568#endif /* mig_external */
569kern_return_t mach_port_space_basic_info
570(
571 ipc_space_inspect_t task,
572 ipc_info_space_basic_t *basic_info
573);
574
575/* Routine mach_port_guard_with_flags */
576#ifdef mig_external
577mig_external
578#else
579extern
580#endif /* mig_external */
581kern_return_t mach_port_guard_with_flags
582(
583 ipc_space_t task,
584 mach_port_name_t name,
585 mach_port_context_t guard,
586 uint64_t flags
587);
588
589/* Routine mach_port_swap_guard */
590#ifdef mig_external
591mig_external
592#else
593extern
594#endif /* mig_external */
595kern_return_t mach_port_swap_guard
596(
597 ipc_space_t task,
598 mach_port_name_t name,
599 mach_port_context_t old_guard,
600 mach_port_context_t new_guard
601);
602
603/* Routine mach_port_kobject_description */
604#ifdef mig_external
605mig_external
606#else
607extern
608#endif /* mig_external */
609kern_return_t mach_port_kobject_description
610(
611 ipc_space_read_t task,
612 mach_port_name_t name,
613 ipc_info_object_type_t *object_type,
614 mach_vm_address_t *object_addr,
615 kobject_description_t description
616);
617
618/* Routine mach_port_is_connection_for_service */
619#ifdef mig_external
620mig_external
621#else
622extern
623#endif /* mig_external */
624kern_return_t mach_port_is_connection_for_service
625(
626 ipc_space_t task,
627 mach_port_name_t connection_port,
628 mach_port_name_t service_port,
629 uint64_t *filter_policy_id
630);
631
632/* Routine mach_port_get_service_port_info */
633#ifdef mig_external
634mig_external
635#else
636extern
637#endif /* mig_external */
638kern_return_t mach_port_get_service_port_info
639(
640 ipc_space_read_t task,
641 mach_port_name_t name,
642 mach_service_port_info_data_t *sp_info_out
643);
644
645/* Routine mach_port_assert_attributes */
646#ifdef mig_external
647mig_external
648#else
649extern
650#endif /* mig_external */
651kern_return_t mach_port_assert_attributes
652(
653 ipc_space_t task,
654 mach_port_name_t name,
655 mach_port_flavor_t flavor,
656 mach_port_info_t info,
657 mach_msg_type_number_t infoCnt
658);
659
660__END_DECLS
661
662/********************** Caution **************************/
663/* The following data types should be used to calculate */
664/* maximum message sizes only. The actual message may be */
665/* smaller, and the position of the arguments within the */
666/* message layout may vary from what is presented here. */
667/* For example, if any of the arguments are variable- */
668/* sized, and less than the maximum is sent, the data */
669/* will be packed tight in the actual message to reduce */
670/* the presence of holes. */
671/********************** Caution **************************/
672
673/* typedefs for all requests */
674
675#ifndef __Request__mach_port_subsystem__defined
676#define __Request__mach_port_subsystem__defined
677
678#ifdef __MigPackStructs
679#pragma pack(push, 4)
680#endif
681 typedef struct {
682 mach_msg_header_t Head;
683 } __Request__mach_port_names_t __attribute__((unused));
684#ifdef __MigPackStructs
685#pragma pack(pop)
686#endif
687
688#ifdef __MigPackStructs
689#pragma pack(push, 4)
690#endif
691 typedef struct {
692 mach_msg_header_t Head;
693 NDR_record_t NDR;
694 mach_port_name_t name;
695 } __Request__mach_port_type_t __attribute__((unused));
696#ifdef __MigPackStructs
697#pragma pack(pop)
698#endif
699
700#ifdef __MigPackStructs
701#pragma pack(push, 4)
702#endif
703 typedef struct {
704 mach_msg_header_t Head;
705 NDR_record_t NDR;
706 mach_port_name_t old_name;
707 mach_port_name_t new_name;
708 } __Request__mach_port_rename_t __attribute__((unused));
709#ifdef __MigPackStructs
710#pragma pack(pop)
711#endif
712
713#ifdef __MigPackStructs
714#pragma pack(push, 4)
715#endif
716 typedef struct {
717 mach_msg_header_t Head;
718 NDR_record_t NDR;
719 mach_port_right_t right;
720 mach_port_name_t name;
721 } __Request__mach_port_allocate_name_t __attribute__((unused));
722#ifdef __MigPackStructs
723#pragma pack(pop)
724#endif
725
726#ifdef __MigPackStructs
727#pragma pack(push, 4)
728#endif
729 typedef struct {
730 mach_msg_header_t Head;
731 NDR_record_t NDR;
732 mach_port_right_t right;
733 } __Request__mach_port_allocate_t __attribute__((unused));
734#ifdef __MigPackStructs
735#pragma pack(pop)
736#endif
737
738#ifdef __MigPackStructs
739#pragma pack(push, 4)
740#endif
741 typedef struct {
742 mach_msg_header_t Head;
743 NDR_record_t NDR;
744 mach_port_name_t name;
745 } __Request__mach_port_destroy_t __attribute__((unused));
746#ifdef __MigPackStructs
747#pragma pack(pop)
748#endif
749
750#ifdef __MigPackStructs
751#pragma pack(push, 4)
752#endif
753 typedef struct {
754 mach_msg_header_t Head;
755 NDR_record_t NDR;
756 mach_port_name_t name;
757 } __Request__mach_port_deallocate_t __attribute__((unused));
758#ifdef __MigPackStructs
759#pragma pack(pop)
760#endif
761
762#ifdef __MigPackStructs
763#pragma pack(push, 4)
764#endif
765 typedef struct {
766 mach_msg_header_t Head;
767 NDR_record_t NDR;
768 mach_port_name_t name;
769 mach_port_right_t right;
770 } __Request__mach_port_get_refs_t __attribute__((unused));
771#ifdef __MigPackStructs
772#pragma pack(pop)
773#endif
774
775#ifdef __MigPackStructs
776#pragma pack(push, 4)
777#endif
778 typedef struct {
779 mach_msg_header_t Head;
780 NDR_record_t NDR;
781 mach_port_name_t name;
782 mach_port_right_t right;
783 mach_port_delta_t delta;
784 } __Request__mach_port_mod_refs_t __attribute__((unused));
785#ifdef __MigPackStructs
786#pragma pack(pop)
787#endif
788
789#ifdef __MigPackStructs
790#pragma pack(push, 4)
791#endif
792 typedef struct {
793 mach_msg_header_t Head;
794 NDR_record_t NDR;
795 mach_port_name_t name;
796 mach_msg_trailer_type_t trailer_type;
797 mach_port_seqno_t request_seqnop;
798 mach_msg_type_number_t trailer_infopCnt;
799 } __Request__mach_port_peek_t __attribute__((unused));
800#ifdef __MigPackStructs
801#pragma pack(pop)
802#endif
803
804#ifdef __MigPackStructs
805#pragma pack(push, 4)
806#endif
807 typedef struct {
808 mach_msg_header_t Head;
809 NDR_record_t NDR;
810 mach_port_name_t name;
811 mach_port_mscount_t mscount;
812 } __Request__mach_port_set_mscount_t __attribute__((unused));
813#ifdef __MigPackStructs
814#pragma pack(pop)
815#endif
816
817#ifdef __MigPackStructs
818#pragma pack(push, 4)
819#endif
820 typedef struct {
821 mach_msg_header_t Head;
822 NDR_record_t NDR;
823 mach_port_name_t name;
824 } __Request__mach_port_get_set_status_t __attribute__((unused));
825#ifdef __MigPackStructs
826#pragma pack(pop)
827#endif
828
829#ifdef __MigPackStructs
830#pragma pack(push, 4)
831#endif
832 typedef struct {
833 mach_msg_header_t Head;
834 NDR_record_t NDR;
835 mach_port_name_t member;
836 mach_port_name_t after;
837 } __Request__mach_port_move_member_t __attribute__((unused));
838#ifdef __MigPackStructs
839#pragma pack(pop)
840#endif
841
842#ifdef __MigPackStructs
843#pragma pack(push, 4)
844#endif
845 typedef struct {
846 mach_msg_header_t Head;
847 /* start of the kernel processed data */
848 mach_msg_body_t msgh_body;
849 mach_msg_port_descriptor_t notify;
850 /* end of the kernel processed data */
851 NDR_record_t NDR;
852 mach_port_name_t name;
853 mach_msg_id_t msgid;
854 mach_port_mscount_t sync;
855 } __Request__mach_port_request_notification_t __attribute__((unused));
856#ifdef __MigPackStructs
857#pragma pack(pop)
858#endif
859
860#ifdef __MigPackStructs
861#pragma pack(push, 4)
862#endif
863 typedef struct {
864 mach_msg_header_t Head;
865 /* start of the kernel processed data */
866 mach_msg_body_t msgh_body;
867 mach_msg_port_descriptor_t poly;
868 /* end of the kernel processed data */
869 NDR_record_t NDR;
870 mach_port_name_t name;
871 } __Request__mach_port_insert_right_t __attribute__((unused));
872#ifdef __MigPackStructs
873#pragma pack(pop)
874#endif
875
876#ifdef __MigPackStructs
877#pragma pack(push, 4)
878#endif
879 typedef struct {
880 mach_msg_header_t Head;
881 NDR_record_t NDR;
882 mach_port_name_t name;
883 mach_msg_type_name_t msgt_name;
884 } __Request__mach_port_extract_right_t __attribute__((unused));
885#ifdef __MigPackStructs
886#pragma pack(pop)
887#endif
888
889#ifdef __MigPackStructs
890#pragma pack(push, 4)
891#endif
892 typedef struct {
893 mach_msg_header_t Head;
894 NDR_record_t NDR;
895 mach_port_name_t name;
896 mach_port_seqno_t seqno;
897 } __Request__mach_port_set_seqno_t __attribute__((unused));
898#ifdef __MigPackStructs
899#pragma pack(pop)
900#endif
901
902#ifdef __MigPackStructs
903#pragma pack(push, 4)
904#endif
905 typedef struct {
906 mach_msg_header_t Head;
907 NDR_record_t NDR;
908 mach_port_name_t name;
909 mach_port_flavor_t flavor;
910 mach_msg_type_number_t port_info_outCnt;
911 } __Request__mach_port_get_attributes_t __attribute__((unused));
912#ifdef __MigPackStructs
913#pragma pack(pop)
914#endif
915
916#ifdef __MigPackStructs
917#pragma pack(push, 4)
918#endif
919 typedef struct {
920 mach_msg_header_t Head;
921 NDR_record_t NDR;
922 mach_port_name_t name;
923 mach_port_flavor_t flavor;
924 mach_msg_type_number_t port_infoCnt;
925 integer_t port_info[17];
926 } __Request__mach_port_set_attributes_t __attribute__((unused));
927#ifdef __MigPackStructs
928#pragma pack(pop)
929#endif
930
931#ifdef __MigPackStructs
932#pragma pack(push, 4)
933#endif
934 typedef struct {
935 mach_msg_header_t Head;
936 NDR_record_t NDR;
937 mach_port_right_t right;
938 mach_port_qos_t qos;
939 } __Request__mach_port_allocate_qos_t __attribute__((unused));
940#ifdef __MigPackStructs
941#pragma pack(pop)
942#endif
943
944#ifdef __MigPackStructs
945#pragma pack(push, 4)
946#endif
947 typedef struct {
948 mach_msg_header_t Head;
949 /* start of the kernel processed data */
950 mach_msg_body_t msgh_body;
951 mach_msg_port_descriptor_t proto;
952 /* end of the kernel processed data */
953 NDR_record_t NDR;
954 mach_port_right_t right;
955 mach_port_qos_t qos;
956 mach_port_name_t name;
957 } __Request__mach_port_allocate_full_t __attribute__((unused));
958#ifdef __MigPackStructs
959#pragma pack(pop)
960#endif
961
962#ifdef __MigPackStructs
963#pragma pack(push, 4)
964#endif
965 typedef struct {
966 mach_msg_header_t Head;
967 NDR_record_t NDR;
968 int table_entries;
969 } __Request__task_set_port_space_t __attribute__((unused));
970#ifdef __MigPackStructs
971#pragma pack(pop)
972#endif
973
974#ifdef __MigPackStructs
975#pragma pack(push, 4)
976#endif
977 typedef struct {
978 mach_msg_header_t Head;
979 NDR_record_t NDR;
980 mach_port_name_t name;
981 } __Request__mach_port_get_srights_t __attribute__((unused));
982#ifdef __MigPackStructs
983#pragma pack(pop)
984#endif
985
986#ifdef __MigPackStructs
987#pragma pack(push, 4)
988#endif
989 typedef struct {
990 mach_msg_header_t Head;
991 } __Request__mach_port_space_info_t __attribute__((unused));
992#ifdef __MigPackStructs
993#pragma pack(pop)
994#endif
995
996#ifdef __MigPackStructs
997#pragma pack(push, 4)
998#endif
999 typedef struct {
1000 mach_msg_header_t Head;
1001 NDR_record_t NDR;
1002 mach_port_name_t name;
1003 } __Request__mach_port_dnrequest_info_t __attribute__((unused));
1004#ifdef __MigPackStructs
1005#pragma pack(pop)
1006#endif
1007
1008#ifdef __MigPackStructs
1009#pragma pack(push, 4)
1010#endif
1011 typedef struct {
1012 mach_msg_header_t Head;
1013 NDR_record_t NDR;
1014 mach_port_name_t name;
1015 } __Request__mach_port_kernel_object_t __attribute__((unused));
1016#ifdef __MigPackStructs
1017#pragma pack(pop)
1018#endif
1019
1020#ifdef __MigPackStructs
1021#pragma pack(push, 4)
1022#endif
1023 typedef struct {
1024 mach_msg_header_t Head;
1025 NDR_record_t NDR;
1026 mach_port_name_t name;
1027 mach_port_name_t pset;
1028 } __Request__mach_port_insert_member_t __attribute__((unused));
1029#ifdef __MigPackStructs
1030#pragma pack(pop)
1031#endif
1032
1033#ifdef __MigPackStructs
1034#pragma pack(push, 4)
1035#endif
1036 typedef struct {
1037 mach_msg_header_t Head;
1038 NDR_record_t NDR;
1039 mach_port_name_t name;
1040 mach_port_name_t pset;
1041 } __Request__mach_port_extract_member_t __attribute__((unused));
1042#ifdef __MigPackStructs
1043#pragma pack(pop)
1044#endif
1045
1046#ifdef __MigPackStructs
1047#pragma pack(push, 4)
1048#endif
1049 typedef struct {
1050 mach_msg_header_t Head;
1051 NDR_record_t NDR;
1052 mach_port_name_t name;
1053 } __Request__mach_port_get_context_t __attribute__((unused));
1054#ifdef __MigPackStructs
1055#pragma pack(pop)
1056#endif
1057
1058#ifdef __MigPackStructs
1059#pragma pack(push, 4)
1060#endif
1061 typedef struct {
1062 mach_msg_header_t Head;
1063 NDR_record_t NDR;
1064 mach_port_name_t name;
1065 mach_port_context_t context;
1066 } __Request__mach_port_set_context_t __attribute__((unused));
1067#ifdef __MigPackStructs
1068#pragma pack(pop)
1069#endif
1070
1071#ifdef __MigPackStructs
1072#pragma pack(push, 4)
1073#endif
1074 typedef struct {
1075 mach_msg_header_t Head;
1076 NDR_record_t NDR;
1077 mach_port_name_t name;
1078 } __Request__mach_port_kobject_t __attribute__((unused));
1079#ifdef __MigPackStructs
1080#pragma pack(pop)
1081#endif
1082
1083#ifdef __MigPackStructs
1084#pragma pack(push, 4)
1085#endif
1086 typedef struct {
1087 mach_msg_header_t Head;
1088 /* start of the kernel processed data */
1089 mach_msg_body_t msgh_body;
1090 mach_msg_ool_descriptor_t options;
1091 /* end of the kernel processed data */
1092 NDR_record_t NDR;
1093 mach_port_context_t context;
1094 } __Request__mach_port_construct_t __attribute__((unused));
1095#ifdef __MigPackStructs
1096#pragma pack(pop)
1097#endif
1098
1099#ifdef __MigPackStructs
1100#pragma pack(push, 4)
1101#endif
1102 typedef struct {
1103 mach_msg_header_t Head;
1104 NDR_record_t NDR;
1105 mach_port_name_t name;
1106 mach_port_delta_t srdelta;
1107 mach_port_context_t guard;
1108 } __Request__mach_port_destruct_t __attribute__((unused));
1109#ifdef __MigPackStructs
1110#pragma pack(pop)
1111#endif
1112
1113#ifdef __MigPackStructs
1114#pragma pack(push, 4)
1115#endif
1116 typedef struct {
1117 mach_msg_header_t Head;
1118 NDR_record_t NDR;
1119 mach_port_name_t name;
1120 mach_port_context_t guard;
1121 boolean_t strict;
1122 } __Request__mach_port_guard_t __attribute__((unused));
1123#ifdef __MigPackStructs
1124#pragma pack(pop)
1125#endif
1126
1127#ifdef __MigPackStructs
1128#pragma pack(push, 4)
1129#endif
1130 typedef struct {
1131 mach_msg_header_t Head;
1132 NDR_record_t NDR;
1133 mach_port_name_t name;
1134 mach_port_context_t guard;
1135 } __Request__mach_port_unguard_t __attribute__((unused));
1136#ifdef __MigPackStructs
1137#pragma pack(pop)
1138#endif
1139
1140#ifdef __MigPackStructs
1141#pragma pack(push, 4)
1142#endif
1143 typedef struct {
1144 mach_msg_header_t Head;
1145 } __Request__mach_port_space_basic_info_t __attribute__((unused));
1146#ifdef __MigPackStructs
1147#pragma pack(pop)
1148#endif
1149
1150#ifdef __MigPackStructs
1151#pragma pack(push, 4)
1152#endif
1153 typedef struct {
1154 mach_msg_header_t Head;
1155 NDR_record_t NDR;
1156 mach_port_name_t name;
1157 mach_port_context_t guard;
1158 uint64_t flags;
1159 } __Request__mach_port_guard_with_flags_t __attribute__((unused));
1160#ifdef __MigPackStructs
1161#pragma pack(pop)
1162#endif
1163
1164#ifdef __MigPackStructs
1165#pragma pack(push, 4)
1166#endif
1167 typedef struct {
1168 mach_msg_header_t Head;
1169 NDR_record_t NDR;
1170 mach_port_name_t name;
1171 mach_port_context_t old_guard;
1172 mach_port_context_t new_guard;
1173 } __Request__mach_port_swap_guard_t __attribute__((unused));
1174#ifdef __MigPackStructs
1175#pragma pack(pop)
1176#endif
1177
1178#ifdef __MigPackStructs
1179#pragma pack(push, 4)
1180#endif
1181 typedef struct {
1182 mach_msg_header_t Head;
1183 NDR_record_t NDR;
1184 mach_port_name_t name;
1185 } __Request__mach_port_kobject_description_t __attribute__((unused));
1186#ifdef __MigPackStructs
1187#pragma pack(pop)
1188#endif
1189
1190#ifdef __MigPackStructs
1191#pragma pack(push, 4)
1192#endif
1193 typedef struct {
1194 mach_msg_header_t Head;
1195 NDR_record_t NDR;
1196 mach_port_name_t connection_port;
1197 mach_port_name_t service_port;
1198 } __Request__mach_port_is_connection_for_service_t __attribute__((unused));
1199#ifdef __MigPackStructs
1200#pragma pack(pop)
1201#endif
1202
1203#ifdef __MigPackStructs
1204#pragma pack(push, 4)
1205#endif
1206 typedef struct {
1207 mach_msg_header_t Head;
1208 NDR_record_t NDR;
1209 mach_port_name_t name;
1210 } __Request__mach_port_get_service_port_info_t __attribute__((unused));
1211#ifdef __MigPackStructs
1212#pragma pack(pop)
1213#endif
1214
1215#ifdef __MigPackStructs
1216#pragma pack(push, 4)
1217#endif
1218 typedef struct {
1219 mach_msg_header_t Head;
1220 NDR_record_t NDR;
1221 mach_port_name_t name;
1222 mach_port_flavor_t flavor;
1223 mach_msg_type_number_t infoCnt;
1224 integer_t info[17];
1225 } __Request__mach_port_assert_attributes_t __attribute__((unused));
1226#ifdef __MigPackStructs
1227#pragma pack(pop)
1228#endif
1229#endif /* !__Request__mach_port_subsystem__defined */
1230
1231/* union of all requests */
1232
1233#ifndef __RequestUnion__mach_port_subsystem__defined
1234#define __RequestUnion__mach_port_subsystem__defined
1235union __RequestUnion__mach_port_subsystem {
1236 __Request__mach_port_names_t Request_mach_port_names;
1237 __Request__mach_port_type_t Request_mach_port_type;
1238 __Request__mach_port_rename_t Request_mach_port_rename;
1239 __Request__mach_port_allocate_name_t Request_mach_port_allocate_name;
1240 __Request__mach_port_allocate_t Request_mach_port_allocate;
1241 __Request__mach_port_destroy_t Request_mach_port_destroy;
1242 __Request__mach_port_deallocate_t Request_mach_port_deallocate;
1243 __Request__mach_port_get_refs_t Request_mach_port_get_refs;
1244 __Request__mach_port_mod_refs_t Request_mach_port_mod_refs;
1245 __Request__mach_port_peek_t Request_mach_port_peek;
1246 __Request__mach_port_set_mscount_t Request_mach_port_set_mscount;
1247 __Request__mach_port_get_set_status_t Request_mach_port_get_set_status;
1248 __Request__mach_port_move_member_t Request_mach_port_move_member;
1249 __Request__mach_port_request_notification_t Request_mach_port_request_notification;
1250 __Request__mach_port_insert_right_t Request_mach_port_insert_right;
1251 __Request__mach_port_extract_right_t Request_mach_port_extract_right;
1252 __Request__mach_port_set_seqno_t Request_mach_port_set_seqno;
1253 __Request__mach_port_get_attributes_t Request_mach_port_get_attributes;
1254 __Request__mach_port_set_attributes_t Request_mach_port_set_attributes;
1255 __Request__mach_port_allocate_qos_t Request_mach_port_allocate_qos;
1256 __Request__mach_port_allocate_full_t Request_mach_port_allocate_full;
1257 __Request__task_set_port_space_t Request_task_set_port_space;
1258 __Request__mach_port_get_srights_t Request_mach_port_get_srights;
1259 __Request__mach_port_space_info_t Request_mach_port_space_info;
1260 __Request__mach_port_dnrequest_info_t Request_mach_port_dnrequest_info;
1261 __Request__mach_port_kernel_object_t Request_mach_port_kernel_object;
1262 __Request__mach_port_insert_member_t Request_mach_port_insert_member;
1263 __Request__mach_port_extract_member_t Request_mach_port_extract_member;
1264 __Request__mach_port_get_context_t Request_mach_port_get_context;
1265 __Request__mach_port_set_context_t Request_mach_port_set_context;
1266 __Request__mach_port_kobject_t Request_mach_port_kobject;
1267 __Request__mach_port_construct_t Request_mach_port_construct;
1268 __Request__mach_port_destruct_t Request_mach_port_destruct;
1269 __Request__mach_port_guard_t Request_mach_port_guard;
1270 __Request__mach_port_unguard_t Request_mach_port_unguard;
1271 __Request__mach_port_space_basic_info_t Request_mach_port_space_basic_info;
1272 __Request__mach_port_guard_with_flags_t Request_mach_port_guard_with_flags;
1273 __Request__mach_port_swap_guard_t Request_mach_port_swap_guard;
1274 __Request__mach_port_kobject_description_t Request_mach_port_kobject_description;
1275 __Request__mach_port_is_connection_for_service_t Request_mach_port_is_connection_for_service;
1276 __Request__mach_port_get_service_port_info_t Request_mach_port_get_service_port_info;
1277 __Request__mach_port_assert_attributes_t Request_mach_port_assert_attributes;
1278};
1279#endif /* !__RequestUnion__mach_port_subsystem__defined */
1280/* typedefs for all replies */
1281
1282#ifndef __Reply__mach_port_subsystem__defined
1283#define __Reply__mach_port_subsystem__defined
1284
1285#ifdef __MigPackStructs
1286#pragma pack(push, 4)
1287#endif
1288 typedef struct {
1289 mach_msg_header_t Head;
1290 /* start of the kernel processed data */
1291 mach_msg_body_t msgh_body;
1292 mach_msg_ool_descriptor_t names;
1293 mach_msg_ool_descriptor_t types;
1294 /* end of the kernel processed data */
1295 NDR_record_t NDR;
1296 mach_msg_type_number_t namesCnt;
1297 mach_msg_type_number_t typesCnt;
1298 } __Reply__mach_port_names_t __attribute__((unused));
1299#ifdef __MigPackStructs
1300#pragma pack(pop)
1301#endif
1302
1303#ifdef __MigPackStructs
1304#pragma pack(push, 4)
1305#endif
1306 typedef struct {
1307 mach_msg_header_t Head;
1308 NDR_record_t NDR;
1309 kern_return_t RetCode;
1310 mach_port_type_t ptype;
1311 } __Reply__mach_port_type_t __attribute__((unused));
1312#ifdef __MigPackStructs
1313#pragma pack(pop)
1314#endif
1315
1316#ifdef __MigPackStructs
1317#pragma pack(push, 4)
1318#endif
1319 typedef struct {
1320 mach_msg_header_t Head;
1321 NDR_record_t NDR;
1322 kern_return_t RetCode;
1323 } __Reply__mach_port_rename_t __attribute__((unused));
1324#ifdef __MigPackStructs
1325#pragma pack(pop)
1326#endif
1327
1328#ifdef __MigPackStructs
1329#pragma pack(push, 4)
1330#endif
1331 typedef struct {
1332 mach_msg_header_t Head;
1333 NDR_record_t NDR;
1334 kern_return_t RetCode;
1335 } __Reply__mach_port_allocate_name_t __attribute__((unused));
1336#ifdef __MigPackStructs
1337#pragma pack(pop)
1338#endif
1339
1340#ifdef __MigPackStructs
1341#pragma pack(push, 4)
1342#endif
1343 typedef struct {
1344 mach_msg_header_t Head;
1345 NDR_record_t NDR;
1346 kern_return_t RetCode;
1347 mach_port_name_t name;
1348 } __Reply__mach_port_allocate_t __attribute__((unused));
1349#ifdef __MigPackStructs
1350#pragma pack(pop)
1351#endif
1352
1353#ifdef __MigPackStructs
1354#pragma pack(push, 4)
1355#endif
1356 typedef struct {
1357 mach_msg_header_t Head;
1358 NDR_record_t NDR;
1359 kern_return_t RetCode;
1360 } __Reply__mach_port_destroy_t __attribute__((unused));
1361#ifdef __MigPackStructs
1362#pragma pack(pop)
1363#endif
1364
1365#ifdef __MigPackStructs
1366#pragma pack(push, 4)
1367#endif
1368 typedef struct {
1369 mach_msg_header_t Head;
1370 NDR_record_t NDR;
1371 kern_return_t RetCode;
1372 } __Reply__mach_port_deallocate_t __attribute__((unused));
1373#ifdef __MigPackStructs
1374#pragma pack(pop)
1375#endif
1376
1377#ifdef __MigPackStructs
1378#pragma pack(push, 4)
1379#endif
1380 typedef struct {
1381 mach_msg_header_t Head;
1382 NDR_record_t NDR;
1383 kern_return_t RetCode;
1384 mach_port_urefs_t refs;
1385 } __Reply__mach_port_get_refs_t __attribute__((unused));
1386#ifdef __MigPackStructs
1387#pragma pack(pop)
1388#endif
1389
1390#ifdef __MigPackStructs
1391#pragma pack(push, 4)
1392#endif
1393 typedef struct {
1394 mach_msg_header_t Head;
1395 NDR_record_t NDR;
1396 kern_return_t RetCode;
1397 } __Reply__mach_port_mod_refs_t __attribute__((unused));
1398#ifdef __MigPackStructs
1399#pragma pack(pop)
1400#endif
1401
1402#ifdef __MigPackStructs
1403#pragma pack(push, 4)
1404#endif
1405 typedef struct {
1406 mach_msg_header_t Head;
1407 NDR_record_t NDR;
1408 kern_return_t RetCode;
1409 mach_port_seqno_t request_seqnop;
1410 mach_msg_size_t msg_sizep;
1411 mach_msg_id_t msg_idp;
1412 mach_msg_type_number_t trailer_infopCnt;
1413 char trailer_infop[68];
1414 } __Reply__mach_port_peek_t __attribute__((unused));
1415#ifdef __MigPackStructs
1416#pragma pack(pop)
1417#endif
1418
1419#ifdef __MigPackStructs
1420#pragma pack(push, 4)
1421#endif
1422 typedef struct {
1423 mach_msg_header_t Head;
1424 NDR_record_t NDR;
1425 kern_return_t RetCode;
1426 } __Reply__mach_port_set_mscount_t __attribute__((unused));
1427#ifdef __MigPackStructs
1428#pragma pack(pop)
1429#endif
1430
1431#ifdef __MigPackStructs
1432#pragma pack(push, 4)
1433#endif
1434 typedef struct {
1435 mach_msg_header_t Head;
1436 /* start of the kernel processed data */
1437 mach_msg_body_t msgh_body;
1438 mach_msg_ool_descriptor_t members;
1439 /* end of the kernel processed data */
1440 NDR_record_t NDR;
1441 mach_msg_type_number_t membersCnt;
1442 } __Reply__mach_port_get_set_status_t __attribute__((unused));
1443#ifdef __MigPackStructs
1444#pragma pack(pop)
1445#endif
1446
1447#ifdef __MigPackStructs
1448#pragma pack(push, 4)
1449#endif
1450 typedef struct {
1451 mach_msg_header_t Head;
1452 NDR_record_t NDR;
1453 kern_return_t RetCode;
1454 } __Reply__mach_port_move_member_t __attribute__((unused));
1455#ifdef __MigPackStructs
1456#pragma pack(pop)
1457#endif
1458
1459#ifdef __MigPackStructs
1460#pragma pack(push, 4)
1461#endif
1462 typedef struct {
1463 mach_msg_header_t Head;
1464 /* start of the kernel processed data */
1465 mach_msg_body_t msgh_body;
1466 mach_msg_port_descriptor_t previous;
1467 /* end of the kernel processed data */
1468 } __Reply__mach_port_request_notification_t __attribute__((unused));
1469#ifdef __MigPackStructs
1470#pragma pack(pop)
1471#endif
1472
1473#ifdef __MigPackStructs
1474#pragma pack(push, 4)
1475#endif
1476 typedef struct {
1477 mach_msg_header_t Head;
1478 NDR_record_t NDR;
1479 kern_return_t RetCode;
1480 } __Reply__mach_port_insert_right_t __attribute__((unused));
1481#ifdef __MigPackStructs
1482#pragma pack(pop)
1483#endif
1484
1485#ifdef __MigPackStructs
1486#pragma pack(push, 4)
1487#endif
1488 typedef struct {
1489 mach_msg_header_t Head;
1490 /* start of the kernel processed data */
1491 mach_msg_body_t msgh_body;
1492 mach_msg_port_descriptor_t poly;
1493 /* end of the kernel processed data */
1494 } __Reply__mach_port_extract_right_t __attribute__((unused));
1495#ifdef __MigPackStructs
1496#pragma pack(pop)
1497#endif
1498
1499#ifdef __MigPackStructs
1500#pragma pack(push, 4)
1501#endif
1502 typedef struct {
1503 mach_msg_header_t Head;
1504 NDR_record_t NDR;
1505 kern_return_t RetCode;
1506 } __Reply__mach_port_set_seqno_t __attribute__((unused));
1507#ifdef __MigPackStructs
1508#pragma pack(pop)
1509#endif
1510
1511#ifdef __MigPackStructs
1512#pragma pack(push, 4)
1513#endif
1514 typedef struct {
1515 mach_msg_header_t Head;
1516 NDR_record_t NDR;
1517 kern_return_t RetCode;
1518 mach_msg_type_number_t port_info_outCnt;
1519 integer_t port_info_out[17];
1520 } __Reply__mach_port_get_attributes_t __attribute__((unused));
1521#ifdef __MigPackStructs
1522#pragma pack(pop)
1523#endif
1524
1525#ifdef __MigPackStructs
1526#pragma pack(push, 4)
1527#endif
1528 typedef struct {
1529 mach_msg_header_t Head;
1530 NDR_record_t NDR;
1531 kern_return_t RetCode;
1532 } __Reply__mach_port_set_attributes_t __attribute__((unused));
1533#ifdef __MigPackStructs
1534#pragma pack(pop)
1535#endif
1536
1537#ifdef __MigPackStructs
1538#pragma pack(push, 4)
1539#endif
1540 typedef struct {
1541 mach_msg_header_t Head;
1542 NDR_record_t NDR;
1543 kern_return_t RetCode;
1544 mach_port_qos_t qos;
1545 mach_port_name_t name;
1546 } __Reply__mach_port_allocate_qos_t __attribute__((unused));
1547#ifdef __MigPackStructs
1548#pragma pack(pop)
1549#endif
1550
1551#ifdef __MigPackStructs
1552#pragma pack(push, 4)
1553#endif
1554 typedef struct {
1555 mach_msg_header_t Head;
1556 NDR_record_t NDR;
1557 kern_return_t RetCode;
1558 mach_port_qos_t qos;
1559 mach_port_name_t name;
1560 } __Reply__mach_port_allocate_full_t __attribute__((unused));
1561#ifdef __MigPackStructs
1562#pragma pack(pop)
1563#endif
1564
1565#ifdef __MigPackStructs
1566#pragma pack(push, 4)
1567#endif
1568 typedef struct {
1569 mach_msg_header_t Head;
1570 NDR_record_t NDR;
1571 kern_return_t RetCode;
1572 } __Reply__task_set_port_space_t __attribute__((unused));
1573#ifdef __MigPackStructs
1574#pragma pack(pop)
1575#endif
1576
1577#ifdef __MigPackStructs
1578#pragma pack(push, 4)
1579#endif
1580 typedef struct {
1581 mach_msg_header_t Head;
1582 NDR_record_t NDR;
1583 kern_return_t RetCode;
1584 mach_port_rights_t srights;
1585 } __Reply__mach_port_get_srights_t __attribute__((unused));
1586#ifdef __MigPackStructs
1587#pragma pack(pop)
1588#endif
1589
1590#ifdef __MigPackStructs
1591#pragma pack(push, 4)
1592#endif
1593 typedef struct {
1594 mach_msg_header_t Head;
1595 /* start of the kernel processed data */
1596 mach_msg_body_t msgh_body;
1597 mach_msg_ool_descriptor_t table_info;
1598 mach_msg_ool_descriptor_t tree_info;
1599 /* end of the kernel processed data */
1600 NDR_record_t NDR;
1601 ipc_info_space_t space_info;
1602 mach_msg_type_number_t table_infoCnt;
1603 mach_msg_type_number_t tree_infoCnt;
1604 } __Reply__mach_port_space_info_t __attribute__((unused));
1605#ifdef __MigPackStructs
1606#pragma pack(pop)
1607#endif
1608
1609#ifdef __MigPackStructs
1610#pragma pack(push, 4)
1611#endif
1612 typedef struct {
1613 mach_msg_header_t Head;
1614 NDR_record_t NDR;
1615 kern_return_t RetCode;
1616 unsigned dnr_total;
1617 unsigned dnr_used;
1618 } __Reply__mach_port_dnrequest_info_t __attribute__((unused));
1619#ifdef __MigPackStructs
1620#pragma pack(pop)
1621#endif
1622
1623#ifdef __MigPackStructs
1624#pragma pack(push, 4)
1625#endif
1626 typedef struct {
1627 mach_msg_header_t Head;
1628 NDR_record_t NDR;
1629 kern_return_t RetCode;
1630 unsigned object_type;
1631 unsigned object_addr;
1632 } __Reply__mach_port_kernel_object_t __attribute__((unused));
1633#ifdef __MigPackStructs
1634#pragma pack(pop)
1635#endif
1636
1637#ifdef __MigPackStructs
1638#pragma pack(push, 4)
1639#endif
1640 typedef struct {
1641 mach_msg_header_t Head;
1642 NDR_record_t NDR;
1643 kern_return_t RetCode;
1644 } __Reply__mach_port_insert_member_t __attribute__((unused));
1645#ifdef __MigPackStructs
1646#pragma pack(pop)
1647#endif
1648
1649#ifdef __MigPackStructs
1650#pragma pack(push, 4)
1651#endif
1652 typedef struct {
1653 mach_msg_header_t Head;
1654 NDR_record_t NDR;
1655 kern_return_t RetCode;
1656 } __Reply__mach_port_extract_member_t __attribute__((unused));
1657#ifdef __MigPackStructs
1658#pragma pack(pop)
1659#endif
1660
1661#ifdef __MigPackStructs
1662#pragma pack(push, 4)
1663#endif
1664 typedef struct {
1665 mach_msg_header_t Head;
1666 NDR_record_t NDR;
1667 kern_return_t RetCode;
1668 mach_port_context_t context;
1669 } __Reply__mach_port_get_context_t __attribute__((unused));
1670#ifdef __MigPackStructs
1671#pragma pack(pop)
1672#endif
1673
1674#ifdef __MigPackStructs
1675#pragma pack(push, 4)
1676#endif
1677 typedef struct {
1678 mach_msg_header_t Head;
1679 NDR_record_t NDR;
1680 kern_return_t RetCode;
1681 } __Reply__mach_port_set_context_t __attribute__((unused));
1682#ifdef __MigPackStructs
1683#pragma pack(pop)
1684#endif
1685
1686#ifdef __MigPackStructs
1687#pragma pack(push, 4)
1688#endif
1689 typedef struct {
1690 mach_msg_header_t Head;
1691 NDR_record_t NDR;
1692 kern_return_t RetCode;
1693 ipc_info_object_type_t object_type;
1694 mach_vm_address_t object_addr;
1695 } __Reply__mach_port_kobject_t __attribute__((unused));
1696#ifdef __MigPackStructs
1697#pragma pack(pop)
1698#endif
1699
1700#ifdef __MigPackStructs
1701#pragma pack(push, 4)
1702#endif
1703 typedef struct {
1704 mach_msg_header_t Head;
1705 NDR_record_t NDR;
1706 kern_return_t RetCode;
1707 mach_port_name_t name;
1708 } __Reply__mach_port_construct_t __attribute__((unused));
1709#ifdef __MigPackStructs
1710#pragma pack(pop)
1711#endif
1712
1713#ifdef __MigPackStructs
1714#pragma pack(push, 4)
1715#endif
1716 typedef struct {
1717 mach_msg_header_t Head;
1718 NDR_record_t NDR;
1719 kern_return_t RetCode;
1720 } __Reply__mach_port_destruct_t __attribute__((unused));
1721#ifdef __MigPackStructs
1722#pragma pack(pop)
1723#endif
1724
1725#ifdef __MigPackStructs
1726#pragma pack(push, 4)
1727#endif
1728 typedef struct {
1729 mach_msg_header_t Head;
1730 NDR_record_t NDR;
1731 kern_return_t RetCode;
1732 } __Reply__mach_port_guard_t __attribute__((unused));
1733#ifdef __MigPackStructs
1734#pragma pack(pop)
1735#endif
1736
1737#ifdef __MigPackStructs
1738#pragma pack(push, 4)
1739#endif
1740 typedef struct {
1741 mach_msg_header_t Head;
1742 NDR_record_t NDR;
1743 kern_return_t RetCode;
1744 } __Reply__mach_port_unguard_t __attribute__((unused));
1745#ifdef __MigPackStructs
1746#pragma pack(pop)
1747#endif
1748
1749#ifdef __MigPackStructs
1750#pragma pack(push, 4)
1751#endif
1752 typedef struct {
1753 mach_msg_header_t Head;
1754 NDR_record_t NDR;
1755 kern_return_t RetCode;
1756 ipc_info_space_basic_t basic_info;
1757 } __Reply__mach_port_space_basic_info_t __attribute__((unused));
1758#ifdef __MigPackStructs
1759#pragma pack(pop)
1760#endif
1761
1762#ifdef __MigPackStructs
1763#pragma pack(push, 4)
1764#endif
1765 typedef struct {
1766 mach_msg_header_t Head;
1767 NDR_record_t NDR;
1768 kern_return_t RetCode;
1769 } __Reply__mach_port_guard_with_flags_t __attribute__((unused));
1770#ifdef __MigPackStructs
1771#pragma pack(pop)
1772#endif
1773
1774#ifdef __MigPackStructs
1775#pragma pack(push, 4)
1776#endif
1777 typedef struct {
1778 mach_msg_header_t Head;
1779 NDR_record_t NDR;
1780 kern_return_t RetCode;
1781 } __Reply__mach_port_swap_guard_t __attribute__((unused));
1782#ifdef __MigPackStructs
1783#pragma pack(pop)
1784#endif
1785
1786#ifdef __MigPackStructs
1787#pragma pack(push, 4)
1788#endif
1789 typedef struct {
1790 mach_msg_header_t Head;
1791 NDR_record_t NDR;
1792 kern_return_t RetCode;
1793 ipc_info_object_type_t object_type;
1794 mach_vm_address_t object_addr;
1795 mach_msg_type_number_t descriptionOffset; /* MiG doesn't use it */
1796 mach_msg_type_number_t descriptionCnt;
1797 char description[512];
1798 } __Reply__mach_port_kobject_description_t __attribute__((unused));
1799#ifdef __MigPackStructs
1800#pragma pack(pop)
1801#endif
1802
1803#ifdef __MigPackStructs
1804#pragma pack(push, 4)
1805#endif
1806 typedef struct {
1807 mach_msg_header_t Head;
1808 NDR_record_t NDR;
1809 kern_return_t RetCode;
1810 uint64_t filter_policy_id;
1811 } __Reply__mach_port_is_connection_for_service_t __attribute__((unused));
1812#ifdef __MigPackStructs
1813#pragma pack(pop)
1814#endif
1815
1816#ifdef __MigPackStructs
1817#pragma pack(push, 4)
1818#endif
1819 typedef struct {
1820 mach_msg_header_t Head;
1821 NDR_record_t NDR;
1822 kern_return_t RetCode;
1823 mach_service_port_info_data_t sp_info_out;
1824 } __Reply__mach_port_get_service_port_info_t __attribute__((unused));
1825#ifdef __MigPackStructs
1826#pragma pack(pop)
1827#endif
1828
1829#ifdef __MigPackStructs
1830#pragma pack(push, 4)
1831#endif
1832 typedef struct {
1833 mach_msg_header_t Head;
1834 NDR_record_t NDR;
1835 kern_return_t RetCode;
1836 } __Reply__mach_port_assert_attributes_t __attribute__((unused));
1837#ifdef __MigPackStructs
1838#pragma pack(pop)
1839#endif
1840#endif /* !__Reply__mach_port_subsystem__defined */
1841
1842/* union of all replies */
1843
1844#ifndef __ReplyUnion__mach_port_subsystem__defined
1845#define __ReplyUnion__mach_port_subsystem__defined
1846union __ReplyUnion__mach_port_subsystem {
1847 __Reply__mach_port_names_t Reply_mach_port_names;
1848 __Reply__mach_port_type_t Reply_mach_port_type;
1849 __Reply__mach_port_rename_t Reply_mach_port_rename;
1850 __Reply__mach_port_allocate_name_t Reply_mach_port_allocate_name;
1851 __Reply__mach_port_allocate_t Reply_mach_port_allocate;
1852 __Reply__mach_port_destroy_t Reply_mach_port_destroy;
1853 __Reply__mach_port_deallocate_t Reply_mach_port_deallocate;
1854 __Reply__mach_port_get_refs_t Reply_mach_port_get_refs;
1855 __Reply__mach_port_mod_refs_t Reply_mach_port_mod_refs;
1856 __Reply__mach_port_peek_t Reply_mach_port_peek;
1857 __Reply__mach_port_set_mscount_t Reply_mach_port_set_mscount;
1858 __Reply__mach_port_get_set_status_t Reply_mach_port_get_set_status;
1859 __Reply__mach_port_move_member_t Reply_mach_port_move_member;
1860 __Reply__mach_port_request_notification_t Reply_mach_port_request_notification;
1861 __Reply__mach_port_insert_right_t Reply_mach_port_insert_right;
1862 __Reply__mach_port_extract_right_t Reply_mach_port_extract_right;
1863 __Reply__mach_port_set_seqno_t Reply_mach_port_set_seqno;
1864 __Reply__mach_port_get_attributes_t Reply_mach_port_get_attributes;
1865 __Reply__mach_port_set_attributes_t Reply_mach_port_set_attributes;
1866 __Reply__mach_port_allocate_qos_t Reply_mach_port_allocate_qos;
1867 __Reply__mach_port_allocate_full_t Reply_mach_port_allocate_full;
1868 __Reply__task_set_port_space_t Reply_task_set_port_space;
1869 __Reply__mach_port_get_srights_t Reply_mach_port_get_srights;
1870 __Reply__mach_port_space_info_t Reply_mach_port_space_info;
1871 __Reply__mach_port_dnrequest_info_t Reply_mach_port_dnrequest_info;
1872 __Reply__mach_port_kernel_object_t Reply_mach_port_kernel_object;
1873 __Reply__mach_port_insert_member_t Reply_mach_port_insert_member;
1874 __Reply__mach_port_extract_member_t Reply_mach_port_extract_member;
1875 __Reply__mach_port_get_context_t Reply_mach_port_get_context;
1876 __Reply__mach_port_set_context_t Reply_mach_port_set_context;
1877 __Reply__mach_port_kobject_t Reply_mach_port_kobject;
1878 __Reply__mach_port_construct_t Reply_mach_port_construct;
1879 __Reply__mach_port_destruct_t Reply_mach_port_destruct;
1880 __Reply__mach_port_guard_t Reply_mach_port_guard;
1881 __Reply__mach_port_unguard_t Reply_mach_port_unguard;
1882 __Reply__mach_port_space_basic_info_t Reply_mach_port_space_basic_info;
1883 __Reply__mach_port_guard_with_flags_t Reply_mach_port_guard_with_flags;
1884 __Reply__mach_port_swap_guard_t Reply_mach_port_swap_guard;
1885 __Reply__mach_port_kobject_description_t Reply_mach_port_kobject_description;
1886 __Reply__mach_port_is_connection_for_service_t Reply_mach_port_is_connection_for_service;
1887 __Reply__mach_port_get_service_port_info_t Reply_mach_port_get_service_port_info;
1888 __Reply__mach_port_assert_attributes_t Reply_mach_port_assert_attributes;
1889};
1890#endif /* !__RequestUnion__mach_port_subsystem__defined */
1891
1892#ifndef subsystem_to_name_map_mach_port
1893#define subsystem_to_name_map_mach_port \
1894 { "mach_port_names", 3200 },\
1895 { "mach_port_type", 3201 },\
1896 { "mach_port_rename", 3202 },\
1897 { "mach_port_allocate_name", 3203 },\
1898 { "mach_port_allocate", 3204 },\
1899 { "mach_port_destroy", 3205 },\
1900 { "mach_port_deallocate", 3206 },\
1901 { "mach_port_get_refs", 3207 },\
1902 { "mach_port_mod_refs", 3208 },\
1903 { "mach_port_peek", 3209 },\
1904 { "mach_port_set_mscount", 3210 },\
1905 { "mach_port_get_set_status", 3211 },\
1906 { "mach_port_move_member", 3212 },\
1907 { "mach_port_request_notification", 3213 },\
1908 { "mach_port_insert_right", 3214 },\
1909 { "mach_port_extract_right", 3215 },\
1910 { "mach_port_set_seqno", 3216 },\
1911 { "mach_port_get_attributes", 3217 },\
1912 { "mach_port_set_attributes", 3218 },\
1913 { "mach_port_allocate_qos", 3219 },\
1914 { "mach_port_allocate_full", 3220 },\
1915 { "task_set_port_space", 3221 },\
1916 { "mach_port_get_srights", 3222 },\
1917 { "mach_port_space_info", 3223 },\
1918 { "mach_port_dnrequest_info", 3224 },\
1919 { "mach_port_kernel_object", 3225 },\
1920 { "mach_port_insert_member", 3226 },\
1921 { "mach_port_extract_member", 3227 },\
1922 { "mach_port_get_context", 3228 },\
1923 { "mach_port_set_context", 3229 },\
1924 { "mach_port_kobject", 3230 },\
1925 { "mach_port_construct", 3231 },\
1926 { "mach_port_destruct", 3232 },\
1927 { "mach_port_guard", 3233 },\
1928 { "mach_port_unguard", 3234 },\
1929 { "mach_port_space_basic_info", 3235 },\
1930 { "mach_port_guard_with_flags", 3237 },\
1931 { "mach_port_swap_guard", 3238 },\
1932 { "mach_port_kobject_description", 3239 },\
1933 { "mach_port_is_connection_for_service", 3240 },\
1934 { "mach_port_get_service_port_info", 3241 },\
1935 { "mach_port_assert_attributes", 3242 }
1936#endif
1937
1938#ifdef __AfterMigUserHeader
1939__AfterMigUserHeader
1940#endif /* __AfterMigUserHeader */
1941
1942#endif /* _mach_port_user_ */