scsi_mode_sense — issue a mode sense, falling back from 10 to six bytes if necessary.
int scsi_mode_sense
(struct scsi_device * sdev, int dbd, int modepage, unsigned char * buffer, int len, int timeout, int retries, struct scsi_mode_data * data, struct scsi_sense_hdr * sshdr);
SCSI device to be queried
set if mode sense will allow block descriptors to be returned
mode page being requested
request buffer (may not be smaller than eight bytes)
length of request buffer.
command timeout
number of retries before failing
returns a structure abstracting the mode header data
place to put sense data (or NULL if no sense to be collected). must be SCSI_SENSE_BUFFERSIZE big.
Returns zero if unsuccessful, or the header offset (either 4 or 8 depending on whether a six or ten byte command was issued) if successful.