zsh-workers
 help / color / mirror / code / Atom feed
From: Vincent Stemen <zsh@hightek.org>
To: Zsh hackers list <zsh-workers@sunsite.dk>
Subject: Re: PATCH: (2) Re: FreeBSD compatability feature request
Date: Fri, 23 Apr 2004 00:30:44 -0500	[thread overview]
Message-ID: <20040423053044.GA75851@quark.hightek.org> (raw)
In-Reply-To: <20040422160957.GC45277@lizzy.catnook.com>

On Thu, Apr 22, 2004 at 09:09:35AM -0700, Jos Backus wrote:
> On Thu, Apr 22, 2004 at 11:17:19AM +0100, Peter Stephenson wrote:
> > If anybody actually knows anything about all this, their views would be
> > especially welcome.
> 
> Does this help?
> 
>     http://www.cons.org/cracauer/sigint.html
> 
> (Martin Cracauer has been maintaining the FreeBSD /bin/sh on and off.)

That is an informative article.  It includes an interesting section on
"How to be a proper shell".  However, I didn't see any reference to
implementing asynchronous signal traps.  I did find another article
that discusses process waiting and might have helpful information.

http://www.cs.pdx.edu/~jrb/cs303/handouts/on.wait

I also don't have a full understanding of all aspects of signal
handling, but it looks to me like in order to implement trapsasync
mode, it would involve using the WNOHANG option to waitpid() or
wait3() or wait4() to periodically check the child status without
blocking the parent until the child exits.  That way I am guessing you
can immediately receive signals in the parent and kill the child,
exit, or whatever.  My question is, does that affect the child's
ability to be interactive.

I saw a place in the zsh code where WNOHANG was being used in a call
to WAIT() in signals.c:zhandler() but I havn't studied the code well
enough to understand what it is doing or whether that is the relevant
area of code relating to trapsasync.  

-- 
Vincent Stemen
Avoid the VeriSign/Network Solutions domain registration trap!
Read how Network Solutions (NSI) was involved in stealing our domain name.
http://www.InetAddresses.net


  reply	other threads:[~2004-04-23  5:30 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20040417222222.GA27230@quark.hightek.org>
     [not found] ` <21533.1082374109@csr.com>
2004-04-21  8:21   ` Vincent Stemen
2004-04-21 10:00     ` Peter Stephenson
2004-04-21 11:05     ` PATCH: (2) " Peter Stephenson
2004-04-22  8:59       ` Vincent Stemen
2004-04-22  9:59         ` Peter Stephenson
2004-04-22 10:17           ` Peter Stephenson
2004-04-22 16:09             ` Jos Backus
2004-04-23  5:30               ` Vincent Stemen [this message]
2004-04-23  9:56                 ` Peter Stephenson
2004-04-27  3:56             ` Bart Schaefer
2004-04-27  9:58               ` Peter Stephenson
2004-04-29  2:16                 ` Vincent Stemen
2004-04-30 21:26         ` PATCH: (3) " Peter Stephenson
2004-05-01  1:45           ` Vincent Stemen
2004-05-01  2:23             ` Vincent Stemen
2004-05-04  7:17           ` PATCH: (3) - FreeBSD compatability issue resolved Vincent Stemen
2004-05-04  9:28             ` Peter Stephenson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20040423053044.GA75851@quark.hightek.org \
    --to=zsh@hightek.org \
    --cc=zsh-workers@sunsite.dk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).