Chameleon

Chameleon Svn Source Tree

Root/branches/cparm/i386/modules/include/mach/vm_map.h

1#ifndef_vm_map_user_
2#define_vm_map_user_
3
4/* Module vm_map */
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#ifndefvm_map_MSG_COUNT
29#definevm_map_MSG_COUNT31
30#endif/* vm_map_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 vm_region */
47#ifdefmig_external
48mig_external
49#else
50extern
51#endif/* mig_external */
52kern_return_t vm_region
53(
54vm_map_t target_task,
55vm_address_t *address,
56vm_size_t *size,
57vm_region_flavor_t flavor,
58vm_region_info_t info,
59mach_msg_type_number_t *infoCnt,
60mach_port_t *object_name
61);
62
63/* Routine vm_allocate */
64#ifdefmig_external
65mig_external
66#else
67extern
68#endif/* mig_external */
69kern_return_t vm_allocate
70(
71vm_map_t target_task,
72vm_address_t *address,
73vm_size_t size,
74int flags
75);
76
77/* Routine vm_deallocate */
78#ifdefmig_external
79mig_external
80#else
81extern
82#endif/* mig_external */
83kern_return_t vm_deallocate
84(
85vm_map_t target_task,
86vm_address_t address,
87vm_size_t size
88);
89
90/* Routine vm_protect */
91#ifdefmig_external
92mig_external
93#else
94extern
95#endif/* mig_external */
96kern_return_t vm_protect
97(
98vm_map_t target_task,
99vm_address_t address,
100vm_size_t size,
101boolean_t set_maximum,
102vm_prot_t new_protection
103);
104
105/* Routine vm_inherit */
106#ifdefmig_external
107mig_external
108#else
109extern
110#endif/* mig_external */
111kern_return_t vm_inherit
112(
113vm_map_t target_task,
114vm_address_t address,
115vm_size_t size,
116vm_inherit_t new_inheritance
117);
118
119/* Routine vm_read */
120#ifdefmig_external
121mig_external
122#else
123extern
124#endif/* mig_external */
125kern_return_t vm_read
126(
127vm_map_t target_task,
128vm_address_t address,
129vm_size_t size,
130vm_offset_t *data,
131mach_msg_type_number_t *dataCnt
132);
133
134/* Routine vm_read_list */
135#ifdefmig_external
136mig_external
137#else
138extern
139#endif/* mig_external */
140kern_return_t vm_read_list
141(
142vm_map_t target_task,
143vm_read_entry_t data_list,
144natural_t count
145);
146
147/* Routine vm_write */
148#ifdefmig_external
149mig_external
150#else
151extern
152#endif/* mig_external */
153kern_return_t vm_write
154(
155vm_map_t target_task,
156vm_address_t address,
157vm_offset_t data,
158mach_msg_type_number_t dataCnt
159);
160
161/* Routine vm_copy */
162#ifdefmig_external
163mig_external
164#else
165extern
166#endif/* mig_external */
167kern_return_t vm_copy
168(
169vm_map_t target_task,
170vm_address_t source_address,
171vm_size_t size,
172vm_address_t dest_address
173);
174
175/* Routine vm_read_overwrite */
176#ifdefmig_external
177mig_external
178#else
179extern
180#endif/* mig_external */
181kern_return_t vm_read_overwrite
182(
183vm_map_t target_task,
184vm_address_t address,
185vm_size_t size,
186vm_address_t data,
187vm_size_t *outsize
188);
189
190/* Routine vm_msync */
191#ifdefmig_external
192mig_external
193#else
194extern
195#endif/* mig_external */
196kern_return_t vm_msync
197(
198vm_map_t target_task,
199vm_address_t address,
200vm_size_t size,
201vm_sync_t sync_flags
202);
203
204/* Routine vm_behavior_set */
205#ifdefmig_external
206mig_external
207#else
208extern
209#endif/* mig_external */
210kern_return_t vm_behavior_set
211(
212vm_map_t target_task,
213vm_address_t address,
214vm_size_t size,
215vm_behavior_t new_behavior
216);
217
218/* Routine vm_map */
219#ifdefmig_external
220mig_external
221#else
222extern
223#endif/* mig_external */
224kern_return_t vm_map
225(
226vm_map_t target_task,
227vm_address_t *address,
228vm_size_t size,
229vm_address_t mask,
230int flags,
231mem_entry_name_port_t object,
232vm_offset_t offset,
233boolean_t copy,
234vm_prot_t cur_protection,
235vm_prot_t max_protection,
236vm_inherit_t inheritance
237);
238
239/* Routine vm_machine_attribute */
240#ifdefmig_external
241mig_external
242#else
243extern
244#endif/* mig_external */
245kern_return_t vm_machine_attribute
246(
247vm_map_t target_task,
248vm_address_t address,
249vm_size_t size,
250vm_machine_attribute_t attribute,
251vm_machine_attribute_val_t *value
252);
253
254/* Routine vm_remap */
255#ifdefmig_external
256mig_external
257#else
258extern
259#endif/* mig_external */
260kern_return_t vm_remap
261(
262vm_map_t target_task,
263vm_address_t *target_address,
264vm_size_t size,
265vm_address_t mask,
266int flags,
267vm_map_t src_task,
268vm_address_t src_address,
269boolean_t copy,
270vm_prot_t *cur_protection,
271vm_prot_t *max_protection,
272vm_inherit_t inheritance
273);
274
275/* Routine task_wire */
276#ifdefmig_external
277mig_external
278#else
279extern
280#endif/* mig_external */
281kern_return_t task_wire
282(
283vm_map_t target_task,
284boolean_t must_wire
285);
286
287/* Routine mach_make_memory_entry */
288#ifdefmig_external
289mig_external
290#else
291extern
292#endif/* mig_external */
293kern_return_t mach_make_memory_entry
294(
295vm_map_t target_task,
296vm_size_t *size,
297vm_offset_t offset,
298vm_prot_t permission,
299mem_entry_name_port_t *object_handle,
300mem_entry_name_port_t parent_entry
301);
302
303/* Routine vm_map_page_query */
304#ifdefmig_external
305mig_external
306#else
307extern
308#endif/* mig_external */
309kern_return_t vm_map_page_query
310(
311vm_map_t target_map,
312vm_offset_t offset,
313integer_t *disposition,
314integer_t *ref_count
315);
316
317/* Routine mach_vm_region_info */
318#ifdefmig_external
319mig_external
320#else
321extern
322#endif/* mig_external */
323kern_return_t mach_vm_region_info
324(
325vm_map_t task,
326vm_address_t address,
327vm_info_region_t *region,
328vm_info_object_array_t *objects,
329mach_msg_type_number_t *objectsCnt
330);
331
332/* Routine vm_mapped_pages_info */
333#ifdefmig_external
334mig_external
335#else
336extern
337#endif/* mig_external */
338kern_return_t vm_mapped_pages_info
339(
340vm_map_t task,
341page_address_array_t *pages,
342mach_msg_type_number_t *pagesCnt
343);
344
345/* Routine vm_region_recurse */
346#ifdefmig_external
347mig_external
348#else
349extern
350#endif/* mig_external */
351kern_return_t vm_region_recurse
352(
353vm_map_t target_task,
354vm_address_t *address,
355vm_size_t *size,
356natural_t *nesting_depth,
357vm_region_recurse_info_t info,
358mach_msg_type_number_t *infoCnt
359);
360
361/* Routine vm_region_recurse_64 */
362#ifdefmig_external
363mig_external
364#else
365extern
366#endif/* mig_external */
367kern_return_t vm_region_recurse_64
368(
369vm_map_t target_task,
370vm_address_t *address,
371vm_size_t *size,
372natural_t *nesting_depth,
373vm_region_recurse_info_t info,
374mach_msg_type_number_t *infoCnt
375);
376
377/* Routine mach_vm_region_info_64 */
378#ifdefmig_external
379mig_external
380#else
381extern
382#endif/* mig_external */
383kern_return_t mach_vm_region_info_64
384(
385vm_map_t task,
386vm_address_t address,
387vm_info_region_64_t *region,
388vm_info_object_array_t *objects,
389mach_msg_type_number_t *objectsCnt
390);
391
392/* Routine vm_region_64 */
393#ifdefmig_external
394mig_external
395#else
396extern
397#endif/* mig_external */
398kern_return_t vm_region_64
399(
400vm_map_t target_task,
401vm_address_t *address,
402vm_size_t *size,
403vm_region_flavor_t flavor,
404vm_region_info_t info,
405mach_msg_type_number_t *infoCnt,
406mach_port_t *object_name
407);
408
409/* Routine mach_make_memory_entry_64 */
410#ifdefmig_external
411mig_external
412#else
413extern
414#endif/* mig_external */
415kern_return_t mach_make_memory_entry_64
416(
417vm_map_t target_task,
418memory_object_size_t *size,
419memory_object_offset_t offset,
420vm_prot_t permission,
421mach_port_t *object_handle,
422mem_entry_name_port_t parent_entry
423);
424
425/* Routine vm_map_64 */
426#ifdefmig_external
427mig_external
428#else
429extern
430#endif/* mig_external */
431kern_return_t vm_map_64
432(
433vm_map_t target_task,
434vm_address_t *address,
435vm_size_t size,
436vm_address_t mask,
437int flags,
438mem_entry_name_port_t object,
439memory_object_offset_t offset,
440boolean_t copy,
441vm_prot_t cur_protection,
442vm_prot_t max_protection,
443vm_inherit_t inheritance
444);
445
446/* Routine vm_purgable_control */
447#ifdefmig_external
448mig_external
449#else
450extern
451#endif/* mig_external */
452kern_return_t vm_purgable_control
453(
454vm_map_t target_task,
455vm_address_t address,
456vm_purgable_t control,
457int *state
458);
459
460__END_DECLS
461
462/********************** Caution **************************/
463/* The following data types should be used to calculate */
464/* maximum message sizes only. The actual message may be */
465/* smaller, and the position of the arguments within the */
466/* message layout may vary from what is presented here. */
467/* For example, if any of the arguments are variable- */
468/* sized, and less than the maximum is sent, the data */
469/* will be packed tight in the actual message to reduce */
470/* the presence of holes. */
471/********************** Caution **************************/
472
473/* typedefs for all requests */
474
475#ifndef __Request__vm_map_subsystem__defined
476#define __Request__vm_map_subsystem__defined
477
478#ifdef __MigPackStructs
479#pragma pack(4)
480#endif
481typedef struct {
482mach_msg_header_t Head;
483NDR_record_t NDR;
484vm_address_t address;
485vm_region_flavor_t flavor;
486mach_msg_type_number_t infoCnt;
487} __Request__vm_region_t;
488#ifdef __MigPackStructs
489#pragma pack()
490#endif
491
492#ifdef __MigPackStructs
493#pragma pack(4)
494#endif
495typedef struct {
496mach_msg_header_t Head;
497NDR_record_t NDR;
498vm_address_t address;
499vm_size_t size;
500int flags;
501} __Request__vm_allocate_t;
502#ifdef __MigPackStructs
503#pragma pack()
504#endif
505
506#ifdef __MigPackStructs
507#pragma pack(4)
508#endif
509typedef struct {
510mach_msg_header_t Head;
511NDR_record_t NDR;
512vm_address_t address;
513vm_size_t size;
514} __Request__vm_deallocate_t;
515#ifdef __MigPackStructs
516#pragma pack()
517#endif
518
519#ifdef __MigPackStructs
520#pragma pack(4)
521#endif
522typedef struct {
523mach_msg_header_t Head;
524NDR_record_t NDR;
525vm_address_t address;
526vm_size_t size;
527boolean_t set_maximum;
528vm_prot_t new_protection;
529} __Request__vm_protect_t;
530#ifdef __MigPackStructs
531#pragma pack()
532#endif
533
534#ifdef __MigPackStructs
535#pragma pack(4)
536#endif
537typedef struct {
538mach_msg_header_t Head;
539NDR_record_t NDR;
540vm_address_t address;
541vm_size_t size;
542vm_inherit_t new_inheritance;
543} __Request__vm_inherit_t;
544#ifdef __MigPackStructs
545#pragma pack()
546#endif
547
548#ifdef __MigPackStructs
549#pragma pack(4)
550#endif
551typedef struct {
552mach_msg_header_t Head;
553NDR_record_t NDR;
554vm_address_t address;
555vm_size_t size;
556} __Request__vm_read_t;
557#ifdef __MigPackStructs
558#pragma pack()
559#endif
560
561#ifdef __MigPackStructs
562#pragma pack(4)
563#endif
564typedef struct {
565mach_msg_header_t Head;
566NDR_record_t NDR;
567vm_read_entry_t data_list;
568natural_t count;
569} __Request__vm_read_list_t;
570#ifdef __MigPackStructs
571#pragma pack()
572#endif
573
574#ifdef __MigPackStructs
575#pragma pack(4)
576#endif
577typedef struct {
578mach_msg_header_t Head;
579/* start of the kernel processed data */
580mach_msg_body_t msgh_body;
581mach_msg_ool_descriptor_t data;
582/* end of the kernel processed data */
583NDR_record_t NDR;
584vm_address_t address;
585mach_msg_type_number_t dataCnt;
586} __Request__vm_write_t;
587#ifdef __MigPackStructs
588#pragma pack()
589#endif
590
591#ifdef __MigPackStructs
592#pragma pack(4)
593#endif
594typedef struct {
595mach_msg_header_t Head;
596NDR_record_t NDR;
597vm_address_t source_address;
598vm_size_t size;
599vm_address_t dest_address;
600} __Request__vm_copy_t;
601#ifdef __MigPackStructs
602#pragma pack()
603#endif
604
605#ifdef __MigPackStructs
606#pragma pack(4)
607#endif
608typedef struct {
609mach_msg_header_t Head;
610NDR_record_t NDR;
611vm_address_t address;
612vm_size_t size;
613vm_address_t data;
614} __Request__vm_read_overwrite_t;
615#ifdef __MigPackStructs
616#pragma pack()
617#endif
618
619#ifdef __MigPackStructs
620#pragma pack(4)
621#endif
622typedef struct {
623mach_msg_header_t Head;
624NDR_record_t NDR;
625vm_address_t address;
626vm_size_t size;
627vm_sync_t sync_flags;
628} __Request__vm_msync_t;
629#ifdef __MigPackStructs
630#pragma pack()
631#endif
632
633#ifdef __MigPackStructs
634#pragma pack(4)
635#endif
636typedef struct {
637mach_msg_header_t Head;
638NDR_record_t NDR;
639vm_address_t address;
640vm_size_t size;
641vm_behavior_t new_behavior;
642} __Request__vm_behavior_set_t;
643#ifdef __MigPackStructs
644#pragma pack()
645#endif
646
647#ifdef __MigPackStructs
648#pragma pack(4)
649#endif
650typedef struct {
651mach_msg_header_t Head;
652/* start of the kernel processed data */
653mach_msg_body_t msgh_body;
654mach_msg_port_descriptor_t object;
655/* end of the kernel processed data */
656NDR_record_t NDR;
657vm_address_t address;
658vm_size_t size;
659vm_address_t mask;
660int flags;
661vm_offset_t offset;
662boolean_t copy;
663vm_prot_t cur_protection;
664vm_prot_t max_protection;
665vm_inherit_t inheritance;
666} __Request__vm_map_t;
667#ifdef __MigPackStructs
668#pragma pack()
669#endif
670
671#ifdef __MigPackStructs
672#pragma pack(4)
673#endif
674typedef struct {
675mach_msg_header_t Head;
676NDR_record_t NDR;
677vm_address_t address;
678vm_size_t size;
679vm_machine_attribute_t attribute;
680vm_machine_attribute_val_t value;
681} __Request__vm_machine_attribute_t;
682#ifdef __MigPackStructs
683#pragma pack()
684#endif
685
686#ifdef __MigPackStructs
687#pragma pack(4)
688#endif
689typedef struct {
690mach_msg_header_t Head;
691/* start of the kernel processed data */
692mach_msg_body_t msgh_body;
693mach_msg_port_descriptor_t src_task;
694/* end of the kernel processed data */
695NDR_record_t NDR;
696vm_address_t target_address;
697vm_size_t size;
698vm_address_t mask;
699int flags;
700vm_address_t src_address;
701boolean_t copy;
702vm_inherit_t inheritance;
703} __Request__vm_remap_t;
704#ifdef __MigPackStructs
705#pragma pack()
706#endif
707
708#ifdef __MigPackStructs
709#pragma pack(4)
710#endif
711typedef struct {
712mach_msg_header_t Head;
713NDR_record_t NDR;
714boolean_t must_wire;
715} __Request__task_wire_t;
716#ifdef __MigPackStructs
717#pragma pack()
718#endif
719
720#ifdef __MigPackStructs
721#pragma pack(4)
722#endif
723typedef struct {
724mach_msg_header_t Head;
725/* start of the kernel processed data */
726mach_msg_body_t msgh_body;
727mach_msg_port_descriptor_t parent_entry;
728/* end of the kernel processed data */
729NDR_record_t NDR;
730vm_size_t size;
731vm_offset_t offset;
732vm_prot_t permission;
733} __Request__mach_make_memory_entry_t;
734#ifdef __MigPackStructs
735#pragma pack()
736#endif
737
738#ifdef __MigPackStructs
739#pragma pack(4)
740#endif
741typedef struct {
742mach_msg_header_t Head;
743NDR_record_t NDR;
744vm_offset_t offset;
745} __Request__vm_map_page_query_t;
746#ifdef __MigPackStructs
747#pragma pack()
748#endif
749
750#ifdef __MigPackStructs
751#pragma pack(4)
752#endif
753typedef struct {
754mach_msg_header_t Head;
755NDR_record_t NDR;
756vm_address_t address;
757} __Request__mach_vm_region_info_t;
758#ifdef __MigPackStructs
759#pragma pack()
760#endif
761
762#ifdef __MigPackStructs
763#pragma pack(4)
764#endif
765typedef struct {
766mach_msg_header_t Head;
767} __Request__vm_mapped_pages_info_t;
768#ifdef __MigPackStructs
769#pragma pack()
770#endif
771
772#ifdef __MigPackStructs
773#pragma pack(4)
774#endif
775typedef struct {
776mach_msg_header_t Head;
777NDR_record_t NDR;
778vm_address_t address;
779natural_t nesting_depth;
780mach_msg_type_number_t infoCnt;
781} __Request__vm_region_recurse_t;
782#ifdef __MigPackStructs
783#pragma pack()
784#endif
785
786#ifdef __MigPackStructs
787#pragma pack(4)
788#endif
789typedef struct {
790mach_msg_header_t Head;
791NDR_record_t NDR;
792vm_address_t address;
793natural_t nesting_depth;
794mach_msg_type_number_t infoCnt;
795} __Request__vm_region_recurse_64_t;
796#ifdef __MigPackStructs
797#pragma pack()
798#endif
799
800#ifdef __MigPackStructs
801#pragma pack(4)
802#endif
803typedef struct {
804mach_msg_header_t Head;
805NDR_record_t NDR;
806vm_address_t address;
807} __Request__mach_vm_region_info_64_t;
808#ifdef __MigPackStructs
809#pragma pack()
810#endif
811
812#ifdef __MigPackStructs
813#pragma pack(4)
814#endif
815typedef struct {
816mach_msg_header_t Head;
817NDR_record_t NDR;
818vm_address_t address;
819vm_region_flavor_t flavor;
820mach_msg_type_number_t infoCnt;
821} __Request__vm_region_64_t;
822#ifdef __MigPackStructs
823#pragma pack()
824#endif
825
826#ifdef __MigPackStructs
827#pragma pack(4)
828#endif
829typedef struct {
830mach_msg_header_t Head;
831/* start of the kernel processed data */
832mach_msg_body_t msgh_body;
833mach_msg_port_descriptor_t parent_entry;
834/* end of the kernel processed data */
835NDR_record_t NDR;
836memory_object_size_t size;
837memory_object_offset_t offset;
838vm_prot_t permission;
839} __Request__mach_make_memory_entry_64_t;
840#ifdef __MigPackStructs
841#pragma pack()
842#endif
843
844#ifdef __MigPackStructs
845#pragma pack(4)
846#endif
847typedef struct {
848mach_msg_header_t Head;
849/* start of the kernel processed data */
850mach_msg_body_t msgh_body;
851mach_msg_port_descriptor_t object;
852/* end of the kernel processed data */
853NDR_record_t NDR;
854vm_address_t address;
855vm_size_t size;
856vm_address_t mask;
857int flags;
858memory_object_offset_t offset;
859boolean_t copy;
860vm_prot_t cur_protection;
861vm_prot_t max_protection;
862vm_inherit_t inheritance;
863} __Request__vm_map_64_t;
864#ifdef __MigPackStructs
865#pragma pack()
866#endif
867
868#ifdef __MigPackStructs
869#pragma pack(4)
870#endif
871typedef struct {
872mach_msg_header_t Head;
873NDR_record_t NDR;
874vm_address_t address;
875vm_purgable_t control;
876int state;
877} __Request__vm_purgable_control_t;
878#ifdef __MigPackStructs
879#pragma pack()
880#endif
881#endif /* !__Request__vm_map_subsystem__defined */
882
883/* union of all requests */
884
885#ifndef __RequestUnion__vm_map_subsystem__defined
886#define __RequestUnion__vm_map_subsystem__defined
887union __RequestUnion__vm_map_subsystem {
888__Request__vm_region_t Request_vm_region;
889__Request__vm_allocate_t Request_vm_allocate;
890__Request__vm_deallocate_t Request_vm_deallocate;
891__Request__vm_protect_t Request_vm_protect;
892__Request__vm_inherit_t Request_vm_inherit;
893__Request__vm_read_t Request_vm_read;
894__Request__vm_read_list_t Request_vm_read_list;
895__Request__vm_write_t Request_vm_write;
896__Request__vm_copy_t Request_vm_copy;
897__Request__vm_read_overwrite_t Request_vm_read_overwrite;
898__Request__vm_msync_t Request_vm_msync;
899__Request__vm_behavior_set_t Request_vm_behavior_set;
900__Request__vm_map_t Request_vm_map;
901__Request__vm_machine_attribute_t Request_vm_machine_attribute;
902__Request__vm_remap_t Request_vm_remap;
903__Request__task_wire_t Request_task_wire;
904__Request__mach_make_memory_entry_t Request_mach_make_memory_entry;
905__Request__vm_map_page_query_t Request_vm_map_page_query;
906__Request__mach_vm_region_info_t Request_mach_vm_region_info;
907__Request__vm_mapped_pages_info_t Request_vm_mapped_pages_info;
908__Request__vm_region_recurse_t Request_vm_region_recurse;
909__Request__vm_region_recurse_64_t Request_vm_region_recurse_64;
910__Request__mach_vm_region_info_64_t Request_mach_vm_region_info_64;
911__Request__vm_region_64_t Request_vm_region_64;
912__Request__mach_make_memory_entry_64_t Request_mach_make_memory_entry_64;
913__Request__vm_map_64_t Request_vm_map_64;
914__Request__vm_purgable_control_t Request_vm_purgable_control;
915};
916#endif /* !__RequestUnion__vm_map_subsystem__defined */
917/* typedefs for all replies */
918
919#ifndef __Reply__vm_map_subsystem__defined
920#define __Reply__vm_map_subsystem__defined
921
922#ifdef __MigPackStructs
923#pragma pack(4)
924#endif
925typedef struct {
926mach_msg_header_t Head;
927/* start of the kernel processed data */
928mach_msg_body_t msgh_body;
929mach_msg_port_descriptor_t object_name;
930/* end of the kernel processed data */
931NDR_record_t NDR;
932vm_address_t address;
933vm_size_t size;
934mach_msg_type_number_t infoCnt;
935int info[10];
936} __Reply__vm_region_t;
937#ifdef __MigPackStructs
938#pragma pack()
939#endif
940
941#ifdef __MigPackStructs
942#pragma pack(4)
943#endif
944typedef struct {
945mach_msg_header_t Head;
946NDR_record_t NDR;
947kern_return_t RetCode;
948vm_address_t address;
949} __Reply__vm_allocate_t;
950#ifdef __MigPackStructs
951#pragma pack()
952#endif
953
954#ifdef __MigPackStructs
955#pragma pack(4)
956#endif
957typedef struct {
958mach_msg_header_t Head;
959NDR_record_t NDR;
960kern_return_t RetCode;
961} __Reply__vm_deallocate_t;
962#ifdef __MigPackStructs
963#pragma pack()
964#endif
965
966#ifdef __MigPackStructs
967#pragma pack(4)
968#endif
969typedef struct {
970mach_msg_header_t Head;
971NDR_record_t NDR;
972kern_return_t RetCode;
973} __Reply__vm_protect_t;
974#ifdef __MigPackStructs
975#pragma pack()
976#endif
977
978#ifdef __MigPackStructs
979#pragma pack(4)
980#endif
981typedef struct {
982mach_msg_header_t Head;
983NDR_record_t NDR;
984kern_return_t RetCode;
985} __Reply__vm_inherit_t;
986#ifdef __MigPackStructs
987#pragma pack()
988#endif
989
990#ifdef __MigPackStructs
991#pragma pack(4)
992#endif
993typedef struct {
994mach_msg_header_t Head;
995/* start of the kernel processed data */
996mach_msg_body_t msgh_body;
997mach_msg_ool_descriptor_t data;
998/* end of the kernel processed data */
999NDR_record_t NDR;
1000mach_msg_type_number_t dataCnt;
1001} __Reply__vm_read_t;
1002#ifdef __MigPackStructs
1003#pragma pack()
1004#endif
1005
1006#ifdef __MigPackStructs
1007#pragma pack(4)
1008#endif
1009typedef struct {
1010mach_msg_header_t Head;
1011NDR_record_t NDR;
1012kern_return_t RetCode;
1013vm_read_entry_t data_list;
1014} __Reply__vm_read_list_t;
1015#ifdef __MigPackStructs
1016#pragma pack()
1017#endif
1018
1019#ifdef __MigPackStructs
1020#pragma pack(4)
1021#endif
1022typedef struct {
1023mach_msg_header_t Head;
1024NDR_record_t NDR;
1025kern_return_t RetCode;
1026} __Reply__vm_write_t;
1027#ifdef __MigPackStructs
1028#pragma pack()
1029#endif
1030
1031#ifdef __MigPackStructs
1032#pragma pack(4)
1033#endif
1034typedef struct {
1035mach_msg_header_t Head;
1036NDR_record_t NDR;
1037kern_return_t RetCode;
1038} __Reply__vm_copy_t;
1039#ifdef __MigPackStructs
1040#pragma pack()
1041#endif
1042
1043#ifdef __MigPackStructs
1044#pragma pack(4)
1045#endif
1046typedef struct {
1047mach_msg_header_t Head;
1048NDR_record_t NDR;
1049kern_return_t RetCode;
1050vm_size_t outsize;
1051} __Reply__vm_read_overwrite_t;
1052#ifdef __MigPackStructs
1053#pragma pack()
1054#endif
1055
1056#ifdef __MigPackStructs
1057#pragma pack(4)
1058#endif
1059typedef struct {
1060mach_msg_header_t Head;
1061NDR_record_t NDR;
1062kern_return_t RetCode;
1063} __Reply__vm_msync_t;
1064#ifdef __MigPackStructs
1065#pragma pack()
1066#endif
1067
1068#ifdef __MigPackStructs
1069#pragma pack(4)
1070#endif
1071typedef struct {
1072mach_msg_header_t Head;
1073NDR_record_t NDR;
1074kern_return_t RetCode;
1075} __Reply__vm_behavior_set_t;
1076#ifdef __MigPackStructs
1077#pragma pack()
1078#endif
1079
1080#ifdef __MigPackStructs
1081#pragma pack(4)
1082#endif
1083typedef struct {
1084mach_msg_header_t Head;
1085NDR_record_t NDR;
1086kern_return_t RetCode;
1087vm_address_t address;
1088} __Reply__vm_map_t;
1089#ifdef __MigPackStructs
1090#pragma pack()
1091#endif
1092
1093#ifdef __MigPackStructs
1094#pragma pack(4)
1095#endif
1096typedef struct {
1097mach_msg_header_t Head;
1098NDR_record_t NDR;
1099kern_return_t RetCode;
1100vm_machine_attribute_val_t value;
1101} __Reply__vm_machine_attribute_t;
1102#ifdef __MigPackStructs
1103#pragma pack()
1104#endif
1105
1106#ifdef __MigPackStructs
1107#pragma pack(4)
1108#endif
1109typedef struct {
1110mach_msg_header_t Head;
1111NDR_record_t NDR;
1112kern_return_t RetCode;
1113vm_address_t target_address;
1114vm_prot_t cur_protection;
1115vm_prot_t max_protection;
1116} __Reply__vm_remap_t;
1117#ifdef __MigPackStructs
1118#pragma pack()
1119#endif
1120
1121#ifdef __MigPackStructs
1122#pragma pack(4)
1123#endif
1124typedef struct {
1125mach_msg_header_t Head;
1126NDR_record_t NDR;
1127kern_return_t RetCode;
1128} __Reply__task_wire_t;
1129#ifdef __MigPackStructs
1130#pragma pack()
1131#endif
1132
1133#ifdef __MigPackStructs
1134#pragma pack(4)
1135#endif
1136typedef struct {
1137mach_msg_header_t Head;
1138/* start of the kernel processed data */
1139mach_msg_body_t msgh_body;
1140mach_msg_port_descriptor_t object_handle;
1141/* end of the kernel processed data */
1142NDR_record_t NDR;
1143vm_size_t size;
1144} __Reply__mach_make_memory_entry_t;
1145#ifdef __MigPackStructs
1146#pragma pack()
1147#endif
1148
1149#ifdef __MigPackStructs
1150#pragma pack(4)
1151#endif
1152typedef struct {
1153mach_msg_header_t Head;
1154NDR_record_t NDR;
1155kern_return_t RetCode;
1156integer_t disposition;
1157integer_t ref_count;
1158} __Reply__vm_map_page_query_t;
1159#ifdef __MigPackStructs
1160#pragma pack()
1161#endif
1162
1163#ifdef __MigPackStructs
1164#pragma pack(4)
1165#endif
1166typedef struct {
1167mach_msg_header_t Head;
1168/* start of the kernel processed data */
1169mach_msg_body_t msgh_body;
1170mach_msg_ool_descriptor_t objects;
1171/* end of the kernel processed data */
1172NDR_record_t NDR;
1173vm_info_region_t region;
1174mach_msg_type_number_t objectsCnt;
1175} __Reply__mach_vm_region_info_t;
1176#ifdef __MigPackStructs
1177#pragma pack()
1178#endif
1179
1180#ifdef __MigPackStructs
1181#pragma pack(4)
1182#endif
1183typedef struct {
1184mach_msg_header_t Head;
1185/* start of the kernel processed data */
1186mach_msg_body_t msgh_body;
1187mach_msg_ool_descriptor_t pages;
1188/* end of the kernel processed data */
1189NDR_record_t NDR;
1190mach_msg_type_number_t pagesCnt;
1191} __Reply__vm_mapped_pages_info_t;
1192#ifdef __MigPackStructs
1193#pragma pack()
1194#endif
1195
1196#ifdef __MigPackStructs
1197#pragma pack(4)
1198#endif
1199typedef struct {
1200mach_msg_header_t Head;
1201NDR_record_t NDR;
1202kern_return_t RetCode;
1203vm_address_t address;
1204vm_size_t size;
1205natural_t nesting_depth;
1206mach_msg_type_number_t infoCnt;
1207int info[19];
1208} __Reply__vm_region_recurse_t;
1209#ifdef __MigPackStructs
1210#pragma pack()
1211#endif
1212
1213#ifdef __MigPackStructs
1214#pragma pack(4)
1215#endif
1216typedef struct {
1217mach_msg_header_t Head;
1218NDR_record_t NDR;
1219kern_return_t RetCode;
1220vm_address_t address;
1221vm_size_t size;
1222natural_t nesting_depth;
1223mach_msg_type_number_t infoCnt;
1224int info[19];
1225} __Reply__vm_region_recurse_64_t;
1226#ifdef __MigPackStructs
1227#pragma pack()
1228#endif
1229
1230#ifdef __MigPackStructs
1231#pragma pack(4)
1232#endif
1233typedef struct {
1234mach_msg_header_t Head;
1235/* start of the kernel processed data */
1236mach_msg_body_t msgh_body;
1237mach_msg_ool_descriptor_t objects;
1238/* end of the kernel processed data */
1239NDR_record_t NDR;
1240vm_info_region_64_t region;
1241mach_msg_type_number_t objectsCnt;
1242} __Reply__mach_vm_region_info_64_t;
1243#ifdef __MigPackStructs
1244#pragma pack()
1245#endif
1246
1247#ifdef __MigPackStructs
1248#pragma pack(4)
1249#endif
1250typedef struct {
1251mach_msg_header_t Head;
1252/* start of the kernel processed data */
1253mach_msg_body_t msgh_body;
1254mach_msg_port_descriptor_t object_name;
1255/* end of the kernel processed data */
1256NDR_record_t NDR;
1257vm_address_t address;
1258vm_size_t size;
1259mach_msg_type_number_t infoCnt;
1260int info[10];
1261} __Reply__vm_region_64_t;
1262#ifdef __MigPackStructs
1263#pragma pack()
1264#endif
1265
1266#ifdef __MigPackStructs
1267#pragma pack(4)
1268#endif
1269typedef struct {
1270mach_msg_header_t Head;
1271/* start of the kernel processed data */
1272mach_msg_body_t msgh_body;
1273mach_msg_port_descriptor_t object_handle;
1274/* end of the kernel processed data */
1275NDR_record_t NDR;
1276memory_object_size_t size;
1277} __Reply__mach_make_memory_entry_64_t;
1278#ifdef __MigPackStructs
1279#pragma pack()
1280#endif
1281
1282#ifdef __MigPackStructs
1283#pragma pack(4)
1284#endif
1285typedef struct {
1286mach_msg_header_t Head;
1287NDR_record_t NDR;
1288kern_return_t RetCode;
1289vm_address_t address;
1290} __Reply__vm_map_64_t;
1291#ifdef __MigPackStructs
1292#pragma pack()
1293#endif
1294
1295#ifdef __MigPackStructs
1296#pragma pack(4)
1297#endif
1298typedef struct {
1299mach_msg_header_t Head;
1300NDR_record_t NDR;
1301kern_return_t RetCode;
1302int state;
1303} __Reply__vm_purgable_control_t;
1304#ifdef __MigPackStructs
1305#pragma pack()
1306#endif
1307#endif /* !__Reply__vm_map_subsystem__defined */
1308
1309/* union of all replies */
1310
1311#ifndef __ReplyUnion__vm_map_subsystem__defined
1312#define __ReplyUnion__vm_map_subsystem__defined
1313union __ReplyUnion__vm_map_subsystem {
1314__Reply__vm_region_t Reply_vm_region;
1315__Reply__vm_allocate_t Reply_vm_allocate;
1316__Reply__vm_deallocate_t Reply_vm_deallocate;
1317__Reply__vm_protect_t Reply_vm_protect;
1318__Reply__vm_inherit_t Reply_vm_inherit;
1319__Reply__vm_read_t Reply_vm_read;
1320__Reply__vm_read_list_t Reply_vm_read_list;
1321__Reply__vm_write_t Reply_vm_write;
1322__Reply__vm_copy_t Reply_vm_copy;
1323__Reply__vm_read_overwrite_t Reply_vm_read_overwrite;
1324__Reply__vm_msync_t Reply_vm_msync;
1325__Reply__vm_behavior_set_t Reply_vm_behavior_set;
1326__Reply__vm_map_t Reply_vm_map;
1327__Reply__vm_machine_attribute_t Reply_vm_machine_attribute;
1328__Reply__vm_remap_t Reply_vm_remap;
1329__Reply__task_wire_t Reply_task_wire;
1330__Reply__mach_make_memory_entry_t Reply_mach_make_memory_entry;
1331__Reply__vm_map_page_query_t Reply_vm_map_page_query;
1332__Reply__mach_vm_region_info_t Reply_mach_vm_region_info;
1333__Reply__vm_mapped_pages_info_t Reply_vm_mapped_pages_info;
1334__Reply__vm_region_recurse_t Reply_vm_region_recurse;
1335__Reply__vm_region_recurse_64_t Reply_vm_region_recurse_64;
1336__Reply__mach_vm_region_info_64_t Reply_mach_vm_region_info_64;
1337__Reply__vm_region_64_t Reply_vm_region_64;
1338__Reply__mach_make_memory_entry_64_t Reply_mach_make_memory_entry_64;
1339__Reply__vm_map_64_t Reply_vm_map_64;
1340__Reply__vm_purgable_control_t Reply_vm_purgable_control;
1341};
1342#endif /* !__RequestUnion__vm_map_subsystem__defined */
1343
1344#ifndef subsystem_to_name_map_vm_map
1345#define subsystem_to_name_map_vm_map \
1346 { "vm_region", 3800 },\
1347 { "vm_allocate", 3801 },\
1348 { "vm_deallocate", 3802 },\
1349 { "vm_protect", 3803 },\
1350 { "vm_inherit", 3804 },\
1351 { "vm_read", 3805 },\
1352 { "vm_read_list", 3806 },\
1353 { "vm_write", 3807 },\
1354 { "vm_copy", 3808 },\
1355 { "vm_read_overwrite", 3809 },\
1356 { "vm_msync", 3810 },\
1357 { "vm_behavior_set", 3811 },\
1358 { "vm_map", 3812 },\
1359 { "vm_machine_attribute", 3813 },\
1360 { "vm_remap", 3814 },\
1361 { "task_wire", 3815 },\
1362 { "mach_make_memory_entry", 3816 },\
1363 { "vm_map_page_query", 3817 },\
1364 { "mach_vm_region_info", 3818 },\
1365 { "vm_mapped_pages_info", 3819 },\
1366 { "vm_region_recurse", 3821 },\
1367 { "vm_region_recurse_64", 3822 },\
1368 { "mach_vm_region_info_64", 3823 },\
1369 { "vm_region_64", 3824 },\
1370 { "mach_make_memory_entry_64", 3825 },\
1371 { "vm_map_64", 3826 },\
1372 { "vm_purgable_control", 3830 }
1373#endif
1374
1375#ifdef __AfterMigUserHeader
1376__AfterMigUserHeader
1377#endif /* __AfterMigUserHeader */
1378
1379#endif /* _vm_map_user_ */
1380

Archive Download this file

Revision: 2182