summaryrefslogtreecommitdiff
path: root/daemon/gdm-server.c
diff options
context:
space:
mode:
Diffstat (limited to 'daemon/gdm-server.c')
-rw-r--r--daemon/gdm-server.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/daemon/gdm-server.c b/daemon/gdm-server.c
index eb7db0e2..6357d344 100644
--- a/daemon/gdm-server.c
+++ b/daemon/gdm-server.c
@@ -320,11 +320,24 @@ gdm_server_resolve_command_line (GdmServer *server,
argv[len++] = g_strdup (server->priv->display_seat_id);
}
+ /* If we were compiled with Xserver >= 1.17 we need to specify
+ * '-listen tcp' as the X server dosen't listen on tcp sockets
+ * by default anymore. In older versions we need to pass
+ * -nolisten tcp to disable listening on tcp sockets.
+ */
+#ifdef HAVE_XSERVER_THAT_DEFAULTS_TO_LOCAL_ONLY
+ if (!server->priv->disable_tcp && ! query_in_arglist) {
+ argv[len++] = g_strdup ("-listen");
+ argv[len++] = g_strdup ("tcp");
+ }
+#else
if (server->priv->disable_tcp && ! query_in_arglist) {
argv[len++] = g_strdup ("-nolisten");
argv[len++] = g_strdup ("tcp");
}
+#endif
+
if (vtarg != NULL && ! gotvtarg) {
argv[len++] = g_strdup (vtarg);
}