2016-02-28 04:44:36 UTC
-fork. When complete (with abort with 'q' or the session completes),
the cygwin shell is screwed up (tty is in non-echo mode). I have lived
with this, but recently there are other user posts, where I see them
doing 'stty sane' calls after a -fork run (cygwin).
So I made a change to john.c
, so that when john exited, it did a system 'stty sane' call to clean
things up.. This seemed to work fine. However, magnum question why
this was done, and we had some discussion. Well to put things simply,
we found the 'real' bug on why cygwin was left in a tty non-echo mode.
It was fixed here:
reverting the other 'hack',, and fixing the real problem. This fix
should be pushed down to john core, since this was code code in tty.
It may be that at some time, the getpid() or some other call in cygwin
was not working. Well, if this code IS done in cygwin, then when -fork=x
runs exit, the tty is left in a sane state. This code should really be
looked at, and likely the #ifndef __CYGWIN__ define should be removed.