]> git.ipfire.org Git - thirdparty/hostap.git/log
thirdparty/hostap.git
4 years agoClear external eapSuccess setting in driver-authorized cases
Jouni Malinen [Wed, 7 Aug 2019 08:51:44 +0000 (11:51 +0300)] 
Clear external eapSuccess setting in driver-authorized cases

The conditions for the eapol_sm_notify_eap_success(FALSE) calls did not
cover the case where eapol_sm_notify_eap_success(TRUE) had been called
based on offloaded 4-way handshake and driver notification of
authorization in wpa_supplicant_event_port_authorized(). This could
result in eapSuccess and altSuccess state machine variables being left
TRUE when roaming to another BSS and that results in EAP failure if the
following roaming case does not get fully authorized through the driver
offload.

Fix this by clearing eapSuccess/altSuccess when processing a new
association (including roaming) event and also when disconnecting from
the network.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoThe master branch is now used for v2.10 development
Jouni Malinen [Wed, 7 Aug 2019 14:51:53 +0000 (17:51 +0300)] 
The master branch is now used for v2.10 development

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoPreparations for v2.8 release hostap_2_9
Jouni Malinen [Wed, 7 Aug 2019 13:25:25 +0000 (16:25 +0300)] 
Preparations for v2.8 release

Update the version number for the build and also add the ChangeLog
entries for both hostapd and wpa_supplicant to describe main changes
between v2.7 and v2.8.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agotests: Check wait_event argument type
Jouni Malinen [Wed, 7 Aug 2019 09:41:12 +0000 (12:41 +0300)] 
tests: Check wait_event argument type

It was clearly too easy to get unexpected behavior by accidentially
passing in a string instead of a list of strings to these functions, so
enforce the correct type to notice such issues automatically.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Fix ap_vht_csa_vht40 to use list of events with wait_event()
Jouni Malinen [Wed, 7 Aug 2019 09:56:43 +0000 (12:56 +0300)] 
tests: Fix ap_vht_csa_vht40 to use list of events with wait_event()

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Fix concurrent_autogo_crossconnect to use list of events with wait_event()
Jouni Malinen [Wed, 7 Aug 2019 09:55:50 +0000 (12:55 +0300)] 
tests: Fix concurrent_autogo_crossconnect to use list of events with wait_event()

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Fix ap_vht_csa_vht40_disable to use list of events with wait_event()
Jouni Malinen [Wed, 7 Aug 2019 09:55:07 +0000 (12:55 +0300)] 
tests: Fix ap_vht_csa_vht40_disable to use list of events with wait_event()

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Fix eap_proto_otp to use list of events with wait_event()
Jouni Malinen [Wed, 7 Aug 2019 09:44:50 +0000 (12:44 +0300)] 
tests: Fix eap_proto_otp to use list of events with wait_event()

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Fix hostapd.wait_sta()
Jouni Malinen [Wed, 7 Aug 2019 09:34:24 +0000 (12:34 +0300)] 
tests: Fix hostapd.wait_sta()

wait_event() expects a list of events instead of a single event name.
The previous implementation of wait_sta() did not really wait for
AP-STA-CONNECT; instead, it returned the next event from hostapd
regardless of what that event was.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoSet the default scan IEs on interface restart
Sunil Dutt [Tue, 6 Aug 2019 16:04:21 +0000 (21:34 +0530)] 
Set the default scan IEs on interface restart

Previously, these default scan IEs were set only when parameter values
changed and during the interface initialization, which can get lost in
the driver on an interface restart. Hence, also set these IEs on an
interface restart notification even when there has been no change in the
values since the last update to the driver.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Additional EAP-TEAP coverage
Jouni Malinen [Tue, 6 Aug 2019 22:12:48 +0000 (01:12 +0300)] 
tests: Additional EAP-TEAP coverage

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoEAP-TEAP peer: Fix fragmentation of final message
Jouni Malinen [Tue, 6 Aug 2019 22:11:54 +0000 (01:11 +0300)] 
EAP-TEAP peer: Fix fragmentation of final message

Need to update methodState/decision when completing transmission of
fragmented last Phase 2 message.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Additional EAP-SAKE local error case coverage
Jouni Malinen [Tue, 6 Aug 2019 21:10:26 +0000 (00:10 +0300)] 
tests: Additional EAP-SAKE local error case coverage

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Additional EAP-GPSK local error case coverage
Jouni Malinen [Tue, 6 Aug 2019 21:04:45 +0000 (00:04 +0300)] 
tests: Additional EAP-GPSK local error case coverage

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Additional EAP-EKE local error case coverage
Jouni Malinen [Tue, 6 Aug 2019 20:59:06 +0000 (23:59 +0300)] 
tests: Additional EAP-EKE local error case coverage

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: DPP Controller RX error cases
Jouni Malinen [Tue, 6 Aug 2019 18:02:12 +0000 (21:02 +0300)] 
tests: DPP Controller RX error cases

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: DPP TCP failure cases
Jouni Malinen [Tue, 6 Aug 2019 15:28:34 +0000 (18:28 +0300)] 
tests: DPP TCP failure cases

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Remove openssl header files from code coverage report
Jouni Malinen [Tue, 6 Aug 2019 10:21:56 +0000 (13:21 +0300)] 
tests: Remove openssl header files from code coverage report

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agowolfssl: Avoid void pointer arithmetic
Jouni Malinen [Mon, 5 Aug 2019 21:54:28 +0000 (00:54 +0300)] 
wolfssl: Avoid void pointer arithmetic

This is a compiler specific extension and not compliant with the C
standard.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoSAE: Fix order_len for FFC groups
Jouni Malinen [Mon, 5 Aug 2019 13:52:20 +0000 (16:52 +0300)] 
SAE: Fix order_len for FFC groups

The KCK, PMK, and PMKID derivation fix broke SAE key derivation for all
FFC groups. Fix that by setting sae->tmp->order_len for FFC groups (it
was only set for ECC groups).

