Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

picld_plugin_register(3picltre) [sunos man page]

picld_plugin_register(3PICLTREE)			  PICL Plug-In Library Functions			  picld_plugin_register(3PICLTREE)

NAME
picld_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_PLUG- IN_CRITICAL by plug-in modules that are critical to the system operation. An environment control plug-in module is an example for a PICLD_PLUGIN_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 collect 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 registra- tion. 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 |Evolving | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe | +-----------------------------+-----------------------------+ SEE ALSO
libpicltree(3PICLTREE), attributes(5) SunOS 5.10 19 Sep 2001 picld_plugin_register(3PICLTREE)

Check Out this Related Man Page

picld(1M)																 picld(1M)

NAME
picld - PICL daemon SYNOPSIS
/usr/lib/picl/picld The Platform Information and Control Library (PICL) provides a mechanism to publish platform-specific information for clients to access in a platform-independent way. picld maintains and controls access to the PICL information from clients and plug-in modules. The daemon is started in both single-user and multi-user boot mode. Upon startup, the PICL daemon loads and initializes the plug-in modules. These modules use the libpicltree(3PICLTREE) interface to create nodes and properties in the PICL tree to publish platform configuration information. After the plug-in modules are initialized, the daemon opens the PICL daemon door to service client requests to access information in the PICL tree. PICL Tree The PICL tree is the repository of all the nodes and properties created by the plug-in modules to represent the platform configuration. Every node in the PICL tree is an instance of a well-defined PICL class. The name of the base PICL class is picl, which defines a basic set of properties that all nodes in the tree must possess. Two of those properties are name and _class, where name contains the name of the node, and the _class contains the PICL class name of the node. Certain nodes in the PICL tree have well-known names. For example, the name of the root node of the PICL tree is / and the name of the root node of the sub-tree containing platform device nodes is platform. PICL plug-in Modules The PICL plug-in modules are shared objects that publish platform-specific data in the PICL tree. They are located in well-known directo- ries so that the daemon can locate and load them. Plug-in modules are located in one of the following plug-in directories depending on the plaform-specific nature of the data that they col- lect and publish: /usr/platform/`uname -i`/lib/picl/plugins /usr/platform/`uname -m`/lib/picl/plugins A plug-in module can specify its dependency on another plug-in module using the -l or -R linker option. The plug-ins are loaded by the dae- mon using dlopen(3C) according to the specified dependencies. Each plug-in module must define a .init section, which is executed when the plug-in module is loaded, to register themselves with the daemon. See picld_plugin_register(3PICLTREE) for additional information on plug- in registration. The plug-in modules use the libpicltree(3PICLTREE) interface to publish nodes and properties in the PICL tree so that clients can access them. When the PICL daemon invokes the initialization routine of the plug-in module, the plug-in collects the platform information and creates nodes and/or properties to represent the configuration in the PICL tree. A plug-in can create additional threads to monitor the platform configuration and update the PICL tree with any changes. This enables a PICL plug-in to operate as a daemon within the PICL framework. An environmental monitor is an example of a plug-in module that uses a thread to monitor the temperatures and fan speeds of the platform, then publishes the environmental information in the PICL tree so clients can access them. Clients use the libpicl(3PICL) interface to send requests to picld for accessing the PICL tree. picld does not return an exit status. /var/run/picld_door PICL daemon door /usr/lib/picl/picld PICL daemon See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWpiclu | +-----------------------------+-----------------------------+ svcs(1), svcadm(1M), dlopen(3C), libpicl(3PICL), libpicltree(3PICLTREE), picld_log(3PICLTREE), picld_plugin_register(3PICLTREE), attributes(5), smf(5) The picld service is managed by the service management facility, smf(5), under the service identifier: svc:/system/picl Administrative actions on this service, such as enabling, disabling, or requesting restart, can be performed using svcadm(1M). The ser- vice's status can be queried using the svcs(1) command. 10 Aug 2004 picld(1M)
Man Page