]> git.ipfire.org Git - thirdparty/dhcpcd.git/commitdiff
01-test: Avoid use of grep and sort which might be in /usr
authorRoy Marples <roy@marples.name>
Tue, 21 Apr 2020 13:31:39 +0000 (14:31 +0100)
committerRoy Marples <roy@marples.name>
Tue, 21 Apr 2020 13:31:39 +0000 (14:31 +0100)
This is a touch more long winded, but is fully shell and
the output *should* be identical.

hooks/01-test

index 6732af79e607fd1c5464f9fa00ecb65d571db765..99499425e00db564e5bc442958e58707ba6c38d9 100644 (file)
@@ -1,9 +1,37 @@
 # Echo the interface flags, reason and message options
 
 if [ "$reason" = "TEST" ]; then
-       set | grep \
-           "^\(interface\|pid\|reason\|protocol\|profile\|skip_hooks\)=" | sort
-       set | grep "^if\(carrier\|flags\|mtu\|wireless\|ssid\)=" | sort
-       set | grep "^\(new_\|old_\|nd[0-9]*_\)" | sort
+       # General variables at the top
+       set | while read line; do
+               case "$line" in
+               interface=*|pid=*|reason=*|protocol=*|profile=*|skip_hooks=*)
+                       echo "$line";;
+               esac
+       done
+       # Interface flags
+       set | while read line; do
+               case "$line" in
+               ifcarrier=*|ifflags=*|ifmetric=*|ifmtu=*|ifwireless=*|ifssid=*)
+                       echo "$line";;
+               esac
+       done
+       # Old lease
+       set | while read line; do
+               case "$line" in
+               old_*) echo "$line";;
+               esac
+       done
+       # New lease
+       set | while read line; do
+               case "$line" in
+               new_*) echo "$line";;
+               esac
+       done
+       # Router Advertisements
+       set | while read line; do
+               case "$line" in
+               nd[0-9]*_*) echo "$line";;
+               esac
+       done
        exit 0
 fi