GAS: Send error response if no room for pending dialog context
Instead of silently dropping the response that requires fragmentation, send an error response to the station to make it aware that no full response will be available. Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
745f87715e
commit
d73c7b9626
1 changed files with 10 additions and 7 deletions
|
@ -989,14 +989,17 @@ static void gas_serv_req_local_processing(struct hostapd_data *hapd,
|
||||||
"for " MACSTR " (dialog token %u)",
|
"for " MACSTR " (dialog token %u)",
|
||||||
MAC2STR(sa), dialog_token);
|
MAC2STR(sa), dialog_token);
|
||||||
wpabuf_free(buf);
|
wpabuf_free(buf);
|
||||||
return;
|
tx_buf = gas_anqp_build_initial_resp_buf(
|
||||||
|
dialog_token, WLAN_STATUS_UNSPECIFIED_FAILURE,
|
||||||
|
0, NULL);
|
||||||
|
} else {
|
||||||
|
di->prot = prot;
|
||||||
|
di->sd_resp = buf;
|
||||||
|
di->sd_resp_pos = 0;
|
||||||
|
tx_buf = gas_anqp_build_initial_resp_buf(
|
||||||
|
dialog_token, WLAN_STATUS_SUCCESS,
|
||||||
|
comeback_delay, NULL);
|
||||||
}
|
}
|
||||||
di->prot = prot;
|
|
||||||
di->sd_resp = buf;
|
|
||||||
di->sd_resp_pos = 0;
|
|
||||||
tx_buf = gas_anqp_build_initial_resp_buf(
|
|
||||||
dialog_token, WLAN_STATUS_SUCCESS, comeback_delay,
|
|
||||||
NULL);
|
|
||||||
} else {
|
} else {
|
||||||
wpa_printf(MSG_DEBUG, "ANQP: Initial response (no comeback)");
|
wpa_printf(MSG_DEBUG, "ANQP: Initial response (no comeback)");
|
||||||
tx_buf = gas_anqp_build_initial_resp_buf(
|
tx_buf = gas_anqp_build_initial_resp_buf(
|
||||||
|
|
Loading…
Reference in a new issue