Commit graph

825 commits

Author SHA1 Message Date
Jouni Malinen
7eb33a8f99 tests: Make concurrent_grpform_while_connecting2 more robust
It was possible for this test case to fail due to PBC overlap that was
detected based on previous test case having used PBC. Make that false
positive less likely to happen by explicitly clearing the scan cache on
dev[1].

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2014-06-16 17:07:25 +03:00
Jouni Malinen
2eae05f780 tests: EAP protocol test cases
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-15 19:01:59 +03:00
Jouni Malinen
0954431621 tests: EAP-PAX protocol test cases
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-15 17:36:53 +03:00
Avraham Stern
62fbc0a784 tests: GO configured preferred channels are disallowed
Verify that when all configured preferred channels are disallowed,
the GO is instantiated on a random channel.

Signed-off-by: Avraham Stern <avraham.stern@intel.com>
2014-06-15 00:46:15 +03:00
Avraham Stern
eb383fc48e tests: Autonomous GO random channel selection
Verify that a standalone GO selects a random channel from the social
channels in case no other preference is set.

Signed-off-by: Avraham Stern <avraham.stern@intel.com>
2014-06-14 23:12:33 +03:00
Avraham Stern
8d74469e61 tests: P2P GO negotiation when two peers force different freq
Verify that when trying to form a P2P group but each peer forces a
different frequency, the group formation fails.

Signed-off-by: Avraham Stern <avraham.stern@intel.com>
2014-06-14 23:12:33 +03:00
Avraham Stern
744a214bdb tests: Frequency set as no GO
Verify that when setting frequency as no_go_freq and setting up
autonomous GO, the GO is instantiated on a different frequency, but
when forming a P2P group and becoming a client this frequency can be
used.

Signed-off-by: Avraham Stern <avraham.stern@intel.com>
2014-06-14 23:12:33 +03:00
Avraham Stern
87e5dd0af1 tests: GO with preferred channel and station on a disallowed channel
Verify that when setting up autonomous GO with configured preferred
channel and a station interface is connected on a channel that is
disallowed for P2P, the GO is instantiated on the preferred channel.

Requires MCC.

Signed-off-by: Avraham Stern <avraham.stern@intel.com>
2014-06-14 23:12:33 +03:00
Avraham Stern
b1f0cd8b4c tests: Autonomous GO with preferred channel and station on another channel
Verify that when setting up an autonomous GO with configured preferred
channel and a station interface is on another channel, the GO is
instantiated on the same channel as the station interface and not on the
configured preferred channel.

Signed-off-by: Avraham Stern <avraham.stern@intel.com>
2014-06-14 23:12:32 +03:00
Avraham Stern
72f659238c tests: GO negotiation with forced freq different than station interface
Verify that when a station interface is on one frequency, and GO
negotiation is started in which both sides force a different frequency,
the P2P group is formed on the forced frequency (both as GO and client).

Requires MCC.

Signed-off-by: Avraham Stern <avraham.stern@intel.com>
2014-06-14 23:12:09 +03:00
Haim Dreyfuss
031220832b tests: Autonomous GO force different channel than station interface
After station interface is connected on a specific channel, create
autonomous GO with forced different channel.

Requires MCC.

Signed-off-by: Haim Dreyfuss <haim.dreyfuss@intel.com>
2014-06-14 23:08:54 +03:00
Avraham Stern
23aec8ffd6 tests: GO negotiation with station interface on a P2P-disallowed channel
Verify that when P2P group is formed and a station interface is
connected on a channel that is disallowed for P2P, the group is formed
on a different channel than the BSS (both as GO and client).

Requires MCC.

Signed-off-by: Avraham Stern <avraham.stern@intel.com>
2014-06-14 23:08:53 +03:00
Avraham Stern
4b47d977c5 tests: GO with station interface on a P2P-disallowed channel
Verify that when setting up an autonomous GO and station interface is
connected on a channel that is disallowed for P2P uses, the GO is
instantiated on a different channel than the station mode connection.

Requires MCC.

Signed-off-by: Avraham Stern <avraham.stern@intel.com>
2014-06-14 23:05:17 +03:00
Avraham Stern
9c69efc144 tests: GO negotiation with station interface is connected
Verify that when station interface is connected and GO negotiation is
initiated, the P2P group is formed on the same channel as the station
connection.

