iPXE
Data Structures | Macros | Enumerations | Functions
iscsi.h File Reference

iSCSI protocol More...

#include <stdint.h>
#include <ipxe/socket.h>
#include <ipxe/scsi.h>
#include <ipxe/chap.h>
#include <ipxe/refcnt.h>
#include <ipxe/xfer.h>
#include <ipxe/process.h>
#include <ipxe/acpi.h>
#include <ipxe/settings.h>

Go to the source code of this file.

Data Structures

union  iscsi_segment_lengths
 iSCSI segment lengths More...
 
struct  iscsi_bhs_common
 iSCSI basic header segment common fields More...
 
struct  iscsi_bhs_common_response
 iSCSI basic header segment common request fields More...
 
struct  iscsi_bhs_login_request
 iSCSI login request basic header segment More...
 
struct  iscsi_bhs_login_response
 iSCSI login response basic header segment More...
 
struct  iscsi_bhs_scsi_command
 iSCSI SCSI command basic header segment More...
 
struct  iscsi_bhs_scsi_response
 iSCSI SCSI response basic header segment More...
 
struct  iscsi_bhs_data_in
 iSCSI data-in basic header segment More...
 
struct  iscsi_bhs_data_out
 iSCSI data-out basic header segment More...
 
struct  iscsi_bhs_r2t
 iSCSI request to transfer basic header segment More...
 
struct  iscsi_nop_in
 iSCSI NOP-In basic header segment More...
 
union  iscsi_bhs
 An iSCSI basic header segment. More...
 
struct  iscsi_session
 An iSCSI session. More...
 

Macros

#define ISCSI_PORT   3260
 Default iSCSI port. More...
 
#define ISCSI_AHS_LEN(segment_lengths)   ( (segment_lengths).bytes.ahs_len )
 The length of the additional header segment, in dwords. More...
 
#define ISCSI_DATA_LEN(segment_lengths)   ( ntohl ( (segment_lengths).ahs_and_data_len ) & 0xffffff )
 The length of the data segment, in bytes, excluding any padding. More...
 
#define ISCSI_DATA_PAD_LEN(segment_lengths)   ( ( 0 - (segment_lengths).bytes.data_len[2] ) & 0x03 )
 The padding of the data segment, in bytes. More...
 
#define ISCSI_SET_LENGTHS(segment_lengths, ahs_len, data_len)
 Set additional header and data segment lengths. More...
 
#define ISCSI_OPCODE_MASK   0x3f
 Opcode mask. More...
 
#define ISCSI_FLAG_IMMEDIATE   0x40
 Immediate delivery. More...
 
#define ISCSI_FLAG_FINAL   0x80
 Final PDU of a sequence. More...
 
#define ISCSI_TAG_MAGIC   0x18ae0000
 iSCSI tag magic marker More...
 
#define ISCSI_TAG_RESERVED   0xffffffff
 iSCSI reserved tag value More...
 
#define ISCSI_OPCODE_LOGIN_REQUEST   0x03
 Login request opcode. More...
 
#define ISCSI_LOGIN_FLAG_TRANSITION   0x80
 Willingness to transition to next stage. More...
 
#define ISCSI_LOGIN_FLAG_CONTINUE   0x40
 Key=value pairs continued in subsequent request. More...
 
#define ISCSI_LOGIN_CSG_MASK   0x0c
 
#define ISCSI_LOGIN_CSG_SECURITY_NEGOTIATION   0x00
 
#define ISCSI_LOGIN_CSG_OPERATIONAL_NEGOTIATION   0x04
 
#define ISCSI_LOGIN_CSG_FULL_FEATURE_PHASE   0x0c
 
#define ISCSI_LOGIN_NSG_MASK   0x03
 
#define ISCSI_LOGIN_NSG_SECURITY_NEGOTIATION   0x00
 
#define ISCSI_LOGIN_NSG_OPERATIONAL_NEGOTIATION   0x01
 
#define ISCSI_LOGIN_NSG_FULL_FEATURE_PHASE   0x03
 
