hostapd/src
Masashi Honma ecd40fef74 mesh: Fix mesh SAE auth on low spec devices
The mesh SAE auth often fails with master branch. By bisect I found
commit eb5fee0bf5 ('SAE: Add side-channel
protection to PWE derivation with ECC') causes this issue. This does not
mean the commit has a bug. This is just a CPU resource issue.

After the commit, sae_derive_pwe_ecc() spends 101(msec) on my PC (Intel
Atom N270 1.6GHz). But dot11RSNASAERetransPeriod is 40(msec). So
auth_sae_retransmit_timer() is always called and it can causes
continuous frame exchanges. Before the commit, it was 23(msec).

On the IEEE 802.11 spec, the default value of dot11RSNASAERetransPeriod
is defined as 40(msec). But it looks short because generally mesh
functionality will be used on low spec devices. Indeed Raspberry Pi B+
(ARM ARM1176JZF-S 700MHz) requires 287(msec) for new
sae_derive_pwe_ecc().

So this patch makes the default to 1000(msec) and makes it configurable.

This issue does not occur on infrastructure SAE because the
dot11RSNASAERetransPeriod is not used on it.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
2015-08-02 21:37:10 +03:00
..
ap mesh: Fix mesh SAE auth on low spec devices 2015-08-02 21:37:10 +03:00
common Add parsing of preferred frequency list element 2015-07-30 22:13:48 +03:00
crypto Add build option to remove all internal RC4 uses 2015-08-02 16:52:56 +03:00
drivers nl80211: Add means to query preferred channels 2015-07-29 19:46:31 +03:00
eap_common EAP-SAKE: Make attribute parser more readable 2015-05-03 16:32:50 +03:00
eap_peer Add build option to remove all internal RC4 uses 2015-08-02 16:52:56 +03:00
eap_server Rename tls_connection_get_keys() to tls_connection_get_random() 2015-08-02 16:52:56 +03:00
eapol_auth Add EAPOL_SET hostapd command to configure EAPOL parameters 2015-07-12 11:34:18 +03:00
eapol_supp Add build option to remove all internal RC4 uses 2015-08-02 16:52:56 +03:00
fst FST: Make fst_hw_mode_to_band() non-inline function 2015-07-26 18:45:14 +03:00
l2_packet tests: Add eapol-fuzzer 2015-04-22 11:44:19 +03:00
p2p P2P: Silence bogus compiler warnings 2015-08-01 21:08:11 +03:00
pae MACsec: Update protect frames and replay on reauthentication 2014-12-09 16:56:10 +02:00
radius RADIUS DAS: Avoid compiler warning on abs() 2015-07-07 16:25:06 +03:00
rsn_supp Add build option to remove all internal RC4 uses 2015-08-02 16:52:56 +03:00
tls Rename tls_connection_get_keys() to tls_connection_get_random() 2015-08-02 16:52:56 +03:00
utils utils: Add cstr_token() function 2015-07-27 00:47:19 +03:00
wps WPS: Avoid bogus static analyzer warning in ndef_parse_record() 2015-07-17 20:43:17 +03:00
lib.rules Add QUIET=1 option for make 2014-12-29 15:49:05 +02:00
Makefile FST: Add the Fast Session Transfer (FST) module 2015-07-16 18:26:15 +03:00