man 2 getxattr reads: "If the named attribute does not exist, or the process has no access to this attribute, errno is set to ENOATTR." However, the actual error code returned is ENODATA.
Hm, actually ENODATA is an alias of ENOATTR defined in libattr header.
Reply-To: hch@infradead.org On Thu, Dec 20, 2012 at 06:13:54PM +0000, bugzilla-daemon@bugzilla.kernel.org wrote: > --- Comment #1 from Andrew Perepechko <andrew_perepechko@xyratex.com> > 2012-12-20 18:13:53 --- > Hm, actually ENODATA is an alias of ENOATTR defined in libattr header. But that's: a) not how normal Posix errno values are supposed to work. I b) limited to using xattr, whichle getxattr is also exposed by glibc directly. This really needs an explanation in the NOTES section, I'll see if I can come up with someting useful.
Andrew, (and Christoph), Others have also noted this point. For each of the relevant pages, I've simply added the text: "(ENOATTR is defined to be a synonym for ENODATA in <attr/xattr.h>.)"
Thanks, Michael and Christoph!