diff options
author | Jeremy Allison <jra@samba.org> | 2002-03-11 21:57:12 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2002-03-11 21:57:12 +0000 |
commit | db4c62d7ed2eb5503927edf7e25c5a2fc94f4174 (patch) | |
tree | 9268354ba8661b6af4b459595790e9dd490cfa7b /source3/smbd/posix_acls.c | |
parent | 3bc38669efda51f754890474298b9d59f060724d (diff) | |
download | samba-db4c62d7ed2eb5503927edf7e25c5a2fc94f4174.tar.gz samba-db4c62d7ed2eb5503927edf7e25c5a2fc94f4174.tar.bz2 samba-db4c62d7ed2eb5503927edf7e25c5a2fc94f4174.zip |
Implemented default ACL patch (set inherit acls = true on a per share basis).
Based on code donated by Olaf Frączyk <olaf@cbk.poznan.pl>. Further commit
will change to sending via vfs interface.
Jeremy.
(This used to be commit d85133e2697eb22f1573c78447b57791ae63dd6b)
Diffstat (limited to 'source3/smbd/posix_acls.c')
-rw-r--r-- | source3/smbd/posix_acls.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/source3/smbd/posix_acls.c b/source3/smbd/posix_acls.c index ee1935a41f..34f0b77002 100644 --- a/source3/smbd/posix_acls.c +++ b/source3/smbd/posix_acls.c @@ -2294,3 +2294,16 @@ int fchmod_acl(int fd, mode_t mode) sys_acl_free_acl(posix_acl); return ret; } + +BOOL directory_has_default_acl(const char *fname) +{ + SMB_ACL_T dir_acl = sys_acl_get_file( fname, SMB_ACL_TYPE_DEFAULT); + BOOL has_acl = False; + SMB_ACL_ENTRY_T entry; + + if (dir_acl != NULL && (sys_acl_get_entry(dir_acl, SMB_ACL_FIRST_ENTRY, &entry) == 1)) + has_acl = True; + + sys_acl_free_acl(dir_acl); + return has_acl; +} |