Commit Graph

277 Commits

Author SHA1 Message Date
Tim Kourt eeb4f35bcb unit: WSC unfragmented retransmission 2016-12-01 11:33:39 -06:00
Denis Kenzior d26e224bfc unit: Update to new eap_init API 2016-11-15 16:44:24 -06:00
Andrew Zaborowski ea08bcd8fd unit: Fix eapol TLS test after handshake_state changes 2016-11-14 11:20:20 -06:00
Andrew Zaborowski 73e61fa787 unit: Update wsc test with eapol API changes 2016-11-03 10:24:22 -05:00
Andrew Zaborowski f74e6f4261 unit: Update eapol test with eapol API changes 2016-11-03 10:24:12 -05:00
Andrew Zaborowski 955ba74d2d unit: FT 4-Way Handshake eapol test
This also tests that the FT crypto functions work.  For the record
these are the values of the intermediate keys in this test:

ANonce: 33 b2 74 a0 ae c9 e8 5d 61 11 8f 1b 6b 97 77 4e 5b 75 08 37 45
77 dc 14 08 a5 f1 80 c5 d2 e9 fd
SNonce: ac 1e b2 c7 0b 20 8c e6 0a e2 07 b2 38 9e 44 1f ff 39 86 3d 44
9f 81 24 6f e3 6e de 0f 1f 56 ce
PMK-R0: ad b8 81 bf 50 11 1c fd 0b 5c 87 23 42 bf 3b 54 3e 81 d6 3f 3e
18 cf 0a 8d 3d 85 4f d8 07 ad d5
PMKR0Name: cc 62 4a e8 6e 0c 85 25 06 02 22 15 f7 3d 0d 01
PMK-R1: 17 6a 37 92 25 28 72 9f 40 18 06 20 b4 2d 34 2a 7b 8d da 09 4c
a9 cf 84 bd 55 4a 39 bc 5d c1 61
PMKR1Name: de ce 50 a0 9e f0 8c 4e be f2 f1 db e9 67 b4 d4
KCK: e4 2d ee 98 f9 9d fb f8 32 9f 50 41 05 58 35 a2
KEK: 34 5e 22 4e 91 73 8a 97 dd c4 19 53 c5 c8 d7 29
TK: 7c ff bd 35 ce 11 c5 75 1d 4c c6 7a df c2 a2 78
PTKName: 31 e4 94 a6 96 a5 c3 7e 2f 33 9c 47 04 dc ae 05
2016-11-03 10:06:01 -05:00
Andrew Zaborowski c3efd80dd0 unit: Update eapol_sm_set_ap/own_rsn/wpa parameters 2016-10-29 23:09:15 -05:00
Andrew Zaborowski bf65ce9096 unit: Update eapol and WSC tests for new eapol calls 2016-10-15 16:26:41 -05:00
Denis Kenzior 25fb91034a unit: update to the new eapol_start API 2016-09-13 17:38:16 -05:00
Denis Kenzior dc37dca24b unit: Add testing of credential obtained events 2016-09-13 13:33:18 -05:00
Denis Kenzior fb446dcb9f unit: Update to the new EAPoL api 2016-09-12 10:03:37 -05:00
Denis Kenzior e48220c7a6 unit: Verify M8 & EAP-Fail processing 2016-09-09 12:36:49 -05:00
Denis Kenzior 8cd797dced unit: Add test for wsc_build_wsc_done 2016-09-08 21:28:38 -05:00
Denis Kenzior 588f8a555d unit: Add test for wsc_parse_wsc_done 2016-09-08 21:28:26 -05:00
Denis Kenzior 70d3a01bda unit: Add parsing of wsc_credential 2016-08-31 22:36:50 -05:00
Denis Kenzior 4f582753b5 unit: Add test for wsc_parse_m8_encrypted_settings 2016-08-31 22:00:52 -05:00
Denis Kenzior fa8cbeea7c unit: Add test for wsc_build_m8 2016-08-31 14:15:16 -05:00
Denis Kenzior a2b740f161 unit: Add test for wsc_parse_m8 2016-08-31 14:15:11 -05:00
Denis Kenzior 387af676cf unit: Add M6/M7 exchange test 2016-08-31 12:50:53 -05:00
Denis Kenzior f542a18f4f unit: Simplify verification 2016-08-31 12:37:30 -05:00
Denis Kenzior 9353da8bf3 unit: Add test for wsc_build_m7 2016-08-31 11:38:35 -05:00
Denis Kenzior 82b007f7b5 unit: Add test fo wsc_parse_m7 2016-08-31 11:38:22 -05:00
Denis Kenzior f8eb76a93a unit: Add test for wsc_build_m6_encrypted_settings 2016-08-31 11:16:30 -05:00
Denis Kenzior 2f09fbc348 unit: Add test for wsc_parse_m6_encrypted_settings 2016-08-31 11:16:15 -05:00
Denis Kenzior 11cb6e5d35 unit: Add test for wsc_build_m6 2016-08-31 11:14:48 -05:00
Denis Kenzior 6e9b5c912c unit: Add test for wsc_parse_m6 2016-08-31 11:14:48 -05:00
Denis Kenzior 97771f80f1 unit: Add M4/M5 pair to end-to-end wsc test 2016-08-30 23:20:43 -05:00
Denis Kenzior 1820d7c33e merge: M5 parse test 2016-08-30 23:18:19 -05:00
Denis Kenzior ba8e0cd6b7 unit: Add test for wsc_build_m4_encrypted_settings 2016-08-30 13:58:32 -05:00
Denis Kenzior f8af4886c4 unit: Add test for wsc_parse_m4_encrypted_settings 2016-08-30 13:58:06 -05:00
Denis Kenzior a4bf3f3280 unit: Add M5 builder unit test 2016-08-30 09:46:33 -05:00
Denis Kenzior 5c88de6e65 unit: Add M5 parser unit test 2016-08-30 09:46:20 -05:00
Denis Kenzior be1b2a3281 unit: Add end-to-end WSC handshake test
This only checks M1 & M3 message generation for now
2016-08-30 09:22:35 -05:00
Denis Kenzior f05ed4683c unit: Fix up EAP packet identifiers
Reset these to start at a sane value
2016-08-24 21:30:25 -05:00
Denis Kenzior 89207a4c81 unit: Add testing of Authenticator
Just to make sure our private/public/shared and KDF utilities work
properly.
2016-08-23 15:44:45 -05:00
Denis Kenzior 28a57b2eca unit: Make valgrind happy 2016-08-19 16:16:16 -05:00
Denis Kenzior 76e1c73fd3 unit: Add M4 builder test 2016-08-19 15:25:05 -05:00
Denis Kenzior 5322daa79a unit: Add M4 parser unit test 2016-08-19 15:15:53 -05:00
Denis Kenzior 61047664c9 unit: Add M3 builder unit test 2016-08-18 17:59:15 -05:00
Denis Kenzior 951eb26ec0 unit: Add M3 parser unit test 2016-08-18 17:48:42 -05:00
Denis Kenzior b80254375b unit: Add another M2 parser test 2016-08-18 17:29:47 -05:00
Denis Kenzior 2ec8f0e17d unit: Add another M1 build test 2016-08-18 16:36:07 -05:00
Denis Kenzior 8e6c2cea65 unit: Add another M1 parser test 2016-08-18 16:32:06 -05:00
Denis Kenzior 038341edcd unit: Add another DH generator test 2016-08-18 16:25:27 -05:00
Denis Kenzior 84be16c76f unit: Add test for M2 builder 2016-08-17 22:20:46 -05:00
Denis Kenzior ed6e5665d4 unit: Add M2 parser unit test 2016-08-17 22:20:44 -05:00
Denis Kenzior b8e54d2834 unit: Add M1 builder unit test 2016-08-16 15:28:48 -05:00
Denis Kenzior 1c5988b0b8 unit: Update to new wscutil api 2016-08-16 12:31:23 -05:00
Denis Kenzior 62e485839f unit: compare public key to expected value as well 2016-08-15 10:56:37 -05:00
Denis Kenzior a5d3e583ff unit: Add DH5 pubkey generation test 2016-08-15 10:52:44 -05:00
Denis Kenzior 2a4398847c unit: Add test for M1 parser 2016-08-15 10:47:33 -05:00
Denis Kenzior a22e3394fc unit: Update to eapol's protocol version changes 2016-08-10 16:34:19 -05:00
Denis Kenzior 86ad3c4e03 unit: Fix style 2016-08-10 16:31:35 -05:00
Denis Kenzior a5c79de774 unit: Silence some benign warnings 2016-08-10 16:31:04 -05:00
Mat Martineau 9112f7e18e unit: Use PKCS8 private keys
ELL's TLS implementation is being converted to keyctl crypto, which
currently requires PKCS8 formatted keys.
2016-08-10 12:15:41 -05:00
Mat Martineau 60a9638f51 unit: Fix uninitialized variable 2016-08-10 12:14:42 -05:00
Denis Kenzior 63878a84c1 unit: Update to the new eapol api 2016-06-28 18:18:50 -05:00
Denis Kenzior a3820a6f41 unit: Update to the new API 2016-05-11 15:54:16 -05:00
Denis Kenzior 0fde36b0af unit: Update to the new API 2016-02-10 16:55:26 -06:00
Denis Kenzior 98b580a224 unit: Add SHA-256 based KDF unit test 2016-02-10 16:31:01 -06:00
Denis Kenzior fa852d1c48 unit: Remove references to sha1.h 2016-02-10 14:36:27 -06:00
Denis Kenzior 752981fdd8 unit: Update include for pbkdf2_sha1 2016-02-10 14:33:30 -06:00
Denis Kenzior b190283be7 unit: Update header for prf_sha1 2016-02-10 14:17:01 -06:00
Denis Kenzior 694ed08e30 unit: Update header for hmac_sha1 2016-02-10 14:13:25 -06:00
Andrew Zaborowski f23499cc3e unit: Add an EAPoL+EAP failure test 2015-11-02 21:51:07 -06:00
Andrew Zaborowski 4c04db5618 unit: Add an EAPOL+EAP-TTLS+EAP-MD5 scenario test 2015-11-02 21:51:07 -06:00
Andrew Zaborowski 13e4432b5e unit: Add an EAPOL+EAP-TLS test 2015-11-02 21:51:07 -06:00
Andrew Zaborowski 2bccb7e7dc eapol: Remove user_data from __eapol_rx_packet args
Instead of passing the user_data parameter in every __eapol_rx_packet
call to be used by EAPOL in all tx_packet calls, add
eapol_sm_set_tx_user_data function that sets the value of user_data for
all subsequent tx_packet calls.  This way tx_packet can be called from
places that are not necessarily inside an __eapol_rx_packet call.
2015-11-02 21:40:21 -06:00
Andrew Zaborowski ef9b6f41ce eapol: Separate EAPOL header from struct eapol_key
This is needed so we can better handle sending and receiving EAPoL
packets other than EAPoL-Key.
2015-11-02 21:40:21 -06:00
Denis Kenzior d377b4c31f unit: Add unit test for wsc_uuid_from_addr 2015-09-18 17:16:28 -05:00
Denis Kenzior e055460709 wsc: Rename wsc.[ch] to wscutil.[ch] 2015-09-10 23:07:34 -05:00
Denis Kenzior 6a368c0f6e unit: Add ie encapsulation for wsc test 2015-09-10 22:47:50 -05:00
Denis Kenzior 9d79ce45e4 unit: Add build_probe_request unit test 2015-09-09 09:32:12 -05:00
Denis Kenzior 0608443641 unit: Add WSC ProbeRequest parser test 2015-09-09 08:52:52 -05:00
Denis Kenzior 1dd59c05b0 unit: Add beacon frame unit test 2015-07-23 19:42:50 -05:00
Denis Kenzior 10db370b72 unit: Add checking of WFA-Ext attributes
AuthorizedMACs and Registrar Configuration Methods should be checked as
well.
2015-07-23 16:47:34 -05:00
Marcel Holtmann 02c3645c69 unit: Remove two unused variables 2015-07-19 18:43:48 +02:00
Denis Kenzior 8a9062aff3 unit: Add unit test for ProbeResponse parser 2015-07-17 14:54:12 -05:00
Denis Kenzior 89dd69e160 unit: Update to handle WFA Extension recursion 2015-07-15 14:44:52 -05:00
Denis Kenzior 7ed96289f8 unit: Add sanity check for WSC iterators 2015-07-15 12:52:46 -05:00
Denis Kenzior e6cb22f412 unit: add ie concatenation tests 2015-07-09 16:27:49 -05:00
Denis Kenzior d33db27a84 unit: Add additional sanity checks 2015-05-19 00:07:23 -05:00
Denis Kenzior 3b3ed6defe unit: Add another WPA1 TK/GTK handshake test 2015-05-18 14:56:55 -05:00
Denis Kenzior 72babefa33 unit: Update to the new API
This commit also fixes the unit test data for GTK Step 2 since we now
include WPA Key Index in this frame
2015-05-18 14:45:13 -05:00
Denis Kenzior 6500fd4264 unit: Unify verify_* functions 2015-05-18 14:16:45 -05:00
Denis Kenzior 76890aea3c unit: Unify snonce funcs
The snonce function will just copy the nonce value from snonce global
variable.  This lets us avoid multiple functions that do essentially the
same thing.
2015-05-18 14:08:14 -05:00
Denis Kenzior cc97b53528 unit: Add WPA1 GTK Step 2/2 test data + test 2015-05-18 14:04:07 -05:00
Denis Kenzior 1b6240cd05 unit: Add WPA1 GTK Step 1/2 test data + test 2015-05-18 14:04:05 -05:00
Denis Kenzior a684e64dbb unit: Add WPA1 Step 4/4 test data + test 2015-05-18 14:04:03 -05:00
Denis Kenzior bbbd8f67d3 unit: Add WPA1 Step 3/4 test data + test 2015-05-18 14:04:01 -05:00
Denis Kenzior b6677680f2 unit: Add WPA1 Step 2/4 test data + test 2015-05-18 14:03:42 -05:00
Denis Kenzior 039ab49357 unit: Add WPA1 Step 1/4 test data + test 2015-05-18 14:02:48 -05:00
Andrew Zaborowski 6c9bf06f73 unit: WPA+TKIP handshake logic tests. 2015-05-18 13:58:54 -05:00
Andrew Zaborowski 6bb31ac5b4 unit: WPA+TKIP EAPOL-Key frame tests. 2015-05-18 13:58:34 -05:00
Denis Kenzior 2f13c5617b unit: Add call to eapol_verify_gtk_2_of_2 2015-05-05 22:08:06 -05:00
Andrew Zaborowski 30c277f8d6 unit: GTK Handshake tests. 2015-05-05 21:39:19 -05:00
Andrew Zaborowski eae718091d unit: Update to new eapol API 2015-05-05 21:36:52 -05:00
Andrew Zaborowski bb2be272ae unit: Assert eapol_key_validate is valid first
Before running eapol_verify_ptk_2_of_4, assert that eapol_key_validate
did not return NULL.
2015-05-05 21:35:02 -05:00
Denis Kenzior b044385cdc unit: Update to the new EAPoL API 2015-03-19 23:57:37 -05:00
Denis Kenzior d6d24c9d15 unit: Update to the new eapol API 2015-03-19 23:57:36 -05:00
Denis Kenzior effe260028 unit: update to the new eapol API 2015-03-19 23:57:36 -05:00
Denis Kenzior 0a8c1e8aa6 unit: Update to the new API 2015-03-19 20:32:09 -05:00
Ravi kumar Veeramally c573abf3f3 unit: Unit tests for vendor specific IE 2015-03-16 12:17:07 -05:00
Denis Kenzior b43a4610f7 unit: Add setting of AP RSNE 2015-02-24 22:15:30 -06:00
Denis Kenzior 63718343e5 unit: Track the decrypted_key_data_size 2015-02-24 16:00:27 -06:00
Denis Kenzior 95e8c854a5 unit: Fix unused variable warning 2015-02-24 12:09:37 -06:00
Denis Kenzior 5fb648d9fc unit: Add EAPoL state machine test 2015-02-24 11:14:31 -06:00
Denis Kenzior 9c65772551 unit: Fix verification of MIC 2015-02-24 10:43:05 -06:00
Denis Kenzior cdfa59227a unit: Update to the new API 2015-02-23 15:43:35 -06:00
Denis Kenzior 1326f7ab61 unit: Call eapol_verify_mic 2015-02-18 21:13:20 -06:00
Denis Kenzior 3c7bfe9e77 unit: Update includes 2015-02-18 21:12:45 -06:00
Denis Kenzior da5812c0a6 unit: Remove unneeded lines 2015-02-18 21:09:48 -06:00
Denis Kenzior a9ba927eb0 unit: Update includes 2015-02-18 21:02:29 -06:00
Denis Kenzior 7168376c8e unit: Update include 2015-02-18 20:56:57 -06:00
Denis Kenzior cefff31273 unit: Update include 2015-02-18 20:50:58 -06:00
Denis Kenzior 57c51a2e12 unit: Decrypt key data and verify RSN is present 2015-02-17 17:41:08 -06:00
Denis Kenzior d8931f5b58 unit: Remove unneeded function 2015-02-17 17:40:55 -06:00
Denis Kenzior f641fbffb0 unit: Add test-arc4 and populate arc4_skip tests 2015-02-17 16:53:15 -06:00
Denis Kenzior 9fee4a3422 unit: Remove unneeded hexdumps 2015-02-13 20:41:21 -06:00
Denis Kenzior a1d00805a4 unit: Excercise eapol_verify_ptk_4_of_4 2015-02-13 18:38:29 -06:00
Denis Kenzior 190dbd335d unit: Utilize eapol_verify_ptk_3_of_4 2015-02-13 16:50:29 -06:00
Denis Kenzior 8b3b95e889 unit: Update to the new API 2015-02-13 16:09:45 -06:00
Denis Kenzior 729d2d7f2c unit: make sure that MIC calculation succeeds 2015-02-13 14:24:12 -06:00
Denis Kenzior 11de45fa4d unit: Handle key_replay_counter as a uint64_t 2015-02-13 13:55:05 -06:00
Denis Kenzior bacd459caf unit: Add EAPoL WPA2 Step 4 of 4 Frame 2015-02-13 13:49:02 -06:00
Denis Kenzior 3058ee3fd1 unit: Add EAPoL WPA2 Step 3 of 4 Frame 2015-02-13 13:48:51 -06:00
Denis Kenzior 90877476e6 unit: Better describe test data 2015-02-12 22:04:09 -06:00
Denis Kenzior bcedd58249 unit: Add ie RSNE Builder test
This particular set of tests makes sure we can build the compact forms
of RSNE.  The test data are the most compact versions of the RSNE IE
examples found in 802.11, Section 8.4.2.27.1
2015-02-03 21:45:45 -06:00
Denis Kenzior 25d6dba008 unit: Rework unit test 2015-01-28 21:23:16 -06:00
Denis Kenzior 3b618172e2 unit: Remove unneeded whitespace 2015-01-28 21:23:16 -06:00
Jukka Rissanen f7efdeb5e2 unit: Add checking of SSID security settings 2015-01-28 14:15:14 -06:00
Tomasz Bursztyka 33ab01f669 unit: Update to the new eapol_key_validate API
eapol_key_validate will directly return a const pointer if the
validation succeeds.
2015-01-22 12:20:19 -06:00
Tomasz Bursztyka 8fba847b9d unit: Update to the new mpdu_validate API
mpdu_validate will directly return a const pointer if the validation
succeeds.
2015-01-22 12:16:33 -06:00
Denis Kenzior 3b3de7923a unit: Add checking of Group Management Cipher 2015-01-20 00:31:13 -06:00
Denis Kenzior d7cd5dbae7 unit: Add checking of PMKIDs in RSNE tests 2015-01-19 23:27:41 -06:00
Denis Kenzior c2a2f29606 unit: Add Capability field comparisons 2015-01-15 23:59:19 -06:00
Denis Kenzior c8fb0b21f1 unit: Add test case #6 for RSNE parser 2015-01-15 23:59:18 -06:00
Denis Kenzior 7dd7ff7094 unit: Add test case #5 for RSNE parser 2015-01-15 23:59:18 -06:00
Denis Kenzior f8a051794a unit: Add test case #4 for RSNE parser 2015-01-15 23:59:18 -06:00
Denis Kenzior c71b70863c unit: Add test case #3 for RSNE parser 2015-01-15 23:59:18 -06:00
Denis Kenzior a01ecd64fa unit: Add test case #2 for RSNE parser 2015-01-15 23:59:18 -06:00
Denis Kenzior 693260befe unit: Add test case for RSNE parser 2015-01-15 23:59:18 -06:00
Denis Kenzior 8b3ec52c09 unit: Fix memory leaks 2014-12-27 23:49:03 -06:00
Denis Kenzior 9ab468b1c0 unit: Fix memory leak 2014-12-27 23:36:12 -06:00
Denis Kenzior 04efa8fd0b unit: Add 2 steps of 4-way handshake test 2014-12-27 23:06:14 -06:00
Denis Kenzior 812a55177c unit: Add eapol_calculate_mic test 2014-12-27 23:06:12 -06:00
Denis Kenzior da56653f1f unit: Remove hexdumps 2014-12-27 23:04:14 -06:00
Denis Kenzior 7be2fe7cc8 unit: Add MIC calculation test 2014-12-27 22:34:40 -06:00
Denis Kenzior 9ebafd2599 unit: Add another PTK derivation test 2014-12-27 22:34:40 -06:00
Denis Kenzior ebabfff09a unit: Add another PTK Derivation test case 2014-12-27 22:34:39 -06:00