patches for UnixWare v2.x pty (misc.c,configure.in)

Kevin Steves stevesk at sweden.hp.com
Sat Feb 17 00:59:57 EST 2001


On Fri, 16 Feb 2001, Damien Miller wrote:
: On Fri, 16 Feb 2001, Markus Friedl wrote:
: > > Markus and Kevin had some issues with that - can either of you comment?
: >
: > don't use RA_RESTART in clientloop, since select MUST be
: > interrupted by SIGWINCH.
:
: I am pretty sure that SA_RESTART doesn't affect select. This is
: supported by Stevens and the Solaris manpages. It also seems to work
: ok when I try it (SIGWINCH is received and processed).

it's my understanding that we can't have select() automatically
restarted in clientloop, because we won't then get to check the SIGWINCH
handler flag immediately.

this is what hp-ux 11.0 select() says:

           [EINTR]        The select() function was interrupted  before any
                          of the selected events occurred and before the
                          timeout interval expired. If SA_RESTART has been
                          set for the interrupting signal, it is
                          implementation-dependent whether select() restarts
                          or returns with EINTR.

and hp-ux select *does* restart select when SA_RESTART.

also, i changed the SIGWINCH handler to use mysignal (without
SA_RESTART) and it fixed the problem noticed by itojun about having to
enter a character before SIGWINCH was processed.  that's interesting.

so if we plan to move signal()->mysignal() everywhere, we can't just
always set SA_RESTART.






More information about the openssh-unix-dev mailing list