Commit Graph

17169 Commits

Author SHA1 Message Date
Thomas Haller
cf50806689 core: don't suppress routes inside the subnet of the interface
It's not clear why a route should be suppressed if it is contained
in the subnet of one of the interface's addresses.

I think it is wrong to do this. For example, imagine an ethernet
and a Wi-Fi device both connected to the same subnet 10.0.0.0/8. By
default, ethernet gets higher priority and a better metric of 100.
If the user wants to configure a route "10.0.0.1/32 metric 99"
to reach a certain host explicitly via Wi-Fi, this check will
forbid that.

This condition was added a long time ago (38dbdae266),
but it's unclear what the original intent was.

See also commit 4f7b1cabc0, which
already relaxed this suppression of routes for non-direct routes.

(cherry picked from commit ac5dc1a951)
2016-08-17 22:42:21 +02:00
Thomas Haller
ac5dc1a951 core: don't suppress routes inside the subnet of the interface
It's not clear why a route should be suppressed if it is contained
in the subnet of one of the interface's addresses.

I think it is wrong to do this. For example, imagine an ethernet
and a Wi-Fi device both connected to the same subnet 10.0.0.0/8. By
default, ethernet gets higher priority and a better metric of 100.
If the user wants to configure a route "10.0.0.1/32 metric 99"
to reach a certain host explicitly via Wi-Fi, this check will
forbid that.

This condition was added a long time ago (38dbdae266),
but it's unclear what the original intent was.

