openssl/openssl-1.0.0a-CVE-2012-0027.diff
alexander barakin aka sash-kan 9e319be35e add patches from upstream
2012-04-10 15:27:51 +04:00

31 lines
1.3 KiB
Diff

http://cvs.openssl.org/chngview?cn=21957
diff -Naurp openssl-1.0.0a/engines/ccgost/gost2001_keyx.c openssl-1.0.0a.oden/engines/ccgost/gost2001_keyx.c
--- openssl-1.0.0a/engines/ccgost/gost2001_keyx.c 2009-06-16 16:39:20.000000000 +0000
+++ openssl-1.0.0a.oden/engines/ccgost/gost2001_keyx.c 2012-01-09 14:56:51.000000000 +0000
@@ -280,6 +280,10 @@ int pkey_GOST01cp_decrypt(EVP_PKEY_CTX *
}
param = get_encryption_params(gkt->key_agreement_info->cipher);
+ if(!param){
+ goto err;
+ }
+
gost_init(&ctx,param->sblock);
OPENSSL_assert(gkt->key_agreement_info->eph_iv->length==8);
memcpy(wrappedKey,gkt->key_agreement_info->eph_iv->data,8);
diff -Naurp openssl-1.0.0a/engines/ccgost/gost94_keyx.c openssl-1.0.0a.oden/engines/ccgost/gost94_keyx.c
--- openssl-1.0.0a/engines/ccgost/gost94_keyx.c 2010-05-22 00:40:58.000000000 +0000
+++ openssl-1.0.0a.oden/engines/ccgost/gost94_keyx.c 2012-01-09 14:56:51.000000000 +0000
@@ -261,6 +261,10 @@ int pkey_GOST94cp_decrypt(EVP_PKEY_CTX *
}
param = get_encryption_params(gkt->key_agreement_info->cipher);
+ if(!param){
+ goto err;
+ }
+
gost_init(&cctx,param->sblock);
OPENSSL_assert(gkt->key_agreement_info->eph_iv->length==8);
memcpy(wrappedKey,gkt->key_agreement_info->eph_iv->data,8);