Denis Kenzior
b70f5a239d
scan: Add scan_freq_set utility class
2015-06-10 16:41:35 -05:00
Denis Kenzior
5ae63817b9
scan: Add scan_freq_to_channel
2015-06-10 16:38:49 -05:00
Denis Kenzior
f24b550196
scan: Include supported rates in ranking
2015-06-10 16:38:49 -05:00
Denis Kenzior
9eac017ec4
scan: Parse [extended] supported rates ie
2015-06-10 16:38:45 -05:00
Denis Kenzior
f648a3f0eb
scan: Include BSS Load channel utilization in rank
2015-06-10 16:28:14 -05:00
Denis Kenzior
3f2c728242
scan: Fix signal strength ranking calculation
...
We incorrectly ranked lower signal strength APs higher.
2015-06-10 16:28:14 -05:00
Denis Kenzior
99ac4d1b0d
scan: Make factors static const
2015-06-10 16:28:14 -05:00
Denis Kenzior
7cded805ce
ie: Add [extended] supported rates parser
2015-06-10 16:28:12 -05:00
Denis Kenzior
eee6e7db29
monitor: Fix mandatory calculation in ie_rate
...
The high-order bit should be checked, not the 3rd bit.
2015-06-10 11:33:51 -05:00
Denis Kenzior
baa97b13e9
ie: Add BSS Load parser
2015-06-10 10:39:33 -05:00
Denis Kenzior
47508db472
monitor: Add decoder for tx_bitrate and rx_bitrate
2015-06-08 22:53:47 -05:00
Denis Kenzior
a7e92e300a
monitor: Signal strength in sta_info is signed
...
Signal strength is expressed in negative dBm, so the value extracted is
a signed 8-bit value, not unsigned.
2015-06-08 22:52:00 -05:00
Denis Kenzior
61c39d5a45
TODO: Add 2nd RSNE unit test task
2015-06-08 10:49:02 -05:00
Denis Kenzior
f1d81cd3c5
eapol: Remove unneded TODO comment
2015-06-08 10:46:48 -05:00
Denis Kenzior
fd15212330
build: Add ell/uintset.[ch]
2015-06-08 09:38:52 -05:00
Denis Kenzior
1b4a3f19f3
scan: Add initial BSS rank computation
2015-06-05 18:18:55 -05:00
Denis Kenzior
05c83349c6
scan: Add periodic scanning
2015-06-04 22:32:10 -05:00
Denis Kenzior
f2f1bfcdf9
scan: Move rest of scanning code into scan.c
2015-06-01 09:45:47 -05:00
Denis Kenzior
92c677e715
wiphy: Remove scheduled scan support
...
Refactoring the entire scan code, and this part seems to not be
supported by the target kernels. Revisit / redo this functionality once
things become a bit clearer.
2015-05-31 22:10:35 -05:00
Denis Kenzior
307bea844a
TODO: Mark handle 2nd RSNE task done
2015-05-28 16:01:01 -05:00
Denis Kenzior
6db43588c6
TODO: Mark HW capability task as done
2015-05-28 15:57:05 -05:00
Andrew Zaborowski
00cafb2cc5
wiphy: Check early that a BSS supports compatible ciphers.
...
In the D-bus .Connect call return an error immediately if we
find that there's no common cipher supported between iwd, the
network adapter and the AP. This is to avoid asking the agent
for the passkey if we know the connection will fail.
An alternative would be to only show networks that we can connect
to in the scan results on D-bus but I suspect that would cause
more pain to users debugging their wifi setups on average.
For now, if a passphrase is needed we check once before querying
for passphrase and recheck afterwards when we're about to
associate.
2015-05-27 08:52:01 -05:00
Andrew Zaborowski
4bf109a7ce
test: Avoid input() in simple-agent.py.
...
That function reads a string of python code and immediately executes
it. This required passphrases to be input as python literals, we
can just use a string as passphrase instead.
2015-05-27 08:42:45 -05:00
Denis Kenzior
99cdb860c0
eapol: Simplify install_tk callback
2015-05-21 21:10:21 -05:00
Denis Kenzior
e93dd44607
eapol: Simplify GTK install callback
...
Instead of passing in the RSN/WPA elements, simply pass in the
configured cipher. This will make the implementation of the install_gtk
callback much simpler.
2015-05-21 21:08:47 -05:00
Denis Kenzior
d4cdd74ae0
ie: Add ie_rsn_cipher_suite_to_cipher
2015-05-21 20:58:42 -05:00
Denis Kenzior
d22a1af576
wiphy: Group RSN/WPA generation and setup
2015-05-21 20:43:54 -05:00
Denis Kenzior
d33db27a84
unit: Add additional sanity checks
2015-05-19 00:07:23 -05:00
Denis Kenzior
9992d3aeda
eapol: Extract & keep track of desired ciphers
...
When our own WPA IE or RSN IE are set, extract group and pairwise
ciphers. These ciphers are the ones we desire to use for the secure
connection.
2015-05-19 00:05:53 -05:00
Denis Kenzior
12551b52ff
eapol: Sanity check 2nd RSNE
...
If the second (optional) RSN element is included in Step 3/4 of the
4-way handshake, parse it and perform basic sanity checks
2015-05-18 23:49:11 -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
8593ebaad4
eapol: Set wpa_key_id in WPA1 Step 2 of 2
2015-05-18 14:45:09 -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
fa8c673137
monitor: Print Key ID field in the case of WPA
2015-05-18 12:50:50 -05:00
Denis Kenzior
4f5013515d
monitor: Shorten up printed strings
...
HT Operation Information strings wrap on 80 character terminals, so
shorten up the printed string to avoid that in most cases
2015-05-18 12:50:50 -05:00
Andrew Zaborowski
a227d0b00f
eapol: In GTK step 2 of 2, secure bit is always 1
2015-05-18 12:50:50 -05:00
Andrew Zaborowski
0293b62f2e
wiphy: select TKIP if CCMP not supported
...
If AP does not support CCMP, or if the wiphy does not.
2015-05-18 12:50:50 -05:00
Andrew Zaborowski
a84d232eb1
eapol: Accept 32-byte keys in verify_ptk_3_of_4
...
TKIP key data is 32 bytes long.
2015-05-18 12:37:34 -05:00
Andrew Zaborowski
4b1555c935
scan: Utility to find AP supported ciphers
...
Extracts the supported ciphers masks from the beacon data. If RSN IE
was present, the WPA IE is ignored.
2015-05-18 12:37:34 -05:00
Andrew Zaborowski
27d18cdd96
wiphy: Detect IE type in key install callbacks
2015-05-18 12:34:47 -05:00