Fixes: ac734a342ed1 ("SAE: Fix KCK, PMK, and PMKID derivation for groups 22, 23, 24")
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Wait after rekeying a bit before running connectivity test
Jouni Malinen [Mon, 5 Aug 2019 10:49:15 +0000 (13:49 +0300)] 
tests: Wait after rekeying a bit before running connectivity test

The AP side may not have had enough time to configure the new TK into
the driver if the connectivity test is started immediately after the
station side event.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Wait for AP side connection event before disconnecting
Jouni Malinen [Mon, 5 Aug 2019 10:47:08 +0000 (13:47 +0300)] 
tests: Wait for AP side connection event before disconnecting

This makes the test cases more robust especially when testing with UML
time travel.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoDPP: Indicate authentication success on ConfReqRX if needed
Jouni Malinen [Mon, 5 Aug 2019 10:31:14 +0000 (13:31 +0300)] 
DPP: Indicate authentication success on ConfReqRX if needed

It is possible to receive the Configuration Request frame before having
seen TX status for the Authentication Confirm. In that sequence, the
DPP-AUTH-SUCCESS event would not be indicated before processing the
configuration step and that could confuse upper layers that follow the
details of the DPP exchange. As a workaround, indicate DPP-AUTH-SUCCESS
when receiving the Configuration Request since the Enrollee/Responser
has clearly receive the Authentication Confirm even if the TX status for
it has not been received.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Wait for AP-STA-CONNECT before running connectivity test
Jouni Malinen [Sun, 4 Aug 2019 12:16:46 +0000 (15:16 +0300)] 
tests: Wait for AP-STA-CONNECT before running connectivity test

When going through 4-way handshake, the station side reports
CTRL-EVENT-CONNECTED after having sent out EAPOL-Key msg 4/4. The AP
side reports AP-STA-CONNECT after having completed processing of this
frame. Especially when using UML with time travel, it is possible for
the connectivity test to be started before the AP side has configured
the pairwise TK if the test is triggered based on CTRL-EVENT-CONNECTED
instead of AP-STA-CONNECT.

Add explicit wait for AP-STA-CONNECT in some of these cases to reduce
likelihood of reporting failures for test cases that are actually
behaving as expected. This shows up with "dev1->dev2 unicast data
delivery failed" in the test log.

Do the same before requesting reauthentication from the station side
since that has a similar issue with the EAPOL-Start frame getting
encrypted before the AP is ready for it.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agotests: Close pyrad server sockets explicitly
Jouni Malinen [Sun, 4 Aug 2019 20:50:56 +0000 (23:50 +0300)] 
tests: Close pyrad server sockets explicitly

This helps in avoiding issues with another test case trying to bind to
the same UDP port and failing due to the previous use by pyrad still
being open. This showed up with failures in radius_ipv6 when it followed
a test case like eap_proto_tls with suitable set of test cases between
them.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoOpenSSL: Handle EVP_PKEY_derive() secret_len changes for ECDH
Jouni Malinen [Sun, 4 Aug 2019 12:03:08 +0000 (15:03 +0300)] 
OpenSSL: Handle EVP_PKEY_derive() secret_len changes for ECDH

It looks like EVP_PKEY_derive() may change the returned length of the
buffer from the initial length determination (NULL buffer) to the
fetching of the value. Handle this by updating the secret length based
on the second call instead of the first one. This fixes some cases where
ECDH result has been used with extra data (zeros in the end) with OWE or
FILS PFS.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoDPP: Use a common helper function for ECDH operations
Jouni Malinen [Sun, 4 Aug 2019 09:10:20 +0000 (12:10 +0300)] 
DPP: Use a common helper function for ECDH operations

This replaces the separately implemented ECDH operations with a single
helper function to avoid code duplication. In addition, this introduces
a workaround for strange OpenSSL behavior where the first
EVP_PKEY_derive(NULL) call to learn the size of the output shared secret
returns unexpectedly large buffer (72 octets when expected 32 octets for
group 19). It is not known what is causing this, but such behavior seems
to be showing up every now and then at least when running hwsim test
cases under UML and apparently mainly (only?) in the sigma_dut
controller cases.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agotests: Check against all zero PMKIDs in sae_groups
Jouni Malinen [Sat, 3 Aug 2019 14:04:01 +0000 (17:04 +0300)] 
tests: Check against all zero PMKIDs in sae_groups

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoSAE: Fix KCK, PMK, and PMKID derivation for groups 22, 23, 24
Jouni Malinen [Sat, 3 Aug 2019 14:00:39 +0000 (17:00 +0300)] 
SAE: Fix KCK, PMK, and PMKID derivation for groups 22, 23, 24

IEEE Std 802.11-2016 is not exactly clear on the encoding of the bit
string that is needed for KCK, PMK, and PMKID derivation, but it seems
to make most sense to encode the (commit-scalar + peer-commit-scalar)
mod r part as a bit string by zero padding it from left to the length of
the order (in full octets).

The previous implementation used the length of the prime (in full
octets). This would work for KCK/PMK, but this results in deriving all
zero PMKIDs for the groups where the size of the order is smaller than
the size of the prime. This is the case for groups 22, 23, and 24.
However, those groups have been marked as being unsuitable for use with
SAE, so this fix should not really have a practical impact anymore.
Anyway, better fix it and document this clearly in the implementation
taken into account the unclarity of the standard in this area.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agotests: Update SAE suitable_groups list to match implementation
Jouni Malinen [Sat, 3 Aug 2019 13:32:14 +0000 (16:32 +0300)] 
tests: Update SAE suitable_groups list to match implementation

Remove the groups that use Brainpool curves from the test case so that
this matches the updated implementation.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoOpenSSL: Fix crypto_bignum_to_bin() with padlen == 0
Jouni Malinen [Sat, 3 Aug 2019 13:28:02 +0000 (16:28 +0300)] 
OpenSSL: Fix crypto_bignum_to_bin() with padlen == 0

