X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/putty/blobdiff_plain/f7f273099c8798f70611550bfc06b417e5c28ac7..5c0ea258b7f1d4725ddd717d9b6e9e7f8ec079f3:/putty.h diff --git a/putty.h b/putty.h index 67457be8..cbccef76 100644 --- a/putty.h +++ b/putty.h @@ -17,6 +17,7 @@ #endif typedef struct config_tag Config; +typedef struct backend_tag Backend; #include "puttyps.h" #include "network.h" @@ -98,8 +99,6 @@ typedef struct config_tag Config; #define ATTR_CUR_AND (~(ATTR_BOLD|ATTR_REVERSE|ATTR_BLINK|ATTR_COLOURS)) #define ATTR_CUR_XOR 0x00BA0000UL -#define SEL_NL { 13, 10 } - GLOBAL int rows, cols, savelines; GLOBAL int has_focus; @@ -121,6 +120,9 @@ GLOBAL int big_cursor; GLOBAL char *help_path; GLOBAL int help_has_contents; +GLOBAL int nsessions; +GLOBAL char **sessions; + GLOBAL int utf; GLOBAL int dbcs_screenfont; GLOBAL int font_codepage; @@ -141,7 +143,6 @@ GLOBAL unsigned char unitab_ctrl[256]; #define LGTYP_ASCII 1 /* logmode: pure ascii */ #define LGTYP_DEBUG 2 /* logmode: all chars of traffic */ #define LGTYP_PACKETS 3 /* logmode: SSH data packets */ -GLOBAL char *logfile; typedef enum { TS_AYT, TS_BRK, TS_SYNCH, TS_EC, TS_EL, TS_GA, TS_NOP, TS_ABORT, @@ -200,7 +201,7 @@ enum { COE_ALWAYS /* Always close the window */ }; -typedef struct { +struct backend_tag { char *(*init) (char *host, int port, char **realhost, int nodelay); /* back->send() returns the current amount of buffered data. */ int (*send) (char *buf, int len); @@ -218,7 +219,7 @@ typedef struct { */ void (*unthrottle) (int); int default_port; -} Backend; +}; GLOBAL Backend *back; @@ -368,6 +369,12 @@ struct config_tag { } sshbug_ignore1, sshbug_plainpw1, sshbug_rsa1, sshbug_hmac2, sshbug_derivekey2, sshbug_rsapad2, sshbug_dhgex2; + /* Options for pterm. Should split out into platform-dependent part. */ + int stamp_utmp; + int login_shell; + int scrollbar_on_left; + char boldfont[64]; + int shadowboldoffset; }; /* @@ -428,9 +435,11 @@ void set_raw_mouse_mode(int); Mouse_Button translate_button(Mouse_Button b); void connection_fatal(char *, ...); void fatalbox(char *, ...); +void modalfatalbox(char *, ...); void beep(int); void begin_session(void); void sys_cursor(int x, int y); +void request_paste(void); #define OPTIMISE_IS_SCROLL 1 void set_iconic(int iconic); @@ -461,6 +470,8 @@ void random_destroy_seed(void); void save_settings(char *section, int do_host, Config * cfg); void load_settings(char *section, int do_host, Config * cfg); void get_sesslist(int allocate); +void do_defaults(char *, Config *); +void registry_cleanup(void); /* * Exports from terminal.c. @@ -479,6 +490,7 @@ void term_update(void); void term_invalidate(void); void term_blink(int set_cursor); void term_do_paste(void); +int term_paste_pending(void); void term_paste(void); void term_nopaste(void); int term_ldisc(int option); @@ -590,6 +602,15 @@ int wc_match(const char *wildcard, const char *target); int wc_unescape(char *output, const char *wildcard); /* + * Exports from windlg.c + */ +void logevent(char *); +void verify_ssh_host_key(char *host, int port, char *keytype, + char *keystr, char *fingerprint); +void askcipher(char *ciphername, int cs); +int askappend(char *filename); + +/* * Exports from console.c (that aren't equivalents to things in * windlg.c). */