From cbba36e15068339bedd35818d32838961d7e6f28 Mon Sep 17 00:00:00 2001 From: lishiao144 <1447175116@qq.com> Date: Thu, 12 Jun 2025 18:26:19 +0800 Subject: [PATCH] fix ExpStatSN handling for Data-Out PDUs --- lib/socket.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/socket.c b/lib/socket.c index 8992e65..0b45663 100644 --- a/lib/socket.c +++ b/lib/socket.c @@ -887,7 +887,10 @@ iscsi_write_to_socket(struct iscsi_context *iscsi) iscsi->outqueue_current = iscsi->outqueue; /* set exp statsn */ - iscsi_pdu_set_expstatsn(iscsi->outqueue_current, iscsi->statsn + 1); + if((iscsi->outqueue->outdata.data[0] & 0x3f) != ISCSI_PDU_DATA_OUT) + iscsi_pdu_set_expstatsn(iscsi->outqueue_current, iscsi->statsn + 1); + else + iscsi_pdu_set_expstatsn(iscsi->outqueue_current, iscsi->statsn); /* calculate header checksum */ if (iscsi->header_digest != ISCSI_HEADER_DIGEST_NONE &&