iscsi-target: remove support for obsolete markers
Support for markers is currently broken because of a bug in iscsi_enforce_integrity_rules(): the "IFMarkInt_Reject" and "OFMarkInt_Reject" variables are always equal to 1 in iscsi_enforce_integrity_rules(). Moreover, fixed interval markers keys (IFMarker, OFMarker, IFMarkInt and OFMarkInt) are obsolete according to iSCSI RFC 7143: >From http://tools.ietf.org/html/rfc7143#section-13.25: 13.25. Obsoleted Keys This document obsoletes the following keys defined in [RFC3720]: IFMarker, OFMarker, OFMarkInt, and IFMarkInt. However, iSCSI 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 patch disables markers by turning the corresponding parameters to read-only. The default value of IFMarker and OFMarker remains "No" but the user cannot change it to "Yes" anymore. The new value of IFMarkInt and OFMarkInt is "Reject". (Drop left-over iscsi_get_value_from_number_range + make configfs parameters attrs R/W nops - nab) Signed-off-by: Christophe Vu-Brugier <cvubrugier@fastmail.fm> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
This commit is contained in:

committed by
Nicholas Bellinger

parent
414e462727
commit
c04a6091c9
@@ -248,10 +248,6 @@ struct iscsi_conn_ops {
|
||||
u8 DataDigest; /* [0,1] == [None,CRC32C] */
|
||||
u32 MaxRecvDataSegmentLength; /* [512..2**24-1] */
|
||||
u32 MaxXmitDataSegmentLength; /* [512..2**24-1] */
|
||||
u8 OFMarker; /* [0,1] == [No,Yes] */
|
||||
u8 IFMarker; /* [0,1] == [No,Yes] */
|
||||
u32 OFMarkInt; /* [1..65535] */
|
||||
u32 IFMarkInt; /* [1..65535] */
|
||||
/*
|
||||
* iSER specific connection parameters
|
||||
*/
|
||||
@@ -532,12 +528,6 @@ struct iscsi_conn {
|
||||
u32 exp_statsn;
|
||||
/* Per connection status sequence number */
|
||||
u32 stat_sn;
|
||||
/* IFMarkInt's Current Value */
|
||||
u32 if_marker;
|
||||
/* OFMarkInt's Current Value */
|
||||
u32 of_marker;
|
||||
/* Used for calculating OFMarker offset to next PDU */
|
||||
u32 of_marker_offset;
|
||||
#define IPV6_ADDRESS_SPACE 48
|
||||
unsigned char login_ip[IPV6_ADDRESS_SPACE];
|
||||
unsigned char local_ip[IPV6_ADDRESS_SPACE];
|
||||
|
Reference in New Issue
Block a user