From 21634a131862e94a681115771f02043a493ed438 Mon Sep 17 00:00:00 2001 From: Eduardo Silva Date: Wed, 15 Oct 2025 11:49:35 -0600 Subject: [PATCH] in_forward: fix username parsing Fix parsing of username from the config value and ensure consistent error handling. Signed-off-by: Eduardo Silva --- plugins/in_forward/fw.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/plugins/in_forward/fw.c b/plugins/in_forward/fw.c index 73a3b73fb06..77da340d81e 100644 --- a/plugins/in_forward/fw.c +++ b/plugins/in_forward/fw.c @@ -216,7 +216,7 @@ static int setup_users(struct flb_in_fw_config *ctx, /* Get first value (user's name) */ sentry = mk_list_entry_first(split, struct flb_split_entry, _head); - tmp = flb_sds_create_len(sentry->value, sentry->len + 1); + tmp = flb_sds_create_len(sentry->value, sentry->len); if (tmp == NULL) { delete_users(ctx); flb_free(user); @@ -230,13 +230,14 @@ static int setup_users(struct flb_in_fw_config *ctx, tmp = flb_sds_create_len(sentry->value, sentry->len); if (tmp == NULL) { delete_users(ctx); + flb_sds_destroy(user->name); flb_free(user); flb_utils_split_free(split); return -1; } user->password = tmp; - /* Release split */ + /* Release split - only after both allocations succeed */ flb_utils_split_free(split); /* Link to parent list */