Tristan,
Thanks for the solution! The addition of the "-nolisten named" option fixes Xvnc 4.1.1 and now dtlogin launches as it should, even on my Solaris 2.6 systems. I have been using a font server so that issue I already addressed.

Tom

Tristan Richardson wrote:
I've spent a considerable amount of time tracking down the incompatibilities between dtlogin on Sparc Solaris and Xvnc 4.x (dtlogin is the CDE version of XDM which is used to provide the Solaris login screen when you use the -query option to Xvnc).

There are a number of issues, the most significant of which is that there is a bug in dtlogin on Solaris 7 (and probably 2.6 and 8). It looks like it gets confused when it uses the "named" protocol for talking to the X server. Xvnc 3.3.7 used an earlier version of the X server code that doesn't have support for this protocol which is why Xvnc 3.3.7 works fine with it. Luckily there is a simple workaround for Xvnc 4 servers which is to give the "-nolisten named" option to Xvnc.

Fonts are another issue which may cause problems but I haven't really got to the bottom of what is going on. Using a font server seems to help in some situations.

There is also a bug in the current 4.1.6 Enterprise Edition to do with allocation of file descriptor numbers, for which there is a simple workaround - add "3>/dev/null" to the Xvnc command line.

An additional pain is the fact that Solaris's inetd only allows 5 parameters to any spawned program. This means a wrapper script is needed.

So to summarise what seems to work for me on our Solaris 7 box:

1. Create a wrapper script called for example /usr/local/bin/Xvnc-inetd which simply execs Xvnc with the desired arguments:

#!/bin/sh
exec /usr/local/bin/Xvnc -inetd -securitytypes=none -depth 24 \
-nolisten named -query localhost -once 3>/dev/null

2. Add an entry in /etc/services for the desired port, e.g.:

vnc50   5950/tcp

3. Add an entry to /etc/inetd.conf, not forgetting to kill -HUP the inetd process:

vnc50 stream tcp nowait root /usr/local/bin/Xvnc-inetd Xvnc-inetd

4. Make sure /usr/dt/config/Xaccess etc allow XDMCP service from the local host.

5. Connect a viewer to <host>:50 and you should be away...

Cheers

Tristan


Tom Schmidt wrote:

Chuck,
Your solution worked for me as well! I replaced the Solaris 8 dtlogin binary with the Solaris 9 version and now Xvnc 4.X works via inetd! I agree that this is still not a solution to the root cause, but at least it is a workaround. However I still support some Solaris 2.6 machines and this solution will not work for them since the Solaris 9 dtlogin is not backward compatible with Solaris 2.6.

So I do hope that the realvnc authors can fix this issue in their Xvnc 4.X code since Xvnc 3.3.7 does not have this issue. And the workaround above only fixes Solaris 8, not Solaris 2.6.

Tom

"Baumann, Chuck" <[EMAIL PROTECTED]> wrote:
 > Tom,
> I have both Solaris 8 (sparc) and Solaris 9 (sparc) setup with inetd and
 > the VNC connections work just fine on Solaris 9 but not on Solaris 8.
 >
 > After running both Solaris 8 and Solaris 9 dtlogin in debug mode and
> comparing what worked (solaris 9) and what doesn't (solaris 8) I was no
 > closer to the answer.  This is a comparison of the sizes of the two
 > modules:
 > -r-xr-xr-x   1 root     bin       181532 Feb 17 07:45 dtlogin  (sol8)
 > -r-xr-xr-x   1 root     bin       185396 Feb 17 13:36 dtlogin  (sol9)
 >
> Notice that the dtlogin module from Solaris 9 media is about 4K larger.
 > I backed up the Solaris 8 version of dtlogin and then used the dtlogin
 > from Solaris 9 on my Solaris 8 system.
 > Both versions of dtlogin had all outstanding patches applied.
 >
> Now when connecting via VNC on Solaris 8, I could successfully login to
 > a CDE, OpenWindows or Failsafe Session. For some reason the extra code
 > in the Solaris 9 dtlogin module will handle whatever is occurring and
 > causing the Solaris 8 module to terminate.
 > I realize that this is a workaround and not an answer.
 > You may not have access to Solaris 9 or may not feel comfortable
 > implementing a work-around such as this.
> I thought I would post my observations since they may help someone else
 > with finding out what the real problem is.
 > Chuck



--
Tom L. Schmidt, Manager/SysAdmin Characterization Equipment
Micron Technology, Inc.  http://www.micron.com/
8000 S. Federal Way P.O. Box 6 Mail Stop 01-371 Boise, Idaho USA 83707-0006
mailto:[EMAIL PROTECTED]  http://www.4schmidts.com/
_______________________________________________
VNC-List mailing list
VNC-List@realvnc.com
To remove yourself from the list visit:
http://www.realvnc.com/mailman/listinfo/vnc-list

Reply via email to