[PATCH 1/1] hostapd: Add support for OWE offload for STA/AP interface

Jouni Malinen j at w1.fi
Sun Oct 29 09:38:15 PDT 2023


On Fri, Oct 27, 2023 at 06:54:03PM +0530, Vinayak Yadawad wrote:
> The current change enables OWE DH IE inclusion and processing
> of peer DH IE to generate PMK by the driver. The OWE offload
> is enabled based on NL80211_EXT_FEATURE_OWE_OFFLOAD flag
> advertised by the driver.

> diff --git a/src/ap/ieee802_11.c b/src/ap/ieee802_11.c
> @@ -3738,14 +3739,17 @@ u16 owe_process_rsn_ie(struct hostapd_data *hapd,
>  	status = wpa_res_to_status_code(res);
>  	if (status != WLAN_STATUS_SUCCESS)
>  		goto end;
> -	status = owe_process_assoc_req(hapd, sta, owe_dh, owe_dh_len);
> -	if (status != WLAN_STATUS_SUCCESS)
> -		goto end;
> -	owe_buf = wpa_auth_write_assoc_resp_owe(sta->wpa_sm, ie, sizeof(ie),
> -						NULL, 0);
> -	if (!owe_buf) {
> -		status = WLAN_STATUS_UNSPECIFIED_FAILURE;
> -		goto end;
> +
> +	if (!(iface->drv_flags & WPA_DRIVER_FLAGS2_OWE_OFFLOAD_AP)) {
> +		status = owe_process_assoc_req(hapd, sta, owe_dh, owe_dh_len);
> +		if (status != WLAN_STATUS_SUCCESS)
> +			goto end;
> +		owe_buf = wpa_auth_write_assoc_resp_owe(sta->wpa_sm, ie, sizeof(ie),
> +							NULL, 0);
> +		if (!owe_buf) {
> +			status = WLAN_STATUS_UNSPECIFIED_FAILURE;
> +			goto end;
> +		}
>  	}
>  
>  	if (sta->owe_ecdh) {

What is this trying to do? The offloaded case would look really strange
here since this sta->owe_ecdh part would trigger use of uninitialized
owe_buf.. It would also feel strange to call hostapd_drv_update_dh_ie()
with offload. Is that really what is supposed to happen here?

-- 
Jouni Malinen                                            PGP id EFC895FA



More information about the Hostap mailing list