From 128188ca45fcb5db931ffc2aa37656d85a3de942 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jakub=20Malo=C5=A1t=C3=ADk?= <malostik@cesnet.cz>
Date: Fri, 25 Nov 2022 10:39:54 +0100
Subject: [PATCH] Fix server error for events containing values with control
 characters which did not pass the JSONSchemaValidator

---
 warden_server/warden_server.py | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/warden_server/warden_server.py b/warden_server/warden_server.py
index 52ec05a..e644317 100755
--- a/warden_server/warden_server.py
+++ b/warden_server/warden_server.py
@@ -75,6 +75,9 @@ class Error(Exception):
             next_msg = e.get("message", "Unknown error").replace("\n", " ")
             if msg != next_msg:
                 msg = "Multiple errors"
+
+        msg = "".join((c if '\x20' <= c != '\x7f' else r'\x{:02x}'.format(ord(c))) for c in msg) # escape control characters
+
         return err, msg
 
     def __str__(self):
-- 
GitLab