DragonFlyBSD Kernel Audit
DF-2289 / fix.diff
← back to finding ↓ download raw
diff --git a/sys/bus/firewire/fwcrom.c b/sys/bus/firewire/fwcrom.c
--- a/sys/bus/firewire/fwcrom.c
+++ b/sys/bus/firewire/fwcrom.c
@@ -112,7 +112,7 @@
 		return;
 	reg = crom_get(cc);
 	if ((reg->key & CSRTYPE_MASK) == CSRTYPE_D) {
-		if (cc->depth >= CROM_MAX_DEPTH) {
+		if (cc->depth >= CROM_MAX_DEPTH - 1) {
 			kprintf("crom_next: too deep\n");
 			goto again;
 		}