From: Alan T. DeKok Date: Mon, 18 Mar 2013 18:48:36 +0000 (-0400) Subject: Move TTLS/PEAP session structs to talloc X-Git-Tag: release_3_0_0_beta1~704 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b57e6a52a01eb9e9752698d553d0e024ae4d69dc;p=thirdparty%2Ffreeradius-server.git Move TTLS/PEAP session structs to talloc --- diff --git a/src/modules/rlm_eap/types/rlm_eap_peap/rlm_eap_peap.c b/src/modules/rlm_eap/types/rlm_eap_peap/rlm_eap_peap.c index 46a3c4d9492..e8999f51566 100644 --- a/src/modules/rlm_eap/types/rlm_eap_peap/rlm_eap_peap.c +++ b/src/modules/rlm_eap/types/rlm_eap_peap/rlm_eap_peap.c @@ -167,19 +167,18 @@ static void peap_free(void *p) pairfree(&t->accept_vps); pairfree(&t->soh_reply_vps); - free(t); + talloc_free(t); } /* * Free the PEAP per-session data */ -static peap_tunnel_t *peap_alloc(rlm_eap_peap_t *inst) +static peap_tunnel_t *peap_alloc(rlm_eap_peap_t *inst, eap_handler_t *handler) { peap_tunnel_t *t; - t = rad_malloc(sizeof(*t)); - memset(t, 0, sizeof(*t)); + t = talloc_zero(handler, peap_tunnel_t); t->default_method = inst->default_method; t->copy_request_to_tunnel = inst->copy_request_to_tunnel; diff --git a/src/modules/rlm_eap/types/rlm_eap_ttls/rlm_eap_ttls.c b/src/modules/rlm_eap/types/rlm_eap_ttls/rlm_eap_ttls.c index b9fb252c373..891e7c9b806 100644 --- a/src/modules/rlm_eap/types/rlm_eap_ttls/rlm_eap_ttls.c +++ b/src/modules/rlm_eap/types/rlm_eap_ttls/rlm_eap_ttls.c @@ -160,19 +160,19 @@ static void ttls_free(void *p) pairfree(&t->username); pairfree(&t->state); pairfree(&t->accept_vps); - free(t); + talloc_free(t); } /* * Allocate the TTLS per-session data */ -static ttls_tunnel_t *ttls_alloc(rlm_eap_ttls_t *inst) +static ttls_tunnel_t *ttls_alloc(rlm_eap_ttls_t *inst, + eap_handler_t *handler) { ttls_tunnel_t *t; - t = rad_malloc(sizeof(*t)); - memset(t, 0, sizeof(*t)); + t = talloc(handler, ttls_tunnel_t); t->default_method = inst->default_method; t->copy_request_to_tunnel = inst->copy_request_to_tunnel; @@ -329,7 +329,7 @@ static int eapttls_authenticate(void *arg, eap_handler_t *handler) * allocate it here, if it wasn't already alloacted. */ if (!tls_session->opaque) { - tls_session->opaque = ttls_alloc(inst); + tls_session->opaque = ttls_alloc(inst, handler); tls_session->free_opaque = ttls_free; }