[Pkg-utopia-maintainers] Bug#626730: consolekit: Inconsistent behavior between x86-32 and x86-64 regarding login-session-id

Pascal Dormeau pdormeau at free.fr
Sat May 14 18:28:49 UTC 2011


Package: consolekit
Version: 0.4.4-1
Severity: minor


Hello,
On two laptops, one with i386 and the other with amd64, with roughly
the same configuration, I can have an active X session with consolekit
working in the amd64 case but not in the i386 case (unless I make use
of pam_loginuid). For amd64, /proc/self/loginuid, /proc/self/sessionid
and ck-lists-session (login-session-id) always return 4294967295 for
login-session-id (for everybody logged in, in a X session or in a
console).
For i386, /proc/self/loginuid, /proc/self/sessionid always return
4294967295 (for everybody logged in, in a X session or in a console),
but ck-lists-session always report empty login-session-id.
I do not know here what should be the correct behavior.
To have an active X session with non empty login-session-id on the
i386, I have to make use of pam_loginuid module
(in /etc/pam.d/common-session). In such case, /proc/self/loginuid
reports correct uid, /proc/self/sessionid and ck-lists-session
(login-session-id) reports the same id, specific to each session (and
different from 4294967295). And finally ck-list-session reports that
the X session is active.
I do not have to do that on amd64.
Additional information in case it matters: on both systems, the X
session can be started by either xdm or startx. libpam-ck-connector is
installed and /etc/X11/Xsession.d/90consolekit is modified such as to
unconditionally run ck-launch-session.

Best regards,
Pascal Dormeau

-- System Information:
Debian Release: wheezy/sid
  APT prefers testing
  APT policy: (990, 'testing'), (90, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.39-rc7-amd64 (SMP w/4 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages consolekit depends on:
ii  dbus                    1.4.8-3          simple interprocess messaging syst
ii  libc6                   2.13-4           Embedded GNU C Library: Shared lib
ii  libck-connector0        0.4.4-1          ConsoleKit libraries
ii  libdbus-1-3             1.4.8-3          simple interprocess messaging syst
ii  libdbus-glib-1-2        0.92-1           simple interprocess messaging syst
ii  libglib2.0-0            2.28.6-1         The GLib library of C routines
ii  libpolkit-gobject-1-0   0.101-4          PolicyKit Authorization API
ii  libx11-6                2:1.4.3-1        X11 client-side library
ii  zlib1g                  1:1.2.3.4.dfsg-3 compression library - runtime

Versions of packages consolekit recommends:
ii  libpam-ck-connector           0.4.4-1    ConsoleKit PAM module

consolekit suggests no packages.

-- Configuration Files:
/etc/X11/Xsession.d/90consolekit changed:
CK_LAUNCH_SESSION=/usr/bin/ck-launch-session
is_on_console() {
	session=$(dbus-send --system --dest=org.freedesktop.ConsoleKit \
		--type=method_call --print-reply --reply-timeout=2000 \
		/org/freedesktop/ConsoleKit/Manager \
		org.freedesktop.ConsoleKit.Manager.GetCurrentSession \
		| grep path | awk '{print $3}' | sed s/\"//g)
	x11_display=$(dbus-send --system --dest=org.freedesktop.ConsoleKit \
		--type=method_call --print-reply --reply-timeout=2000 \
		$session org.freedesktop.ConsoleKit.Session.GetX11Display \
		| grep string | awk '{print $2}' | sed s/\"//g)
	if [ -z "$x11_display" ] ; then
		return 0
	else
		return 1
	fi
}
if [ -z "$GDMSESSION" ] && [ -x "$CK_LAUNCH_SESSION" ] ; then
    STARTUP="$CK_LAUNCH_SESSION $STARTUP"
fi


-- no debconf information





More information about the Pkg-utopia-maintainers mailing list