Revamp of command-line handling. Most command line options should
[u/mdw/putty] / putty.h
diff --git a/putty.h b/putty.h
index 04804c2..9994b85 100644 (file)
--- a/putty.h
+++ b/putty.h
@@ -242,6 +242,15 @@ typedef struct {
     int warn_on_close;
     int ping_interval;                /* in seconds */
     int tcp_nodelay;
+    /* Proxy options */
+    char proxy_exclude_list[512];
+    enum { PROXY_NONE, PROXY_HTTP, PROXY_SOCKS, PROXY_TELNET } proxy_type;
+    char proxy_host[512];
+    int proxy_port;
+    char proxy_username[32];
+    char proxy_password[32];
+    char proxy_telnet_command[512];
+    int proxy_socks_version;
     /* SSH options */
     char remote_cmd[512];
     char remote_cmd2[512];            /* fallback if the first fails
@@ -277,6 +286,12 @@ typedef struct {
     int funky_type;
     int no_applic_c;                  /* totally disable app cursor keys */
     int no_applic_k;                  /* totally disable app keypad */
+    int no_mouse_rep;                 /* totally disable mouse reporting */
+    int no_remote_resize;             /* disable remote resizing */
+    int no_alt_screen;                /* disable alternate screen */
+    int no_remote_wintitle;           /* disable remote retitling */
+    int no_dbackspace;                /* disable destructive backspace */
+    int no_remote_charset;            /* disable remote charset config */
     int app_cursor;
     int app_keypad;
     int nethack_keypad;
@@ -330,6 +345,7 @@ typedef struct {
     int sunken_edge;
     int window_border;
     char answerback[256];
+    char printer[128];
     /* Colour options */
     int try_palette;
     int bold_colour;
@@ -490,6 +506,7 @@ int from_backend(int is_stderr, char *data, int len);
 void logfopen(void);
 void logfclose(void);
 void term_copyall(void);
+void term_reconfig(void);
 
 /*
  * Exports from logging.c.
@@ -517,11 +534,14 @@ extern Backend rlogin_backend;
 extern Backend telnet_backend;
 
 /*
- * Exports from ssh.c.
+ * Exports from ssh.c. (NB the getline variables have to be GLOBAL
+ * so that PuTTYtel will still compile - otherwise it would depend
+ * on ssh.c.)
  */
 
-extern int (*ssh_get_line) (const char *prompt, char *str, int maxlen,
+GLOBAL int (*ssh_get_line) (const char *prompt, char *str, int maxlen,
                            int is_pw);
+GLOBAL int ssh_getline_pw_only;
 extern Backend ssh_backend;
 
 /*
@@ -599,7 +619,31 @@ int wc_unescape(char *output, const char *wildcard);
  * windlg.c).
  */
 extern int console_batch_mode;
-extern char *console_password;
 int console_get_line(const char *prompt, char *str, int maxlen, int is_pw);
 
+/*
+ * Exports from printing.c.
+ */
+typedef struct printer_enum_tag printer_enum;
+typedef struct printer_job_tag printer_job;
+printer_enum *printer_start_enum(int *nprinters);
+char *printer_get_name(printer_enum *, int);
+void printer_finish_enum(printer_enum *);
+printer_job *printer_start_job(char *printer);
+void printer_job_data(printer_job *, void *, int);
+void printer_finish_job(printer_job *);
+
+/*
+ * Exports from cmdline.c (and also cmdline_error(), which is
+ * defined differently in various places and required _by_
+ * cmdline.c).
+ */
+int cmdline_process_param(char *, char *, int);
+void cmdline_run_saved(void);
+extern char *cmdline_password;
+#define TOOLTYPE_FILETRANSFER 1
+extern int cmdline_tooltype;
+
+void cmdline_error(char *, ...);
+
 #endif