summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2017-01-03 16:18:19 +0100
committerThomas Haller <thaller@redhat.com>2017-01-03 16:18:19 +0100
commitf709393ed4e3ad0767fed86a34ac08a4b0ac8684 (patch)
treef1df3daae230c43540a22abf3e60d22b60c50362
parent922cb4ab77b634469d08992e3172fe9313fda386 (diff)
parent2486dc5c451bdbc3dd83478ed305c03a98591ee5 (diff)
downloadNetworkManager-f709393ed4e3ad0767fed86a34ac08a4b0ac8684.tar.gz
exported-object: merge extending counter for D-Bus paths to 64bit
-rw-r--r--src/devices/nm-device.c2
-rw-r--r--src/devices/wifi/nm-wifi-ap.c2
-rw-r--r--src/nm-active-connection.c2
-rw-r--r--src/nm-checkpoint.c2
-rw-r--r--src/nm-dhcp4-config.c2
-rw-r--r--src/nm-dhcp6-config.c2
-rw-r--r--src/nm-exported-object.c14
-rw-r--r--src/nm-exported-object.h2
-rw-r--r--src/nm-ip4-config.c2
-rw-r--r--src/nm-ip6-config.c2
-rw-r--r--src/ppp/nm-ppp-manager.c2
-rw-r--r--src/settings/nm-settings-connection.c2
12 files changed, 20 insertions, 16 deletions
diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
index af201d8ce9..c980133466 100644
--- a/src/devices/nm-device.c
+++ b/src/devices/nm-device.c
@@ -13070,7 +13070,7 @@ nm_device_class_init (NMDeviceClass *klass)
g_type_class_add_private (object_class, sizeof (NMDevicePrivate));
- exported_object_class->export_path = NM_DBUS_PATH "/Devices/%u";
+ exported_object_class->export_path = NM_EXPORT_PATH_NUMBERED (NM_DBUS_PATH"/Devices");
object_class->dispose = dispose;
object_class->finalize = finalize;
diff --git a/src/devices/wifi/nm-wifi-ap.c b/src/devices/wifi/nm-wifi-ap.c
index 98e97ead4f..c5d8af25ba 100644
--- a/src/devices/wifi/nm-wifi-ap.c
+++ b/src/devices/wifi/nm-wifi-ap.c
@@ -969,7 +969,7 @@ nm_wifi_ap_class_init (NMWifiAPClass *ap_class)
GObjectClass *object_class = G_OBJECT_CLASS (ap_class);
NMExportedObjectClass *exported_object_class = NM_EXPORTED_OBJECT_CLASS (ap_class);
- exported_object_class->export_path = NM_DBUS_PATH_ACCESS_POINT "/%u";
+ exported_object_class->export_path = NM_EXPORT_PATH_NUMBERED (NM_DBUS_PATH_ACCESS_POINT);
object_class->get_property = get_property;
object_class->finalize = finalize;
diff --git a/src/nm-active-connection.c b/src/nm-active-connection.c
index 85ca6a20c2..17fb82e50a 100644
--- a/src/nm-active-connection.c
+++ b/src/nm-active-connection.c
@@ -1168,7 +1168,7 @@ nm_active_connection_class_init (NMActiveConnectionClass *ac_class)
g_type_class_add_private (ac_class, sizeof (NMActiveConnectionPrivate));
- exported_object_class->export_path = NM_DBUS_PATH "/ActiveConnection/%u";
+ exported_object_class->export_path = NM_EXPORT_PATH_NUMBERED (NM_DBUS_PATH"/ActiveConnection");
object_class->get_property = get_property;
object_class->set_property = set_property;
diff --git a/src/nm-checkpoint.c b/src/nm-checkpoint.c
index 6632ce4918..7d89e61ef8 100644
--- a/src/nm-checkpoint.c
+++ b/src/nm-checkpoint.c
@@ -455,7 +455,7 @@ nm_checkpoint_class_init (NMCheckpointClass *checkpoint_class)
GObjectClass *object_class = G_OBJECT_CLASS (checkpoint_class);
NMExportedObjectClass *exported_object_class = NM_EXPORTED_OBJECT_CLASS (checkpoint_class);
- exported_object_class->export_path = NM_DBUS_PATH "/Checkpoint/%u";
+ exported_object_class->export_path = NM_EXPORT_PATH_NUMBERED (NM_DBUS_PATH"/Checkpoint");
exported_object_class->export_on_construction = FALSE;
object_class->dispose = dispose;
diff --git a/src/nm-dhcp4-config.c b/src/nm-dhcp4-config.c
index 5106c73dad..10f58bc62b 100644
--- a/src/nm-dhcp4-config.c
+++ b/src/nm-dhcp4-config.c
@@ -156,7 +156,7 @@ nm_dhcp4_config_class_init (NMDhcp4ConfigClass *config_class)
object_class->get_property = get_property;
object_class->finalize = finalize;
- exported_object_class->export_path = NM_DBUS_PATH "/DHCP4Config/%u";
+ exported_object_class->export_path = NM_EXPORT_PATH_NUMBERED (NM_DBUS_PATH"/DHCP4Config");
exported_object_class->export_on_construction = TRUE;
obj_properties[PROP_OPTIONS] =
diff --git a/src/nm-dhcp6-config.c b/src/nm-dhcp6-config.c
index d3188a2033..d51d77ef37 100644
--- a/src/nm-dhcp6-config.c
+++ b/src/nm-dhcp6-config.c
@@ -154,7 +154,7 @@ nm_dhcp6_config_class_init (NMDhcp6ConfigClass *config_class)
object_class->get_property = get_property;
object_class->finalize = finalize;
- exported_object_class->export_path = NM_DBUS_PATH "/DHCP6Config/%u";
+ exported_object_class->export_path = NM_EXPORT_PATH_NUMBERED (NM_DBUS_PATH"/DHCP6Config");
exported_object_class->export_on_construction = TRUE;
obj_properties[PROP_OPTIONS] =
diff --git a/src/nm-exported-object.c b/src/nm-exported-object.c
index f3831c8f67..a53a3123e8 100644
--- a/src/nm-exported-object.c
+++ b/src/nm-exported-object.c
@@ -564,7 +564,7 @@ _create_export_path (NMExportedObjectClass *klass)
{
const char *class_export_path, *p;
static GHashTable *prefix_counters;
- guint *counter;
+ guint64 *counter;
class_export_path = klass->export_path;
@@ -575,17 +575,19 @@ _create_export_path (NMExportedObjectClass *klass)
if (G_UNLIKELY (!prefix_counters))
prefix_counters = g_hash_table_new (g_str_hash, g_str_equal);
- g_assert (p[1] == 'u');
- g_assert (strchr (p + 1, '%') == NULL);
+ nm_assert (p[1] == 'l');
+ nm_assert (p[2] == 'l');
+ nm_assert (p[3] == 'u');
+ nm_assert (p[4] == '\0');
counter = g_hash_table_lookup (prefix_counters, class_export_path);
if (!counter) {
- counter = g_slice_new0 (guint);
- g_hash_table_insert (prefix_counters, g_strdup (class_export_path), counter);
+ counter = g_slice_new0 (guint64);
+ g_hash_table_insert (prefix_counters, (char *) class_export_path, counter);
}
NM_PRAGMA_WARNING_DISABLE("-Wformat-nonliteral")
- return g_strdup_printf (class_export_path, (*counter)++);
+ return g_strdup_printf (class_export_path, (long long unsigned) (++(*counter)));
NM_PRAGMA_WARNING_REENABLE
}
diff --git a/src/nm-exported-object.h b/src/nm-exported-object.h
index 75f9c59a6d..7d3481296f 100644
--- a/src/nm-exported-object.h
+++ b/src/nm-exported-object.h
@@ -23,6 +23,8 @@
/*****************************************************************************/
+#define NM_EXPORT_PATH_NUMBERED(basepath) ""basepath"/%llu"
+
char *nm_exported_object_skeletonify_method_name (const char *dbus_method_name);
typedef struct {
diff --git a/src/nm-ip4-config.c b/src/nm-ip4-config.c
index 4c0883cdba..2bd0d36cb3 100644
--- a/src/nm-ip4-config.c
+++ b/src/nm-ip4-config.c
@@ -2473,7 +2473,7 @@ nm_ip4_config_class_init (NMIP4ConfigClass *config_class)
GObjectClass *object_class = G_OBJECT_CLASS (config_class);
NMExportedObjectClass *exported_object_class = NM_EXPORTED_OBJECT_CLASS (config_class);
- exported_object_class->export_path = NM_DBUS_PATH "/IP4Config/%u";
+ exported_object_class->export_path = NM_EXPORT_PATH_NUMBERED (NM_DBUS_PATH"/IP4Config");
object_class->get_property = get_property;
object_class->set_property = set_property;
diff --git a/src/nm-ip6-config.c b/src/nm-ip6-config.c
index 661d4377b6..713e2c12a0 100644
--- a/src/nm-ip6-config.c
+++ b/src/nm-ip6-config.c
@@ -2237,7 +2237,7 @@ nm_ip6_config_class_init (NMIP6ConfigClass *config_class)
GObjectClass *object_class = G_OBJECT_CLASS (config_class);
NMExportedObjectClass *exported_object_class = NM_EXPORTED_OBJECT_CLASS (config_class);
- exported_object_class->export_path = NM_DBUS_PATH "/IP6Config/%u";
+ exported_object_class->export_path = NM_EXPORT_PATH_NUMBERED (NM_DBUS_PATH"/IP6Config");
/* virtual methods */
object_class->get_property = get_property;
diff --git a/src/ppp/nm-ppp-manager.c b/src/ppp/nm-ppp-manager.c
index bf24552fb3..cc7451c97b 100644
--- a/src/ppp/nm-ppp-manager.c
+++ b/src/ppp/nm-ppp-manager.c
@@ -1232,7 +1232,7 @@ nm_ppp_manager_class_init (NMPPPManagerClass *manager_class)
object_class->get_property = get_property;
object_class->set_property = set_property;
- exported_object_class->export_path = NM_DBUS_PATH "/PPP/%u";
+ exported_object_class->export_path = NM_EXPORT_PATH_NUMBERED (NM_DBUS_PATH"/PPP");
obj_properties[PROP_PARENT_IFACE] =
g_param_spec_string (NM_PPP_MANAGER_PARENT_IFACE, "", "",
diff --git a/src/settings/nm-settings-connection.c b/src/settings/nm-settings-connection.c
index bf62f91322..4441803a69 100644
--- a/src/settings/nm-settings-connection.c
+++ b/src/settings/nm-settings-connection.c
@@ -2793,7 +2793,7 @@ nm_settings_connection_class_init (NMSettingsConnectionClass *class)
g_type_class_add_private (class, sizeof (NMSettingsConnectionPrivate));
- exported_object_class->export_path = NM_DBUS_PATH_SETTINGS "/%u";
+ exported_object_class->export_path = NM_EXPORT_PATH_NUMBERED (NM_DBUS_PATH_SETTINGS);
object_class->constructed = constructed;
object_class->dispose = dispose;