[OS-BUILD PATCHv2 2/2] Revert "crypto: rng - Override drivers/char/random in FIPS mode"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Justin M. Forbes <jforbes@xxxxxxxxxxxxxxxxx>

Revert "crypto: rng - Override drivers/char/random in FIPS mode"

This reverts commit 427c8a54adcb92826faca4c40ef4591fe87e2fdf.

diff --git a/crypto/rng.c b/crypto/rng.c
index blahblah..blahblah 100644
--- a/crypto/rng.c
+++ b/crypto/rng.c
@@ -11,17 +11,14 @@
 #include <linux/atomic.h>
 #include <crypto/internal/rng.h>
 #include <linux/err.h>
-#include <linux/fips.h>
-#include <linux/kernel.h>
 #include <linux/module.h>
 #include <linux/mutex.h>
 #include <linux/random.h>
 #include <linux/seq_file.h>
-#include <linux/sched.h>
-#include <linux/sched/signal.h>
 #include <linux/slab.h>
 #include <linux/string.h>
 #include <linux/cryptouser.h>
+#include <linux/compiler.h>
 #include <net/netlink.h>
 
 #include "internal.h"
@@ -227,73 +224,5 @@ void crypto_unregister_rngs(struct rng_alg *algs, int count)
 }
 EXPORT_SYMBOL_GPL(crypto_unregister_rngs);
 
-static ssize_t crypto_devrandom_read(void __user *buf, size_t buflen)
-{
-	u8 tmp[256];
-	ssize_t ret;
-
-	if (!buflen)
-		return 0;
-
-	ret = crypto_get_default_rng();
-	if (ret)
-		return ret;
-
-	for (;;) {
-		int err;
-		int i;
-
-		i = min_t(int, buflen, sizeof(tmp));
-		err = crypto_rng_get_bytes(crypto_default_rng, tmp, i);
-		if (err) {
-			ret = err;
-			break;
-		}
-
-		if (copy_to_user(buf, tmp, i)) {
-			ret = -EFAULT;
-			break;
-		}
-
-		buflen -= i;
-		buf += i;
-		ret += i;
-
-		if (!buflen)
-			break;
-
-		if (need_resched()) {
-			if (signal_pending(current))
-				break;
-			schedule();
-		}
-	}
-
-	crypto_put_default_rng();
-	memzero_explicit(tmp, sizeof(tmp));
-
-	return ret;
-}
-
-static const struct random_extrng crypto_devrandom_rng = {
-	.extrng_read = crypto_devrandom_read,
-	.owner = THIS_MODULE,
-};
-
-static int __init crypto_rng_init(void)
-{
-	if (fips_enabled)
-		random_register_extrng(&crypto_devrandom_rng);
-	return 0;
-}
-
-static void __exit crypto_rng_exit(void)
-{
-	random_unregister_extrng();
-}
-
-late_initcall(crypto_rng_init);
-module_exit(crypto_rng_exit);
-
 MODULE_LICENSE("GPL");
 MODULE_DESCRIPTION("Random Number Generator");

--
https://gitlab.com/cki-project/kernel-ark/-/merge_requests/1809
_______________________________________________
kernel mailing list -- kernel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to kernel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/kernel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure




[Index of Archives]     [Fedora General Discussion]     [Older Fedora Users Archive]     [Fedora Advisory Board]     [Fedora Security]     [Fedora Devel Java]     [Fedora Legacy]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Mentors]     [Fedora Package Announce]     [Fedora Package Review]     [Fedora Music]     [Fedora Packaging]     [Centos]     [Fedora SELinux]     [Coolkey]     [Yum Users]     [Tux]     [Yosemite News]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [USB]     [Asterisk PBX]

  Powered by Linux