X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=include%2Fatalk%2Facl.h;h=d30a25c1d72168123f40ed4e92963c97a2acded0;hb=3bff0d45274b4d8b79501729e3511e306981d628;hp=6b48e5522c1e365a187fb081f2275a81c2704c3d;hpb=dcbfd39d8a7df800a55ab0160d890bd61ebc7302;p=netatalk.git diff --git a/include/atalk/acl.h b/include/atalk/acl.h index 6b48e552..d30a25c1 100644 --- a/include/atalk/acl.h +++ b/include/atalk/acl.h @@ -19,14 +19,43 @@ #include "config.h" #endif /* HAVE_CONFIG_H */ +#ifdef HAVE_ACLS + +#define O_NETATALK_ACL (O_NOFOLLOW << 1) + #ifdef HAVE_SOLARIS_ACLS #include -#endif /* HAVE_SOLARIS_ACLS */ -#ifdef HAVE_SOLARIS_ACLS +#define chmod_acl nfsv4_chmod + extern int get_nfsv4_acl(const char *name, ace_t **retAces); -#endif /* HAVE_SOLARIS_ACLS */ +extern int strip_trivial_aces(ace_t **saces, int sacecount); +extern int strip_nontrivial_aces(ace_t **saces, int sacecount); +extern ace_t *concat_aces(ace_t *aces1, int ace1count, ace_t *aces2, int ace2count); +extern int nfsv4_chmod(char *name, mode_t mode); + +#endif /* HAVE_SOLARIS_ACLS */ + +#ifdef HAVE_POSIX_ACLS +#include +#include +#include + +#define chmod_acl posix_chmod +#define fchmod_acl posix_fchmod + +extern int posix_chmod(const char *name, mode_t mode); +extern int posix_fchmod(int fd, mode_t mode); + +#endif /* HAVE_POSIX_ACLS */ extern int remove_acl_vfs(const char *name); -#endif /* ATALK_ACL_H */ +#else /* HAVE_ACLS=no */ + +#define O_NETATALK_ACL 0 +#define chmod_acl chmod + +#endif /* HAVE_ACLS */ + +#endif /* ATALK_ACL_H */