Commit Graph

548 Commits

Author SHA1 Message Date
Denis Kenzior b166285f44 network: Add network_get_security() 2016-05-11 22:12:25 -05:00
Denis Kenzior f3ad1492c9 wiphy: Use network_get_path() 2016-05-11 22:12:25 -05:00
Denis Kenzior beea6897d3 network: Add network_get_path() 2016-05-11 22:12:23 -05:00
Denis Kenzior 2ccbf65519 wiphy: Use network_get_netdev 2016-05-11 22:04:09 -05:00
Denis Kenzior 54574dc153 network: Add network_get_netdev 2016-05-11 22:02:49 -05:00
Denis Kenzior 0847e31542 wiphy: Use network_get_ssid 2016-05-11 22:01:44 -05:00
Denis Kenzior 9e4200f2f3 network: Add network_get_ssid 2016-05-11 22:00:58 -05:00
Denis Kenzior 414bc3198d wiphy: Move network object definition 2016-05-11 21:59:32 -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 aa7f88a78c agent: Fix bug in UnregisterAgent 2016-05-06 12:39:35 -05:00
Denis Kenzior c2c4039e79 wiphy: Rename netdev_state to device_state 2016-05-05 12:25:45 -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 9a0d620800 wsc: Refactor includes 2016-05-05 12:07:46 -05:00
Denis Kenzior 0e3495488f wiphy: Move netdev_state enum 2016-05-05 11:40:54 -05:00
Denis Kenzior 08decb340e netdev: Move rta_add_u8
Move closer to where it is used
2016-05-05 11:32:11 -05:00
Denis Kenzior 97be0e87c3 scan: Fix crash
Sometimes the periodic scan is started and stopped before the timeout
was created.  If periodic_scan_stop was called before, the timeout
object was not reset to NULL, which can lead to a crash.
2016-04-13 16:03:33 -05:00
Denis Kenzior 3cbbe2cc42 main: Add backtracing support
Ported from oFono @ commit df5d691c39b0ff41d3d98a01db078f7157eb0250.
2016-04-13 14:08:10 -05:00
Denis Kenzior 45b7323e0a scan: Add support for scan abortions 2016-04-12 13:49:50 -05:00
Andrew Zaborowski 692bfa23fe wiphy: Sanity check before netdev_disassociated
The lost beacon event can be received when iwd thinks netdev is
diconnected if it was connected before iwd started, and then
netdev_disassociated will segfault.
2016-04-11 14:39:06 -05:00
Andrew Zaborowski fb1adcae2a dbus: Use recently added l_dbus_name_acquire
Use the backend-independent l_dbus_name_acquire.
2016-04-04 14:35:52 -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
Andrew Zaborowski 79839dbfd6 dbus: Use native ell kdbus calls
It seems until now dbus.c would always connect to dbus-1 (unless
DBUS_SESSION_BUS_ADDRESS pointed at kdbus) and passing -K only made
iwd create a kdbus bus and not use it.  Now use ell to actually use
kdbus instead of dbus-1 with -K.  Don't use the src/kdbus.c functions
that duplicate ell functionality.  As a side effect the connection
description and the bloom sizes are now the ell defaults.
2016-04-04 14:25:59 -05:00
Rahul Rahul 971d93a9e6 wiphy: Add ConnectedNetwork property to Device
This property is optional.  If the device is connected, it holds the
object path of the connected network.
2016-03-09 16:46:07 -06:00
Rahul Rahul 07f49bc02d dbus: Add API for adding object path value to a dict 2016-03-09 13:24:19 -06:00
Rahul Rahul 492f25c4f6 wiphy: Add Connected property to Network interface
Added a property that will allow one to figure out whether this Network
is currently connected.
2016-03-04 10:20:41 -06:00
Mat Martineau 96e7be28bd wiphy: Removed unused function 2016-02-18 18:21:22 -06:00
Denis Kenzior e2de4423db dbus: Update to the new ell D-Bus APIs 2016-02-11 16:19:55 -06:00
Denis Kenzior ad7bbbb920 wiphy: Record network last-connected time 2016-02-11 16:19:44 -06:00
Denis Kenzior 30d1673ba4 eapol: Add support for SHA-256 based AKMs 2016-02-10 19:18:56 -06:00
Denis Kenzior c35409d73c eapol: Update to the new API 2016-02-10 16:55:15 -06:00
Denis Kenzior e084839b4f crypto: Prepare for SHA256 based PTK derivation 2016-02-10 16:54:55 -06:00
Denis Kenzior 39444ab532 crypto: Add SHA256 based KDF 2016-02-10 16:30:22 -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
Denis Kenzior 962e2e8b2c wiphy: Use SHA256 AKM if available 2016-02-10 13:20:46 -06:00
Denis Kenzior 76c62b0843 scan: Keep track of SHA256 support over PSK/8021X 2016-02-10 12:56:11 -06:00
Denis Kenzior 976bb7ceb1 network: Update network_connected implementation 2016-02-09 17:08:43 -06:00
Denis Kenzior b9402af687 scan: Add scan_ssid_security_to_str 2016-02-09 17:08:03 -06:00
Denis Kenzior 342ad9c61c eapol: Add clarifying comment 2015-11-03 16:26:34 -06:00
Denis Kenzior 05151d762d eap-md5: Convert to dynamic method registration 2015-11-02 21:51:07 -06:00
Denis Kenzior 0816d04873 eap-ttls: Convert to dynamic method registration 2015-11-02 21:51:07 -06:00
Denis Kenzior d8d6e134f1 eap-tls: Convert to dynamic method registration 2015-11-02 21:51:07 -06:00
Denis Kenzior cdfc854056 eap: Add dynamic EAP method registration 2015-11-02 21:51:07 -06:00
Andrew Zaborowski 02eeb82c53 wiphy: Allow connecting to 8021X networks 2015-11-02 21:51:07 -06:00
Andrew Zaborowski 14020b2aa6 eapol: Handle EAPoL-EAP packets 2015-11-02 21:45:43 -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
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 c5e368a264 eap: Implement the EAP-MD5-Challenge 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
Denis Kenzior 88bdd46ec3 eap: Add eap_unregister_method 2015-11-02 21:40:19 -06:00
Denis Kenzior 095eec48ab eap: Make eap_register_method public 2015-11-02 09:54:12 -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
Andrew Zaborowski 27aa254358 scan: Always call the trigger callback
Otherwise dbus Scan calls will not return on success.
2015-11-02 09:24:10 -06:00
Denis Kenzior 5f55c07da9 wiphy: Keep track of supported freqs & bands 2015-10-06 15:23:32 -05:00
Denis Kenzior 22ab0e73a2 scan: Add scan_freq_set_get_bands 2015-10-06 15:23:09 -05:00
Denis Kenzior 4c0d366fcf wsc: Reply and clean wsc_sm on netdev removal 2015-10-06 11:39:01 -05:00
Denis Kenzior b81737a7eb wsc: Add initial scanning logic 2015-10-05 22:37:46 -05:00
Denis Kenzior f62054eb52 scan: Allow cancelation of scan requests 2015-10-05 22:37:12 -05:00
Denis Kenzior 13dde81f5b main: Make valgrind happy 2015-10-02 12:58:38 -05:00
Denis Kenzior 14e40f27e3 netdev: Add netdev attribute getters 2015-10-02 12:58:26 -05:00
Denis Kenzior 8a68ebd65b scan: Move bss_address_to_string to scan.[ch] 2015-10-02 12:06:20 -05:00
Denis Kenzior 6a28baa893 scan: Process Active scan requests 2015-09-30 13:38:41 -05:00
Denis Kenzior e551133960 scan: Add scan_active 2015-09-30 11:36:00 -05:00
Denis Kenzior 46da18f23b wsc: Register WSC interface 2015-09-29 12:15:37 -05:00
Denis Kenzior ca0e3eb940 wiphy: Call netdev watches 2015-09-29 12:14:48 -05:00
Denis Kenzior 6068b3e364 scan: Make nl80211 static 2015-09-28 20:41:02 -05:00
Denis Kenzior 8026921801 main: Rework init/exit logic 2015-09-28 20:41:02 -05:00
Denis Kenzior f8cf9cf154 wsc: Add wsc_init and wsc_exit 2015-09-28 20:41:00 -05:00
Denis Kenzior e1bdd7ce1e netdev: Add netdev watch infrastructure 2015-09-28 20:37:08 -05:00
Denis Kenzior b19a683c36 wiphy: Rename function 2015-09-28 20:37:08 -05:00
Denis Kenzior 907b7d1e07 netdev: Move NETDEV_STATE enum to netdev.h 2015-09-28 20:37:08 -05:00
Denis Kenzior 50cc76e227 dbus: Add dbus_error_not_implemented 2015-09-28 20:37:07 -05:00
Denis Kenzior d0d509d864 wsc: Add initial PushButton SM 2015-09-28 20:37:07 -05:00
Denis Kenzior 46a0c1db00 scan: Extract WSC IEs 2015-09-28 20:37:04 -05:00
Denis Kenzior 0b298dd313 scan: Add debug in scan_exit 2015-09-22 14:07:27 -05:00
Denis Kenzior 3f7e6e86bb scan: Reset nl80211 when scan_exit called 2015-09-22 14:07:02 -05:00
Denis Kenzior f064230afa scan: Add scan request queue
For queuing up Active & Passive scans from other modules inside IWD
2015-09-22 14:06:40 -05:00
Denis Kenzior b000c702b0 scan: Refactor scanning code
In preparation for adding active scans
2015-09-22 14:04:08 -05:00
Denis Kenzior c37e700921 wsc: Add wsc_uuid_from_addr 2015-09-18 17:16:09 -05:00
Denis Kenzior e055460709 wsc: Rename wsc.[ch] to wscutil.[ch] 2015-09-10 23:07:34 -05:00
Denis Kenzior 8261dab46b ie: Add ie_tlv_encapsulate_wsc_payload 2015-09-10 22:30:43 -05:00
Denis Kenzior c2aa596dd4 ie: Tweak function signature 2015-09-10 22:29:58 -05:00
Denis Kenzior c23b1e3bc0 wsc: Add wsc_build_probe_request utility 2015-09-09 09:31:52 -05:00
Denis Kenzior 241e459ae7 wsc: Add wsc_parse_probe_request 2015-09-09 08:52:49 -05:00
Denis Kenzior ab33a22149 wsc: Handle ATTR_REQUESTED_DEVICE_TYPE 2015-09-09 08:52:49 -05:00
Denis Kenzior a1c198ab11 wsc: extract ATTR_CONFIGURATION_ERROR 2015-09-08 21:09:04 -05:00
Denis Kenzior b0e306b407 wsc: Extract ATTR_ASSOCIATION_STATE 2015-09-08 21:07:17 -05:00
Denis Kenzior 9a3e78d1fc wsc: Add extractor for ATTR_REQUEST_TYPE 2015-09-08 20:45:52 -05:00
Denis Kenzior 3eee3d47ee wsc: Add Beacon frame parser 2015-07-23 19:42:29 -05:00
Denis Kenzior 86252a98cc wsc: Parse additional attributes for ProbeResponse
Probe Response messages can contain additional attributes tucked away
into the WFA-Vendor specific attribute.  Parse these attributes while
making sure the order is as expected.
2015-07-23 16:47:34 -05:00
Denis Kenzior 2f5a62d85c wsc: Add additional comment 2015-07-23 16:47:34 -05:00
Denis Kenzior 01b5445e94 wsc: Add SelectedRegistrar attribute checking 2015-07-23 16:47:34 -05:00
Marcel Holtmann 07301eb74f wsc: Cast data pointer into char for UTF-8 validation 2015-07-19 18:44:40 +02:00
Denis Kenzior fa9b0e721b wsc: Add initial parser for ProbeResponse messages 2015-07-17 14:53:48 -05:00
Denis Kenzior 2cc0be5482 wsc: Add initial set of extractor functions 2015-07-17 14:53:21 -05:00
Denis Kenzior cd465852b4 wsc: Add initial message parser framework 2015-07-17 14:52:46 -05:00
Denis Kenzior ad08dfad33 wsc: Add WFA extension iterator + recurse 2015-07-15 14:44:28 -05:00