See also commit 4f7b1cabc0, which
already relaxed this suppression of routes for non-direct routes.
2016-08-17 22:31:09 +02:00
Piotr Drąg
3d9a0fda33 po: update Polish (pl) translation (bgo #769463)
https://bugzilla.gnome.org/show_bug.cgi?id=769463
(cherry picked from commit 5e41e1634d)
2016-08-17 20:00:14 +02:00
Piotr Drąg
5e41e1634d po: update Polish (pl) translation (bgo #769463)
https://bugzilla.gnome.org/show_bug.cgi?id=769463
2016-08-17 19:59:31 +02:00
Thomas Haller
0bdcab100c all: cleanup includes in header files
- don't include "nm-default.h" in header files. Every source file must
  include as first header "nm-default.h", thus our headers get the
  default include already implicitly.

- we don't support compiling NetworkManager itself with a C++ compiler. Remove
  G_BEGIN_DECLS/G_END_DECLS from internal headers. We do however support
  users of libnm to use C++, thus they stay in public headers.

(cherry picked from commit f19aff8909)
2016-08-17 19:51:17 +02:00
Thomas Haller
f19aff8909 all: cleanup includes in header files
- don't include "nm-default.h" in header files. Every source file must
  include as first header "nm-default.h", thus our headers get the
  default include already implicitly.

- we don't support compiling NetworkManager itself with a C++ compiler. Remove
  G_BEGIN_DECLS/G_END_DECLS from internal headers. We do however support
  users of libnm to use C++, thus they stay in public headers.
2016-08-17 19:09:50 +02:00
Lubomir Rintel
40d5749ec1 release: bump version to 1.3.91 (1.4-rc1) 2016-08-17 16:21:52 +02:00
Lubomir Rintel
b2eb64a439 release: bump version to 1.5.0 (development) 2016-08-17 16:20:42 +02:00
Lubomir Rintel
cb6f1f5751 release: update NEWS with recently merged features 2016-08-17 16:20:42 +02:00
Thomas Haller
844345eddd all: merge branch 'th/device-statistics'
Add support to expose tx/rx statistics per device

https://mail.gnome.org/archives/networkmanager-list/2016-August/msg00045.html
2016-08-17 16:13:16 +02:00
Thomas Haller
fbbebc2123 device: always expose device statistics information
Instead of updating the device-statistic counters only periodically as
we refresh the link, update them on every link-changed event from
platform.

That means, also for devices that have RefreshRateMs at zero, the values
will be updated at random times when the link information changes.
The difference is, that previously the counters would be zero unless
RefreshRateMs was set. Now, they have some (probably stale) values
which however are not guaranteed to be kept up-to-date.

Also, now we refresh more often then promised by RefreshRateMs. But the API
technically doesn't specify that, so if we find there is a problem with
this, we may revert it later.
2016-08-17 16:08:21 +02:00
Thomas Haller
c16e14c71c device: drop nm-device-statistics.c and refactor tracking device statistics
Originally, "nm-device-statistics.c" contained code to fetch the device
counters via netlink. As now the netlink part is handled by NMPlatform,
the code can be simplified by merging it back to NMDevice.
2016-08-17 16:08:21 +02:00
Thomas Haller
3d9d91b2be platform: print rx/tx counters in nm_platform_link_to_string() 2016-08-17 16:08:21 +02:00
Thomas Haller
02a448e49b device: namespace fields related to statistics in NMDevicePrivate
... by grouping them together in a struct.
2016-08-17 16:08:21 +02:00
Thomas Haller
d9509a2db1 device: don't initalize fields in nm_device_init() to NULL
They are already guaranteed to be 0/NULL.
2016-08-17 16:08:21 +02:00
Thomas Haller
14a7b2a4fe manager: add explicit cast for g_object_set()
Technically, this is not needed because glib requires that
int is at least 32 bits. Thus, uint32 will be safely promoted
to uint.

Just do the cast to be explict about the expected type.
2016-08-17 16:08:21 +02:00
Thomas Haller
36f8ffad9f device: refresh the link before reading the stats 2016-08-17 16:08:21 +02:00
Thomas Haller
fc2f1d9cb8 device: reset device-stats in update_stats() on missing link
First of all, we don't expect missing NMPlatformLink instances.
If that actually happens, just reset the counters to zero.
2016-08-17 16:08:21 +02:00
Thomas Haller
9c5405eba4 platform: drop nm_platform_link_get_stats()
No need to add accessors for fields of NMPlatformLink. Just access
them directly.
2016-08-17 16:08:21 +02:00
Thomas Haller
178bb25a03 platform: let _new_from_nl_link() lookup missing tb[IFLA_STATS64] data from cache 2016-08-17 16:08:21 +02:00
Thomas Haller
b3c376cd29 platform: fix sorting order for nm_platform_link_cmp()
nm_platform_link_cmp() shall first compare the ifindex, otherwise
the sort-order first considers rather unimportant fields instead
of the primary key: the ifindex.

Fixes: a3185f22e55484b819859cb4cef8f54385dac1a9
2016-08-17 16:08:21 +02:00
Alfonso Sanchez-Beato
ce93bd2da7 docs: add device statistics interface 2016-08-17 16:08:21 +02:00
Alfonso Sanchez-Beato
6fb0de0a8b auth: check when setting statistics refresh rate 2016-08-17 16:08:20 +02:00
Thomas Haller
2cb18efaea permissions: properly add checkpoint-rollback permission
Fixes: a52d4654ec
2016-08-17 15:50:20 +02:00
Alfonso Sanchez-Beato
24b193ab64 device: add statistics interface
Add statistics interface to all device instances. When active, the
properties of this interface are refreshed whenever there is network
activity for the device.

Activation is performed by changing RefreshRateMs property. If set to
zero, the interface is deactivated. If set to other value, the rest of
the interface properties are refreshed whenever the related network
metric changes, being RefreshRateMs the minimum time between property
changes, in milliseconds.
2016-08-17 15:50:20 +02:00
Thomas Haller
85834a6675 platform/tests: relax condition in platform test
With device-statistics counters in NMPlatformLink we may get an additional
link-changed event. Relax the assertion in the test.
2016-08-17 15:50:20 +02:00
Alfonso Sanchez-Beato
6ed939e841 platform: add network statistics
Make network traffic statistics data available through the platform.
2016-08-17 15:50:20 +02:00
Alfonso Sanchez-Beato
3bc5c7dbc1 exported-object: allow exporting multiple ifaces
Allow exporting more than one interface per object class.
2016-08-17 15:50:20 +02:00
Thomas Haller
f04baa63c0 device: copy the plink instance before realize_start_setup()
To make sure, we don't end up with a dangling pointer due
to an intermediate platform access which may invalidate the
pointer.
2016-08-17 15:50:20 +02:00
Lubomir Rintel
d070d7f47d act-request: queue failing the slave when master fails
We might be already handling a state change:

Aug 17 05:26:34 dacan.local NetworkManager[618]: (devices/nm-device.c:10982):
_set_state_full: runtime check failed: (priv->in_state_changed == FALSE)

  (gdb) bt
  #0  0x00007fc218dad643 in g_logv (log_domain=0x7fc21c0db3c3 "NetworkManager", log_level=G_LOG_LEVEL_WARNING, format=<optimized out>, args=args@entry=0x7ffe6f0b30d0) at gmessages.c:1086
  #1  0x00007fc218dad7bf in g_log (log_domain=log_domain@entry=0x7fc21c0db3c3 "NetworkManager", log_level=log_level@entry=G_LOG_LEVEL_WARNING, format=format@entry=0x7fc218e1b70f "%s") at gmessages.c:1119
  #2  0x00007fc218dadb16 in g_warn_message (domain=domain@entry=0x7fc21c0db3c3 "NetworkManager", file=file@entry=0x7fc21c0d6597 "devices/nm-device.c", line=line@entry=10982, func=func@entry=0x7fc21c0dabf0 <__FUNCTION__.42233> "_set_state_full", warnexpr=warnexpr@entry=0x7fc21c0d95a0 "priv->in_state_changed == FALSE") at gmessages.c:1152
  #3  0x00007fc21bf79bd6 in _set_state_full (self=0x7fc21ccd88b0 [NMDeviceEthernet], state=NM_DEVICE_STATE_FAILED, reason=NM_DEVICE_STATE_REASON_DEPENDENCY_FAILED, quitting=0) at devices/nm-device.c:10982
  #7  0x00007fc2190bdd9f in <emit signal notify:master on instance 0x7fc21ccd88b0 [NMDeviceEthernet]> (instance=instance@entry=0x7fc21ccd88b0, signal_id=<optimized out>, detail=<optimized out>) at gsignal.c:3439
      #4  0x00007fc2190a3908 in g_closure_invoke (closure=0x7fc21cd009e0, return_value=return_value@entry=0x0, n_param_values=2, param_values=param_values@entry=0x7ffe6f0b34b0, invocation_hint=invocation_hint@entry=0x7ffe6f0b3450) at gclosure.c:801
      #5  0x00007fc2190b5a1d in signal_emit_unlocked_R (node=node@entry=0x7fc21cb66500, detail=detail@entry=588, instance=instance@entry=0x7fc21ccd88b0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffe6f0b34b0)
      at gsignal.c:3627
      #6  0x00007fc2190bdab1 in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7ffe6f0b3640) at gsignal.c:3383
  #8  0x00007fc2190a7fd4 in g_object_dispatch_properties_changed (object=0x7fc21ccd88b0 [NMDeviceEthernet], n_pspecs=<optimized out>, pspecs=<optimized out>) at gobject.c:1061
  #9  0x00007fc2190aa619 in g_object_notify_by_pspec (pspec=<optimized out>, object=0x7fc21ccd88b0 [NMDeviceEthernet]) at gobject.c:1155
  #10 0x00007fc2190aa619 in g_object_notify_by_pspec (object=object@entry=0x7fc21ccd88b0 [NMDeviceEthernet], pspec=<optimized out>) at gobject.c:1264
  #11 0x00007fc21bf7de3f in nm_device_master_enslave_slave (prop=PROP_MASTER, obj=0x7fc21ccd88b0 [NMDeviceEthernet]) at devices/nm-device.c:103
  #12 0x00007fc21bf7de3f in nm_device_master_enslave_slave (success=1, self=0x7fc21ccd88b0 [NMDeviceEthernet]) at devices/nm-device.c:2757
  #13 0x00007fc21bf7de3f in nm_device_master_enslave_slave (self=0x7fc21cd42810 [NMDeviceBond], slave=0x7fc21ccd88b0 [NMDeviceEthernet], connection=<optimized out>) at devices/nm-device.c:1300
  #14 0x00007fc2167c8dcc in ffi_call_unix64 () at ../src/x86/unix64.S:76
  #15 0x00007fc2167c86f5 in ffi_call (cif=cif@entry=0x7ffe6f0b3a10, fn=<optimized out>, rvalue=0x7ffe6f0b3980, avalue=avalue@entry=0x7ffe6f0b3900) at ../src/x86/ffi64.c:522
  #20 0x00007fc2190be2e8 in <emit signal 0x7fc21c0ea3d5 "state-changed" on instance 0x7fc21ccd88b0 [NMDeviceEthernet]> (instance=instance@entry=0x7fc21ccd88b0, detailed_signal=detailed_signal@entry=0x7fc21c0ea3d5 "state-changed") at gsignal.c:3479
      #16 0x00007fc2190a4148 in g_cclosure_marshal_generic (closure=0x7fc21cc84de0, return_gvalue=0x0, n_param_values=<optimized out>, param_values=<optimized out>, invocation_hint=<optimized out>, marshal_data=0x0) at gclosure.c:1487
      #17 0x00007fc2190a3908 in g_closure_invoke (closure=0x7fc21cc84de0, return_value=return_value@entry=0x0, n_param_values=4, param_values=param_values@entry=0x7ffe6f0b3c10, invocation_hint=invocation_hint@entry=0x7ffe6f0b3bb0) at gclosure.c:801
      #18 0x00007fc2190b5a1d in signal_emit_unlocked_R (node=node@entry=0x7fc21cbeef20, detail=detail@entry=0, instance=instance@entry=0x7fc21ccd88b0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffe6f0b3c10) at gsignal.c:3627
      #19 0x00007fc2190bdab1 in g_signal_emit_valist (instance=instance@entry=0x7fc21ccd88b0, signal_id=signal_id@entry=112, detail=detail@entry=0, var_args=var_args@entry=0x7ffe6f0b3e48) at gsignal.c:3383
  #21 0x00007fc21bf79e3d in _set_state_full (self=self@entry=0x7fc21ccd88b0 [NMDeviceEthernet], state=state@entry=NM_DEVICE_STATE_IP_CONFIG, reason=reason@entry=NM_DEVICE_STATE_REASON_NONE, quitting=quitting@entry=0) at devices/nm-device.c:11123
  #22 0x00007fc21bf7a707 in nm_device_state_changed (self=self@entry=0x7fc21ccd88b0 [NMDeviceEthernet], state=state@entry=NM_DEVICE_STATE_IP_CONFIG, reason=reason@entry=NM_DEVICE_STATE_REASON_NONE) at devices/nm-device.c:11308
  #23 0x00007fc21bf7e92f in activate_stage3_ip_config_start (self=0x7fc21ccd88b0 [NMDeviceEthernet]) at devices/nm-device.c:6759
  #24 0x00007fc21bf68dac in activation_source_handle_cb (self=0x7fc21ccd88b0 [NMDeviceEthernet], family=family@entry=2) at devices/nm-device.c:3627
  #25 0x00007fc21bf68e6e in activation_source_handle_cb4 (user_data=<optimized out>) at devices/nm-device.c:3564
  #26 0x00007fc218da6d7a in g_main_context_dispatch (context=0x7fc21cb6e000) at gmain.c:3152
  #27 0x00007fc218da6d7a in g_main_context_dispatch (context=context@entry=0x7fc21cb6e000) at gmain.c:3767
  #28 0x00007fc218da70b8 in g_main_context_iterate (context=0x7fc21cb6e000, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3838
  #29 0x00007fc218da738a in g_main_loop_run (loop=0x7fc21cb6c8c0) at gmain.c:4032
  #30 0x00007fc21bf4a23e in main (argc=1, argv=0x7ffe6f0b43e8) at main.c:411
  (gdb)

https://bugzilla.redhat.com/show_bug.cgi?id=1367702
2016-08-17 15:36:05 +02:00
Jiří Klimeš
c9f6309910 cli: show pre-filled readline input if it is not a real password (rh #1351272)
Example:
$ nmcli -a con up test-conn
Passwords or encryption keys are required to access the wireless network 'kkk'.
Username (802-1x.identity): cimrman
Password (802-1x.password):

https://bugzilla.redhat.com/show_bug.cgi?id=1351272
2016-08-17 15:32:58 +02:00
Beniamino Galvani
6308c90b5e merge: branch 'bg/checkpoint-bgo757858-v2'
Introduce D-Bus API to create, rollback and destroy checkpoints of
some devices' status.

https://bugzilla.gnome.org/show_bug.cgi?id=757858
2016-08-17 14:58:07 +02:00
Beniamino Galvani
048801add3 checkpoint: add python D-Bus example 2016-08-17 14:55:34 +02:00
Beniamino Galvani
a82e514822 checkpoint: add audit support 2016-08-17 14:55:34 +02:00
Beniamino Galvani
a52d4654ec checkpoint: use polkit to check permission 2016-08-17 14:55:34 +02:00
Beniamino Galvani
3e09aed2a0 checkpoint: add create, rollback and destroy D-Bus API
Co-authored-by: Thomas Haller <thaller@redhat.com>
2016-08-17 14:55:34 +02:00
Beniamino Galvani
b9e89c918f core: fix builds without polkit support
Fix the following build error:

 nm-auth-utils.c: In function ‘nm_auth_chain_add_call’:
 nm-auth-utils.c:402:46: error: ‘DBUS_GERROR’ undeclared (first use in this function)
     call->chain->error = g_error_new_literal (DBUS_GERROR,

Fixes: 1cf35cb26b
2016-08-17 11:28:55 +02:00
Thomas Haller
1f2eeb85d8 build: rename $(LIBDL) to $(DL_LIBS) and modify detection 2016-08-15 17:23:41 +02:00
Thomas Haller
2a163c1825 build: use $(LIBDL) in ppp-manager's Makefile.am 2016-08-15 16:57:58 +02:00
Piotr Drąg
c53eed13e9 po: update Polish (pl) translation (bgo #769463)
https://bugzilla.gnome.org/show_bug.cgi?id=769463
2016-08-15 14:41:59 +02:00
Thomas Haller
6a8e46700f dispatcher/tests: cleanup test by using cleanup attribute to free data 2016-08-12 14:21:05 +02:00
Thomas Haller
1acbe1d66f dispatcher/tests: fix memleak in test
Causes valgrind failure.

Fixes: 570e8ee296
2016-08-12 14:20:57 +02:00
Thomas Haller
f956d2e3ef systemd: cleanup systemd's include paths in src/Makefile.am
Certain systemd include paths are internal and should not be added
to the include paths when compiling non-systemd sources.
2016-08-12 09:38:51 +02:00
Thomas Haller
f5a4a7e007 systemd: hide "nm-sd-adapt.h" and expose required internal API in "nm-sd.h"
Users outside of src/systemd should not make use of internal API.

Currently, "nm-dhcp-systemd.c" still makes use of internal systemd
functions. Instead of letting "nm-dhcp-systemd.c" include internal
headers, handpick the required defines to "nm-sd.h" and hide "nm-sd-adapt.h".

"nm-sd-adapt.h" is now only used to compile internal systemd sources.
2016-08-12 09:38:51 +02:00
Thomas Haller
4c849d148f systemd: add dummy header files to adapt compilation of systemd sources
Instead of repeatedly disabling the inclusion like

  #if 0 /* NM_IGNORED */
  #include "missing.h"
  #endif /* NM_IGNORED */

add dummy header files to "src/systemd/sd-adapt".
2016-08-12 09:38:48 +02:00
Thomas Haller
2f296cb8fe systemd: merge branch systemd into master
Conflicts:
    src/systemd/src/basic/fd-util.c
    src/systemd/src/basic/fileio.c
    src/systemd/src/libsystemd/sd-event/sd-event.c
    src/systemd/src/libsystemd/sd-id128/sd-id128.c
2016-08-12 09:20:16 +02:00
Thomas Haller
5507dd68ca systemd: update code from upstream
This is a direct dump from systemd git on 2016-08-11, git commit
9c5077fed42dc3cd2517a7ab816babef549dd079.

======

SYSTEMD_DIR=../systemd
COMMIT=9c5077fed42dc3cd2517a7ab816babef549dd079

(
  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-08-12 08:30:29 +02:00
Thomas Haller
9c8b7b001e systemd/tests: don't link test-systemd against libNetworkManagerBase
One point of test-systemd is to see whether our internal systemd code can
fully link without external systemd library. In fact, we want all symbols
from the internal systemd code to resolve, because when we link against
an external libsystemd library, we may mix differing APIs, resulting in
subtle bugs.

Currently, it may well be that libNetworkManagerBase.la already links
against libsystemd, which would result in test-systemd to wrongly
succeed resolving all names.

Fix that, by don't link libNetworkManagerBase.la into test-systemd.
2016-08-12 08:14:53 +02:00
Thomas Haller
f124f8772e build: remove libsystemd-nm.la LDADD from nm-iface-helper 2016-08-11 20:50:19 +02:00
Thomas Haller
6d2680acf1 nm-glib.h: fix compatibility wrapper for g_variant_new_take_string()
g_variant_new_from_bytes() is itself only available since 2.36, thus
using it triggers a deprecation warning itself.
2016-08-11 19:21:55 +02:00