iscsiadm.h revision aff4bce51ecc47df7e5a6351b7cee6bc20408c63
/*
* CDDL HEADER START
*
* 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
* 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]
*
* CDDL HEADER END
*/
/*
* Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#ifndef _ISCSIADM_H
#define _ISCSIADM_H
#ifdef __cplusplus
extern "C" {
#endif
#include <sys/iscsi_protocol.h>
#include <ima.h>
#include <cmdparse.h>
#define ADD SUBCOMMAND(0)
#define DATA_SEQ_IN_ORDER 0x01
#define DEFAULT_TIME_2_RETAIN 0x02
#define DEFAULT_TIME_2_WAIT 0x03
#define FIRST_BURST_LENGTH 0x04
#define IMMEDIATE_DATA 0x05
#define INITIAL_R2T 0x06
#define MAX_BURST_LENGTH 0x07
#define DATA_PDU_IN_ORDER 0x08
#define MAX_OUTSTANDING_R2T 0x09
#define MAX_RECV_DATA_SEG_LEN 0x0a
#define HEADER_DIGEST 0x0b
#define DATA_DIGEST 0x0c
#define MAX_CONNECTIONS 0x0d
#define ERROR_RECOVERY_LEVEL 0x0e
#define RECV_LOGIN_RSP_TIMEOUT 0x0f
#define CONN_LOGIN_MAX 0x10
#define POLLING_LOGIN_DELAY 0x11
#define AUTH_NAME 0x01
#define AUTH_PASSWORD 0x02
#define ISCSIADM_ARG_ENABLE "enable"
#define ISCSIADM_ARG_DISABLE "disable"
/*
* This object type is not defined by IMA.
*/
#define SUN_IMA_NODE_ALIAS_LEN 256
typedef struct _parameterTbl {
char *name;
int val;
/*
* The following interfaces are not defined in IMA 1.1. Some of them
* are requirement candidates for the next IMA release.
*/
#define SUN_IMA_IP_ADDRESS_PORT_LEN 256
#define SUN_IMA_MAX_RADIUS_SECRET_LEN 128
/* Currently not defined in IMA_TARGET_DISCOVERY_METHOD enum */
#define IMA_TARGET_DISCOVERY_METHOD_UNKNOWN 0
typedef enum
{
SUN_IMA_DIGEST_NONE = 0,
typedef struct _SUN_IMA_DIGEST_ALGORITHM_VALUE
{
typedef struct _SUN_IMA_DISC_ADDR_PROP_LIST
{
typedef struct _SUN_IMA_RADIUS_CONFIG
{
typedef struct _SUN_IMA_DISC_ADDRESS_KEY
{
typedef struct _SUN_IMA_DISC_ADDRESS_KEY_PROPERTIES
{
typedef struct _SUN_IMA_TARGET_ADDRESS
{
typedef struct _SUN_IMA_STATIC_DISCOVERY_TARGET
{
typedef struct _SUN_IMA_STATIC_DISCOVERY_TARGET_PROPERTIES
{
typedef struct _SUN_IMA_CONN_PROPERTIES {
typedef struct _SUN_IMA_LU_PROPERTIES
{
typedef struct _SUN_IMA_TARGET_PROPERTIES
{
typedef struct _SUN_IMA_CONFIG_SESSIONS {
/* True if sessions are bound to an interface */
/*
* Memory allocated from caller. In addition
* on a Set this is the number of configured
* sessions.
*/
/* Number of Configured sessions on Get */
typedef struct _SUN_IMA_STATIC_TARGET_PROPERTIES
{
#ifdef __cplusplus
}
#endif
#endif /* _ISCSIADM_H */