vm_read
Function - Read the specified range of target task's address space.
SYNOPSIS
kern_return_t   vm_read
                (vm_task_t                          target_task,
                 vm_address_t                           address,
                 vm_size_t                                 size,
                 size                                  data_out,
                 target_task                         data_count);
Overwrite form:
kern_return_t   vm_read_overwrite
                (vm_task_t                          target_task,
                 vm_address_t                           address,
                 vm_size_t                                 size,
                 pointer_t                              data_in,
                 target_task                         data_count);
PARAMETERS
-  target_task 
 - 
[in task send right]
The port for the task whose memory is to be read.
 -  address 
 - 
[in scalar]
The address at which to start the read.
 -  size 
 - 
[in scalar]
The number of bytes to read.
 -  data_out
 - 
Out-pointer to dynamic array of bytes returned by the read.
 -  data_in
 - 
In-pointer to array of bytes that will be overwritten with the data returned by the read.
 -  data_count 
 - 
[in/out scalar]
On input, the maximum size of the buffer; on output, the 
size returned (in natural-sized units).
 
DESCRIPTION
The vm_read and vm_read_overwrite
functions read a portion of a task's virtual
memory (they enable tasks to read other tasks' memory).
The vm_read function returns the data in a dynamically
allocated array of bytes; the vm_read_overwrite function
places the data into a caller-specified buffer (the data_in
parameter).
NOTES
This interface is machine word length specific because of the virtual address
parameter.
RETURN VALUES
-  KERN_PROTECTION_FAILURE
 - 
Specified memory is valid, but does not permit reading.
 -  KERN_INVALID_ADDRESS
 - 
The address is illegal or specifies a non-allocated region, or there are 
less than size bytes of data following the address, or the region
specified by the data_in parameter cannot be written to.
 
RELATED INFORMATION
Functions:
vm_copy,
vm_deallocate,
vm_write.