-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 According to Jim Meyering on 9/5/2009 9:29 AM: >> an empty argument to openat, which is why my test-openat-safer was the >> first thing to catch this in nearly 3 years of use. >> + openat: fail with ENOENT on empty name >> + * lib/openat-proc.c (openat_proc_name): Special-case the empty >> + buffer. > > Good catch. Thanks.
Ouch. glibc has the same bug. We may need to provide *at wrappers unconditionally on Linux, if anyone is running against an older kernel but newer glibc that uses the /proc/self/fd fallbacks without needing the current state of the gnulib wrappers. Are there still systems in the wild like that? http://sources.redhat.com/bugzilla/show_bug.cgi?id=10609 Oh, and POSIX has a bug - it says that readlinkat returns 0 instead of the symlink size on success. The Linux man pages copied the POSIX text, but implemented things correctly (ie. whether readlink is a call to readlinkat(AT_FDCWD), or readlinkat is a call to readlink("/proc/self/fd/n/name"), the return value should be the same). https://www.opengroup.org/sophocles/show_mail.tpl?CALLER=index.tpl&source=L&listname=austin-group-l&id=12734 - -- Don't work too hard, make some time for fun as well! Eric Blake e...@byu.net -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (Cygwin) Comment: Public key at home.comcast.net/~ericblake/eblake.gpg Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkqikbYACgkQ84KuGfSFAYCcoACfSkESp2E8HdhpVIxp+RtMcGvI 1LgAn2HLCdlVxm6AWVZ8HxiMfYhkKViN =HCjL -----END PGP SIGNATURE-----