|Age||Commit message (Collapse)||Author||Files||Lines|
If a monitor interface is created, NM will grab that interface
and change it to station mode. That's not very nice.
(cherry picked from commit 751a37bf433eb79653b6d498eea1ab01047dfd27)
We cannot abort the construction of a GLib object instance
like we did for NMDeviceWifi and NMDeviceOlpcMesh when
Instead, check the capabilities first (in the factory method)
and only create the object instance when the device can be handled.
(cherry picked from commit 044de4cea2c82d289033e75f1e12c7d346dc5537)
Instead of hacky stuff in the Manager, let plugins themselves indicate
which links should be ignored (because they are really child links that
are controlled by a different device that the plugin handles).
(cherry picked from commit 8fa0f4690f6f97b046399e33de1d1d6d81235636)
Instead of looping over all plugins and asking each plugin whether it
can handle a link or a connection, have them advertise the link and
connection types they support, and use that when creating new devices.
(cherry picked from commit 71bde20c302ba321688f203a8c5cd1e2d296f0d1)
config.h should be included from every .c file, and it should be
included before any other include. Fix that.
(As a side effect of how I did this, this also changes us to
consistently use "config.h" rather than <config.h>. To the extent that
it matters [which is not much], quotes are more correct anyway, since
we're talking about a file in our own build tree, not a system
In preparation for internal device types exposing factories too, it's
easier to have the device type that the factory creates be returned
by the factory object instead of the plugin, because internal device
types don't have plugins.
This requires that we create the factory objects earlier, which
further requires that any operations that trigger signals must be
moved out of each factory's construction path to a separate start()
Clean up some of the cross-includes between headers (which made it so
that, eg, if you included NetworkManagerUtils.h in a test program, you
would need to build the test with -I$(top_srcdir)/src/platform, and if
you included nm-device.h you'd need $(POLKIT_CFLAGS)) by moving all
GObject struct definitions for src/ and src/settings/ into nm-types.h
(which already existed to solve the NMDevice/NMActRequest circular
Update various .c files to explicitly include the headers they used to
get implicitly, and remove some now-unnecessary -I options from
Instead of having a GObject property and a factory function to get
the plugin's device type, just use the factory function, since it
always has to be around.
Make Wi-Fi support a plugin using the new device factory interface.
Provides a 7% size reduction in the core NM binary.
NM: 1154104 1071992 (-7%)
Wi-Fi: 0 110464
(all results from stripped files)