⬢ DragonFlyBSD Kernel Audit
DF-4718 / fix.diff
← back to finding ↓ download raw
--- a/sys/dev/raid/aac/aac_cam.c
+++ b/sys/dev/raid/aac/aac_cam.c
@@ -548,7 +548,8 @@
 	if (data[0] != INQUIRY)
 		return;
 
-	if (ccb->ccb_h.status == CAM_REQ_CMP) {
+	if (ccb->ccb_h.status == CAM_REQ_CMP &&
+	    ccb->csio.data_ptr != NULL && ccb->csio.dxfer_len >= 1) {
 		inq = (struct scsi_inquiry_data *)ccb->csio.data_ptr;
 		device = SID_TYPE(inq);
 		qual = SID_QUAL(inq);