X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=kernel%2Farch%2Fs390%2Fcrypto%2Fprng.c;fp=kernel%2Farch%2Fs390%2Fcrypto%2Fprng.c;h=683a966b5b1662bf78ff94cc805f2d3c222dbafb;hb=52f993b8e89487ec9ee15a7fb4979e0f09a45b27;hp=b8045b97f4fbd888c35783b13a2b5b9dc89f353f;hpb=c189ccac5702322ed843fe17057035b7222a59b6;p=kvmfornfv.git diff --git a/kernel/arch/s390/crypto/prng.c b/kernel/arch/s390/crypto/prng.c index b8045b97f..683a966b5 100644 --- a/kernel/arch/s390/crypto/prng.c +++ b/kernel/arch/s390/crypto/prng.c @@ -565,8 +565,10 @@ static ssize_t prng_tdes_read(struct file *file, char __user *ubuf, prng_data->prngws.byte_counter += n; prng_data->prngws.reseed_counter += n; - if (copy_to_user(ubuf, prng_data->buf, chunk)) - return -EFAULT; + if (copy_to_user(ubuf, prng_data->buf, chunk)) { + ret = -EFAULT; + break; + } nbytes -= chunk; ret += chunk; @@ -669,11 +671,13 @@ static const struct file_operations prng_tdes_fops = { static struct miscdevice prng_sha512_dev = { .name = "prandom", .minor = MISC_DYNAMIC_MINOR, + .mode = 0644, .fops = &prng_sha512_fops, }; static struct miscdevice prng_tdes_dev = { .name = "prandom", .minor = MISC_DYNAMIC_MINOR, + .mode = 0644, .fops = &prng_tdes_fops, };