Signed-off-by: Avraham Stern <avraham.stern@intel.com>
2014-06-14 23:04:41 +03:00
Haim Dreyfuss
ef59926999 tests: Autonomous GO channel selection following BSS
This test verifies that if a GO is instantiated after a connection of a
station interface, the chosen operating channel is that of the station
interface.

Signed-off-by: Haim Dreyfuss <haim.dreyfuss@intel.com>
2014-06-14 23:04:08 +03:00
Haim Dreyfuss
5fe7a42601 tests: Add wpasupplicant get_mcc helper function
The function returns the number of concurrent channels supported by the
driver.

Signed-off-by: Haim Dreyfuss <haim.dreyfuss@intel.com>
2014-06-14 19:49:17 +03:00
Haim Dreyfuss
57d909eeff tests: Add channels argument to run-all.sh and start.sh
Add an option to run-all.sh and start.sh to get as an argument the
number of concurrent channels that mac80211_hwsim will be loaded with.
To start mac80211_hwsim with more than one channel, the following
parameter should be added to command line: channels=<num_channels>
The default is one channel (no concurrent channels).
The driver should be loaded with multi channel support in order to run
some tests.

Signed-off-by: Haim Dreyfuss <haim.dreyfuss@intel.com>
2014-06-14 19:47:51 +03:00
Jouni Malinen
30d62b7a88 tests: EAP-EKE protocol test cases
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-14 17:27:12 +03:00
Jouni Malinen
e862968d18 tests: Validate parsing and rejection of invalid WFD subelement
This is a regression test for wifi_display_subelem_hex() bounds checking
issue.

Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-13 15:29:48 +03:00
Jouni Malinen
6ec64f3ec8 tests: Truncated GAS query request
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-13 00:27:15 +03:00
Jouni Malinen
2e9f8ee723 tests: EAP-GPSK protocol tests
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-12 01:00:56 +03:00
Jouni Malinen
d5c14b25fd tests: EAP-OTP protocol tests
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-11 21:23:54 +03:00
Jouni Malinen
43c5bc94f5 tests: cfg80211 offchannel TX vs. operating channel
This test case shows an example case where an uncancelled offchannel TX
frame command seems to end up getting following CMD_FRAME TX operations
transmitting on incorrect channel.

Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-11 11:48:02 +03:00
Jouni Malinen
8604a68eec tests: EAP-MD5 protocol tests
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-11 00:54:45 +03:00
Jouni Malinen
18fc8f40fd tests: EAP-LEAP protocol tests
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-11 00:46:38 +03:00
Jouni Malinen
d81731e681 tests: Framework for EAP peer protocol tests
This introduces a minimal RADIUS authentication server using pyrad to
allow simple EAP handler functions to be used for writing protocol tests
for EAP peer methods. This initial commit includes test cases for
EAP-SAKE.

Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-09 00:30:44 +03:00
Jouni Malinen
a47f815ff3 tests: Extend RADIUS protocol testing coverage
Test RADIUS client behavior with various invalid Access-Accept messages.

Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-08 18:17:08 +03:00
Jouni Malinen
9a921f9a84 tests: Verify behavior on unexpected association event
This verifies association event processing in case the association was
not requested by wpa_supplicant.

Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-07 13:35:03 +03:00
Jouni Malinen
b246e2af79 tests: Non-ASCII EAP user identity
This is a regression test for printf_encode() bounds checking issues
that can now be caught under valgrind.

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2014-06-02 17:36:51 +03:00
Jouni Malinen
a7fb2f2f4f tests: Run hostapd-AS under valgrind if requested
Previously, only hostapd-AP and wpa_supplicant processed were run under
valgrind when valgrind testing was enabled. Extend this to include
hostapd as authentication server.

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2014-06-02 16:20:08 +03:00
Jouni Malinen
cf2f369818 tests: cfg80211 scan-for-auth workaround
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-02 00:26:23 +03:00
Jouni Malinen
5186e0c450 tests: nl80211 connect command and AP disconnecting the STA
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-01 23:20:36 +03:00
Jouni Malinen
40bda3805d tests: nl80211 connect command and association reject event
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-01 23:03:14 +03:00
Jouni Malinen
e6485ba764 tests: Remove CONFIG_DRIVER_TEST=y from example config
This was still present in hostapd example configuration even though the
test driver wrapper is not used anywhere in the hwsim testing and there
are no plans of using it either.

Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-01 22:47:44 +03:00
Jouni Malinen
2d6ce4327a tests: rfkill test cases
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-01 16:17:33 +03:00
Jouni Malinen
40602101de tests: FT roams multiple times
This extends testing coverage by running FT-over-air and FT-over-DS
tests for hundred roams.

Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-01 15:48:48 +03:00
Jouni Malinen
c6b6e10578 tests: FT and GTK rekeying
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-01 13:22:24 +03:00
Jouni Malinen
3b25ad4cd6 tests: GTK rekeying
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-01 11:59:23 +03:00
Jouni Malinen
6c87b4b84e tests: PTK rekey enforced by AP
These are similar to the existing test cases where PTK rekey was
triggered by the station, but here a timer on the AP is used as the
trigger.

Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-01 11:47:37 +03:00
Jouni Malinen
8f614cd7a7 tests: Initial mechanism for RADIUS protocol testing
This brings in a minimal pyrad-based RADIUS server to allow various
protocol tests to be run. For now, the server is not adding
Message-Authenticator, so that error case is checked. Additional tests
can be added in the future.

Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-01 00:52:03 +03:00
Jouni Malinen
8b5f1095ce tests: RADIUS interim accounting with unreachable server
This adds coverage for radius_client_list_del() loop that deletes
pending messages related to the specific STA.

