IT_CONFIG_LOAD(3ISCSIT) iSCSI Management Library Functions
NAME
it_config_load, it_config_commit, it_config_setprop, it_config_free -
set and retrieve configuration data for the iSCSI Target Port
Provider
SYNOPSIS
cc [
flag... ]
file...
-liscsit [
library... ]
#include <libiscsit.h>
int it_config_load(
it_config_t **cfg);
int it_config_commit(
it_config_t *cfg);
int it_config_setprop(
it_config_t *cfg,
nvlist_t *proplist,
nvlist_t **errlist);
void it_config_free(
it_config_t *cfg);
PARAMETERS
cfg a pointer to the iSCSI configuration structure
proplist a pointer to an
nvlist_t containing the global properties
to be set
errlist an optional pointer to an
nvlist_t that will be used to
store specific errors (if any) when validating global
properties
DESCRIPTION
The
it_config_load() function allocates and creates an
it_config_t structure representing the current iSCSI configuration. This
structure is compiled using the "provider" data returned by
stmfGetProviderData(3STMF). If there is no provider data associated
with iscsit, the
it_config_t structure is set to a default
configuration.
The
it_config_commit() function informs the iscsit service that the
configuration has changed and commits the new configuration to the
persistent store by calling
stmfSetProviderData(3STMF). This function
can be called multiple times during a configuration sequence, if
necessary.
The
it_config_setprop() function validates the provided property list
and sets the global properties for iSCSI Target. If
errlist is not
NULL, this function returns detailed errors for each property that
failed. The format for
errorlist is
key =
property,
value =
error string.
The
it_config_free() function frees resources associated with the
it_config_t structure.
Global nvlist properties are as follows:
nvlist Key Type Valid Values
----------------------------------------------------
alias string any string
auth string radius,
chap, or
none isns boolean B_TRUE,
B_FALSE isnsserver string array Array of portal
specifications of the
form IPaddress:port.
Port is optional; if
not specified, the
default iSNS port
number of 3205 will
be used. IPv6
addresses should be
enclosed in square
brackets '[' ']'. If
"none" is specified,
all defined iSNS
servers will be
removed from the
configuration.
radiusserver string IPaddress:port
specification as
described for
'isnsserver'
radiussecret string string of at least 12
characters but not
more than 255
characters. secret
will be base64
encoded when stored.
RETURN VALUES
The
it_config_load(),
it_config_commit(), and
it_config_setprop() functions return 0 on success and an error value on failure.
ERRORS
The
it_config_load(),
it_config_commit(), and
it_config_setprop() functions will fail if:
EINVAL A parameter or property is invalid.
ENOMEM Resources could not be allocated.
The
it_config_commit() function will also fail if:
STMF_ERROR_SERVICE_DATA_VERSION The configuration was updated by another client. See
stmfSetProviderData(3STMF).
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Committed |
+--------------------+-----------------+
|MT-Level | MT-Safe |
+--------------------+-----------------+
SEE ALSO
it_ini_create(3ISCSIT),
it_portal_create(3ISCSIT),
it_tgt_create(3ISCSIT),
it_tpg_create(3ISCSIT),
libiscsit(3LIB),
libnvpair(3LIB),
libstmf(3LIB),
stmfGetProviderData(3STMF),
stmfSetProviderData(3STMF),
attributes(7) October 1, 2008 IT_CONFIG_LOAD(3ISCSIT)