]> git.sur5r.net Git - bacula/bacula/commit - bacula/src/filed/acl.c
The world is cruel, you cannot trust manpages.
authorMarco van Wieringen <mvw@planets.elm.net>
Fri, 16 Sep 2011 08:36:19 +0000 (10:36 +0200)
committerKern Sibbald <kern@sibbald.com>
Sat, 20 Apr 2013 12:50:01 +0000 (14:50 +0200)
commit87005d3feb067bce65a624e58d0409227e165597
treef2c26c7e513ea7b43aa033247dac85209ffe8dbf
parent0f6338628f7c52c6532e9129d05104b969843679
The world is cruel, you cannot trust manpages.

As it seems ENOTSUP is defined as EOPNOTSUPP on Linux. The manpages says
certain functions return ENOTSUP while they return EOPNOTSUPP because
the other doesn't really exist. So we have to do some more magic,
restored the old acl errno logic which is somewhat cleaner now
that everything except for IRIX seems to not adhere to POSIX and use
EOPNOTSUPP (which is according to POSIX only valid for a socket).
Added same kind of logic to xattr code as on OSX the xattr functions
are supposed to return ENOTSUP and not EOPNOTSUPP which Linux is
returning there. What a mess trying to write portable code when manpages
just cannot be trusted. Hopefully this is the end of it.
bacula/src/filed/acl.c
bacula/src/filed/acl.h
bacula/src/filed/xattr.c
bacula/src/filed/xattr.h