Signed-off-by: Jouni Malinen <j@w1.fi>
2014-06-01 00:02:15 +03:00
Jouni Malinen
de93da914f tests: Verify double DISABLE on hostapd with multi-BSS configuration
This used to result in a segmentation fault due to use of freed memory
(mismatch in pointer lifetime between hostapd.c and driver_nl80211.c).

Signed-off-by: Jouni Malinen <j@w1.fi>
2014-05-31 17:16:33 +03:00
Jouni Malinen
bedb6ea54f tests: Verify auto_interworking=1 with partiall matching network
This is a regression test for an issue where scanning sequence could be
terminated if interworking_find_network_match() finds a matching
network, but wpa_s->auto_select is not set. This could stop connection
attempts when auto_interworking=1 is used and the scan results have a
partially matching network and no cred match.

Signed-off-by: Jouni Malinen <j@w1.fi>
2014-05-31 13:25:12 +03:00
Jouni Malinen
0aee8330bd tests: RADIUS server failover
Signed-off-by: Jouni Malinen <j@w1.fi>
2014-05-31 12:43:37 +03:00
Jouni Malinen
6a188ba3fc tests: RADIUS server unreachable with error handling
radius_{auth,acct}_unreachable tested some parts of RADIUS client code
error handling. However, they did not test everything since the send()
calls for unreachable port on localhost did not return an error (that
error was reported on receive side). Extend this with similar test cases
using unreachable IP address to get send() error returns covered as
well.

Signed-off-by: Jouni Malinen <j@w1.fi>
2014-05-30 18:34:39 +03:00
Jouni Malinen
e707f9aac7 tests: P2P Client inviting a device to join a group
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2014-05-29 16:59:51 +03:00
Jouni Malinen
95cf24abcd tests: More protocol testing coverage for P2P invitation messages
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2014-05-29 16:46:59 +03:00
Jouni Malinen
9e669cb5ff tests: Hide stdout from Popen() to avoid undesired stdout prints
ap_cipher_tkip_countermeasures_{ap,sta} printed out the MAC addresses in
stdout which resulted in the debug log not starting the PASS/FAIL
information at the beginning of the line. Hide these unnecessary prints
to avoid that.

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2014-05-29 15:37:18 +03:00
Jouni Malinen
c50f0eac11 tests: P2P Invitation Response protocol tests
This verifies most of the error cases in Invitation Response processing.

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2014-05-29 15:37:17 +03:00
Jouni Malinen
2f3b5fff15 tests: Invitation request with mismatching channel requirements
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
2014-05-29 15:37:17 +03:00