Subject: RE: openssh 4.3p2-3 - Timeouts on an Intel Centrino Duo machine
From: "Harig, Mark" <[email-masked]>
To: "Simon McQueen" <[email-masked]>
Cc: <[email-masked]>
Date: Tue, 23 May 2006 16:40:54 -0400

> -----Original Message-----
> From: Simon McQueen [mailto:[email-masked]] 
> Sent: Tuesday, May 23, 2006 1:02 PM
> To: Harig, Mark
> Cc: [email-masked]
> Subject: Re: openssh 4.3p2-3 - Timeouts on an Intel Centrino 
> Duo machine
> 
> > If you're unable to build and debug the openssh/cygwin code,
> > then you may need to resort to installing TortoiseCVS,
> > http://www.tortoisecvs.org/, which doesn't appear to have
> > this problem on the dual-core Dell laptops.
> 
> I'm building the source as per:
> 
> http://cygwin.com/faq/faq-nochunks.html#faq.programming.buildi
> ng-cygwin
> 
> ... right now although I haven't quite worked out what on earth I'm 
> going to do with it once it's built. Thanks again for taking 
> the time to 
> reply.
> 

Try debugging using gdb?

Working backwards (top down?), the error message that scp
issues is 'Timeout, server not responding.'.  A search of the
Openssh source code shows that this is only issued by the function
'server_alive_check()' in the file clientloop.c.  That function, in
turn is called by the function 'client_wait_until_can_do_something()',
in the same source file.  'server_alive_check()' is called if the
following condition fails:

>
>    ret = select((*maxfdp)+1, *readsetp, *writesetp, NULL, tvp);
>    if (ret < 0) {
>    ...
>    } else if (ret == 0)
>       server_alive_check();
>

My guess is that the call to select() needs to be checked to make
sure that it is being passed valid values.  If it is, then the
code that provides select() (cygwin1.dll?) would need to be built
and linked to ssh/scp in order to find out whether the problem
lies deeper within the code (by using gdb to step into the call
to select()).  If select() is *not* being passed valid values, then
backtracking would be necessary.

---

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/