summaryrefslogtreecommitdiffstats
path: root/drivers/s390/crypto/zcrypt_api.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2010-02-17 16:20:14 -0800
committerDavid S. Miller <davem@davemloft.net>2010-02-17 16:20:14 -0800
commit8c2fcadc933f713d51f46ec4dcd9b12830e0df84 (patch)
treee0797b2db664d702f9d02dd0f45efddb2f0d7fe9 /drivers/s390/crypto/zcrypt_api.c
parent232486e1e9f34889424b68ee6270440b554479a2 (diff)
parentb0483e78e5c4c9871fc5541875b3bc006846d46b (diff)
downloadop-kernel-dev-8c2fcadc933f713d51f46ec4dcd9b12830e0df84.zip
op-kernel-dev-8c2fcadc933f713d51f46ec4dcd9b12830e0df84.tar.gz
Merge branch 'master' of /home/davem/src/GIT/linux-2.6/
Diffstat (limited to 'drivers/s390/crypto/zcrypt_api.c')
-rw-r--r--drivers/s390/crypto/zcrypt_api.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/s390/crypto/zcrypt_api.c b/drivers/s390/crypto/zcrypt_api.c
index 0d4d18b..c68be24 100644
--- a/drivers/s390/crypto/zcrypt_api.c
+++ b/drivers/s390/crypto/zcrypt_api.c
@@ -393,10 +393,12 @@ static long zcrypt_rsa_crt(struct ica_rsa_modexpo_crt *crt)
* u_mult_inv > 128 bytes.
*/
if (copied == 0) {
- int len;
+ unsigned int len;
spin_unlock_bh(&zcrypt_device_lock);
/* len is max 256 / 2 - 120 = 8 */
len = crt->inputdatalength / 2 - 120;
+ if (len > sizeof(z1))
+ return -EFAULT;
z1 = z2 = z3 = 0;
if (copy_from_user(&z1, crt->np_prime, len) ||
copy_from_user(&z2, crt->bp_key, len) ||
OpenPOWER on IntegriCloud