From deaaee307947686c3e0357353cbe00501eacf1ed Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Thu, 21 Mar 2024 21:06:42 -0400 Subject: [PATCH] Check that validator is a subclass of CustomValidator --- netbox/extras/signals.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/netbox/extras/signals.py b/netbox/extras/signals.py index ed3da7bfd..2813ed7ae 100644 --- a/netbox/extras/signals.py +++ b/netbox/extras/signals.py @@ -2,7 +2,7 @@ import importlib import logging from django.contrib.contenttypes.models import ContentType -from django.core.exceptions import ValidationError +from django.core.exceptions import ImproperlyConfigured, ValidationError from django.db.models.fields.reverse_related import ManyToManyRel from django.db.models.signals import m2m_changed, post_save, pre_delete from django.dispatch import receiver, Signal @@ -41,6 +41,9 @@ def run_validators(instance, validators): elif type(validator) is dict: validator = CustomValidator(validator) + elif not issubclass(validator.__class__, CustomValidator): + raise ImproperlyConfigured(f"Invalid value for custom validator: {validator}") + validator(instance, request)