X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/putty/blobdiff_plain/6d60c7915f26898fb4468096ffbf9ddc843db73a..aa63ab7e596756bec878633c99b4630421296898:/putty.h?ds=inline diff --git a/putty.h b/putty.h index f92efea3..4b0e3fef 100644 --- a/putty.h +++ b/putty.h @@ -36,6 +36,11 @@ typedef struct terminal_tag Terminal; * * The LATTRs (line attributes) are an entirely disjoint space of * flags. + * + * The DATTRs (display attributes) are internal to terminal.c (but + * defined here because their values have to match the others + * here); they reuse the TATTR_* space but are always masked off + * before sending to the front end. * * ATTR_INVALID is an illegal colour combination. */ @@ -45,6 +50,12 @@ typedef struct terminal_tag Terminal; #define TATTR_RIGHTCURS 0x10000000UL /* cursor-on-RHS */ #define TATTR_COMBINING 0x80000000UL /* combining characters */ +#define DATTR_STARTRUN 0x80000000UL /* start of redraw run */ + +#define TDATTR_MASK 0xF0000000UL +#define TATTR_MASK (TDATTR_MASK) +#define DATTR_MASK (TDATTR_MASK) + #define LATTR_NORM 0x00000000UL #define LATTR_WIDE 0x00000001UL #define LATTR_TOP 0x00000002UL @@ -53,7 +64,7 @@ typedef struct terminal_tag Terminal; #define LATTR_WRAPPED 0x00000010UL #define LATTR_WRAPPED2 0x00000020UL -#define ATTR_INVALID 0x03FFU +#define ATTR_INVALID 0x03FFFFU /* Like Linux use the F000 page for direct to font. */ #define CSET_OEMCP 0x0000F000UL /* OEM Codepage DTF */ @@ -223,6 +234,17 @@ enum { enum { /* + * SSH-2 key exchange algorithms + */ + KEX_WARN, + KEX_DHGROUP1, + KEX_DHGROUP14, + KEX_DHGEX, + KEX_MAX +}; + +enum { + /* * SSH ciphers (both SSH1 and SSH2) */ CIPHER_WARN, /* pseudo 'cipher' */ @@ -377,6 +399,9 @@ struct config_tag { * but never for loading/saving */ int nopty; int compression; + int ssh_kexlist[KEX_MAX]; + int ssh_rekey_time; /* in minutes */ + char ssh_rekey_data[16]; int agentfwd; int change_username; /* allow username switching in SSH2 */ int ssh_cipherlist[CIPHER_MAX]; @@ -503,7 +528,7 @@ struct config_tag { /* SSH bug compatibility modes */ int sshbug_ignore1, sshbug_plainpw1, sshbug_rsa1, sshbug_hmac2, sshbug_derivekey2, sshbug_rsapad2, - sshbug_dhgex2, sshbug_pksessid2; + sshbug_pksessid2; /* Options for pterm. Should split out into platform-dependent part. */ int stamp_utmp; int login_shell; @@ -851,7 +876,7 @@ int wc_unescape(char *output, const char *wildcard); void logevent(void *frontend, const char *); void verify_ssh_host_key(void *frontend, char *host, int port, char *keytype, char *keystr, char *fingerprint); -void askcipher(void *frontend, char *ciphername, int cs); +void askalg(void *frontend, const char *algtype, const char *algname); int askappend(void *frontend, Filename filename); /*