]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Don't use radius_paircreate in a library
authorAlan T. DeKok <aland@freeradius.org>
Fri, 15 Feb 2013 13:35:55 +0000 (08:35 -0500)
committerAlan T. DeKok <aland@freeradius.org>
Fri, 15 Feb 2013 13:37:11 +0000 (08:37 -0500)
src/modules/rlm_eap/libeap/eap_tls.c
src/modules/rlm_eap/libeap/eap_tls.h
src/modules/rlm_eap/libeap/mppe_keys.c

index 2e25cc4740cdfd84215baa7b734e6305b3de806e..4fdb9fca42939f9c7ed91d0526d466dfe95a3c17 100644 (file)
@@ -224,7 +224,7 @@ int eaptls_success(EAP_HANDLER *handler, int peap_flag)
        }
 
        eaptls_gen_eap_key(tls_session->ssl->session,
-                          handler->eap_type, request);
+                          handler->eap_type, &request->reply->vps);
        return 1;
 }
 
index 53f5dc786864ec11c6fd082523f088c202ac8d28..a32f232312a8fdc8282279a568e9c096043b767b 100644 (file)
@@ -194,7 +194,7 @@ int                 eaptls_request(EAP_DS *eap_ds, tls_session_t *ssn);
 void            eaptls_gen_mppe_keys(VALUE_PAIR **reply_vps, SSL *s,
                                     const char *prf_label);
 void           eapttls_gen_challenge(SSL *s, uint8_t *buffer, size_t size);
-void           eaptls_gen_eap_key(SSL *s, uint32_t header, REQUEST *request);
+void           eaptls_gen_eap_key(SSL *s, uint32_t header, VALUE_PAIR **vps);
 
 #define BUFFER_SIZE 1024
 
index 36af2d236ef2ea805f9cca9751a2bca4500bb1dc..97d4295d20fb61df12faf66dcc65e41b857abde7 100644 (file)
@@ -197,16 +197,16 @@ void eapttls_gen_challenge(SSL *s, uint8_t *buffer, size_t size)
  *     Actually generates EAP-Session-Id, which is an internal server
  *     attribute.  Not all systems want to send EAP-Key-Nam
  */
-void eaptls_gen_eap_key(SSL *s, uint32_t header, REQUEST *request)
+void eaptls_gen_eap_key(SSL *s, uint32_t header, VALUE_PAIR **vps)
 {
        VALUE_PAIR *vp;
 
-       vp = radius_paircreate(request, &request->reply->vps,
-                              PW_EAP_SESSION_ID, PW_TYPE_OCTETS);
+       vp = paircreate(PW_EAP_SESSION_ID, PW_TYPE_OCTETS);
        if (!vp) return;
 
        vp->vp_octets[0] = header & 0xff;
        memcpy(vp->vp_octets + 1, s->s3->client_random, SSL3_RANDOM_SIZE);
        memcpy(vp->vp_octets + 1 + SSL3_RANDOM_SIZE,
               s->s3->server_random, SSL3_RANDOM_SIZE);
+       pairadd(vps, vp);
 }