svn commit: r295562 - head/usr.sbin/ctld
Alexander Motin
mav at FreeBSD.org
Fri Feb 12 10:58:15 UTC 2016
Author: mav
Date: Fri Feb 12 10:58:13 2016
New Revision: 295562
URL: https://svnweb.freebsd.org/changeset/base/295562
Log:
Don't check CmdSN for initial login request.
This fixes connection errors for some initiators not starting CmdSN
from zero.
While there, fix wrong status details reported for couple errors.
MFC after: 3 days
Modified:
head/usr.sbin/ctld/login.c
Modified: head/usr.sbin/ctld/login.c
==============================================================================
--- head/usr.sbin/ctld/login.c Fri Feb 12 07:38:19 2016 (r295561)
+++ head/usr.sbin/ctld/login.c Fri Feb 12 10:58:13 2016 (r295562)
@@ -126,15 +126,16 @@ login_receive(struct connection *conn, b
log_errx(1, "received Login PDU with unsupported "
"Version-min 0x%x", bhslr->bhslr_version_min);
}
- if (ISCSI_SNLT(ntohl(bhslr->bhslr_cmdsn), conn->conn_cmdsn)) {
- login_send_error(request, 0x02, 0x05);
+ if (initial == false &&
+ ISCSI_SNLT(ntohl(bhslr->bhslr_cmdsn), conn->conn_cmdsn)) {
+ login_send_error(request, 0x02, 0x00);
log_errx(1, "received Login PDU with decreasing CmdSN: "
"was %u, is %u", conn->conn_cmdsn,
ntohl(bhslr->bhslr_cmdsn));
}
if (initial == false &&
ntohl(bhslr->bhslr_expstatsn) != conn->conn_statsn) {
- login_send_error(request, 0x02, 0x05);
+ login_send_error(request, 0x02, 0x00);
log_errx(1, "received Login PDU with wrong ExpStatSN: "
"is %u, should be %u", ntohl(bhslr->bhslr_expstatsn),
conn->conn_statsn);
More information about the svn-src-all
mailing list