Commit 3e0f65b3 authored by Harish Zunjarrao's avatar Harish Zunjarrao Committed by James Bottomley

[SCSI] iscsi_transport: Additional parameters for network settings

Added support to display and update additional network parameters
through iscsiadm.
Signed-off-by: default avatarHarish Zunjarrao <harish.zunjarrao@qlogic.com>
Signed-off-by: default avatarAdheer Chandravanshi <adheer.chandravanshi@qlogic.com>
Signed-off-by: default avatarVikas Chaudhary <vikas.chaudhary@qlogic.com>
Reviewed-by: default avatarMike Christie <michaelc@cs.wisc.edu>
Signed-off-by: default avatarJames Bottomley <JBottomley@Parallels.com>
parent b867cda4
This diff is collapsed.
...@@ -311,6 +311,7 @@ enum iscsi_param_type { ...@@ -311,6 +311,7 @@ enum iscsi_param_type {
ISCSI_NET_PARAM, /* iscsi_net_param */ ISCSI_NET_PARAM, /* iscsi_net_param */
ISCSI_FLASHNODE_PARAM, /* iscsi_flashnode_param */ ISCSI_FLASHNODE_PARAM, /* iscsi_flashnode_param */
ISCSI_CHAP_PARAM, /* iscsi_chap_param */ ISCSI_CHAP_PARAM, /* iscsi_chap_param */
ISCSI_IFACE_PARAM, /* iscsi_iface_param */
}; };
/* structure for minimalist usecase */ /* structure for minimalist usecase */
...@@ -383,6 +384,10 @@ struct iscsi_path { ...@@ -383,6 +384,10 @@ struct iscsi_path {
#define ISCSI_VLAN_DISABLE 0x01 #define ISCSI_VLAN_DISABLE 0x01
#define ISCSI_VLAN_ENABLE 0x02 #define ISCSI_VLAN_ENABLE 0x02
/* iscsi generic enable/disabled setting for various features */
#define ISCSI_NET_PARAM_DISABLE 0x01
#define ISCSI_NET_PARAM_ENABLE 0x02
/* iSCSI network params */ /* iSCSI network params */
enum iscsi_net_param { enum iscsi_net_param {
ISCSI_NET_PARAM_IPV4_ADDR = 1, ISCSI_NET_PARAM_IPV4_ADDR = 1,
...@@ -405,6 +410,80 @@ enum iscsi_net_param { ...@@ -405,6 +410,80 @@ enum iscsi_net_param {
ISCSI_NET_PARAM_IFACE_NAME, ISCSI_NET_PARAM_IFACE_NAME,
ISCSI_NET_PARAM_MTU, ISCSI_NET_PARAM_MTU,
ISCSI_NET_PARAM_PORT, ISCSI_NET_PARAM_PORT,
ISCSI_NET_PARAM_IPADDR_STATE,
ISCSI_NET_PARAM_IPV6_LINKLOCAL_STATE,
ISCSI_NET_PARAM_IPV6_ROUTER_STATE,
ISCSI_NET_PARAM_DELAYED_ACK_EN,
ISCSI_NET_PARAM_TCP_NAGLE_DISABLE,
ISCSI_NET_PARAM_TCP_WSF_DISABLE,
ISCSI_NET_PARAM_TCP_WSF,
ISCSI_NET_PARAM_TCP_TIMER_SCALE,
ISCSI_NET_PARAM_TCP_TIMESTAMP_EN,
ISCSI_NET_PARAM_CACHE_ID,
ISCSI_NET_PARAM_IPV4_DHCP_DNS_ADDR_EN,
ISCSI_NET_PARAM_IPV4_DHCP_SLP_DA_EN,
ISCSI_NET_PARAM_IPV4_TOS_EN,
ISCSI_NET_PARAM_IPV4_TOS,
ISCSI_NET_PARAM_IPV4_GRAT_ARP_EN,
ISCSI_NET_PARAM_IPV4_DHCP_ALT_CLIENT_ID_EN,
ISCSI_NET_PARAM_IPV4_DHCP_ALT_CLIENT_ID,
ISCSI_NET_PARAM_IPV4_DHCP_REQ_VENDOR_ID_EN,
ISCSI_NET_PARAM_IPV4_DHCP_USE_VENDOR_ID_EN,
ISCSI_NET_PARAM_IPV4_DHCP_VENDOR_ID,
ISCSI_NET_PARAM_IPV4_DHCP_LEARN_IQN_EN,
ISCSI_NET_PARAM_IPV4_FRAGMENT_DISABLE,
ISCSI_NET_PARAM_IPV4_IN_FORWARD_EN,
ISCSI_NET_PARAM_IPV4_TTL,
ISCSI_NET_PARAM_IPV6_GRAT_NEIGHBOR_ADV_EN,
ISCSI_NET_PARAM_IPV6_MLD_EN,
ISCSI_NET_PARAM_IPV6_FLOW_LABEL,
ISCSI_NET_PARAM_IPV6_TRAFFIC_CLASS,
ISCSI_NET_PARAM_IPV6_HOP_LIMIT,
ISCSI_NET_PARAM_IPV6_ND_REACHABLE_TMO,
ISCSI_NET_PARAM_IPV6_ND_REXMIT_TIME,
ISCSI_NET_PARAM_IPV6_ND_STALE_TMO,
ISCSI_NET_PARAM_IPV6_DUP_ADDR_DETECT_CNT,
ISCSI_NET_PARAM_IPV6_RTR_ADV_LINK_MTU,
ISCSI_NET_PARAM_REDIRECT_EN,
};
enum iscsi_ipaddress_state {
ISCSI_IPDDRESS_STATE_UNCONFIGURED,
ISCSI_IPDDRESS_STATE_ACQUIRING,
ISCSI_IPDDRESS_STATE_TENTATIVE,
ISCSI_IPDDRESS_STATE_VALID,
ISCSI_IPDDRESS_STATE_DISABLING,
ISCSI_IPDDRESS_STATE_INVALID,
ISCSI_IPDDRESS_STATE_DEPRECATED,
};
enum iscsi_router_state {
ISCSI_ROUTER_STATE_UNKNOWN,
ISCSI_ROUTER_STATE_ADVERTISED,
ISCSI_ROUTER_STATE_MANUAL,
ISCSI_ROUTER_STATE_STALE,
};
/* iSCSI specific settings params for iface */
enum iscsi_iface_param {
ISCSI_IFACE_PARAM_DEF_TASKMGMT_TMO,
ISCSI_IFACE_PARAM_HDRDGST_EN,
ISCSI_IFACE_PARAM_DATADGST_EN,
ISCSI_IFACE_PARAM_IMM_DATA_EN,
ISCSI_IFACE_PARAM_INITIAL_R2T_EN,
ISCSI_IFACE_PARAM_DATASEQ_INORDER_EN,
ISCSI_IFACE_PARAM_PDU_INORDER_EN,
ISCSI_IFACE_PARAM_ERL,
ISCSI_IFACE_PARAM_MAX_RECV_DLENGTH,
ISCSI_IFACE_PARAM_FIRST_BURST,
ISCSI_IFACE_PARAM_MAX_R2T,
ISCSI_IFACE_PARAM_MAX_BURST,
ISCSI_IFACE_PARAM_CHAP_AUTH_EN,
ISCSI_IFACE_PARAM_BIDI_CHAP_EN,
ISCSI_IFACE_PARAM_DISCOVERY_AUTH_OPTIONAL,
ISCSI_IFACE_PARAM_DISCOVERY_LOGOUT_EN,
ISCSI_IFACE_PARAM_STRICT_LOGIN_COMP_EN,
ISCSI_IFACE_PARAM_INITIATOR_NAME,
}; };
enum iscsi_conn_state { enum iscsi_conn_state {
......
...@@ -478,4 +478,7 @@ iscsi_find_flashnode_sess(struct Scsi_Host *shost, void *data, ...@@ -478,4 +478,7 @@ iscsi_find_flashnode_sess(struct Scsi_Host *shost, void *data,
extern struct device * extern struct device *
iscsi_find_flashnode_conn(struct iscsi_bus_flash_session *fnode_sess); iscsi_find_flashnode_conn(struct iscsi_bus_flash_session *fnode_sess);
extern char *
iscsi_get_ipaddress_state_name(enum iscsi_ipaddress_state port_state);
extern char *iscsi_get_router_state_name(enum iscsi_router_state router_state);
#endif #endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment