[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
SOCK_CLOEXEC glibc patches (was: dbus startup problem when built with eg
From: |
Thomas Schwinge |
Subject: |
SOCK_CLOEXEC glibc patches (was: dbus startup problem when built with eglibc-2.17) |
Date: |
Mon, 2 Sep 2013 23:56:08 +0200 |
User-agent: |
Notmuch/0.9-101-g81dad07 (http://notmuchmail.org) Emacs/23.4.1 (i486-pc-linux-gnu) |
Hi!
On Mon, 02 Sep 2013 22:35:51 +0200, Svante Signell <svante.signell@gmail.com>
wrote:
> After building dbus-1.6.12-1 with eglibc-2.17-92 starting dbus-daemon
> fails (it was built 80 days ago with eglibc-2.13). The problem is due to
> the two statements in dbus/dbus-sysdeps-unix.c:
> *fd_p = socket (domain, type | SOCK_CLOEXEC, protocol);
> cloexec_done = *fd_p >= 0;
> if (*fd_p < 0 && errno == EINVAL)
> and
> retval = socketpair(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC, 0, fds);
> cloexec_done = retval >= 0;
> if (retval < 0 && errno == EINVAL)
>
> Now when SOCK_CLOEXEC is defined in bits/socket.h from 2.16
> and hurd/pflocal/pf.c returns EPROTOTYPE not EINVAL problems arise.
This is strange -- nearly five years ago, I have implemented SOCK_CLOEXEC
for socket in TopGit branch t/socket_flags and for socketpair in
t/socketpair_flags (plus depending branches t/fcntl-internal.h and
t/verify.h). Could you please check why this is no longer functional?
Grüße,
Thomas
pgpPOiem7Bq7T.pgp
Description: PGP signature