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().
This commit is contained in:
Christopher Faulet 2023-03-16 14:27:29 +01:00
parent abbb5ad1f5
commit 3aeb36681c

View File

@ -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: