X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/371e569c350575d3f9b41c71e2ff51de9ef62483..0183b2423868df18b2297c9052854e5a7db79425:/ssh.h 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; };