Commit Graph

359 Commits

Author SHA1 Message Date
Ronnie Sahlberg
185649144d Update the MTX patch for libiscsi.
MTX sets XFER-direction to "WRITE" even if the xfer length is 0
Catch this condition so that we pass XFER-direction==NONE to libiscsi for this case
2012-08-09 20:46:54 +10:00
Ronnie Sahlberg
08034c3335 SYNC CONNECT: make sure state is non-NULL before we dereference it 2012-08-09 08:46:29 +10:00
Ronnie Sahlberg
06cc2d2ece CONNECT: connect data is not always malloc()ed so we can demand it is free()able
After a sync connection, make sure to clear connect_data since it will otherwise
point to a structure on the stack.
2012-08-09 08:27:48 +10:00
Ronnie Sahlberg
a98b6e63f0 MAXCMDSN: Stop sending new PDUs to the target when maxcmdsn is reached
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2012-08-02 09:46:42 +10:00
Ronnie Sahlberg
71be26ad03 Add tracking of MAXCMDSN 2012-08-02 09:09:22 +10:00
Ronnie Sahlberg
439f68e555 CONNECTION: Track the connection state and callback via the context structure
Dont free the connection state when login is finished, instead track it via the
iscsi context structure and free it once the context is destroyed
2012-08-02 08:51:25 +10:00
Ronnie Sahlberg
d5d062a494 TESTS: For the invalid tests, treat the target dropping the session as OK
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2012-08-01 16:38:30 +10:00
Ronnie Sahlberg
77d8e41be7 TESTS: Add a mechanism to temporarily disable the session reconnect
Some tests may cause a target to drop the session.
For these tests we DO want the test tool to detect that the command
failed and later reconnect the session again when we proceed to the next subtest

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2012-08-01 16:32:40 +10:00
Ronnie Sahlberg
98b0a757b2 R2T: Reset datasn to 0 everytime we start a new sequence from r2t 2012-08-01 13:44:03 +10:00
Ronnie Sahlberg
1f98c40edf DATASN: We have to increment DATASN in each DATA-OUT PDU in a sequence.
For writes that span across multiple DATA-OUT segments we have to
increment the DATASN field for each segment.
We didnt use to, and most targets were perfectly happy, ignoring that the DATASN was constant 0 for every DATAOUT we sent.
LIO however does check this and did cause it to reject the libiscsi test tool.
(This is something we should write a iscsi test for  so we can flag all non-LIO targets as broken and needing to be fixed)

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2012-08-01 13:30:13 +10:00
Ronnie Sahlberg
2a15e39460 Add a new sense code 2012-07-30 07:38:38 +10:00
Ronnie Sahlberg
9986cd85d7 ISCSI: Support devices with more than 255 LUNs 2012-07-25 13:24:55 +10:00
Ronnie Sahlberg
fbc4f3584b TEST: Add initial test for "test that all mandatory SBC commands are there"
Some tests are just stubs since we underlying vommands have not been
implemented in libiscsi yet.
2012-07-22 08:52:25 +10:00
Ronnie Sahlberg
458c342839 typo 2012-07-22 07:37:04 +10:00
Ronnie Sahlberg
94cd6bf3b1 TEST: Add test that PREVENTs on different IT_Nexuses do not interfere 2012-07-21 15:04:53 +10:00
Ronnie Sahlberg
af9d3eab79 fix a typo 2012-07-21 12:27:51 +10:00
Ronnie Sahlberg
d8ed7d4053 TESTS, After a target/lun reset, wait until the lun stabilizes before continuing the tests 2012-07-21 12:26:24 +10:00
Ronnie Sahlberg
9205a71135 fix typo in test, we try to reset the LUN, not the target 2012-07-21 12:09:59 +10:00
Ronnie Sahlberg
313d579464 TEST: Add a test that a LUN reset will clear PREVENTALLOW 2012-07-21 12:05:25 +10:00
Ronnie Sahlberg
ca046ab342 TEST: add a test that a Cold Reset will clear PREVENTALLOW 2012-07-21 11:59:34 +10:00
Ronnie Sahlberg
7d0393452c TEST: Add a test that PREVENTALLOW is cleared byb a warm reset 2012-07-21 11:53:26 +10:00
Ronnie Sahlberg
44bf8a5a3a TEST: Add a test that a I_T_Nexus loss clears the PREVENTALLOW on that nexus 2012-07-21 11:17:09 +10:00
Ronnie Sahlberg
5953607743 TEST: add test that we can not eject media when PREVENTALLOW is set on the I_T_nexus 2012-07-21 10:43:33 +10:00
Ronnie Sahlberg
43bf059fca Add ASCQ for MEDIUM_REMOVAL_PREVENTED 2012-07-21 10:28:32 +10:00
Ronnie Sahlberg
5cf3ccca75 TEST: Add simple test for PREVENTYALLLOWMEDIUMREMOVAL 2012-07-21 10:04:37 +10:00
Ronnie Sahlberg
b8e08a355d TESTS: Add test for all media access commands that they fail correctly on ejected media 2012-07-18 08:03:29 +10:00
Ronnie Sahlberg
16da01ed4e Add PREVENTALLOWMEDIUMREMOVAL support 2012-07-17 18:12:03 +10:00
Ronnie Sahlberg
4a3935770d TEST Add test for powercondition and eject 2012-07-16 21:43:27 +10:00
Ronnie Sahlberg
db68e68f6d TEST: add simple test for STARTSTOPUNIT 2012-07-16 21:06:52 +10:00
Ronnie Sahlberg
1f40de8858 compiler warnings 2012-07-15 08:13:40 +10:00
Ronnie Sahlberg
025136e81c Add support for STARTSTOPUNIT command 2012-07-15 08:10:39 +10:00
Ronnie Sahlberg
e6ca1451b0 TEST add test for wrprotect field in ORWRITE 2012-07-14 18:38:48 +10:00
Ronnie Sahlberg
6bbbff64fd Add some missing free calls 2012-07-14 18:10:04 +10:00
Ronnie Sahlberg
67f4ceca6b Add COMPAREANDWRITE and ORWRITE to the readonly tests 2012-07-14 17:55:10 +10:00
Ronnie Sahlberg
030cb9134a Add lba-out-of-range tests for ORWRITE 2012-07-14 17:45:43 +10:00
Ronnie Sahlberg
1a7a92024e Fix typo in orwrite test 2012-07-14 17:30:57 +10:00
Ronnie Sahlberg
1ce5d97e57 TEST: Add test for ORWRITE command 2012-07-14 17:29:58 +10:00
Ronnie Sahlberg
11f7da678b Add support for ORWRITE 2012-07-14 17:01:38 +10:00
Ronnie Sahlberg
bee944c3cc update log message 2012-07-14 13:17:13 +10:00
Ronnie Sahlberg
b5a6f7c3cb Bugfixes for the compare and write tests 2012-07-14 13:15:45 +10:00
Ronnie Sahlberg
17e3355dc2 TEST: Add tests for COMPAREANDWRITE 2012-07-14 13:06:24 +10:00
Ronnie Sahlberg
017bb69ccd Add new sense code for miscompare during verify 2012-07-14 12:49:42 +10:00
Ronnie Sahlberg
bac1d4d7af We need to allow >uint8_t as xferlen since this is in unit of bytes, not blocks in the libiscsi api 2012-07-14 12:31:38 +10:00
Ronnie Sahlberg
bdd6e6bb11 Add support for COMPARE_AND_WRITE command 2012-07-14 11:34:40 +10:00
Ronnie Sahlberg
f6705d4691 TESTS: Add tests for writing beyond the end of the LUN for WRITEVERIFY10/12/16 2012-07-14 10:54:15 +10:00
Ronnie Sahlberg
477ee0f6f6 TEST: Add wrprotect tests for WRITEVERIFY10/12/16 2012-07-14 08:54:00 +10:00
Ronnie Sahlberg
df30827992 Add simple tests for WRITEVERIFY10/12/16 2012-07-14 08:41:04 +10:00
Ronnie Sahlberg
bae5ce4c14 TESTS: Add test that WRITEVERIFY* fails if the device is write-protected 2012-07-14 08:24:19 +10:00
Ronnie Sahlberg
29f5e9378f Add support for WRITEVERIFY10/12/16 2012-07-14 08:19:43 +10:00
Ronnie Sahlberg
1745f76bef Add SYNCHRONIZECACHE16 support 2012-07-13 10:19:44 +10:00