]> arthur.barton.de Git - netatalk.git/blobdiff - include/atalk/directory.h
Writing metadata xattr on directories with sticky bit set, FR#94
[netatalk.git] / include / atalk / directory.h
index 47434759232d7dde8a511e2cf53da1b7eaf637df..d3764e53c339c15fd03add5e6518ca3c87899973 100644 (file)
 #include <atalk/cnid.h>
 #include <atalk/bstrlib.h>
 #include <atalk/queue.h>
+#include <atalk/unicode.h>
 
 /* setgid directories */
 #ifndef DIRBITS
-# ifdef AFS
+# if (defined AFS) || (defined FREEBSD)
 #  define DIRBITS 0
 # else /* AFS */
 #  define DIRBITS S_ISGID
@@ -71,6 +72,8 @@ struct dir {
     uint32_t    d_offcnt;             /* offspring count */
     uint16_t    d_vid;                /* only needed in the dircache, because
                                          we put all directories in one cache. */
+    uint32_t    d_rights_cache;       /* cached rights combinded from mode and possible ACL */
+
     /* Stuff used in the dircache */
     time_t      dcache_ctime;         /* inode ctime, used and modified by dircache */
     ino_t       dcache_ino;           /* inode number, used to detect changes in the dircache */