Page MenuHomeFreeBSD

Further refine the ExpDataSN checks for SCSI Response PDUs.
ClosedPublic

Authored by jhb on Oct 25 2021, 11:37 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Apr 17, 11:19 PM
Unknown Object (File)
Fri, Apr 11, 1:37 PM
Unknown Object (File)
Wed, Apr 2, 5:16 AM
Unknown Object (File)
Fri, Mar 21, 8:17 AM
Unknown Object (File)
Mar 16 2025, 4:18 PM
Unknown Object (File)
Mar 15 2025, 5:34 AM
Unknown Object (File)
Feb 27 2025, 6:22 PM
Unknown Object (File)
Feb 22 2025, 11:47 PM
Subscribers

Details

Summary

According to 11.4.8 in RFC 7143, ExpDataSN MUST be 0 if the response
code is not Command Completed, but we were requiring it to always be
the count of DataIn PDUs regardless of the response code.

In addition, at least one target (OCI Oracle iSCSI block device)
returns an ExpDataSN of 0 when returning a valid completion with an
error status (Check Condition) in response to a SCSI Inquiry. As a
workaround for this target, only warn without resetting the connection
for a 0 ExpDataSN for responses with a non-zero error status.

PR: 259152
Reported by: dch
Fixes: 4f0f5bf99591 iscsi: Validate DataSN values in Data-In PDUs in the initiator.
Sponsored by: Chelsio Communications

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 42354
Build 39242: arc lint + arc unit