Interworking: Fix failed GAS query processing
authorJouni Malinen <jouni@qca.qualcomm.com>
Fri, 28 Sep 2012 14:09:15 +0000 (17:09 +0300)
committerJouni Malinen <j@w1.fi>
Fri, 28 Sep 2012 14:09:15 +0000 (17:09 +0300)
The pending GAS entry must be removed from the list when it is removed.
This fixes an issue with potential segfault due to freed memory being
accessed if the driver fails to accept a GAS query.

Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>

wpa_supplicant/gas_query.c

index efa9be8..0d4ca8e 100644 (file)
@@ -453,6 +453,7 @@ int gas_query_req(struct gas_query *gas, const u8 *dst, int freq,
        if (gas_query_tx(gas, query, req) < 0) {
                wpa_printf(MSG_DEBUG, "GAS: Failed to send Action frame to "
                           MACSTR, MAC2STR(query->addr));
+               dl_list_del(&query->list);
                os_free(query);
                return -1;
        }