3
0
mirror of https://git.kernel.org/pub/scm/network/wireless/iwd.git synced 2024-11-05 11:39:24 +01:00
Commit Graph

255 Commits

Author SHA1 Message Date
Marcel Holtmann
fd181839f7 build: Introduce $(eap_sources) for splitting EAP from daemons 2018-09-14 16:35:04 +02:00
Marcel Holtmann
502aac073f tools: Add configure option and D-Bus policy file for hwsim utility 2018-09-14 15:24:15 +02:00
Marcel Holtmann
c9b460f5cc build: Add D-Bus policy for Ethernet authentication daemon 2018-09-14 15:07:30 +02:00
Marcel Holtmann
706f0775c3 build: Add option to disable the wireless daemon binary 2018-09-14 14:36:07 +02:00
Marcel Holtmann
5efc88f3af build: Add systemd service configuration for Ethernet daemon 2018-09-14 14:09:53 +02:00
Marcel Holtmann
a053084228 build: Prepare the systemd configuration option for extensions 2018-09-14 14:07:34 +02:00
Marcel Holtmann
f81570eb75 build: Enable all optional features during distcheck 2018-09-14 13:53:55 +02:00
Marcel Holtmann
0071ecef8b build: Add skeleton for Ethernet authentication daemon 2018-09-14 13:47:51 +02:00
Marcel Holtmann
8da33905f4 build: Add configuration for building internal utilities 2018-09-14 13:46:55 +02:00
Marcel Holtmann
f2d4b9afbd build: Move plugin conditionals closer to the daemon sources 2018-09-14 13:46:15 +02:00
Marcel Holtmann
a01bbcfc19 build: Split noinst_PROGRAMS and libexec_PROGRAMS statements 2018-09-14 13:40:21 +02:00
Marcel Holtmann
b6720d52ac build: Fix source file entries for hwsim and test-runner 2018-09-14 13:33:08 +02:00
Denis Kenzior
641e71a02f station: Add skeleton 2018-08-31 20:24:15 -05:00
James Prestwood
26246e75c8 unit: tests for SAE 2018-08-15 13:26:58 -05:00
James Prestwood
220fb61128 sae: implementation
SAE (Simultaneous Authentication of Equals) takes place during
authentication, and followed by EAPoL/4-way handshake. This
module handles the entire SAE commit/confirm exchange. This was
done similar to eapol.

SAE begins when sae_register is called. At this point a commit
message will be created and sent out which kicks off the SAE
authentication procedure.

The commit/confirm exchange is very similar to EAP-PWD, so all
the ecc utility functions could be re-used as-is. A few new ecc
utility functions were added to conform to the 80211 'blinding'
technique for computing the password element.
2018-08-13 20:40:59 -05:00
Marcel Holtmann
28573c90d1 build: Add support for systemd D-Bus activation 2018-08-06 22:37:22 +02:00
Tim Kourt
efe45e4180 client: add client support for AdHoc 2018-07-30 09:00:57 -05:00
Tim Kourt
0fec184eae client: add client support for AP 2018-07-30 09:00:57 -05:00
Tim Kourt
bb1a0adec7 client: introduce proxy property utils
All of the shared functions related to the processing of the
proxy properties will reside in this collection.
2018-07-25 11:21:14 -05:00
Andrew Zaborowski
2ca2d080d5 build: Add fswatch.[ch] from ell 2018-07-23 11:45:29 -05:00
Denis Kenzior
c37146d403 wsc: Rework wsc_init & wsc_exit
- wsc module does not need nl80211 any longer, so remove it.
- Move wsc_init & wsc_exit declarations to iwd.h and remove wsc.h
- re-arrange how wsc_init & wsc_exit is called inside main.c.
2018-07-17 19:19:09 -05:00
James Prestwood
55cb9aa2e9 adhoc: adhoc implementation 2018-07-17 16:46:18 -05:00
Denis Kenzior
1d40c6cee7 build: Add util.c to test-eapol
src/eapol.c now uses util_*
2018-06-22 14:40:46 -05:00
Denis Kenzior
180a893c0c unit: Update to the new EAP API 2018-06-14 20:01:22 -05:00
Denis Kenzior
a2d8054218 eap: Separate private bits into eap-private.h 2018-06-14 20:01:19 -05:00
Denis Kenzior
5616962bb2 unit: Update scan_get_security usage to new API 2018-05-24 19:22:16 -05:00
Marcel Holtmann
3d69c3b134 build: Remove readline header files from sources listing 2018-05-05 09:19:01 +02:00
Tim Kourt
85a1678147 client: introduce agent 2018-05-03 16:00:23 -05:00
Tim Kourt
d1a00d9b34 client: implement agent-manager API 2018-05-03 16:00:23 -05:00
James Prestwood
d10369cf60 eap-pwd: core EAP-PWD code 2018-05-03 10:50:30 -05:00
James Prestwood
49d313ab68 unit: Add ECC math sanity tests 2018-05-03 10:48:46 -05:00
James Prestwood
fdee72dffc ecc: added ecc implementation for EAP-PWD
The file, src/ecc.c was taken from the bluez project:
https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/src/shared/ecc.c

