From f1863f2b829f62dfc6b1aa70aaa8ce19bb32b4d8 Mon Sep 17 00:00:00 2001 From: Ayala Beker Date: Thu, 7 Apr 2016 13:30:59 +0300 Subject: [PATCH] RADIUS: Fix possible memory leak when parsing per-STA passphrase Fix a possible memory leak in decode_tunnel_passwords() if an invalid passphrase is received from the RADIUS server. Signed-off-by: Ayala Beker --- src/ap/ieee802_11_auth.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/ap/ieee802_11_auth.c b/src/ap/ieee802_11_auth.c index 96091526b..b89053736 100644 --- a/src/ap/ieee802_11_auth.c +++ b/src/ap/ieee802_11_auth.c @@ -457,7 +457,7 @@ static void decode_tunnel_passwords(struct hostapd_data *hapd, if (passphraselen < MIN_PASSPHRASE_LEN || passphraselen > MAX_PASSPHRASE_LEN + 1) - continue; + goto free_pass; /* * passphrase does not contain the NULL termination. @@ -484,6 +484,7 @@ static void decode_tunnel_passwords(struct hostapd_data *hapd, } skip: os_free(psk); +free_pass: os_free(passphrase); } }