DmiAddRow(3DMI) DMI Library Functions DmiAddRow(3DMI)NAME
DmiAddRow, DmiDeleteRow, DmiGetAttribute, DmiGetMultiple, DmiSetAt‐
tribute, DmiSetMultiple - Management Interface operation functions
SYNOPSIS
cc [ flag ... ] file ... -ldmimi-ldmi-lnsl-lrwtool [ library ... ]
#include <server.h>
#include <miapi.h>
bool_t DmiAddRow(DmiAddRowIN argin, DmiAddRowOUT *result, DmiRpcHandle *dmi_rpc_handle);
bool_t DmiDeleteRow(DmiDeleteRowIN argin, DmiDeleteRowOUT *result,
DmiRpcHandle *dmi_rpc_handle);
bool_t DmiGetAttribute(DmiGetAttributeIN argin, DmiGetAttributeOUT *result,
DmiRpcHandle *dmi_rpc_handle);
bool_t DmiGetMultiple(DmiGetMultipleIN argin, DmiGetMultipleOUT *result,
DmiRpcHandle *dmi_rpc_handle);
bool_t DmiSetAttribute(DmiSetAttributeIN argin, DmiSetAttributeOUT *result,
DmiRpcHandle *dmi_rpc_handle);
bool_t DmiSetMultiple(DmiSetMultipleIN argin, DmiSetMultipleOUT *result,
DmiRpcHandle *dmi_rpc_handle);
DESCRIPTION
The operation functions provide a method for retrieving a single value
from the Service Provider and for setting a single attribute value. In
addition, you may also retrieve attribute values from the Service
Provider. You may perform a set operation on an attribute or a list
of attributes and add or delete a row from an existing table.
The DmiAddRow() function adds a row to an existing table. The rowData
parameter contains the full data, including key attribute values, for
a row. It is an error for the key list to specify an existing table
row. The argin parameter is an instance of a DmiAddRowIN structure con‐
taining the following members:
DmiHandle_t handle; /* An open session handle */
DmiRowData_t *rowData; /* Attribute values to set */
The result parameter is a pointer to a DmiAddRowOUT structure contain‐
ing the following members:
DmiErrorStatus_t error_status;
DmiDeleteRow() function removes a row from an existing table. The key
list must specify valid keys for a table row. The argin parameter is an
instance of a DmiDeleteRowIN structure containing the following mem‐
bers:
DmiHandle_t handle; /* An open session handle */
DmiRowData_t *rowData; /* Row to delete */
The result parameter is a pointer to a DmiDeleteRowOUT structure con‐
taining the following members:
DmiErrorStatus_t error_status;
The DmiGetAttribute() function provides a simple method for retrieving
a single attribute value from the Service Provider. The compId,
groupId, attribId, and keyList identify the desired attribute. The
resulting attribute value is returned in a newly allocated DmiDataU‐
nion structure. The address of this structure is returned through the
value parameter. The argin parameter is an instance of a DmiListCompo‐
nentsIN structure containing the following members:
DmiHandle_t handle; /* an open session handle */
DmiId_t compId; /* Component to access */
DmiId_t groupId; /* Group within component */
DmiId_t attribId; /* Attribute within a group */
DmiAttributeValues_t *keyList; /* Keylist to specify a table row */
The result parameter is a pointer to a DmiGetAttributeOUT structure
containing the following members:
DmiErrorStatus_t error_status;
DmiDataUnion_t *value; /* Attribute value returned */
The DmiGetMultiple() function retrieves attribute values from the Ser‐
vice Provider. This procedure may get the value for an individual
attribute, or for multiple attributes across groups, components, or
rows of a table.
The DmiSetAttribute() function provides a simple method for setting a
single attribute value. The compId, groupId, attribId, and keyList
identify the desired attribute. The setMode parameter defines the
procedure call as a Set, Reserve, or Release operation. The new
attribute value is contained in the DmiDataUnion structure whose
address is passed in the value parameter. The argin parameter is an
instance of a DmiSetAttributeIN structure containing the following mem‐
bers:
DmiHandle_t handle;
DmiId_t compId;
DmiId_t groupId;
DmiId_t attribId;
DmiAttributeValues_t *keyList;
DmiSetMode_t setMode;
DmiDataUnion_t *value;
The result parameter is a pointer to a DmiSetAttributeOUT structure
containing the following members:
DmiErrorStatus_t error_status;
The DmiSetMultiple() function performs a set operation on an attribute
or list of attributes. Set operations include actually setting the
value, testing and reserving the attribute for future setting, or
releasing the set reserve. These variations on the set operation are
specified by the parameter setMode. The argin parameter is an instance
of a DmiSetMultipleIN structure containing the following members:
DmiHandle_t handle; /* An open session handle */
DmiSetMode_t setMode; /* set, reserve, or release */
DmiMultiRowData_t *rowData; /* Attribute values to set */
The result parameter is a pointer to a DmiSetMultipleOUT structure con‐
taining the following members:
DmiErrorStatus_t error_status;
The rowData array describes the attributes to set, and contains the
new attribute values. Each element of rowData specifies a component,
group, key list (for table accesses), and attribute list to set. No
data is returned from this function.
RETURN VALUES
The DmiAddRow() function returns the following possible values:
DMIERR_NO_ERROR
DMIERR_ILLEGAL_RPC_HANDLE
DMIERR_OUT_OF_MEMORY
DMIERR_ILLEGAL_PARAMETER
DMIERR_SP_INACTIVE
DMIERR_VALUE_UNKNOWN
DMIERR_COMPONENT_NOT_FOUND
DMIERR_GROUP_NOT_FOUND
DMIERR_ILLEGAL_KEYS
DMIERR_DIRECT_INTERFACE_NOT_REGISTERED
DMIERR_UNKNOWN_CI_REGISTRY
DMIERR_VALUE_UNKNOWN
DMIERR_UNABLE_TO_ADD_ROW
The DmiDeleteRow() function returns the following possible values:
DMIERR_NO_ERROR
DMIERR_ILLEGAL_RPC_HANDLE
DMIERR_OUT_OF_MEMORY
DMIERR_ILLEGAL_PARAMETER
DMIERR_SP_INACTIVE
DMIERR_ATTRIBUTE_NOT_FOUND
DMIERR_COMPONENT_NOT_FOUND
DMIERR_GROUP_NOT_FOUND
DMIERR_ILLEGAL_KEYS
DMIERR_ILLEGAL_TO_GET
DMIERR_DIRECT_INTERFACE_NOT_REGISTERED
DMIERR_ROW_NOT_FOUND
DMIERR_UNKNOWN_CI_REGISTRY
DMIERR_VALUE_UNKNOWN
DMIERR_UNABLE_TO_DELETE_ROW
The DmiGetAttribute() function returns the following possible values:
DMIERR_NO_ERROR
DMIERR_ILLEGAL_RPC_HANDLE
DMIERR_OUT_OF_MEMORY
DMIERR_ILLEGAL_PARAMETER
DMIERR_SP_INACTIVE
DMIERR_ATTRIBUTE_NOT_FOUND
DMIERR_COMPONENT_NOT_FOUND
DMIERR_GROUP_NOT_FOUND
DMIERR_ILLEGAL_KEYS
DMIERR_ILLEGAL_TO_GET
DMIERR_DIRECT_INTERFACE_NOT_REGISTERED
DMIERR_ROW_NOT_FOUND
DMIERR_UNKNOWN_CI_REGISTRY
DMIERR_FILE_ERROR
DMIERR_VALUE_UNKNOWN
The DmiGetMultiple() function returns the following possible values:
DMIERR_NO_ERROR
DMIERR_ILLEGAL_RPC_HANDLE
DMIERR_OUT_OF_MEMORY
DMIERR_ILLEGAL_RPC_PARAMETER
DMIERR_SP_INACTIVE
DMIERR_ATTRIBUTE_NOT_FOUND
DMIERR_COMPONENT_NOT_FOUND
DMIERR_GROUP_NOT_FOUND
DMIERR_ILLEGAL_KEYS
DMIERR_ILLEGAL_TO_GET
DMIERR_DIRECT_INTERFACE_NOT_REGISTERED
DMIERR_ROW_NOT_FOUND
DMIERR_UNKNOWN_CI_REGISTRY
DMIERR_FILE_ERROR
DMIERR_VALUE_UNKNOWN
The DmiSetAttribute() function returns the following possible values:
DMIERR_NO_ERROR
DMIERR_ILLEGAL_RPC_HANDLE
DMIERR_OUT_OF_MEMORY
DMIERR_ILLEGAL_PARAMETER
DMIERR_SP_INACTIVE
DMIERR_ATTRIBUTE_NOT_FOUND
DMIERR_COMPONENT_NOT_FOUND
DMIERR_GROUP_NOT_FOUND
DMIERR_ILLEGAL_KEYS
DMIERR_ILLEGAL_TO_GET
DMIERR_DIRECT_INTERFACE_NOT_REGISTERED
DMIERR_ROW_NOT_FOUND
DMIERR_UNKNOWN_CI_REGISTRY
DMIERR_FILE_ERROR
DMIERR_VALUE_UNKNOWN
The DmiSetMultiple() function returns the following possible values:
DMIERR_NO_ERROR
DMIERR_ILLEGAL_RPC_HANDLE
DMIERR_OUT_OF_MEMORY
DMIERR_ILLEGAL_PARAMETER
DMIERR_SP_INACTIVE
DMIERR_ATTRIBUTE_NOT_FOUND
DMIERR_COMPONENT_NOT_FOUND
DMIERR_GROUP_NOT_FOUND
DMIERR_ILLEGAL_KEYS
DMIERR_ILLEGAL_TO_SET
DMIERR_DIRECT_INTERFACE_NOT_REGISTERED
DMIERR_ROW_NOT_FOUND
DMIERR_UNKNOWN_CI_REGISTRY
DMIERR_FILE_ERROR
DMIERR_VALUE_UNKNOWN
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Interface Stability │Obsolete │
├─────────────────────────────┼─────────────────────────────┤
│MT-level │Unsafe │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOattributes(5)SunOS 5.10 30 May 2012 DmiAddRow(3DMI)