Subject: Re: pkg/19002: rc.d/cyrus slightly broken
To: Frank Cusack <>
From: Greg A. Woods <>
List: netbsd-bugs
Date: 11/10/2002 11:48:45
[ On Sunday, November 10, 2002 at 02:48:42 (-0800), Frank Cusack wrote: ]
> Subject: pkg/19002: rc.d/cyrus slightly broken
> 	1) stdin/stdout/stderr should be redirected to /dev/null.  I
> 	   won't go into why this should be, I'm sure it's well understood.

In general I very strongly disagree with forcing stdio to /dev/null on a
daemon on startup.  Properly coded daemons do the right thing at the
right time and their output should not ever be forcibly discarded on
their behalf.

What _specific_ reasons do you feel they should be re-directed for this
particular program?

> 	2) The 'sleep 2' bit causes master to receive SIGHUP after 2s.

That sounds like a fairly important bug that should be fixed properly,
whatever that means.

I'm not sure exactly where the bug is though.  Does the SIGHUP cause a
problem for the daemon?  If so, why?  Daemons normally reload their
configurations on SIGHUP -- does this one do that?

Are you certain you have correctly determined the cause of the SIGHUP?
I would have expected that it is normally be generated when /etc/rc
exits, not when the sleep exits.

> 	   It doesn't seem to have any real function, but master
> 	   receiving an unnecessary SIGHUP *is* bad, so removing it seems
> 	   to be the easiest fix.

That sleep must have been put there for some reason that the person
writing it thought was important (no other script has a similar
feature).  Perhaps we need to ask what that reason is first!

At first glance it looks like this particular daemon is not designed to
run stand-alone from /etc/rc on a *BSD system.  If so then it needs some
(relatively minor) patches to correct this deficiency before it is truly
viable for use on NetBSD.

								Greg A. Woods

+1 416 218-0098;            <>;           <>
Planix, Inc. <>; VE3TCP; Secrets of the Weird <>