defaultroute revision 187909
1#!/bin/sh 2# 3# Wait for the default route to be up 4# 5# $FreeBSD: head/etc/rc.d/defaultroute 187909 2009-01-30 03:41:45Z imp $ 6# 7 8# PROVIDE: defaultroute 9# REQUIRE: devd netif network_ipv6 10# KEYWORD: nojail 11 12. /etc/rc.subr 13. /etc/network.subr 14 15name="defaultroute" 16start_cmd="defaultroute_start" 17stop_cmd=":" 18 19defaultroute_start() 20{ 21 # Return without waiting if we don't have dhcp interfaces. 22 # Once we can test that the link is actually up, we should 23 # remove this test and always wait. 24 [ -z "`list_net_interfaces dhcp`" ] && return 25 26 # Wait for a default route 27 delay=${if_up_delay} 28 while [ ${delay} -gt 0 ]; do 29 defif=`get_default_if -inet` 30 if [ -n "${defif}" ]; then 31 if [ ${delay} -ne ${if_up_delay} ]; then 32 echo -n "($defif)" 33 fi 34 break 35 fi 36 if [ ${delay} -eq ${if_up_delay} ]; then 37 echo -n "Waiting ${delay}s for an interface to come up: " 38 else 39 echo -n . 40 fi 41 sleep 1 42 delay=`expr $delay - 1` 43 done 44 45 echo 46} 47 48load_rc_config $name 49run_rc_command "$1" 50