aboutsummaryrefslogtreecommitdiffstats
path: root/g10/mainproc.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2002-09-10 08:40:12 +0000
committerWerner Koch <[email protected]>2002-09-10 08:40:12 +0000
commitb324a5d2d14c33bdd4549b2e84f189d4ef0cabe6 (patch)
tree580a40b65f6957a56573812edf355f3c666aa38f /g10/mainproc.c
parentAdded prototype. (diff)
downloadgnupg-b324a5d2d14c33bdd4549b2e84f189d4ef0cabe6.tar.gz
gnupg-b324a5d2d14c33bdd4549b2e84f189d4ef0cabe6.zip
Cleanups and minor fixes.
Diffstat (limited to 'g10/mainproc.c')
-rw-r--r--g10/mainproc.c9
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;