]> git.saurik.com Git - cycript.git/blame - include/mach/mach_vm.h
As FunctionInstance is different, it must be last.
[cycript.git] / include / mach / mach_vm.h
CommitLineData
3615a2f7
JF
1#ifndef _mach_vm_user_
2#define _mach_vm_user_
3
4/* Module mach_vm */
5
6#include <string.h>
7#include <mach/ndr.h>
8#include <mach/boolean.h>
9#include <mach/kern_return.h>
10#include <mach/notify.h>
11#include <mach/mach_types.h>
12#include <mach/message.h>
13#include <mach/mig_errors.h>
14#include <mach/port.h>
15
16#ifdef AUTOTEST
17#ifndef FUNCTION_PTR_T
18#define FUNCTION_PTR_T
19typedef void (*function_ptr_t)(mach_port_t, char *, mach_msg_type_number_t);
20typedef struct {
21 char *name;
22 function_ptr_t function;
23} function_table_entry;
24typedef function_table_entry *function_table_t;
25#endif /* FUNCTION_PTR_T */
26#endif /* AUTOTEST */
27
28#ifndef mach_vm_MSG_COUNT
29#define mach_vm_MSG_COUNT 20
30#endif /* mach_vm_MSG_COUNT */
31
32#include <mach/std_types.h>
33#include <mach/mig.h>
34#include <mach/mig.h>
35#include <mach/mach_types.h>
36#include <mach_debug/mach_debug_types.h>
37
38#ifdef __BeforeMigUserHeader
39__BeforeMigUserHeader
40#endif /* __BeforeMigUserHeader */
41
42#include <sys/cdefs.h>
43__BEGIN_DECLS
44
45
46/* Routine mach_vm_allocate */
47#ifdef mig_external
48mig_external
49#else
50extern
51#endif /* mig_external */
52kern_return_t mach_vm_allocate
53(
54 vm_map_t target,
55 mach_vm_address_t *address,
56 mach_vm_size_t size,
57 int flags
58);
59
60/* Routine mach_vm_deallocate */
61#ifdef mig_external
62mig_external
63#else
64extern
65#endif /* mig_external */
66kern_return_t mach_vm_deallocate
67(
68 vm_map_t target,
69 mach_vm_address_t address,
70 mach_vm_size_t size
71);
72
73/* Routine mach_vm_protect */
74#ifdef mig_external
75mig_external
76#else
77extern
78#endif /* mig_external */
79kern_return_t mach_vm_protect
80(
81 vm_map_t target_task,
82 mach_vm_address_t address,
83 mach_vm_size_t size,
84 boolean_t set_maximum,
85 vm_prot_t new_protection
86);
87
88/* Routine mach_vm_inherit */
89#ifdef mig_external
90mig_external
91#else
92extern
93#endif /* mig_external */
94kern_return_t mach_vm_inherit
95(
96 vm_map_t target_task,
97 mach_vm_address_t address,
98 mach_vm_size_t size,
99 vm_inherit_t new_inheritance
100);
101
102/* Routine mach_vm_read */
103#ifdef mig_external
104mig_external
105#else
106extern
107#endif /* mig_external */
108kern_return_t mach_vm_read
109(
110 vm_map_t target_task,
111 mach_vm_address_t address,
112 mach_vm_size_t size,
113 vm_offset_t *data,
114 mach_msg_type_number_t *dataCnt
115);
116
117/* Routine mach_vm_read_list */
118#ifdef mig_external
119mig_external
120#else
121extern
122#endif /* mig_external */
123kern_return_t mach_vm_read_list
124(
125 vm_map_t target_task,
126 mach_vm_read_entry_t data_list,
127 natural_t count
128);
129
130/* Routine mach_vm_write */
131#ifdef mig_external
132mig_external
133#else
134extern
135#endif /* mig_external */
136kern_return_t mach_vm_write
137(
138 vm_map_t target_task,
139 mach_vm_address_t address,
140 vm_offset_t data,
141 mach_msg_type_number_t dataCnt
142);
143
144/* Routine mach_vm_copy */
145#ifdef mig_external
146mig_external
147#else
148extern
149#endif /* mig_external */
150kern_return_t mach_vm_copy
151(
152 vm_map_t target_task,
153 mach_vm_address_t source_address,
154 mach_vm_size_t size,
155 mach_vm_address_t dest_address
156);
157
158/* Routine mach_vm_read_overwrite */
159#ifdef mig_external
160mig_external
161#else
162extern
163#endif /* mig_external */
164kern_return_t mach_vm_read_overwrite
165(
166 vm_map_t target_task,
167 mach_vm_address_t address,
168 mach_vm_size_t size,
169 mach_vm_address_t data,
170 mach_vm_size_t *outsize
171);
172
173/* Routine mach_vm_msync */
174#ifdef mig_external
175mig_external
176#else
177extern
178#endif /* mig_external */
179kern_return_t mach_vm_msync
180(
181 vm_map_t target_task,
182 mach_vm_address_t address,
183 mach_vm_size_t size,
184 vm_sync_t sync_flags
185);
186
187/* Routine mach_vm_behavior_set */
188#ifdef mig_external
189mig_external
190#else
191extern
192#endif /* mig_external */
193kern_return_t mach_vm_behavior_set
194(
195 vm_map_t target_task,
196 mach_vm_address_t address,
197 mach_vm_size_t size,
198 vm_behavior_t new_behavior
199);
200
201/* Routine mach_vm_map */
202#ifdef mig_external
203mig_external
204#else
205extern
206#endif /* mig_external */
207kern_return_t mach_vm_map
208(
209 vm_map_t target_task,
210 mach_vm_address_t *address,
211 mach_vm_size_t size,
212 mach_vm_offset_t mask,
213 int flags,
214 mem_entry_name_port_t object,
215 memory_object_offset_t offset,
216 boolean_t copy,
217 vm_prot_t cur_protection,
218 vm_prot_t max_protection,
219 vm_inherit_t inheritance
220);
221
222/* Routine mach_vm_machine_attribute */
223#ifdef mig_external
224mig_external
225#else
226extern
227#endif /* mig_external */
228kern_return_t mach_vm_machine_attribute
229(
230 vm_map_t target_task,
231 mach_vm_address_t address,
232 mach_vm_size_t size,
233 vm_machine_attribute_t attribute,
234 vm_machine_attribute_val_t *value
235);
236
237/* Routine mach_vm_remap */
238#ifdef mig_external
239mig_external
240#else
241extern
242#endif /* mig_external */
243kern_return_t mach_vm_remap
244(
245 vm_map_t target_task,
246 mach_vm_address_t *target_address,
247 mach_vm_size_t size,
248 mach_vm_offset_t mask,
249 int flags,
250 vm_map_t src_task,
251 mach_vm_address_t src_address,
252 boolean_t copy,
253 vm_prot_t *cur_protection,
254 vm_prot_t *max_protection,
255 vm_inherit_t inheritance
256);
257
258/* Routine mach_vm_page_query */
259#ifdef mig_external
260mig_external
261#else
262extern
263#endif /* mig_external */
264kern_return_t mach_vm_page_query
265(
266 vm_map_t target_map,
267 mach_vm_offset_t offset,
268 integer_t *disposition,
269 integer_t *ref_count
270);
271
272/* Routine mach_vm_region_recurse */
273#ifdef mig_external
274mig_external
275#else
276extern
277#endif /* mig_external */
278kern_return_t mach_vm_region_recurse
279(
280 vm_map_t target_task,
281 mach_vm_address_t *address,
282 mach_vm_size_t *size,
283 natural_t *nesting_depth,
284 vm_region_recurse_info_t info,
285 mach_msg_type_number_t *infoCnt
286);
287
288/* Routine mach_vm_region */
289#ifdef mig_external
290mig_external
291#else
292extern
293#endif /* mig_external */
294kern_return_t mach_vm_region
295(
296 vm_map_t target_task,
297 mach_vm_address_t *address,
298 mach_vm_size_t *size,
299 vm_region_flavor_t flavor,
300 vm_region_info_t info,
301 mach_msg_type_number_t *infoCnt,
302 mach_port_t *object_name
303);
304
305/* Routine _mach_make_memory_entry */
306#ifdef mig_external
307mig_external
308#else
309extern
310#endif /* mig_external */
311kern_return_t _mach_make_memory_entry
312(
313 vm_map_t target_task,
314 memory_object_size_t *size,
315 memory_object_offset_t offset,
316 vm_prot_t permission,
317 mem_entry_name_port_t *object_handle,
318 mem_entry_name_port_t parent_handle
319);
320
321/* Routine mach_vm_purgable_control */
322#ifdef mig_external
323mig_external
324#else
325extern
326#endif /* mig_external */
327kern_return_t mach_vm_purgable_control
328(
329 vm_map_t target_task,
330 mach_vm_address_t address,
331 vm_purgable_t control,
332 int *state
333);
334
335/* Routine mach_vm_page_info */
336#ifdef mig_external
337mig_external
338#else
339extern
340#endif /* mig_external */
341kern_return_t mach_vm_page_info
342(
343 vm_map_t target_task,
344 mach_vm_address_t address,
345 vm_page_info_flavor_t flavor,
346 vm_page_info_t info,
347 mach_msg_type_number_t *infoCnt
348);
349
350__END_DECLS
351
352/********************** Caution **************************/
353/* The following data types should be used to calculate */
354/* maximum message sizes only. The actual message may be */
355/* smaller, and the position of the arguments within the */
356/* message layout may vary from what is presented here. */
357/* For example, if any of the arguments are variable- */
358/* sized, and less than the maximum is sent, the data */
359/* will be packed tight in the actual message to reduce */
360/* the presence of holes. */
361/********************** Caution **************************/
362
363/* typedefs for all requests */
364
365#ifndef __Request__mach_vm_subsystem__defined
366#define __Request__mach_vm_subsystem__defined
367
368#ifdef __MigPackStructs
369#pragma pack(4)
370#endif
371 typedef struct {
372 mach_msg_header_t Head;
373 NDR_record_t NDR;
374 mach_vm_address_t address;
375 mach_vm_size_t size;
376 int flags;
377 } __Request__mach_vm_allocate_t;
378#ifdef __MigPackStructs
379#pragma pack()
380#endif
381
382#ifdef __MigPackStructs
383#pragma pack(4)
384#endif
385 typedef struct {
386 mach_msg_header_t Head;
387 NDR_record_t NDR;
388 mach_vm_address_t address;
389 mach_vm_size_t size;
390 } __Request__mach_vm_deallocate_t;
391#ifdef __MigPackStructs
392#pragma pack()
393#endif
394
395#ifdef __MigPackStructs
396#pragma pack(4)
397#endif
398 typedef struct {
399 mach_msg_header_t Head;
400 NDR_record_t NDR;
401 mach_vm_address_t address;
402 mach_vm_size_t size;
403 boolean_t set_maximum;
404 vm_prot_t new_protection;
405 } __Request__mach_vm_protect_t;
406#ifdef __MigPackStructs
407#pragma pack()
408#endif
409
410#ifdef __MigPackStructs
411#pragma pack(4)
412#endif
413 typedef struct {
414 mach_msg_header_t Head;
415 NDR_record_t NDR;
416 mach_vm_address_t address;
417 mach_vm_size_t size;
418 vm_inherit_t new_inheritance;
419 } __Request__mach_vm_inherit_t;
420#ifdef __MigPackStructs
421#pragma pack()
422#endif
423
424#ifdef __MigPackStructs
425#pragma pack(4)
426#endif
427 typedef struct {
428 mach_msg_header_t Head;
429 NDR_record_t NDR;
430 mach_vm_address_t address;
431 mach_vm_size_t size;
432 } __Request__mach_vm_read_t;
433#ifdef __MigPackStructs
434#pragma pack()
435#endif
436
437#ifdef __MigPackStructs
438#pragma pack(4)
439#endif
440 typedef struct {
441 mach_msg_header_t Head;
442 NDR_record_t NDR;
443 mach_vm_read_entry_t data_list;
444 natural_t count;
445 } __Request__mach_vm_read_list_t;
446#ifdef __MigPackStructs
447#pragma pack()
448#endif
449
450#ifdef __MigPackStructs
451#pragma pack(4)
452#endif
453 typedef struct {
454 mach_msg_header_t Head;
455 /* start of the kernel processed data */
456 mach_msg_body_t msgh_body;
457 mach_msg_ool_descriptor_t data;
458 /* end of the kernel processed data */
459 NDR_record_t NDR;
460 mach_vm_address_t address;
461 mach_msg_type_number_t dataCnt;
462 } __Request__mach_vm_write_t;
463#ifdef __MigPackStructs
464#pragma pack()
465#endif
466
467#ifdef __MigPackStructs
468#pragma pack(4)
469#endif
470 typedef struct {
471 mach_msg_header_t Head;
472 NDR_record_t NDR;
473 mach_vm_address_t source_address;
474 mach_vm_size_t size;
475 mach_vm_address_t dest_address;
476 } __Request__mach_vm_copy_t;
477#ifdef __MigPackStructs
478#pragma pack()
479#endif
480
481#ifdef __MigPackStructs
482#pragma pack(4)
483#endif
484 typedef struct {
485 mach_msg_header_t Head;
486 NDR_record_t NDR;
487 mach_vm_address_t address;
488 mach_vm_size_t size;
489 mach_vm_address_t data;
490 } __Request__mach_vm_read_overwrite_t;
491#ifdef __MigPackStructs
492#pragma pack()
493#endif
494
495#ifdef __MigPackStructs
496#pragma pack(4)
497#endif
498 typedef struct {
499 mach_msg_header_t Head;
500 NDR_record_t NDR;
501 mach_vm_address_t address;
502 mach_vm_size_t size;
503 vm_sync_t sync_flags;
504 } __Request__mach_vm_msync_t;
505#ifdef __MigPackStructs
506#pragma pack()
507#endif
508
509#ifdef __MigPackStructs
510#pragma pack(4)
511#endif
512 typedef struct {
513 mach_msg_header_t Head;
514 NDR_record_t NDR;
515 mach_vm_address_t address;
516 mach_vm_size_t size;
517 vm_behavior_t new_behavior;
518 } __Request__mach_vm_behavior_set_t;
519#ifdef __MigPackStructs
520#pragma pack()
521#endif
522
523#ifdef __MigPackStructs
524#pragma pack(4)
525#endif
526 typedef struct {
527 mach_msg_header_t Head;
528 /* start of the kernel processed data */
529 mach_msg_body_t msgh_body;
530 mach_msg_port_descriptor_t object;
531 /* end of the kernel processed data */
532 NDR_record_t NDR;
533 mach_vm_address_t address;
534 mach_vm_size_t size;
535 mach_vm_offset_t mask;
536 int flags;
537 memory_object_offset_t offset;
538 boolean_t copy;
539 vm_prot_t cur_protection;
540 vm_prot_t max_protection;
541 vm_inherit_t inheritance;
542 } __Request__mach_vm_map_t;
543#ifdef __MigPackStructs
544#pragma pack()
545#endif
546
547#ifdef __MigPackStructs
548#pragma pack(4)
549#endif
550 typedef struct {
551 mach_msg_header_t Head;
552 NDR_record_t NDR;
553 mach_vm_address_t address;
554 mach_vm_size_t size;
555 vm_machine_attribute_t attribute;
556 vm_machine_attribute_val_t value;
557 } __Request__mach_vm_machine_attribute_t;
558#ifdef __MigPackStructs
559#pragma pack()
560#endif
561
562#ifdef __MigPackStructs
563#pragma pack(4)
564#endif
565 typedef struct {
566 mach_msg_header_t Head;
567 /* start of the kernel processed data */
568 mach_msg_body_t msgh_body;
569 mach_msg_port_descriptor_t src_task;
570 /* end of the kernel processed data */
571 NDR_record_t NDR;
572 mach_vm_address_t target_address;
573 mach_vm_size_t size;
574 mach_vm_offset_t mask;
575 int flags;
576 mach_vm_address_t src_address;
577 boolean_t copy;
578 vm_inherit_t inheritance;
579 } __Request__mach_vm_remap_t;
580#ifdef __MigPackStructs
581#pragma pack()
582#endif
583
584#ifdef __MigPackStructs
585#pragma pack(4)
586#endif
587 typedef struct {
588 mach_msg_header_t Head;
589 NDR_record_t NDR;
590 mach_vm_offset_t offset;
591 } __Request__mach_vm_page_query_t;
592#ifdef __MigPackStructs
593#pragma pack()
594#endif
595
596#ifdef __MigPackStructs
597#pragma pack(4)
598#endif
599 typedef struct {
600 mach_msg_header_t Head;
601 NDR_record_t NDR;
602 mach_vm_address_t address;
603 natural_t nesting_depth;
604 mach_msg_type_number_t infoCnt;
605 } __Request__mach_vm_region_recurse_t;
606#ifdef __MigPackStructs
607#pragma pack()
608#endif
609
610#ifdef __MigPackStructs
611#pragma pack(4)
612#endif
613 typedef struct {
614 mach_msg_header_t Head;
615 NDR_record_t NDR;
616 mach_vm_address_t address;
617 vm_region_flavor_t flavor;
618 mach_msg_type_number_t infoCnt;
619 } __Request__mach_vm_region_t;
620#ifdef __MigPackStructs
621#pragma pack()
622#endif
623
624#ifdef __MigPackStructs
625#pragma pack(4)
626#endif
627 typedef struct {
628 mach_msg_header_t Head;
629 /* start of the kernel processed data */
630 mach_msg_body_t msgh_body;
631 mach_msg_port_descriptor_t parent_handle;
632 /* end of the kernel processed data */
633 NDR_record_t NDR;
634 memory_object_size_t size;
635 memory_object_offset_t offset;
636 vm_prot_t permission;
637 } __Request___mach_make_memory_entry_t;
638#ifdef __MigPackStructs
639#pragma pack()
640#endif
641
642#ifdef __MigPackStructs
643#pragma pack(4)
644#endif
645 typedef struct {
646 mach_msg_header_t Head;
647 NDR_record_t NDR;
648 mach_vm_address_t address;
649 vm_purgable_t control;
650 int state;
651 } __Request__mach_vm_purgable_control_t;
652#ifdef __MigPackStructs
653#pragma pack()
654#endif
655
656#ifdef __MigPackStructs
657#pragma pack(4)
658#endif
659 typedef struct {
660 mach_msg_header_t Head;
661 NDR_record_t NDR;
662 mach_vm_address_t address;
663 vm_page_info_flavor_t flavor;
664 mach_msg_type_number_t infoCnt;
665 } __Request__mach_vm_page_info_t;
666#ifdef __MigPackStructs
667#pragma pack()
668#endif
669#endif /* !__Request__mach_vm_subsystem__defined */
670
671/* union of all requests */
672
673#ifndef __RequestUnion__mach_vm_subsystem__defined
674#define __RequestUnion__mach_vm_subsystem__defined
675union __RequestUnion__mach_vm_subsystem {
676 __Request__mach_vm_allocate_t Request_mach_vm_allocate;
677 __Request__mach_vm_deallocate_t Request_mach_vm_deallocate;
678 __Request__mach_vm_protect_t Request_mach_vm_protect;
679 __Request__mach_vm_inherit_t Request_mach_vm_inherit;
680 __Request__mach_vm_read_t Request_mach_vm_read;
681 __Request__mach_vm_read_list_t Request_mach_vm_read_list;
682 __Request__mach_vm_write_t Request_mach_vm_write;
683 __Request__mach_vm_copy_t Request_mach_vm_copy;
684 __Request__mach_vm_read_overwrite_t Request_mach_vm_read_overwrite;
685 __Request__mach_vm_msync_t Request_mach_vm_msync;
686 __Request__mach_vm_behavior_set_t Request_mach_vm_behavior_set;
687 __Request__mach_vm_map_t Request_mach_vm_map;
688 __Request__mach_vm_machine_attribute_t Request_mach_vm_machine_attribute;
689 __Request__mach_vm_remap_t Request_mach_vm_remap;
690 __Request__mach_vm_page_query_t Request_mach_vm_page_query;
691 __Request__mach_vm_region_recurse_t Request_mach_vm_region_recurse;
692 __Request__mach_vm_region_t Request_mach_vm_region;
693 __Request___mach_make_memory_entry_t Request__mach_make_memory_entry;
694 __Request__mach_vm_purgable_control_t Request_mach_vm_purgable_control;
695 __Request__mach_vm_page_info_t Request_mach_vm_page_info;
696};
697#endif /* !__RequestUnion__mach_vm_subsystem__defined */
698/* typedefs for all replies */
699
700#ifndef __Reply__mach_vm_subsystem__defined
701#define __Reply__mach_vm_subsystem__defined
702
703#ifdef __MigPackStructs
704#pragma pack(4)
705#endif
706 typedef struct {
707 mach_msg_header_t Head;
708 NDR_record_t NDR;
709 kern_return_t RetCode;
710 mach_vm_address_t address;
711 } __Reply__mach_vm_allocate_t;
712#ifdef __MigPackStructs
713#pragma pack()
714#endif
715
716#ifdef __MigPackStructs
717#pragma pack(4)
718#endif
719 typedef struct {
720 mach_msg_header_t Head;
721 NDR_record_t NDR;
722 kern_return_t RetCode;
723 } __Reply__mach_vm_deallocate_t;
724#ifdef __MigPackStructs
725#pragma pack()
726#endif
727
728#ifdef __MigPackStructs
729#pragma pack(4)
730#endif
731 typedef struct {
732 mach_msg_header_t Head;
733 NDR_record_t NDR;
734 kern_return_t RetCode;
735 } __Reply__mach_vm_protect_t;
736#ifdef __MigPackStructs
737#pragma pack()
738#endif
739
740#ifdef __MigPackStructs
741#pragma pack(4)
742#endif
743 typedef struct {
744 mach_msg_header_t Head;
745 NDR_record_t NDR;
746 kern_return_t RetCode;
747 } __Reply__mach_vm_inherit_t;
748#ifdef __MigPackStructs
749#pragma pack()
750#endif
751
752#ifdef __MigPackStructs
753#pragma pack(4)
754#endif
755 typedef struct {
756 mach_msg_header_t Head;
757 /* start of the kernel processed data */
758 mach_msg_body_t msgh_body;
759 mach_msg_ool_descriptor_t data;
760 /* end of the kernel processed data */
761 NDR_record_t NDR;
762 mach_msg_type_number_t dataCnt;
763 } __Reply__mach_vm_read_t;
764#ifdef __MigPackStructs
765#pragma pack()
766#endif
767
768#ifdef __MigPackStructs
769#pragma pack(4)
770#endif
771 typedef struct {
772 mach_msg_header_t Head;
773 NDR_record_t NDR;
774 kern_return_t RetCode;
775 mach_vm_read_entry_t data_list;
776 } __Reply__mach_vm_read_list_t;
777#ifdef __MigPackStructs
778#pragma pack()
779#endif
780
781#ifdef __MigPackStructs
782#pragma pack(4)
783#endif
784 typedef struct {
785 mach_msg_header_t Head;
786 NDR_record_t NDR;
787 kern_return_t RetCode;
788 } __Reply__mach_vm_write_t;
789#ifdef __MigPackStructs
790#pragma pack()
791#endif
792
793#ifdef __MigPackStructs
794#pragma pack(4)
795#endif
796 typedef struct {
797 mach_msg_header_t Head;
798 NDR_record_t NDR;
799 kern_return_t RetCode;
800 } __Reply__mach_vm_copy_t;
801#ifdef __MigPackStructs
802#pragma pack()
803#endif
804
805#ifdef __MigPackStructs
806#pragma pack(4)
807#endif
808 typedef struct {
809 mach_msg_header_t Head;
810 NDR_record_t NDR;
811 kern_return_t RetCode;
812 mach_vm_size_t outsize;
813 } __Reply__mach_vm_read_overwrite_t;
814#ifdef __MigPackStructs
815#pragma pack()
816#endif
817
818#ifdef __MigPackStructs
819#pragma pack(4)
820#endif
821 typedef struct {
822 mach_msg_header_t Head;
823 NDR_record_t NDR;
824 kern_return_t RetCode;
825 } __Reply__mach_vm_msync_t;
826#ifdef __MigPackStructs
827#pragma pack()
828#endif
829
830#ifdef __MigPackStructs
831#pragma pack(4)
832#endif
833 typedef struct {
834 mach_msg_header_t Head;
835 NDR_record_t NDR;
836 kern_return_t RetCode;
837 } __Reply__mach_vm_behavior_set_t;
838#ifdef __MigPackStructs
839#pragma pack()
840#endif
841
842#ifdef __MigPackStructs
843#pragma pack(4)
844#endif
845 typedef struct {
846 mach_msg_header_t Head;
847 NDR_record_t NDR;
848 kern_return_t RetCode;
849 mach_vm_address_t address;
850 } __Reply__mach_vm_map_t;
851#ifdef __MigPackStructs
852#pragma pack()
853#endif
854
855#ifdef __MigPackStructs
856#pragma pack(4)
857#endif
858 typedef struct {
859 mach_msg_header_t Head;
860 NDR_record_t NDR;
861 kern_return_t RetCode;
862 vm_machine_attribute_val_t value;
863 } __Reply__mach_vm_machine_attribute_t;
864#ifdef __MigPackStructs
865#pragma pack()
866#endif
867
868#ifdef __MigPackStructs
869#pragma pack(4)
870#endif
871 typedef struct {
872 mach_msg_header_t Head;
873 NDR_record_t NDR;
874 kern_return_t RetCode;
875 mach_vm_address_t target_address;
876 vm_prot_t cur_protection;
877 vm_prot_t max_protection;
878 } __Reply__mach_vm_remap_t;
879#ifdef __MigPackStructs
880#pragma pack()
881#endif
882
883#ifdef __MigPackStructs
884#pragma pack(4)
885#endif
886 typedef struct {
887 mach_msg_header_t Head;
888 NDR_record_t NDR;
889 kern_return_t RetCode;
890 integer_t disposition;
891 integer_t ref_count;
892 } __Reply__mach_vm_page_query_t;
893#ifdef __MigPackStructs
894#pragma pack()
895#endif
896
897#ifdef __MigPackStructs
898#pragma pack(4)
899#endif
900 typedef struct {
901 mach_msg_header_t Head;
902 NDR_record_t NDR;
903 kern_return_t RetCode;
904 mach_vm_address_t address;
905 mach_vm_size_t size;
906 natural_t nesting_depth;
907 mach_msg_type_number_t infoCnt;
908 int info[19];
909 } __Reply__mach_vm_region_recurse_t;
910#ifdef __MigPackStructs
911#pragma pack()
912#endif
913
914#ifdef __MigPackStructs
915#pragma pack(4)
916#endif
917 typedef struct {
918 mach_msg_header_t Head;
919 /* start of the kernel processed data */
920 mach_msg_body_t msgh_body;
921 mach_msg_port_descriptor_t object_name;
922 /* end of the kernel processed data */
923 NDR_record_t NDR;
924 mach_vm_address_t address;
925 mach_vm_size_t size;
926 mach_msg_type_number_t infoCnt;
927 int info[10];
928 } __Reply__mach_vm_region_t;
929#ifdef __MigPackStructs
930#pragma pack()
931#endif
932
933#ifdef __MigPackStructs
934#pragma pack(4)
935#endif
936 typedef struct {
937 mach_msg_header_t Head;
938 /* start of the kernel processed data */
939 mach_msg_body_t msgh_body;
940 mach_msg_port_descriptor_t object_handle;
941 /* end of the kernel processed data */
942 NDR_record_t NDR;
943 memory_object_size_t size;
944 } __Reply___mach_make_memory_entry_t;
945#ifdef __MigPackStructs
946#pragma pack()
947#endif
948
949#ifdef __MigPackStructs
950#pragma pack(4)
951#endif
952 typedef struct {
953 mach_msg_header_t Head;
954 NDR_record_t NDR;
955 kern_return_t RetCode;
956 int state;
957 } __Reply__mach_vm_purgable_control_t;
958#ifdef __MigPackStructs
959#pragma pack()
960#endif
961
962#ifdef __MigPackStructs
963#pragma pack(4)
964#endif
965 typedef struct {
966 mach_msg_header_t Head;
967 NDR_record_t NDR;
968 kern_return_t RetCode;
969 mach_msg_type_number_t infoCnt;
970 int info[32];
971 } __Reply__mach_vm_page_info_t;
972#ifdef __MigPackStructs
973#pragma pack()
974#endif
975#endif /* !__Reply__mach_vm_subsystem__defined */
976
977/* union of all replies */
978
979#ifndef __ReplyUnion__mach_vm_subsystem__defined
980#define __ReplyUnion__mach_vm_subsystem__defined
981union __ReplyUnion__mach_vm_subsystem {
982 __Reply__mach_vm_allocate_t Reply_mach_vm_allocate;
983 __Reply__mach_vm_deallocate_t Reply_mach_vm_deallocate;
984 __Reply__mach_vm_protect_t Reply_mach_vm_protect;
985 __Reply__mach_vm_inherit_t Reply_mach_vm_inherit;
986 __Reply__mach_vm_read_t Reply_mach_vm_read;
987 __Reply__mach_vm_read_list_t Reply_mach_vm_read_list;
988 __Reply__mach_vm_write_t Reply_mach_vm_write;
989 __Reply__mach_vm_copy_t Reply_mach_vm_copy;
990 __Reply__mach_vm_read_overwrite_t Reply_mach_vm_read_overwrite;
991 __Reply__mach_vm_msync_t Reply_mach_vm_msync;
992 __Reply__mach_vm_behavior_set_t Reply_mach_vm_behavior_set;
993 __Reply__mach_vm_map_t Reply_mach_vm_map;
994 __Reply__mach_vm_machine_attribute_t Reply_mach_vm_machine_attribute;
995 __Reply__mach_vm_remap_t Reply_mach_vm_remap;
996 __Reply__mach_vm_page_query_t Reply_mach_vm_page_query;
997 __Reply__mach_vm_region_recurse_t Reply_mach_vm_region_recurse;
998 __Reply__mach_vm_region_t Reply_mach_vm_region;
999 __Reply___mach_make_memory_entry_t Reply__mach_make_memory_entry;
1000 __Reply__mach_vm_purgable_control_t Reply_mach_vm_purgable_control;
1001 __Reply__mach_vm_page_info_t Reply_mach_vm_page_info;
1002};
1003#endif /* !__RequestUnion__mach_vm_subsystem__defined */
1004
1005#ifndef subsystem_to_name_map_mach_vm
1006#define subsystem_to_name_map_mach_vm \
1007 { "mach_vm_allocate", 4800 },\
1008 { "mach_vm_deallocate", 4801 },\
1009 { "mach_vm_protect", 4802 },\
1010 { "mach_vm_inherit", 4803 },\
1011 { "mach_vm_read", 4804 },\
1012 { "mach_vm_read_list", 4805 },\
1013 { "mach_vm_write", 4806 },\
1014 { "mach_vm_copy", 4807 },\
1015 { "mach_vm_read_overwrite", 4808 },\
1016 { "mach_vm_msync", 4809 },\
1017 { "mach_vm_behavior_set", 4810 },\
1018 { "mach_vm_map", 4811 },\
1019 { "mach_vm_machine_attribute", 4812 },\
1020 { "mach_vm_remap", 4813 },\
1021 { "mach_vm_page_query", 4814 },\
1022 { "mach_vm_region_recurse", 4815 },\
1023 { "mach_vm_region", 4816 },\
1024 { "_mach_make_memory_entry", 4817 },\
1025 { "mach_vm_purgable_control", 4818 },\
1026 { "mach_vm_page_info", 4819 }
1027#endif
1028
1029#ifdef __AfterMigUserHeader
1030__AfterMigUserHeader
1031#endif /* __AfterMigUserHeader */
1032
1033#endif /* _mach_vm_user_ */