Mail Archives: cygwin/2002/04/09/23:47:04
Hello,
I've found a problem when running OpenSSH under Cygwin on Win98.
The problem occurs when using the "ssh -R" option to do port forwarding
from a remote host to my local machine. The remote machine is a Linux
box running OpenSSH sshd.
Everything works OK at first but after enough sessions are made
across the SSH tunnel, I can no longer open sockets and other network
programs on the Cygwin system (such as IE) fail. If I create enough
sessions the entire system can hang.
By sessions, I mean the following:
- I open a connection with telnet (or whatever) across the SSH tunnel
- I then close the connection before opening a new connection.
- So, there should be no open sockets after each session.
One symptom of the problem is that after each session
I end up with an extra socket in the LISTEN state on the Cygwin box
(use netstat -an to check the socket states). I don't know why there
would even be any sockets in the LISTEN state on the Cygwin box since
the ssh client shouldn't have to do a listen.
What ends up happening is that I keep accumulating extra
sockets in the LISTEN state (one for each session). I believe that
Cygwin + "ssh -R" are combining to use up all of the file descriptors
on the system due to the extra sockets in the LISTEN state.
I have installed the latest Cygwin binaries and it still
happens. A similar problem happens on Windows 2000. But, it only
happens on Win2k when there is no server listening for connections on
the Cygwin box. This problem does *not* happen when using OpenSSH on
Solaris.
The results of a cygcheck are at this URL:
http://www.interzone.com/Personal/cygwin.info
I went ahead and got the source code for OpenSSH and put some
debugging output into it to see if it was inadvertently doing a listen()
but as far as I could tell it wasn't.
Has anyone else seen this problem? I find the problem pretty
debilitating since I want to run the tunnel to my local server for a
long period of time and use a lot of connections but it ends up hanging
the system.
Any help would be appreciated. :)
Steve
schew AT interzone DOT com
P.S. Another issue that may be related is that when there is no server
on the Cygwin box listening for connections across the SSH tunnel I
would expect that a telnet across the tunnel would result in a
Connection Refused message. This is what happens when using Solaris
instead of Cygwin. Instead, the connection just hangs until it is
killed.
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -