Package: systemd
Version: 204-2
Severity: normal
Since systemd 203, user sessions are placed in cgroups suffixed with
".session" (e.g. my current session is under
/sys/fs/cgroup/systemd/user/1000.user/c1.session). Unfortunately,
libsystemd-login0 from unstable is not prepared for that, and the
following more or less plausible code breaks with it:
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
#include <systemd/sd-login.h>
int main (void)
{
char *session, *seat;
int err;
err = sd_pid_get_session(getpid(), &session);
printf ("err=%d\n", err);
if (err == 0 && session) {
printf("session=%s\n", session);
printf("sd_session_is_active=%d\n", sd_session_is_active(session));
printf("sd_session_get_seat=%d\n", sd_session_get_seat(session, &seat));
}
return 0;
}
With libsystemd-login0 44-12, this program prints:
,----
| err=0
| session=c1.session
| sd_session_is_active=-2
| sd_session_get_seat=-2
`----
where -2 indicates ENOENT. With libsystemd-login0 204-2, the output is
better:
,----
| err=0
| session=c1
| sd_session_is_active=1
| sd_session_get_seat=0
`----
A real-world package where this incompatibility causes problems is
weston: the weston-launch wrapper failed for me until I upgraded
libsystemd-login0 to the version in experimental.
-- System Information:
Debian Release: jessie/sid
APT prefers unstable
APT policy: (500, 'unstable'), (101, 'experimental')
Architecture: i386 (x86_64)
Kernel: Linux 3.11.0-rc4-nouveau (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages systemd depends on:
ii initscripts 2.88dsf-43
ii libacl1 2.2.52-1
ii libaudit0 1:1.7.18-1.1
ii libc6 2.17-92
ii libcap2 1:2.22-1.2
ii libcryptsetup4 2:1.6.1-1
ii libdbus-1-3 1.6.12-1
ii libgcrypt11 1.5.3-1
ii libkmod2 9-3
ii liblzma5 5.1.1alpha+20120614-2
ii libpam0g 1.1.3-9
ii libselinux1 2.1.13-2
ii libsystemd-daemon0 44-12
ii libsystemd-journal0 204-2
ii libudev1 204-2
ii libwrap0 7.6.q-24
ii udev 204-2
ii util-linux 2.20.1-5.5
Versions of packages systemd recommends:
ii libpam-systemd 204-2
Versions of packages systemd suggests:
pn systemd-ui <none>
-- no debconf information