[Pkg-systemd-maintainers] Bug#717403: Bug#717403: libpam-systemd fails when talking to old systemd-logind service

Michael Stapelberg stapelberg at debian.org
Sun Jul 21 12:09:43 BST 2013


Hi Michael,

Michael Biebl <biebl at debian.org> writes:
> Jul 20 14:08:08 pluto login[3476]: pam_systemd(login:session): Failed to parse message: Message has only 5 arguments, but more were expected
> […]
> 2/ The above looks like a D-Bus API break in the logind API and we
> should probably notify upstream about that.
I verified that. In systemd-44, the relevant piece of code sends this
reply:

        b = dbus_message_append_args(
                        reply,
                        DBUS_TYPE_STRING, &session->id,
                        DBUS_TYPE_OBJECT_PATH, &p,
                        DBUS_TYPE_STRING, &session->user->runtime_path,
                        DBUS_TYPE_UNIX_FD, &fifo_fd,
                        DBUS_TYPE_STRING, &seat,
                        DBUS_TYPE_UINT32, &vtnr,
                        DBUS_TYPE_INVALID);

whereas in systemd-204, it sends:

        b = dbus_message_append_args(
                        reply,
                        DBUS_TYPE_STRING, &session->id,
                        DBUS_TYPE_OBJECT_PATH, &p,
                        DBUS_TYPE_STRING, &session->user->runtime_path,
                        DBUS_TYPE_UNIX_FD, &fifo_fd,
                        DBUS_TYPE_STRING, &cseat,
                        DBUS_TYPE_UINT32, &vtnr,
                        DBUS_TYPE_BOOLEAN, &exists,
                        DBUS_TYPE_INVALID);

As you can see, the exists parameter is new.

I created https://bugs.freedesktop.org/show_bug.cgi?id=67131 upstream.

-- 
Best regards,
Michael




More information about the Pkg-systemd-maintainers mailing list