[systemd-devel] Multiseat session creation fail, VT number not 0

Matthew Monaco matt at 0x01b.net
Fri Jan 3 14:13:48 PST 2014


On 01/03/2014 07:51 AM, David Herrmann wrote:
> Hi
> 
> On Fri, Jan 3, 2014 at 3:24 PM, Matthew Monaco <matt at 0x01b.net> wrote:
>> I was having trouble getting a session on seat1 with v208, so I moved to git
>> which has a nicer error message than EINVAL:
>>
>> pam_systemd(lightdm:session): Asking logind to create session: uid=1000 pid=637
>> service=lightdm type=x11 class=user seat=seat1 vtnr=2 tty= display=:1 remote=no
>> remote_user= remote_host=
> 
> Yeah, that vtnr=2 line is wrong. You really shouldn't set any VTNR if
> seat!=seat0. I think the correct fix would be to set "vtnr=0" in
> get_seat_from_display() in pam-module.c if we're not on seat0.
> 

Well, I just added

if (seat && !streq(seat, "seat0")) {
	pam_syslog(handle, LOG_WARNING,
		"Ignoring vtnr %d for %s which is not seat0", vtnr, seat);
	vtrn = 0;
}

because in my case vtnr was coming from pam_getenv(XDG_VTNR), and
get_seat_from_display() isn't called.

But thank you, my system is a bit more usable now =)


More information about the systemd-devel mailing list