[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: bash vs. screen vs. SIGINT
From: |
Samuel Thibault |
Subject: |
Re: bash vs. screen vs. SIGINT |
Date: |
Wed, 7 Oct 2009 00:23:05 +0200 |
User-agent: |
Mutt/1.5.12-2006-07-14 |
Thomas Schwinge, le Tue 06 Oct 2009 23:43:37 +0200, a écrit :
> On Sat, Oct 03, 2009 at 06:06:35PM +0200, I wrote:
> > There are issues with the bash 4.0 packages, and new Debian screen
> > packages w.r.t. handling of SIGINT. I don't think that glibc is at
> > fault, but instead bash and screen should be looked at. Details are at
> > <http://www.bddebian.com:8888/~hurd-web/open_issues/bash_vs_screen_vs_sigint/>.
>
> # if defined(__osf__) || (BSD >= 199103) || defined(ISC)
turned into
> # if defined(__FreeBSD_kernel__) && defined(TIOCSCTTY)
>
> The setsid call indeed doesn't seem to be needed / is done before, but it
> seems that on the Hurd we also still need the TIOCSCTTY one -- if I cover
> __GNU__ in the #if, then screen works again as expected. Is this the
> correct thing to do then?
Seems so, as indicated in the O_NOCTTY documentation:
/* `open' never assigns a controlling terminal in GNU. */
#define O_NOCTTY 0 /* Don't assign a controlling terminal. */
and thus TIOCSCTTY has to explicitely be done to set it. I believe a
proper fix is thus to add an explicit || defined(__GNU__)
Samuel