Revamp of the local X11 connection code. We now parse X display
[u/mdw/putty] / windows / wincfg.c
index ff5739b..516f0a3 100644 (file)
@@ -31,7 +31,7 @@ static void help_handler(union control *ctrl, void *dlg,
 }
 
 void win_setup_config_box(struct controlbox *b, HWND *hwndp, int has_help,
-                         int midsession)
+                         int midsession, int protocol)
 {
     struct controlset *s;
     union control *c;
@@ -375,5 +375,16 @@ void win_setup_config_box(struct controlbox *b, HWND *hwndp, int has_help,
     /*
      * Serial back end is available on Windows.
      */
-    ser_setup_config_box(b, midsession);
+    if (!midsession || (protocol == PROT_SERIAL))
+        ser_setup_config_box(b, midsession, 0x1F, 0x0F);
+
+    /*
+     * $XAUTHORITY is not reliable on Windows, so we provide a
+     * means to override it.
+     */
+    s = ctrl_getset(b, "Connection/SSH/X11", "x11", "X11 forwarding");
+    ctrl_filesel(s, "X authority file for local display", 't',
+                NULL, FALSE, "Select X authority file",
+                HELPCTX(ssh_tunnels_xauthority),
+                dlg_stdfilesel_handler, I(offsetof(Config, xauthfile)));
 }