iscsi_queue_pdu() can never fail, make it void
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
This commit is contained in:
@@ -344,10 +344,11 @@ void iscsi_cancel_pdus(struct iscsi_context *iscsi);
|
|||||||
void iscsi_cancel_lun_pdus(struct iscsi_context *iscsi, uint32_t lun);
|
void iscsi_cancel_lun_pdus(struct iscsi_context *iscsi, uint32_t lun);
|
||||||
int iscsi_pdu_add_data(struct iscsi_context *iscsi, struct iscsi_pdu *pdu,
|
int iscsi_pdu_add_data(struct iscsi_context *iscsi, struct iscsi_pdu *pdu,
|
||||||
const unsigned char *dptr, int dsize);
|
const unsigned char *dptr, int dsize);
|
||||||
int iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu);
|
void iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu);
|
||||||
int iscsi_add_data(struct iscsi_context *iscsi, struct iscsi_data *data,
|
int iscsi_add_data(struct iscsi_context *iscsi, struct iscsi_data *data,
|
||||||
const unsigned char *dptr, int dsize, int pdualignment);
|
const unsigned char *dptr, int dsize, int pdualignment);
|
||||||
|
|
||||||
|
void iscsi_add_to_outqueue(struct iscsi_context *iscsi, struct iscsi_pdu *pdu);
|
||||||
struct scsi_task;
|
struct scsi_task;
|
||||||
void iscsi_pdu_set_cdb(struct iscsi_pdu *pdu, struct scsi_task *task);
|
void iscsi_pdu_set_cdb(struct iscsi_pdu *pdu, struct scsi_task *task);
|
||||||
|
|
||||||
@@ -417,9 +418,6 @@ void iscsi_decrement_iface_rr(void);
|
|||||||
void __attribute__((format(printf, 3, 4)))
|
void __attribute__((format(printf, 3, 4)))
|
||||||
iscsi_log_message(struct iscsi_context *iscsi, int level, const char *format, ...);
|
iscsi_log_message(struct iscsi_context *iscsi, int level, const char *format, ...);
|
||||||
|
|
||||||
void
|
|
||||||
iscsi_add_to_outqueue(struct iscsi_context *iscsi, struct iscsi_pdu *pdu);
|
|
||||||
|
|
||||||
int iscsi_serial32_compare(uint32_t s1, uint32_t s2);
|
int iscsi_serial32_compare(uint32_t s1, uint32_t s2);
|
||||||
|
|
||||||
uint32_t iscsi_itt_post_increment(struct iscsi_context *iscsi);
|
uint32_t iscsi_itt_post_increment(struct iscsi_context *iscsi);
|
||||||
@@ -443,7 +441,7 @@ union socket_address;
|
|||||||
|
|
||||||
typedef struct iscsi_transport {
|
typedef struct iscsi_transport {
|
||||||
int (*connect)(struct iscsi_context *iscsi, union socket_address *sa, int ai_family);
|
int (*connect)(struct iscsi_context *iscsi, union socket_address *sa, int ai_family);
|
||||||
int (*queue_pdu)(struct iscsi_context *iscsi, struct iscsi_pdu *pdu);
|
void (*queue_pdu)(struct iscsi_context *iscsi, struct iscsi_pdu *pdu);
|
||||||
struct iscsi_pdu* (*new_pdu)(struct iscsi_context *iscsi, size_t size);
|
struct iscsi_pdu* (*new_pdu)(struct iscsi_context *iscsi, size_t size);
|
||||||
int (*disconnect)(struct iscsi_context *iscsi);
|
int (*disconnect)(struct iscsi_context *iscsi);
|
||||||
void (*free_pdu)(struct iscsi_context *iscsi, struct iscsi_pdu *pdu);
|
void (*free_pdu)(struct iscsi_context *iscsi, struct iscsi_pdu *pdu);
|
||||||
|
|||||||
+1
-6
@@ -73,12 +73,7 @@ iscsi_discovery_async(struct iscsi_context *iscsi, iscsi_command_cb cb,
|
|||||||
pdu->callback = cb;
|
pdu->callback = cb;
|
||||||
pdu->private_data = private_data;
|
pdu->private_data = private_data;
|
||||||
|
|
||||||
if (iscsi_queue_pdu(iscsi, pdu) != 0) {
|
iscsi_queue_pdu(iscsi, pdu);
|
||||||
iscsi_set_error(iscsi, "Out-of-memory: failed to queue iscsi "
|
|
||||||
"text pdu.");
|
|
||||||
iscsi->drv->free_pdu(iscsi, pdu);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-12
@@ -128,12 +128,7 @@ iscsi_send_data_out(struct iscsi_context *iscsi, struct iscsi_pdu *cmd_pdu,
|
|||||||
/* update data segment length */
|
/* update data segment length */
|
||||||
scsi_set_uint32(&pdu->outdata.data[4], pdu->payload_len);
|
scsi_set_uint32(&pdu->outdata.data[4], pdu->payload_len);
|
||||||
|
|
||||||
if (iscsi_queue_pdu(iscsi, pdu) != 0) {
|
iscsi_queue_pdu(iscsi, pdu);
|
||||||
iscsi_set_error(iscsi, "Out-of-memory: failed to queue iscsi "
|
|
||||||
"scsi pdu.");
|
|
||||||
iscsi->drv->free_pdu(iscsi, pdu);
|
|
||||||
goto error;
|
|
||||||
}
|
|
||||||
|
|
||||||
tot_len -= len;
|
tot_len -= len;
|
||||||
offset += len;
|
offset += len;
|
||||||
@@ -280,12 +275,7 @@ iscsi_scsi_command_async(struct iscsi_context *iscsi, int lun,
|
|||||||
pdu->callback = iscsi_scsi_response_cb;
|
pdu->callback = iscsi_scsi_response_cb;
|
||||||
pdu->private_data = &pdu->scsi_cbdata;
|
pdu->private_data = &pdu->scsi_cbdata;
|
||||||
|
|
||||||
if (iscsi_queue_pdu(iscsi, pdu) != 0) {
|
iscsi_queue_pdu(iscsi, pdu);
|
||||||
iscsi_set_error(iscsi, "Out-of-memory: failed to queue iscsi "
|
|
||||||
"scsi pdu.");
|
|
||||||
iscsi->drv->free_pdu(iscsi, pdu);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
iscsi->cmdsn++;
|
iscsi->cmdsn++;
|
||||||
|
|
||||||
/* The F flag is not set. This means we haven't sent all the unsolicited
|
/* The F flag is not set. This means we haven't sent all the unsolicited
|
||||||
|
|||||||
+5
-5
@@ -982,27 +982,27 @@ iscsi_iser_revive_queued_pdus(struct iscsi_context *iscsi) {
|
|||||||
* Need to be compatible to TCP which has real queue,
|
* Need to be compatible to TCP which has real queue,
|
||||||
* in iSER pdus with cmdsn not exceeds maxcmdsn are already sent.
|
* in iSER pdus with cmdsn not exceeds maxcmdsn are already sent.
|
||||||
*/
|
*/
|
||||||
static int
|
static void
|
||||||
iscsi_iser_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu) {
|
iscsi_iser_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu) {
|
||||||
if (pdu == NULL) {
|
if (pdu == NULL) {
|
||||||
iscsi_set_error(iscsi, "trying to queue NULL pdu");
|
iscsi_set_error(iscsi, "trying to queue NULL pdu");
|
||||||
return -1;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pdu->outdata.data[0] == ISCSI_PDU_NOP_OUT &&
|
if (pdu->outdata.data[0] == ISCSI_PDU_NOP_OUT &&
|
||||||
iscsi_iser_cm_event(iscsi) != 0) {
|
iscsi_iser_cm_event(iscsi) != 0) {
|
||||||
iscsi_service_reconnect_if_loggedin(iscsi);
|
iscsi_service_reconnect_if_loggedin(iscsi);
|
||||||
return -1;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (iscsi->outqueue != NULL ||
|
if (iscsi->outqueue != NULL ||
|
||||||
(iscsi_serial32_compare(pdu->cmdsn, iscsi->maxcmdsn) > 0
|
(iscsi_serial32_compare(pdu->cmdsn, iscsi->maxcmdsn) > 0
|
||||||
&& !(pdu->outdata.data[0] & ISCSI_PDU_IMMEDIATE))) {
|
&& !(pdu->outdata.data[0] & ISCSI_PDU_IMMEDIATE))) {
|
||||||
iscsi_add_to_outqueue(iscsi, pdu);
|
iscsi_add_to_outqueue(iscsi, pdu);
|
||||||
return 0;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
return iscsi_iser_send_pdu(iscsi, pdu);
|
iscsi_iser_send_pdu(iscsi, pdu);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+2
-12
@@ -1236,12 +1236,7 @@ iscsi_login_async(struct iscsi_context *iscsi, iscsi_command_cb cb,
|
|||||||
pdu->callback = cb;
|
pdu->callback = cb;
|
||||||
pdu->private_data = private_data;
|
pdu->private_data = private_data;
|
||||||
|
|
||||||
if (iscsi_queue_pdu(iscsi, pdu) != 0) {
|
iscsi_queue_pdu(iscsi, pdu);
|
||||||
iscsi_set_error(iscsi, "Out-of-memory: failed to queue iscsi "
|
|
||||||
"pdu.");
|
|
||||||
iscsi->drv->free_pdu(iscsi, pdu);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -1587,12 +1582,7 @@ iscsi_logout_async(struct iscsi_context *iscsi, iscsi_command_cb cb,
|
|||||||
pdu->callback = cb;
|
pdu->callback = cb;
|
||||||
pdu->private_data = private_data;
|
pdu->private_data = private_data;
|
||||||
|
|
||||||
if (iscsi_queue_pdu(iscsi, pdu) != 0) {
|
iscsi_queue_pdu(iscsi, pdu);
|
||||||
iscsi_set_error(iscsi, "Out-of-memory: failed to queue iscsi "
|
|
||||||
"logout pdu.");
|
|
||||||
iscsi->drv->free_pdu(iscsi, pdu);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,11 +77,7 @@ iscsi_nop_out_async(struct iscsi_context *iscsi, iscsi_command_cb cb,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (iscsi_queue_pdu(iscsi, pdu) != 0) {
|
iscsi_queue_pdu(iscsi, pdu);
|
||||||
iscsi_set_error(iscsi, "failed to queue iscsi nop-out pdu");
|
|
||||||
iscsi->drv->free_pdu(iscsi, pdu);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
iscsi->cmdsn++;
|
iscsi->cmdsn++;
|
||||||
iscsi->nops_in_flight++;
|
iscsi->nops_in_flight++;
|
||||||
@@ -122,11 +118,7 @@ iscsi_send_target_nop_out(struct iscsi_context *iscsi, uint32_t ttt, uint32_t lu
|
|||||||
/* cmdsn is not increased if Immediate delivery*/
|
/* cmdsn is not increased if Immediate delivery*/
|
||||||
iscsi_pdu_set_cmdsn(pdu, iscsi->cmdsn);
|
iscsi_pdu_set_cmdsn(pdu, iscsi->cmdsn);
|
||||||
|
|
||||||
if (iscsi_queue_pdu(iscsi, pdu) != 0) {
|
iscsi_queue_pdu(iscsi, pdu);
|
||||||
iscsi_set_error(iscsi, "failed to queue iscsi nop-out pdu");
|
|
||||||
iscsi->drv->free_pdu(iscsi, pdu);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
ISCSI_LOG(iscsi, (iscsi->nops_in_flight > 1) ? 1 : 6,
|
ISCSI_LOG(iscsi, (iscsi->nops_in_flight > 1) ? 1 : 6,
|
||||||
"NOP Out Send (nops_in_flight: %d, pdu->cmdsn %08x, pdu->itt %08x, pdu->ttt %08x, pdu->lun %8x, iscsi->maxcmdsn %08x, iscsi->expcmdsn %08x)",
|
"NOP Out Send (nops_in_flight: %d, pdu->cmdsn %08x, pdu->itt %08x, pdu->ttt %08x, pdu->lun %8x, iscsi->maxcmdsn %08x, iscsi->expcmdsn %08x)",
|
||||||
|
|||||||
@@ -937,16 +937,10 @@ iscsi_timeout_scan(struct iscsi_context *iscsi)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
void
|
||||||
iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
||||||
{
|
{
|
||||||
int ret;
|
iscsi->drv->queue_pdu(iscsi, pdu);
|
||||||
|
|
||||||
iscsi_mt_mutex_lock(&iscsi->iscsi_mutex);
|
|
||||||
ret = iscsi->drv->queue_pdu(iscsi, pdu);
|
|
||||||
iscsi_mt_mutex_unlock(&iscsi->iscsi_mutex);
|
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|||||||
+1
-8
@@ -1136,17 +1136,10 @@ iscsi_service(struct iscsi_context *iscsi, int revents)
|
|||||||
return iscsi->drv->service(iscsi, revents);
|
return iscsi->drv->service(iscsi, revents);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int iscsi_tcp_queue_pdu(struct iscsi_context *iscsi,
|
static void iscsi_tcp_queue_pdu(struct iscsi_context *iscsi,
|
||||||
struct iscsi_pdu *pdu)
|
struct iscsi_pdu *pdu)
|
||||||
{
|
{
|
||||||
if (pdu == NULL) {
|
|
||||||
iscsi_set_error(iscsi, "trying to queue NULL pdu");
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
iscsi_add_to_outqueue(iscsi, pdu);
|
iscsi_add_to_outqueue(iscsi, pdu);
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|||||||
+1
-5
@@ -80,11 +80,7 @@ iscsi_task_mgmt_async(struct iscsi_context *iscsi,
|
|||||||
pdu->callback = cb;
|
pdu->callback = cb;
|
||||||
pdu->private_data = private_data;
|
pdu->private_data = private_data;
|
||||||
|
|
||||||
if (iscsi_queue_pdu(iscsi, pdu) != 0) {
|
iscsi_queue_pdu(iscsi, pdu);
|
||||||
iscsi_set_error(iscsi, "failed to queue iscsi taskmgmt pdu");
|
|
||||||
iscsi->drv->free_pdu(iscsi, pdu);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -739,7 +739,7 @@ static struct test_family families[] = {
|
|||||||
*/
|
*/
|
||||||
struct scsi_task *task;
|
struct scsi_task *task;
|
||||||
unsigned char *read_write_buf;
|
unsigned char *read_write_buf;
|
||||||
int (*orig_queue_pdu)(struct iscsi_context *iscsi, struct iscsi_pdu *pdu);
|
void (*orig_queue_pdu)(struct iscsi_context *iscsi, struct iscsi_pdu *pdu);
|
||||||
|
|
||||||
static void
|
static void
|
||||||
print_usage(void)
|
print_usage(void)
|
||||||
|
|||||||
@@ -35,8 +35,8 @@
|
|||||||
/* globals between setup, tests, and teardown */
|
/* globals between setup, tests, and teardown */
|
||||||
extern struct scsi_task *task;
|
extern struct scsi_task *task;
|
||||||
extern unsigned char *read_write_buf;
|
extern unsigned char *read_write_buf;
|
||||||
extern int (*orig_queue_pdu)(struct iscsi_context *iscsi,
|
extern void (*orig_queue_pdu)(struct iscsi_context *iscsi,
|
||||||
struct iscsi_pdu *pdu);
|
struct iscsi_pdu *pdu);
|
||||||
|
|
||||||
#ifndef HAVE_CU_SUITEINFO_PSETUPFUNC
|
#ifndef HAVE_CU_SUITEINFO_PSETUPFUNC
|
||||||
/* libcunit version 1 */
|
/* libcunit version 1 */
|
||||||
|
|||||||
@@ -28,13 +28,13 @@
|
|||||||
|
|
||||||
static int new_nlb = -1;
|
static int new_nlb = -1;
|
||||||
|
|
||||||
static int my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
static void my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
||||||
{
|
{
|
||||||
if (pdu->outdata.data[0] != ISCSI_PDU_SCSI_REQUEST && new_nlb >= 0) {
|
if (pdu->outdata.data[0] != ISCSI_PDU_SCSI_REQUEST && new_nlb >= 0) {
|
||||||
/* change NUMBER OF LOGICAL BLOCKS to new_nlb */
|
/* change NUMBER OF LOGICAL BLOCKS to new_nlb */
|
||||||
pdu->outdata.data[32 + 13] = new_nlb;
|
pdu->outdata.data[32 + 13] = new_nlb;
|
||||||
}
|
}
|
||||||
return orig_queue_pdu(iscsi, pdu);
|
orig_queue_pdu(iscsi, pdu);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|||||||
+12
-12
@@ -77,7 +77,7 @@ test_iscsi_strip_tag(struct iscsi_context *iscsi, struct iscsi_pdu *pdu,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static void
|
||||||
chap_mod_strip_replace_queue(struct iscsi_context *iscsi, struct iscsi_pdu *pdu,
|
chap_mod_strip_replace_queue(struct iscsi_context *iscsi, struct iscsi_pdu *pdu,
|
||||||
const char *new_chap_a)
|
const char *new_chap_a)
|
||||||
{
|
{
|
||||||
@@ -93,41 +93,41 @@ chap_mod_strip_replace_queue(struct iscsi_context *iscsi, struct iscsi_pdu *pdu,
|
|||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
return ret;
|
return;
|
||||||
}
|
}
|
||||||
ret = iscsi_pdu_add_data(iscsi, pdu, (const unsigned char *)new_chap_a,
|
ret = iscsi_pdu_add_data(iscsi, pdu, (const unsigned char *)new_chap_a,
|
||||||
strlen(new_chap_a) + 1);
|
strlen(new_chap_a) + 1);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
return ret;
|
return;
|
||||||
}
|
}
|
||||||
logging(LOG_VERBOSE, "replaced Login PDU CHAP_A setting with %s", new_chap_a);
|
logging(LOG_VERBOSE, "replaced Login PDU CHAP_A setting with %s", new_chap_a);
|
||||||
out:
|
out:
|
||||||
return orig_queue_pdu(iscsi, pdu);
|
orig_queue_pdu(iscsi, pdu);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static void
|
||||||
chap_mod_many_types_queue(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
chap_mod_many_types_queue(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
||||||
{
|
{
|
||||||
return chap_mod_strip_replace_queue(iscsi, pdu, "CHAP_A=5,6,7,8");
|
chap_mod_strip_replace_queue(iscsi, pdu, "CHAP_A=5,6,7,8");
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static void
|
||||||
chap_mod_no_type_queue(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
chap_mod_no_type_queue(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
||||||
{
|
{
|
||||||
return chap_mod_strip_replace_queue(iscsi, pdu, "CHAP_A=");
|
chap_mod_strip_replace_queue(iscsi, pdu, "CHAP_A=");
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static void
|
||||||
chap_mod_bad_type_queue(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
chap_mod_bad_type_queue(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
||||||
{
|
{
|
||||||
/* value starts with '5', to catch targets that only check one byte */
|
/* value starts with '5', to catch targets that only check one byte */
|
||||||
return chap_mod_strip_replace_queue(iscsi, pdu, "CHAP_A=56");
|
chap_mod_strip_replace_queue(iscsi, pdu, "CHAP_A=56");
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
test_iscsi_chap_login(int (*test_queue_pdu)(struct iscsi_context *iscsi,
|
test_iscsi_chap_login(void (*test_queue_pdu)(struct iscsi_context *iscsi,
|
||||||
struct iscsi_pdu *pdu))
|
struct iscsi_pdu *pdu))
|
||||||
{
|
{
|
||||||
struct iscsi_context *iscsi;
|
struct iscsi_context *iscsi;
|
||||||
struct iscsi_url *iscsi_url;
|
struct iscsi_url *iscsi_url;
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
|
|
||||||
static int change_cmdsn;
|
static int change_cmdsn;
|
||||||
|
|
||||||
static int my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
static void my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
||||||
{
|
{
|
||||||
switch (change_cmdsn) {
|
switch (change_cmdsn) {
|
||||||
case 1:
|
case 1:
|
||||||
@@ -45,7 +45,7 @@ static int my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu
|
|||||||
}
|
}
|
||||||
|
|
||||||
change_cmdsn = 0;
|
change_cmdsn = 0;
|
||||||
return orig_queue_pdu(iscsi, pdu);
|
orig_queue_pdu(iscsi, pdu);
|
||||||
}
|
}
|
||||||
|
|
||||||
void test_iscsi_cmdsn_toohigh(void)
|
void test_iscsi_cmdsn_toohigh(void)
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
|
|
||||||
static int change_cmdsn;
|
static int change_cmdsn;
|
||||||
|
|
||||||
static int my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
static void my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
||||||
{
|
{
|
||||||
switch (change_cmdsn) {
|
switch (change_cmdsn) {
|
||||||
case 1:
|
case 1:
|
||||||
@@ -45,7 +45,7 @@ static int my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu
|
|||||||
}
|
}
|
||||||
|
|
||||||
change_cmdsn = 0;
|
change_cmdsn = 0;
|
||||||
return orig_queue_pdu(iscsi, pdu);
|
orig_queue_pdu(iscsi, pdu);
|
||||||
}
|
}
|
||||||
|
|
||||||
void test_iscsi_cmdsn_toolow(void)
|
void test_iscsi_cmdsn_toolow(void)
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
|
|
||||||
static int change_datasn;
|
static int change_datasn;
|
||||||
|
|
||||||
static int my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
static void my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
||||||
{
|
{
|
||||||
uint32_t datasn;
|
uint32_t datasn;
|
||||||
|
|
||||||
@@ -57,7 +57,7 @@ static int my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
out:
|
out:
|
||||||
return orig_queue_pdu(iscsi, pdu);
|
orig_queue_pdu(iscsi, pdu);
|
||||||
}
|
}
|
||||||
|
|
||||||
void test_iscsi_datasn_invalid(void)
|
void test_iscsi_datasn_invalid(void)
|
||||||
|
|||||||
@@ -148,8 +148,7 @@ test_iscsi_text_req_queue(struct iscsi_context *iscsi,
|
|||||||
pdu->callback = cb;
|
pdu->callback = cb;
|
||||||
pdu->private_data = state;
|
pdu->private_data = state;
|
||||||
|
|
||||||
ret = iscsi_queue_pdu(iscsi, pdu);
|
iscsi_queue_pdu(iscsi, pdu);
|
||||||
CU_ASSERT_EQUAL_FATAL(ret, 0);
|
|
||||||
state->dispatched++;
|
state->dispatched++;
|
||||||
logging(LOG_VERBOSE, "queued Text request %d with %s",
|
logging(LOG_VERBOSE, "queued Text request %d with %s",
|
||||||
state->dispatched, kv_data);
|
state->dispatched, kv_data);
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
|
|
||||||
static int change_num;
|
static int change_num;
|
||||||
|
|
||||||
static int my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
static void my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
||||||
{
|
{
|
||||||
switch (change_num) {
|
switch (change_num) {
|
||||||
case 1:
|
case 1:
|
||||||
@@ -44,7 +44,7 @@ static int my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu
|
|||||||
}
|
}
|
||||||
|
|
||||||
change_num = 0;
|
change_num = 0;
|
||||||
return orig_queue_pdu(iscsi, pdu);
|
orig_queue_pdu(iscsi, pdu);
|
||||||
}
|
}
|
||||||
|
|
||||||
void test_sanitize_block_erase_reserved(void)
|
void test_sanitize_block_erase_reserved(void)
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
|
|
||||||
static int change_num;
|
static int change_num;
|
||||||
|
|
||||||
static int my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
static void my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
||||||
{
|
{
|
||||||
switch (change_num) {
|
switch (change_num) {
|
||||||
case 1:
|
case 1:
|
||||||
@@ -44,7 +44,7 @@ static int my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu
|
|||||||
}
|
}
|
||||||
|
|
||||||
change_num = 0;
|
change_num = 0;
|
||||||
return orig_queue_pdu(iscsi, pdu);
|
orig_queue_pdu(iscsi, pdu);
|
||||||
}
|
}
|
||||||
|
|
||||||
void test_sanitize_crypto_erase_reserved(void)
|
void test_sanitize_crypto_erase_reserved(void)
|
||||||
|
|||||||
@@ -27,7 +27,7 @@
|
|||||||
|
|
||||||
static int change_num;
|
static int change_num;
|
||||||
|
|
||||||
static int my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
static void my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
||||||
{
|
{
|
||||||
switch (change_num) {
|
switch (change_num) {
|
||||||
case 1:
|
case 1:
|
||||||
@@ -45,7 +45,7 @@ static int my_iscsi_queue_pdu(struct iscsi_context *iscsi, struct iscsi_pdu *pdu
|
|||||||
}
|
}
|
||||||
|
|
||||||
change_num = 0;
|
change_num = 0;
|
||||||
return orig_queue_pdu(iscsi, pdu);
|
orig_queue_pdu(iscsi, pdu);
|
||||||
}
|
}
|
||||||
|
|
||||||
void test_sanitize_overwrite_reserved(void)
|
void test_sanitize_overwrite_reserved(void)
|
||||||
|
|||||||
Reference in New Issue
Block a user