xserver-allow-tcp=true feature doesn't work with Xorg version 1.17.0

Bug #1449282 reported by iMac on 2015-04-27
30
This bug affects 5 people
Affects Status Importance Assigned to Milestone
Light Display Manager
High
Unassigned
1.10
Low
Unassigned
1.14
Medium
Unassigned
1.16
Medium
Unassigned
1.2
Low
Unassigned
lightdm (Ubuntu)
High
Robert Ancell
Trusty
High
Robert Ancell
Vivid
High
Robert Ancell
Wily
High
Robert Ancell

Bug Description

[Impact]
xserver-allow-tcp=true option no longer works with X.org 1.17.

[Test Case]
1. Edit /etc/lightdm/lightdm.conf and set [SeatDefaults] xserver-allow-tcp=true
2. Start LightDM
3. Attempt to connect to the X server using TCP

Expected result:
Able to connect

Observed result:
Unable to connect

[Regression potential]
Low. X.org changed their default behaviour from listen by default to listen if "-listen tcp" is passed as a command line flag. This is just the equivalent change in LightDM. Since this is a new flag to X.org if a user was to use another X server there is a risk it would not understand that flag. However it seems unlikely since X.org is the only actively developed X server.

iMac (imac-netstatz) wrote :
description: updated
description: updated
description: updated
Robert Ancell (robert-ancell) wrote :

This was due to a change in the X server to disable listening on TCP by default:
http://cgit.freedesktop.org/xorg/xserver/commit/?id=cc59be38b7eff52a1d003b390f2994c73ee0b3e9

Changed in lightdm (Ubuntu):
status: New → Triaged
importance: Undecided → Medium
Robert Ancell (robert-ancell) wrote :

We have a problem at the moment in that we don't actually know what X server we are running. There are a number of features that have been added to Xorg that we would like to depend on. I think we need to detect what X server we are running by attempting to run "X -version" and then enable/disable things based on that.

Robert Ancell (robert-ancell) wrote :

That change in Xorg is in 1.16.0 which was first released into Ubuntu 14.10.

summary: - lightdm tcp listen requires additional configuration
+ xserver-allow-tcp features doesn't work with Xorg version 1.16.0

Robert, there may be a mistake here: "-listen tcp" was first introduced in xorg-server 1.17.0 (vivid ships with 1.17.1), not 1.16.0.

summary: - xserver-allow-tcp features doesn't work with Xorg version 1.16.0
+ xserver-allow-tcp=true feature doesn't work with Xorg version 1.17.0
Changed in lightdm (Ubuntu Vivid):
status: New → Triaged
importance: Undecided → High
Changed in lightdm:
status: New → Triaged
importance: Undecided → High
Changed in lightdm (Ubuntu Wily):
importance: Medium → High
description: updated
Robert Ancell (robert-ancell) wrote :

I've patched the vivid / wily versions since we know that X.org 1.17 is used. We still need to decide how to fix this for the LightDM project in a generic way.

Changed in lightdm (Ubuntu Vivid):
status: Triaged → Fix Committed
Changed in lightdm (Ubuntu Wily):
status: Triaged → Fix Committed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package lightdm - 1.16.3-0ubuntu2

