⬢ DragonFlyBSD Kernel Audit
DF-5136 / fix.diff
← back to finding ↓ download raw
--- sys/dev/drm/i915/intel_bios.c
+++ sys/dev/drm/i915/intel_bios.c
@@ -371,6 +371,10 @@ parse_sdvo_panel_data(struct drm_i915_private *dev_priv,
 		index = sdvo_lvds_options->panel_type;
 	}
 
+	if (index < 0 || index > 0xf) {
+		DRM_DEBUG_KMS("Invalid VBT SDVO panel type %d\n", index);
+		return;
+	}
+
 	dvo_timing = find_section(bdb, BDB_SDVO_PANEL_DTDS);
 	if (!dvo_timing)
 		return;