The earlier change to add support for BN_bn2binpad() and
BN_bn2bin_padded() broke this function for cases where no padding is
used (padlen == 0). Those would have always failed after the changes and
the function would return -1. There are no such cases in the current
hostap.git, so this did not have any real issues, but anyway, better fix
this function to match its documentation.

Fixes: 1e237903f5b5 ("OpenSSL: Use BN_bn2binpad() or BN_bn2bin_padded() if available")
Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agonl80211: Use separate flag for 4-way handshake offload
Arend van Spriel [Mon, 1 Jul 2019 22:13:49 +0000 (00:13 +0200)] 
nl80211: Use separate flag for 4-way handshake offload

Commit d896874f8689 ("nl80211: Indicate 802.1X 4-way handshake offload
in connect") used the req_key_mgmt_offload flag to indicate to the
driver that it should offload the 802.1X handshake. However, this field
was existing and used for a different offload API. This causes
wpa_supplicant to send a connect request without the WANT_1X_HS flag and
the subsequent set-pmk is rejected causing the connection to fail. Fix
that by introducing a new flag req_handshake_offload so the offloads are
no longer entangled.

Fixes: d896874f8689 ("nl80211: Indicate 802.1X 4-way handshake offload in connect")
Reported-by: Stefan Wahren <wahrenst@gmx.net>
Tested-by: Stefan Wahren <wahrenst@gmx.net>
Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
4 years agotests: Make scan_bss_expiration_count more robust with UML
Jouni Malinen [Thu, 1 Aug 2019 12:44:22 +0000 (15:44 +0300)] 
tests: Make scan_bss_expiration_count more robust with UML

Test case sequence "persistent_group_channel scan_bss_expiration_count"
was failing with UML when using time travel. This seemed to be because
there was no explicit wait to confirm that the AP has been fully
disabled before running the next scan. Work around this by verifying
that hostapd has terminated the BSS and waiting a bit after that before
proceeding.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: hostapd eap_sim_id options
Jouni Malinen [Thu, 1 Aug 2019 07:46:07 +0000 (10:46 +0300)] 
tests: hostapd eap_sim_id options

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoEAP-SIM/AKA server: Allow pseudonym/fast reauth to be disabled
Jouni Malinen [Wed, 31 Jul 2019 21:02:02 +0000 (00:02 +0300)] 
EAP-SIM/AKA server: Allow pseudonym/fast reauth to be disabled

The new hostapd configuration option eap_sim_id can now be used to
disable use of pseudonym and/or fast reauthentication with EAP-SIM,
EAP-AKA, and EAP-AKA'.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoEAP-SIM/AKA: Do not allow anonymous@realm "pseudonym" to be cleared
Jouni Malinen [Wed, 31 Jul 2019 19:33:04 +0000 (22:33 +0300)] 
EAP-SIM/AKA: Do not allow anonymous@realm "pseudonym" to be cleared

If the EAP-SIM/AKA server does not provide a new pseudonym and the
locally configured "pseudonym" in anonymous_identity is actually an
anonymous identitity instead of a real EAP-SIM/AKA pseudonym, do not
clear the anonymous_identity network profile parameter. This is needed
to avoid forgetting the anonymous identity when going through
EAP-SIM/AKA authentication and then reverting back to using IMSI-based
(e.g., encrypted) identity.

Fixes: 4df4133917ab ("EAP-SIM/AKA: Add support for anonymous@realm")
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoD-Bus: Demote timeout/flush messages to MSG_MSGDUMP
Brian Norris [Wed, 31 Jul 2019 01:09:33 +0000 (18:09 -0700)] 
D-Bus: Demote timeout/flush messages to MSG_MSGDUMP

We intentionally don't emit property-changed signals on every property
update -- for "less timing critical" messages we delay up to 5
milliseconds waiting to see if we can batch them together. When the
timer hits, we emit the signal anyway and (potentially) log this
message. This amounts to effectively tracing every property update,
which can be quite excessive.

Lower this to MSGDUMP, so MSG_DEBUG can remain slightly more sane.

Signed-off-by: Brian Norris <briannorris@chromium.org>
4 years agotests: Fix ap_vht160_no_dfs false negative by using common finalizer
Masashi Honma [Thu, 27 Jun 2019 05:44:52 +0000 (14:44 +0900)] 
tests: Fix ap_vht160_no_dfs false negative by using common finalizer

ap_vht160_no_dfs fails with this message:

---------------
wlan0: Country code not reset back to 00: is ZA
wlan0: Country code cleared back to 00
---------------

hostap commit 91b6eba7732354ed3dfe0aa9715dc4c0746e3336
'Move MAC address randomization enable/disable to helper functions'.

wireless-testing commit 66c112cbd1d44d05322bb4eef908c82a68adbb5e
tag: wt-2019-06-26.

This patch fixes the issue.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
4 years agotests: Fix wep_ht_vht false negative by using common finalizer
Masashi Honma [Thu, 27 Jun 2019 05:44:51 +0000 (14:44 +0900)] 
tests: Fix wep_ht_vht false negative by using common finalizer

wep_ht_vht fails with this message:

---------------
wlan0: Country code not reset back to 00: is SE
wlan0: Country code cleared back to 00
---------------

hostap commit 91b6eba7732354ed3dfe0aa9715dc4c0746e3336
'Move MAC address randomization enable/disable to helper functions'.

wireless-testing commit 66c112cbd1d44d05322bb4eef908c82a68adbb5e
tag: wt-2019-06-26.

This patch fixes the issue.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
4 years agotests: Fix ap_wps_conf_5ghz false negative by using common finalizer
Masashi Honma [Thu, 27 Jun 2019 05:44:50 +0000 (14:44 +0900)] 
tests: Fix ap_wps_conf_5ghz false negative by using common finalizer

ap_wps_conf_5ghz fails with this message:

---------------
wlan0: Country code not reset back to 00: is FI
wlan0: Country code cleared back to 00
---------------

hostap commit 91b6eba7732354ed3dfe0aa9715dc4c0746e3336
'Move MAC address randomization enable/disable to helper functions'.

wireless-testing commit 66c112cbd1d44d05322bb4eef908c82a68adbb5e
tag: wt-2019-06-26.

This patch fixes the issue.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
4 years agotests: Fix ap_acs_vht160 false negative by using common finalizer
Masashi Honma [Thu, 27 Jun 2019 05:44:49 +0000 (14:44 +0900)] 
tests: Fix ap_acs_vht160 false negative by using common finalizer

ap_acs_vht160 fails with this message:

---------------
wlan0: Country code not reset back to 00: is ZA
wlan0: Country code cleared back to 00
---------------

hostap commit 91b6eba7732354ed3dfe0aa9715dc4c0746e3336
'Move MAC address randomization enable/disable to helper functions'.

wireless-testing commit 66c112cbd1d44d05322bb4eef908c82a68adbb5e
tag: wt-2019-06-26.

This patch fixes the issue.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
4 years agotests: Fix ap_acs_vht40 false negative by using common finalizer
Masashi Honma [Thu, 27 Jun 2019 05:44:48 +0000 (14:44 +0900)] 
tests: Fix ap_acs_vht40 false negative by using common finalizer

ap_acs_vht40 fails with this message:

---------------
wlan0: Country code not reset back to 00: is US
wlan0: Country code cleared back to 00
---------------

hostap commit 91b6eba7732354ed3dfe0aa9715dc4c0746e3336
'Move MAC address randomization enable/disable to helper functions'.

wireless-testing commit 66c112cbd1d44d05322bb4eef908c82a68adbb5e
tag: wt-2019-06-26.

This patch fixes the issue.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
4 years agotests: Fix ap_acs_vht false negative by using common finalizer
Masashi Honma [Thu, 27 Jun 2019 05:44:47 +0000 (14:44 +0900)] 
tests: Fix ap_acs_vht false negative by using common finalizer

ap_acs_vht fails with this message:

---------------
wlan0: Country code not reset back to 00: is US
wlan0: Country code cleared back to 00
---------------

hostap commit 91b6eba7732354ed3dfe0aa9715dc4c0746e3336
'Move MAC address randomization enable/disable to helper functions'.

wireless-testing commit 66c112cbd1d44d05322bb4eef908c82a68adbb5e
tag: wt-2019-06-26.

This patch fixes the issue.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
4 years agotests: Fix ap_acs_5ghz_40mhz false negative by using common finalizer
Masashi Honma [Thu, 27 Jun 2019 05:44:46 +0000 (14:44 +0900)] 
tests: Fix ap_acs_5ghz_40mhz false negative by using common finalizer

ap_acs_5ghz_40mhz fails with this message:

---------------
wlan0: Country code not reset back to 00: is US
wlan0: Country code cleared back to 00
---------------

hostap commit 91b6eba7732354ed3dfe0aa9715dc4c0746e3336
'Move MAC address randomization enable/disable to helper functions'.

wireless-testing commit 66c112cbd1d44d05322bb4eef908c82a68adbb5e
tag: wt-2019-06-26.

This patch fixes the issue.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
4 years agotests: Fix ap_acs_5ghz false negative by using common finalizer
Masashi Honma [Thu, 27 Jun 2019 05:44:45 +0000 (14:44 +0900)] 
tests: Fix ap_acs_5ghz false negative by using common finalizer

ap_acs_5ghz fails with this message:

---------------
wlan0: Country code not reset back to 00: is US
wlan0: Country code cleared back to 00
---------------

hostap commit 91b6eba7732354ed3dfe0aa9715dc4c0746e3336
'Move MAC address randomization enable/disable to helper functions'.

wireless-testing commit 66c112cbd1d44d05322bb4eef908c82a68adbb5e
tag: wt-2019-06-26.

This patch fixes the issue.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
4 years agotests: Fix rrm_beacon_req_passive_scan_vht false negative by using common finalizer
Masashi Honma [Thu, 27 Jun 2019 05:44:44 +0000 (14:44 +0900)] 
tests: Fix rrm_beacon_req_passive_scan_vht false negative by using common finalizer

rrm_beacon_req_passive_scan_vht fails with this message:

---------------
wlan0: Country code not reset back to 00: is FI
wlan0: Country code cleared back to 00
---------------

hostap commit 91b6eba7732354ed3dfe0aa9715dc4c0746e3336
'Move MAC address randomization enable/disable to helper functions'.

wireless-testing commit 66c112cbd1d44d05322bb4eef908c82a68adbb5e
tag: wt-2019-06-26.

This patch fixes the issue.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
4 years agonl80211: Missing sysctl flags aren't fatal
Brian Norris [Tue, 16 Jul 2019 23:43:21 +0000 (16:43 -0700)] 
nl80211: Missing sysctl flags aren't fatal

The relevant flags were only added in Linux 4.6, so we shouldn't
complain because they're missing. Also, they're always missing if a
device is being removed (e.g., 'iw dev wlan0 del', or if the device is
in the process of resetting itself). So kill those 2 birds with 1 stone:
if we can't find the file, just silently skip it.

Also, we probably should *actually* propagate the error if we had a
write failure.

Signed-off-by: Brian Norris <briannorris@chromium.org>
4 years agotests: RADIUS request attributes
Jouni Malinen [Tue, 30 Jul 2019 16:58:43 +0000 (19:58 +0300)] 
tests: RADIUS request attributes

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoExtra RADIUS request attributes from SQLite
Terry Burton [Sun, 21 Jul 2019 12:05:56 +0000 (13:05 +0100)] 
Extra RADIUS request attributes from SQLite

Add an SQLite table for defining per station MAC address version of
radius_auth_req_attr/radius_acct_req_attr information. Create the
necessary table and index where this doesn't exist. Select attributes
from the table keyed by station MAC address and request type (auth or
acct), parse and apply to a RADIUS message.

Add radius_req_attr_sqlite hostapd config option for SQLite database
file. Open/close RADIUS attribute database for a lifetime of a BSS and
invoke functions to add extra attributes during RADIUS auth and
accounting request generation.

Signed-off-by: Terry Burton <tez@terryburton.co.uk>
4 years agoMove hostapd_parse_radius_attr() into ap_config.c
Terry Burton [Sun, 21 Jul 2019 12:05:55 +0000 (13:05 +0100)] 
Move hostapd_parse_radius_attr() into ap_config.c

We will want to parse RADIUS attributes in config file format when
retrieving them from an SQLite database.

Signed-off-by: Terry Burton <tez@terryburton.co.uk>
4 years agomka: Accept last two used MNs in Peers List of a received MKPDU
Jouni Malinen [Mon, 29 Jul 2019 14:05:40 +0000 (17:05 +0300)] 
mka: Accept last two used MNs in Peers List of a received MKPDU

Previously, check for local MI,MN in a peer's Peers List accepted only
the cases that include the last used MN from an MKPDU sent by the local
device. This was problematic since it was possible to synchronize MKPDU
transmission between two devices in a way that made them always miss the
last MKPDU from the other device before filling in the Peers List.

Relax this matching requirement of "acceptably recent MN" to mean both
the last used MN and the one used just before it (i.e., copied from
either of the last two MKPDUs sent by the local device) are accepted.

While this might help in some real world scenarios in making the
protocol converge more quickly, the main help from this is to fix
consistent hwsim test cases failures in macsec_psk_ns when using UML
with time travel option which happened to practically guarantee the
inconvenient timing of MKPDU transmission/reception that ended up with
the MKPDU processing to see MI,MN with MN being the last used MN minus
1.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoP2P: Pass HE flag to GO negotiation result
Yu Wang [Mon, 29 Jul 2019 06:59:48 +0000 (14:59 +0800)] 
P2P: Pass HE flag to GO negotiation result

In order to set up P2P connection with HE capability,
the 'he' flag should be passed to GO negotiation result.

Signed-off-by: Yu Wang <yyuwang@codeaurora.org>
4 years agotests: Extend ap_pmf_inject_auth to cover injection of AssocReq
Jouni Malinen [Sun, 28 Jul 2019 20:51:39 +0000 (23:51 +0300)] 
tests: Extend ap_pmf_inject_auth to cover injection of AssocReq

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agodragonfly: Disable use of groups using Brainpool curves
Jouni Malinen [Sat, 27 Jul 2019 20:19:17 +0000 (23:19 +0300)] 
dragonfly: Disable use of groups using Brainpool curves

Disable groups that use Brainpool curves for now since they leak more
timing information due to the prime not being close to a power of two.
This removes use of groups 28, 29, and 30 from SAE and EAP-pwd.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agotests: Remove testing of EAP-pwd with Brainpool curves
Jouni Malinen [Sat, 27 Jul 2019 20:35:45 +0000 (23:35 +0300)] 
tests: Remove testing of EAP-pwd with Brainpool curves

This is in preparation of marking groups using Brainpool curves disabled
for SAE and EAP-pwd.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agotests: Handle test retries through the same queue
Jouni Malinen [Sat, 27 Jul 2019 17:19:28 +0000 (20:19 +0300)] 
tests: Handle test retries through the same queue

This removes the separate rerun step from the parallel-vm.py processing
and instead, simply requeues the failed test cases into the same queue
that is used for the initial run. This is simpler and more efficient
since reruns start as soon as any VM is ready for processing them
instead of having to wait for all VMs to complete the first round.
Furthermore, this allows VMs to be stopped sooner when no more test
cases remain and that is helpful especially with the time travel patches
that make the wait-for-next-test step in the VM use all available CPU.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agonl80211: Add WMM parameters while updating TDLS peer entry
Sunil Dutt [Mon, 22 Jul 2019 16:04:27 +0000 (21:34 +0530)] 
nl80211: Add WMM parameters while updating TDLS peer entry

The AP mode fix for removing NL80211_ATTR_STA_WME from
NL80211_CMD_SET_STATION did not consider the TDLS case and that resulted
in incorrectly removing WMM parameters from TDLS STA entry updates. Fix
this by considering the WPA_STA_TDLS_PEER flag similarly to the other
update parameters.

Fixes: 6d14b98fc6fc ("nl80211: Do not add WMM parameters when updating an existing STA entry")
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agowpa_cli: Add support to process DPP action events in action script
Disha Das [Thu, 20 Jun 2019 05:32:23 +0000 (11:02 +0530)] 
wpa_cli: Add support to process DPP action events in action script

Signed-off-by: Disha Das <dishad@codeaurora.org>
4 years agoAvoid nested enum wpas_mode declaration to allow C++ compilation
Jouni Malinen [Wed, 24 Jul 2019 16:49:24 +0000 (19:49 +0300)] 
Avoid nested enum wpas_mode declaration to allow C++ compilation

Move enum wpas_mode declaration to the global scope to avoid issues with
the recently added inline function wpas_mode_to_ieee80211_mode() using
it as an argument. This fixes C++ compilation issues with cases that
include wpa_supplicant_i.h.

Fixes: 3459c54ac78b ("mesh: Add support for HE mode")
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoEAP-SIM server: Avoid void pointer arithmetic
Jouni Malinen [Wed, 24 Jul 2019 16:35:14 +0000 (19:35 +0300)] 
EAP-SIM server: Avoid void pointer arithmetic

This is a compiler specific extension and not compliant with the C
standard.

Fixes: 1c16b257a081 ("EAP-SIM: Add Session-Id derivation during fast-reauth")
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoEAP-AKA server: Avoid void pointer arithmetic
Jouni Malinen [Wed, 24 Jul 2019 16:34:11 +0000 (19:34 +0300)] 
EAP-AKA server: Avoid void pointer arithmetic

This is a compiler specific extension and not compliant with the C
standard.

Fixes: 5eefa8115b88 ("EAP-AKA: Add Session-Id derivation during fast-reauth")
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotrace: Avoid void pointer arithmetic
Jouni Malinen [Wed, 24 Jul 2019 16:33:06 +0000 (19:33 +0300)] 
trace: Avoid void pointer arithmetic

This is a compiler specific extension and not compliant with the C
standard.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoDPP: Avoid void pointer arithmetic
Jouni Malinen [Wed, 24 Jul 2019 16:31:35 +0000 (19:31 +0300)] 
DPP: Avoid void pointer arithmetic

This is a compiler specific extension and not compliant with the C
standard.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: AKM suite selector reporting
Jouni Malinen [Wed, 24 Jul 2019 09:59:45 +0000 (12:59 +0300)] 
tests: AKM suite selector reporting

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoReport WPA/RSN protocol and AKM suite selector in STA MIB
Jouni Malinen [Wed, 24 Jul 2019 09:58:49 +0000 (12:58 +0300)] 
Report WPA/RSN protocol and AKM suite selector in STA MIB

The new "wpa" and "AKMSuiteSelector" entries in hostapd "STA <addr>"
control interface output can be used to determine the negotiated WPA/RSN
protocol and AKM suite of an associated station.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoAdd missed wpa_akm_to_suite() selectors
Jouni Malinen [Wed, 24 Jul 2019 09:48:44 +0000 (12:48 +0300)] 
Add missed wpa_akm_to_suite() selectors

These SAE, OWE, DPP, and OSEN AKM suite selectors were covered in the
reverse conversion in rsn_key_mgmt_to_bitfield(), but were missing from
wpa_akm_to_suite(). Add them to make AKM suite selector reporting more
accurate in RADIUS Accounting messages (and future users of this
function).

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agodragonfly: SAE/EAP-pwd min PWE derivation iteration count to shared code
Jouni Malinen [Tue, 23 Jul 2019 18:21:30 +0000 (21:21 +0300)] 
dragonfly: SAE/EAP-pwd min PWE derivation iteration count to shared code

Use a shared function to determine the k parameter, i.e., the minimum
number of iterations of the PWE derivation loop, for SAE and EAP-pwd.
This makes it easier to fine-tune the parameter based on the negotiated
group, if desired.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Disabled EAP-pwd group
Jouni Malinen [Tue, 23 Jul 2019 10:31:50 +0000 (13:31 +0300)] 
tests: Disabled EAP-pwd group

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoEAP-pwd peer: Configurable set of groups with reduced default
Jouni Malinen [Tue, 23 Jul 2019 10:16:59 +0000 (13:16 +0300)] 
EAP-pwd peer: Configurable set of groups with reduced default

Make the EAP-pwd peer use same default set of allowed groups as the SAE
implementation in wpa_supplicant uses, i.e., the groups 19-21 using NIST
curves P-256, P-384, and P-521. Previously, all groups that were
supported by the crypto library were allowed. In practice, this change
disables use of the Brainpool curves (groups 28-30) with recent OpenSSL
versions.

The default set of groups can be overridden with a new phase1 network
profile parameter, eap_pwd_groups=<list of allowed ranges>. For example,
phase1="eap_pwd_groups=0-65535" would restore previous behavior of
allowing all implemented groups to be used while eap_pwd_groups=19,20
would enable only the groups using NIST curves P-256 and P-384 to be
used.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agotests: Prepare EAP-pwd test cases for allowed group configuration
Jouni Malinen [Tue, 23 Jul 2019 10:15:23 +0000 (13:15 +0300)] 
tests: Prepare EAP-pwd test cases for allowed group configuration

Enable all supported groups in the existing ap_wpa2_eap_pwd_groups and
ap_wpa2_eap_pwd_invalid_group test cases to maintain current testing
functionality once wpa_supplicant is modified to use a different default
for the enabled groups.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoAdd QCA vendor attributes for ELNA bypass
Paul Zhang [Mon, 22 Jul 2019 10:57:11 +0000 (18:57 +0800)] 
Add QCA vendor attributes for ELNA bypass

Add attributes QCA_WLAN_VENDOR_ATTR_CONFIG_ELNA_BYPASS under
the enum qca_wlan_vendor_attr_config to support set and get
the ELNA bypass.

Signed-off-by: Paul Zhang <paulz@codeaurora.org>
4 years agoAdd a vendor attribute to configure disconnect IEs
Srinivas Dasari [Tue, 4 Jun 2019 07:20:17 +0000 (12:50 +0530)] 
Add a vendor attribute to configure disconnect IEs

Add a new vendor attribute QCA_WLAN_VENDOR_ATTR_DISCONNECT_IES
to configure disconnect IEs to the driver. Driver shall fill
these IEs in disassoc/deauth frame.
These IEs are expected to be considered only for the next
immediate disconnection (disassoc/deauth frame) originated by
the DUT, irrespective of the entity (user space/driver/firmware)
triggering the disconnection.
The host drivers are not expected to use the IEs set through
this interface for further disconnections after the first immediate
disconnection initiated post the configuration.
If the IEs are also updated through cfg80211 interface (after the
enhancement to cfg80211_disconnect), host driver is expected to
take the union of IEs from both of these interfaces and send in
further disassoc/deauth frames.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
4 years agoAdd QCA vendor command to support OEM data
Paul Zhang [Fri, 21 Jun 2019 06:11:11 +0000 (14:11 +0800)] 
Add QCA vendor command to support OEM data

Add a QCA vendor sub command QCA_NL80211_VENDOR_SUBCMD_OEM_DATA
with attributes qca_wlan_vendor_attr_oem_data_params to support
OEM data. It is used to send OEM data binary blobs from
application/service to firmware. The attributes defined in enum
qca_wlan_vendor_attr_oem_data_params are used to deliver the
parameters.

Signed-off-by: Paul Zhang <paulz@codeaurora.org>
4 years agoOpenSSL: Fix build with LibreSSL and BoringSSL
Jouni Malinen [Sat, 13 Jul 2019 19:40:50 +0000 (22:40 +0300)] 
OpenSSL: Fix build with LibreSSL and BoringSSL

The new certificate chain debug dumps used functions that are not
available with LibreSSL or BoringSSL.

Fixes: 857edf4bf43e ("OpenSSL: More debug prints of configured ciphers and certificates")
Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoOpenSSL: Fix TLS_CONN_TEAP_ANON_DH build with some library versions
Jouni Malinen [Sat, 13 Jul 2019 19:36:07 +0000 (22:36 +0300)] 
OpenSSL: Fix TLS_CONN_TEAP_ANON_DH build with some library versions

The OPENSSL_VERSION_NUMBER ifdef block left out the local variable that
is needed with all versions. In addition, SSL_set_security_level() is
not available with LibreSSL or BoringSSL.

Fixes: 3ec65a8e38a0 ("OpenSSL: Allow anon-DH cipher suites to be added for TEAP")
Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoOpenSSL: Fix build with OpenSSL 1.0.2 and 1.1.0 and LibreSSL
Jouni Malinen [Sat, 13 Jul 2019 19:19:30 +0000 (22:19 +0300)] 
OpenSSL: Fix build with OpenSSL 1.0.2 and 1.1.0 and LibreSSL

The tls_connection_get_cipher_suite() implementation used
SSL_CIPHER_get_protocol_id which was added in OpenSSL 1.1.1. Need to use
compatibility code with older versions.

Fixes: 94714ec341cc ("OpenSSL: Add tls_connection_get_cipher_suite()")
Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoEAP-TLS server: Add application data to indicate end of v1.3 handshake
Jouni Malinen [Sat, 13 Jul 2019 13:29:39 +0000 (16:29 +0300)] 
EAP-TLS server: Add application data to indicate end of v1.3 handshake

This adds an encrypted version of a one octet application data payload
to the end of the handshake when TLS v1.3 is used to indicate explicit
termination of the handshake (either after Finished message or after the
optional NewSessionTicket message). The current
draft-ietf-emu-eap-tls13-05 defines this to be a zero length payload,
but since that is not allowed by OpenSSL, use a one octet payload
instead for now with hopes of getting the draft specification updated
instead of having to modify OpenSSL for this.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoEAP-TLS peer: Handle possible application data at the end
Jouni Malinen [Fri, 12 Jul 2019 20:38:05 +0000 (23:38 +0300)] 
EAP-TLS peer: Handle possible application data at the end

EAP-TLS with TLS 1.3 uses an empty application data record from the
server to indicate end of the exchange, so EAP-TLS peer will need to
check for this special case and finish the exchange with an empty
EAP-TLS (ACK) so that the server can send out EAP-Success.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoOpenSSL: Parse msg_callback inner content type into debug messages
Jouni Malinen [Fri, 12 Jul 2019 19:42:13 +0000 (22:42 +0300)] 
OpenSSL: Parse msg_callback inner content type into debug messages

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoOpenSSL: disable TLS 1.3 middlebox compatibility
Jouni Malinen [Fri, 12 Jul 2019 19:29:33 +0000 (22:29 +0300)] 
OpenSSL: disable TLS 1.3 middlebox compatibility

This will hopefully not be needed for EAP-TLS use cases since there
should not really be a middlebox that looks at the TLS layer details in
case of EAP authentication.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agotests: EAP-TLS and both RSA and EC sertificates certificates
Jouni Malinen [Fri, 12 Jul 2019 15:11:46 +0000 (18:11 +0300)] 
tests: EAP-TLS and both RSA and EC sertificates certificates

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoOpenSSL: Allow two server certificates/keys to be configured on server
Jouni Malinen [Fri, 12 Jul 2019 15:11:53 +0000 (18:11 +0300)] 
OpenSSL: Allow two server certificates/keys to be configured on server

hostapd EAP server can now be configured with two separate server
certificates/keys to enable parallel operations using both RSA and ECC
public keys. The server will pick which one to use based on the client
preferences for the cipher suite (in the TLS ClientHello message). It
should be noted that number of deployed EAP peer implementations do not
filter out the cipher suite list based on their local configuration and
as such, configuration of alternative types of certificates on the
server may result in interoperability issues.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoOpenSSL: More debug prints of configured ciphers and certificates
Jouni Malinen [Thu, 11 Jul 2019 19:40:08 +0000 (22:40 +0300)] 
OpenSSL: More debug prints of configured ciphers and certificates

This adds TLS server mode debug prints to make it easier to see what
exactly has been configured in OpenSSL.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agotests: EAP-TLS and TLS 1.3 (EC certificates)
Jouni Malinen [Thu, 11 Jul 2019 13:10:43 +0000 (16:10 +0300)] 
tests: EAP-TLS and TLS 1.3 (EC certificates)

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoAdd Type-Code context to EAP-TLS 1.3 exported Key_Material and Method-Id
Ervin Oro [Mon, 15 Apr 2019 17:05:49 +0000 (20:05 +0300)] 
Add Type-Code context to EAP-TLS 1.3 exported Key_Material and Method-Id

Change to require the Type-Code in context for Key_Material and
Method-Id has now been published as draft-ietf-emu-eap-tls13-04.
https://tools.ietf.org/html/draft-ietf-emu-eap-tls13-04#section-2.3

Signed-off-by: Ervin Oro <ervin.oro@aalto.fi>
4 years agotests: EAP-TEAP
Jouni Malinen [Tue, 9 Jul 2019 13:56:02 +0000 (16:56 +0300)] 
tests: EAP-TEAP

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoEAP-TEAP server and peer implementation (RFC 7170)
Jouni Malinen [Tue, 9 Jul 2019 13:56:02 +0000 (16:56 +0300)] 
EAP-TEAP server and peer implementation (RFC 7170)

This adds support for a new EAP method: EAP-TEAP (Tunnel Extensible
Authentication Protocol). This should be considered experimental since
RFC 7170 has number of conflicting statements and missing details to
allow unambiguous interpretation. As such, there may be interoperability
issues with other implementations and this version should not be
deployed for production purposes until those unclear areas are resolved.

This does not yet support use of NewSessionTicket message to deliver a
new PAC (either in the server or peer implementation). In other words,
only the in-tunnel distribution of PAC-Opaque is supported for now. Use
of the NewSessionTicket mechanism would require TLS library support to
allow arbitrary data to be specified as the contents of the message.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoRemove obsolete defconfig notes regarding EAP-FAST support in OpenSSL
Jouni Malinen [Tue, 9 Jul 2019 13:43:05 +0000 (16:43 +0300)] 
Remove obsolete defconfig notes regarding EAP-FAST support in OpenSSL

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoReturn success/failure result from tls_prf_sha256()
Jouni Malinen [Thu, 27 Jun 2019 15:08:16 +0000 (18:08 +0300)] 
Return success/failure result from tls_prf_sha256()

The hash functions used within this function could fail in theory, so
provide the result to the caller.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoOpenSSL: Allow anon-DH cipher suites to be added for TEAP
Jouni Malinen [Tue, 9 Jul 2019 13:37:19 +0000 (16:37 +0300)] 
OpenSSL: Allow anon-DH cipher suites to be added for TEAP

Add a new TLS_CONN_* flag to provide a higher level mechanism for adding
(instead of fully replacing) allowed list of TLS ciphersuites for TEAP
provisioning purposes.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoOpenSSL: Add tls_connection_get_cipher_suite()
Jouni Malinen [Fri, 5 Jul 2019 15:07:14 +0000 (18:07 +0300)] 
OpenSSL: Add tls_connection_get_cipher_suite()

This can be used to fetch the 16-bit TLS cipher suite identifier.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoOpenSSL: Reject empty cipher list in tls_connection_set_cipher_list()
Jouni Malinen [Sat, 11 Feb 2017 13:56:47 +0000 (15:56 +0200)] 
OpenSSL: Reject empty cipher list in tls_connection_set_cipher_list()

Previously, this invalid call would have resulted in printing out a
string from uninitialized memory

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoAdd tls_get_tls_unique() to fetch "tls-unique" for channel binding
Jouni Malinen [Mon, 10 Aug 2015 18:21:40 +0000 (21:21 +0300)] 
Add tls_get_tls_unique() to fetch "tls-unique" for channel binding

This implements "tls-unique" derivation per RFC 5929, Section 3. This
will be needed for channel binding, e.g., with EAP-TEAP.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agotests: Allow test selection with prefix wildcards
Jouni Malinen [Tue, 9 Jul 2019 13:09:04 +0000 (16:09 +0300)] 
tests: Allow test selection with prefix wildcards

Test names can now use wildcard in the end (e.g., ap_wpa2_psk*) to match
all test cases with the specified prefix.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoSilence static analyzer warning about null termination of a string
Jouni Malinen [Sun, 7 Jul 2019 07:02:40 +0000 (10:02 +0300)] 
Silence static analyzer warning about null termination of a string

The buf[] array is initialized to zeros, so it was already null
terminated since the read() call did not allow the last character of the
buffer to be overwritten. Since that was apparently not enough to make
some static analyzers understand the design, use explicit null
termination after a successful read() call.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoRemove useless NULL comparison for an array
Jouni Malinen [Sun, 7 Jul 2019 06:58:46 +0000 (09:58 +0300)] 
Remove useless NULL comparison for an array

Now that the TLS peer_cert information is provided as a full struct to
handler functions, the altsubject pointer shows up as an array and
causes static analyzers to warn about unnecessary NULL comparison. Get
rid of that comparison now that it is clearly not needed anymore.

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoEAP-pwd: Run through prf result processing even if it >= prime
Jouni Malinen [Mon, 24 Jun 2019 20:02:51 +0000 (23:02 +0300)] 
EAP-pwd: Run through prf result processing even if it >= prime

This reduces differences in timing and memory access within the
hunting-and-pecking loop for ECC groups that have a prime that is not
close to a power of two (e.g., Brainpool curves).

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoSAE: Run through prf result processing even if it >= prime
Jouni Malinen [Mon, 24 Jun 2019 20:01:06 +0000 (23:01 +0300)] 
SAE: Run through prf result processing even if it >= prime

This reduces differences in timing and memory access within the
hunting-and-pecking loop for ECC groups that have a prime that is not
close to a power of two (e.g., Brainpool curves).

Signed-off-by: Jouni Malinen <j@w1.fi>
4 years agoMove MAC address randomization enable/disable to helper functions
Eric Caruso [Thu, 30 May 2019 18:10:46 +0000 (11:10 -0700)] 
Move MAC address randomization enable/disable to helper functions

This makes it easier to share this for D-Bus implementation.

Signed-off-by: Eric Caruso <ejcaruso@chromium.org>
4 years agotests: Fix scan_dfs false negative by using common finalizer
Masashi Honma [Tue, 25 Jun 2019 01:51:09 +0000 (10:51 +0900)] 
tests: Fix scan_dfs false negative by using common finalizer

scan_dfs fails with this message.

---------------
wlan0: Country code not reset back to 00: is US
wlan0: Country code cleared back to 00
---------------

This patch fixes the issue.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>