[comp.windows.x] Is this any way to use xdm?

jta@bilbo.locus (Jim Anderson) (04/05/89)

We have an environment of X servers running on DOS.  To get an X session
started I have written a daemon for the Unix system(s) that gets kicked
from DOS.  It then starts up xdm with the command:

xdm -nodaemon -server "xxxx:0 transient blotto"

Everything works fine as long as we actually start the session, terminate
the session gracefully and (I think) wait a little while to give xdm a
chance to reset the server.  If the entire session cycle is not run then
there is an xdm out there that never seems to give up.  Actually, there is
an xdm that forks another xdm that tries to connect to the server.  This
child does give up, but then the parent xdm just forks again.  Is there
some way to make it give up?

Also, does xdm really need so many processes around?

keith@EXPO.LCS.MIT.EDU (Keith Packard) (04/06/89)

> We have an environment of X servers running on DOS.  To get an X session
> started I have written a daemon for the Unix system(s) that gets kicked
> from DOS.  It then starts up xdm with the command:
>
> xdm -nodaemon -server "xxxx:0 transient blotto"

Xdm wasn't really designed to be run individually for each display client,
and it's not surprising that things like this don't work.  Support for
transient displays exists only because of xdmshell.

The majority of your problems probably arise because this transient
support is not complete enough in the distributed xdm.  This lack of a
completed design will cause xdm to restart the session whenever it
fails unexpectedly (as this is the desired behaviour for local permanent sessions).

The eventual solution is XDMCP which will (probably) appear with the next
release of the system.  Read the file "protocol" included with the xdm
sources for an overview of the intended functionality.  Please be aware
that the actual protocol in that document will share little with any
eventual standard.

For now, I suggest the obvious work-around, request that users of this
(obviously inadaquate) system make sure the session terminates normally
before turning off the display.