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