modload(2)


modload -- load a loadable kernel module on demand

Synopsis

   #include <sys/mod.h>
   

int modload(const char *pathname);

Description

modload allows processes with privilege P_LOADMOD to demand-load a loadable module into a running system.

pathname gives the pathname of the module to be loaded, specified either as a module name or as an absolute pathname. If pathname specifies a module name, modload searches for the module's object file on disk in the list of directories set by modpath(2) (including the default directory /etc/conf/mod.d). If pathname specifies an absolute pathname, only pathname is used to locate the module's object file.

Tasks performed during the load operation include:

Return values

On success, modload returns the integer module id of the loaded module. On failure, modload returns -1 and sets errno to identify the error.

Errors

In the following conditions, modload fails and sets errno to:

EACCES
Search permission was denied by a pathname component.

ENOENT
The file pathname does not exist.

EINVAL
The file pathname is not preconfigured for dynamic loading or has invalid dependencies on other modules (such as a circular dependency).

EPERM
The caller does not possess P_LOADMOD privileges.

ERELOC
Error occurred processing the module's object file, or the module references symbols not defined in the running kernel, or the module references symbols in another loadable module, but it did not define its dependence on this module in its Master file.

EBADVER
The version number specified in the module's wrapper routine does not match the version number for the running kernel.

ENAMETOOLONG
pathname is more than MAXPATHLEN characters long.

ENOSYS
Unable to perform the requested operation because the loadable modules functions are not configured into the system.

References

idbuild(1M), idmodload(1M), idtune(1M), modadmin(1M), modpath(2), modstat(2), moduload(2)
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004