DmiAddRow(3DMI) DMI Library Functions DmiAddRow(3DMI)
NAME
DmiAddRow, DmiDeleteRow, DmiGetAttribute, DmiGetMultiple, DmiSetAttribute, 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
containing 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 containing 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 members:
DmiHandle_t handle; /* An open session handle */
DmiRowData_t *rowData; /* Row to delete */
The result parameter is a pointer to a DmiDeleteRowOUT structure containing 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 DmiDataUnion struc-
ture. The address of this structure is returned through the value parameter. The argin parameter is an instance of a DmiListComponentsIN
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 Service 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 members:
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 containing 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 |
+-----------------------------+-----------------------------+
|MT-level |Unsafe |
+-----------------------------+-----------------------------+
SEE ALSO
attributes(5)
SunOS 5.10 17 Dec 1996 DmiAddRow(3DMI)