blob: 8bcd21449da7cb870967d8960790dc26cfc57d25 [file] [log] [blame]
#! /bin/sh
# Copyright 2020 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# In case the interface is used as nfsroot, avoid ifup, otherwise
# nfsroot may lose response
nfsroot=0
if test "x$IFACE" = xlo ; then
exit 0
fi
exec 9<&0 < /proc/mounts
while read dev mtpt fstype rest; do
if test $mtpt = "/" ; then
case $fstype in
nfs | nfs4)
nfsroot=1
nfs_addr=`echo $rest | sed -e 's/^.*addr=\([0-9.]*\).*$/\1/'`
break
;;
*)
;;
esac
fi
done
exec 0<&9 9<&-
test $nfsroot -eq 0 && exit 0
if [ -x /bin/ip -o -x /sbin/ip ] ; then
nfs_iface=`ip route get $nfs_addr | grep dev | sed -e \
's/^.*dev \([-a-z0-9.]*\).*$/\1/'`
fi
if test "x$IFACE" = "x$nfs_iface" ; then
echo "ifup skipped for nfsroot interface $nfs_iface"
exit 1
fi
exit 0