X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=ssh.h;h=bf57b8fac375d876b16147f172c9c20d1aaf524f;hb=107d1d875de8a2b19f71b6b4254f297c830591ac;hp=a99b6336439b90fc2c98763078f31da359c62a01;hpb=9848062b86a9e20ba89b200acc753b9f37d70f87;p=PuTTY.git diff --git a/ssh.h b/ssh.h index a99b6336..bf57b8fa 100644 --- a/ssh.h +++ b/ssh.h @@ -75,7 +75,10 @@ unsigned long crc32(const void *s, size_t len); unsigned long crc32_update(unsigned long crc_input, const void *s, size_t len); /* SSH CRC compensation attack detector */ -int detect_attack(unsigned char *buf, uint32 len, unsigned char *IV); +void *crcda_make_context(void); +void crcda_free_context(void *handle); +int detect_attack(void *handle, unsigned char *buf, uint32 len, + unsigned char *IV); typedef struct { uint32 h[4]; @@ -151,10 +154,11 @@ struct ssh2_ciphers { }; struct ssh_mac { - void (*setcskey) (unsigned char *key); - void (*setsckey) (unsigned char *key); - void (*generate) (unsigned char *blk, int len, unsigned long seq); - int (*verify) (unsigned char *blk, int len, unsigned long seq); + void *(*make_context)(void); + void (*free_context)(void *); + void (*setkey) (void *, unsigned char *key); + void (*generate) (void *, unsigned char *blk, int len, unsigned long seq); + int (*verify) (void *, unsigned char *blk, int len, unsigned long seq); char *name; int len; };