Found the problem (line 1335 of Session.java): if the serverAliveCountMax > 0, 
then the read timeout received in the exception will never be acted on, since 
the client will send a keepAlive message to refresh things.

I found that calling session.setServerAliveCountMax(0) fixed the problem and 
then timeouts get back to readers.

thanks again!

c


Begin forwarded message:

> From: Colin Smith <colin.sm...@gmail.com>
> Subject: Fwd: socket timeout not honored when reading from 
> ChannelShell.getInputStream() ?
> Date: May 3, 2013 12:47:29 PM PDT
> To: "jsch-users@lists.sourceforge.net" <jsch-users@lists.sourceforge.net>
> 
> 
> Dear readers, 
> 
> Thanks to Jcraft for a very useful library!
> 
> I wish that when I did a read() from a shell input stream that it would 
> respect the timeout that I set with Session.setTimeout().
> 
> Has anyone else found that this doesn't appear to work? Is there a 
> workaround, or a lower level interface to read, or is it likely that I have 
> not set things up correctly?
> 
> regards,
> 
> c
>> 
> 

------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite
It's a free troubleshooting tool designed for production
Get down to code-level detail for bottlenecks, with <2% overhead.
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap2
_______________________________________________
JSch-users mailing list
JSch-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jsch-users

Reply via email to