Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Oct 2000 08:59:36 +0000 (GMT)
From:      Terry Lambert <tlambert@primenet.com>
To:        obrien@FreeBSD.ORG
Cc:        bv@wjv.com, freebsd-current@FreeBSD.ORG
Subject:   Re: new rc.network6 and rc.firewall6
Message-ID:  <200010240859.BAA13647@usr01.primenet.com>
In-Reply-To: <20001023010526.A6883@dragon.nuxi.com> from "David O'Brien" at Oct 23, 2000 01:05:27 AM

next in thread | previous in thread | raw e-mail | index | archive | help
> > One of the reasons for the numbers in the SysVR4 arena is to
> > set the order of execution so programs which other depend upon
> > are executed first.  How does the NetBSD solve this problem.
> 
> Very coolly.  The main rc script runs a script named `rcorder' to
> generate the proper order.  rc.shutdown also uses `rcorder' but reverses
> the ordering.  Two examples are included below to show what `rcorder'
> uses to generate the list.  These NetBSD rc files also provide "start",
> "stop", "restart", "status", etc. commands to assist the sysadmin.
> Again, *very* slick and still quite BSD-like.

[ ... ]

> # PROVIDE: ypbind
> # REQUIRE: ypserv

One thing that surfaced frequently in a discussion of a similar
system was hard vs. soft requirements.

Specifically, I can run sendmail without a syslogd running, so
it is not a hard requirement, but I would prefer that it be
there so that I can log things.

There is a similar non-requirement for bind to start sendmail,
if you have it configured to not probe interfaces, which is a
good idea for dial-on-demand configurations, but to provide
service to a remote system, it needs bind around.

So along with "PROVIDE" and "REQUIRE", there's a need for "WANT";
it could be used as a tie-breaker for circular dependency lists,
if such occur.


Similarly, there is a need for a "config", as well as a "start",
"stop", "restart", and "Status".  For well written software,
this would end up being a NOOP, since it would not cache config
data, but would instead obtain it each time (an example of bad
caching is sendmail source host name caching, when an ISP supports
DNSUPDAT based on RADIUS audit events: if the machine claims to
be named something different than the ISP assigned DNS name such
that forward and reverse mappings don't match, the ISP will reject
attempts to relay email from valid customers).

Yeah, in a perfect world, everyone would have a static IP address,
and sendmail would have a knob to make it do a gethostbyaddr() for
each time that it wanted to say "HELO", etc., etc..


Oh... and the PROVIDE/REQUIRE/WANT lists really, really want to
be "per service name" rather than per program name, so I could,
for example, have a service that depends on "smtpserv", and not
care if it was sendmail or qmail or whatever, only that there
was a protocol aware program sitting on the SMTP port, waiting
for a connection.


					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200010240859.BAA13647>