#define ISCSI_ISID_IANA   0x40000000
 ISID IANA format marker. More...
 
#define IANA_EN_FEN_SYSTEMS   10019
 Fen Systems Ltd. More...
 
#define ISCSI_OPCODE_LOGIN_RESPONSE   0x23
 Login response opcode. More...
 
#define ISCSI_STATUS_SUCCESS   0x00
 
#define ISCSI_STATUS_REDIRECT   0x01
 
#define ISCSI_STATUS_INITIATOR_ERROR   0x02
 
#define ISCSI_STATUS_INITIATOR_ERROR_AUTHENTICATION   0x01
 
#define ISCSI_STATUS_INITIATOR_ERROR_AUTHORISATION   0x02
 
#define ISCSI_STATUS_INITIATOR_ERROR_NOT_FOUND   0x03
 
#define ISCSI_STATUS_INITIATOR_ERROR_REMOVED   0x04
 
#define ISCSI_STATUS_TARGET_ERROR   0x03
 
#define ISCSI_STATUS_TARGET_ERROR_UNAVAILABLE   0x01
 
#define ISCSI_STATUS_TARGET_ERROR_NO_RESOURCES   0x02
 
#define ISCSI_OPCODE_SCSI_COMMAND   0x01
 SCSI command opcode. More...
 
#define ISCSI_COMMAND_FLAG_READ   0x40
 Command will read data. More...
 
#define ISCSI_COMMAND_FLAG_WRITE   0x20
 Command will write data. More...
 
#define ISCSI_COMMAND_ATTR_UNTAGGED   0x00
 
#define ISCSI_COMMAND_ATTR_SIMPLE   0x01
 
#define ISCSI_COMMAND_ATTR_ORDERED   0x02
 
#define ISCSI_COMMAND_ATTR_HEAD_OF_QUEUE   0x03
 
#define ISCSI_COMMAND_ATTR_ACA   0x04
 
#define ISCSI_OPCODE_SCSI_RESPONSE   0x21
 SCSI response opcode. More...
 
#define ISCSI_RESPONSE_COMMAND_COMPLETE   0x00
 SCSI command completed at target. More...
 
#define ISCSI_RESPONSE_TARGET_FAILURE   0x01
 SCSI target failure. More...
 
#define ISCSI_RESPONSE_FLAG_OVERFLOW   0x20
 Data overflow occurred. More...
 
#define ISCSI_RESPONSE_FLAG_UNDERFLOW   0x40
 Data underflow occurred. More...
 
#define ISCSI_OPCODE_DATA_IN   0x25
 Data-in opcode. More...
 
#define ISCSI_DATA_FLAG_ACKNOWLEDGE   0x40
 Data requires acknowledgement. More...
 
#define ISCSI_DATA_FLAG_OVERFLOW   0x04
 Data overflow occurred. More...
 
#define ISCSI_DATA_FLAG_UNDERFLOW   0x02
 Data underflow occurred. More...
 
#define ISCSI_DATA_FLAG_STATUS   0x01
 SCSI status code and overflow/underflow flags are valid. More...
 
#define ISCSI_OPCODE_DATA_OUT   0x05
 Data-out opcode. More...
 
#define ISCSI_OPCODE_R2T   0x31
 R2T opcode. More...
 
#define ISCSI_OPCODE_NOP_IN   0x20
 NOP-In opcode. More...
 
#define ISCSI_STATUS_SECURITY_NEGOTIATION_PHASE
 iSCSI session is currently in the security negotiation phase More...
 
#define ISCSI_STATUS_OPERATIONAL_NEGOTIATION_PHASE
 iSCSI session is currently in the operational parameter negotiation phase More...
 
#define ISCSI_STATUS_FULL_FEATURE_PHASE   ISCSI_LOGIN_CSG_FULL_FEATURE_PHASE
 iSCSI session is currently in the full feature phase More...
 
#define ISCSI_STATUS_PHASE_MASK   ( ISCSI_LOGIN_CSG_MASK | ISCSI_LOGIN_NSG_MASK )
 Mask for all iSCSI session phases. More...
 
