6745e3d
diff -up gdm-2.22.0/common/gdm-settings-keys.h.enable-tcp gdm-2.22.0/common/gdm-settings-keys.h
6745e3d
--- gdm-2.22.0/common/gdm-settings-keys.h.enable-tcp	2008-04-17 23:29:27.000000000 -0400
6745e3d
+++ gdm-2.22.0/common/gdm-settings-keys.h	2008-06-25 11:19:51.000000000 -0400
6745e3d
@@ -31,6 +31,8 @@ G_BEGIN_DECLS
6745e3d
 #define GDM_KEY_TIMED_LOGIN_USER "daemon/TimedLogin"
6745e3d
 #define GDM_KEY_TIMED_LOGIN_DELAY "daemon/TimedLoginDelay"
6745e3d
 
6745e3d
+#define GDM_KEY_DISALLOW_TCP "security/DisallowTCP"
6745e3d
+
6745e3d
 #define GDM_KEY_XDMCP_ENABLE "xdmcp/Enable"
6745e3d
 #define GDM_KEY_MAX_PENDING "xdmcp/MaxPending"
6745e3d
 #define GDM_KEY_MAX_SESSIONS "xdmcp/MaxSessions"
6745e3d
diff -up gdm-2.22.0/daemon/gdm-simple-slave.c.enable-tcp gdm-2.22.0/daemon/gdm-simple-slave.c
6745e3d
--- gdm-2.22.0/daemon/gdm-simple-slave.c.enable-tcp	2008-06-25 11:19:51.000000000 -0400
6745e3d
+++ gdm-2.22.0/daemon/gdm-simple-slave.c	2008-06-25 11:29:44.000000000 -0400
6745e3d
@@ -1003,8 +1003,18 @@ gdm_simple_slave_run (GdmSimpleSlave *sl
6745e3d
          * exist */
6745e3d
         if (display_is_local) {
6745e3d
                 gboolean res;
6745e3d
+                gboolean disable_tcp;
6745e3d
 
6745e3d
                 slave->priv->server = gdm_server_new (display_name, auth_file);
6745e3d
+
6745e3d
+                disable_tcp = TRUE;
6745e3d
+                if (gdm_settings_client_get_boolean (GDM_KEY_DISALLOW_TCP,
6745e3d
+                                                     &disable_tcp)) {
6745e3d
+                        g_object_set (slave->priv->server,
6745e3d
+                                      "disable-tcp", disable_tcp,
6745e3d
+                                      NULL);
6745e3d
+                }
6745e3d
+
6745e3d
                 g_signal_connect (slave->priv->server,
6745e3d
                                   "exited",
6745e3d
                                   G_CALLBACK (on_server_exited),
6745e3d
diff -up gdm-2.22.0/data/gdm.conf-custom.in.enable-tcp gdm-2.22.0/data/gdm.conf-custom.in
6745e3d
--- gdm-2.22.0/data/gdm.conf-custom.in.enable-tcp	2008-04-17 23:29:29.000000000 -0400
6745e3d
+++ gdm-2.22.0/data/gdm.conf-custom.in	2008-06-25 11:19:51.000000000 -0400
6745e3d
@@ -4,4 +4,6 @@
6745e3d
 
6745e3d
 [chooser]
6745e3d
 
6745e3d
+[security]
6745e3d
+
6745e3d
 [debug]
6745e3d
diff -up gdm-2.22.0/data/gdm.schemas.in.enable-tcp gdm-2.22.0/data/gdm.schemas.in
6745e3d
--- gdm-2.22.0/data/gdm.schemas.in.enable-tcp	2008-04-20 09:51:56.000000000 -0400
6745e3d
+++ gdm-2.22.0/data/gdm.schemas.in	2008-06-25 11:19:51.000000000 -0400
6745e3d
@@ -28,6 +28,12 @@
6745e3d
     </schema>
6745e3d
 
6745e3d
     <schema>
6745e3d
+      <key>security/DisallowTCP</key>
6745e3d
+      <signature>b</signature>
6745e3d
+      <default>true</default>
6745e3d
+    </schema>
6745e3d
+
6745e3d
+    <schema>
6745e3d
       <key>xdmcp/Enable</key>
6745e3d
       <signature>b</signature>
6745e3d
       <default>false</default>