Thomas Haller
e9bf87805c
dhcp: make default dhcp plugin configurable at compile-time
2016-10-27 11:28:01 +02:00
Thomas Haller
d298b7c96d
core: don't unmanage devices on shutdown
...
... except Wi-Fi and devices that cannot assume connections at all.
https://bugzilla.redhat.com/show_bug.cgi?id=1371126
https://bugzilla.redhat.com/show_bug.cgi?id=1378418
2016-10-27 11:09:47 +02:00
Beniamino Galvani
7034ea7aa3
wwan: fix wrong connection cast on device state change
...
nm_settings_connection_set_autoconnect_blocked_reason() must be called
on the settings-connection. Fixes the following:
GLib-GObject-WARNING **: invalid cast from 'NMSimpleConnection' to 'NMSettingsConnection'
Fixes: 06da353242
2016-10-26 13:21:09 +02:00
Thomas Haller
d00d907c06
systemd: merge branch systemd into master
2016-10-24 17:39:38 +02:00
Thomas Haller
d84a275bd2
systemd: update code from upstream
...
This is a direct dump from systemd git on 2016-10-24, git commit
9b3313d678a4f666e9ddc086a8e92652c9294411.
======
SYSTEMD_DIR=../systemd
COMMIT=9b3313d678a4f666e9ddc086a8e92652c9294411
(
cd "$SYSTEMD_DIR"
git checkout "$COMMIT"
git reset --hard
git clean -fdx
)
git ls-files :/src/systemd/src/ | xargs -d '\n' rm -f
nm_copy_sd() {
mkdir -p "./src/systemd/$(dirname "$1")"
cp "$SYSTEMD_DIR/$1" "./src/systemd/$1"
}
nm_copy_sd "src/basic/alloc-util.c"
nm_copy_sd "src/basic/alloc-util.h"
nm_copy_sd "src/basic/async.h"
nm_copy_sd "src/basic/escape.c"
nm_copy_sd "src/basic/escape.h"
nm_copy_sd "src/basic/ether-addr-util.c"
nm_copy_sd "src/basic/ether-addr-util.h"
nm_copy_sd "src/basic/extract-word.c"
nm_copy_sd "src/basic/extract-word.h"
nm_copy_sd "src/basic/fileio.c"
nm_copy_sd "src/basic/fileio.h"
nm_copy_sd "src/basic/fd-util.c"
nm_copy_sd "src/basic/fd-util.h"
nm_copy_sd "src/basic/fs-util.c"
nm_copy_sd "src/basic/fs-util.h"
nm_copy_sd "src/basic/hash-funcs.c"
nm_copy_sd "src/basic/hash-funcs.h"
nm_copy_sd "src/basic/hashmap.c"
nm_copy_sd "src/basic/hashmap.h"
nm_copy_sd "src/basic/hexdecoct.c"
nm_copy_sd "src/basic/hexdecoct.h"
nm_copy_sd "src/basic/hostname-util.c"
nm_copy_sd "src/basic/hostname-util.h"
nm_copy_sd "src/basic/in-addr-util.c"
nm_copy_sd "src/basic/in-addr-util.h"
nm_copy_sd "src/basic/io-util.c"
nm_copy_sd "src/basic/io-util.h"
nm_copy_sd "src/basic/list.h"
nm_copy_sd "src/basic/log.h"
nm_copy_sd "src/basic/macro.h"
nm_copy_sd "src/basic/mempool.h"
nm_copy_sd "src/basic/mempool.c"
nm_copy_sd "src/basic/parse-util.c"
nm_copy_sd "src/basic/parse-util.h"
nm_copy_sd "src/basic/path-util.c"
nm_copy_sd "src/basic/path-util.h"
nm_copy_sd "src/basic/prioq.h"
nm_copy_sd "src/basic/prioq.c"
nm_copy_sd "src/basic/random-util.c"
nm_copy_sd "src/basic/random-util.h"
nm_copy_sd "src/basic/refcnt.h"
nm_copy_sd "src/basic/set.h"
nm_copy_sd "src/basic/signal-util.h"
nm_copy_sd "src/basic/siphash24.c"
nm_copy_sd "src/basic/siphash24.h"
nm_copy_sd "src/basic/socket-util.c"
nm_copy_sd "src/basic/socket-util.h"
nm_copy_sd "src/basic/sparse-endian.h"
nm_copy_sd "src/basic/stdio-util.h"
nm_copy_sd "src/basic/string-table.c"
nm_copy_sd "src/basic/string-table.h"
nm_copy_sd "src/basic/string-util.c"
nm_copy_sd "src/basic/string-util.h"
nm_copy_sd "src/basic/strv.c"
nm_copy_sd "src/basic/strv.h"
nm_copy_sd "src/basic/time-util.c"
nm_copy_sd "src/basic/time-util.h"
nm_copy_sd "src/basic/umask-util.h"
nm_copy_sd "src/basic/unaligned.h"
nm_copy_sd "src/basic/utf8.c"
nm_copy_sd "src/basic/utf8.h"
nm_copy_sd "src/basic/util.c"
nm_copy_sd "src/basic/util.h"
nm_copy_sd "src/libsystemd-network/arp-util.c"
nm_copy_sd "src/libsystemd-network/arp-util.h"
nm_copy_sd "src/libsystemd-network/dhcp6-internal.h"
nm_copy_sd "src/libsystemd-network/dhcp6-lease-internal.h"
nm_copy_sd "src/libsystemd-network/dhcp6-network.c"
nm_copy_sd "src/libsystemd-network/dhcp6-option.c"
nm_copy_sd "src/libsystemd-network/dhcp6-protocol.h"
nm_copy_sd "src/libsystemd-network/dhcp-identifier.c"
nm_copy_sd "src/libsystemd-network/dhcp-identifier.h"
nm_copy_sd "src/libsystemd-network/dhcp-internal.h"
nm_copy_sd "src/libsystemd-network/dhcp-lease-internal.h"
nm_copy_sd "src/libsystemd-network/dhcp-network.c"
nm_copy_sd "src/libsystemd-network/dhcp-option.c"
nm_copy_sd "src/libsystemd-network/dhcp-packet.c"
nm_copy_sd "src/libsystemd-network/dhcp-protocol.h"
nm_copy_sd "src/libsystemd-network/lldp-internal.h"
nm_copy_sd "src/libsystemd-network/lldp-neighbor.c"
nm_copy_sd "src/libsystemd-network/lldp-neighbor.h"
nm_copy_sd "src/libsystemd-network/lldp-network.c"
nm_copy_sd "src/libsystemd-network/lldp-network.h"
nm_copy_sd "src/libsystemd-network/network-internal.c"
nm_copy_sd "src/libsystemd-network/network-internal.h"
nm_copy_sd "src/libsystemd-network/sd-dhcp6-client.c"
nm_copy_sd "src/libsystemd-network/sd-dhcp6-lease.c"
nm_copy_sd "src/libsystemd-network/sd-dhcp-client.c"
nm_copy_sd "src/libsystemd-network/sd-dhcp-lease.c"
nm_copy_sd "src/libsystemd-network/sd-ipv4ll.c"
nm_copy_sd "src/libsystemd-network/sd-ipv4acd.c"
nm_copy_sd "src/libsystemd-network/sd-lldp.c"
nm_copy_sd "src/libsystemd/sd-event/sd-event.c"
nm_copy_sd "src/libsystemd/sd-id128/id128-util.c"
nm_copy_sd "src/libsystemd/sd-id128/id128-util.h"
nm_copy_sd "src/libsystemd/sd-id128/sd-id128.c"
nm_copy_sd "src/shared/dns-domain.c"
nm_copy_sd "src/shared/dns-domain.h"
nm_copy_sd "src/systemd/_sd-common.h"
nm_copy_sd "src/systemd/sd-dhcp6-client.h"
nm_copy_sd "src/systemd/sd-dhcp6-lease.h"
nm_copy_sd "src/systemd/sd-dhcp-client.h"
nm_copy_sd "src/systemd/sd-dhcp-lease.h"
nm_copy_sd "src/systemd/sd-event.h"
nm_copy_sd "src/systemd/sd-ndisc.h"
nm_copy_sd "src/systemd/sd-id128.h"
nm_copy_sd "src/systemd/sd-ipv4acd.h"
nm_copy_sd "src/systemd/sd-ipv4ll.h"
nm_copy_sd "src/systemd/sd-lldp.h"
2016-10-24 17:22:45 +02:00
Thomas Haller
0846cb98aa
src/tests: relax assertion for test_nm_utils_monotonic_timestamp_as_boottime()
...
When running under load (e.g. with parallel make and valgrind
enabled), the checked time interval might be too short. Relax
the assertion
NetworkManager:ERROR:src/tests/test-general-with-expect.c:65:test_nm_utils_monotonic_timestamp_as_boottime: assertion failed (now_boottime_2 - now_boottime <= NM_UTILS_NS_PER_SECOND / 1000): (15156494 <= 1000000)
2016-10-24 15:27:31 +02:00
Thomas Haller
6df24ee8cc
platform/tests: relax assertion for expected link-changed signal
2016-10-24 15:15:15 +02:00
Thomas Haller
16a6991b90
team: minor cleanup handling empty team config
2016-10-24 10:14:02 +02:00
Beniamino Galvani
ddeef464af
checkpoint: introduce new flags to better restore previous state
...
When a global checkpoint is created (one with empty device list) we
save the status of all devices to restore it later. After the
checkpoint new interfaces and connections may appear and they can
significantly influence the overall networking status, but we don't
consider them at the moment.
Introduce a new flag DELETE_NEW_CONNECTIONS to delete any connection
added after the checkpoint and similarly a DISCONNECT_NEW_DEVICES to
ensure that the connection active on newly appeared devices doesn't
disrupt network connectivity.
https://bugzilla.redhat.com/show_bug.cgi?id=1378393
2016-10-24 09:57:18 +02:00
Thomas Haller
b8b47babd2
config: avoid conflicts of /run config dir with other directories
...
The user can configure the configuration paths via command line
arguments. If the user configures /var/run/NetworkManager/conf.d
as --system-config-dir or --config-dir, avoid using it as run-config
directory.
Yes, this doesn't catch
NetworkManager --config-dir=/etc/NetworkManager/conf.d \
--system-config-dir=/etc/NetworkManager/conf.d/
2016-10-23 12:52:01 +02:00
Thomas Haller
b5aec6b7e7
config: cleanup ownership handling of @keyfile in read_entire_config()
2016-10-23 10:52:57 +02:00
Thomas Haller
f8c4a33f25
config: add run-configs to description string
2016-10-23 10:52:57 +02:00
Martin Pitt
49fcfcdfae
config: skip shadowed run-config files in read_entire_config()
...
https://bugzilla.gnome.org/show_bug.cgi?id=773069
2016-10-23 10:52:57 +02:00
Mathieu Trudel-Lapierre
feff60ef3e
config: read /run/NetworkManager/conf.d files
...
This is useful for configuration that gets auto-generated from another source.
These are then not primary configuration files and thus should not be put into
/etc.
This mirrors the structure of udev rules or systemd units, which can also be in
/usr, /run/, or /etc/.
Signed-off-by: Mathieu Trudel-Lapierre <mathieu.trudel-lapierre@canonical.com>
https://bugzilla.gnome.org/show_bug.cgi?id=773069
2016-10-23 10:52:57 +02:00
Thomas Haller
7b73951b1b
build: buld nm-dhcp-manager.c as part of libNetworkMangerBase
...
NetworkManager and nm-iface-helper compiled nm-dhcp-manager.c twice,
the latter with setting -DNM_DHCP_INTERNAL_ONLY to only enable the
internal plugin.
Change that to compile nm-dhcp-manager.c once for both users
by putting it into libNetworkManagerBase.
2016-10-22 17:55:15 +02:00
Thomas Haller
002f17c25d
src: drop generated nm-src-enum-types.h
...
We only needed proper glib enum types for having properties
and signal arguments. These got all converted to plain int,
so no longer generate such an enum type.
2016-10-22 17:16:17 +02:00
Thomas Haller
3bbc55fd9c
core: don't use generated glib enum for platform types
2016-10-22 17:16:17 +02:00
Thomas Haller
931a5b4f1c
core: don't use generated glib enum for NMAuthSubjectType
2016-10-22 17:16:17 +02:00
Thomas Haller
548a5440e9
ifcfg-rh: fix signature of link_changed() callback
...
Depending on how arguments are passed to the called function,
this could lead to a crash.
Maybe not on 32 bit machines where the size of the pointer is
the size of an int.
Maybe not on x86_64, where the arguments are passed in registers.
Fixes: b88c309167
2016-10-22 16:12:58 +02:00
Thomas Haller
7bf4a15504
build: merge "src/tests/Makefile.am" into toplevel Makefile
2016-10-21 17:04:06 +02:00
Thomas Haller
1d8934e705
build: merge "src/tests/config/Makefile.am" into toplevel Makefile
2016-10-21 17:04:06 +02:00
Thomas Haller
a0bb990f39
build: merge "src/supplicant-manager/tests/Makefile.am" into toplevel Makefile
2016-10-21 17:04:06 +02:00
Thomas Haller
e52a5e1146
build: merge "src/rdisc/tests/Makefile.am" into toplevel Makefile
2016-10-21 17:04:06 +02:00
Thomas Haller
f3437707e3
build: merge "src/devices/tests/Makefile.am" into toplevel Makefile
2016-10-21 17:04:06 +02:00
Thomas Haller
04eb0afd28
build: merge "src/platform/tests/Makefile.am" into toplevel Makefile
2016-10-21 17:04:06 +02:00
Thomas Haller
123b66b9f4
build: merge "src/dnsmasq-manager/tests/Makefile.am" into toplevel Makefile
2016-10-21 17:04:06 +02:00
Thomas Haller
ecb9f140cf
build: merge "src/devices/team/Makefile.am" into toplevel Makefile
2016-10-21 17:04:06 +02:00
Thomas Haller
eecd05b5bf
build: merge "src/devices/wifi/tests/Makefile.am" into toplevel Makefile
2016-10-21 17:04:06 +02:00
Thomas Haller
da006929dd
build: merge "src/devices/wifi/Makefile.am" into toplevel Makefile
2016-10-21 17:04:06 +02:00
Thomas Haller
ee601ff296
build: merge "src/devices/bluetooth/Makefile.am" into toplevel Makefile
2016-10-21 17:04:06 +02:00
Thomas Haller
72d53e4b69
build: merge "src/devices/wwan/Makefile.am" into toplevel Makefile
2016-10-21 17:04:06 +02:00
Thomas Haller
ca7f59d332
build: merge "src/devices/adsl/Makefile.am" into toplevel Makefile
2016-10-21 17:04:06 +02:00
Thomas Haller
b48b56c499
build: merge "src/settings/plugins/ifnet/tests/Makefile.am" into toplevel Makefile
2016-10-21 17:04:05 +02:00
Thomas Haller
b2d4180787
build: merge "src/settings/plugins/ifnet/Makefile.am" into toplevel Makefile
2016-10-21 16:47:03 +02:00
Thomas Haller
b661b17687
build: merge "src/settings/plugins/ifupdown/tests/Makefile.am" into toplevel Makefile
2016-10-21 16:47:03 +02:00
Thomas Haller
4128d837ac
build: merge "src/settings/plugins/ifupdown/Makefile.am" into toplevel Makefile
2016-10-21 16:47:03 +02:00
Thomas Haller
2169a09f07
build: merge "src/settings/plugins/ifcfg-rh/tests/Makefile.am" into toplevel Makefile
2016-10-21 16:47:02 +02:00
Thomas Haller
181dfe17d8
build: merge "src/settings/plugins/ifcfg-rh/Makefile.am" into toplevel Makefile
2016-10-19 17:16:08 +02:00
Thomas Haller
f87d153f8a
build: merge "src/settings/plugins/ibft/Makefile.am" into toplevel Makefile
2016-10-19 17:16:08 +02:00
Thomas Haller
541f543451
build: merge "src/settings/plugins/keyfile/Makefile.am" into toplevel Makefile
2016-10-19 17:16:08 +02:00
Thomas Haller
48058ff21f
build: merge "src/ppp-manager/Makefile.am" into toplevel Makefile
2016-10-19 17:16:08 +02:00
Thomas Haller
815624bf24
build: merge "src/dhcp-manager/tests/Makefile.am" into toplevel Makefile
2016-10-19 17:16:08 +02:00
Thomas Haller
481d2165e9
build: merge "src/dhcp-manager/Makefile.am" into toplevel Makefile
2016-10-19 17:16:08 +02:00
Thomas Haller
b219eb19f1
build: merge "src/Makefile.am" into toplevel Makefile
...
Had to rename "nm-enum-types.h" because it works badly with
"libnm/nm-enum-types.h". Maybe I could fix that differently,
but duplicate names is anyway error prone.
Note that "nm-core-enum-types.h" is already taken too, so
"nm-src-enum-types.h" it is.
2016-10-19 17:16:08 +02:00
Thomas Haller
274de2555b
build/trivial: rename VALGRIND_RULES in Makefile.am to NM_LOG_COMPILER
2016-10-19 15:26:30 +02:00
Thomas Haller
5424e3a063
keyfile: disable permission checks of keyfile for tests
...
The tests were checking that the keyfiles had permission
0600 and there was a check-local target to prepare the permissons
of the tests.
That is inconvenient, and it is unexpected to have a check-local
target for such a case.
Also, the tests were not testing that keyfile reader would
bail out on invalid permissions. So just skip the check for
testing.
2016-10-19 15:26:30 +02:00
Thomas Haller
068dd41df9
platform/tests: relax assertion in software_add
...
Avoid failure
NMPlatformSignalAssert: test-link.c:146, software_add(): failure to accept signal one time: link-changed-changed ifindex 15 (2 times received)
2016-10-19 15:23:49 +02:00
Beniamino Galvani
956f0be2f9
platform: fix lifetime check
2016-10-18 16:48:27 +02:00
Beniamino Galvani
628cc8a057
arping: fix error handling when starting probe
...
We didn't check the return value of g_spawn_async() and added a watch
on a potentially zero pid.
2016-10-18 16:48:27 +02:00
Lubomir Rintel
2c43862b2d
platform/tests: don't attempt to mount anything to /sys/devices
...
More recent kernels won't allow that in userns when /sys itself
is read-only.
2016-10-17 15:45:59 +02:00