From: Alan T. DeKok Date: Fri, 15 Feb 2013 13:35:55 +0000 (-0500) Subject: Don't use radius_paircreate in a library X-Git-Tag: release_2_2_1~171 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2667ed4ebdb70468ba4b87675550c52ffae1ddca;p=thirdparty%2Ffreeradius-server.git Don't use radius_paircreate in a library --- diff --git a/src/modules/rlm_eap/libeap/eap_tls.c b/src/modules/rlm_eap/libeap/eap_tls.c index 2e25cc4740c..4fdb9fca429 100644 --- a/src/modules/rlm_eap/libeap/eap_tls.c +++ b/src/modules/rlm_eap/libeap/eap_tls.c @@ -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; } diff --git a/src/modules/rlm_eap/libeap/eap_tls.h b/src/modules/rlm_eap/libeap/eap_tls.h index 53f5dc78686..a32f232312a 100644 --- a/src/modules/rlm_eap/libeap/eap_tls.h +++ b/src/modules/rlm_eap/libeap/eap_tls.h @@ -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 diff --git a/src/modules/rlm_eap/libeap/mppe_keys.c b/src/modules/rlm_eap/libeap/mppe_keys.c index 36af2d236ef..97d4295d20f 100644 --- a/src/modules/rlm_eap/libeap/mppe_keys.c +++ b/src/modules/rlm_eap/libeap/mppe_keys.c @@ -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); }