#define ISCSI_STATUS_STRINGS_SECURITY   0x0100
 iSCSI session needs to send the initial security negotiation strings More...
 
#define ISCSI_STATUS_STRINGS_CHAP_ALGORITHM   0x0200
 iSCSI session needs to send the CHAP_A string More...
 
#define ISCSI_STATUS_STRINGS_CHAP_RESPONSE   0x0400
 iSCSI session needs to send the CHAP response More...
 
#define ISCSI_STATUS_STRINGS_CHAP_CHALLENGE   0x0800
 iSCSI session needs to send the mutual CHAP challenge More...
 
#define ISCSI_STATUS_STRINGS_OPERATIONAL   0x1000
 iSCSI session needs to send the operational negotiation strings More...
 
#define ISCSI_STATUS_STRINGS_MASK   0xff00
 Mask for all iSCSI "needs to send" flags. More...
 
#define ISCSI_STATUS_AUTH_FORWARD_REQUIRED   0x00010000
 Target has requested forward (initiator) authentication. More...
 
#define ISCSI_STATUS_AUTH_REVERSE_REQUIRED   0x00020000
 Initiator requires target (reverse) authentication. More...
 
#define ISCSI_STATUS_AUTH_REVERSE_OK   0x00040000
 Target authenticated itself correctly. More...
 
#define ISCSI_DEFAULT_IQN_PREFIX   "iqn.2010-04.org.ipxe"
 Default initiator IQN prefix. More...
 

Enumerations

enum  iscsi_tx_state { ISCSI_TX_IDLE = 0, ISCSI_TX_BHS, ISCSI_TX_AHS, ISCSI_TX_DATA }
 State of an iSCSI TX engine. More...
 
enum  iscsi_rx_state { ISCSI_RX_BHS = 0, ISCSI_RX_AHS, ISCSI_RX_DATA, ISCSI_RX_DATA_PADDING }
 State of an iSCSI RX engine. More...
 

Functions

 FILE_LICENCE (GPL2_OR_LATER_OR_UBDL)
 
const struct setting initiator_iqn_setting __setting (SETTING_SANBOOT_EXTRA, initiator-iqn)
 

Detailed Description

iSCSI protocol

Definition in file iscsi.h.

Macro Definition Documentation

◆ ISCSI_PORT

#define ISCSI_PORT   3260

Default iSCSI port.

Definition at line 23 of file iscsi.h.

◆ ISCSI_AHS_LEN

#define ISCSI_AHS_LEN (   segment_lengths)    ( (segment_lengths).bytes.ahs_len )

The length of the additional header segment, in dwords.

Definition at line 48 of file iscsi.h.

◆ ISCSI_DATA_LEN

#define ISCSI_DATA_LEN (   segment_lengths)    ( ntohl ( (segment_lengths).ahs_and_data_len ) & 0xffffff )

The length of the data segment, in bytes, excluding any padding.

Definition at line 52 of file iscsi.h.

◆ ISCSI_DATA_PAD_LEN

#define ISCSI_DATA_PAD_LEN (   segment_lengths)    ( ( 0 - (segment_lengths).bytes.data_len[2] ) & 0x03 )

The padding of the data segment, in bytes.

Definition at line 56 of file iscsi.h.

◆ ISCSI_SET_LENGTHS

#define ISCSI_SET_LENGTHS (   segment_lengths,
  ahs_len,
  data_len 
)
Value:
do { \
(segment_lengths).ahs_and_data_len = \
htonl ( data_len | ( ahs_len << 24 ) ); \
} while ( 0 )
#define htonl(value)
Definition: byteswap.h:133

Set additional header and data segment lengths.

Definition at line 60 of file iscsi.h.

◆ ISCSI_OPCODE_MASK

#define ISCSI_OPCODE_MASK   0x3f

Opcode mask.

Definition at line 87 of file iscsi.h.

◆ ISCSI_FLAG_IMMEDIATE

#define ISCSI_FLAG_IMMEDIATE   0x40

Immediate delivery.

