e3000 Business Update & Technology Talk - HP Technology Forum 2007

64 June 19, 2007
ioctl() SCSI status checking
if ( command.cdb_status != S_GOOD )
{ printf("SCSI command returned status 0x%02x\n", command.sense_status);
if ( command.cdb_status == S_CHECK_CONDITION )
{
if ( command.sense_status == S_GOOD )
printf("Request sense returned status 0x%02x\n", command.sense_status);
else
{ memcpy(&sense_data,&(command.sense),command.sense_xfer);
printf("Sense error code: 0x%02x\n", sense_data.error_code);
printf("Sense key: 0x%02x\n", sense_data.key);
printf("Sense code: 0x%02x\n", sense_data.code);
printf("Sense qualifier: 0x%02x\n", sense_data.qualifier);
}
}
}
else
printf("Good status, %d bytes returned (in hex): \n", command.data_xfer);