diff --git a/lib/nop.c b/lib/nop.c index 325013a..3f930c0 100644 --- a/lib/nop.c +++ b/lib/nop.c @@ -64,10 +64,12 @@ iscsi_nop_out_async(struct iscsi_context *iscsi, iscsi_command_cb cb, pdu->callback = cb; pdu->private_data = private_data; - if (iscsi_pdu_add_data(iscsi, pdu, data, len) != 0) { - iscsi_set_error(iscsi, "Failed to add outdata to nop-out"); - iscsi_free_pdu(iscsi, pdu); - return -1; + if (data != NULL && len > 0) { + if (iscsi_pdu_add_data(iscsi, pdu, data, len) != 0) { + iscsi_set_error(iscsi, "Failed to add outdata to nop-out"); + iscsi_free_pdu(iscsi, pdu); + return -1; + } } if (iscsi_queue_pdu(iscsi, pdu) != 0) {