This is the mail archive of the
cygwin-xfree@cygwin.com
mailing list for the Cygwin XFree86 project.
Re: MultiWindow Mode: stty speed = 0 on xterm cause rlogin to fail
On Wed, 25 Feb 2004, Harold L Hunt II wrote:
> This issue has to have something to do with the way that commands are
> launched from the .XWinrc menu, since launching an xterm from another
> xterm works just fine. Here is the code that launches commands
> specified in the .XWinrc menus:
>
> case CMD_EXEC:
> if (fork()==0)
> {
> struct rlimit rl;
> unsigned long i;
>
> /* Close any open descriptors except for STD* */
> getrlimit (RLIMIT_NOFILE, &rl);
> for (i = STDERR_FILENO+1; i < rl.rlim_cur; i++)
> close(i);
If the stdin for the menu process isn't a tty, the inherited stdin for
xterm still won't be a tty. Some stty settings can be set for non-tty's,
and some cannot. Usually the differences between xterm and rxvt in this
area are related to whether there is a real /dev/tty associated with the
process.
> /* Disassociate any TTYs */
> setsid();
The intent here is to prevent signals from propagating into the
subprocess.
>
> execl ("/bin/sh",
> "/bin/sh",
> "-c",
> m->menuItem[j].param,
> NULL);
> exit (0);
> }
>
> I'm looking into it a little bit, but I think that others could shed
> some light on this.
>
> Harold
>
--
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net