From 11c5695fa6e412e4852a0be36e86a9aa9514efc5 Mon Sep 17 00:00:00 2001 From: millert <> Date: Sun, 5 Mar 2000 16:55:22 +0000 Subject: [PATCH] Adda a stripcom function to strip comments (and leading whitespace, depending on IFS). This replaces the ed and sed code previously used to do this. --- src/etc/rc | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/src/etc/rc b/src/etc/rc index 2f894fe4..26792c6d 100644 --- a/src/etc/rc +++ b/src/etc/rc @@ -1,10 +1,29 @@ -# $OpenBSD: rc,v 1.130 2000/02/28 17:28:35 itojun Exp $ +# $OpenBSD: rc,v 1.131 2000/03/05 16:55:22 millert Exp $ # System startup script run by init on autoboot # or after single-user. # Output and error are redirected to console by init, # and the console is the controlling terminal. +# Subroutines (have to come first). + +# Strip comments (and leading/trailing whitespace if IFS is set) +# from a file and spew to stdout +stripcom() { + local _file="$1" + local _line + + { + while read _line ; do + _line=${_line%%#*} # strip comments + test -z "$_line" && continue + echo $_line + done + } < $_file +} + +# End subroutines + stty status '^T' # Set shell to ignore SIGINT (2), but not children; @@ -108,14 +127,7 @@ fi if [ -f /etc/sysctl.conf ]; then ( # delete comments and blank lines - # we use ed here because /usr may not be mounted yet. - set -- ` - ed -s /etc/sysctl.conf < $T echo "" >> $T