There were minor changes made, e.g. changing some functions to globals
for access in EAP-PWD as well as removing some unneeded code. There was
also some code appended which allows for point addition, modulus inverse
as well as a function to compute a Y value given an X.
2018-05-03 10:27:53 -05:00
Denis Kenzior
ab9c5670f7 build: Add new ell files 2018-04-19 10:23:54 -05:00
Denis Kenzior
6de76f97b4 build: Add net.[ch] from ell 2018-04-10 00:18:11 -05:00
James Prestwood
c0739c1965 eap-gtc: add EAP-GTC method implementation 2018-04-04 09:42:28 -05:00
Tim Kourt
7501d9372b unit: network args parser validation 2018-03-28 14:33:00 -05:00
Marcel Holtmann
fe3a85ae05 build: Add extra dependency for internal ELL library 2018-02-11 21:03:36 +01:00
Marcel Holtmann
c31244ddec build: Add support for installing systemd service unit 2018-02-10 18:42:43 +01:00
Marcel Holtmann
9f19cc3d25 build: Add option to disable monitor and client utilities 2018-02-09 17:14:31 +01:00
Marcel Holtmann
1f7d44056c build: Separate between D-Bus policy and data directory 2018-02-09 17:01:31 +01:00
Marcel Holtmann
b4c9e63a8b build: Make D-Bus policy configuration install optional 2018-01-29 02:55:54 -08:00
Marcel Holtmann
0cf589e13d build: Don't provide iwd/main.conf during make install 2018-01-29 02:20:52 -08:00
Marcel Holtmann
980f6f3645 main: Rename iwd/iwd.conf into iwd/main.conf 2018-01-29 02:13:41 -08:00
Tim Kourt
20e74e8679 eap-peap: Introduce Protected EAP support 2018-01-24 11:19:56 -06:00
Denis Kenzior
0565c484d1 build: Add key-private.h from ell to build 2018-01-23 15:27:02 -06:00
James Prestwood
4911ba1e59 unit: updated Makefile to build simauth.c for eap-sim 2017-12-13 17:13:29 -06:00
James Prestwood
5d6118681d plugins: added ofono plugin to build 2017-12-13 11:53:42 -06:00
Denis Kenzior
dd867a1e13 build: Add new dbus-client.[ch] files from ell 2017-12-06 15:05:06 -06:00
James Prestwood
074fb7df56 make: added hardcoded SIM plugin to build 2017-12-06 15:04:07 -06:00
James Prestwood
6c95faf88f make: added simauth source to build 2017-11-30 08:49:49 -06:00
James Prestwood
8c6099fb9e plugins: added plugin module to build 2017-11-28 13:30:44 -06:00
James Prestwood
517df48101 make: plugin system for build
Preperation for ell plugins. New plugins can be added to
builtin_sources/builtin_modules, which will be added
to src/builtin.h when it is generated.
2017-11-28 13:20:33 -06:00
Andrew Zaborowski
525ecbb113 unit: Remove pbkdf2_sha1 tests
They can now be moved to ELL.
2017-10-09 14:34:31 -05:00
Andrew Zaborowski
47ae1c2f06 unit: Add IE order tests in test-mpdu 2017-09-22 12:15:37 -05:00
Denis Kenzior
ac819aea67 build: Add file.[ch] from ell 2017-09-22 10:07:06 -05:00
Andrew Zaborowski
212bc08104 ap: Add AP mode api
Very basic WPA2-PSK only access point mode API with stubs of the start and
stop functions.
2017-09-12 14:29:34 -05:00
Andrew Zaborowski
f05c3c30d1 eapol: Add eapol_frame_watch_add / remove
Allow other files to receive EAPoL frames on specified interfaces.
2017-09-07 16:16:42 -05:00
Marcel Holtmann
5cbd0aa1d9 build: Make sure iwd-dbus.conf gets included in the distribution 2017-08-30 23:37:19 +02:00
Marcel Holtmann
aa668df7c9 build: Remove readline/readline.h and readline/history.h from SOURCES 2017-08-30 23:29:18 +02:00
James Prestwood
6aaa917dde aka: EAP-AKA protocol implementation 2017-08-21 18:20:10 -05:00
James Prestwood
b2fe7fe230 unit: EAP-SIM unit tests
Several unit tests for EAP-SIM functionality:
 - Get/Add attributes
 - MAC calculation
 - PRNG test