---------------
lightdm (1.16.3-0ubuntu2) wily; urgency=medium

  * debian/patches/xorg-1.17.patch:
    - Fix xserver-allow-tcp=true option not working with X.org 1.17
      (LP: #1449282)

 -- Robert Ancell <email address hidden> Mon, 12 Oct 2015 14:57:47 +0100

Changed in lightdm (Ubuntu Wily):
status: Fix Committed → Fix Released
Laércio de Sousa (lbssousa) wrote :

Robert, the following snippet is used to retrieve current Xorg version in http://bazaar.launchpad.net/~ltsp-upstream/ltsp/ldm-trunk/view/head:/screen.d/ldm:

X -version 2>&1 | grep "X.Org X Server" | sed -n 's/X.Org X Server //p'

Maybe you can use it in a new function e.g. x_server_local_minimal_version (major, minor, bgufix):

if x_server_local_minimal_version (1, 17, 0) {
    // Do stuff for Xorg server >= 1.17.0
}

Robert Ancell (robert-ancell) wrote :

Agreed, that seems the best way forward. I was a little worried that the -version text is long and complicated compared to other programs and -version might not work as expected on other X servers.

Changed in lightdm:
milestone: none → 1.17.0
Changed in lightdm:
status: Triaged → Fix Committed
Changed in lightdm:
status: Fix Committed → Fix Released
Changed in lightdm (Ubuntu Vivid):
status: Fix Committed → In Progress
assignee: nobody → Robert Ancell (robert-ancell)

Hello iMac, or anyone else affected,

Accepted lightdm into wily-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/lightdm/1.16.5-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: added: verification-needed
Brian Murray (brian-murray) wrote :

Hello iMac, 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
Robert Ancell (robert-ancell) wrote :

Confirmed in vivid and wily that -listen tcp is correctly added to the X.org command line

tags: added: verification-done-wily
removed: verification-needed
Changed in lightdm (Ubuntu Wily):
assignee: nobody → Robert Ancell (robert-ancell)
tags: added: verification-done-vivid

I was wondering if this fix will also be applied to LTS Enablement Stacks on Trusty?

Robert Ancell (robert-ancell) wrote :

14.04 LTS is currently running Xorg 1.15 so there should be no need to bring this change back.

Robert,

I think he's asking about the case one installs xorg-server-lts-{vivid,wily} on Trusty. In this case, the bug does apply (sort of) to Trusty.

Enviado através do Boxer

Em 18/11/2015 18:11, Robert Ancell <email address hidden> escreveu:

14.04 LTS is currently running Xorg 1.15 so there should be no need to
bring this change back.

--
You received this bug notification because you are subscribed to Light
Display Manager.
https://bugs.launchpad.net/bugs/1449282

Title:
  xserver-allow-tcp=true feature doesn't work with Xorg version 1.17.0

Status in Light Display Manager:
  Fix Released
Status in Light Display Manager 1.10 series:
  Fix Committed
Status in Light Display Manager 1.14 series:
  Fix Released
Status in Light Display Manager 1.16 series:
  Fix Released
Status in Light Display Manager 1.2 series:
  Won't Fix
Status in lightdm package in Ubuntu:
  Fix Released
Status in lightdm source package in Vivid:
  Fix Committed
Status in lightdm source package in Wily:
  Fix Released

Bug description:
  [Impact]
  xserver-allow-tcp=true option no longer works with X.org 1.17.

  [Test Case]
  1. Edit /etc/lightdm/lightdm.conf and set [SeatDefaults] xserver-allow-tcp=true
  2. Start LightDM
  3. Attempt to connect to the X server using TCP

  Expected result:
  Able to connect

  Observed result:
  Unable to connect

  [Regression potential]
  Low. X.org changed their default behaviour from listen by default to listen if "-listen tcp" is passed as a command line flag. This is just the equivalent change in LightDM. Since this is a new flag to X.org if a user was to use another X server there is a risk it would not understand that flag. However it seems unlikely since X.org is the only actively developed X server.

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

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.

Robert Ancell (robert-ancell) wrote :

Good point - this will be SRU'd to 14.04 LTS.

Hello iMac, 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!

Changed in lightdm (Ubuntu Trusty):
status: New → Fix Committed
tags: added: verification-needed
Changed in lightdm (Ubuntu Trusty):
importance: Undecided → High
Robert Ancell (robert-ancell) wrote :

Confirmed in trusty that -listen tcp is correctly added to the X.org command line

tags: added: verification-done-trusty
removed: verification-needed
Changed in lightdm (Ubuntu Trusty):
assignee: nobody → Robert Ancell (robert-ancell)
Changed in lightdm (Ubuntu):
assignee: nobody → Robert Ancell (robert-ancell)
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
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
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers