On Tue, 30 Mar 2004, Marc Aurele La France wrote: > I've committed these. Thanks.
Hi Marc, 1. thanks for applying these patches (as well as those from patch seq: 6190). When do you expect patches in ftp:..../XFree86/4.4.0/fixes/ ? 2. Meanwhile I carefully reread the xdm manpage and found out that my last patch (patch-17-segfault) didn't do the right thing. According to the manpage an Access file statement "LISTEN" (without interface) should disable listening. The attached patch corrects this. 3. Let me summarize our current status: On all our (mpi theory group) permanent linux system we run the IPv6 enabled XFree86, xdm, and chooser. All host have a chooser list (with IPv4 hostnames) and "LISTEN 0.0.0.0". There are a few choosers running for ncd terminals and for Xnest. All Xservers are started with "-nolisten inet6" and all this works to our satisfaction. There are, however, a few notebooks, all with a slave nameserver and a slave nis server. As long as they are attached to the local network everything is fine. Without network connection there is a terrible delay (of the order of 10 minutes or more) until xdm and X start. I have tried without LISTEN as well as with "LISTEN", "LISTEN *", and "LISTEN 0.0.0.0" but this makes no difference. The Xserver eventually starts but it takes a very long time. For those notebooks we therefore use an IPv6 disabled version of xdm and with that version everything is OK. >From experience with other programs (we had, e.g., to disable IPv6 support in ssh) I suspect the long delays are due to some (direct or reverse) dns lookups, although I never understood why that is so. We certainly don't use any explicit inet6 addresses. The necessity for the change in xdm/xdmcp.c around line 1420 (kludge, patch-16-IPv6) might actually stem from a similar lookup failure. These problems only occur in xdm, the IPv6 enabled versions of chooser, XFree86, and Xnest work without problems (there are just a few harmless warnings). In view of all this and since Debian, Mandrake, RedHat, SuSE et. al. will certainly distribute IPv6 enabled versions it would probably be extremely useful to have a command line option and/or resource and/or Xaccess file statement to completely disable xdm's use of IPv6 at runtime. This would mean to keep some of the non-IPv6 code in the IPv6 enabled version of xdm, and in particular using gethostname instead of getaddrinfo since this seems to cause all the problems. Without such an option I forsee an endless sequence of questions on the mailing list(s) that are related (in a non-obvious way) to this issue. regards Peter Breitenlohner <[EMAIL PROTECTED]>
This patch (to be applied on top of the previous patch-17-segfault) fixes the Access file statement "LISTEN" (without interface). According to the xdm manpage this should completely disable listening as long as there are no other LISTEN's. diff -ur -N XF86-4.4.0.orig/xc/programs/xdm/access.c XF86-4.4.0/xc/programs/xdm/access.c --- XF86-4.4.0.orig/xc/programs/xdm/access.c 2004-03-23 11:13:43.000000000 +0100 +++ XF86-4.4.0/xc/programs/xdm/access.c 2004-04-01 11:24:12.000000000 +0200 @@ -901,9 +901,7 @@ if (d->type == DISPLAY_LISTEN) { listenFound = 1; h = d->hosts; - if (h == NULL) { - (*listenfunction) (NULL, closure); - } else { + if (h != NULL) { (*listenfunction) (&h->entry.hostAddress, closure); for (h = h->next; h != NULL; h = h->next) { (*mcastfunction) (&h->entry.hostAddress, closure);