Commit Graph

13873 Commits

Author SHA1 Message Date
Thomas Haller
def82cddea dhcp: cleanup internal systemd dhcp library
Merge first part of patches that prepare for updating
the dhcp library to new systemd upstream.

https://bugzilla.gnome.org/show_bug.cgi?id=742719
2015-03-02 14:26:02 +01:00
Thomas Haller
42b39b9482 dhcp: ensure every systemd dhcp file includes 'nm-sd-adapt.h' first 2015-03-02 14:22:09 +01:00
Thomas Haller
15bebd7c51 dhcp: don't include config.h in systemd source
systemd sources should all include 'nm-sd-adapt.h' as first header,
which in turn already includes our 'config.h'.
2015-03-02 14:22:09 +01:00
Thomas Haller
5162426d41 logging: add error argument to _nm_log() to support "%m" format specifier
A gnu extension to printf adds the format specifier "%m"
to print @errno. To preserve the error number until the
point where the logging statement is constructed, pass
it as an additional argument to _nm_log().

This is not (yet) used from NM internal code. But systemd is adding
similar functionality to its logging functions. Add the same also to
nm-logging, to support systemd's usage of "%m".
2015-03-02 14:22:09 +01:00
Thomas Haller
94b9c79cf6 dhcp/trivial: add '/* NM_IGNORED */' comment to #endif added by NetworkManager 2015-03-02 14:22:08 +01:00
Thomas Haller
a05b04c0fd dhcp/trivial: remove shaddowed '#if 0 /* NM_IGNORED */' block
Remove '#if 0' inside another '#if 0' block.
2015-03-02 14:22:08 +01:00
Thomas Haller
81c420dc62 cli/completion: add completion for --order option
This does not yet work, because the --order option
contains colons which bash completion considers as
separaters.

For now, implement it and ignore that problem. It
works correctly until you specify more then one
order-columns separated by colon.

https://bugzilla.gnome.org/show_bug.cgi?id=738613

