[OpenWrt-Devel] [PATCH] urngd: Fix entropy provider daemon
Cristian Ciocaltea
cristian.ciocaltea at gmail.com
Tue Jan 21 09:43:24 EST 2020
From: Cristian Ciocaltea <cristian.ciocaltea at gmail.com>
The OpenWrt Jitter RNG daemon is currently unable to continuously
provide entropy, except once on process startup.
This patch brings the following fixes:
- poll /dev/random for unblocking write operations, instead of read
- register the low entropy callback after uloop initialization, not
before
Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea at gmail.com>
---
urngd.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/urngd.c b/urngd.c
index d8ed159..91dc72c 100644
--- a/urngd.c
+++ b/urngd.c
@@ -180,7 +180,7 @@ static bool urngd_init(struct urngd *u)
return false;
}
- uloop_fd_add(&u->rnd_fd, ULOOP_READ);
+ uloop_fd_add(&u->rnd_fd, ULOOP_WRITE);
return true;
}
@@ -227,6 +227,7 @@ int main(int argc, char **argv)
ulog_open(ulog_channels, LOG_DAEMON, "urngd");
+ uloop_init();
if (!urngd_init(&urngd_service))
return -1;
@@ -234,7 +235,6 @@ int main(int argc, char **argv)
gather_entropy(&urngd_service);
- uloop_init();
uloop_run();
uloop_done();
--
2.17.1
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel
More information about the openwrt-devel
mailing list