From 6b080c5b5a6685d1af842b0a3558db4d1fcf4345 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Tue, 24 Dec 2024 11:59:25 +0100 Subject: irq: make device_intr_register reject bogus intr id --- device/ds_routines.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/device/ds_routines.c b/device/ds_routines.c index 439fc5b3..0db4f8cd 100644 --- a/device/ds_routines.c +++ b/device/ds_routines.c @@ -354,6 +354,9 @@ ds_device_intr_register (device_t dev, int id, if (! name_equal(mdev->dev_ops->d_name, 3, "irq")) return D_INVALID_OPERATION; + if (id < 0 || id >= NINTR) + return D_INVALID_OPERATION; + user_intr_t *e = insert_intr_entry (&irqtab, id, receive_port); if (!e) return D_NO_MEMORY; -- cgit v1.2.3