Definition at line 90 of file iscsi.h.

◆ ISCSI_FLAG_FINAL

#define ISCSI_FLAG_FINAL   0x80

Final PDU of a sequence.

Definition at line 93 of file iscsi.h.

◆ ISCSI_TAG_MAGIC

#define ISCSI_TAG_MAGIC   0x18ae0000

iSCSI tag magic marker

Definition at line 96 of file iscsi.h.

◆ ISCSI_TAG_RESERVED

#define ISCSI_TAG_RESERVED   0xffffffff

iSCSI reserved tag value

Definition at line 99 of file iscsi.h.

◆ ISCSI_OPCODE_LOGIN_REQUEST

#define ISCSI_OPCODE_LOGIN_REQUEST   0x03

Login request opcode.

Definition at line 164 of file iscsi.h.

◆ ISCSI_LOGIN_FLAG_TRANSITION

#define ISCSI_LOGIN_FLAG_TRANSITION   0x80

Willingness to transition to next stage.

Definition at line 167 of file iscsi.h.

◆ ISCSI_LOGIN_FLAG_CONTINUE

#define ISCSI_LOGIN_FLAG_CONTINUE   0x40

Key=value pairs continued in subsequent request.

Definition at line 170 of file iscsi.h.

◆ ISCSI_LOGIN_CSG_MASK

#define ISCSI_LOGIN_CSG_MASK   0x0c

Definition at line 173 of file iscsi.h.

◆ ISCSI_LOGIN_CSG_SECURITY_NEGOTIATION

#define ISCSI_LOGIN_CSG_SECURITY_NEGOTIATION   0x00

Definition at line 174 of file iscsi.h.

◆ ISCSI_LOGIN_CSG_OPERATIONAL_NEGOTIATION

#define ISCSI_LOGIN_CSG_OPERATIONAL_NEGOTIATION   0x04

Definition at line 175 of file iscsi.h.

◆ ISCSI_LOGIN_CSG_FULL_FEATURE_PHASE

#define ISCSI_LOGIN_CSG_FULL_FEATURE_PHASE   0x0c

Definition at line 176 of file iscsi.h.

◆ ISCSI_LOGIN_NSG_MASK

#define ISCSI_LOGIN_NSG_MASK   0x03

Definition at line 179 of file iscsi.h.

◆ ISCSI_LOGIN_NSG_SECURITY_NEGOTIATION

#define ISCSI_LOGIN_NSG_SECURITY_NEGOTIATION   0x00

Definition at line 180 of file iscsi.h.

◆ ISCSI_LOGIN_NSG_OPERATIONAL_NEGOTIATION

#define ISCSI_LOGIN_NSG_OPERATIONAL_NEGOTIATION   0x01

Definition at line 181 of file iscsi.h.

◆ ISCSI_LOGIN_NSG_FULL_FEATURE_PHASE

#define ISCSI_LOGIN_NSG_FULL_FEATURE_PHASE   0x03

Definition at line 182 of file iscsi.h.

◆ ISCSI_ISID_IANA

#define ISCSI_ISID_IANA   0x40000000

ISID IANA format marker.

Definition at line 185 of file iscsi.h.

◆ IANA_EN_FEN_SYSTEMS

#define IANA_EN_FEN_SYSTEMS   10019

Fen Systems Ltd.

IANA enterprise number

Permission is hereby granted to use Fen Systems Ltd.'s IANA enterprise number with this iSCSI implementation.

Definition at line 192 of file iscsi.h.

◆ ISCSI_OPCODE_LOGIN_RESPONSE

#define ISCSI_OPCODE_LOGIN_RESPONSE   0x23

Login response opcode.

Definition at line 234 of file iscsi.h.

◆ ISCSI_STATUS_SUCCESS

#define ISCSI_STATUS_SUCCESS   0x00

Definition at line 237 of file iscsi.h.

◆ ISCSI_STATUS_REDIRECT

#define ISCSI_STATUS_REDIRECT   0x01

Definition at line 238 of file iscsi.h.

◆ ISCSI_STATUS_INITIATOR_ERROR

