Blob Blame History Raw
From 262c05b20c7de243542e7502e00152cdafb573d4 Mon Sep 17 00:00:00 2001
From: Peter Bieringer <pb@bieringer.de>
Date: Wed, 6 Jul 2022 22:53:12 +0200
Subject: [PATCH] fix for https://github.com/zmanda/amanda/issues/167

---
 common-src/amutil.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/common-src/amutil.c b/common-src/amutil.c
index 20454ab73c..371d38e433 100644
--- a/common-src/amutil.c
+++ b/common-src/amutil.c
@@ -1132,6 +1132,12 @@ char *hexdecode_string(const char *str, GError **err)
     new_len = orig_len = strlen(str);
     for (i = 0; i < orig_len; i++) {
         if (str[i] == '%') {
+            if (new_len < 2) {
+                g_set_error(err, am_util_error_quark(), AM_UTIL_ERROR_HEXDECODEINVAL,
+                    "Invalid hexcode string: %s", str);
+                s = g_string_sized_new(0);
+                goto cleanup;
+            }
             new_len -= 2;
         }
     }