Re: [gdm-list] GDM - gdmdynamic and Sun Ray support




Mike:

Sun Ray doesn't know or care about /dev/dtlocal.

This is true.  On Solaris, any display that doesn't have a
real device associated with it is treated as /dev/dtlocal.  This
happens to be used for Sun Ray devices to keep utmp/wtmp happy
since they lack a real device.

Perhaps if ConsoleKit is enhanced so that you can create
dynamic displays, it could support the ability to specify the
device as a pseudo device like /dev/dtlocal.  It probably makes
sense for distros to be able to decide for themselves how to
assign the device name when the display doesn't really have
an associated device.

> 'dtlogin' also gives special treatment to an X server that is
> designated as being "on-console", because some utmpx consumers
> want to recognise that case.  I've lost track of whether GDM
> provides the same special treatment.

Not quite true.  You can configure CDE login to specify the
device name.  In /usr/dt/config/Xservers you define a display as
follows.

   :0   Local local_uid console root /usr/X11/bin/Xserver :0 -nobanner

The "@console" part defines this to be the /dev/console.  If you want
a different string to be passed to utmp/wtmp you could set this to
whatever you wanted.  You would probably have utmp/wtmp issues if you
set it to a string that didn't correspond to a real device, though.

GDM and CDE login does have some special case logic for the display
associated with /dev/console, which I think only affects Solaris.
Mainly this relates to logindevperm processing (and the ability to
"drop-to-console" in CDE login).  On Solaris machines which do not have
VT enabled, you only want to do logindevperm processing for the display
associated with /dev/console.  With VT enabled, you want to do l
logindevperm processing for any VT display.

Starting in GDM 2.20, you can specify the device in the [server]
section, so if you want to specify what utmp string to use, it will
use that.  It looks like this:

[servers]
0=Standard device=/dev/console

This way you have some mechanism to define the device that is
associated with the display, if you want to control the string that
gets passed to utmp/wtmp.

When Virtual Terminals are used, the device name associated with
the display is something like /dev/vt/%d for Solaris, /dev/tty%d
on Linux, or /dev/ttyv%s on FreeBSD.  Now that VT is going into
Solaris Nevada in the near future, both CDE login and GDM have been
enhanced to use the VT device with utmp/wtmp when VT is being used.

Using ConsoleKit, I'm guessing it will take care of ensuring that
the device name is set to reasonable values when VT is not being
used.  It probably should also allow distros to define what
string should be used for attached non-console displays (such as
Sun Ray devices where it could be set to /dev/dtlocal on Solaris)
and to define what string should be used for remote displays
where it could be set to /dev/dtremote on Solaris.  Some distros
may opt to leave these empty, which is the current behavior in GDM.

Brian




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]