Fixes: 40e98f5d68
2015-03-02 14:02:58 +01:00
Jiří Klimeš
a94081b70f tui: fix the previous commit
Fixes cdc8bd1.
2015-03-02 09:54:48 +01:00
Jiří Klimeš
cdc8bd178b tui: add "Enable IGMP snooping" to bridge editor (bgo #744853)
https://bugzilla.gnome.org/show_bug.cgi?id=744853
2015-03-02 09:26:30 +01:00
Thomas Haller
2c96ac73be build: remove bashism from configure.ac constructing session_tracking value
(ln -snf /bin/dash ./sh; export PATH=".:$PATH"; export CONFIG_SHELL=/bin/dash; ./configure)

https://bugzilla.gnome.org/show_bug.cgi?id=743480
2015-03-02 09:01:23 +01:00
Jiří Klimeš
5aa204edec tui: fix a crash when connection list for activation is empty (rh #1119663)
When there are no connections for a device, do not add the header.

https://bugzilla.redhat.com/show_bug.cgi?id=1119663
2015-02-27 22:52:10 +01:00
Stas Solovey
f610ae7265 po: updated Russian (ru) translation (bgo #745262)
https://bugzilla.gnome.org/show_bug.cgi?id=745262
2015-02-27 22:48:36 +01:00
Thomas Haller
f3ad60b434 route-manager: define singelton using NM_DEFINE_SINGLETON_GETTER()
Fixes: 874e4a7595
2015-02-27 21:40:44 +01:00
Thomas Haller
ea0d0b3086 route-manager/build: fix out-of-tree builds for route-manager tests
Fixes: 0659a67c8f
2015-02-27 19:36:43 +01:00
Dan Williams
79aac22148 build: order ADSL plugin build after core files
Build it right before the other plugins.
2015-02-27 10:36:23 -06:00
Dan Williams
677cee0f23 dhclient: use fqdn.fqdn for server DDNS updates
dhclient only supports fqdn.fqdn for server DDNS updates with
DHCPv6.  And even though the underlying DHCP options that fqdn.fqdn
controls allow non-qualified hostnames on the wire, dhclient does
not.  So we must require a fully-qualified name for DHCPv6.

Second, while no-client-updates seems like it should be "off", doing
that apparently makes dhclient set the "O" flag to 1 which appears to
be a bug, and results in the server not doing the DDNS update.  So
we must stop setting that option too.

Found by: Alexander Groß
2015-02-27 10:05:56 -06:00
Lubomir Rintel
8d29b3a631 route-manager: merge branch 'lr/route-manager-rh740064'
Remeber routes for connections, avoid conflicts and restore proper routes when
the conflicting connection vanishes.

https://bugzilla.gnome.org/show_bug.cgi?id=740064
2015-02-27 16:54:23 +01:00
Lubomir Rintel
f981407a02 core: pass ifindex as parameter to nm_ip6_config_new() 2015-02-27 16:50:09 +01:00
Dan Williams
84f54f0a5f core: pass ifindex as parameter to nm_ip4_config_new() 2015-02-27 16:50:09 +01:00
Lubomir Rintel
0659a67c8f route-manager: add test 2015-02-27 16:48:28 +01:00
Lubomir Rintel
4c3ba29b40 route-manager: remember routes that should be active
Kernel likes to remove a route in case an equivalent route is added to another
interface. Avoid this situation and only apply the new routes in case the ones
that would cause a conflict are removed.

https://bugzilla.redhat.com/show_bug.cgi?id=1164441
https://bugzilla.gnome.org/show_bug.cgi?id=740064
2015-02-27 16:48:28 +01:00
Lubomir Rintel
7c52d094ed route-manager: normalize ipv6 route metrics during comparison
IPv6 metric of zero is equal to 1024.
2015-02-27 16:48:28 +01:00
Lubomir Rintel
72cefd5162 fake-platform: normalize ipv6 route metric before deletion 2015-02-27 16:48:28 +01:00
Lubomir Rintel
4d097829f0 fake-platform: reject adding routes without the gateway on the same interface
This mimics Linux behavior.
2015-02-27 16:48:28 +01:00
Lubomir Rintel
f6c9b4ff83 fake-platform: override routes that clash
This is done to more closely mimic what Linux does.
2015-02-27 16:48:28 +01:00
Lubomir Rintel
1ee03eeb5a fake-platform: move route deletion above addition
No change in behavior.

We'll need it when we'll remove routes that clash upon addition.
2015-02-27 16:48:27 +01:00
Lubomir Rintel
72e8c534e0 fake-platform: don't return null routes in place of deleted ones 2015-02-27 16:48:27 +01:00
Lubomir Rintel
52711b5d89 ip6-config: keep track of ifindex
No functional change, a cosmetic thing for now.

We want it set before any routes are added and ensure routes have a valid
ifindex before we pass it to the platform.

In a future NMRouteManager will need to look up the route for a device in
its cache thus we'll need to make sure routes passed to the it have an
appropriate ifindex set.
2015-02-27 16:48:27 +01:00
Lubomir Rintel
747292a4c3 ip4-config: keep track of ifindex
No functional change, a cosmetic thing for now.

We want it set before any routes are added and ensure routes have a valid
ifindex before we pass it to the platform.

In a future NMRouteManager will need to look up the route for a device in
its cache thus we'll need to make sure routes passed to the it have an
appropriate ifindex set.
2015-02-27 16:48:27 +01:00
Lubomir Rintel
874e4a7595 core: split route management code out from platform
Create a NMRouteManager singleton.

Refactor, no functional changes apart from change of log domain from
LOGD_PLATFORM to LOGD_CORE.

Subsequent commit will keep track of the conflicting routes, avoid overwriting
older ones with newer ones and apply the new ones when the old ones go away.
2015-02-27 16:48:27 +01:00
Lubomir Rintel
47167cab4f platform: fix route addition ordering 2015-02-27 16:48:27 +01:00
Jiří Klimeš
643291bea5 cli: sort access point list
According to signal strength, frequency and rate.
2015-02-26 11:54:45 +01:00
Thomas Haller
ec1e8017af test: fix defining nmtst_create_minimal_connection() without including nm-setting-connection.h 2015-02-26 10:21:35 +01:00
Thomas Haller
fe0bd1b91f libnm: fix version script to add new API to proper linker section
Fixes: 5293683e4a
2015-02-26 10:21:22 +01:00
Jiří Klimeš
af509459c6 merge: add 'multicast_snooping' bridge option to NetworkManager (bgo #744853)
https://bugzilla.gnome.org/show_bug.cgi?id=744853
2015-02-26 10:04:58 +01:00
Jiří Klimeš
591908c8bd nmcli: add support for bridge multicast-snooping property 2015-02-26 09:08:14 +01:00
Jiří Klimeš
dead766c3b keyfile: update testcase for multicast-snooping property 2015-02-26 09:08:13 +01:00
Jiří Klimeš
b9c79de295 ifcfg-rh: read/write multicast-snooping property 2015-02-26 09:08:13 +01:00
Jiří Klimeš
1252386940 device: add multicast-snooping option support 2015-02-26 09:08:13 +01:00
Jiří Klimeš
11efde3b40 libnm-core: add multicast-snooping property to bridge setting 2015-02-26 09:08:13 +01:00
Lubomir Rintel
d7f977eba8 dns-manager,config: merge branch 'lr/dns-reconfig-rh1062301'
Refresh DNS plugin in SIGHUP.

https://bugzilla.redhat.com/show_bug.cgi?id=1062301
2015-02-25 18:25:26 +01:00
Lubomir Rintel
73e8aeadba dns-manager: react to dns management mode changes
Load a different plugin when the configuration changes.
2015-02-25 18:25:04 +01:00
Lubomir Rintel
aa672b2dc2 config: move dns mode configuration to NMConfigData
This will make is possible for the NMDnsManager to watch for
configuration changes.
2015-02-25 18:25:04 +01:00
Jiří Klimeš
8b35b9e061 cli: silently ignore duplicated categories in "--order" option (bgo #738613)
It was considered as a hard error before, but we can actually only ignore it.

Related commit: 40e98f5d68
2015-02-25 14:41:52 +01:00
Dan Williams
7c0b43ded6 trivial: suppress compiler uninitialized usage warning
Suppress a bogus warning on older compilers (gcc 4.7.2)
2015-02-24 19:01:09 -06:00
Aleksander Morgado
a84744324f wwan: indentation & alignment fixes 2015-02-24 16:04:45 -06:00
Aleksander Morgado
85d9132464 wwan: new retry logic when ipv4=auto and ipv6=auto
When ipv4=auto and ipv6=auto, we'll first try with the IPv4v6 PDP type, and if
that fails (e.g. if either the modem or the operator doesn't support it), we'll
fallback to trying with IPv4 or IPv6 PDP types (only if may-fail configuration
allows it).

Patch based on a previous implementation by Dan Williams <dcbw@redhat.com>

https://bugzilla.gnome.org/show_bug.cgi?id=733696
2015-02-24 16:04:37 -06:00
Thomas Haller
0462104317 build: fix detecting support for -Wno-* compiler flags
Since GCC 4.4, gcc does not warn about unknown -Wno-* flags. At
least, it does not warning unless another warning is raised as well
(https://gcc.gnu.org/wiki/FAQ#wnowarning).

We didn't notice up to now, because we only tested flags that GCC
actually supports.

Hack around this, by checking for the -W* counterpart instead.
2015-02-24 18:43:44 +01:00
Lubomir Rintel
600489003f device: set the reason for when deactivating for another activation
It's always user requested -- auto activation never happens on already active
devices. nm_device_release_one_slave() rightly asserts teardown with
(un)configuration does not happen for no reason at all.

https://bugzilla.gnome.org/show_bug.cgi?id=744812
2015-02-24 18:43:00 +01:00
Lubomir Rintel
d37f2280b7 manager: don't re-assume generated connections
They're being torn down as their device is being deactivated.

https://bugzilla.gnome.org/show_bug.cgi?id=744812
2015-02-24 18:42:52 +01:00