#define ISCSI_STATUS_INITIATOR_ERROR   0x02

Definition at line 239 of file iscsi.h.

◆ ISCSI_STATUS_INITIATOR_ERROR_AUTHENTICATION

#define ISCSI_STATUS_INITIATOR_ERROR_AUTHENTICATION   0x01

Definition at line 240 of file iscsi.h.

◆ ISCSI_STATUS_INITIATOR_ERROR_AUTHORISATION

#define ISCSI_STATUS_INITIATOR_ERROR_AUTHORISATION   0x02

Definition at line 241 of file iscsi.h.

◆ ISCSI_STATUS_INITIATOR_ERROR_NOT_FOUND

#define ISCSI_STATUS_INITIATOR_ERROR_NOT_FOUND   0x03

Definition at line 242 of file iscsi.h.

◆ ISCSI_STATUS_INITIATOR_ERROR_REMOVED

#define ISCSI_STATUS_INITIATOR_ERROR_REMOVED   0x04

Definition at line 243 of file iscsi.h.

◆ ISCSI_STATUS_TARGET_ERROR

#define ISCSI_STATUS_TARGET_ERROR   0x03

Definition at line 244 of file iscsi.h.

◆ ISCSI_STATUS_TARGET_ERROR_UNAVAILABLE

#define ISCSI_STATUS_TARGET_ERROR_UNAVAILABLE   0x01

Definition at line 245 of file iscsi.h.

◆ ISCSI_STATUS_TARGET_ERROR_NO_RESOURCES

#define ISCSI_STATUS_TARGET_ERROR_NO_RESOURCES   0x02

Definition at line 246 of file iscsi.h.

◆ ISCSI_OPCODE_SCSI_COMMAND

#define ISCSI_OPCODE_SCSI_COMMAND   0x01

SCSI command opcode.

Definition at line 276 of file iscsi.h.

◆ ISCSI_COMMAND_FLAG_READ

#define ISCSI_COMMAND_FLAG_READ   0x40

Command will read data.

Definition at line 279 of file iscsi.h.

◆ ISCSI_COMMAND_FLAG_WRITE

#define ISCSI_COMMAND_FLAG_WRITE   0x20

Command will write data.

Definition at line 282 of file iscsi.h.

◆ ISCSI_COMMAND_ATTR_UNTAGGED

#define ISCSI_COMMAND_ATTR_UNTAGGED   0x00

Definition at line 285 of file iscsi.h.

◆ ISCSI_COMMAND_ATTR_SIMPLE

#define ISCSI_COMMAND_ATTR_SIMPLE   0x01

Definition at line 286 of file iscsi.h.

◆ ISCSI_COMMAND_ATTR_ORDERED

#define ISCSI_COMMAND_ATTR_ORDERED   0x02

Definition at line 287 of file iscsi.h.

◆ ISCSI_COMMAND_ATTR_HEAD_OF_QUEUE

#define ISCSI_COMMAND_ATTR_HEAD_OF_QUEUE   0x03

Definition at line 288 of file iscsi.h.

◆ ISCSI_COMMAND_ATTR_ACA

#define ISCSI_COMMAND_ATTR_ACA   0x04

Definition at line 289 of file iscsi.h.

◆ ISCSI_OPCODE_SCSI_RESPONSE

#define ISCSI_OPCODE_SCSI_RESPONSE   0x21

SCSI response opcode.

Definition at line 327 of file iscsi.h.

◆ ISCSI_RESPONSE_COMMAND_COMPLETE

#define ISCSI_RESPONSE_COMMAND_COMPLETE   0x00

SCSI command completed at target.

Definition at line 330 of file iscsi.h.

◆ ISCSI_RESPONSE_TARGET_FAILURE

#define ISCSI_RESPONSE_TARGET_FAILURE   0x01

SCSI target failure.

Definition at line 333 of file iscsi.h.

◆ ISCSI_RESPONSE_FLAG_OVERFLOW

#define ISCSI_RESPONSE_FLAG_OVERFLOW   0x20

