summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* platform: workaround kernel wrongly returning ENFILE when changing MAC addressth/platform-set-address-enfile-bgo770456Thomas Haller2016-08-281-1/+26
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=770456
* platform: split processing result from do_change_link()Thomas Haller2016-08-281-8/+27
|
* settings: remove wrong comment about selinux labelingBeniamino Galvani2016-08-261-3/+0
| | | | | The code does the right thing as g_file_set_contents() will create the temporary file using the label set by setfscreatecon().
* man: NetworkManager.conf: fix link syntaxBeniamino Galvani2016-08-261-1/+1
| | | | Fixes: c7cee12189d8fe64bc9037d5b9daaf1c887e0466
* po: update Ukrainian (uk) translation (bgo#770447)Yuri Chornoivan2016-08-261-1575/+1793
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=770447
* all: fix typos in documentation and translated stringsYuri Chornoivan2016-08-263-3/+3
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=770445
* man: fix reference in NetworkManager.confThomas Haller2016-08-261-1/+1
| | | | | | | | | | Without this, it reads: See the section called “Sections” for details. but there are multiple sections called “Sections” and it should explicitly refer to the one from the other top-level section. With this change, it reads: See “Sections” under the section called “CONNECTION SECTION” for details.
* ifcfg-rh: merge branch 'th/ifcfg-rh-read-team-rh1367180'Thomas Haller2016-08-268-42/+62
|\ | | | | | | https://bugzilla.redhat.com/show_bug.cgi?id=1367180
| * ifcfg-rh: accept TEAM connections also without DEVICETYPE settingThomas Haller2016-08-267-30/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow omitting DEVICETYPE=Team or DEVICETYPE=TeamPort and accept team connections based on the presence of TEAM_CONFIG/TEAM_MASTER alone. Also, check first for a team slave before checking for bond slave. That is what initscripts do and matters if somebody wrongly sets MASTER and TEAM_MASTER. libteam: https://github.com/jpirko/libteam/commit/20d45a1e026c27f4ec37383d4bb2c446a2744c02 initscripts: https://git.fedorahosted.org/cgit/initscripts.git/commit/?id=3235be4a3da91bc91c698b318935240dbdf81aac https://bugzilla.redhat.com/show_bug.cgi?id=1367180
| * ifcfg-rh: make out_unhandled argument non-optionalThomas Haller2016-08-263-12/+11
|/ | | | | | | | | | Depending on the connection we are about to read, we would assert that the user provided a @out_unhandled argument. That means, the user must always provide a valid @out_unhandled pointer, because he cannot know beforehand how the reading of the ifcfg file goes.
* ifcfg-rh: clear IP settings for slave connectionsThomas Haller2016-08-264-67/+72
| | | | | | | | | | | | Clear some IP related entries from the ifcfg-rh file if the connection is a slave connection. Also, drop utils_ignore_ip_config(). It is guaranteed, that writer only handles connections that verify(). Such connections have an IPv4/IPv6 setting if (and only if) they are not slave types. https://bugzilla.redhat.com/show_bug.cgi?id=1368761
* platform: silence error reading sysctl for non existing deviceThomas Haller2016-08-251-0/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=770378
* release: bump version to 1.5.1-dev after 1.4.0 release1.5.1-devThomas Haller2016-08-254-4/+33
|\ | | | | | | | | | | | | | | | | | | | | | | | | After 1.4.0 is released, merge it back into master so that 1.4.0 is part of the history of master. That means, $ git log --first-parent master will also traverse 1.4.0 and 1.4.0-rc1. Also, the closest branch parent of master and nm-1-4 branch becomes 1.4.0 tag. Also bump the micro version to 1.5.1-dev to indicate that this is after 1.4.0 is out, otherwise `git describe` uses the 1.4.0 tag.
| * dhcp/systemd: honor timeout for DHCPv6Beniamino Galvani2016-08-241-0/+2
| | | | | | | | https://bugzilla.gnome.org/show_bug.cgi?id=770329
| * cli: only connect handlers for property changes in interactive editLubomir Rintel2016-08-242-3/+8
| | | | | | | | Fixes: c5324ed285aff7d6d58212e4b030a0fc556eb43b
| * cli: default to method=manual when adding an addressLubomir Rintel2016-08-241-2/+43
| | | | | | | | | | | | | | This restores accidentally changed behavior for "nmcli c add ... ip[46] <address>" Fixes: c5324ed285aff7d6d58212e4b030a0fc556eb43b
| * team: merge branch 'th/team-invalid-config-rh1366300'Thomas Haller2016-08-244-12/+66
| |\ | | | | | | | | | https://bugzilla.redhat.com/show_bug.cgi?id=1366300
| | * libnm-core/team: normalize invalid config to NULLThomas Haller2016-08-243-6/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A user may very well have connections on disk with bogus json. Such connections may have failed to activate before, but rejecting them now as invalid means that we stop loading them from disk. That is, they disappear after upgrade. Instead of doing that, also accept invalid json (beside "") and normalize/coerce it to NULL. https://bugzilla.redhat.com/show_bug.cgi?id=1366300
| | * libnm-core/team: treat "" team config as no configLubomir Rintel2016-08-243-11/+48
| | | | | | | | | | | | https://bugzilla.redhat.com/show_bug.cgi?id=1366300
| | * device/team: fix assuming non-NULL team-config in ↵Thomas Haller2016-08-241-1/+1
| |/ | | | | | | NMDeviceTeam::act_stage1_prepare()
| * NEWS: updateThomas Haller2016-08-231-2/+2
| |
| * NEWS: fix spellingThomas Haller2016-08-231-1/+1
| |
| * tests: try to resolve the .so file symbolsLubomir Rintel2016-08-239-0/+18
| | | | | | | | | | | | | | | | | | At some point, linker on ppc64le would throw away useful symbols along with the garbage: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=1c9177d9a5c3e06d3344347c8068acfb7d8ecc8b Add a post-build check so that the distributors running broken binutils would catch this early and fix their toolchain (or disable the garbage collecting at the expense of larger and slower binaries).
| * core: use #define for "rfkill-changed" signal nameThomas Haller2016-08-233-3/+5
| |
| * core: check valid uid for D-Bus load_connection(s)/set_logging callsBeniamino Galvani2016-08-234-9/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 4c7fa8dfdcbf ("core: drop root requirement for load_connection(s)/set_logging D-Bus calls") removed the enforcing of permission in the daemon for such methods since the D-Bus daemon configuration already does that. That change also allows clients to send a request and not wait for a response, since we don't have to check the caller credentials in the daemon. In the future we might switch to polkit for these methods, breaking clients that don't wait for a reponse, so it seems better to prevent from beginning such behavior. Fixes: 4c7fa8dfdcbf13f3633b565af53896ac79366912
| * core: merge branch 'th/vpn-ifindex-fix-rh1368354'Thomas Haller2016-08-234-90/+108
| |\ | | | | | | | | | https://bugzilla.redhat.com/show_bug.cgi?id=1368354
| | * vpn: ignore unexpected default-route for nm_vpn_connection_ip6_config_get()Thomas Haller2016-08-231-1/+1
| | | | | | | | | | | | | | | | | | The VPN data comes from an external source, it may be bogus. Default-routes are not allowed on this point and would trigger an assertion afterwards. Skip over them.
| | * vpn: fix nm_vpn_connection_ip6_config_get() for VPNs without own interfaceThomas Haller2016-08-231-2/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We need an ifindex for the NMIP4Config/NMIP6Config instance. For interface-less VPN types, we need to lookup the parent device, as already done for IPv4. Fix IPv6 case too. https://bugzilla.redhat.com/show_bug.cgi?id=1368354
| | * vpn: refactor property implementation in NMVpnConnectionThomas Haller2016-08-231-46/+41
| | |
| | * vpn: embed private data in NMVpnConnection structureThomas Haller2016-08-232-45/+58
| | |
| | * core: downgrade assertion in nm-ip[46]-config.c to g_criticalThomas Haller2016-08-232-4/+4
| |/
| * device: silence logging about "link disconnected"Thomas Haller2016-08-231-4/+1
| | | | | | | | | | <info> logging is just too verbose for something that happens frequently.
| * device: fix queued activation failure due to link disconnectedThomas Haller2016-08-231-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When activating a connection, it may fail with nmcli reporting: $ nmcli connection up id "Wired Connection 1" Error: Connection activation failed: Active connection removed before it was initialized This should be easily reproducible by having a connection "Wired Connection 1" with cloned-mac-address set to random. When the connection is already active on a device, re-activating with $ nmcli connection up id "Wired Connection 1" fails. We first create a queued-activation and tear down the existing connection: device (enp0s25): state change: deactivating -> disconnected (reason 'new-activation') Shortly after we see: device[0x557d02cdb0c0] (enp0s25): set-hw-addr: setting MAC address to 'AA:BB:CC:DD:EE:FF' (reset, deactivate)... device[0x557d02cdb0c0] (enp0s25): taking down device later, we get: device (enp0s25): link disconnected device[0x557d02cdb0c0] (enp0s25): queued state change to unavailable due to carrier-changed (id 17290) in the meantime, the queued activation request starts: device (enp0s25): Activation: starting connection 'my-wired' (ca058ec5-8a47-4e1e-b38e-962b71c4699e) but the device already transitions to unavailable device[0x557d02cdb0c0] (enp0s25): running queued state change to unavailable (id 17290) device (enp0s25): state change: disconnected -> unavailable (reason 'carrier-changed') [30 20 40] which kills the new activation request: active-connection[0x557d02c10e40]: set state deactivated (was unknown) Just delay a carrier-lost handling if we have any queued activation requests.
| * platform: disable debug logging for NMPObject ref-coutingThomas Haller2016-08-221-3/+7
| | | | | | | | | | | | | | | | | | These logging lines are already disabled by default as _LOGt() is a NOP unless configured --with-more-logging. However, the logging is still very verbose also for debug-builds and currently there are no known issues there. Disable the logging statements (but leave them in so they can easily be enabled).
| * core: use define for signal name in nm_active_connection_set_device()Thomas Haller2016-08-221-1/+1
| |
| * device: emit NM_DEVICE_STATE_CHANGED signal by idThomas Haller2016-08-221-1/+1
| | | | | | | | | | This saves a lookup of the ID by name. We already have the signal-id, use it.
| * cli: return sane error message for D-Bus policy permission errorsBeniamino Galvani2016-08-204-3/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The error returned to users when a load_connection(s)/set_logging call fails due to D-Bus policy denial is a bit obscure: $ nmcli general logging level debug Error: failed to set logging: Rejected send message, 4 matched rules; type="method_call", sender=":1.233" (uid=1001 pid=27225 comm="nmcli general logging level debug ") interface="org.freedesktop.NetworkManager" member="SetLogging" error name="(unset)" requested_reply="0" destination=":1.207" (uid=0 pid=25793 comm="/usr/sbin/NetworkManager --no-daemon ") Convert it to a more comprehensible: $ nmcli general logging level debug Error: failed to set logging: access denied https://bugzilla.redhat.com/show_bug.cgi?id=1362542
| * core: drop root requirement for load_connection(s)/set_logging D-Bus callsBeniamino Galvani2016-08-202-25/+0
| | | | | | | | | | | | | | The D-Bus configuration already ensures that only root can do that; enforcing the permission at policy level seems better than doing it in the daemon itself because it allows users to change the policy and also because callers can exit immediately after issuing the request.
| * ifcfg-rh: ensure master is cleared when updating a connectionBeniamino Galvani2016-08-192-6/+84
| | | | | | | | | | | | | | If the connection is not a slave we must clear any existing variable indicating the connection's master. https://bugzilla.redhat.com/show_bug.cgi?id=1355656
| * device: don't flush addresses when unmanaging assumed devicesBeniamino Galvani2016-08-191-13/+16
| | | | | | | | | | | | | | | | | | | | | | | | When a assumed software device is brought down externally, it becomes UNMANAGED_EXTERNAL_DOWN and its state goes from ACTIVATED directly to UNMANAGED. In such case, we shouldn't flush the IP configuration (addresses and routes) present on the device. To fix this, clean up the device with CLEANUP_TYPE_KEEP and modify nm_device_cleanup() not to flush addresses and devices with such flag. https://bugzilla.redhat.com/show_bug.cgi?id=1363995
| * vpn: fix out-of-range access reading route.plen in ↵Thomas Haller2016-08-191-2/+4
| | | | | | | | | | | | | | | | | | | | nm_vpn_connection_ip4_config_get() Also, skip over routes with plen zero. Fixes: 44768f0311deb9082c69e3525693091a59788ebb https://bugzilla.redhat.com/show_bug.cgi?id=1368355
| * logging: remove unused formatting optionsThomas Haller2016-08-191-98/+11
| | | | | | | | | | | | | | | | | | | | | | | | Previously, we logged also the location (file:line func). nm-logging.c supported format flags to control the timestamp, the location, and alignment of the timestamp. We want that all our logging backends log the same messages. That is, both syslog and journal should have our ~default~ logging format, that is with timestamp but without location. Drop the unused code.
| * policy: always try to update kernel hostnameBeniamino Galvani2016-08-191-23/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even if we know that the new hostname being set is equal to the cached old one, the user may have manually changed the kernel hostname in the meanwhile. For example: # hostname host123 # hostname localhost # nmcli connection up eth1 # (now NM receives 'host123' from DHCP, but # believes it's already set and doesn't update it) # hostname localhost Let's always try to update the kernel (transient) hostname, unless it is really already set (as returned by gethostname()). https://bugzilla.redhat.com/show_bug.cgi?id=1356015
| * platform/tests: relax condition for testThomas Haller2016-08-181-1/+1
| | | | | | | | Got a test failure for /link/software/bond
| * contrib/rpm: fix wrong argument to configure scriptThomas Haller2016-08-181-1/+1
| | | | | | | | Fixes: aff491b6f319f41d9c812400f8f561a138580bb7
| * contrib/rpm: update spec file to make it more similar to RHEL's versionThomas Haller2016-08-181-1/+7
| |
| * core: don't suppress routes inside the subnet of the interfaceThomas Haller2016-08-172-16/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 (38dbdae26606f984f1d12c8a56ed27bc1b4d9c20), but it's unclear what the original intent was. See also commit 4f7b1cabc063bfda96cb5c129d6a233e5d5cff68, which already relaxed this suppression of routes for non-direct routes.
| * po: update Polish (pl) translation (bgo #769463)Piotr Drąg2016-08-171-56/+75
| | | | | | | | https://bugzilla.gnome.org/show_bug.cgi?id=769463
| * all: cleanup includes in header filesThomas Haller2016-08-17163-558/+32
| | | | | | | | | | | | | | | | | | | | - 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.
| * release: bump version to 1.5.0 (development)1.5.0-devLubomir Rintel2016-08-174-4/+33
| |