From: Andrew Zaborowski <balr...@gmail.com> Connecting to 802.1x wifi networks preprovisioned as IWD config files doesn't work very well currently as you have to have an NM Connection with the same SSID and security type set to WPA-Enteprise for the backend to command IWD to connect. For that you need to create a connection and fill in all the EAP details just so NM accepts the connection settings.
This is a propsal to add an IWD-specific settings plugin that presents IWD's KnownNetworks as existing Connections to dbus clients so that information is not duplicated between IWD and NM config files (although, since IWD won't save many of the settings that are important to NM it may still be a good idea to have NM config files for those connections, but without duplication), and later allow deleting configured networks. The patches just implement a minimal plugin with a few open questions. If NMIwdManager was to create and remove the connection objects without registering as a plugin it couldn't override the connection operations and they'd still be performed by the keyfile plugin. But I'm not sure where it's best to place the plugin within the source or whether it should be built as a separate binary. Also whether the connections created should be somehow locked to only IWD devices when NM is configured to use both the IWD backend and the wpa_supplicand backend for different devices -- connection.interface-name and 802-3-ethernet.mac-address would only allow one interface to be specified. Having devices using both backends is a really strange configuration and I don't see much value in supporting it. Andrew Zaborowski (8): wifi: Move get_connection_iwd_security to nm-wifi-utils.c wifi: Move KnownNetworkData to nm-iwd-manger.h iwd: Emit known-networks-changed signals from NMIwdManager iwd: Add nm_iwd_manager_forget_network API settings: Allow loading plugins after startup libnm-core: 8021x: Allow a new eap value "extern" settings: Add an IWD plugin iwd: Register the IWD settings plugin Makefile.am | 6 +- libnm-core/nm-setting-8021x.c | 3 +- src/devices/wifi/nm-device-iwd.c | 35 +---- src/devices/wifi/nm-iwd-manager.c | 88 +++++++++++-- src/devices/wifi/nm-iwd-manager.h | 10 ++ src/devices/wifi/nm-wifi-utils.c | 23 ++++ src/devices/wifi/nm-wifi-utils.h | 3 + src/settings/nm-settings.c | 66 ++++++---- src/settings/nm-settings.h | 4 + src/settings/plugins/iwd/nms-iwd-connection.c | 173 +++++++++++++++++++++++++ src/settings/plugins/iwd/nms-iwd-connection.h | 43 +++++++ src/settings/plugins/iwd/nms-iwd-plugin.c | 176 ++++++++++++++++++++++++++ src/settings/plugins/iwd/nms-iwd-plugin.h | 37 ++++++ 13 files changed, 604 insertions(+), 63 deletions(-) create mode 100644 src/settings/plugins/iwd/nms-iwd-connection.c create mode 100644 src/settings/plugins/iwd/nms-iwd-connection.h create mode 100644 src/settings/plugins/iwd/nms-iwd-plugin.c create mode 100644 src/settings/plugins/iwd/nms-iwd-plugin.h -- 2.14.1 _______________________________________________ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list