package/rng-tools: add systemd support for rngd
Add rngd.service for systemd. Also patch rngd with patch from Fedora to ignore failure if no hwrng present: https://bugzilla.redhat.com/show_bug.cgi?id=892178 [Thomas: - rename patch to the proper naming convention - add description and SoB to patch - install service file to /usr/lib/systemd and not /lib/systemd - use a relative symbolic link instead of an absolute one] Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
parent
d3230923e6
commit
22cb51e1a2
22
package/rng-tools/0001-rngd-exit-code.patch
Normal file
22
package/rng-tools/0001-rngd-exit-code.patch
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
Exit with a special value when RNG modules are not available
|
||||||
|
|
||||||
|
Instead of returning with an error, exit with a special value when the
|
||||||
|
RNG kernel modules are not present in the kernel. This is not really a
|
||||||
|
hard failure.
|
||||||
|
|
||||||
|
Patch borrowed from Fedora, at
|
||||||
|
http://pkgs.fedoraproject.org/cgit/rng-tools.git/tree/rngd-exit-code.patch.
|
||||||
|
|
||||||
|
Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
|
||||||
|
|
||||||
|
--- a/rngd.c
|
||||||
|
+++ b/rngd.c
|
||||||
|
@@ -319,7 +319,7 @@ int main(int argc, char **argv)
|
||||||
|
message(LOG_DAEMON|LOG_ERR,
|
||||||
|
"Maybe RNG device modules are not loaded\n");
|
||||||
|
}
|
||||||
|
- return 1;
|
||||||
|
+ return 66;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (arguments->verbose) {
|
@ -21,4 +21,12 @@ else
|
|||||||
RNG_TOOLS_CONF_OPTS += --without-libgcrypt
|
RNG_TOOLS_CONF_OPTS += --without-libgcrypt
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
define RNG_TOOLS_INSTALL_INIT_SYSTEMD
|
||||||
|
$(INSTALL) -D -m 644 package/rng-tools/rngd.service \
|
||||||
|
$(TARGET_DIR)/usr/lib/systemd/system/rngd.service
|
||||||
|
mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
|
||||||
|
ln -fs ../../../../usr/lib/systemd/system/rngd.service \
|
||||||
|
$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/rngd.service
|
||||||
|
endef
|
||||||
|
|
||||||
$(eval $(autotools-package))
|
$(eval $(autotools-package))
|
||||||
|
9
package/rng-tools/rngd.service
Normal file
9
package/rng-tools/rngd.service
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Hardware RNG Entropy Gatherer Daemon
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
ExecStart=/usr/sbin/rngd -f
|
||||||
|
SuccessExitStatus=66
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
Loading…
Reference in New Issue
Block a user