GLOBAL int big_cursor;
+GLOBAL char *help_path;
+GLOBAL int help_has_contents;
+
GLOBAL int utf;
GLOBAL int dbcs_screenfont;
GLOBAL int font_codepage;
#define LGXF_ASK -1 /* existing logfile ask */
#define LGTYP_NONE 0 /* logmode: no logging */
#define LGTYP_ASCII 1 /* logmode: pure ascii */
-#define LGTYP_DEBUG 2 /* logmode: all chars of taffic */
+#define LGTYP_DEBUG 2 /* logmode: all chars of traffic */
+#define LGTYP_PACKETS 3 /* logmode: SSH data packets */
GLOBAL char *logfile;
/*
void (*size) (void);
void (*special) (Telnet_Special code);
Socket(*socket) (void);
+ int (*exitcode) (void);
int (*sendok) (void);
int (*ldisc) (int);
/*
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
int nopty;
int compression;
int agentfwd;
+ int change_username; /* allow username switching in SSH2 */
int ssh_cipherlist[CIPHER_MAX];
char keyfile[FILENAME_MAX];
int sshprot; /* use v1 or v2 when both available */
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;
int telnet_keyboard;
+ int telnet_newline;
int alt_f4; /* is it special? */
int alt_space; /* is it special? */
int alt_only; /* is it special? */
int sunken_edge;
int window_border;
char answerback[256];
+ char printer[128];
/* Colour options */
int try_palette;
int bold_colour;
int x11_forward;
char x11_display[128];
/* port forwarding */
- int lport_acceptall; /* accepts connection from hosts other than localhost */
+ int lport_acceptall; /* accept conns from hosts other than localhost */
+ int rport_acceptall; /* same for remote forwarded ports (SSH2 only) */
char portfwd[1024]; /* [LR]localport\thost:port\000[LR]localport\thost:port\000\000 */
} Config;
void get_window_pixels(int *x, int *y);
char *get_window_title(int icon);
+void cleanup_exit(int);
+
/*
* Exports from noise.c.
*/
void logfopen(void);
void logfclose(void);
void term_copyall(void);
+void term_reconfig(void);
+
+/*
+ * Exports from logging.c.
+ */
+void logtraffic(unsigned char c, int logmode);
+enum { PKT_INCOMING, PKT_OUTGOING };
+void log_packet(int direction, int type, char *texttype, void *data, int len);
/*
* Exports from raw.c.
void random_init(void);
int random_byte(void);
void random_get_savedata(void **data, int *len);
+extern int random_active;
/*
* Exports from misc.c.
int wc_match(const char *wildcard, const char *target);
int wc_unescape(char *output, const char *wildcard);
+/*
+ * Exports from console.c (that aren't equivalents to things in
+ * 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 *);
+
#endif