Data overflow occurred.

Definition at line 336 of file iscsi.h.

◆ ISCSI_RESPONSE_FLAG_UNDERFLOW

#define ISCSI_RESPONSE_FLAG_UNDERFLOW   0x40

Data underflow occurred.

Definition at line 339 of file iscsi.h.

◆ ISCSI_OPCODE_DATA_IN

#define ISCSI_OPCODE_DATA_IN   0x25

Data-in opcode.

Definition at line 377 of file iscsi.h.

◆ ISCSI_DATA_FLAG_ACKNOWLEDGE

#define ISCSI_DATA_FLAG_ACKNOWLEDGE   0x40

Data requires acknowledgement.

Definition at line 380 of file iscsi.h.

◆ ISCSI_DATA_FLAG_OVERFLOW

#define ISCSI_DATA_FLAG_OVERFLOW   0x04

Data overflow occurred.

Definition at line 383 of file iscsi.h.

◆ ISCSI_DATA_FLAG_UNDERFLOW

#define ISCSI_DATA_FLAG_UNDERFLOW   0x02

Data underflow occurred.

Definition at line 386 of file iscsi.h.

◆ ISCSI_DATA_FLAG_STATUS

#define ISCSI_DATA_FLAG_STATUS   0x01

SCSI status code and overflow/underflow flags are valid.

Definition at line 389 of file iscsi.h.

◆ ISCSI_OPCODE_DATA_OUT

#define ISCSI_OPCODE_DATA_OUT   0x05

Data-out opcode.

Definition at line 425 of file iscsi.h.

◆ ISCSI_OPCODE_R2T

#define ISCSI_OPCODE_R2T   0x31

R2T opcode.

Definition at line 461 of file iscsi.h.

◆ ISCSI_OPCODE_NOP_IN

#define ISCSI_OPCODE_NOP_IN   0x20

NOP-In opcode.

Definition at line 491 of file iscsi.h.

◆ ISCSI_STATUS_SECURITY_NEGOTIATION_PHASE

#define ISCSI_STATUS_SECURITY_NEGOTIATION_PHASE
Value:
ISCSI_LOGIN_NSG_OPERATIONAL_NEGOTIATION )
#define ISCSI_LOGIN_CSG_SECURITY_NEGOTIATION
Definition: iscsi.h:174

iSCSI session is currently in the security negotiation phase

Definition at line 657 of file iscsi.h.

◆ ISCSI_STATUS_OPERATIONAL_NEGOTIATION_PHASE

#define ISCSI_STATUS_OPERATIONAL_NEGOTIATION_PHASE
Value:
ISCSI_LOGIN_NSG_FULL_FEATURE_PHASE )
#define ISCSI_LOGIN_CSG_OPERATIONAL_NEGOTIATION
Definition: iscsi.h:175

iSCSI session is currently in the operational parameter negotiation phase

Definition at line 664 of file iscsi.h.

◆ ISCSI_STATUS_FULL_FEATURE_PHASE

#define ISCSI_STATUS_FULL_FEATURE_PHASE   ISCSI_LOGIN_CSG_FULL_FEATURE_PHASE

iSCSI session is currently in the full feature phase

Definition at line 669 of file iscsi.h.

◆ ISCSI_STATUS_PHASE_MASK

#define ISCSI_STATUS_PHASE_MASK   ( ISCSI_LOGIN_CSG_MASK | ISCSI_LOGIN_NSG_MASK )

Mask for all iSCSI session phases.

Definition at line 672 of file iscsi.h.

◆ ISCSI_STATUS_STRINGS_SECURITY

#define ISCSI_STATUS_STRINGS_SECURITY   0x0100

iSCSI session needs to send the initial security negotiation strings

Definition at line 675 of file iscsi.h.

◆ ISCSI_STATUS_STRINGS_CHAP_ALGORITHM

#define ISCSI_STATUS_STRINGS_CHAP_ALGORITHM   0x0200

iSCSI session needs to send the CHAP_A string

Definition at line 678 of file iscsi.h.

