From 818ec801b3b97a97fc46256e1dc55c501452379f Mon Sep 17 00:00:00 2001 From: Nick Porter Date: Tue, 19 Jan 2021 17:24:20 +0000 Subject: [PATCH] Correct method to add pairs to existing list in rlm_mruby.c --- src/modules/rlm_mruby/rlm_mruby.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/modules/rlm_mruby/rlm_mruby.c b/src/modules/rlm_mruby/rlm_mruby.c index 4c2127fce3..b0a33aae4e 100644 --- a/src/modules/rlm_mruby/rlm_mruby.c +++ b/src/modules/rlm_mruby/rlm_mruby.c @@ -304,6 +304,9 @@ static int mruby_vps_to_array(request_t *request, mrb_value *out, mrb_state *mrb static void add_vp_tuple(TALLOC_CTX *ctx, request_t *request, fr_pair_list_t *vps, mrb_state *mrb, mrb_value value, char const *function_name) { int i; + fr_pair_list_t tmp_list; + + fr_pair_list_init(&tmp_list); for (i = 0; i < RARRAY_LEN(value); i++) { mrb_value tuple = mrb_ary_entry(value, i); @@ -378,8 +381,9 @@ static void add_vp_tuple(TALLOC_CTX *ctx, request_t *request, fr_pair_list_t *vp DEBUG("%s: %s %s %s OK", function_name, ckey, fr_table_str_by_value(fr_tokens_table, op, "="), cval); } - radius_pairmove(request, vps, &vp, false); + fr_pair_add(&tmp_list, vp); } + radius_pairmove(request, vps, &tmp_list, false); } static inline int mruby_set_vps(request_t *request, mrb_state *mrb, mrb_value mruby_request, -- 2.47.2