From daf93977641201f16c477b075ce9055a1da8f7b3 Mon Sep 17 00:00:00 2001 From: William Hubbs Date: Tue, 19 Jul 2016 15:56:06 -0500 Subject: [PATCH] init.d: combine sysctl scripts We had separate sysctl scripts for each operating system. However, there is no need to do this since we can detect the operating system at runtime with $RC_UNAME. --- init.d/Makefile | 3 --- init.d/sysctl.GNU-kFreeBSD.in | 38 ---------------------------- init.d/sysctl.GNU.in | 39 ----------------------------- init.d/sysctl.Linux.in | 26 ------------------- init.d/{sysctl.BSD.in => sysctl.in} | 27 +++++++++++++++++--- 5 files changed, 23 insertions(+), 110 deletions(-) delete mode 100644 init.d/sysctl.GNU-kFreeBSD.in delete mode 100644 init.d/sysctl.GNU.in delete mode 100644 init.d/sysctl.Linux.in rename init.d/{sysctl.BSD.in => sysctl.in} (75%) diff --git a/init.d/Makefile b/init.d/Makefile index 55db3d14..a44c4e66 100644 --- a/init.d/Makefile +++ b/init.d/Makefile @@ -31,9 +31,6 @@ SRCS-NetBSD= hostid.in moused.in newsyslog.in pf.in rarpd.in rc-enabled.in \ # These are NetBSD specific SRCS-NetBSD+= devdb.in swap-blk.in ttys.in wscons.in -%.in: %${SFX} - sed ${SED_REPLACE} ${SED_EXTRA} $< > $@ - include ${MK}/scripts.mk _installafter_: realinstall diff --git a/init.d/sysctl.GNU-kFreeBSD.in b/init.d/sysctl.GNU-kFreeBSD.in deleted file mode 100644 index 7097d471..00000000 --- a/init.d/sysctl.GNU-kFreeBSD.in +++ /dev/null @@ -1,38 +0,0 @@ -#!@SBINDIR@/openrc-run -# Copyright (c) 2007-2015 The OpenRC Authors. -# See the Authors file at the top-level directory of this distribution and -# https://github.com/OpenRC/openrc/blob/master/AUTHORS -# -# This file is part of OpenRC. It is subject to the license terms in -# the LICENSE file found in the top-level directory of this -# distribution and at https://github.com/OpenRC/openrc/blob/master/LICENSE -# This file may not be copied, modified, propagated, or distributed -# except according to the terms contained in the LICENSE file. - -depend() -{ - before bootmisc logger - keyword -prefix -} - -start() -{ - [ -e /etc/sysctl.conf ] || return 0 - local retval=0 var= comments= conf= - ebegin "Configuring kernel parameters" - eindent - for conf in @SYSCONFDIR@/sysctl.conf @SYSCONFDIR@/sysctl.d/*.conf; do - if [ -r "$conf" ]; then - vebegin "applying $conf" - while read var comments; do - case "$var" in - ""|"#"*) continue;; - esac - sysctl -w "$var" >/dev/null || retval=1 - done < "$conf" - veend $retval - fi - done - eoutdent - eend $retval "Some errors were encountered" -} diff --git a/init.d/sysctl.GNU.in b/init.d/sysctl.GNU.in deleted file mode 100644 index be7b42e9..00000000 --- a/init.d/sysctl.GNU.in +++ /dev/null @@ -1,39 +0,0 @@ -#!@PREFIX@/sbin/openrc-run -# Copyright (c) 2007-2015 The OpenRC Authors. -# See the Authors file at the top-level directory of this distribution and -# https://github.com/OpenRC/openrc/blob/master/AUTHORS -# -# This file is part of OpenRC. It is subject to the license terms in -# the LICENSE file found in the top-level directory of this -# distribution and at https://github.com/OpenRC/openrc/blob/master/LICENSE -# This file may not be copied, modified, propagated, or distributed -# except according to the terms contained in the LICENSE file. -#FIXME: Modify for GNU/Hurd - -depend() -{ - before bootmisc logger - keyword -prefix -} - -start() -{ - [ -e /etc/sysctl.conf ] || return 0 - local retval=0 var= comments= conf= - ebegin "Configuring kernel parameters" - eindent - for conf in @SYSCONFDIR@/sysctl.conf @SYSCONFDIR@/sysctl.d/*.conf; do - if [ -r "$conf" ]; then - vebegin "applying $conf" - while read var comments; do - case "$var" in - ""|"#"*) continue;; - esac - sysctl -w "$var" >/dev/null || retval=1 - done < "$conf" - veend $retval - fi - done - eoutdent - eend $retval "Some errors were encountered" -} diff --git a/init.d/sysctl.Linux.in b/init.d/sysctl.Linux.in deleted file mode 100644 index f5e0ab6b..00000000 --- a/init.d/sysctl.Linux.in +++ /dev/null @@ -1,26 +0,0 @@ -#!@SBINDIR@/openrc-run -# Copyright (c) 2007-2015 The OpenRC Authors. -# See the Authors file at the top-level directory of this distribution and -# https://github.com/OpenRC/openrc/blob/master/AUTHORS -# -# This file is part of OpenRC. It is subject to the license terms in -# the LICENSE file found in the top-level directory of this -# distribution and at https://github.com/OpenRC/openrc/blob/master/LICENSE -# This file may not be copied, modified, propagated, or distributed -# except according to the terms contained in the LICENSE file. - -depend() -{ - before bootmisc logger - keyword -prefix -systemd-nspawn -vserver -} - -start() -{ - local quiet - yesno $rc_verbose || quiet=-q - - ebegin "Configuring kernel parameters" - sysctl ${quiet} --system - eend $? "Unable to configure some kernel parameters" -} diff --git a/init.d/sysctl.BSD.in b/init.d/sysctl.in similarity index 75% rename from init.d/sysctl.BSD.in rename to init.d/sysctl.in index 7097d471..05f5c4c1 100644 --- a/init.d/sysctl.BSD.in +++ b/init.d/sysctl.in @@ -12,14 +12,13 @@ depend() { before bootmisc logger - keyword -prefix + keyword -prefix -systemd-nspawn -vserver } -start() +BSD_sysctl() { [ -e /etc/sysctl.conf ] || return 0 local retval=0 var= comments= conf= - ebegin "Configuring kernel parameters" eindent for conf in @SYSCONFDIR@/sysctl.conf @SYSCONFDIR@/sysctl.d/*.conf; do if [ -r "$conf" ]; then @@ -34,5 +33,25 @@ start() fi done eoutdent - eend $retval "Some errors were encountered" + return $retval +} + +Linux_sysctl() +{ + local quiet + yesno $rc_verbose || quiet=-q + + sysctl ${quiet} --system +} + +start() +{ + local rc=0 + + ebegin "Configuring kernel parameters" + case $RC_UNAME" in + *BSD|GNU) BSD_sysctl; rc=$? ;; + Linux) Linux_sysctl; rc=$? ;; + esac + eend $rc "Unable to configure some kernel parameters" }