X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/17c7fed17d17ed23790ea1c264270569c71126c1..7374c7790ee32f36855e4257eb15d2fe43e277ea:/putty.h diff --git a/putty.h b/putty.h index 0f975b32..e43f97f1 100644 --- a/putty.h +++ b/putty.h @@ -70,8 +70,10 @@ typedef struct terminal_tag Terminal; #define LATTR_TOP 0x00000002UL #define LATTR_BOT 0x00000003UL #define LATTR_MODE 0x00000003UL -#define LATTR_WRAPPED 0x00000010UL -#define LATTR_WRAPPED2 0x00000020UL +#define LATTR_WRAPPED 0x00000010UL /* this line wraps to next */ +#define LATTR_WRAPPED2 0x00000020UL /* with WRAPPED: CJK wide character + wrapped to next line, so last + single-width cell is empty */ #define ATTR_INVALID 0x03FFFFU @@ -296,7 +298,10 @@ enum { enum { /* Protocol back ends. (cfg.protocol) */ - PROT_RAW, PROT_TELNET, PROT_RLOGIN, PROT_SSH + PROT_RAW, PROT_TELNET, PROT_RLOGIN, PROT_SSH, + /* PROT_SERIAL is supported on a subset of platforms, but it doesn't + * hurt to define it globally. */ + PROT_SERIAL }; enum { @@ -328,6 +333,14 @@ enum { FQ_DEFAULT, FQ_ANTIALIASED, FQ_NONANTIALIASED, FQ_CLEARTYPE }; +enum { + SER_PAR_NONE, SER_PAR_ODD, SER_PAR_EVEN, SER_PAR_MARK, SER_PAR_SPACE +}; + +enum { + SER_FLOW_NONE, SER_FLOW_XONXOFF, SER_FLOW_RTSCTS, SER_FLOW_DSRDTR +}; + extern const char *const ttymodes[]; enum { @@ -355,7 +368,7 @@ struct backend_tag { void (*size) (void *handle, int width, int height); void (*special) (void *handle, Telnet_Special code); const struct telnet_special *(*get_specials) (void *handle); - Socket(*socket) (void *handle); + int (*connected) (void *handle); int (*exitcode) (void *handle); /* If back->sendok() returns FALSE, data sent to it from the frontend * may be lost. */ @@ -432,6 +445,7 @@ struct config_tag { int ssh_kexlist[KEX_MAX]; int ssh_rekey_time; /* in minutes */ char ssh_rekey_data[16]; + int tryagent; int agentfwd; int change_username; /* allow username switching in SSH-2 */ int ssh_cipherlist[CIPHER_MAX]; @@ -453,6 +467,12 @@ struct config_tag { char localusername[100]; int rfc_environ; int passive_telnet; + /* Serial port options */ + char serline[256]; + int serspeed; + int serdatabits, serstopbits; + int serparity; + int serflow; /* Keyboard options */ int bksp_is_delete; int rxvt_homeend; @@ -680,7 +700,7 @@ void free_ctx(Context); void palette_set(void *frontend, int, int, int, int); void palette_reset(void *frontend); void write_aclip(void *frontend, char *, int, int); -void write_clip(void *frontend, wchar_t *, int, int); +void write_clip(void *frontend, wchar_t *, int *, int, int); void get_clip(void *frontend, wchar_t **, int *); void optimised_move(void *frontend, int, int, int); void set_raw_mouse_mode(void *frontend, int); @@ -784,7 +804,7 @@ void term_free(Terminal *); void term_size(Terminal *, int, int, int); void term_paint(Terminal *, Context, int, int, int, int, int); void term_scroll(Terminal *, int, int); -void term_pwron(Terminal *); +void term_pwron(Terminal *, int); void term_clrsb(Terminal *); void term_mouse(Terminal *, Mouse_Button, Mouse_Button, Mouse_Action, int,int,int,int,int); @@ -905,6 +925,13 @@ void pinger_free(Pinger); */ #include "misc.h" +int cfg_launchable(const Config *cfg); +char const *cfg_dest(const Config *cfg); + +/* + * Exports from sercfg.c. + */ +void ser_setup_config_box(struct controlbox *b, int midsession); /* * Exports from version.c.