From owner-freebsd-rc@FreeBSD.ORG Thu May 31 21:50:20 2007 Return-Path: X-Original-To: freebsd-rc@freebsd.org Delivered-To: freebsd-rc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 087B516A400 for ; Thu, 31 May 2007 21:50:20 +0000 (UTC) (envelope-from dougb@FreeBSD.org) Received: from mail2.fluidhosting.com (mx21.fluidhosting.com [204.14.89.4]) by mx1.freebsd.org (Postfix) with SMTP id B245C13C468 for ; Thu, 31 May 2007 21:50:19 +0000 (UTC) (envelope-from dougb@FreeBSD.org) Received: (qmail 12737 invoked by uid 399); 31 May 2007 21:50:19 -0000 Received: from localhost (HELO lap.dougb.net) (dougb@dougbarton.us@127.0.0.1) by localhost with SMTP; 31 May 2007 21:50:19 -0000 X-Originating-IP: 127.0.0.1 Message-ID: <465F4319.6070504@FreeBSD.org> Date: Thu, 31 May 2007 14:50:17 -0700 From: Doug Barton Organization: http://www.FreeBSD.org/ User-Agent: Thunderbird 2.0.0.0 (X11/20070525) MIME-Version: 1.0 To: freebsd-rc@freebsd.org X-Enigmail-Version: 0.95.0 OpenPGP: id=D5B2F0FB Content-Type: multipart/mixed; boundary="------------030609080609030602020605" Subject: For review: resolv ordering patch X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Discussion related to /etc/rc.d design and implementation." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 31 May 2007 21:50:20 -0000 This is a multi-part message in MIME format. --------------030609080609030602020605 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit The attached patch makes resolv ordering deterministic, and places it between netif and NETWORKING. It also tightens up the code a little and fixes whitespace issues in resolv. I'm open to suggestions for more precise ordering, but I'd like to get this in sooner than later, and definitely before the freeze. This is designed to fix the issue on RELENG_6 where resolv is not in the early section before including local scripts, but is after (which means that it never gets run). Doug -- This .signature sanitized for your protection --------------030609080609030602020605 Content-Type: text/plain; name="resolv-order.diff" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="resolv-order.diff" diff -u /usr/src/etc/rc.d/NETWORKING ./NETWORKING --- /usr/src/etc/rc.d/NETWORKING Wed May 23 00:24:50 2007 +++ ./NETWORKING Thu May 31 14:30:52 2007 @@ -6,7 +6,7 @@ # PROVIDE: NETWORKING NETWORK # REQUIRE: netif netoptions routing network_ipv6 isdnd ppp -# REQUIRE: routed mrouted route6d mroute6d +# REQUIRE: routed mrouted route6d mroute6d resolv # This is a dummy dependency, for services which require networking # to be operational before starting. diff -u /usr/src/etc/rc.d/resolv ./resolv --- /usr/src/etc/rc.d/resolv Sat Dec 10 12:21:45 2005 +++ ./resolv Thu May 31 14:48:32 2007 @@ -28,6 +28,7 @@ # # PROVIDE: resolv +# REQUIRE: netif # KEYWORD: nojail . /etc/rc.subr @@ -41,15 +42,15 @@ # if [ ! -e /etc/resolv.conf -a \ -n "`/bin/kenv dhcp.domain-name-servers 2> /dev/null`" ]; then - /bin/cat /dev/null > /etc/resolv.conf + > /etc/resolv.conf if [ -n "`/bin/kenv dhcp.domain-name 2> /dev/null`" ]; then echo domain `/bin/kenv dhcp.domain-name` > /etc/resolv.conf fi - set -- `/bin/kenv dhcp.domain-name-servers` - for ns in `IFS=','; echo $*`; do - echo nameserver $ns >> /etc/resolv.conf; - done + set -- `/bin/kenv dhcp.domain-name-servers` + for ns in `IFS=','; echo $*`; do + echo nameserver $ns >> /etc/resolv.conf; + done fi --------------030609080609030602020605--