EAP-SIM/AKA server: Fix memory leak in error path
If identity round limit is reached, EAP-SIM/AKA session is terminated. This needs to free the allocated message. Signed-hostap: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
8cd93a01a9
commit
58fd49c05d
2 changed files with 2 additions and 0 deletions
|
@ -365,6 +365,7 @@ static struct wpabuf * eap_aka_build_identity(struct eap_sm *sm,
|
|||
eap_sim_msg_add(msg, EAP_SIM_AT_ANY_ID_REQ, 0, NULL, 0);
|
||||
} else if (data->identity_round > 3) {
|
||||
/* Cannot use more than three rounds of Identity messages */
|
||||
eap_sim_msg_free(msg);
|
||||
return NULL;
|
||||
} else if (sm->identity && sm->identity_len > 0 &&
|
||||
(sm->identity[0] == EAP_AKA_REAUTH_ID_PREFIX ||
|
||||
|
|
|
@ -117,6 +117,7 @@ static struct wpabuf * eap_sim_build_start(struct eap_sm *sm,
|
|||
eap_sim_msg_add(msg, EAP_SIM_AT_ANY_ID_REQ, 0, NULL, 0);
|
||||
} else if (data->start_round > 3) {
|
||||
/* Cannot use more than three rounds of Start messages */
|
||||
eap_sim_msg_free(msg);
|
||||
return NULL;
|
||||
} else if (data->start_round == 0) {
|
||||
/*
|
||||
|
|
Loading…
Reference in a new issue