From: Nick Porter Date: Fri, 6 Feb 2026 12:31:30 +0000 (+0000) Subject: Only allocate the next message if there are leftover bytes X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=52274acaed8afbfce535e8ef8c66c3deea3581e8;p=thirdparty%2Ffreeradius-server.git Only allocate the next message if there are leftover bytes --- diff --git a/src/lib/io/network.c b/src/lib/io/network.c index 4d049bff8ca..a1d0f2bbe54 100644 --- a/src/lib/io/network.c +++ b/src/lib/io/network.c @@ -988,12 +988,16 @@ next_message: * There are leftover bytes in the buffer, feed * them to the next round of reading. */ - next = (fr_channel_data_t *) fr_message_alloc_reserve(s->ms, &cd->m, data_size, s->leftover, - s->listen->default_message_size); - if (!next) { - PERROR("Failed reserving partial packet."); - // @todo - probably close the socket... - fr_assert(0 == 1); + if (s->leftover) { + next = (fr_channel_data_t *) fr_message_alloc_reserve(s->ms, &cd->m, data_size, s->leftover, + s->listen->default_message_size); + if (!next) { + PERROR("Failed reserving partial packet."); + // @todo - probably close the socket... + fr_assert(0 == 1); + } + } else { + next = NULL; } }