/*
- * Copyright (c) 2008 Apple Inc. All rights reserved.
+ * Copyright (c) 2008-2016 Apple Inc. All rights reserved.
*
* @APPLE_OSREFERENCE_LICENSE_HEADER_START@
*
#include <vm/vm_pageout.h>
#include <vm/vm_protos.h>
-#if VM32_SUPPORT
+#ifdef VM32_SUPPORT
/*
* See vm_user.c for the real implementation of all of these functions.
kern_return_t result;
maddr = *addr;
- result = mach_vm_allocate(map, &maddr, size, flags);
+ result = mach_vm_allocate_external(map, &maddr, size, flags);
*addr = CAST_DOWN_EXPLICIT(vm32_offset_t, maddr);
return result;
kern_return_t result;
maddress = *address;
- result = mach_vm_map(target_map, &maddress, size, mask,
+ result = mach_vm_map_external(target_map, &maddress, size, mask,
flags, port, offset, copy,
cur_protection, max_protection, inheritance);
*address = CAST_DOWN_EXPLICIT(vm32_offset_t, maddress);
kern_return_t result;
maddress = *address;
- result = mach_vm_remap(target_map, &maddress, size, mask,
+ result = mach_vm_remap_external(target_map, &maddress, size, mask,
anywhere, src_map, memory_address, copy,
cur_protection, max_protection, inheritance);
*address = CAST_DOWN_EXPLICIT(vm32_offset_t, maddress);
return KERN_INVALID_ARGUMENT;
return vm_map_purgable_control(map,
- vm_map_trunc_page(address),
+ vm_map_trunc_page(address, PAGE_MASK),
control,
state);
}
if (VM_MAP_NULL == map)
return KERN_INVALID_ARGUMENT;
- return vm_map_page_query_internal(map,
- vm_map_trunc_page(offset),
- disposition, ref_count);
+ return vm_map_page_query_internal(
+ map,
+ vm_map_trunc_page(offset, PAGE_MASK),
+ disposition,
+ ref_count);
}
kern_return_t
return(KERN_SUCCESS);
}
+kern_return_t
+vm32__map_exec_lockdown(
+ vm_map_t map)
+{
+ if (map == VM_MAP_NULL)
+ return(KERN_INVALID_ARGUMENT);
+
+ vm_map_lock(map);
+ map->map_disallow_new_exec = TRUE;
+ vm_map_unlock(map);
+
+ return(KERN_SUCCESS);
+}
+
+
#endif /* VM32_SUPPORT */