diff options
author | Werner Koch <[email protected]> | 2002-09-10 08:40:12 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2002-09-10 08:40:12 +0000 |
commit | b324a5d2d14c33bdd4549b2e84f189d4ef0cabe6 (patch) | |
tree | 580a40b65f6957a56573812edf355f3c666aa38f /g10/mainproc.c | |
parent | Added prototype. (diff) | |
download | gnupg-b324a5d2d14c33bdd4549b2e84f189d4ef0cabe6.tar.gz gnupg-b324a5d2d14c33bdd4549b2e84f189d4ef0cabe6.zip |
Cleanups and minor fixes.
Diffstat (limited to 'g10/mainproc.c')
-rw-r--r-- | g10/mainproc.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/g10/mainproc.c b/g10/mainproc.c index cea88994b..896120e86 100644 --- a/g10/mainproc.c +++ b/g10/mainproc.c @@ -242,9 +242,10 @@ static void symkey_decrypt_sesskey( DEK *dek, byte *sesskey, size_t slen ) { CIPHER_HANDLE hd; + int n; if ( slen < 17 || slen > 33 ) { - log_error( "weird size for an encrypted session key (%d)\n", slen ); + log_error ( _("weird size for an encrypted session key (%d)\n"), slen); return; } hd = cipher_open( dek->algo, CIPHER_MODE_CFB, 1 ); @@ -254,9 +255,13 @@ symkey_decrypt_sesskey( DEK *dek, byte *sesskey, size_t slen ) cipher_close( hd ); /* check first byte (the cipher algo) */ if ( sesskey[0] > 10 ) { - log_error( "invalid symkey algorithm detected (%d)\n", sesskey[0] ); + log_error ( _("invalid symkey algorithm detected (%d)\n"), + sesskey[0] ); return; } + n = cipher_get_keylen (sesskey[0]) / 8; + if (n > DIM(dek->key)) + BUG (); /* now we replace the dek components with the real session key to decrypt the contents of the sequencing packet. */ dek->keylen = cipher_get_keylen( sesskey[0] ) / 8; |