◆ ISCSI_STATUS_STRINGS_CHAP_RESPONSE

#define ISCSI_STATUS_STRINGS_CHAP_RESPONSE   0x0400

iSCSI session needs to send the CHAP response

Definition at line 681 of file iscsi.h.

◆ ISCSI_STATUS_STRINGS_CHAP_CHALLENGE

#define ISCSI_STATUS_STRINGS_CHAP_CHALLENGE   0x0800

iSCSI session needs to send the mutual CHAP challenge

Definition at line 684 of file iscsi.h.

◆ ISCSI_STATUS_STRINGS_OPERATIONAL

#define ISCSI_STATUS_STRINGS_OPERATIONAL   0x1000

iSCSI session needs to send the operational negotiation strings

Definition at line 687 of file iscsi.h.

◆ ISCSI_STATUS_STRINGS_MASK

#define ISCSI_STATUS_STRINGS_MASK   0xff00

Mask for all iSCSI "needs to send" flags.

Definition at line 690 of file iscsi.h.

◆ ISCSI_STATUS_AUTH_FORWARD_REQUIRED

#define ISCSI_STATUS_AUTH_FORWARD_REQUIRED   0x00010000

Target has requested forward (initiator) authentication.

Definition at line 693 of file iscsi.h.

◆ ISCSI_STATUS_AUTH_REVERSE_REQUIRED

#define ISCSI_STATUS_AUTH_REVERSE_REQUIRED   0x00020000

Initiator requires target (reverse) authentication.

Definition at line 696 of file iscsi.h.

◆ ISCSI_STATUS_AUTH_REVERSE_OK

#define ISCSI_STATUS_AUTH_REVERSE_OK   0x00040000

Target authenticated itself correctly.

Definition at line 699 of file iscsi.h.

◆ ISCSI_DEFAULT_IQN_PREFIX

#define ISCSI_DEFAULT_IQN_PREFIX   "iqn.2010-04.org.ipxe"

Default initiator IQN prefix.

Definition at line 702 of file iscsi.h.

Enumeration Type Documentation

◆ iscsi_tx_state

State of an iSCSI TX engine.

Enumerator
ISCSI_TX_IDLE 

Nothing to send.

ISCSI_TX_BHS 

Sending the basic header segment.

ISCSI_TX_AHS 

Sending the additional header segment.

ISCSI_TX_DATA 

Sending the data segment.

Definition at line 511 of file iscsi.h.

511  {
512  /** Nothing to send */
513  ISCSI_TX_IDLE = 0,
514  /** Sending the basic header segment */
515  ISCSI_TX_BHS,
516  /** Sending the additional header segment */
517  ISCSI_TX_AHS,
518  /** Sending the data segment */
520 };
Nothing to send.
Definition: iscsi.h:513
Sending the additional header segment.
Definition: iscsi.h:517
Sending the data segment.
Definition: iscsi.h:519
Sending the basic header segment.
Definition: iscsi.h:515

◆ iscsi_rx_state

State of an iSCSI RX engine.

Enumerator
ISCSI_RX_BHS 

Receiving the basic header segment.

ISCSI_RX_AHS 

Receiving the additional header segment.

ISCSI_RX_DATA 

Receiving the data segment.

ISCSI_RX_DATA_PADDING 

Receiving the data segment padding.

Definition at line 523 of file iscsi.h.

523  {
524  /** Receiving the basic header segment */
525  ISCSI_RX_BHS = 0,
526  /** Receiving the additional header segment */
527  ISCSI_RX_AHS,
528  /** Receiving the data segment */
530  /** Receiving the data segment padding */
532 };
Receiving the data segment.
Definition: iscsi.h:529
Receiving the data segment padding.
Definition: iscsi.h:531
Receiving the additional header segment.
Definition: iscsi.h:527
Receiving the basic header segment.
Definition: iscsi.h:525

Function Documentation

◆ FILE_LICENCE()

FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL  )

◆ __setting()

const struct setting initiator_iqn_setting __setting ( SETTING_SANBOOT_EXTRA  ,
initiator-  iqn 
)