aboutsummaryrefslogtreecommitdiffstats
path: root/include/scsi
diff options
context:
space:
mode:
authorHarish Zunjarrao <harish.zunjarrao@qlogic.com>2013-10-18 09:01:41 -0400
committerJames Bottomley <JBottomley@Parallels.com>2013-12-16 13:57:50 -0500
commit3e0f65b34cc972d462c32769cd85b4eee6949139 (patch)
tree44429cd4d590dc94a404b89e8178f368f7823806 /include/scsi
parentb867cda44e78888e9482a3eec822b653715a519e (diff)
[SCSI] iscsi_transport: Additional parameters for network settings
Added support to display and update additional network parameters through iscsiadm. Signed-off-by: Harish Zunjarrao <harish.zunjarrao@qlogic.com> Signed-off-by: Adheer Chandravanshi <adheer.chandravanshi@qlogic.com> Signed-off-by: Vikas Chaudhary <vikas.chaudhary@qlogic.com> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'include/scsi')
-rw-r--r--include/scsi/iscsi_if.h79
-rw-r--r--include/scsi/scsi_transport_iscsi.h3
2 files changed, 82 insertions, 0 deletions
diff --git a/include/scsi/iscsi_if.h b/include/scsi/iscsi_if.h
index 765c982c625a..a572083c77cb 100644
--- a/include/scsi/iscsi_if.h
+++ b/include/scsi/iscsi_if.h
@@ -311,6 +311,7 @@ enum iscsi_param_type {
311 ISCSI_NET_PARAM, /* iscsi_net_param */ 311 ISCSI_NET_PARAM, /* iscsi_net_param */
312 ISCSI_FLASHNODE_PARAM, /* iscsi_flashnode_param */ 312 ISCSI_FLASHNODE_PARAM, /* iscsi_flashnode_param */
313 ISCSI_CHAP_PARAM, /* iscsi_chap_param */ 313 ISCSI_CHAP_PARAM, /* iscsi_chap_param */
314 ISCSI_IFACE_PARAM, /* iscsi_iface_param */
314}; 315};
315 316
316/* structure for minimalist usecase */ 317/* structure for minimalist usecase */
@@ -383,6 +384,10 @@ struct iscsi_path {
383#define ISCSI_VLAN_DISABLE 0x01 384#define ISCSI_VLAN_DISABLE 0x01
384#define ISCSI_VLAN_ENABLE 0x02 385#define ISCSI_VLAN_ENABLE 0x02
385 386
387/* iscsi generic enable/disabled setting for various features */
388#define ISCSI_NET_PARAM_DISABLE 0x01
389#define ISCSI_NET_PARAM_ENABLE 0x02
390
386/* iSCSI network params */ 391/* iSCSI network params */
387enum iscsi_net_param { 392enum iscsi_net_param {
388 ISCSI_NET_PARAM_IPV4_ADDR = 1, 393 ISCSI_NET_PARAM_IPV4_ADDR = 1,
@@ -405,6 +410,80 @@ enum iscsi_net_param {
405 ISCSI_NET_PARAM_IFACE_NAME, 410 ISCSI_NET_PARAM_IFACE_NAME,
406 ISCSI_NET_PARAM_MTU, 411 ISCSI_NET_PARAM_MTU,
407 ISCSI_NET_PARAM_PORT, 412 ISCSI_NET_PARAM_PORT,
413 ISCSI_NET_PARAM_IPADDR_STATE,
414 ISCSI_NET_PARAM_IPV6_LINKLOCAL_STATE,
415 ISCSI_NET_PARAM_IPV6_ROUTER_STATE,
416 ISCSI_NET_PARAM_DELAYED_ACK_EN,
417 ISCSI_NET_PARAM_TCP_NAGLE_DISABLE,
418 ISCSI_NET_PARAM_TCP_WSF_DISABLE,
419 ISCSI_NET_PARAM_TCP_WSF,
420 ISCSI_NET_PARAM_TCP_TIMER_SCALE,
421 ISCSI_NET_PARAM_TCP_TIMESTAMP_EN,
422 ISCSI_NET_PARAM_CACHE_ID,
423 ISCSI_NET_PARAM_IPV4_DHCP_DNS_ADDR_EN,
424 ISCSI_NET_PARAM_IPV4_DHCP_SLP_DA_EN,
425 ISCSI_NET_PARAM_IPV4_TOS_EN,
426 ISCSI_NET_PARAM_IPV4_TOS,
427 ISCSI_NET_PARAM_IPV4_GRAT_ARP_EN,
428 ISCSI_NET_PARAM_IPV4_DHCP_ALT_CLIENT_ID_EN,
429 ISCSI_NET_PARAM_IPV4_DHCP_ALT_CLIENT_ID,
430 ISCSI_NET_PARAM_IPV4_DHCP_REQ_VENDOR_ID_EN,
431 ISCSI_NET_PARAM_IPV4_DHCP_USE_VENDOR_ID_EN,
432 ISCSI_NET_PARAM_IPV4_DHCP_VENDOR_ID,
433 ISCSI_NET_PARAM_IPV4_DHCP_LEARN_IQN_EN,
434 ISCSI_NET_PARAM_IPV4_FRAGMENT_DISABLE,
435 ISCSI_NET_PARAM_IPV4_IN_FORWARD_EN,
436 ISCSI_NET_PARAM_IPV4_TTL,
437 ISCSI_NET_PARAM_IPV6_GRAT_NEIGHBOR_ADV_EN,
438 ISCSI_NET_PARAM_IPV6_MLD_EN,
439 ISCSI_NET_PARAM_IPV6_FLOW_LABEL,
440 ISCSI_NET_PARAM_IPV6_TRAFFIC_CLASS,
441 ISCSI_NET_PARAM_IPV6_HOP_LIMIT,
442 ISCSI_NET_PARAM_IPV6_ND_REACHABLE_TMO,
443 ISCSI_NET_PARAM_IPV6_ND_REXMIT_TIME,
444 ISCSI_NET_PARAM_IPV6_ND_STALE_TMO,
445 ISCSI_NET_PARAM_IPV6_DUP_ADDR_DETECT_CNT,
446 ISCSI_NET_PARAM_IPV6_RTR_ADV_LINK_MTU,
447 ISCSI_NET_PARAM_REDIRECT_EN,
448};
449
450enum iscsi_ipaddress_state {
451 ISCSI_IPDDRESS_STATE_UNCONFIGURED,
452 ISCSI_IPDDRESS_STATE_ACQUIRING,
453 ISCSI_IPDDRESS_STATE_TENTATIVE,
454 ISCSI_IPDDRESS_STATE_VALID,
455 ISCSI_IPDDRESS_STATE_DISABLING,
456 ISCSI_IPDDRESS_STATE_INVALID,
457 ISCSI_IPDDRESS_STATE_DEPRECATED,
458};
459
460enum iscsi_router_state {
461 ISCSI_ROUTER_STATE_UNKNOWN,
462 ISCSI_ROUTER_STATE_ADVERTISED,
463 ISCSI_ROUTER_STATE_MANUAL,
464 ISCSI_ROUTER_STATE_STALE,
465};
466
467/* iSCSI specific settings params for iface */
468enum iscsi_iface_param {
469 ISCSI_IFACE_PARAM_DEF_TASKMGMT_TMO,
470 ISCSI_IFACE_PARAM_HDRDGST_EN,
471 ISCSI_IFACE_PARAM_DATADGST_EN,
472 ISCSI_IFACE_PARAM_IMM_DATA_EN,
473 ISCSI_IFACE_PARAM_INITIAL_R2T_EN,
474 ISCSI_IFACE_PARAM_DATASEQ_INORDER_EN,
475 ISCSI_IFACE_PARAM_PDU_INORDER_EN,
476 ISCSI_IFACE_PARAM_ERL,
477 ISCSI_IFACE_PARAM_MAX_RECV_DLENGTH,
478 ISCSI_IFACE_PARAM_FIRST_BURST,
479 ISCSI_IFACE_PARAM_MAX_R2T,
480 ISCSI_IFACE_PARAM_MAX_BURST,
481 ISCSI_IFACE_PARAM_CHAP_AUTH_EN,
482 ISCSI_IFACE_PARAM_BIDI_CHAP_EN,
483 ISCSI_IFACE_PARAM_DISCOVERY_AUTH_OPTIONAL,
484 ISCSI_IFACE_PARAM_DISCOVERY_LOGOUT_EN,
485 ISCSI_IFACE_PARAM_STRICT_LOGIN_COMP_EN,
486 ISCSI_IFACE_PARAM_INITIATOR_NAME,
408}; 487};
409 488
410enum iscsi_conn_state { 489enum iscsi_conn_state {
diff --git a/include/scsi/scsi_transport_iscsi.h b/include/scsi/scsi_transport_iscsi.h
index fe7c8f3e93f8..2ac11feab6f3 100644
--- a/include/scsi/scsi_transport_iscsi.h
+++ b/include/scsi/scsi_transport_iscsi.h
@@ -478,4 +478,7 @@ iscsi_find_flashnode_sess(struct Scsi_Host *shost, void *data,
478extern struct device * 478extern struct device *
479iscsi_find_flashnode_conn(struct iscsi_bus_flash_session *fnode_sess); 479iscsi_find_flashnode_conn(struct iscsi_bus_flash_session *fnode_sess);
480 480
481extern char *
482iscsi_get_ipaddress_state_name(enum iscsi_ipaddress_state port_state);
483extern char *iscsi_get_router_state_name(enum iscsi_router_state router_state);
481#endif 484#endif