summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* release: bump version to 1.11.1-dev after 1.10.0 release1.11.1-devth/masterThomas Haller2017-11-13137-137067/+117573
|\ | | | | | | | | | | | | | | | | | | After 1.10.0 is released, merge it back into master so that 1.10.0 is part of the history of master. That means, $ git log --first-parent master will also traverse 1.10.0 and 1.10-rc*. Also bump the micro version to 1.11.1-dev to indicate that this is after 1.10.0 is out.
| * po: update Ukrainian (uk) translation (bgo#790215)Yuri Chornoivan2017-11-131-1834/+2436
| | | | | | | | https://bugzilla.gnome.org/show_bug.cgi?id=790215
| * all: merge branch 'th/platform-routes-onlink-rh1428334'Thomas Haller2017-11-1322-298/+572
| |\ | | | | | | | | | https://bugzilla.redhat.com/show_bug.cgi?id=1428334
| | * platform/tests: add test for onlink route attributeThomas Haller2017-11-131-60/+142
| | |
| | * all: support route-attribute "onlink" for IPv4Thomas Haller2017-11-139-49/+141
| | | | | | | | | | | | | | | | | | | | | | | | Kernel doesn't support it for IPv6. This is especially useful, if you combine static routes with DHCP. In that case, you might want to get the device-route to the gateway automatically, but add a static-route for it.
| | * platform: consider RTNH_F_ONLINK onlink flag for IPv4 routesThomas Haller2017-11-133-5/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The "onlink" flag for IPv4 routes is part of the route ID. Consider it in nm_platform_ip4_route_cmp(). Also, allow configuring the flag when adding a route. Note that for IPv6, the onlink flag is still ignored. Pretty much like kernel does.
| | * platform: track all rtm_flags for routesThomas Haller2017-11-135-31/+70
| | |
| | * core: merge IPv4 and IPv6 version of _nm_ip_config_merge_route_attributes()Thomas Haller2017-11-133-92/+79
| | |
| | * shared: add nm_ip_addr_set() helperThomas Haller2017-11-131-0/+13
| | |
| | * shared/trivial: move codeThomas Haller2017-11-131-17/+17
| | |
| | * platform: add generic NM_PLATFORM_IP_ROUTE_CAST() macroThomas Haller2017-11-131-16/+4
| | | | | | | | | | | | A cast macro, that does some static type checking (of the pointer).
| | * core: use NM_CONSTCAST() for NM_IP_CONFIG_CAST()Thomas Haller2017-11-132-27/+45
| | |
| | * build: detect compiler features _Generic() and __auto_type in configure scriptThomas Haller2017-11-132-1/+24
| | | | | | | | | | | | | | | | | | There is still a fallback detection in "shared/nm-utils/nm-macros-internal.h", so that VPN-plugins and applet don't need to bother about adding these configure checks.
| | * shared: propagate constness in _NM_GET_PRIVATE_PTR()Thomas Haller2017-11-133-5/+31
| | | | | | | | | | | | | | | | | | | | | | | | The _NM_GET_PRIVATE() macro already preserved and propagated the constness of @self to the resulting private pointer. _NM_GET_PRIVATE_PTR() didn't do that. Extend the macro, to make that possible.
| | * shared: fix detection of _Generic() supportThomas Haller2017-11-131-1/+1
| |/
| * core: fix build without connectivity checkBeniamino Galvani2017-11-122-1/+12
| | | | | | | | | | | | Fixes: 4dd30b784c53e9b61b6e3a2b2e135f589747fc06 https://bugzilla.gnome.org/show_bug.cgi?id=790222
| * device: silent compiler warningBeniamino Galvani2017-11-101-1/+1
| | | | | | | | | | | | | | | | | | Fix the following warning: src/devices/nm-device.c: In function ‘activation_source_schedule’: src/devices/nm-device.c:4995:9: error: ‘source_func’ may be used uninitialized in this function [-Werror=maybe-uninitialized] new_id = g_idle_add (source_func, self); ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| * ofono: merge branch 'th/ofono-ip-config-fix'Beniamino Galvani2017-11-101-110/+79
| |\ | | | | | | | | | Fixes for oFono support.
| | * ofono: refactor error handling in context_property_changed()Thomas Haller2017-11-101-76/+58
| | |
| | * ofono: fix creating IP config with proper ifindex of InterfaceThomas Haller2017-11-101-20/+8
| | | | | | | | | | | | | | | This was broken with the routing-rework. We need to determine the ifindex on which the configuration applies.
| | * ofono: refactor error handling for missing Interface in ↵Thomas Haller2017-11-101-12/+12
| | | | | | | | | | | | context_property_changed()
| | * ofono: fix leaks in context_property_changed()Thomas Haller2017-11-101-3/+2
| |/
| * libnm-core: fix "Since" notation in team and team-port settings.Francesco Giudici2017-11-102-22/+22
| | | | | | | | | | | | | | Not "Since 1.12" but "Since: 1.12". Fixes: 9715969b77300f47478b58482375dcd07dba1e85 Fixes: 1c99d379eb7ef1947beb4176a9611e404d1b220f
| * device: add a new state-reason for DAD failuresBeniamino Galvani2017-11-093-3/+8
| |
| * device: don't necessarily fail the connection when ipv4 DAD failsBeniamino Galvani2017-11-091-4/+4
| | | | | | | | | | | | | | | | Don't necessarily fail the entire connection if a duplicate IPv4 address is detected, but instead look at the may-fail property and at the outcome of IPv6. https://bugzilla.redhat.com/show_bug.cgi?id=1508001
| * merge: branch 'fg/team_abstraction_rh1398925'Francesco Giudici2017-11-0911-3/+1832
| |\ | | | | | | | | | https://bugzilla.redhat.com/show_bug.cgi?id=1398925
| | * libnm-core: enforce team and team-port defaultsfg/team_abstraction_rh1398925Francesco Giudici2017-11-096-50/+81
| | | | | | | | | | | | Rework a bit the way default values are check, set and aligned.
| | * cli: add team-port propertiesFrancesco Giudici2017-11-091-0/+47
| | |
| | * libnm-core: enforce team-port config and properties alignmentFrancesco Giudici2017-11-091-0/+50
| | | | | | | | | | | | | | | Ensure .config is aligned when an explicit team-port is set and vice versa
| | * libnm-core: add explicit team properties to NMSettingTeamPortFrancesco Giudici2017-11-094-0/+223
| | |
| | * cli: add team propertiesFrancesco Giudici2017-11-091-0/+179
| | |
| | * libnm-core: enforce team config and properties alignmentFrancesco Giudici2017-11-092-2/+169
| | | | | | | | | | | | Ensure .config is aligned when an explicit team property is set and vice versa.
| | * libnm-core: add explicit team properties to NMSettingTeamFrancesco Giudici2017-11-094-2/+745
| | |
| | * libnm-core: add inline functions to update team json configFrancesco Giudici2017-11-091-0/+81
| | | | | | | | | | | | | | | | | | Add functions and structure to simplify json config and team property enforcement. These will be used in both NMSettingTeam and NMSettingTeamPort.
| | * libnm-core: add functions to align team json config to exposed propertiesFrancesco Giudici2017-11-092-1/+304
| | |
| | * shared: add json_boolean_value support in jansson.hFrancesco Giudici2017-11-091-0/+5
| |/ | | | | | | | | Released in jansson version 2.7, added for compatibility with older jannson verions.
| * all: merge branch 'th/jansson'Thomas Haller2017-11-096-37/+80
| |\
| | * all: update compatiblity for older libjansson versionsth/janssonThomas Haller2017-11-093-7/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - nm-ovsdb.c uses json_load_callback(), which is jansson v2.4. Hence, it cannot build the OVS plugin in our Travis-CI, which is still on Ubuntu Precise. Disable building the plugin in travis and add a compiler warning when building against an older version. - since jansson v2.3, there is json_object_key_to_iter() to implement the for-each macros. Use it in json_object_foreach_safe() when available.
| | * all: use nm-jansson.hThomas Haller2017-11-093-37/+4
| | |
| | * shared: add jansson.h compatibility and utils headerThomas Haller2017-11-092-0/+63
| |/
| * shared: trivial: add space before comment closeFrancesco Giudici2017-11-091-1/+1
| |
| * shared: make NM_CONSTCAST() macro variadicThomas Haller2017-11-094-57/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We need to pass more alias-types. Instead of having numbered versions, use variadic number of macro arguments. Also, fix build failure with old compiler: In file included from src/nm-ip6-config.c:24: ./src/nm-ip6-config.h:44:29: error: controlling expression type 'typeof (ipconf_iter->current->obj)' (aka 'const void *const') not compatible with any generic association type *out_address = has_next ? NMP_OBJECT_CAST_IP6_ADDRESS (ipconf_iter->current->obj) : NULL; ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Fixes: b1810d7a68d188aa8f36a0e23a7be705a742b1aa
| * shared: rework _NM_GET_PRIVATE() to use _Generic()Thomas Haller2017-11-093-47/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | _NM_GET_PRIVATE() used typeof() to propagate constness of the @self pointer. However, that means, it could only be used with a self pointer of the exact type. That means, you explicitly had to cast from (GObject *) or from (void *). The requirement is cumbersome, and often led us to either create @self pointer we didn't need: NMDeviceVlan *self = NM_DEVICE_VLAN (device); NMDeviceVlanPrivate *priv = NM_DEVICE_VLAN_GET_PRIVATE (self); or casting: NMDeviceVlanPrivate *priv = NM_DEVICE_VLAN_GET_PRIVATE ((NMDevice *) device); In both cases we forcefully cast the source variable, loosing help from the compiler to detect a bug. For "nm-linux-platform.c", instead we commonly have a pointer of type NMPlatform. Hence, we always forcefully cast the type via _NM_GET_PRIVATE_VOID(). Rework the macro to use _Generic(). If compiler supports _Generic(), then we will get all compile time checks as desired. If the compiler doesn't support _Generic(), it will still work. You don't get the compile-time checking of course, but you'd notice that something is wrong once you build with a suitable compiler.
| * checkpoint: add libnm supportBeniamino Galvani2017-11-0917-59/+1270
| |\ | | | | | | | | | | | | | | | Add support for checkpoint/rollback functionality to libnm. https://bugzilla.redhat.com/show_bug.cgi?id=1496739
| | * examples: add checkpoint example using python gobject-introspectionBeniamino Galvani2017-11-091-0/+130
| | |
| | * libnm: add checkpoint supportBeniamino Galvani2017-11-0910-0/+1008
| | |
| | * core: export checkpoint list over D-BusBeniamino Galvani2017-11-095-4/+68
| | |
| | * checkpoint: track checkpoints in a listBeniamino Galvani2017-11-091-27/+41
| | | | | | | | | | | | | | | Checkpoints will be exported over D-Bus and they must be presented in a predictable order. Keep them in a list ordered by creation time.
| | * checkpoint: don't include unrealized devicesBeniamino Galvani2017-11-093-24/+17
| | | | | | | | | | | | | | | | | | | | | | | | Don't include unrealized devices in checkpoint because, as the name says, they are not real. While at it, remove nm_manager_get_device_paths() as it is no longer used.
| | * checkpoint: specify path of already existing checkpoint on errorBeniamino Galvani2017-11-091-3/+5
| | |