Bug 867981 - gdm doesn't start when connecting to localhost using gdm via XDMCP
gdm doesn't start when connecting to localhost using gdm via XDMCP
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: gdm (Show other bugs)
All Linux
high Severity high
: rc
: ---
Assigned To: Ray Strode [halfline]
Desktop QE
: Regression
Depends On:
  Show dependency treegraph
Reported: 2012-10-18 15:06 EDT by Jiri Koten
Modified: 2013-02-21 05:02 EST (History)
1 user (show)

See Also:
Fixed In Version: gdm-2.30.4-39.el6
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2013-02-21 05:02:42 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
slave.log (3.81 KB, text/plain)
2012-10-18 15:09 EDT, Jiri Koten
no flags Details
slave.log.1 (11.11 KB, text/plain)
2012-10-18 15:10 EDT, Jiri Koten
no flags Details
Work around xcb bug (6.49 KB, patch)
2012-10-23 14:17 EDT, Ray Strode [halfline]
no flags Details | Diff

  None (edit)
Description Jiri Koten 2012-10-18 15:06:43 EDT
Description of problem:
When I enable XDMCP in gdm and then try to connect from the same machine via XDMCP, i.e. using localhost, the greeter keep spinning and never shows up.

From greeter log:
No protocol specified

** (gnome-session:16605): WARNING **: Cannot open display:

When connecting from remote machine gdm starts normally.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. Enable XDMCP in gdm; edit /etc/gdm/custom.conf and add Enable=true under [xdmcp] 
2. Restart gdm; # initctl restart prefdm
3. Login
4. Connect to localhost; $ Xephyr -query localhost :2
Actual results:
gdm not starting up

Expected results:
gdm properly starts up

Additional info:
This is a regression as no such issue exist in gdm-2.30.4-33.el6_2
Comment 1 Jiri Koten 2012-10-18 15:09:35 EDT
Created attachment 629584 [details]
Comment 2 Jiri Koten 2012-10-18 15:10:05 EDT
Created attachment 629585 [details]
Comment 4 Ray Strode [halfline] 2012-10-22 15:24:21 EDT
Seems to be a problem with access control. If I use Xephyr -ac it works, if I remove the -ac it fails.

I'll investigate.
Comment 5 Ray Strode [halfline] 2012-10-22 18:13:56 EDT
So the issue seems to be a problem with XCB.

It actually forces FamilyLocal when 


(see xcb_auth.c:get_authptr)

this fails in XauGetBestAuthByAddr() on the client side since the cookie is FamilyInternet. (We used to use FamilyWild which would match fine since it's wild)

We'll probably either have to special case localhost here until xcb can be fixed or maybe add two entries.
Comment 6 Ray Strode [halfline] 2012-10-23 09:54:06 EDT
Let's get the acks rolling for this, it's pretty bad.  I'm sure we have customers who use XDMCP to the local machine.
Comment 8 RHEL Product and Program Management 2012-10-23 13:01:06 EDT
This request was evaluated by Red Hat Product Management for
inclusion in a Red Hat Enterprise Linux release.  Product
Management has requested further review of this request by
Red Hat Engineering, for potential inclusion in a Red Hat
Enterprise Linux release for currently deployed products.
This request is not yet committed for inclusion in a release.
Comment 9 Ray Strode [halfline] 2012-10-23 14:17:56 EDT
Created attachment 632272 [details]
Work around xcb bug

This updated xauth patch fixes the original problem from bug 860645 but also

1) adds two additional auth entries for local connections to work around the xcb bug

2) fixes an uninitialized variable access that causes XDMCP to occasionally fail during testing.
Comment 14 errata-xmlrpc 2013-02-21 05:02:42 EST
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.


Note You need to log in before you can comment on or make changes to this bug.