Service Configuration Facility Library Functions
smf_notify_set_params(3SCF)
NAME
smf_notify_set_params, smf_notify_get_params,
smf_notify_del_params - store, retrieve and delete notifica-
tion parameters in the Service Configuration FacilitySYNOPSIS
cc [ flag... ] file... -lscf [ library... ]
#include
int smf_notify_set_params(const char *class, nvlist_t *attr);
int smf_notify_get_params(nvlist_t **params, nvlist_t *nvl);
int smf_notify_del_params(const char *class, const char *fmri,
int32_t tset);
PARAMETERS
class class of events to which the function call refers. For SMF state transition events, you should use a subclassof SCF_SVC_TRANSITION_CLASS defined in
tset. set of SMF state transitions encoded in an int32_t
value. The encoded states are defined inby the macros SCF_STATE_*. The encoding of a initial state
is obtained by shifting 16 bits to the left the encoded value for that state. For example, the value of tset that represents the state transition set (see smf(5),State Transition Sets) for to-maintenance, from-
maintenance and form-online is given by:
set = ((SCF_STATE_MAINT | SCF_STATE_ONLINE) << 16) | SCF_STATE_MAINT;
fmri FMRI of an SMF service or instance paramsaddress of a pointer to an nvlist_t
SunOS 5.11 Last change: 30 Jul 2010 1
Service Configuration Facility Library Functionssmf_notify_set_params(3SCF)
nvla pointer to the event payload nvlist_t, such as is pro-
vided to an event delivery callback in libfmevent(3LIB) attra pointer to nvlist_t with the notification parameters
DESCRIPTION
These interfaces are used to manipulate Notification Parame-
ters for Software Events. See smf(5)The smf_notify_set_params() function stores the notification
parameters for class. The attr nvlist_t containing the
notification parameters must follow the format:version (uint32_t)
fmri (string)tset (int32_t)
SCF_NOTIFY_PARAMS (embedded nvlist)
(embedded nvlist) ...
(end
...) (end notify-params)
The version field must be SCF_NOTIFY_PARAMS_VERSION, defined
in. The fields fmri and tset are only required for SMF state transitions events. They are ignored other-
wise. Existing notification parameters are replaced by this function.The smf_notify_get_params() function creates and populates
the params nvlist_t with the notification parameters for the
Event class in nvl. If the Event in nvl is an SMF state transition event, this function will perform a composedlookup in scf_instance_get_pg_composed(3SCF) for the
instance FMRI in nvl. If notification parameters are not found in the composed lookup, the function will look for thesystem-wide notification parameters at SCF_INSTANCE_GLOBAL.
The caller is responsible for calling nvlist_free(3NVPAIR)
after using params. The params nvlist_t has the following
format:SunOS 5.11 Last change: 30 Jul 2010 2
Service Configuration Facility Library Functionssmf_notify_set_params(3SCF)
version (uint32_t)
SCF_NOTIFY_PARAMS (array of embedded nvlists)
(start of notify-params[0])
tset (int32_t)
(embedded nvlist) ...
(end
...) (end of notify-params[0])
...The SCF_NOTIFY_PARAMS is an array of nvlist_t because SMF
state transitions have notification parameters for both end states of the transitions.The smf_notify_del_params() function deletes the notifica-
tion parameters for the given class. If class is not a sub-
class of SCF_SVC_TRANSITION_CLASS, fmri and tset are
ignored.Both smf_notify_del_params() and smf_notify_set_params()
refresh all instances affected by the changes.RETURN VALUES
Upon successful completion smf_notify_del_params(),
smf_notify_get_params() and smf_notify_set_params() return
SCF_SUCCESS. Otherwise they return SCF_FAILED.
ERRORS
These functions will fail if:SCF_ERROR_BACKEND_ACCESS
The storage mechanism that the repository server (svc.configd(1M)) chose for the operation denied access.SCF_ERROR_CONNECTION_BROKEN
The connection to the repository was lost.SCF_ERROR_DELETED
The entity being operated on has been deleted.SunOS 5.11 Last change: 30 Jul 2010 3
Service Configuration Facility Library Functionssmf_notify_set_params(3SCF)
SCF_ERROR_INTERNAL
An internal error occurred.SCF_ERROR_INVALID_ARGUMENT
An argument passed is invalid.SCF_ERROR_NO_MEMORY
There is not enough memory.SCF_ERROR_NO_RESOURCES
The server does not have the resources to complete the request.SCF_ERROR_NOT_FOUND
The entity was not found.SCF_ERROR_PERMISSION_DENIED
The caller does not have permission to access or modify the repository.The smf_notify_del_params() and smf_notify_set_params()
functions will fail if:SCF_ERROR_BACKEND_READONLY
The repository backend is read-only.
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:SunOS 5.11 Last change: 30 Jul 2010 4
Service Configuration Facility Library Functionssmf_notify_set_params(3SCF)
______________________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
| MT-Level | Safe |
|_____________________________|_____________________________|
SEE ALSO
libfmevent(3LIB), libnvpair(3LIB), libscf(3LIB),nvlist_free(3NVPAIR), scf_error(3SCF),
scf_instance_get_pg_composed(3SCF), attributes(5), smf(5)
SunOS 5.11 Last change: 30 Jul 2010 5
Service Configuration Facility Library Functionssmf_notify_set_params(3SCF)
SunOS 5.11 Last change: 30 Jul 2010 6