-#ifdef MACH_KERNEL_PRIVATE
-
-/* address space shared region descriptor */
-
-struct shared_region_mapping {
- decl_mutex_data(, Lock) /* Synchronization */
- int ref_count;
- ipc_port_t text_region;
- vm_size_t text_size;
- ipc_port_t data_region;
- vm_size_t data_size;
- vm_offset_t region_mappings;
- vm_offset_t client_base;
- vm_offset_t alternate_base;
- vm_offset_t alternate_next;
- int flags;
- int depth;
- struct shared_region_object_chain *object_chain;
- struct shared_region_mapping *self;
- struct shared_region_mapping *next;
-};
-
-typedef struct shared_region_mapping *shared_region_mapping_t;
-
-struct shared_region_object_chain {
- shared_region_mapping_t object_chain_region;
- int depth;
- struct shared_region_object_chain *next;
-};
-
-typedef struct shared_region_object_chain *shared_region_object_chain_t;
-
-#else /* !MACH_KERNEL_PRIVATE */
-
-typedef void *shared_region_mapping_t;
-
-#endif /* MACH_KERNEL_PRIVATE */
-
-/* address space shared region descriptor */
-
-extern kern_return_t shared_region_mapping_info(
- shared_region_mapping_t shared_region,
- ipc_port_t *text_region,
- vm_size_t *text_size,
- ipc_port_t *data_region,
- vm_size_t *data_size,
- vm_offset_t *region_mappings,
- vm_offset_t *client_base,
- vm_offset_t *alternate_base,
- vm_offset_t *alternate_next,
- int *flags,
- shared_region_mapping_t *next);
-
-extern kern_return_t shared_region_mapping_create(
- ipc_port_t text_region,
- vm_size_t text_size,
- ipc_port_t data_region,
- vm_size_t data_size,
- vm_offset_t region_mappings,
- vm_offset_t client_base,
- shared_region_mapping_t *shared_region,
- vm_offset_t alt_base,
- vm_offset_t alt_next);
-
-extern kern_return_t shared_region_mapping_ref(
- shared_region_mapping_t shared_region);
-
-extern kern_return_t shared_region_mapping_dealloc(
- shared_region_mapping_t shared_region);
-
-extern kern_return_t
-shared_region_object_chain_attach(
- shared_region_mapping_t target_region,
- shared_region_mapping_t object_chain);
-
-/*
-extern kern_return_t vm_get_shared_region(
- task_t task,
- shared_region_mapping_t *shared_region);
-
-extern kern_return_t vm_set_shared_region(
- task_t task,
- shared_region_mapping_t shared_region);
-*/
-