From: Paul Simmons <mbatranch@gmail.com>
To: development@lists.ipfire.org
Subject: Re: [PATCH 1/2] rng-tools: Move from core package to addon - fixes bug 12900
Date: Sun, 05 Feb 2023 16:55:45 -0600 [thread overview]
Message-ID: <7b80ab76-bb57-2c67-b8de-040d32f426e0@gmail.com> (raw)
In-Reply-To: <20230205180627.3409158-1-adolf.belka@ipfire.org>
[-- Attachment #1: Type: text/plain, Size: 11168 bytes --]
On 2/5/23 12:06, Adolf Belka wrote:
> - This patch is to move the rng-tools package from a core package to an addon. With the
> kernel changes from 5.6 rngd is no longer needed to create the required kernel entropy.
> - The results from HRNG's via rngd are used with an XOR after the entropy is
> collected by the kernel. So the HWRNG output is used to dilute the kernel random number
> data, which is already merged from several sources.
> - Based on the above and @Paul's request in the bug report to have rng-tools kept as an
> addon this patch set is submitted for consideration to keep rng-tools but as an addon.
> - move rng-tools rootfile from common to packages
> - Modify rng-tools lfs from core package to addon package
> - Create rng-tools pak to install and uninstall - creating rc.d links for start & stop.
> - Move rngd initscript from system to packages directory.
> - Installed into my vm testbed and confirmed that it works. No rngd daemon installed
> from iso install. After addon install rngd is present and running. Added various files
> to be able to test the services wui page. rngd shows up and can be turned off and on
>
> Fixes: Bug#12900
> Tested-by: Adolf Belka <adolf.belka(a)ipfire.org>
> Signed-off-by: Adolf Belka <adolf.belka(a)ipfire.org>
> ---
> .../rootfiles/{common => packages}/rng-tools | 2 ++
> lfs/rng-tools | 14 ++++++++-
> src/initscripts/{system => packages}/rngd | 0
> src/paks/rng-tools/install.sh | 30 +++++++++++++++++++
> src/paks/rng-tools/uninstall.sh | 28 +++++++++++++++++
> src/paks/rng-tools/update.sh | 26 ++++++++++++++++
> 6 files changed, 99 insertions(+), 1 deletion(-)
> rename config/rootfiles/{common => packages}/rng-tools (69%)
> rename src/initscripts/{system => packages}/rngd (100%)
> create mode 100644 src/paks/rng-tools/install.sh
> create mode 100644 src/paks/rng-tools/uninstall.sh
> create mode 100644 src/paks/rng-tools/update.sh
>
> diff --git a/config/rootfiles/common/rng-tools b/config/rootfiles/packages/rng-tools
> similarity index 69%
> rename from config/rootfiles/common/rng-tools
> rename to config/rootfiles/packages/rng-tools
> index 596a911c1..fbeda7800 100644
> --- a/config/rootfiles/common/rng-tools
> +++ b/config/rootfiles/packages/rng-tools
> @@ -1,4 +1,6 @@
> +usr/bin/randstat
> usr/bin/rngtest
> usr/sbin/rngd
> #usr/share/man/man1/rngtest.1
> #usr/share/man/man8/rngd.8
> +etc/rc.d/init.d/rngd
> diff --git a/lfs/rng-tools b/lfs/rng-tools
> index cafb1bcda..6a85a8482 100644
> --- a/lfs/rng-tools
> +++ b/lfs/rng-tools
> @@ -1,7 +1,7 @@
> ###############################################################################
> # #
> # IPFire.org - A linux based firewall #
> -# Copyright (C) 2007-2021 IPFire Team <info(a)ipfire.org> #
> +# Copyright (C) 2007-2023 IPFire Team <info(a)ipfire.org> #
> # #
> # This program is free software: you can redistribute it and/or modify #
> # it under the terms of the GNU General Public License as published by #
> @@ -25,12 +25,19 @@
> include Config
>
> VER = 6.14
> +SUMMARY = This is a random number generator daemon
>
> THISAPP = rng-tools-$(VER)
> DL_FILE = $(THISAPP).tar.gz
> DL_FROM = $(URL_IPFIRE)
> DIR_APP = $(DIR_SRC)/$(THISAPP)
> TARGET = $(DIR_INFO)/$(THISAPP)
> +PROG = rng-tools
> +PAK_VER = 1
> +
> +DEPS =
> +
> +SERVICES = rngd
>
> ###############################################################################
> # Top-level Rules
> @@ -50,6 +57,9 @@ download :$(patsubst %,$(DIR_DL)/%,$(objects))
>
> b2 : $(subst %,%_BLAKE2,$(objects))
>
> +dist:
> + @$(PAK)
> +
> ###############################################################################
> # Downloading, checking, b2sum
> ###############################################################################
> @@ -77,5 +87,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
> --without-rtlsdr
> cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
> cd $(DIR_APP) && make $(EXTRA_INSTALL) install
> + #install initscript
> + $(call INSTALL_INITSCRIPTS,$(SERVICES))
> @rm -rf $(DIR_APP)
> @$(POSTBUILD)
> diff --git a/src/initscripts/system/rngd b/src/initscripts/packages/rngd
> similarity index 100%
> rename from src/initscripts/system/rngd
> rename to src/initscripts/packages/rngd
> diff --git a/src/paks/rng-tools/install.sh b/src/paks/rng-tools/install.sh
> new file mode 100644
> index 000000000..a53ccc43c
> --- /dev/null
> +++ b/src/paks/rng-tools/install.sh
> @@ -0,0 +1,30 @@
> +#!/bin/bash
> +############################################################################
> +# #
> +# This file is part of the IPFire Firewall. #
> +# #
> +# IPFire is free software; you can redistribute it and/or modify #
> +# it under the terms of the GNU General Public License as published by #
> +# the Free Software Foundation; either version 2 of the License, or #
> +# (at your option) any later version. #
> +# #
> +# IPFire is distributed in the hope that it will be useful, #
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of #
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
> +# GNU General Public License for more details. #
> +# #
> +# You should have received a copy of the GNU General Public License #
> +# along with IPFire; if not, write to the Free Software #
> +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
> +# #
> +# Copyright (C) 2007-2023 IPFire-Team <info(a)ipfire.org>. #
> +# #
> +############################################################################
> +#
> +. /opt/pakfire/lib/functions.sh
> +extract_files
> +# create startlinks
> +ln -sf ../init.d/rngd /etc/rc.d/rc0.d/K35rngd
> +ln -sf ../init.d/rngd /etc/rc.d/rc3.d/S65rngd
> +ln -sf ../init.d/rngd /etc/rc.d/rc6.d/K35rngd
> +start_service --background rngd
> diff --git a/src/paks/rng-tools/uninstall.sh b/src/paks/rng-tools/uninstall.sh
> new file mode 100644
> index 000000000..cc9fbb355
> --- /dev/null
> +++ b/src/paks/rng-tools/uninstall.sh
> @@ -0,0 +1,28 @@
> +#!/bin/bash
> +############################################################################
> +# #
> +# This file is part of the IPFire Firewall. #
> +# #
> +# IPFire is free software; you can redistribute it and/or modify #
> +# it under the terms of the GNU General Public License as published by #
> +# the Free Software Foundation; either version 2 of the License, or #
> +# (at your option) any later version. #
> +# #
> +# IPFire is distributed in the hope that it will be useful, #
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of #
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
> +# GNU General Public License for more details. #
> +# #
> +# You should have received a copy of the GNU General Public License #
> +# along with IPFire; if not, write to the Free Software #
> +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
> +# #
> +# Copyright (C) 2007-2023 IPFire-Team <info(a)ipfire.org>. #
> +# #
> +############################################################################
> +#
> +. /opt/pakfire/lib/functions.sh
> +stop_service rngd
> +remove_files
> +# Remove all start links.
> +rm -rf /etc/rc.d/rc*.d/*rngd
> diff --git a/src/paks/rng-tools/update.sh b/src/paks/rng-tools/update.sh
> new file mode 100644
> index 000000000..83bd0ad98
> --- /dev/null
> +++ b/src/paks/rng-tools/update.sh
> @@ -0,0 +1,26 @@
> +#!/bin/bash
> +############################################################################
> +# #
> +# This file is part of the IPFire Firewall. #
> +# #
> +# IPFire is free software; you can redistribute it and/or modify #
> +# it under the terms of the GNU General Public License as published by #
> +# the Free Software Foundation; either version 2 of the License, or #
> +# (at your option) any later version. #
> +# #
> +# IPFire is distributed in the hope that it will be useful, #
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of #
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
> +# GNU General Public License for more details. #
> +# #
> +# You should have received a copy of the GNU General Public License #
> +# along with IPFire; if not, write to the Free Software #
> +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
> +# #
> +# Copyright (C) 2007-2023 IPFire-Team <info(a)ipfire.org>. #
> +# #
> +############################################################################
> +#
> +. /opt/pakfire/lib/functions.sh
> +./uninstall.sh
> +./install.sh
I'm happy to see this patch series land! Thank you!
Paul
prev parent reply other threads:[~2023-02-05 22:55 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-05 18:06 Adolf Belka
2023-02-05 18:06 ` [PATCH 2/2] initscripts: Remove rngd from the core package initscripts Adolf Belka
2023-02-05 18:27 ` Bernhard Bitsch
2023-02-05 18:26 ` [PATCH 1/2] rng-tools: Move from core package to addon - fixes bug 12900 Bernhard Bitsch
2023-02-05 18:53 ` Michael Tremer
2023-02-05 19:51 ` Adolf Belka
2023-02-05 19:54 ` Michael Tremer
2023-02-05 22:55 ` Paul Simmons [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7b80ab76-bb57-2c67-b8de-040d32f426e0@gmail.com \
--to=mbatranch@gmail.com \
--cc=development@lists.ipfire.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox