🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: net.bugs.4bsd
Article #1685

Re: Interrupting find(1)

#1685
From: Guy Harris
Date: Wed, 24 Sep 1986 06:57
21 lines
1335 bytes
> Chances are that when you hit ^C, the wait() is in process, and will
> end up killing the exec'd process, but the interrupt is ignored by
> find(1), and so it proceeds on its merry way exec'ing more things...

"Fixed in 4.3."

> The fix would be simply to change SIG_IGN to SIG_HOLD in both statements.

But not that way.  SIG_HOLD only appears in "/usr/include/sys/signal.h" as a
historical holdover; setting the signal action to SIG_HOLD will *not* set
the "p_sigmask" bit for that signal, so it won't hold it.  The correct fix
is to put a "sigblock"/"sigsetmask" pair around the "wait".

> This behaviour was observed with 4.2bsd find(1) on both a Sun-2 and a
> Vax-750.

There's some chance you'll see it on other VAX models, too.
-- 
	Guy Harris
	{ihnp4, decvax, seismo, decwrl, ...}!sun!guy
	guy@sun.com (or guy@sun.arpa)
Technical Details
Message-ID: <7566@sun.uucp>
Path: arc1-ca.pugleaf.net!utzoo!mnetor!seismo!lll-crg!lll-lcc!pyramid!decwrl!sun!guy
References: <334@yabbie.rmit.oz>

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: arc1-ca.pugleaf.net!utzoo!mnetor!seismo!lll-crg!lll-lcc!pyramid!decwrl!sun!guy
From: guy@sun.uucp (Guy Harris)
Newsgroups: net.bugs.4bsd,net.unix-wizards
Subject: Re: Interrupting find(1)
Message-ID: <7566@sun.uucp>
Date: Wed, 24-Sep-86 02:57:30 EDT
Article-I.D.: sun.7566
Posted: Wed Sep 24 02:57:30 1986
Date-Received: Wed, 24-Sep-86 22:00:56 EDT
References: <334@yabbie.rmit.oz>
Organization: Sun Microsystems, Inc.
Lines: 21