aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBill Nottingham <notting@redhat.com>2011-02-28 16:56:40 -0500
committerBill Nottingham <notting@redhat.com>2011-02-28 16:56:40 -0500
commit3f296db591da779000a301b2b29560ee6df413f3 (patch)
treebd05f5215506843145e7e8ad28e1c5ca14b5c450
parent13f2ec05b5af5f57b6847b04185c6e710dc769b2 (diff)
downloadinitscripts-3f296db591da779000a301b2b29560ee6df413f3.tar
initscripts-3f296db591da779000a301b2b29560ee6df413f3.tar.gz
initscripts-3f296db591da779000a301b2b29560ee6df413f3.tar.bz2
initscripts-3f296db591da779000a301b2b29560ee6df413f3.tar.xz
initscripts-3f296db591da779000a301b2b29560ee6df413f3.zip
Move sysctl.conf/sysctl.d handling to a function, call it where appropriate. (#593211, continued)
-rw-r--r--rc.d/init.d/functions9
-rwxr-xr-xrc.d/init.d/network4
-rwxr-xr-xrc.d/rc.sysinit6
3 files changed, 12 insertions, 7 deletions
diff --git a/rc.d/init.d/functions b/rc.d/init.d/functions
index da8d9794..7377f999 100644
--- a/rc.d/init.d/functions
+++ b/rc.d/init.d/functions
@@ -658,6 +658,15 @@ is_false() {
return 1
}
+# Apply sysctl settings, including files in /etc/sysctl.d
+apply_sysctl() {
+ sysctl -e -p /etc/sysctl.conf >/dev/null 2>&1
+ for file in /etc/sysctl.d/* ; do
+ is_ignored_file "$file" && continue
+ test -f "$file" && sysctl -e -p "$file" >/dev/null 2>&1
+ done
+}
+
key_is_random() {
[ "$1" = "/dev/urandom" -o "$1" = "/dev/hw_random" \
-o "$1" = "/dev/random" ]
diff --git a/rc.d/init.d/network b/rc.d/init.d/network
index b31060b0..738a3440 100755
--- a/rc.d/init.d/network
+++ b/rc.d/init.d/network
@@ -61,7 +61,7 @@ case "$1" in
/etc/sysconfig/network-scripts/init.ipv6-global start pre
fi
- sysctl -e -p /etc/sysctl.conf >/dev/null 2>&1
+ apply_sysctl
# bring up loopback interface
action $"Bringing up loopback interface: " ./ifup ifcfg-lo
@@ -164,7 +164,7 @@ case "$1" in
/etc/sysconfig/network-scripts/init.ipv6-global start post
fi
# Run this again to catch any interface-specific actions
- sysctl -e -p /etc/sysctl.conf >/dev/null 2>&1
+ apply_sysctl
touch /var/lock/subsys/network
diff --git a/rc.d/rc.sysinit b/rc.d/rc.sysinit
index f8f701af..3973c444 100755
--- a/rc.d/rc.sysinit
+++ b/rc.d/rc.sysinit
@@ -151,11 +151,7 @@ mount -n /dev/pts >/dev/null 2>&1
# Configure kernel parameters
update_boot_stage RCkernelparam
-sysctl -e -p /etc/sysctl.conf >/dev/null 2>&1
-for file in /etc/sysctl.d/* ; do
- is_ignored_file "$file" && continue
- test -f "$file" && sysctl -e -p "$file" >/dev/null 2>&1
-done
+apply_sysctl
# Set the hostname.
update_boot_stage RChostname