summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJiří Klimeš <jklimes@redhat.com>2015-05-29 08:39:31 +0200
committerJiří Klimeš <jklimes@redhat.com>2015-05-29 08:39:31 +0200
commitc18db45220408fd97c314076fb8b2e585d827f7d (patch)
tree6e0522f008cf96093bd5fb77cf8e5d8ce50fb952
parent375d57587e51f32258550df3299031acc8f1f999 (diff)
parent8bf19c0ec4c138b5fe611fc85745b82ecd67858c (diff)
downloadNetworkManager-c18db45220408fd97c314076fb8b2e585d827f7d.tar.gz
merge: increase 'max_replies_per_connection' limit in D-Bus configuration
The limit seems to be too low and causes problems in libnm-glib. We increase the limit and warn in libnm-glib if it was exceeded. (cherry picked from commit 242fe0bfb0bf5e8f772506012ebdad4d129d0a5c)
-rw-r--r--libnm-glib/nm-remote-settings.c9
-rw-r--r--src/org.freedesktop.NetworkManager.conf2
2 files changed, 11 insertions, 0 deletions
diff --git a/libnm-glib/nm-remote-settings.c b/libnm-glib/nm-remote-settings.c
index bc3b3334d9..2d1af5240d 100644
--- a/libnm-glib/nm-remote-settings.c
+++ b/libnm-glib/nm-remote-settings.c
@@ -469,6 +469,7 @@ connection_inited (GObject *source, GAsyncResult *result, gpointer user_data)
AddConnectionInfo *addinfo;
const char *path;
GError *error = NULL, *local;
+ static gboolean print_once = TRUE;
path = nm_connection_get_path (NM_CONNECTION (remote));
addinfo = add_connection_info_find (self, remote);
@@ -504,6 +505,14 @@ connection_inited (GObject *source, GAsyncResult *result, gpointer user_data)
if (!dbus_g_error_has_name (error, "org.freedesktop.NetworkManager.Settings.PermissionDenied"))
g_hash_table_remove (priv->pending, path);
+ if (print_once && error->code == DBUS_GERROR_LIMITS_EXCEEDED) {
+ g_printerr ("Warning: libnm-glib:%s(): a D-Bus limit exceeded: %s. The application might not work properly.\n"
+ "Consider increasing max_replies_per_connection limit in /etc/dbus-1/system.d/org.freedesktop.NetworkManager.conf "
+ "like <limit name=\"max_replies_per_connection\">2048</limit>",
+ __func__, error->message);
+ print_once = FALSE;
+ }
+
g_error_free (error);
}
diff --git a/src/org.freedesktop.NetworkManager.conf b/src/org.freedesktop.NetworkManager.conf
index bdfe3e6773..0f1019b90c 100644
--- a/src/org.freedesktop.NetworkManager.conf
+++ b/src/org.freedesktop.NetworkManager.conf
@@ -120,5 +120,7 @@
<deny send_interface="org.freedesktop.NetworkManager.VPN.Plugin"/>
<deny send_interface="org.freedesktop.NetworkManager.PPP"/>
</policy>
+
+ <limit name="max_replies_per_connection">1024</limit>
</busconfig>