]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Correctly handle setting of fake->request_pairs in eap_fast_eap_payload()
authorNick Porter <nick@portercomputing.co.uk>
Fri, 8 Jan 2021 16:09:08 +0000 (16:09 +0000)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Thu, 21 Jan 2021 23:05:49 +0000 (23:05 +0000)
src/modules/rlm_eap/types/rlm_eap_fast/eap_fast.c

index 137c80c36a525a8b41d74f1bb1691db0219da596..59db883a99ab0b5d3bf93f353a893d296e4311f9 100644 (file)
@@ -588,8 +588,9 @@ static FR_CODE eap_fast_eap_payload(request_t *request, eap_session_t *eap_sessi
         *      Add the tunneled attributes to the fake request.
         */
 
-       MEM(fake->request_pairs = vp = fr_pair_afrom_da(fake->request_ctx, attr_eap_message));
-       fr_pair_value_memdup(fake->request_pairs, tlv_eap_payload->vp_octets, tlv_eap_payload->vp_length, false);
+       MEM(vp = fr_pair_afrom_da(fake->request_ctx, attr_eap_message));
+       fr_pair_add(&fake->request_pairs, vp);
+       fr_pair_value_memdup(vp, tlv_eap_payload->vp_octets, tlv_eap_payload->vp_length, false);
 
        RDEBUG2("Got tunneled request");
        log_request_pair_list(L_DBG_LVL_1, fake, NULL, &fake->request_pairs, NULL);