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