summaryrefslogtreecommitdiffstats
path: root/src/include/gpxe/scsi.h
diff options
context:
space:
mode:
authorMichael Brown2006-05-19 02:20:08 +0200
committerMichael Brown2006-05-19 02:20:08 +0200
commita280587cdeecb1ae96f56cd14d6e61b060aeee9e (patch)
treead63da1bb140a264d0fa44d0e4e3a8da09583538 /src/include/gpxe/scsi.h
parentAll uses iscsi_state were removed some time ago; removing the (diff)
downloadipxe-a280587cdeecb1ae96f56cd14d6e61b060aeee9e.tar.gz
ipxe-a280587cdeecb1ae96f56cd14d6e61b060aeee9e.tar.xz
ipxe-a280587cdeecb1ae96f56cd14d6e61b060aeee9e.zip
iSCSI writes seem to be working (at least, the ethereal trace shows no
errors; still need to verify data integrity). SCSI response PDUs are handled: status and sense data (if available) are returned via the scsi_command structure. Updated iSCSI session parameter usage.
Diffstat (limited to 'src/include/gpxe/scsi.h')
-rw-r--r--src/include/gpxe/scsi.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/include/gpxe/scsi.h b/src/include/gpxe/scsi.h
index db57e891..dea39e16 100644
--- a/src/include/gpxe/scsi.h
+++ b/src/include/gpxe/scsi.h
@@ -136,6 +136,10 @@ struct scsi_command {
* Must be zero if @c data_in is NULL
*/
size_t data_in_len;
+ /** SCSI statua code */
+ uint8_t status;
+ /** SCSI sense response code */
+ uint8_t sense_response;
};
/** A SCSI device */
@@ -154,6 +158,12 @@ struct scsi_device {
* @v scsi SCSI device
* @v command SCSI command
* @ret rc Return status code
+ *
+ * Note that a successful return status code indicates only
+ * that the SCSI command completed. The caller must check the
+ * status field in the command structure to see if, for
+ * example, the device returned CHECK CONDITION or some other
+ * non-success status code.
*/
int ( * command ) ( struct scsi_device *scsi,
struct scsi_command *command );