aboutsummaryrefslogtreecommitdiffstats
path: root/rc.d/init.d
diff options
context:
space:
mode:
Diffstat (limited to 'rc.d/init.d')
-rwxr-xr-xrc.d/init.d/functions12
-rwxr-xr-xrc.d/init.d/network9
2 files changed, 16 insertions, 5 deletions
diff --git a/rc.d/init.d/functions b/rc.d/init.d/functions
index 19a86c16..2576f463 100755
--- a/rc.d/init.d/functions
+++ b/rc.d/init.d/functions
@@ -573,3 +573,15 @@ resolve_dm_name() {
/sbin/dmsetup table | egrep -iv "no block devices found|No devices found" | sed -n "s/\(^[^:]\+\): $newline\( \+$\|$\)/\1/p"
) 2>/dev/null
}
+
+# Check whether file $1 is a backup or rpm-generated file and should be ignored
+is_ignored_file() {
+ case "$1" in
+ *~ | *.bak | *.orig | *.rpmnew | *.rpmorig | *.rpmsave)
+ return 0
+ ;;
+ esac
+ return 1
+}
+# A sed expression to filter out the files that is_ignored_file recognizes
+__sed_discard_ignored_files='/\(~\|\.bak\|\.orig\|\.rpmnew\|\.rpmorig\|\.rpmsave\)$/d'
diff --git a/rc.d/init.d/network b/rc.d/init.d/network
index a16a2692..19fa0264 100755
--- a/rc.d/init.d/network
+++ b/rc.d/init.d/network
@@ -43,13 +43,12 @@ cd /etc/sysconfig/network-scripts
# find all the interfaces besides loopback.
# ignore aliases, alternative configurations, and editor backup files
-interfaces=`ls ifcfg* | \
- LANG=C sed -e '/\(ifcfg-lo\|:\|ifcfg-.*-range\)/d' \
- -e '/\(rpmsave\|rpmorig\|rpmnew\)/d' \
- -e '/\(~\|\.bak\)$/d' \
+interfaces=$(ls ifcfg* | \
+ LANG=C sed -e "$__sed_discard_ignored_files" \
+ -e '/\(ifcfg-lo\|:\|ifcfg-.*-range\)/d' \
-e '/ifcfg-[A-Za-z0-9\._-]\+$/ { s/^ifcfg-//g;s/[0-9]/ &/}' | \
LANG=C sort -k 1,1 -k 2n | \
- LANG=C sed 's/ //'`
+ LANG=C sed 's/ //')
# See how we were called.
case "$1" in