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