libmicrohttpd

HTTP/1.x server C library (MHD 1.x, stable)
Log | Files | Refs | Submodules | README | LICENSE

commit ff26d02aa0419548049429b472f399c3eb78bec7
parent ec6e6d288876606af964747f97379aa9371c4206
Author: Evgeny Grin (Karlson2k) <k2k@narod.ru>
Date:   Sun,  1 Mar 2026 00:19:22 +0100

Request chunk processing: simplified check for overflow

Diffstat:
Msrc/microhttpd/connection.c | 7++++---
1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/microhttpd/connection.c b/src/microhttpd/connection.c @@ -4564,10 +4564,11 @@ process_request_body (struct MHD_Connection *connection) broken = (0 == num_dig); if (broken) { + uint64_t dummy; /* Check whether result is invalid due to uint64_t overflow */ - overflow = ((('0' <= buffer_head[0]) && ('9' >= buffer_head[0])) || - (('A' <= buffer_head[0]) && ('F' >= buffer_head[0])) || - (('a' <= buffer_head[0]) && ('f' >= buffer_head[0]))); + overflow = (0 != MHD_strx_to_uint64_n_ (buffer_head, + 1, + &dummy)); } else {