On Tue, Sep 4, 2012 at 11:05 AM, Alexander Lamaison <sw...@lammy.co.uk> wrote: > On 4 September 2012 07:44, anirudh nair <anirudh.an...@gmail.com> wrote: > >> Can I set the session not to timeout at all? > > No. The server can do whatever it likes. But, you can encourage most > servers to hold the connection open by responding to its keepalive > requests during idle time.
I've been running some tests (connecting to a Linux host running on a VM), as I'm attempting to integrate libssh2 and boost::asio, and I'd like to keep a pool of open sessions (thus, needing to keep idle sessions/connections alive). When using SSH's keepalive (defined by ClientAliveInterval and ClientAliveCountMax in sshd_config), I've had coherent results - the session was dropped when expected. When using TCP keepalive's default values, results are also coherent - if I don't enable asio tcp::socket' keepalive, the connection drops after little more than 2 hours; if I enable asio tcp::socket's keepalive, the connection goes on and on (I finally shut it down after 6 hours idle). The last test I ran, however, was mystifying. I've set TCP's keepalive to 3 mins, and its repeated probes to 3 every 30 secs. I didn't enable the socket's keepalive. So, it should've died after +/- 4.5 mins. And yet, the connection went on and on, hitting the same 6 hour mark, until I shut it down. I'm still trying to figure out what happened here. Paulo Caetano http://cidebycide.blogspot.pt/ _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel