From 4cb6abfc18cbfbe903775881f24fa1f7415a3d1e Mon Sep 17 00:00:00 2001 From: Alexander Haase Date: Sat, 30 Nov 2024 16:48:44 +0100 Subject: [PATCH] Hide traceback from rendered device config When an exception occurs during device configuration rendering, it usually doesn't contain information about the template being rendered, but rather the trace of how the template was rendered. Since this could confuse users and expose internal server information, it is now hidden. --- netbox/dcim/views.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/netbox/dcim/views.py b/netbox/dcim/views.py index f390be89b..79b7936b2 100644 --- a/netbox/dcim/views.py +++ b/netbox/dcim/views.py @@ -1,5 +1,3 @@ -import traceback - from django.contrib import messages from django.contrib.contenttypes.models import ContentType from django.core.paginator import EmptyPage, PageNotAnInteger @@ -2128,8 +2126,9 @@ class DeviceRenderConfigView(generic.ObjectView): try: rendered_config = config_template.render(context=context_data) except TemplateError as e: - messages.error(request, _("An error occurred while rendering the template: {error}").format(error=e)) - rendered_config = traceback.format_exc() + msg = _("An error occurred while rendering the template: {error}").format(error=e) + messages.error(request, msg) + rendered_config = msg return { 'config_template': config_template,