Copyright (c) 2008, Sun Microsystems Inc. All Rights Reserved.
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
cc [ flag.\|.\|. ] file.\|.\|. -liscsit [ library.\|.\|. ] #include <libiscsit.h> int it_ini_create(it_config_t *cfg, it_ini_t **ini, char *ini_node_name);
int it_ini_setprop(it_ini_t *ini, nvlist_t *proplist, nvlist_t **errlist););
void it_ini_delete(it_config_t *cfg, it_ini_t *ini);
void it_ini_free(it_ini_t *ini);
a pointer t the iSCSI configuration structure
a pointer to the it_ini_t structure representing the initiator context
the iSCSI node name of the remote initiator
a pointer to an nvlist_t containing the initiator properties to be set
an optional pointer to an nvlist_t that will be used to store specific errors (if any) when validating initiator properties
The it_ini_create() function adds an initiator context to the global configuration.
The it_ini_setprop() function validates the provided property list and sets the properties for the specified initiator. If errlist is not NULL, this function returns detailed errors for each property that failed. The format for errlist is key = property, value = error string.
The it_ini_delete() function removes the specified initiator context from the global configuration.
The it_ini_free() function deallocates resources of an it_ini_t structure. If ini\(->next is not NULL, this function frees all members of the list.
Configuration changes as a result of these functions are not instantiated until the modified configuration is committed by calling it_config_commit(3ISCSIT).
Initiator nvlist properties are as follows:
nvlist Key Type Valid Values |
chapuser string any string, or none to remove |
chapsecret string |
string of at least 12 characters but not more than 255 characters. secret will be base64 encoded when stored. |
The it_ini_create(), it_ini_setprop(), and it_ini_delete() functions return 0 on success and an error value on failure.
The it_ini_create(), it_ini_setprop(), and it_ini_delete() functions will fail if: EEXIST
The requested initiator context is already configured.
A parameter or property is invalid.
Resources could not be allocated.
See attributes(7) for descriptions of the following attributes:
ATTRIBUTE TYPE ATTRIBUTE VALUE |
Interface Stability Committed |
MT-Level MT-Safe |
it_config_commit (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)