From owner-freebsd-current  Wed Jul  2 22:52:55 1997
Return-Path: <owner-current>
Received: (from root@localhost)
          by hub.freebsd.org (8.8.5/8.8.5) id WAA21535
          for current-outgoing; Wed, 2 Jul 1997 22:52:55 -0700 (PDT)
Received: from sax.sax.de (sax.sax.de [193.175.26.33])
          by hub.freebsd.org (8.8.5/8.8.5) with SMTP id WAA21530
          for <current@FreeBSD.ORG>; Wed, 2 Jul 1997 22:52:51 -0700 (PDT)
Received: (from uucp@localhost) by sax.sax.de (8.6.12/8.6.12-s1) with UUCP id HAA07333 for current@FreeBSD.ORG; Thu, 3 Jul 1997 07:52:20 +0200
Received: (from j@localhost)
	by uriah.heep.sax.de (8.8.5/8.8.5) id HAA13275;
	Thu, 3 Jul 1997 07:43:08 +0200 (MET DST)
Message-ID: <19970703074308.ML07825@uriah.heep.sax.de>
Date: Thu, 3 Jul 1997 07:43:08 +0200
From: j@uriah.heep.sax.de (J Wunsch)
To: current@FreeBSD.ORG
Subject: Re: ppp & HUP.
References: <199707030302.NAA26921@godzilla.zeta.org.au>
X-Mailer: Mutt 0.60_p2-3,5,8-9
Mime-Version: 1.0
X-Phone: +49-351-2012 669
X-PGP-Fingerprint: DC 47 E6 E4 FF A6 E9 8F  93 21 E0 7D F9 12 D6 4E
Reply-To: joerg_wunsch@uriah.heep.sax.de (Joerg Wunsch)
In-Reply-To: <199707030302.NAA26921@godzilla.zeta.org.au>; from Bruce Evans on Jul 3, 1997 13:02:24 +1000
Sender: owner-current@FreeBSD.ORG
X-Loop: FreeBSD.org
Precedence: bulk

As Bruce Evans wrote:

> >If nobody will explain why this HUP is neded (hanging shells perfectly
> >killed by SIGKILL), I'll remove HUP sending from init.
> 
> SIGHUP may have been to allow shells to propagate SIGHUP to children.
> There may still be some problems here for parts of the process tree
> not killed by the death of the controlling process.  Perhaps shells
> do a more complete job of propagating the SIGHUP?

SIGHUP should be sent to all process groups associated with tty lines.
clean_ttys() does this.  So i think we should remove the SIGHUP salute
that's being sent in death(), and replace it with a call to
clean_ttys().  This will gracefully log off all tty-line associated
process groups, without blatantly reconfiguring all daemons.

Alternatively, the loop in death() should examine whether the process
is in the list of active tty line process group leaders, and only
SIGHUP them.

-- 
cheers, J"org

joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE
Never trust an operating system you don't have sources for. ;-)