EAP-SIM/AKA peer: Fix use-after-free for privacy identity
When the privacy protected itentity is used for EAP-SIM/AKA, the buffer
containing the identity was freed just before its use. Fix that by
reordering the operations.
Fixes: 881cb4198b
("EAP-SIM/AKA peer: Simplify identity selection for MK derivation")
Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
This commit is contained in:
parent
fd71cae6c9
commit
e3d6fce848
1 changed files with 2 additions and 1 deletions
|
@ -1757,12 +1757,13 @@ struct wpabuf * eap_sm_buildIdentity(struct eap_sm *sm, int id, int encrypted)
|
|||
return NULL;
|
||||
|
||||
wpabuf_put_data(resp, identity, identity_len);
|
||||
wpabuf_free(privacy_identity);
|
||||
|
||||
os_free(sm->identity);
|
||||
sm->identity = os_memdup(identity, identity_len);
|
||||
sm->identity_len = identity_len;
|
||||
|
||||
wpabuf_free(privacy_identity);
|
||||
|
||||
return resp;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue