I have sent this message some time ago but have lost track of it, perhaps it
is still worth someone considering...
At our site we have long used specific vnc sessions for specific users,
driven mostly from the desire to retain sessions across the (numerous)
windows reboots or more so when going home and picking up from home. To
that end, we are required to keep many vnc servers running on fixed ports.
I always wanted to use inetd to handle those but was stuck because users
could not target their sessions and then pick them up later on -
disconnections terminate the session.
My fix was to add another parameter '-inetdwait' which handles receiving the
'server' socket instead of the 'client' socket. I am not sure what you know
about inetd, but this corresponds to the 'wait' or 'nowait' parameter. This
allows us to have a dozen or more servers run without any overhead of Xvnc,
X session etc when the user is not even connected, and really helps reboot
time. An example of our inetd config is:
vnc1 stream tcp wait me /etc/startvnc
vnc2 stream tcp wait someone /etc/startvnc
Where vnc1 and vnc2 map to services 5901 and 5902 respectively, and
/etc/startvnc is a script which reads a users selected resolution file in
~/.vnc and passes the long font-path as follows:
...
exec /usr/local/bin/Xvnc -inetdwait -query $host -once -rfbauth
/home/$user/.vnc/passwd -fp "$FP" $res
Note that in our installation, we -query to get a local session and -once to
exit when the user logs out so as to return control to inetd. I also need
to make Xvnc setgid to support local unix-domain sockets, not sure if there
is a way to enable that as part of the Solaris install?
I have also made a small change to kbdptr.c, nothing to do with the
inetdwait addition, to support the full list of keys from a PC keyboard by
default (so that users could customize and count on where keys will map) and
so that I could change xkeycaps to support a realvnc server. At the same
time I added Sun specific keys so that suns dtterm would stop complaining
about not finding 'cut' and 'paste' keys.
As I indicated, I hope that this can help others. The files included are
init.c, sockets.c and kbdptr.c. I have included diff -c output as well as
the changed files, this was based on 3.3.7 unix source. Thanks again.
The files can be obtained from
http://www.wmode.com/vnc/vnc-cooper-diffs.tar.gz and
http://www.wmode.com/vnc/vnc-cooper-changed.tar.gz respectively for as long
as I can keep them available.
David Cooper
Wmode Inc.
_______________________________________________
VNC-List mailing list
[EMAIL PROTECTED]
To remove yourself from the list visit:
http://www.realvnc.com/mailman/listinfo/vnc-list