This case is set to time-out tomorrow as a FastTrack.  If there are no
issues raised, then it will be approved as a fasttrack.  If people think
there are any remaining issues that require further discussion, then I
have made arrangements for this case to be converted to a full-case and
we can have the inception review next Tuesday.

Here is an update of the issues raised and the proposed solutions.
This is updated to reflect the discussion since I last sent out
a similar update on the 17th.  Assuming the case closes tomorrow,
then I will update the case materials with the following proposed
changes before closing it (if I haven't already).

- Darren Moffat suggested that the pam-ck-connector PAM module be
   delivered.  The PAM module will be delivered in the package
   SUNWconsolekit-pam, so this new package name was added to the
   Exported Interface table and to section "4.4 packagin & Delivery".
   I also updated the paragraph about pam_ck_connector in section 4.1.3
   as follows:

   On some Linux systems, the pam_ck_connector is used to ensure that
   non-graphical logins (e.g. telnet, ssh, etc.) are registered with
   ConsoleKit.  Thus ConsoleKit can be used as a utmp/wtmp replacement
   since it stores a superset of the information as in the utmp/wtmp
   database.  This PAM module will be delivered in the SUNWconsolekit-pam
   package, but it will not be referenced in the default /etc/pam.conf(4)
   file.  This way it is available if any users decide to make use of it.

- Darren Moffat also suggested that we deliver the
   /usr/sbin/ck-log-system-start, /usr/sbin/ck-log-system-restart and
   /usr/sbin/ck-log-system-stop scripts.

   However, these are intended to be integrated directly into init(1M).
   Until we have plans to do this, I do not see any value in providing
   these scripts with the ConsoleKit packages.

- Darren Moffat asked why the ck-system-stop script and the
   ck-system-restart script call "/sbin/init 5" and "/sbin/init 6"
   instead of "shutdown" as they do on Linux.

   Rich McAllister said we should use /sbin/init.  Refer to the mail log
   for LSARC 2004/713:

   http://sac.eng.sun.com/arc/LSARC/2004/713/mail

   And search for "init 5" or "init 6"

   In summary he said:

   > I'd stay away from the reboot and halt commands, these are migrated
   > from the old SunOS4 compatibility and don't really do everything
   > you'd want.  I'd go for either the SVR4-ish shutdown (not the
   > /usr/ucb one, even though most people prefer it) or just go
   > straight to /usr/sbin/init the main difference between "shutdown"
   > and "init" is that shutdown does a "wall" to notify time sharing
   > users.  Since rebooting/shutting down from the login screen really
   > only makes sense on a single-user system, there doesn't seem to be
   > much use for the "wall"

   So there is no plan to switch to using shutdown unless someone
   suggests that Rich's recommendation is no longer valid.

- Alan Coopersmith had a concern that the CK_SESSION_X11_DISPLAY_DEVICE
   would not be meaningful to client programs.  It was highlighted that
   this environment variable is only used by the scripts described in
   section 4.1.4.  In other words, the scripts that ConsoleKit runs when
   a session starts.

   These environment variables simply pass along the information
   associated with the session.  Since the display device indicates what
   VT is being used on the console, this could be useful for the session
   startup script to do special work based on which VT is being used, if
   desired.

- Alan Coopersmith asked why some scripts are installed to /usr/lib and
   others to /usr/lib/ConsoleKit/scripts.

   The difference is that the files installs to /usr/lib are libexec
   programs which would normally be installed to /usr/libexec on Linux.
   This issue will be treated as a bug, and not an issue that needs to
   be addressed before initial integration.

- Alan Coopersmith asked why ConsoleKit looks up the UID and PID of
   the Xserver process rather than just being informed by GDM.

   This design prevents the session leader from providing spoofed
   information.  Since the D-Bus OpenSession interface is an unprivileged
   operation and takes no arguments.  When this is used, the entries in
   the database are filled via doing such probing.  The session leader
   can use the OpenSessionWithParameters and pass in the arguments, and
   thus avoid ConsoleKit from needing to do such probing.

   In fact GDM does use OpenSessionWithParameters, but GDM also calls the
   ck-x11-get-display-device script to figure out what display device
   is associated with the display and should be passed into
   OpenSessionWithParameters.  When using VT, ck-x11-get-display-device
   does probe the Xserver to get the VT device name.

- Alan Coopersmith asked whether ConsoleKit needs to handle fast
   reboot and slow reboot.  Jedy Wang responded that a separate ARC
   case is planned for the update of the reboot dialog to take care
   of this.

- Joerg Barfurth suggested that ck-seat-tool allow the user to
   specify the SeatID to be created when starting a dynamic display.
   This is desired to ensure that ConsoleKit always maps any saved
   state to the right device.

   The project team has verified that the upstream community finds
   adding the following arguments acceptable to support this:

   + If --seat-id=SEAT_ID is given and this seat is existing, a new
     session will be append on that seat.
   + If --seat-id=SEAT_ID is given but this seat is not existing, a new
     seat with given seat id created, and a new session append on that
     seat.
   + If --seat-id=SEAT_ID is not given, a new seat with generated seat id
     (Seat#) will be created, and a new session append on that seat.

Thanks,

Brian

Reply via email to