]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - drivers/s390/crypto/zcrypt_msgtype50.c
s390/ap_bus: Convert timers to use timer_setup()
[mirror_ubuntu-bionic-kernel.git] / drivers / s390 / crypto / zcrypt_msgtype50.c
index 6dd5d7c58dd08eae4f9d27074328069050f1b179..db5bde47dfb0d17b49a8dad9eeec8279c2a6e226 100644 (file)
@@ -240,8 +240,7 @@ static int ICAMEX_msg_to_type50MEX_msg(struct zcrypt_queue *zq,
                mod = meb2->modulus + sizeof(meb2->modulus) - mod_len;
                exp = meb2->exponent + sizeof(meb2->exponent) - mod_len;
                inp = meb2->message + sizeof(meb2->message) - mod_len;
-       } else {
-               /* mod_len > 256 = 4096 bit RSA Key */
+       } else if (mod_len <= 512) {
                struct type50_meb3_msg *meb3 = ap_msg->message;
                memset(meb3, 0, sizeof(*meb3));
                ap_msg->length = sizeof(*meb3);
@@ -251,7 +250,8 @@ static int ICAMEX_msg_to_type50MEX_msg(struct zcrypt_queue *zq,
                mod = meb3->modulus + sizeof(meb3->modulus) - mod_len;
                exp = meb3->exponent + sizeof(meb3->exponent) - mod_len;
                inp = meb3->message + sizeof(meb3->message) - mod_len;
-       }
+       } else
+               return -EINVAL;
 
        if (copy_from_user(mod, mex->n_modulus, mod_len) ||
            copy_from_user(exp, mex->b_key, mod_len) ||