Connect to XDMCP clients on address requests come from if available

Bug #1481561 reported by Robert Ancell on 2015-08-05
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Light Display Manager
Medium
Unassigned
1.10
Medium
Unassigned
1.14
Medium
Unassigned
1.2
Medium
Unassigned
lightdm (Ubuntu)
Medium
Robert Ancell
Precise
Medium
Unassigned
Trusty
Medium
Robert Ancell
Vivid
Medium
Robert Ancell
Wily
Medium
Unassigned

Bug Description

[Impact]
Currently LightDM connects to an XDMCP enabled X server using the first suitable address in the XDMCP Request packet. However, some clients may put a number of addresses in this message and potentially they are not all routable. If the address the request message came from is in the list we should use that first as that is more likely to be a routable address. This also matches the behaviour of GDM which ignores the contents of the Request packet anyway.

[Test Case]
1. Start LightDM with XDMCP enabled
2. Connect with a client that puts a number of addresses in the Request packet

Expected result:
LightDM prefers the address the Request came from over the other addresses.

Observed result:
LightDM always picks the first address.

[Regression Potential]
There is a possibility of a behaviour change in existing clients that had two valid addresses, though the particular address shouldn't matter (unless complex firewalling / routing rules are being used). There is a risk that XDMCP behaviour could have been broken by the change (tested with regression tests).

Changed in lightdm:
status: New → Triaged
importance: Undecided → Medium
status: Triaged → Fix Committed
Changed in lightdm:
milestone: none → 1.15.2
Changed in lightdm:
milestone: 1.15.2 → 1.15.1
Changed in lightdm:
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package lightdm - 1.15.1-0ubuntu1

---------------
lightdm (1.15.1-0ubuntu1) wily; urgency=medium

  * New upstream release:
    - Fix default X server command set to XMir in 1.15.0.
    - Internally merge the [SeatDefaults] and [Seat:*] sections together. The
      previous method meant configuration snippets using a mix of old and new
      naming would not correctly override eachother.
    - Use IP address of XDMCP requests to contact X server if available.
      (LP: #1481561)
    - Add an option for XDMCP and VNC servers to only listen on one address.
      (LP: #1390808)
    - Fix configuration file warnings so they go to the log, not stderr.
    - Warn if deprecated options logind-load-seats or xdg-seat are in
      configuration. (LP: #1468057)
    - Improve IP addresses in XDMCP log messages.
    - Fix typo in dm-tool man page. (LP: #1470587)

 -- Robert Ancell <email address hidden> Wed, 05 Aug 2015 16:53:39 +1200

Changed in lightdm (Ubuntu):
status: New → Fix Released
description: updated
Changed in lightdm (Ubuntu Vivid):
status: New → Triaged
importance: Undecided → Medium
Changed in lightdm (Ubuntu):
importance: Undecided → Medium
Changed in lightdm (Ubuntu Vivid):
status: Triaged → In Progress
assignee: nobody → Robert Ancell (robert-ancell)

Hello Robert, or anyone else affected,

Accepted lightdm into vivid-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/lightdm/1.14.3-0ubuntu1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in lightdm (Ubuntu Vivid):
status: In Progress → Fix Committed
tags: added: verification-needed
tags: added: verification-done-vivid
removed: verification-needed
Robert Ancell (robert-ancell) wrote :

This change caused bug 1516831

Chris J Arges (arges) on 2015-11-18
tags: added: verification-failed
removed: verification-done-vivid
Changed in lightdm (Ubuntu Wily):
status: New → Fix Committed
Changed in lightdm (Ubuntu Trusty):
status: New → Fix Committed
importance: Undecided → Medium
Changed in lightdm (Ubuntu Wily):
importance: Undecided → Medium
Changed in lightdm (Ubuntu Precise):
importance: Undecided → Medium
Chris J Arges (arges) wrote :

Hello Robert, or anyone else affected,

Accepted lightdm into trusty-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/lightdm/1.10.6-0ubuntu1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

tags: removed: verification-failed
tags: added: verification-needed
tags: added: verification-done-trusty verification-needed-vivid
removed: verification-needed
Changed in lightdm (Ubuntu Trusty):
assignee: nobody → Robert Ancell (robert-ancell)
Changed in lightdm (Ubuntu Wily):
assignee: nobody → Robert Ancell (robert-ancell)
Changed in lightdm (Ubuntu):
assignee: nobody → Robert Ancell (robert-ancell)
tags: added: verification-done-vivid
removed: verification-needed-vivid
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package lightdm - 1.10.6-0ubuntu1

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

  * New upstream release:
    - Handle trailing whitespace on boolean values in configuration.
      (LP: #1507033)
    - Use libaudit to generate audit events.
    - Fix apparmor profiles for running Chromium in guest sessions.
      (LP: #1504049)
    - Add LC_PAPER, LC_NAME, LC_ADDRESS, LC_TELEPHONE, LC_MEASUREMENT and
      LC_IDENTIFICATION variables to the list of inherited locale variables.
      (LP: #1511259)
    - Add a backup-logs option that can be used to disable existing logging
      files having a .old suffix added to them.
    - Check the version of the X server we are running so we correctly pass
      -listen tcp when required. (LP: #1449282)
    - Use IP address of XDMCP requests to contact X server if available.
      (LP: #1481561)
    - Implement XDMCP ForwardQuery. (LP: #1511545)
    - Add an option for XDMCP and VNC servers to only listen on one address.
      (LP: #1390808)
    - Don't start LightDM if the XDMCP server is configured with a key that
      doesn't exist. (LP: #1517685)
    - Add IP addresses to XDMCP log messages.
    - Refactor XDMCP error handling.
    - Fix small memory leak in XDMCP logging code.
    - Fix typo in dm-tool man page. (LP: #1470587)
    - Use new Xmir binary when running X under Unity System Compositor.
    - Fix all the things that prevent clang (3.5) from building LightDM with
      -Werror.
    - Add more tests.

 -- Robert Ancell <email address hidden> Fri, 20 Nov 2015 16:07:50 +1300

Changed in lightdm (Ubuntu Trusty):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for lightdm has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package lightdm - 1.14.4-0ubuntu1

---------------
lightdm (1.14.4-0ubuntu1) vivid; urgency=medium

  * New upstream release:
    - Handle XDMCP Request packet with no addresses. (LP: #1516831)
    - Don't start LightDM if the XDMCP server is configured with a key that
      doesn't exist. (LP: #1517685)
    - Add IP addresses to XDMCP log messages.
    - Refactor XDMCP error handling.
    - Add more tests.

 -- Robert Ancell <email address hidden> Fri, 20 Nov 2015 16:01:15 +1300

Changed in lightdm (Ubuntu Vivid):
status: Fix Committed → Fix Released
Changed in lightdm (Ubuntu Wily):
assignee: Robert Ancell (robert-ancell) → nobody
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers