picld_plugin_register(3PPICLRPlug-In Library Fpicld_plugin_register(3PICLTREE)NAMEpicld_plugin_register - register plug-in with the daemon
SYNOPSIS
cc [ flag... ] file... -lpicltree [ library... ]
#include <picltree.h>
int picld_plugin_register(picld_plugin_reg_t *regp);
DESCRIPTION
The picld_plugin_register() function is the function used by a plug-in
module to register itself with the PICL daemon upon initialization. The
plug-in provides its name and the entry points of the initialization
and cleanup routines in the regp argument.
typedef struct {
int version; /* PICLD_PLUGIN_VERSION */
int critical; /* is plug-in critical? */
char *name; /* name of the plugin module */
void (*plugin_init)(void); /* init/reinit function */
void (*plugin_fini)(void); /* fini/cleanup function */
} picld_plugin_reg_t;
The plug-in module also specifies whether it is a critical module for
the proper system operation. The critical field in the registration
information is set to PICLD_PLUGIN_NON_CRITICAL by plug-in modules that
are not critical to system operation, and is set to PICLD_PLUGIN_CRITI‐
CAL by plug-in modules that are critical to the system operation. An
environment control plug-in module is an example for a PICLD_PLUG‐
IN_CRITICAL type of plug-in module.
The PICL daemon saves the information passed during registration in
regp in the order in which the plug-ins registered.
Upon initialization, the PICL daemon invokes the plugin_init() routine
of each of the registered plug-in modules in the order in which they
registered. In their plugin_init() routines, the plug-in modules col‐
lect the platform configuration data and add it to the PICL tree using
PICLTREE interfaces (3PICLTREE).
On reinitialization, the PICL daemon invokes the plugin_fini() routines
of the registered plug-in modules in the reverse order of registration.
Then, the plugin_init() entry points are invoked again in the order in
which the plug-ins registered.
RETURN VALUES
Upon successful completion, 0 is returned. On failure, a negative value
is returned.
ERRORS
PICL_NOTSUPPORTED Version not supported
PICL_FAILURE General system failure
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Interface Stability │Committed │
├─────────────────────────────┼─────────────────────────────┤
│MT-Level │MT-Safe │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOlibpicltree(3PICLTREE), attributes(5)SunOS 5.11 19 Sep 2001 picld_plugin_register(3PICLTREE)