NetworkManager/libnm-core
Thomas Haller 21674d5bfb libnm: treat missing NMSettingVlan:flags property as old default value
We changed the default value of MSettingVlan:flags from 0 to
1 (NM_VLAN_FLAG_REORDER_HEADERS). That means, that old libnm
clients will not serialize 0 (their default).
This change broke the D-Bus API. The D-Bus API allows to omit a value
when meaning the default value. That means, we cannot change the
default value (in the D-Bus API!) without breaking previous assumptions.

A newer libnm version should treat a missing flags argument as the
old default value and thus preserve the original default value (in the
D-Bus API).

This has the downside that for the future we will continue to treat a missing
value as the old default value (0), and in order to get the new default
value (1), the client must explicitly set the flags.

We also must restore the original default value in libnm-glib.
libnm-glib does not support _nm_setting_class_override_property()
and thus it must keep thinking that the default value for the GObject
property continues to be 0. Otherwise, it would not serialize a 1, which
a new libnm would now interpret as 0.

https://bugzilla.redhat.com/show_bug.cgi?id=1250225

Fixes: 687b651598
2015-10-23 11:23:46 +02:00
..
tests libnm: add 'lldp' property to NMSettingConnection 2015-10-12 14:44:19 +02:00
crypto.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
crypto.h all: make use of new header file "nm-default.h" 2015-08-05 15:32:40 +02:00
crypto_gnutls.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
crypto_nss.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
Makefile.am build: extract version macros from "nm-version.h" to new header file "nm-version-macros.h" 2015-09-30 23:10:29 +02:00
Makefile.libnm-core build: extract version macros from "nm-version.h" to new header file "nm-version-macros.h" 2015-09-30 23:10:29 +02:00
nm-connection-private.h libnm-core: make nm_setting_verify() take an NMConnection 2014-10-28 17:17:17 -04:00
nm-connection.c libnm: don't assert in nm_connection_get_*() for verified connection 2015-09-18 16:12:36 +02:00
nm-connection.h libnm, docs: docs fixes 2014-11-07 13:16:54 -05:00
nm-core-internal.h libnm: don't include "nm-version.h" in "nm-dbus-interface.h" 2015-09-25 15:42:15 +02:00
nm-core-types.h libnm: don't include "nm-version.h" in "nm-dbus-interface.h" 2015-09-25 15:42:15 +02:00
nm-dbus-interface.h device: export list of LLDP neighbors through D-Bus 2015-10-12 14:44:30 +02:00
nm-dbus-utils.c libnm/trivial: add code comment to _nm_dbus_error_has_name() 2015-08-25 16:37:43 +02:00
nm-errors.c libnm: don't include "nm-version.h" in "nm-dbus-interface.h" 2015-09-25 15:42:15 +02:00
nm-errors.h libnm, docs: docs fixes 2014-11-07 13:16:54 -05:00
nm-keyfile-internal.h all: make use of new header file "nm-default.h" 2015-08-05 15:32:40 +02:00
nm-keyfile-reader.c libnm: explicitly cast enum type for g_object_set() 2015-10-08 13:11:44 +02:00
nm-keyfile-utils.c all: make use of new header file "nm-default.h" 2015-08-05 15:32:40 +02:00
nm-keyfile-utils.h libnm: add keyfile support to libnm-core 2015-03-12 18:12:26 +01:00
nm-keyfile-writer.c libnm/vlan: default to vlan.flags=REORDER_HDR for new connections (rh #1250225) 2015-10-07 13:45:30 +02:00
nm-property-compare.c all: make use of new header file "nm-default.h" 2015-08-05 15:32:40 +02:00
nm-property-compare.h all: make use of new header file "nm-default.h" 2015-08-05 15:32:40 +02:00
nm-setting-8021x.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-8021x.h libnm: add define for cert scheme prefix file:// for NMSetting8021x 2015-03-12 18:12:27 +01:00
nm-setting-adsl.c libnm-core/libnm-util: fix an assertion in adsl setting 2015-09-21 15:21:50 +02:00
nm-setting-adsl.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-bluetooth.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-bluetooth.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-bond.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-bond.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-bridge-port.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-bridge-port.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-bridge.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-bridge.h libnm-core: add multicast-snooping property to bridge setting 2015-02-26 09:08:13 +01:00
nm-setting-cdma.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-cdma.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-connection.c ifcfg-rh: add support for 'LLDP' connection property 2015-10-12 14:44:31 +02:00
nm-setting-connection.h libnm: add 'lldp' property to NMSettingConnection 2015-10-12 14:44:19 +02:00
nm-setting-dcb.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-dcb.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-generic.c libnm-core: merge NMSetting*Error into NMConnectionError 2014-10-22 08:29:07 -04:00
nm-setting-generic.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-gsm.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-gsm.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-infiniband.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-infiniband.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-ip-config.c libnm: specify (transfer none) introspection annotation (bgo #756380) 2015-10-12 12:29:31 +02:00
nm-setting-ip-config.h libnm: make dns-options support an "undefined" default value 2015-06-05 12:26:48 +02:00
nm-setting-ip4-config.c libnm-core: fix documentation for DHCP_TIMEOUT ifcfg-rh variable 2015-10-13 15:36:46 +02:00
nm-setting-ip4-config.h libnm,ip4-config: add ipv4.dhcp-timeout property 2015-10-06 14:16:55 +02:00
nm-setting-ip6-config.c libnm-core/libnm-util: fix an erroneous error message 2015-09-25 16:11:24 +02:00
nm-setting-ip6-config.h libnm-core: extract NMSettingIPConfig superclass out of IP4, IP6 classes 2014-11-07 07:49:40 -05:00
nm-setting-olpc-mesh.c libnm: don't include "nm-version.h" in "nm-dbus-interface.h" 2015-09-25 15:42:15 +02:00
nm-setting-olpc-mesh.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-ppp.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-ppp.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-pppoe.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-pppoe.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-private.h libnm: mark properties that take effect immediately on active connection (REAPPLY_IMMEDIATELY) 2015-09-18 17:31:51 +02:00
nm-setting-serial.c all: make use of new header file "nm-default.h" 2015-08-05 15:32:40 +02:00
nm-setting-serial.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-team-port.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-team-port.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-team.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-team.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-vlan.c libnm: treat missing NMSettingVlan:flags property as old default value 2015-10-23 11:23:46 +02:00
nm-setting-vlan.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-vpn.c libnm-core: add vpn.timeout property for establishing connections 2015-09-21 16:59:04 +02:00
nm-setting-vpn.h libnm-core: add vpn.timeout property for establishing connections 2015-09-21 16:59:04 +02:00
nm-setting-wimax.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-wimax.h wimax: drop WiMAX support (bgo #747846) 2015-04-17 12:42:23 -04:00
nm-setting-wired.c wake-on-lan: add option to keep existing settings 2015-10-16 17:11:26 +02:00
nm-setting-wired.h wake-on-lan: add option to keep existing settings 2015-10-16 17:11:26 +02:00
nm-setting-wireless-security.c all: drop includes to <glib/gi18n.h> for "nm-default.h" 2015-08-05 15:35:51 +02:00
nm-setting-wireless-security.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-setting-wireless.c libnm: don't include "nm-version.h" in "nm-dbus-interface.h" 2015-09-25 15:42:15 +02:00
nm-setting-wireless.h libnm: don't include "nm-version.h" in "nm-dbus-interface.h" 2015-09-25 15:42:15 +02:00
nm-setting.c libnm: mark properties that take effect immediately on active connection (REAPPLY_IMMEDIATELY) 2015-09-18 17:31:51 +02:00
nm-setting.h libnm: mark properties that take effect immediately on active connection (REAPPLY_IMMEDIATELY) 2015-09-18 17:31:51 +02:00
nm-simple-connection.c libnm: normalize connections in nm_simple_connection_new_from_dbus() 2014-12-05 11:04:20 +01:00
nm-simple-connection.h libnm-core: add nm-core-types.h, remove cross-includes 2014-10-28 17:17:17 -04:00
nm-utils-private.h libnm: expose strv utils function in internal header nm-core-internal.h 2015-07-02 15:50:04 +02:00
nm-utils.c nmcli: wake-on-lan property set/get fixes 2015-09-15 11:46:37 +02:00
nm-utils.h libnm: don't include "nm-version.h" in "nm-dbus-interface.h" 2015-09-25 15:42:15 +02:00
nm-version.h build: extract version macros from "nm-version.h" to new header file "nm-version-macros.h" 2015-09-30 23:10:29 +02:00
nm-vpn-dbus-interface.h vpn: allow plugins to indicate 'can-persist' capability 2014-11-06 21:17:34 -06:00
nm-vpn-editor-plugin.c libnm,vpn-editor-plugin: don't assert the plugin name is the same as service name 2015-08-21 16:06:39 +02:00
nm-vpn-editor-plugin.h libnm,vpn-editor-plugin: don't assert the plugin name is the same as service name 2015-08-21 16:06:39 +02:00
nm-vpn-plugin-info.c libnm,libnm-core: fix GTK-Doc warnings 2015-10-16 17:33:12 +02:00
nm-vpn-plugin-info.h libnm-core/vpn-plugin-info: add nm_vpn_plugin_info_supports_multiple() 2015-10-13 18:20:56 +02:00