Error connecting to X server via IPv6
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Light Display Manager |
Fix Released
|
Medium
|
Unassigned | ||
1.10 |
Fix Committed
|
Medium
|
Unassigned | ||
1.16 |
Fix Committed
|
Medium
|
Unassigned | ||
1.18 |
Fix Released
|
Medium
|
Unassigned | ||
lightdm (Ubuntu) |
Fix Released
|
Medium
|
Unassigned | ||
Trusty |
Fix Committed
|
Medium
|
Unassigned | ||
Wily |
Fix Committed
|
Medium
|
Unassigned | ||
Xenial |
Fix Released
|
Medium
|
Unassigned |
Bug Description
[Impact]
LightDM doesn't pick the best IPv6 address on offer from clients (picks link-local addresses over non link-local).
[Test Case]
1. Start LightDM with XDMCP server enabled
2. Connect XDMCP client that sends IPv6 link-local addresses to LightDM
Expected result:
LightDM picks a non link-local address and is able to connect to the client
Observed result:
LightDM picks the link-local address address if it is first
[Regression Potential]
Small risk of behaviour change due to new IP selection method.
Original report:
I've discovered a problem in lightdm XDMCP using link-local IPv6 addresses without interface index to connect to X server.
It has been originally reported at https:/
The problem can be fixed by having the XDMCP client not transmitting link-local addresses in the request, but if it does, lightdm XDMCP server can be a lot smarter if the attached patch is applied.
It changes the X server address selection order to set the lowest preference to link-local addresses, even if matching the source address or family.
This is not 100% full-proof: if only link-local addresses have been received, one of them is used anyway. In this case, a complete solution would be to determine and set the address interface index if not ambiguous.
However, this patch fixes the problem for most of the non-pathological
cases.
Changed in lightdm: | |
status: | Triaged → Fix Committed |
milestone: | none → 1.19.0 |
Changed in lightdm (Ubuntu Xenial): | |
status: | New → Fix Committed |
Changed in lightdm (Ubuntu): | |
status: | New → Fix Committed |
importance: | Undecided → Medium |
Changed in lightdm (Ubuntu Xenial): | |
importance: | Undecided → Medium |
Changed in lightdm (Ubuntu Trusty): | |
status: | New → Fix Committed |
Changed in lightdm (Ubuntu Wily): | |
status: | New → Fix Committed |
Changed in lightdm (Ubuntu Trusty): | |
importance: | Undecided → Medium |
Changed in lightdm (Ubuntu Wily): | |
importance: | Undecided → Medium |
Changed in lightdm: | |
status: | Fix Committed → Fix Released |
description: | updated |
Would you be able to convert this to a merge proposal? Also, you will need to sign the contributor agreement before I can take the change - http:// www.ubuntu. com/legal/ contributors/ submit. You can set me as the project contact.