diff --git a/src/sae.c b/src/sae.c index deafff10..b61dfe31 100644 --- a/src/sae.c +++ b/src/sae.c @@ -120,9 +120,6 @@ static void sae_rejected_groups_append(struct sae_sm *sm, uint16_t group) static void sae_reset_state(struct sae_sm *sm) { - l_free(sm->token); - sm->token = NULL; - l_ecc_scalar_free(sm->scalar); sm->scalar = NULL; l_ecc_scalar_free(sm->p_scalar); @@ -1314,6 +1311,9 @@ static void sae_free(struct auth_proto *ap) sae_reset_state(sm); + l_free(sm->token); + sm->token = NULL; + if (sm->rejected_groups) free(sm->rejected_groups);