← Back to team overview

touch-packages team mailing list archive

[Bug 1364725] Re: logind session ID not used due to race condition

 

https://launchpad.net/ubuntu/+source/lightdm/1.10.3-0ubuntu2 is
available in trusty-proposed.

---------------
lightdm (1.10.3-0ubuntu2) trusty; urgency=medium

  * Refresh patches

 -- Robert Ancell <robert.ancell@xxxxxxxxxxxxx> Fri, 10 Oct 2014
21:24:51 +1300

lightdm (1.10.3-0ubuntu1) trusty; urgency=medium

  * New upstream release:
    - Fix crash when having configuration keys defined in multiple places
      (LP: #1377373)
    - Allow user switching in multi-seat until bug stopping greeter showing on
      logout is fixed
    - Don't access .dmrc files until information from these files is required
      (LP: #1370852)
    - Do timed autologin each time you are returned to the greeter
      (LP: #1302491)

 -- Robert Ancell <robert.ancell@xxxxxxxxxxxxx> Thu, 09 Oct 2014
09:01:21 +1300

lightdm (1.10.2-0ubuntu1) trusty; urgency=medium

  * New upstream release:
    - Use logind to provide the list of seats to use. This is disabled unless
      logind-load-seats (in [LightDM] section) is set to true. This is the
      default behaviour in lightdm 1.12. (LP: #1190581)
    - Fix crash if running script hooks with non-X display servers.
      (LP: #1305006)
    - Add a seat option 'allow-user-switching' that can disable all user
      switching for that seat. (LP: #1350357)
    - Make PAM services configurable. (LP: #1348251)
    - Add liblightdm method to get user UID. (LP: #1370327)
    - Add a new session type 'mir-container' that allows the session to run
      inside a custom system compositor. (LP: #1359332)
    - Add --show-config option that shows combined configuration.
    - Use XDG_SESSION_ID from PAM instead of using the logind D-Bus API.
      (LP: #1364725)
    - Make socket writing code used between greeter and daemon more robust to
      errors.
    - Correct section name in default users.conf file.
    - Fix tests failing with Qt 5.3 due to it checking getuid/geteuid which we
      are faking.
    - Fix small memory leaks.
    - Test improvements

 -- Robert Ancell <robert.ancell@xxxxxxxxxxxxx> Wed, 17 Sep 2014
16:27:53 +1200

** Changed in: lightdm (Ubuntu Trusty)
       Status: In Progress => Fix Committed

** Tags added: verification-needed

** Branch linked: lp:ubuntu/trusty-proposed/lightdm

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to lightdm in Ubuntu.
https://bugs.launchpad.net/bugs/1364725

Title:
  logind session ID not used due to race condition

Status in Light Display Manager:
  Fix Released
Status in Light Display Manager 1.10 series:
  Fix Released
Status in “lightdm” package in Ubuntu:
  Fix Released
Status in “lightdm” source package in Trusty:
  Fix Committed
Status in “lightdm” source package in Utopic:
  Fix Released

Bug description:
  [Impact]
  Sometimes a session will fail to get the logind session ID to pass back to the LightDM daemon. This appears to be due to a race using the D-Bus method org.freedesktop.login1.Manager.GetSessionByPID instead of getting the environment variable XDG_SESSION_ID as set in PAM.

  This bug was detected by a bug in LightDM 1.11.7 where the daemon
  would attempt to read both a logind and ConsoleKit ID when this D-Bus
  call failed.

  The solution is to use the XDG_SESSION_ID environment variable and not
  GetSessionByPID() and to fix the passing of the session id(s) from the
  session to the daemon to be unambiguous.

  [Test Case]
  Check the LightDM log always contains lines like:
  [+0.78s] DEBUG: Activating login1 session c1
  for each session.

  [Regression Potential]
  Change is non-trivial and could cause other bugs. Regression tests confirm existing test cases work.

To manage notifications about this bug go to:
https://bugs.launchpad.net/lightdm/+bug/1364725/+subscriptions


References