diff options
author | Jeremy Allison <jra@samba.org> | 2001-03-23 02:14:08 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2001-03-23 02:14:08 +0000 |
commit | da8805b377e361a7cab399b3c786a25f7175e7cf (patch) | |
tree | 303b5ee23528c69fb7bb1f5e1dc166f87d3db7a5 /source3/smbd | |
parent | 810ea03f9b1960ca7e9a775cd3582ca6bc080597 (diff) | |
download | samba-da8805b377e361a7cab399b3c786a25f7175e7cf.tar.gz samba-da8805b377e361a7cab399b3c786a25f7175e7cf.tar.bz2 samba-da8805b377e361a7cab399b3c786a25f7175e7cf.zip |
groupdb/mapping.c:
include/proto.h: Fix missing (void) in proto.
rpc_server/srv_samr_nt.c: Fix user private group problem by filtering out groups that
clash with users.
smbd/posix_acls.c: Ensure default ACE's are sensible.
utils/pdbedit.c: Fix from Simo Sorce.
Jeremy.
(This used to be commit 29414fe0d6665642d9b5f88a35e712426376c47f)
Diffstat (limited to 'source3/smbd')
-rw-r--r-- | source3/smbd/posix_acls.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/source3/smbd/posix_acls.c b/source3/smbd/posix_acls.c index ddf4d06b0e..fe1c02e46c 100644 --- a/source3/smbd/posix_acls.c +++ b/source3/smbd/posix_acls.c @@ -425,6 +425,8 @@ static mode_t get_default_ace_mode(files_struct *fsp, int type) mode_t force_mode = lp_force_dir_security_mode(SNUM(fsp->conn)); mode_t mode = 0; + DEBUG(10,("get_default_ace_mode: force_mode = 0%o\n", (int)force_mode )); + switch(type) { case S_IRUSR: mode |= (force_mode & S_IRUSR) ? S_IRUSR : 0; @@ -443,6 +445,8 @@ static mode_t get_default_ace_mode(files_struct *fsp, int type) break; } + DEBUG(10,("get_default_ace_mode: returning mode = 0%o\n", (int)mode )); + return mode; } @@ -489,7 +493,9 @@ static BOOL ensure_canon_entry_valid(canon_ace **pp_ace, pace->unix_ug.uid = pst->st_uid; pace->sid = *pfile_owner_sid; /* Ensure owner has read access. */ - pace->perms = default_acl ? get_default_ace_mode(fsp, S_IRUSR): S_IRUSR; + pace->perms = default_acl ? get_default_ace_mode(fsp, S_IRUSR) : S_IRUSR; + if (pace->perms == (mode_t)0) + pace->perms = S_IRUSR; pace->attr = ALLOW_ACE; DLIST_ADD(*pp_ace, pace); |