From 0cc40b0c705dbc84e43b7ce4ca3da1c3d8f2dc67 Mon Sep 17 00:00:00 2001 From: "Sergio R. Caprile" Date: Thu, 9 Oct 2025 14:06:38 -0300 Subject: [PATCH] improve error handling with ChaCha --- mongoose.c | 4 ++++ src/tls_builtin.c | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/mongoose.c b/mongoose.c index fb4883cf..0c0ffea1 100644 --- a/mongoose.c +++ b/mongoose.c @@ -11581,6 +11581,10 @@ static int mg_tls_recv_record(struct mg_connection *c) { return -1; } n = mg_chacha20_poly1305_decrypt(dec, key, nonce, msg, msgsz); + if (n == (size_t) -1) { + mg_error(c, "decryption error"); + return -1; + } memmove(msg, dec, n); mg_free(dec); } diff --git a/src/tls_builtin.c b/src/tls_builtin.c index 5bd02e56..27c3ca11 100644 --- a/src/tls_builtin.c +++ b/src/tls_builtin.c @@ -516,6 +516,10 @@ static int mg_tls_recv_record(struct mg_connection *c) { return -1; } n = mg_chacha20_poly1305_decrypt(dec, key, nonce, msg, msgsz); + if (n == (size_t) -1) { + mg_error(c, "decryption error"); + return -1; + } memmove(msg, dec, n); mg_free(dec); }