1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-07-09 15:23:50 -05:00

SSH ciphers now use dynamically allocated contexts.

[originally from svn r2130]
This commit is contained in:
Simon Tatham
2002-10-25 12:35:22 +00:00
parent 528a826574
commit 9848062b86
5 changed files with 249 additions and 230 deletions

22
ssh.h
View File

@ -123,22 +123,26 @@ void SHA512_Final(SHA512_State * s, unsigned char *output);
void SHA512_Simple(const void *p, int len, unsigned char *output);
struct ssh_cipher {
void (*sesskey) (unsigned char *key); /* for ssh 1 */
void (*encrypt) (unsigned char *blk, int len);
void (*decrypt) (unsigned char *blk, int len);
void *(*make_context)(void);
void (*free_context)(void *);
void (*sesskey) (void *, unsigned char *key); /* for ssh 1 */
void (*encrypt) (void *, unsigned char *blk, int len);
void (*decrypt) (void *, unsigned char *blk, int len);
int blksize;
char *text_name;
};
struct ssh2_cipher {
void (*setcsiv) (unsigned char *key); /* for ssh 2 */
void (*setcskey) (unsigned char *key); /* for ssh 2 */
void (*setsciv) (unsigned char *key); /* for ssh 2 */
void (*setsckey) (unsigned char *key); /* for ssh 2 */
void (*encrypt) (unsigned char *blk, int len);
void (*decrypt) (unsigned char *blk, int len);
void *(*make_context)(void);
void (*free_context)(void *);
void (*setiv) (void *, unsigned char *key); /* for ssh 2 */
void (*setkey) (void *, unsigned char *key);/* for ssh 2 */
void (*encrypt) (void *, unsigned char *blk, int len);
void (*decrypt) (void *, unsigned char *blk, int len);
char *name;
int blksize;
int keylen;
char *text_name;
};
struct ssh2_ciphers {