Can't start X twice

Robert Millan rmh at aybabtu.com
Mon Nov 7 17:32:52 UTC 2005


On Mon, Nov 07, 2005 at 03:17:08PM +0200, Konstantinos Koukopoulos wrote:
> 
> #if defined(BSD44SOCKETS) && !defined(Lynx)
>     sockname.sun_len = strlen(sockname.sun_path);
>     namelen = SUN_LEN(&sockname);
> #else
>     namelen = strlen(sockname.sun_path) + sizeof(sockname.sun_family);
> #endif
>
> [...]
>
> So the call to unlink happens with the correct path "/tmp/.X11-unix/X0" (as is 
> evident by the ktrace data). When the same argument is supplied to 
> SocketCreateListener the zero on the end get's lopped off, probably due to a 
> miscalculation of namelen. The BDS44SOCKETS conditional looks suspicious so 
> my first guess is that BSD44SOCKETS isn't getting defined on gnu/kfreebsd, 
> whereas it should. But as I checked out on the Xorg cvsweb the gnu.cf 
> configuration file does indeed specify HasBSD44Sockets. Perhaps then 
> BSD44SOCKETS should not be defined, or perhaps this is unrelated.
> 
> Btw a quick google turned up this message by Robert Millan, back in 2003:
> http://lists.gnu.org/archive/html/bug-hurd/2003-05/msg00140.html

The horror!  HasBSD44Sockets strikes again!

Sorry, can't help.  I never figured out the problem before.  I'd also point to
#187391 for the discussion about sun_len being different on GNU/Hurd than on
GNU/Linux, which might help or might be entirely unrelated.

-- 
Robert Millan



More information about the Glibc-bsd-devel mailing list