svn commit: r249387 - stable/9/etc/rc.d
Bjoern A. Zeeb
bz at FreeBSD.org
Thu Apr 11 22:04:19 UTC 2013
Author: bz
Date: Thu Apr 11 22:04:19 2013
New Revision: 249387
URL: http://svnweb.freebsd.org/changeset/base/249387
Log:
MFC r245525:
Add a conditional sleep 1 in case we add any IPv6 addresses to interfaces.
Do this per jail started, not per address. This will allow DAD to complete
and services to properly start. Before we have seen problems with services
trying to start before the IPv6 address was available to use and thus
erroring and failing to start.
Modified:
stable/9/etc/rc.d/jail
Directory Properties:
stable/9/etc/ (props changed)
Modified: stable/9/etc/rc.d/jail
==============================================================================
--- stable/9/etc/rc.d/jail Thu Apr 11 22:02:35 2013 (r249386)
+++ stable/9/etc/rc.d/jail Thu Apr 11 22:04:19 2013 (r249387)
@@ -509,7 +509,7 @@ jail_handle_ips_option()
esac
case "${_type}" in
inet) ;;
- inet6) ;;
+ inet6) ipv6_address_count=$((ipv6_address_count + 1)) ;;
*) warn "Could not determine address family. Not going" \
"to ${_action} address '${_addr}' for ${_jail}."
continue
@@ -546,6 +546,7 @@ jail_ips()
esac
# Handle addresses.
+ ipv6_address_count=0
jail_handle_ips_option ${_action} "${_ip}"
# Handle jail_xxx_ip_multi<N>
alias=0
@@ -558,6 +559,12 @@ jail_ips()
;;
esac
done
+ case ${ipv6_address_count} in
+ 0) ;;
+ *) # Sleep 1 second to let DAD complete before starting services.
+ sleep 1
+ ;;
+ esac
}
jail_prestart()
More information about the svn-src-stable-9
mailing list