Habermann, David (D) DAHabermann@dow.com
Wed Nov 5 18:24:00 GMT 2014

> I just released a 5th TEST version of the next upcoming Cygwin release,
> 1.7.33-0.5.

Ever since using this 1.7.33-0.x series (currently running 1.7.33-0.5) I've been having intermittent trouble with one of my scripts, and just finally got around to digging further today.  This is an expect script (subroutine of a larger system) designed to auto-login to an ssh session and then set the passwd -R to allow further ssh sessions to have "full network powers". (I then run a cron script which drops these rights off again every half-hour, so the "full network powers" logins are time limited.)

The symptoms of the failure are that it sometimes fails to send the ssh password (and thus doesn't proceed to the passwd -R command at all).  If I run the script a second time, it almost always works on the second try. After some time has passed I run it again and get a failure, then immediately run again and succeed.  I would appreciate any thoughts as to why such a script would fail, and then succeed on successive runs.  This routine basically never failed on the previous recent versions of cygwin (in active daily use since approximately July 1st).


The script is called like this:

$ super.exp localhost mypasswd

and the file super.exp looks like this:


set mach [lindex $argv 0]
set pass [lindex $argv 1]

spawn ssh -o PubkeyAuthentication=no $mach
expect -exact "password: "
send $pass\n
expect {
        "$ " {
                send "passwd -R\n"
                expect -exact "password: "
                send $pass\n
                expect -exact "password: "
                send $pass\n
                expect -exact "$ "
                send "exit\n"
        "Permission denied, please try again." {
                send_error "The password you provided was invalid.\n"
                exit 1

More information about the Cygwin mailing list