build_resolv_conf()
{
- local cf="$state_dir/resolv.conf.$interface$ifsuffix"
+ local cf="$state_dir/resolv.conf.$interface$if_suffix"
local interfaces= header= search= srvs= servers= x=
# Build a list of interfaces
done
if type resolvconf >/dev/null 2>&1; then
[ -n "$ifmetric" ] && export IF_METRIC="$ifmetric"
- printf %s "$conf" | resolvconf -a "$interface$ifsuffix"
+ printf %s "$conf" | resolvconf -a "$interface$if_suffix"
return $?
fi
- if [ -e "$resolv_conf_dir/$interface$ifsuffix" ]; then
- rm -f "$resolv_conf_dir/$interface$ifsuffix"
+ if [ -e "$resolv_conf_dir/$interface$if_suffix" ]; then
+ rm -f "$resolv_conf_dir/$interface$if_suffix"
fi
[ -d "$resolv_conf_dir" ] || mkdir -p "$resolv_conf_dir"
- printf %s "$conf" > "$resolv_conf_dir/$interface$ifsuffix"
+ printf %s "$conf" > "$resolv_conf_dir/$interface$if_suffix"
build_resolv_conf
}
remove_resolv_conf()
{
if type resolvconf >/dev/null 2>&1; then
- resolvconf -d "$interface$ifsuffix" -f
+ resolvconf -d "$interface$if_suffix" -f
else
- if [ -e "$resolv_conf_dir/$interface$ifsuffix" ]; then
- rm -f "$resolv_conf_dir/$interface$ifsuffix"
+ if [ -e "$resolv_conf_dir/$interface$if_suffix" ]; then
+ rm -f "$resolv_conf_dir/$interface$if_suffix"
fi
build_resolv_conf
fi
}
-if [ "$reason" = ROUTERADVERT ]; then
- ifsuffix=":ra"
-else
- ifsuffix=
-fi
-
-if $if_up; then
+if $if_up || [ "$reason" = ROUTERADVERT ]; then
add_resolv_conf
elif $if_down; then
remove_resolv_conf
PREINIT|EXPIRE|FAIL|IPV4LL|NAK|NOCARRIER|RELEASE|STOP) if_down=true;;
esac
-[ "$reason" = ROUTERADVERT -a "$new_ra_count" != 0 ] && if_up=true
+if [ "$reason" = ROUTERADVERT ]; then
+ if_suffix=":ra"
+ [ "$new_ra_count" != 0 ] && if_up=true
+else
+ if_suffix=
+fi
# Ensure that all arguments are unique
uniqify()