[Previous] [Contents] [Next]

iofunc_mmap_default()

Default handler for _IO_MMAP messages

Synopsis:

#include <sys/iofunc.h>

int iofunc_mmap_default ( resmgr_context_t * hdr,
                          io_mmap_t * msg,
                          iofunc_ocb_t * ocb );

Library:

libc

Description:

The iofunc_mmap_default() function provides functionality for the _IO_MMAP message. The _IO_MMAP message is private to the Memory Manager (a part of the Neutrino microkernel's procnto). This function can be placed directly into the io_funcs table passed to resmgr_attach(), at the mmap position.

Note that if the Process Manager is to be able to execute from this resource, then you must use the iofunc_mmap() function.

The iofunc_mmap_default() function calls iofunc_mmap(), to do the actual work, and (if installed in the io_funcs table) issues the reply back to the client.

Returns:

EOK
Successful completion.
EROFS
An attempt to memory map (mmap) a read-only file, using the PROT_WRITE page protection mode.
EACCES
The client doesn't have the appropriate permissions.
ENOMEM
Insufficient memory exists to allocate internal resources required to effect the mapping.

Classification:

QNX 6

Safety:
Cancellation point No
Interrupt handler No
Signal handler Yes
Thread Yes

See also:

iofunc_chmod_default(), iofunc_chown_default(), iofunc_close_dup_default(), iofunc_close_ocb_default(), iofunc_devctl_default(), iofunc_lock_default(), iofunc_lseek_default(), iofunc_mmap(), iofunc_open_default(), iofunc_pathconf_default(), iofunc_stat_default(), iofunc_time_update(), iofunc_unblock_default(), iofunc_utime_default(), resmgr_attach()


[Previous] [Contents] [Next]