summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/cam/ctl/ctl_tpc_local.c3
-rw-r--r--sys/cam/scsi/scsi_all.h1
2 files changed, 3 insertions, 1 deletions
diff --git a/sys/cam/ctl/ctl_tpc_local.c b/sys/cam/ctl/ctl_tpc_local.c
index 5f438af..ce7c3e8 100644
--- a/sys/cam/ctl/ctl_tpc_local.c
+++ b/sys/cam/ctl/ctl_tpc_local.c
@@ -282,7 +282,8 @@ tpcl_resolve(struct ctl_softc *softc, int init_port,
uint64_t lunid = UINT64_MAX;
if (cscd->type_code != EC_CSCD_ID ||
- (cscd->luidt_pdt & EC_LUIDT_MASK) != EC_LUIDT_LUN)
+ (cscd->luidt_pdt & EC_LUIDT_MASK) != EC_LUIDT_LUN ||
+ (cscd->luidt_pdt & EC_NUL) != 0)
return (lunid);
cscdid = (struct scsi_ec_cscd_id *)cscd;
diff --git a/sys/cam/scsi/scsi_all.h b/sys/cam/scsi/scsi_all.h
index 253e28e..4f8909c 100644
--- a/sys/cam/scsi/scsi_all.h
+++ b/sys/cam/scsi/scsi_all.h
@@ -1666,6 +1666,7 @@ struct scsi_ec_cscd
uint8_t type_code;
#define EC_CSCD_EXT 0xff
uint8_t luidt_pdt;
+#define EC_NUL 0x20
#define EC_LUIDT_MASK 0xc0
#define EC_LUIDT_LUN 0x00
#define EC_LUIDT_PROXY_TOKEN 0x40
OpenPOWER on IntegriCloud