This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug libc/10609] New: openat (and *at friends) fail to detect ENOENT
- From: "ebb9 at byu dot net" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sources dot redhat dot com
- Date: 5 Sep 2009 16:26:05 -0000
- Subject: [Bug libc/10609] New: openat (and *at friends) fail to detect ENOENT
- Reply-to: sourceware-bugzilla at sourceware dot org
On older kernels, when __have_atfcts is false, the /proc/self/fd/%d/%s fallback
is used unconditionally, even when %s is the empty string. This ends up opening
fd (for openat), a successful stat of fd (for fstatat), etc, instead of failing
with ENOENT.
#include <fcntl.h>
int
main()
{
int fd = open (".", O_RDONLY);
if (openat (fd, "", O_RDONLY) != -1 || errno != ENOENT)
puts ("failed");
return 0;
}
--
Summary: openat (and *at friends) fail to detect ENOENT
Product: glibc
Version: 2.10
Status: NEW
Severity: normal
Priority: P2
Component: libc
AssignedTo: drepper at redhat dot com
ReportedBy: ebb9 at byu dot net
CC: glibc-bugs at sources dot redhat dot com
http://sourceware.org/bugzilla/show_bug.cgi?id=10609
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.