Andrew Zaborowski
d03eeb398c
hwsim: Refactor radio, wiphy and interface tracking
...
Read wiphy addresses from sysfs and perform the wiphy name to wiphy idx
mapping using sysfs. Do this directly on a new radio notification and
stop using new wiphy notifications except for updating the radio names.
Having the wiphy index available synchronously when parsing a new radio
event we store the wiphy index in the radio_info_rec struct directly and
drop struct wiphy_info_rec as there was a 1:1 mapping. With this, and
knowing that all radio_info data is available when new interface
notifications are received, the tracking is simplified because dbus
objects can be created and destroyed within the notification handlers.
We also now store both the wiphy hardware address data and separately
the interface MAC addresses and can use them more appropriately in the
medium implementation.
2017-03-03 11:56:50 -06:00
Andrew Zaborowski
335ee0c31e
hwsim: Add daemon mode with radio information tracking
...
Add a daemon mode that is entered when no action was specified on the
command line. In this mode hwsim tracks information on radios through
the netlink events. The interface to make use of the information is
added in the next patch.
2017-02-23 11:21:18 -06:00
Andrew Zaborowski
0854b90687
netdev: Handle the FT Authentication Response message
...
Parse the second message of the FT transition, validate and build the
third message, the Reassociation Request.
2017-01-12 10:33:40 -06:00
Markus Ongyerth
9afe21f86f
eap-mschapv2: add code for eap method
2016-12-14 22:56:56 -06:00
Markus Ongyerth
dfc852dd3e
unit: Add tests for eap-mschapv2 functions
2016-12-14 22:47:00 -06:00
Markus Ongyerth
1baa6ec04c
eap-mschap: Add crypto functions for mschapv2
...
Add the key-derivation and hash functions required for mschapv2.
The eap-mschapv2 protocol can be implemented on top of these functions.
2016-12-14 22:46:18 -06:00
Denis Kenzior
c78d6fda26
build: Add eap-md5.c to test-eapol requirements
...
Otherwise the EAP-MD5 driver is not found and we get the following
output:
TEST: EAPoL/8021x EAP-TTLS+EAP-MD5 & 4-Way Handshake
Error initializing EAP for ifindex 1
Program received signal SIGSEGV, Segmentation fault.
2016-12-01 13:41:36 -06:00
Tim Kourt
fe25198af6
build: Include eap-md5.c
2016-11-21 11:08:56 -06:00
Andrew Zaborowski
061dad2ff5
Add handshake_state object
...
struct handshake_state is an object that stores all the key data and other
authentication state and does the low level operations on the keys. Together
with the next patch this mostly just splits eapol.c into two layers
so that the key operations can also be used in Fast Transitions which don't
use eapol.
2016-11-03 10:23:41 -05:00
Tim Kourt
301caff89e
makefile: Install iwd.conf into /etc
2016-11-02 15:44:43 -05:00
Marcel Holtmann
88909947e2
build: Remove support for usage of kdbus
2016-10-16 19:41:27 +02:00
Mat Martineau
8642b70b82
build: Remove old ELL private header
2016-10-05 14:58:57 -05:00
Denis Kenzior
6d410b0bec
watchlist: Add watchlist utilities
2016-09-14 20:26:49 -05:00
Denis Kenzior
4518394b0e
eap-wsc: Send credential obtained events
2016-09-13 13:32:47 -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
a5d3e583ff
unit: Add DH5 pubkey generation test
2016-08-15 10:52:44 -05:00
Denis Kenzior
7a19a10528
eap-wsc: Add skeleton
2016-08-10 16:59:15 -05:00
Mat Martineau
b655475385
build: Add symlinks for ell PKCS8 unit test keys
...
ELL's unit test private keys are also used by iwd's unit tests.
2016-08-10 12:15:06 -05:00
Andrew Zaborowski
377df7662c
Add rfkill enable/disable and watch support
...
Add rfkill.c/rfkill.h to be used for watching per-wiphy RFkill state.
It uses both /dev/rfkill and /sys because /dev/rfkill is the recommended
way of interfacing with rfkill but at the same time it doesn't provide
the information on mapping to wiphy IDs.
2016-07-07 13:21:08 -05:00
Andrew Zaborowski
c3f863f2da
knownnetworks: Implement KnownNetworks interface
...
knownnetworks.c/.h implements the KnownNetworks interface and loads the
known networks from storage on startup. The list of all the networks
including information on whether a network is known is managed in
network.c to avoid having two separate lists of network_info structures
and keeping them in sync. That turns out to be difficult because the
network.c list is sorted by connected_time and connected_time changes
can be triggered in both network.c or knownnetworks.c. Both can also
trigger a network_info to be removed completely.
2016-06-21 11:41:37 -05:00
Andrew Zaborowski
15bab067fc
dbus: Remove Manager interface, add AgentManager
...
Move the Agent-related methods to a new interface, AgentManager, and
drop the remaining methods and signals made redundant by the
ObjectManager.
2016-05-23 11:46:59 -05:00
Denis Kenzior
17a8460835
scan: Move scan_ssid_security to iwd.h
...
Security type is used all over the place, so move it out to a more
common place.
2016-05-11 15:54:14 -05:00
Denis Kenzior
f3fc0ea1f9
device: Refactor netdev watches
...
Turn netdev watches into device watches. The intent is to refactor out
netdev specific details into its own class and move device specific
logic into device.c away from wiphy.c
2016-05-05 12:14:59 -05:00
Denis Kenzior
525b6708d9
build: add dbus-name-cache.c
2016-04-26 11:41:55 -05:00
Tim Kourt
855035dc6d
test-runner: Included into the IWD build
2016-04-20 17:42:40 -05:00
Denis Kenzior
fc68ece8d2
build: Make sure linux/kdbus.h is copied
2016-04-13 14:32:11 -05:00
Denis Kenzior
3cbbe2cc42
main: Add backtracing support
...
Ported from oFono @ commit df5d691c39b0ff41d3d98a01db078f7157eb0250.
2016-04-13 14:08:10 -05:00
Andrew Zaborowski
945b48bfc9
Makefile: Symlinks for missing ell files.
...
Add the new dbus-filter.c and ell's version of linux/kdbus.h. Make sure
linux/kdbus.h is under linux/ so the ell code can find it.
2016-04-04 14:31:23 -05:00
Andrew Zaborowski
a64030069e
dbus: Drop unused linux/kdbus.h src/kdbus.c
...
Drop the functions that duplicated ell functionality and the now
unneeded kdbus.h copy.
2016-04-04 14:27:26 -05:00
Denis Kenzior
d86b8d2b83
build: Add key.[ch] in ell
2016-03-09 13:29:04 -06:00
Denis Kenzior
98b580a224
unit: Add SHA-256 based KDF unit test
2016-02-10 16:31:01 -06:00
Denis Kenzior
3320d31ead
sha1: Remove sha1.[ch]
2016-02-10 14:36:14 -06:00
Denis Kenzior
ac4a901518
crypto: move pbkdf2_sha1 to crypto.c
2016-02-10 14:32:27 -06:00
Denis Kenzior
6199960b52
crypto: Move + rework prf_sha1 into crypto.c
2016-02-10 14:16:32 -06:00
Denis Kenzior
064f1e0df9
crypto: Move hmac_sha1 to crypto.c
2016-02-10 14:12:46 -06:00
Andrew Zaborowski
cddb584501
Makefile: create links to ell test cerificates
...
This lets iwd use these certificates in its own unit tests.
Also use $abs_srcdir instead of $top_srcdir. It looks like $top_srcdir
doesn't exist and that's why the destination path for the symlinks
needed ../.. instead of just ..
2015-11-02 21:51:07 -06:00
Andrew Zaborowski
830161399e
eap: Implement the EAP-TTLS method
...
Only EAP as the inner authentication option is supported. According to
wikipedia this is the most popular EAP-TTLS use case, with MD5 as the
inner EAP's method.
2015-11-02 21:40:21 -06:00
Andrew Zaborowski
f55db6a1c4
eap: Implement EAP-TLS
...
Add the EAP-TLS authentication method. Currently, all the credentials
data is read from the provisioning file even though things like the
private key passphrase should possibly be obtained from the dbus agent.
2015-11-02 21:40:21 -06:00
Andrew Zaborowski
3f17fa1159
eap: Add initial EAP API
...
Adds eap.c/eap.h with the initial EAP API definitions. No actual EAP
methods are added in this patch.
2015-11-02 09:40:03 -06:00
Denis Kenzior
028fd39bed
build: Fix make distcheck
2015-10-02 13:40:59 -05:00
Denis Kenzior
d0d509d864
wsc: Add initial PushButton SM
2015-09-28 20:37:07 -05:00
Denis Kenzior
e055460709
wsc: Rename wsc.[ch] to wscutil.[ch]
2015-09-10 23:07:34 -05:00
Denis Kenzior
265994edac
build: Add ell/uuid.[ch]
2015-08-31 21:32:12 -05:00
Marcel Holtmann
fd4d58896e
build: Add ell/tls-record.c
2015-08-25 18:36:32 +02:00
Marcel Holtmann
5e86d91697
build: Add ell/ringbuf.[ch]
2015-08-15 04:22:05 +02:00
Marcel Holtmann
64d70c816d
build: Add ell/pem.[ch], ell/tls.[ch] and ell/tls-private.h
2015-08-11 04:59:16 +02:00
Marcel Holtmann
6371b5d48c
build: Add ell/base64.[ch] and ell/cipher-private.h
2015-08-11 04:58:51 +02:00
Denis Kenzior
d9b2d8151a
nlmon: Add basic WSC pretty-printing capability
2015-07-23 20:49:29 -05:00
Denis Kenzior
7ed96289f8
unit: Add sanity check for WSC iterators
2015-07-15 12:52:46 -05:00
Denis Kenzior
65c8a29370
wsc: Add WSC attribute iterator
2015-07-15 12:52:23 -05:00
Denis Kenzior
0389c60066
wsc: Add initial enum definitions from the spec
2015-07-01 09:46:43 -05:00
Denis Kenzior
d3f0bd5e27
network: Add initial network usage tracking
2015-06-18 05:18:26 -05:00
Denis Kenzior
fd15212330
build: Add ell/uintset.[ch]
2015-06-08 09:38:52 -05:00
Denis Kenzior
9d7f3030f0
storage: Add initial set of utilities
2015-04-27 07:55:09 -05:00
Marcel Holtmann
4c5a846abb
build: Include ell/genl-private.h header
2015-03-21 17:28:34 +01:00
Jukka Rissanen
b46f06a9ad
agent: Initial agent support
...
Init, setup and exit functions.
2015-02-27 09:37:32 -06:00
Denis Kenzior
7f9b8117fd
eapol: Add utility to find GTK KDEs
2015-02-24 17:11:56 -06:00
Denis Kenzior
ad3e0b6bf2
arc4: Remove and move to src/crypto.c
2015-02-18 21:11:37 -06:00
Denis Kenzior
b3e617838d
aes: Remove and move to src/crypto.c
2015-02-18 21:02:09 -06:00
Denis Kenzior
260ef5bb9d
md5: Remove and move to src/crypto.c
2015-02-18 20:56:18 -06:00
Denis Kenzior
02d101e3d7
sha256: Remove and move to src/crypto.c
2015-02-18 20:45:52 -06:00
Denis Kenzior
88d4b36663
build: Add arc4.[ch] to test-eapol sources
2015-02-17 16:54:15 -06:00
Denis Kenzior
ce473bb9d4
build: Add arc4.[ch] to iwmon sources
2015-02-17 16:53:37 -06:00
Denis Kenzior
f641fbffb0
unit: Add test-arc4 and populate arc4_skip tests
2015-02-17 16:53:15 -06:00
Denis Kenzior
dd56283b11
arc4: Add arc4_skip
2015-02-17 16:53:15 -06:00
Denis Kenzior
6916554918
build: Add aes.[ch] to iwmon
2015-02-13 14:57:40 -06:00
Denis Kenzior
4bee529813
build: Add aes.[ch] to unit/test-eapol
2015-02-13 14:55:46 -06:00
Marcel Holtmann
295ca9cd64
build: Add missing.h from ell
2015-02-11 22:09:18 +01:00
Marcel Holtmann
f1f75acdd6
build: Add random.[ch] from ell
2015-02-10 20:45:12 +01:00
Denis Kenzior
735eba83e1
build: Add cipher.[ch] from ell
2015-02-09 09:42:43 -06:00
Jukka Rissanen
f7efdeb5e2
unit: Add checking of SSID security settings
2015-01-28 14:15:14 -06:00
Tomasz Bursztyka
9e3cc8bf42
monitor: Print (de)authentication frame info
...
This patch adds decoding and printing of information contained in
authentication and de-authentication management frames.
2015-01-22 12:24:20 -06:00
Jukka Rissanen
7ec9c468f5
wiphy: Express SSID as an array of chars
...
Handle SSIDs as if they would contain up to 32 octets of opaque data.
2015-01-16 10:54:28 -06:00
Jukka Rissanen
35d0c519d7
scan: Refactor scan start details to scan.c
...
Move the implementation details of triggering wifi scans over netlink
to scan.c from wiphy.c. No functionality is changed by this commit.
2015-01-12 23:09:31 -06:00
Denis Kenzior
096165d142
eapol: Add eapol_calculate_mic
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
d10c4ec9da
build: Compile right files
2014-12-27 22:34:40 -06:00
Marcel Holtmann
19fa80cb11
unit: Add NIST examples for AES-CMAC hashing function
2014-12-27 23:21:41 +01:00
Marcel Holtmann
1ee81e5854
core: Add support for AES-CMAC hashing function
2014-12-27 23:21:10 +01:00
Marcel Holtmann
1d137ffba0
unit: Add test cases for hmac_md5, hmac_sha1 and hmac_256 functions
2014-12-27 07:02:13 +01:00
Marcel Holtmann
872c0e803a
core: Add support for HMAC SHA256 helper function
2014-12-27 06:58:28 +01:00
Marcel Holtmann
b615a6f4e0
core: Add support for HMAC MD5 helper function
2014-12-27 06:44:04 +01:00
Patrik Flykt
e67d919048
unit: Create unit test for SSID UTF8 pretty-printing
...
Write a set of tests that check correct and incorrect UTF8 sequences
at the beginning, middle and end of a byte array. Also verify an all
zeros (hidden) SSID of varying length.
2014-12-19 12:31:03 -06:00
Denis Kenzior
89d0df7d1a
unit: Add initial unit test for EAPoL
2014-12-18 18:11:12 -06:00
Denis Kenzior
2cc842a302
eapol: Add beginnings of EAPoL utilities
2014-12-18 18:10:10 -06:00
Patrik Flykt
bf25abf38d
util: Add SSID to UTF8 pretty-print function
...
Use a static buffer for converting an SSID to an approximate string in
UTF8. Replace each char that is not UTF8 compatible with the UTF8
replacement symbol.
2014-12-18 11:06:48 -06:00
Denis Kenzior
754264fe6a
unit: Add basic mpdu unit test
2014-12-17 16:22:39 -06:00
Tomasz Bursztyka
805619fc9d
core: Add the preliminary logic to parse 802.11 MPDUs
...
It currently focuses on parsing management frames, and specifically its
authentication and deauthentication frames.
2014-12-16 10:53:20 -06:00
Denis Kenzior
9e8654976d
unit: Add unit/test-crypto test
...
And move the PSK generation from passphrase unit tests there
2014-11-14 21:41:59 -06:00
Denis Kenzior
d87d7d469f
crypto: Add passphrase generation utility
2014-11-14 21:41:28 -06:00
Denis Kenzior
e51cac7f74
wiphy: Fix uninitialized var warnings
2014-10-30 00:26:49 -05:00
Denis Kenzior
09c29ba3e2
manager: Add manager skeleton
2014-10-06 22:13:40 -05:00
Denis Kenzior
429ea08202
dbus: Add basic D-Bus plumbing
2014-10-06 22:13:37 -05:00
Marcel Holtmann
49f2d90a44
build: Adjust ELL source list for building with hwdb support
2014-08-16 00:55:26 +02:00
Marcel Holtmann
8cdc43f540
build: Check for a2x binary and use its full path if found
2014-08-15 21:10:58 +02:00
Marcel Holtmann
4a84a19b28
build: Fix build issue with ELL and hashing function for bloom filters
2014-08-15 21:04:04 +02:00
Marcel Holtmann
c50d624e55
monitor: Decode information elements binary into individual tags
2014-08-10 00:14:29 -07:00
Marcel Holtmann
9635f317c0
monitor: Add support for builtin pager functionality
2014-08-09 19:29:48 -07:00
Marcel Holtmann
fda0593b44
build: Add framework for handling manpages in AsciiDoc format
2014-08-08 21:48:53 -07:00
Marcel Holtmann
2d75ab55e7
tools: Add simple utility for interacting with mac80221_hwsim
2014-08-08 15:40:43 -07:00
Marcel Holtmann
d0068dcf4c
monitor: Add support for reading traces from PCAP files
2014-08-05 22:40:43 +02:00
Marcel Holtmann
db60e4d48f
monitor: Add initial version of iwmon utitlity
2014-08-03 06:03:53 +02:00
Marcel Holtmann
999ba12f31
core: Add skeleton for nl80211 setup
2014-07-29 21:25:01 +02:00
Jukka Rissanen
e12bdd02bd
unit: Add information element parser unit test cases
2014-07-15 19:18:08 -05:00
Jukka Rissanen
458ac1aba4
ie: Simple informational element parser
...
The parsing API goes through the byte stream and parses the
TLV (Type, Length and Value) values and avoids data copying.
2014-07-15 19:18:08 -05:00
Jukka Rissanen
eedadd860b
ie: Add information element types
...
IE types are from IEEE Std 802.11 chapter 8.4.2
2014-07-15 15:45:03 -05:00
Marcel Holtmann
37cba460a8
core: Add tracking of network interfaces via RTNL
2014-06-21 13:41:40 +02:00
Marcel Holtmann
c1bc53ff4a
build: Adjust for building with Generic Netlink from ELL
2014-06-20 13:12:26 +02:00
Marcel Holtmann
ad6302830d
build: Adjust for including netlink private header from ELL
2014-06-20 11:51:38 +02:00
Marcel Holtmann
5b0f239d84
build: Adjust source files for internal ELL compilation
2014-05-22 18:48:11 -07:00
Marcel Holtmann
d0594bb878
build: Fix issue with wrongly linked ELL headers
2014-05-20 21:52:54 -07:00
Marcel Holtmann
0dbb04b93f
client: Lookup the private daemon bus
2014-05-20 21:45:03 -07:00
Marcel Holtmann
bf7c041b47
core: Add support for creating private bus
2014-05-20 21:44:13 -07:00
Marcel Holtmann
902fda77a6
build: Add copy of kernel kdbus.h public header
2014-05-20 19:54:16 -07:00
Marcel Holtmann
abf1eb9494
build: Move nl80211.h public header to separate directory
2014-05-20 19:51:36 -07:00
Marcel Holtmann
f70932750e
build: Add extra source files from ELL
2014-05-12 12:07:42 -07:00
Marcel Holtmann
6368a3dcbe
build: Clean unit test binaries during distribution check
2014-05-11 19:27:23 -07:00
Marcel Holtmann
b0cb247d23
build: Add copy of kernel nl80211.h public header
2014-05-11 18:08:33 -07:00
Marcel Holtmann
9b07eb2c48
build: Do not build unit tests without maintainer mode
2014-05-11 16:18:45 -07:00
Marcel Holtmann
2286890184
unit: Add SHA-1 versions of PBKDF2 and PRF test cases
2014-05-11 11:57:04 -07:00
Marcel Holtmann
422fb5ad08
core: Add SHA-1 versions of PBKDF2 and PRF functions
2014-05-11 11:43:42 -07:00
Marcel Holtmann
9bb38e6c55
client: Add skeleton for daemon client utility
2014-05-11 11:01:11 -07:00
Marcel Holtmann
050539e2e3
core: Add skeleton for main daemon
2014-05-11 11:01:11 -07:00
Marcel Holtmann
4639adb1e1
build: Clean out build-aux and ell directories
2014-05-11 11:01:11 -07:00
Marcel Holtmann
6748514804
build: Add support for internal ELL compilation
2014-05-11 11:01:11 -07:00
Marcel Holtmann
344a33268c
Initial revision
2014-04-25 17:57:48 -07:00