From owner-svn-src-head@freebsd.org Tue Dec 6 17:30:23 2016 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 62AD7C69918; Tue, 6 Dec 2016 17:30:23 +0000 (UTC) (envelope-from rpokala@mac.com) Received: from mr11p00im-asmtp004.me.com (mr11p00im-asmtp004.me.com [17.110.69.135]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 47AC21E0D; Tue, 6 Dec 2016 17:30:23 +0000 (UTC) (envelope-from rpokala@mac.com) Received: from process-dkim-sign-daemon.mr11p00im-asmtp004.me.com by mr11p00im-asmtp004.me.com (Oracle Communications Messaging Server 7.0.5.38.0 64bit (built Feb 26 2016)) id <0OHR00J00XEC3C00@mr11p00im-asmtp004.me.com>; Tue, 06 Dec 2016 17:30:17 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mac.com; s=4d515a; t=1481045417; bh=SgTKYDyxuc1kuF5rtwEPSOm0fADYi2ELHNizAFmWO0c=; h=Date:Subject:From:To:Message-id:MIME-version:Content-type; b=ruWSo2RMUrjIIISZOzpqc06fieS48OEiR8scx1/7edWRnBgmIEvRcqWG1ioml8iam amao/XMZ0IA2gEwe7xwtESKUGo7AiTpUJNET1iEx6OUOx0jdTvbhe2OV8BitcWP51B +CoyOsYFJ+YhVvHg2whqbY6pdSX71sOY8xB8CiohhpFnQZyOY6+9t4YdG+OnxhoD/V 3DpQt/dqA+5SGlVdf6DIgd99RGYxW0Mfkj5u4RVYUBK7wt36ZIwPHMYcjiz9/08+4h 1mu34QJsBlG72Utkk2708RwbdrjdT2ZZum0HKxtmYknWH5xycmCvYORedldgb9UKxy kCmEjIYT546nw== Received: from [192.168.1.4] (c-67-188-225-23.hsd1.ca.comcast.net [67.188.225.23]) by mr11p00im-asmtp004.me.com (Oracle Communications Messaging Server 7.0.5.38.0 64bit (built Feb 26 2016)) with ESMTPSA id <0OHR001YUXYFQE20@mr11p00im-asmtp004.me.com>; Tue, 06 Dec 2016 17:30:16 +0000 (GMT) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2016-12-06_09:,, signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 clxscore=1034 suspectscore=0 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1603290000 definitions=main-1612060263 User-Agent: Microsoft-MacOutlook/f.1c.1.161117 Date: Tue, 06 Dec 2016 09:30:15 -0800 Subject: Re: svn commit: r309625 - head/sbin/rcorder From: Ravi Pokala Sender: "Pokala, Ravi" To: Eric van Gyzen , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-id: Thread-topic: svn commit: r309625 - head/sbin/rcorder References: <201612061549.uB6Fndxo044249@repo.freebsd.org> In-reply-to: <201612061549.uB6Fndxo044249@repo.freebsd.org> MIME-version: 1.0 Content-type: text/plain; charset=UTF-8 Content-transfer-encoding: quoted-printable X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Dec 2016 17:30:23 -0000 For grins, I ran this on my build server. The resulting graph is... complex= . But one thing was immediately clear: neither /etc/rc.d/dhclient and /etc/r= c.d/natd depend on anything. That seems wrong: I would expect them to have s= ome sort of dependency on NETWORKING, either BEFORE (since dhclient may be i= nvolved in bringing up the network) or REQUIRE (since it doesn=E2=80=99t make sens= e to run a networking daemon like natd before networking is up). Or am I missing something? Thanks, Ravi (rpokala@) -----Original Message----- From: on behalf of Eric van Gyzen Date: 2016-12-06, Tuesday at 07:49 To: , , Subject: svn commit: r309625 - head/sbin/rcorder Author: vangyzen Date: Tue Dec 6 15:49:39 2016 New Revision: 309625 URL: https://svnweb.freebsd.org/changeset/base/309625 Log: Add rcorder-visualize.sh, which generates graphviz from rc.d scripts =20 This is imported from NetBSD. The author--Joerg Sonnenberger--agreed to apply a two-clause BSD license, just so the license was clear. =20 This source tree location matches NetBSD, and is the first place someone might look for such a tool. =20 Obtained from: Joerg Sonnenberger via NetBSD MFC after: 3 days Sponsored by: Dell EMC Added: head/sbin/rcorder/rcorder-visualize.sh (contents, props changed) Added: head/sbin/rcorder/rcorder-visualize.sh =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sbin/rcorder/rcorder-visualize.sh Tue Dec 6 15:49:39 2016 (r30962= 5) @@ -0,0 +1,52 @@ +#!/bin/sh +# $NetBSD: rcorder-visualize.sh,v 1.5 2009/08/09 17:08:53 apb Exp $ +# +# Copyright (c) 2009 by Joerg Sonnenberger +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIE= S +# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE= , +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# $FreeBSD$ +# +# Simple script to show the dependency graph for rc scripts. +# Output is in the dot(1) language and can be rendered using +# sh rcorder-visualize | dot -T svg -o rcorder.svg +# dot(1) can be found in graphics/graphviz in pkgsrc. + +rc_files=3D${*:-/etc/rc.d/*} + +{ +echo ' digraph {' +for f in $rc_files; do +< $f awk ' +/# PROVIDE: / { provide =3D $3 } +/# REQUIRE: / { for (i =3D 3; i <=3D NF; i++) requires[$i] =3D $i } +/# BEFORE: / { for (i =3D 3; i <=3D NF; i++) befores[$i] =3D $i } + +END { + print " \"" provide "\";" + for (x in requires) print " \"" provide "\"->\"" x "\";" + for (x in befores) print " \"" x "\"->\"" provide "\";" +} +' +done +echo '}' +}