On Thu, 2017-11-30 at 15:05 +0100, Andrew Zaborowski wrote: Hi Andrew,
Can we make it that IWD or SUPPLICANT can be both enabled (optionally) at configure time, and select the right backend via a configuration like main.wifi=iwd|wpa-supplicant in NetworkManager.conf?That will probably require moving the wpa_supplicant support to a new subclass of NMDeviceWifi so let me try to do that first. I'll then split the patch into pieces and send a new version.
Ah, I see. I didn't think of that. Maybe it's simpler to have just two indpendent types NMDeviceWifi (for supplicant) and NMDeviceIwd. They both can implement the D-Bus interface org.freedesktop.NetworkManager.Device.Wireless, there is no strong requirement that they share a common parent class. I was thinking that "nm-wifi-factory.c"'s create_device() would either call nm_device_wifi_new() or nm_device_iwd_new(), depending on some nm_config_data_get_value (nm_config_get_data_orig (NM_CONFIG_GET), "main", "wifi-backend") Common code should be shared, but it's not clear that you need a common parent GObject type for that.
Say " (experimental)"? Since the plugin doesn't include any new public API, every misbehavior is just a bug that we can fix later. We don't commit to new API here. So, "experimental" is just cosmetic to set user expectations straight.Ok, do you prefer that this be enabled by default so that it gets build-tested and the iwd backend be guarded by the NetworkManager.conf setting (also with "experimental" comment)?
I would disable it by default (at least initially). best, Thomas
Attachment:
signature.asc
Description: This is a digitally signed message part