2017-08-21 18:03:13 -05:00
James Prestwood
283717b22f sim: EAP-SIM protocol implementation 2017-08-21 17:43:55 -05:00
Denis Kenzior
d67f8acd57 build: Add new files from ell 2017-08-14 16:32:35 -05:00
Tim Kourt
50d04e99a7 Makefile: install iwd-dbus.conf 2017-05-04 18:03:13 -05:00
Tim Kourt
cb40e36ea1 client: introduce psk agent manager 2017-05-02 14:11:00 -05:00
Tim Kourt
b1d261a790 client: add WSC argument completers 2017-05-01 13:42:21 -05:00
Tim Kourt
ee369bacc9 client introduce wsc interface 2017-05-01 13:40:14 -05:00
Tim Kourt
60c4025cdf client: Introduce adapter interface 2017-04-27 15:11:59 -05:00
Tim Kourt
0be4a82946 client: Remove excluded client/device.h 2017-04-21 15:00:57 -05:00
Tim Kourt
d35322d347 client: Introduce known networks interface 2017-04-21 15:00:57 -05:00
Tim Kourt
a5db4630ec client: Introduce network interface 2017-04-18 17:21:48 -05:00
Tim Kourt
9a8ffc473a client: Add device interface 2017-04-13 13:22:00 -05:00
Tim Kourt
db679448bc client: Introduce command files
The purpose of these files is to encapsulate all of
the command processing functionality
2017-04-11 16:48:15 -05:00
Tim Kourt
21bebbd581 client: Introduce display files
The purpose of these files is to encapsulate all of
the display related functionality
2017-03-24 09:06:30 -05:00
Tim Kourt
17013fc5c7 build: Add readline into the build 2017-03-23 17:50:58 -05:00
Tim Kourt
f3a60f0182 makefile: Add dbus-proxy into the build 2017-03-23 17:32:13 -05:00
Lukas Rusak
4f090aede3 build: remove kdbus 2017-03-17 22:34:03 -05:00
Marcel Holtmann
abca195917 build: Include iwd.conf in distribution 2017-03-07 22:24:59 +01:00
Marcel Holtmann
39483e638d build: Disable manual page generation if a2x is not available 2017-03-07 22:06:50 +01:00
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