Using "-inetd -indirect" Dies After Picking from the Host Chooser

B.J. Black bj.black "at" sjsu.edu
Fri Jan 19 02:00:00 2007


Hi there!

I'm trying to set up a "VNC Concentrator" just outside our firewall that 
does indirect xdmcp via the following xinetd config:

service vnc800
{
        socket_type     = stream
        wait            = no
        protocol        = tcp
        user            = root
        server          = /usr/bin/Xvnc
        server_args     = -inetd -once -depth 24 -indirect somehost 
-geometry 800x600 SecurityTypes=none
        disable         = no
}

xinetd, services(5) and gdm are all working on the host, but I get some 
strange behavior.  When I connect via vnc, I get the chooser with the 
hosts I configured in gdm.conf.  When I double-click something, however, 
the session dies immediately.  If I reconnect quickly enough (<10 
seconds or so), I pick up the session at the new host and all works 
flawlessly from there.

Thinking it might have something to do with "-once" in the command-line, 
I removed that and restarted xinetd.  Now when I connect, I get the 
chooser and when I double-click something, it hangs.  The window stays 
open (indeed, the mouse pointer still responds), but the host's login 
prompt never appears.  If I disconnect and reconnect, it works fine 
(login prompt appears, etc.).

The alternative mechanism we have is a horrible ssh tunnel process, 
which translates into both instructors and me doing way too much work as 
student tech support (instead of real work).  I'd much rather use this 
"concentrator" solution, so we can move on to better things.

This, btw, is running on CentOS 4.4 with Xvnc 4.0 (2/21/2005) with Xorg 
6.8.2.  I didn't see anything relevant in the archives, so I'm not sure 
if it's been addressed, or even if it's a vnc (and not an Xorg) bug.

Thoughts?

--bj