From: Jouni Malinen Date: Sun, 25 Nov 2018 11:49:44 +0000 (+0200) Subject: DPP: Fix memory leaks in GAS server error path handling X-Git-Tag: hostap_2_7~66 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c7896ef9c63801c8deb2cee7d980c5578649129d;p=thirdparty%2Fhostap.git DPP: Fix memory leaks in GAS server error path handling If local memory allocation for the GAS response failed, couple of error paths ended up leaking some memory maintaining the state for the exchange. Fix that by freeing the context properly. Signed-off-by: Jouni Malinen --- diff --git a/src/common/gas_server.c b/src/common/gas_server.c index b258675fa..492ee0041 100644 --- a/src/common/gas_server.c +++ b/src/common/gas_server.c @@ -97,8 +97,10 @@ gas_server_send_resp(struct gas_server *gas, struct gas_server_handler *handler, return; response = os_zalloc(sizeof(*response)); - if (!response) + if (!response) { + wpabuf_free(query_resp); return; + } wpa_printf(MSG_DEBUG, "DPP: Allocated GAS response @%p", response); response->freq = freq; response->handler = handler; @@ -119,6 +121,7 @@ gas_server_send_resp(struct gas_server *gas, struct gas_server_handler *handler, handler->adv_proto_id_len + resp_frag_len); if (!resp) { + wpabuf_free(query_resp); gas_server_free_response(response); return; }