From: Alex K. Angelopoulos <alex@bi...> - 2002-04-26 11:33:57
I've recently been discussing a problem with correctly applying the IdleTimeout
setting on WinVNC which I'm hoping someone else can shed some light on.
Looking through the ORL archives, I've seen several people complain about issues
with directly applying the IdleTimeout, and no real answers. Many of the
questions were very fuzzily defined, of course, so there's not much of a solid
base of "this obviously does not work" information.
The goal is to have the WinVNC server timeout an idle connection after 300
BACKGROUND FROM DOCS
The WinVNC documentation defines IdleTimeout as a Local and Global per-user
settings, which implies that it will be read from (depending on other config
details) one of the following locations:
HKEY_LOCAL_MACHINE\Software\ORL\WinVNC3\<current user name>
The doc details from the ORL site say this:
"This setting tells WinVNC how many seconds a connected VNC client may remain
idle for (no input events or update requests) before being disconnected. If this
setting is not specified or is set to zero then no timeout is enforced."
HINTS FROM THE MAILING LIST
I've discovered several cases of people getting timeouts they did *not* want -
in each of their cases which included registry documentation, they appear to
have had values measured down from a "high" DWORD value - for example,
I ran a couple of tests. In each instance, I set all of the above registry
entries to a particular value, then stopped and restarted the WinVNC service. I
followed this with a connection, then minimized the VNCViewer for at least the
number of seconds specified. I was using TightVNC 1.2.3; a person whom I had
been working with remotely was using the ORL version. In my case, the server
was running Windows NT 4 SP6a, and the viewing systems was running Windows XP
Professional;. The two systems were connected over a local LAN with private
network numbers, 1 subnet, and traffic over a 10/100 hub.
Setting the value to a very low quantity *directly* seems to have no effect - if
I try setting a DWORD value of 5 in all of the above locations, for example,
after waiting a couple of minutes and reactivating the viewer, the connection
was still live.
Setting it to a high countdown value also does not appear to do anything. I
tried 0xfffffff0 in the above registry locations, and again this did no good.
Pretty simple: what's going on? Does anyone have any experience with setting
this value directly? Are there situations under which the IdleTimeout setting
would not take effect?
From: Constantin Kaplinsky <const@ce...> - 2002-08-05 16:48:11
>>>>> "AKA" == Alex K Angelopoulos <alex@...> writes:
AKA> I've recently been discussing a problem with correctly applying
AKA> the IdleTimeout setting on WinVNC which I'm hoping someone else
AKA> can shed some light on.
AKA> QUESTIONS Pretty simple: what's going on? Does anyone have any
AKA> experience with setting this value directly? Are there situations
AKA> under which the IdleTimeout setting would not take effect?
Today I investigated the IdleTimeout issue, and the answer to the
"what's going on" question is very simple: the IdleTimeout setting
does not work and never worked in WinVNC. It uses the setsockopt()
function with SO_SNDTIMEO and SO_RCVTIMEO options to set timeouts, but
MSDN clearly states that these options are not supported in Win32
With Best Wishes,