From 23983afe82e61d7aa1b4cdfd192a88b5317e20bb Mon Sep 17 00:00:00 2001 From: "Roger A. Light" Date: Mon, 13 Feb 2023 22:08:44 +0000 Subject: [PATCH] Fix invalid handling of long hex in config file. Closes oss-fuzz #55948. --- lib/util_mosq.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/util_mosq.c b/lib/util_mosq.c index 8402c515..18ba330d 100644 --- a/lib/util_mosq.c +++ b/lib/util_mosq.c @@ -174,15 +174,17 @@ int mosquitto__hex2bin(const char *hex, unsigned char *bin, int bin_max_len) BIGNUM *bn = NULL; int len; int leading_zero = 0; - int start = 0; size_t i = 0; /* Count the number of leading zero */ for(i=0; i= bin_max_len){ + return 0; + } /* output leading zero to bin */ - bin[start++] = 0; + bin[leading_zero] = 0; + leading_zero++; }else{ break; }