Skip to content

Commit c02e4a3

Browse files
committed
in_forward: fix username parsing
Fix parsing of username from the config value and ensure consistent error handling. Signed-off-by: Eduardo Silva <[email protected]>
1 parent 2af2017 commit c02e4a3

File tree

1 file changed

+3
-2
lines changed
  • plugins/in_forward

1 file changed

+3
-2
lines changed

plugins/in_forward/fw.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -216,7 +216,7 @@ static int setup_users(struct flb_in_fw_config *ctx,
216216

217217
/* Get first value (user's name) */
218218
sentry = mk_list_entry_first(split, struct flb_split_entry, _head);
219-
tmp = flb_sds_create_len(sentry->value, sentry->len + 1);
219+
tmp = flb_sds_create_len(sentry->value, sentry->len);
220220
if (tmp == NULL) {
221221
delete_users(ctx);
222222
flb_free(user);
@@ -230,13 +230,14 @@ static int setup_users(struct flb_in_fw_config *ctx,
230230
tmp = flb_sds_create_len(sentry->value, sentry->len);
231231
if (tmp == NULL) {
232232
delete_users(ctx);
233+
flb_sds_destroy(user->name);
233234
flb_free(user);
234235
flb_utils_split_free(split);
235236
return -1;
236237
}
237238
user->password = tmp;
238239

239-
/* Release split */
240+
/* Release split - only after both allocations succeed */
240241
flb_utils_split_free(split);
241242

242243
/* Link to parent list */

0 commit comments

Comments
 (0)