]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
use the correct list
authorAlan T. DeKok <aland@freeradius.org>
Wed, 20 Sep 2023 00:47:37 +0000 (20:47 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Wed, 20 Sep 2023 00:47:37 +0000 (20:47 -0400)
src/modules/rlm_eap/types/rlm_eap_mschapv2/rlm_eap_mschapv2.c

index f1c424f035261e879e4667ed36cc22da7d279de0..6c8ea19e76066c9716c259447228d0b9fd834108 100644 (file)
@@ -482,9 +482,16 @@ failure:
                        eap_round->request->code = FR_EAP_CODE_SUCCESS;
 
                        if (!fr_pair_list_empty(&data->mppe_keys)) {
+                               fr_pair_t *ms;
+
+                               ms = fr_pair_find_by_da_nested(&parent->reply_pairs, NULL, attr_microsoft);
+                               if (!ms) {
+                                       MEM(ms = fr_pair_afrom_da_nested(parent->reply_ctx, &parent->reply_pairs, attr_microsoft));
+                               }
+
                                RDEBUG2("Adding stored attributes to parent");
                                log_request_pair_list(L_DBG_LVL_2, request, NULL, &data->mppe_keys, "&parent.reply.");
-                               MEM(fr_pair_list_copy(parent->reply_ctx, &parent->reply_pairs, &data->mppe_keys) >= 0);
+                               MEM(fr_pair_list_copy(ms, &ms->vp_group, &data->mppe_keys) >= 0);
                        } else {
                                RDEBUG2("No stored attributes to copy to parent");
                        }