I'm testing the following patch.
Rich.
From 0944e30e12dec6544b3602626b60ff412375c78f Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones"
Date: Tue, 9 Oct 2012 14:42:45 +0100
Subject: [PATCH] dup3: Return an error when oldfd == newfd.
The following commit:
commit fe17f22d7fd0e344ef6447238f79
On Tue, Oct 09, 2012 at 09:54:45AM +0100, Richard W.M. Jones wrote:
> The F_DUPFD_CLOEXEC fix that Al Viro posted fixes 3/4 of the
> bugs, but I'm still investigating this one:
>
> > test-dup3.c:108: assertion failed
> > # ASSERT (dup3 (fd, fd, o_flags) == -1);
Thanks to Jim for pointing out
The F_DUPFD_CLOEXEC fix that Al Viro posted fixes 3/4 of the
bugs, but I'm still investigating this one:
> test-dup3.c:108: assertion failed
> # ASSERT (dup3 (fd, fd, o_flags) == -1);
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
New in Fedora 11: F
0x1 (flags FD_CLOEXEC)
>> fcntl(3, F_SETFD, 0)= 0
>> fcntl(3, F_GETFD) = 0
>> fcntl(3, F_DUPFD_CLOEXEC, 0) = 4
>> fcntl(4, F_GETFD) = 0
>> write(2, "test-cloexec.c:97: assertion failed\n", 3
F_GETFD) = 0
> fcntl(3, F_DUPFD_CLOEXEC, 0)= 4
> fcntl(4, F_GETFD) = 0
> write(2, "test-cloexec.c:97: assertion failed\n", 36) = 36
>
> It seems to me from the description in the man page that
> F_DUPFD_CLOEXEC ought to be setti
= 0x1 (flags FD_CLOEXEC)
fcntl(3, F_SETFD, 0) = 0
fcntl(3, F_GETFD) = 0
fcntl(3, F_DUPFD_CLOEXEC, 0)= 4
fcntl(4, F_GETFD) = 0
write(2, "test-cloexec.c:97: assertion failed\n", 36) = 36
It seems to me from
Richard W.M. Jones wrote:
> Turning off coredumps reveals a load more problems. I wonder if the
> latest glibc in Fedora Rawhide is broken?
>
> test-dup2.c:173: assertion failed
> # ASSERT (!is_inheritable (fd + 1));
>
> test-dup3.c:108: assertion failed
> # ASSERT (dup3 (fd, fd, o_flags) =
Turning off coredumps reveals a load more problems. I wonder if the
latest glibc in Fedora Rawhide is broken?
test-dup2.c:173: assertion failed
# ASSERT (!is_inheritable (fd + 1));
test-dup3.c:108: assertion failed
# ASSERT (dup3 (fd, fd, o_flags) == -1);
test-fcntl.c:291: assertion fai
PASS: test-btowc2.sh
PASS: test-byteswap
PASS: test-c-ctype
PASS: test-c-strcase.sh
PASS: test-chdir
test-cloexec.c:97: assertion failed
and then, strangely, the whole test suite hangs (I think that has
something to do with abrt being broken when the kernel comes to
generate the core dump).
I'