Commit Graph

17169 Commits

Author SHA1 Message Date
Thomas Haller
a18eed123b supplicant: merge branch 'th/supplicant-eap-fast-supported' 2017-01-18 18:56:46 +01:00
Thomas Haller
19ceaa1dc9 supplicant: update capabilities before marking manager as running 2017-01-18 18:56:01 +01:00
Thomas Haller
872b9ec5ea supplicant: update whether EAP-FAST is supported for existing supplicant-interface
As the fast-supported flag changes, update the existing supplicant
interfaces with the new information.

Also, by default assume it is supported.
2017-01-18 18:56:01 +01:00
Thomas Haller
66ff601ecf supplicant: fix detection of EAP-FAST
At least with my supplicant, the capability is called
all-upper-case "FAST".

The check used case-insensitive, but that was broken
by a previous change.

Fixes: 9f5f141100
2017-01-18 18:56:01 +01:00
Thomas Haller
d5685c183c release: bump version to 1.7.0 (development)
belatedly...
2017-01-18 18:37:06 +01:00
Lubomir Rintel
a4d61bf299 device: fix build with old glib & more asserts
src/devices/nm-device.c:8319:4: error: invalid use of void expression
2017-01-18 13:32:25 +01:00
Lubomir Rintel
7fec0755c9 libnm/object: lower the severity of the dangling object warning
The user can't do much about it and we can recover. This is a temporary
measure to avoid unnecessarily bothering the user.
2017-01-18 12:40:18 +01:00
Lubomir Rintel
c1bb45c361 build: use different defaults for snapshot builds
Enable stricter compiler checks only for snapshot builds and default to more
tracing and asserting there.
2017-01-18 12:40:18 +01:00
Lubomir Rintel
8647be3717 build: move the --enable-more-warning option from m4/ to configure.ac
It will make it easier to policy the default.
2017-01-18 12:40:18 +01:00
Thomas Haller
90f097b9f5 build: don't install /etc/dbus-1/system.d/nm-ifcfg-rh.conf when building without ifcfg-rh plugin
(cherry picked from commit cca0ba01e4)
2017-01-18 00:11:21 +01:00
Thomas Haller
cca0ba01e4 build: don't install /etc/dbus-1/system.d/nm-ifcfg-rh.conf when building without ifcfg-rh plugin 2017-01-18 00:10:29 +01:00
Thomas Haller
c218fd44bc tests: fix tests without libjansson support (--enable-json-validation=no)
(cherry picked from commit a5acd0bdc6)
2017-01-17 23:52:18 +01:00
Thomas Haller
a5acd0bdc6 tests: fix tests without libjansson support (--enable-json-validation=no) 2017-01-17 23:51:57 +01:00
Piotr Drąg
e1d3759712 po: update Polish (pl) translation (bgo #777402)
https://bugzilla.gnome.org/show_bug.cgi?id=777402
(cherry picked from commit 39455bb99f)
2017-01-17 23:04:14 +01:00
Piotr Drąg
39455bb99f po: update Polish (pl) translation (bgo #777402)
https://bugzilla.gnome.org/show_bug.cgi?id=777402
2017-01-17 23:03:35 +01:00
Lubomir Rintel
de0df39646 device: add an initializer
Basically to silence gcc that is not smart enough to understand how does
.initialized and .value relate.

  src/devices/nm-device.c: In function '_commit_mtu':
  src/devices/nm-device.c:6754:15: error: 'ip6_mtu_sysctl.value' may be used uninitialized in this function [-Werror=maybe-uninitialized]
     if (ip6_mtu && ip6_mtu != _IP6_MTU_SYS ()) {
                 ^

(cherry picked from commit 7ce805d49d)
2017-01-17 22:54:17 +01:00
Lubomir Rintel
7ce805d49d device: add an initializer
Basically to silence gcc that is not smart enough to understand how does
.initialized and .value relate.

  src/devices/nm-device.c: In function '_commit_mtu':
  src/devices/nm-device.c:6754:15: error: 'ip6_mtu_sysctl.value' may be used uninitialized in this function [-Werror=maybe-uninitialized]
     if (ip6_mtu && ip6_mtu != _IP6_MTU_SYS ()) {
                 ^
2017-01-17 16:20:39 +01:00
Lubomir Rintel
ba414491b7 release: bump version to 1.5.3 (1.6-rc1) 2017-01-17 14:50:22 +01:00
Thomas Haller
4100fc1d4d proxy: merge branch 'jk/proxy-fixes'
https://bugzilla.gnome.org/show_bug.cgi?id=777385
2017-01-17 14:27:42 +01:00
Jiří Klimeš
49e1fefc35 ifcfg-rh: add a basic test for Proxy setting 2017-01-17 14:27:31 +01:00
Jiří Klimeš
6397ce1fac cli: enable TAB-completion for proxy properties in interactive editor 2017-01-17 14:27:31 +01:00
Jiří Klimeš
1abee2e0d5 pacrunner: fix a few typos, uniforms spelling of various forms to "pacrunner" 2017-01-17 14:27:31 +01:00
Jiří Klimeš
8ac33b02b3 libnm-core: add ifcfg-rh documentation for proxy settings
PROXY_METHOD
BROWSER_ONLY
PAC_URL
PAC_SCRIPT
2017-01-17 14:27:31 +01:00
Jiří Klimeš
addac21270 libnm-core: adjust the documentation of proxy setting
* fix capitalization of abbreviations and normal words
 * use % for Gtk-Doc values
 * and other adjustmens
2017-01-17 14:27:31 +01:00
Jiří Klimeš
e2c4d4d2c9 libnm-core: (trivial) fix white spaces in proxy setting 2017-01-17 14:27:31 +01:00
Thomas Haller
daf935fb1b contrib/rpm: fix code comment in default "NetworkManager.conf" 2017-01-17 14:26:30 +01:00
Lubomir Rintel
c7b525f83e release: update NEWS
Co-authored-by: Thomas Haller <thaller@redhat.com>
2017-01-17 14:15:37 +01:00
Thomas Haller
be813707f0 device: make the MTU globally configurable via connection-defaults
This allows a user to restore the previous behavior where NetworkManager
would not reconfigure the MTU during device activation, if no MTU is
available (commit "22e8af6 device: set a per-device default MTU on
activation").

Well, not exactly. The previous behavior was to use per-connection
configuration, then DHCP provided value, or finally leave the MTU
unspecified.
Now, we prefer a per-connection configuration, followed by a global
connection default. If "ethernet.mtu=0", the MTU is left unspecified.
In absense of a global connection default, the value from DHCP is used
or finally a per-device-type default. That is effectively 1500 for most
types, except for infiniband where the MTU is still left unspecified.
2017-01-17 13:43:50 +01:00
Jiří Klimeš
215152d0a1 libnm: (trivial): add missing return description in comment block 2017-01-17 10:34:16 +01:00
Lubomir Rintel
40a5e845b8 po: import Zanata translations 2017-01-16 22:14:48 +01:00
Lubomir Rintel
5b51a5f260 platform/tun: don't passing around the ifname guess
nm_platform_sysctl_open_netdir() doesn't take it anyways, gets it from
the cache.

CID 160209 (#1 of 1): Unused value (UNUSED_VALUE)
2017-01-16 22:14:47 +01:00
Lubomir Rintel
cb8e70546b ifupdown: remove redundant error check
The presence of a parameter is checked above.

CID 59899 (#1 of 1): Logically dead code (DEADCODE)
2017-01-16 22:14:47 +01:00
Beniamino Galvani
1a24f528c8 merge: branch 'bg/macsec-bgo762114'
https://bugzilla.gnome.org/show_bug.cgi?id=762114
2017-01-16 17:50:42 +01:00
Beniamino Galvani
c46627e1dc contrib: add macsec test script 2017-01-16 17:47:10 +01:00
Beniamino Galvani
d197c0626a cli: macsec support 2017-01-16 17:47:10 +01:00
Beniamino Galvani
808b1a0f61 core: support macsec connections
Add code to nm-device-macsec.c to support the creation of macsec
connection. Most of the code for controlling wpa_supplicant is copied
from nm-device-ethernet.c and probably could be consolidated in some
ways.
2017-01-16 17:47:09 +01:00
Beniamino Galvani
0150b644ed supplicant: add an enum to specify the driver
With macsec we now have 3 drivers and a boolean is no longer enough.
2017-01-16 17:37:14 +01:00
Beniamino Galvani
17da42704a supplicant: add support for macsec options
Add new configuration options for wpa_supplicant to support MACsec.
2017-01-16 17:37:14 +01:00
Beniamino Galvani
d252a99fa2 libnm-core: add NMSettingMacsec
The new NMSettingMacsec contains information necessary to establish a
MACsec connection. At the moment we support two different MACsec
modes, both using wpa_supplicant: PSK and EAP.

PSK mode is based on a static CAK key for the MACsec key agreement
protocol, while EAP mode derives keys from a 802.1x authentication and
thus requires the presence of a NMSetting8021x in the connection.
2017-01-16 17:37:14 +01:00
Beniamino Galvani
67adbda83e core,libnm: introduce NMDeviceMacsec
At the moment the device only exposes the current link status, but
cannot create new links.
2017-01-16 17:37:14 +01:00
Beniamino Galvani
85103656e9 platform: add support for macsec links
Add support for a new macsec link type and its netlink attributes to
the platform code.
2017-01-16 17:37:14 +01:00
Beniamino Galvani
00463a6e09 ethernet: simplify supplicant error path
Replace the custom supplicant_iface_connection_error_cb_handler() with
nm_device_queue_state().
2017-01-16 17:37:14 +01:00
Thomas Haller
2b51d39671 device: merge branch 'th/device-mtu-bgo777251'
https://bugzilla.gnome.org/show_bug.cgi?id=777251
2017-01-16 17:34:14 +01:00
Thomas Haller
665e398022 device: enforce a link MTU of at least 1280 for connections with IPv6 2017-01-16 17:30:12 +01:00
Thomas Haller
22e8af6242 device: set a per-device default MTU on activation
In absence of an explicit MTU (either via user configuration, PPP or
DHCP), set a default MTU on activation that depends on the device type.

We only want to do that on the very first call to _commit_mtu(). Later
calls (for example in response to new DHCP leases) skip over this step.

This means, on activation the MTU will always be reset to a sensible
value instead of preserving whatever was left from a previous
configuration.

This does not cover setting the MTU from the VPN plugin :(
2017-01-16 17:30:12 +01:00
Thomas Haller
1e67c7ac0b device: reset previous MTU when device disconnects
When you have a connection with "ethernet.mtu=0 (auto)", the MTU is not set
during activation. That means, the effective MTU depends on the previous
MTU configuration of the device. Which in turn, depends on the
previously active connection, as we don't reset the MTU on deactivation.

Restore the previous MTU on deactivation iff NetworkManager changed
the MTU during device activation.
2017-01-16 17:29:44 +01:00
Thomas Haller
b5fcbdf594 device: refactor configuring MTU by dropping mtu_desired
Don't have this mtu_desired variable. All the data is readily available
without redundancy. E.g. the applied-connection contains everything
we need to know. Just get it as needed.

Also drop apply_mtu_from_config(). It didn't take into account
the MTU settings beside NMSettingWired.

Also, no longer merge the NM_IP_CONFIG_SOURCE_USER MTU value into
priv->ip4_config. NMIP4Config now only tracks the MTU from the various
non-user-config sources, but the user config is no longer merged back
into the composite.
2017-01-16 17:29:44 +01:00
Thomas Haller
b3a89dc153 ip4-config: cleanup MTU handling
It is wrong that nm_ip4_config_set_mtu() tries to ~merge~ the new MTU
with the existing. All callers of nm_ip4_config_set_mtu() want that the
new value prevails.
That is also already the case because the DHCP clients and PPP manager set
the MTU on a newly created NMIP4Config instance, thus their value is taken.
Similarly, the final merge with NM_IP_CONFIG_SOURCE_USER also prevails as the
source has the highest priority.

The setter should just set. The only place where we want the merge behavior
is in nm_ip4_config_merge(), where it is now implemented in-place.

For example, nm_ip4_config_replace() very much wants that the new value
wins, regardless of the previous setting. Using nm_ip4_config_set_mtu()
with the merge behavior was wrong because it means that the MTU of NMDevice's
composite can never be raised again (for example with a new DHCP event).
2017-01-16 17:29:44 +01:00
Thomas Haller
797ad260e6 device/bridge: support setting bridge MTU via wired setting
The problem is that the bridge's MTU cannot be larger then the slaves'.
Configuring such a setting results in an error being logged and the
activation proceeds (without applying the desired MTU).

Unclear how to fix that best.
2017-01-16 17:29:44 +01:00
Thomas Haller
6e52efe950 device: refactor setting user-configured MTU during config commit
Instead of overwriting ip4_config_pre_commit(), add a new function
get_mtu().

This also adds a default value in case there is no user-configuration.
This will allow us later to reset a default MTU based on the device
type.
2017-01-16 17:29:06 +01:00