diff options
| author | Sebastian Vater | 2025-07-11 17:05:37 +0200 |
|---|---|---|
| committer | Sebastian Vater | 2025-07-11 17:05:37 +0200 |
| commit | 7c3a22f93416d2f9a4bc24a85381e90fd37d08b1 (patch) | |
| tree | f18dacc55d4fe1c6ca5f30e10ca0b4b7e74d0f30 | |
| parent | Added most login related text keys and fixed a few typos in iscsi.h. (diff) | |
| download | dnbd3-7c3a22f93416d2f9a4bc24a85381e90fd37d08b1.tar.gz dnbd3-7c3a22f93416d2f9a4bc24a85381e90fd37d08b1.tar.xz dnbd3-7c3a22f93416d2f9a4bc24a85381e90fd37d08b1.zip | |
Added missing remaining login related text keys in iscsi.h.
| -rw-r--r-- | src/server/iscsi.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/server/iscsi.h b/src/server/iscsi.h index d0588e0..83aa1e4 100644 --- a/src/server/iscsi.h +++ b/src/server/iscsi.h @@ -1834,6 +1834,60 @@ typedef struct __attribute__((packed)) iscsi_text_response_packet { // +--------------+------------------------------------------+ // When TaskReporting is not negotiated to FastAbort, the // standard multi-task abort semantics MUST be used +#define ISCSI_LOGIN_AUTH_TEXT_KEY_X_NODE_ARCH "X#NodeArchitecture" // Use: LO, Declarative + // Senders: Initiator and target + // Scope: SW + // X#NodeArchitecture=<list-of-values> + // Default is None. + // Examples: + // X#NodeArchitecture=ExampleOS/v1234,ExampleInc_SW_Initiator/1.05a + // X#NodeArchitecture=ExampleInc_HW_Initiator/4010,Firmware/2.0.0.5 + // X#NodeArchitecture=ExampleInc_SW_Initiator/2.1,CPU_Arch/i686 + // This document does not define the structure or content of the list of + // values. + // The initiator or target declares the details of its iSCSI node + // architecture to the remote endpoint. These details may include, but + // are not limited to, iSCSI vendor software, firmware, or hardware + // versions; the OS version; or hardware architecture. This key may be + // declared on a Discovery session or a Normal session. + // The length of the key value (total length of the list-of-values) MUST + // NOT be greater than 255 bytes. + // X#NodeArchitecture MUST NOT be redeclared during the Login Phase. + // Functional behavior of the iSCSI node (this includes the iSCSI + // protocol logic - the SCSI, iSCSI, and TCP/IP protocols) MUST NOT + // depend on the presence, absence, or content of the X#NodeArchitecture + // key. The key MUST NOT be used by iSCSI nodes for interoperability or + // for exclusion of other nodes. To ensure proper use, key values + // SHOULD be set by the node itself, and there SHOULD NOT be provisions + // for the key values to contain user-defined text. + // Nodes implementing this key MUST choose one of the following + // implementation options: + // - only transmit the key, + // - only log the key values received from other nodes, or + // - both transmit and log the key values. + // Each node choosing to implement transmission of the key values MUST + // be prepared to handle the response of iSCSI nodes that do not + // understand the key. + // Nodes that implement transmission and/or logging of the key values + // may also implement administrative mechanisms that disable and/or + // change the logging and key transmission details. + // Thus, a valid behavior for this key may be that a node is completely + // silent (the node does not transmit any key value and simply discards + // any key values it receives without issuing a NotUnderstood response) +#define ISCSI_LOGIN_AUTH_TEXT_KEY_IF_MARKER "IFMarker" // Obsoleted Keys +#define ISCSI_LOGIN_AUTH_TEXT_KEY_OF_MARKER "OFMarker" // This document obsoletes the following keys defined in RFC3720: +#define ISCSI_LOGIN_AUTH_TEXT_KEY_OF_MARK_INT "OFMarkInt" // IFMarker, OFMarker, OFMarkInt, and IFMarkInt. However, iSCSI +#define ISCSI_LOGIN_AUTH_TEXT_KEY_IF_MARK_INT "IFMarkInt" // implementations compliant to this document may still receive these + // obsoleted keys - i.e., in a responder role - in a text negotiation. + // When an IFMarker or OFMarker key is received, a compliant iSCSI + // implementation SHOULD respond with the constant "Reject" value. The + // implementation MAY alternatively respond with a "No" value. + // However, the implementation MUST NOT respond with a "NotUnderstood" + // value for either of these keys. + // When an IFMarkInt or OFMarkInt key is received, a compliant iSCSI + // implementation MUST respond with the constant "Reject" value. The + // implementation MUST NOT respond with a "NotUnderstood" value for + // either of these keys /* This is an initiator-defined component of the session identifier and is structured as follows: |
