X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=sshsha.c;h=48cabb5c5c38c2f9383b016502b8579272eacb79;hb=9b15a8010102fc83dcd7eef78014a65f11619d63;hp=95d5259e352d87537f196f8335958033f5a536dd;hpb=e48981def400f4eb170f79294790eb15e6832a76;p=PuTTY.git diff --git a/sshsha.c b/sshsha.c index 95d5259e..48cabb5c 100644 --- a/sshsha.c +++ b/sshsha.c @@ -199,6 +199,14 @@ static void sha1_sckey(unsigned char *key) { sha1_key(&sha1_sc_mac_s1, &sha1_sc_mac_s2, key, 20); } +static void sha1_cskey_buggy(unsigned char *key) { + sha1_key(&sha1_cs_mac_s1, &sha1_cs_mac_s2, key, 16); +} + +static void sha1_sckey_buggy(unsigned char *key) { + sha1_key(&sha1_sc_mac_s1, &sha1_sc_mac_s2, key, 16); +} + static void sha1_do_hmac(SHA_State *s1, SHA_State *s2, unsigned char *blk, int len, unsigned long seq, unsigned char *hmac) { @@ -236,3 +244,11 @@ struct ssh_mac ssh_sha1 = { "hmac-sha1", 20 }; + +struct ssh_mac ssh_sha1_buggy = { + sha1_cskey_buggy, sha1_sckey_buggy, + sha1_generate, + sha1_verify, + "hmac-sha1", + 20 +};