Age | Commit message (Collapse) | Author | Files | Lines |
|
This makes package updates more robust, avoiding in-place replaces of
the plugins.
Previously, if an upgrade transaction was terminated, NetworkManager
library could end up being of a different version than the plugins.
If the user was unfortunate enough to connect using a connection that
required a plugin (say, Wi-Fi), he would be left without a network
connection making it somewhat inconvenient to recover from the botched
upgrade.
This makes the whole situation a little bit less sad.
The VPN plugins are kept where they always have been -- the path is not
qualified with a version number.
|
|
With autotools, we use libtool so that the right libraries are
automatically found. Still, we won't find the right GI typelib.
Add a mechanism so that when make/meson invokes the run-nm-test.sh
runner, it passes the build-root directory.
Also, try to autodetect when invoked manually.
|
|
This is broken -- looks for VPN plugins in a version-qualified path,
which is wrong and break installed VPN plugins.
This reverts commit 6384ad4ee16f31dd103f790bd193c4049d89a6fc.
|
|
This makes package updates more robust, avoiding in-place replaces of
the plugins.
Previously, if an upgrade transaction was terminated, NetworkManager
library could end up being of a different version than the plugins.
If the user was unfortunate enough to connect using a connection that
required a plugin (say, Wi-Fi), he would be left without a network
connection making it somewhat inconvenient to recover from the botched
upgrade.
This makes the whole situation a little bit less sad.
|
|
Plugins go to the arch specific place while conf.d/ and VPN/ are in
lib/. Use the same naming as is used with autoconf.
|
|
|
|
|
|
Supporting PolicyKit required no additional library, just extra code
to handle the D-Bus calls. For that, there was a compile time option
to even stip out that code. Note, that you could (and still can)
configure the system not to use policy-kit. The point was to reduce
the binary size in case you don't need it.
Remove this. I guess, we we aim for such aggressive optimization of
the binary size, we should instead make all device types disablable
at configuration time. We don't do that either and other low hanging
fruits, because it's better to always enable features, unless they
require external dependencies.
Also, the next commit will make more use of NMAuthManager. So, having
it disabled at compile time, makes even less sense.
|
|
Like autotools, use the wrapper script 'run-nm-test.sh' that starts a
separate D-Bus session when needed.
|
|
|
|
|
|
From libnl3, we only used the helper function to parse/generate netlink
messages and the socket functions to send/receive messages. We don't
need an external dependency to do that, it is simple enough.
Drop the libnl3 dependency, and replace all missing code by directly
copying it from libnl3 sources. At this point, I mostly tried to
import the required bits to make it working with few modifications.
Note that this increases the binary size of NetworkManager by 4736 bytes
for contrib/rpm build on x86_64. In the future, we can simplify the code
further.
A few modifications from libnl3 are:
- netlink errors NLE_* are now in the domain or regular errno.
The distinction of having to bother with two kinds of error
number domains was annoying.
- parts of the callback handling is copied partially and unused parts
are dropped. Especially, the verbose/debug handlers are not used.
In following commits, the callback handling will be significantly
simplified.
- the complex handling of seleting ports was simplified. We now always
let kernel choose the right port automatically.
|
|
Fixes: 8a46b25cfa8c33daa8af37bb8103ca02286001b1
|
|
|
|
|
|
XXX was used to either raise attention (NOTE) or to indicate
that this is ugly code that should be fixed (FIXME). The usage
was inconsistent.
Let's avoid XXX and use either NOTE or FIXME.
|
|
|
|
It was released Sep 19 2013 and Ubuntu 14.04 LTS (trusty) ships it.
https://bugzilla.gnome.org/show_bug.cgi?id=792323
|
|
|
|
The check doesn't seem useful, because it does not result in a fallback
or a different build.
Just assume <linux/wireless.h> is valid. In case it is not, we will get a
build failure later. That is just as good.
|
|
The check doesn't seem useful, because it does not result in a fallback
or a different build.
Just assume <linux/nl80211.h> is valid. In case it is not, we will get a
build failure later. That is just as good.
|
|
netlink's API is stable, and strictly defined by the integer values that make
up commands and attributes. There is little reason do disable a netlink feature
based on compile time detection of the kernel headers.
Either kernel supports it, or it will fail with an appropriate response.
Also, support for NL80211_CMD_CRIT_PROTOCOL_START was merge to kernel
in 2013. Maybe, we should now just always assume support (in the kernel
headers is there). Anyway, don't do that yet, but instead avoid the
defines and use the numeric values directly.
|
|
The process for retrieving jansson's soname has been slightly
simplified.
https://mail.gnome.org/archives/networkmanager-list/2018-January/msg00054.html
|
|
|
|
We also unconditionally use them with autotools.
Also, the detection for have_version_script does
not seem correct to me. At least, it didn't work
with clang.
|
|
We always need to declare the linker_script_* variables, because they
are used (unconditionally) as a dependency, even without have_version_script.
|
|
The variable enable_consolekit is used below, outside the if.
We always must set it.
|
|
|
|
The strings holding the names used for libraries have also been
moved to different variables. This way they would be less error
as these variables can be reused easily and any typing error
would be quickly detected.
|
|
In a recent commit 1402fa7487b29fc1ea39a6bf7659fee7f30bb0e0 a new
way for testing Red Hat compatible distributions had been added.
However, this new approach does not use a set of files, it uses a
directory, so this test can be done by using the `test` command
and makes the `check_distro.py` script unnecessary.
https://mail.gnome.org/archives/networkmanager-list/2018-January/msg00031.html
|
|
Avoid using it if the symbols clash is detected.
|
|
The install directories of those targets that match the default
install directories have been removed because they are redundant.
This also allows a simple meson build files and it is unnecessary
to create some paths.
https://mail.gnome.org/archives/networkmanager-list/2017-December/msg00078.html
|
|
Even Gentoo disables this plugin since before 0.9.8 release
of NetworkManager. Time to say goodbye.
If somebody happens to show up to maintain it, we may resurrect it
later.
If "$distro_plugins=ifnet" was set, configure.ac would use that
to autodetect --with-hostname-persist=gentoo. Replace that autodetect
part by checking for /etc/gentoo-release file.
|
|
|
|
The unused-but-set warning has recently been enabled in autotools
(e912b36d95a3c26a6021eeb27e663bd05910a9b4), so this also modifies
meson to enable it.
https://mail.gnome.org/archives/networkmanager-list/2017-December/msg00063.html
|
|
Since meson 0.44 there is a new option type called `array`, which
allows to use an array with different values in those options.
These fits the needs of different options that are used to pass
binary paths, which have multiple paths as an alternate locations.
meson's version has been bumped to 0.44 and different options have
been changed to `array` type options.
https://mail.gnome.org/archives/networkmanager-list/2017-December/msg00062.html
|
|
Both meson and autotools define HAVE_VLAN_FLAG_LOOSE_BINDING to 1 or
0 depending if a small code snippet is compiled. However, this define
is not used anymore.
https://mail.gnome.org/archives/networkmanager-list/2017-December/msg00060.html
|
|
There are three headers `nm-secret-agent-old.h`,
`nm-vpn-plugin-old.h`, and `nm-vpn-service-plugin.h`, which are
named as no introspection headers. However, these files also
join to the rest headers to generate introspection data.
This patch merges those no introspection headers with the public
headers.
|
|
meson is a build system focused on speed an ease of use, which
helps speeding up the software development. This patch adds meson
support along autotools.
[thaller@redhat.com: rebased patch and adjusted for iwd support]
https://mail.gnome.org/archives/networkmanager-list/2017-December/msg00022.html
|