ldr_inq_region(3)ldr_inq_region(3)NAMEldr_inq_region - Return module information about a region in a loaded
module
SYNOPSIS
#include <sys/types.h> #include <loader.h>
int ldr_inq_region(
ldr_process_t process,
ldr_module_t mod_id,
ldr_region_t region,
ldr_region_info_t *info,
size_t info_size,
size_t *ret_size );
LIBRARY
Standard C Library (libc)
PARAMETERS
Specifies the process whose address space contains the module for which
the region information is required. Identifies the module. The module
ID is returned when the module is first loaded. Identifies the region.
Points to a ldr_region_info_t buffer in which the information about the
loaded region is returned. Specifies the size of the allocated
ldr_region_info_t structure, in bytes. Specifies the number of types
actually returned into the buffer pointed to by the info parameter.
DESCRIPTION
The ldr_inq_region() function returns information about a specified
region within a specified module. The module is contained within the
address space of the specified process. The returned information
includes the number and name of the region, its protection attributes,
its size, and address information about the region in the process'
address space.
To obtain the unique identifier for the current process, use the call:
ldr_process_t ldr_my_process();
To obtain the unique identifier for the kernel, use the call:
ldr_process_t ldr_kernel_process();
The ldr_region_t values are unique identifiers for each loaded region
for a particular module. The value of the region parameter ranges from
0 (zero) to (maximum number of regions) -1.
NOTES
The loader assumes that each object module contains one or more
regions. A region is a separately relocated, virtually contiguous
range within a module. A region can contain text or data.
This function is currently implemented only for the current process and
the kernel.
RETURN VALUES
Upon successful completion, the function returns a value of 0 (zero).
If the operation fails, the function returns a negative error value and
errno is set to indicate the error.
ERRORS
If the ldr_inq_region() function fails, errno may be set to one of the
following values: The specified module ID or region ID is not valid.
The process identifier is not valid.
Additional errors may be returned from the underlying IPC mechanism
(for kernel/cross-process loading).
SEE ALSO
Functions: ldr_inq_module(3), ldr_next_module(3)ldr_inq_region(3)