From: Christopher Faulet Date: Thu, 16 Mar 2023 13:27:29 +0000 (+0100) Subject: BUG/MINOR: syslog: Request for more data if message was not fully received X-Git-Tag: v2.8-dev6~8 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3aeb36681ca5925cbb9b4a065671d7740093a9a8;p=thirdparty%2Fhaproxy.git BUG/MINOR: syslog: Request for more data if message was not fully received In the syslog applet, when a message was not fully received, we must request for more data by calling appctx_need_more_data() and not by setting CF_READ_DONTWAIT flag on the request channel. Indeed, this flag is only used to only try a read at once. This patch could be backported as far as 2.4. On 2.5 and 2.4, applet_need_more_data() must be replaced by si_cant_get(). --- diff --git a/src/log.c b/src/log.c index da9766ddd5..cadab225a3 100644 --- a/src/log.c +++ b/src/log.c @@ -3663,8 +3663,7 @@ static void syslog_io_handler(struct appctx *appctx) missing_data: /* we need more data to read */ - sc_oc(sc)->flags |= CF_READ_DONTWAIT; - + applet_need_more_data(appctx); return; missing_budget: