| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
Currently ipv4 and ipv6 settings share the ifcfg plugin vars for the
dhcp-hostname and dhcp-send-hostname options (DHCP_HOSTNAME and
DHCP_SEND_HOSTNAME). Add brand new vars DHCPV6_HOSTNAME and
DHCPV6_SEND_HOSTNAME to have var-property one to one mappings.
|
| |
|
|
|
|
| |
Fixes: 78ca961c0fd0e5b563e33306299bd1058fa2e289
|
| |
|
|\
| |
| |
| | |
https://bugzilla.gnome.org/show_bug.cgi?id=773482
|
| |
| |
| |
| | |
This allows to remove from the main package the PPP dependency.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Moving the PPP manager to a separate plugin that is loaded when needed
has the advantage of slightly reducing memory footprint and makes it
possible to install the PPP support only where needed.
https://bugzilla.gnome.org/show_bug.cgi?id=773482
|
| |
| |
| |
| | |
The new function will be used to validate other plugins we load.
|
|/
|
|
|
| |
Even if it's called only from one place, it can be considered an
utility function.
|
|
|
|
| |
Adjust the travis script accordingly.
|
| |
|
|\
| |
| |
| | |
https://bugzilla.redhat.com/show_bug.cgi?id=1394500
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
nm_platform_ip4_address_sync() tries to apply the new configuration
with the minimum effort and doesn't delete addresses if they are
already present on the interface. This can break the ordering, as an
existing address would be promoted by kernel to primary, even if it
was last in our configuration.
Add some logic to ensure the correct order of addresses is always
enforced. This fixes situations like:
# nmcli connection add type ethernet ifname eth0 con-name t \
ipv4.method manual \
ipv4.addresses "1.1.1.1/24,1.1.1.2/24,1.1.1.5/24"
# nmcli connection up t
=> addresses are applied in the right order:
inet 1.1.1.1/24 brd 1.1.1.255 scope global eth0
inet 1.1.1.2/24 brd 1.1.1.255 scope global secondary eth0
inet 1.1.1.5/24 brd 1.1.1.255 scope global secondary eth0
# nmcli connection mod t ipv4.addresses "1.1.1.5/24,1.1.1.2/24,1.1.1.1/24"
# nmcli device reapply eth0
=> order is wrong:
inet 1.1.1.2/24 brd 1.1.1.255 scope global eth0
inet 1.1.1.5/24 brd 1.1.1.255 scope global secondary eth0
inet 1.1.1.1/24 brd 1.1.1.255 scope global secondary eth0
Co-Authored-By: Thomas Haller <thaller@redhat.com>
|
| |
| |
| |
| |
| | |
Don't change the address order from configuration, but instead sort
addresses just before returning them to clients.
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
Don't change the address order from configuration, but instead sort
addresses just before returning them to clients.
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When multiple address are assigned to an interface and the kernel must
decide which one should be used to communicate with a given IP, it
chooses the most specific one in the same subnet as the
destination. In case there are multiple addresses in the same subnet,
the primary address is choosen, which is basically the first one that
was added.
With commit 719742513705 ("device: expose NMIP4Config:addresses in
stable/defined sort order") we sorted all the addresses before
committing the configuration, with the side effect that the order no
longer respected the one in the user configuration.
Instead, change the sort function to keep the subnet order unchanged.
|
|
|
|
| |
Fixes: 01a20015e0bfd6d7c9aa872cfa31c4642ccb6825
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since commit 9fafb382db273160a5e9e10ff84f8a4d2af220d3, we would
explicitly set libnl's socket buffer size to 4*getpagesize().
That is also the default of libnl itself. Additionally, we would
workaround too small buffers by increasing the buffer size up to 512K.
A too small buffer causes messages to be lost. Usually, that only
results in a cache-resync, which isn't too bad. Lost messages are however
a problem if the lost message was an ACK that we were waiting for.
However, it is rather unlikely to happen, because it's expected that
the buffer size gets adjusted already when the cache is filled initially,
before any other requests are pending.
Still, let's increase the default buffer size to 32K, hoping that this
initial value is already large enough to avoid the problem altogether.
Note that iproute2 also uses a buffer size of 32K [1] [2].
Alternatively, we could use MSG_PEEK like systemd does [3]. However,
that requires two syscalls per message.
[1] https://patchwork.ozlabs.org/patch/592178/
[2] https://git.kernel.org/cgit/linux/kernel/git/shemminger/iproute2.git/tree/lib/libnetlink.c?id=f5f760b81250630da23a4021c30e802695be79d2#n274
[3] https://github.com/systemd/systemd/blob/cd66af227416eb7b9f150b92abff4e4a3e92253b/src/libsystemd/sd-netlink/netlink-socket.c#L323
|
|
|
|
|
|
|
|
| |
connection.autoconnect
Autoconnect property doesn't really matter for the applied
connection. Whitelist it from the properties and allow changing
it during reapply.
|
|
|
|
|
|
| |
This only saves some typing at a few places. In general, avoid
static variables, so drop it in favor of a stack-allocated
cache_id.
|
|
|
|
|
|
|
|
|
| |
When disabling link autonegotiation and setting speed and duplex manually,
the user is alone: no check is performed against supplied values.
So, the user is supposed to check that the device supports those values.
Explicit this in nm-settings man page.
[fgiudici@redhat.com: added the commit message]
|
|
|
|
|
|
|
|
|
|
| |
buffer size
We don't want to enable MSG_PEEK due to the overhead. But when we detect
that we just lost a message due to MSG_TRUNC, increase the buffer size and
retry.
See-also: https://github.com/thom311/libnl/commit/55ea6e6b6cd805f441b410971c9dd7575e783ef4
|
|\
| |
| |
| | |
https://mail.gnome.org/archives/networkmanager-list/2016-November/msg00095.html
|
| |
| |
| |
| |
| |
| |
| | |
We now pass the --clear-on-reload option to dnsmasq, so the manual
clear is no longer needed.
This reverts commit 4feb58b50b9fd6caceda83bab907ad107ad8ed01.
|
|/
|
|
|
|
|
| |
A new DNS may have different data for us. So tell dnsmasq to
automatically clear the cache when servers change.
Signed-off-by: Christian Hesse <mail@eworm.de>
|
|
|
|
|
|
|
|
|
| |
has_key() has long been dropped
https://docs.python.org/3.1/whatsnew/3.0.html#builtins
Should still work with anything from 2.3 onwards
https://github.com/NetworkManager/NetworkManager/pull/11
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When going to sleep, we unmanage devices setting the unmanaged flags
immediately but delaying the state transition (because we do it from
another state transition). The signal handler can be executed after
the wake and, especially, after we have already re-managed the device,
making the device unmanaged again.
Detect such situation and force the state to UNMANAGED (which will
also clear any pending state change), so that later we manage the
device again and it will try to activate any available connection.
Fixes: 81ea812362de2757979e2c675774fc445400c59f
https://bugzilla.redhat.com/show_bug.cgi?id=1382526
|
|\
| |
| |
| | |
https://bugzilla.gnome.org/show_bug.cgi?id=775003
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- `make dist` requires --enable-gtk-doc --enable-introspection --with-libnm-glib
- --enable-gtk-doc requires --enable-introspection
- --with-nmcli requires either --enable-introspection or pregenerated
settings-docs.c files from the dist tarball. It does not require
--enable-gtk-doc.
There is a bit of a problem in that --enable-introspection requires
now xsltproc. However, gobject-introspection does itself not depend
on xsltproc. So, more correct might be a special --enable-doc argument,
that combines --enable-introspection --with-xsltproc. Anyway, that
seems to make it more complicated then it already is so just implicitly
(and surprisingly?) require xsltproc with --enable-introspection.
https://bugzilla.gnome.org/show_bug.cgi?id=775003
|
|/
|
|
|
|
|
| |
We can simply check for xsltproc and depend on pygobject and
introspection.
https://bugzilla.gnome.org/show_bug.cgi?id=775003
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=775181
|
|
|
|
|
|
| |
Not really a big issue, without the case the intergers
would be compared as ssize_t, which is large enough for
final_len, but possibly not for buflen.
|
|\
| |
| |
| | |
Merge the different bin2str/str2bin implementations.
|
| |
| |
| |
| |
| | |
Have nm_utils_hexstr2bin() take over the allocated buffer
via g_bytes_new_take().
|
| | |
|
| |
| |
| |
| | |
It was only used by two places, inline it.
|
| | |
|
|/ |
|
|
|
|
| |
Fixes: c7d2e1f3bc97f7061e3d0e8d20027513919adb26
|
|
|
|
|
|
|
| |
declassify bad combinations of auto-negotiate, duplex and speed
properties values from _VERIFY_NORMALIZABLE_ERRORS to
_VERIFY_NORMALIZABLE. This would preserve compatibility with legacy
nm-connection-editors.
|
|\
| |
| |
| | |
https://bugzilla.redhat.com/show_bug.cgi?id=1397938
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Also, ifnet plugin would read the configuration value, which is just wrong
because:
- the configuration might not be set and ifnet would fail to fallback
to the compile time default.
- the configuration only is in effect if the plugin is also available.
Otherwise, we fallback to the next plugin.
Only the dhcp-manager knows which DHCP plugin is in use.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since commit fb2ca0ce3d we would no longer pre-set the main.plugins
value in NMConfig's keyfile to recognize unset default settings.
This breaks with
[main]
plugins+=foo
which now results in
main.plgin=foo
while previously it would have extended the compile time default.
https://bugzilla.redhat.com/show_bug.cgi?id=1397938
Fixes: fb2ca0ce3dadae8154d2ad8b611538323be137ac
|