summaryrefslogtreecommitdiffstats
path: root/fs/cifs/cifsproto.h
diff options
context:
space:
mode:
authorSteve French <stfrench@microsoft.com>2019-07-19 06:30:07 +0000
committerSteve French <stfrench@microsoft.com>2019-09-16 11:43:37 -0500
commite2f8fbfb8d09c06decde162090fac3ee220aa280 (patch)
tree34c4ff53129c327ade33e86e2967f53baa5e66ab /fs/cifs/cifsproto.h
parent1afdea4f19a97ed98f65c41fd11c77e5264838ae (diff)
downloadlinux-stable-e2f8fbfb8d09c06decde162090fac3ee220aa280.tar.gz
linux-stable-e2f8fbfb8d09c06decde162090fac3ee220aa280.tar.bz2
linux-stable-e2f8fbfb8d09c06decde162090fac3ee220aa280.zip
cifs: get mode bits from special sid on stat
When mounting with "modefromsid" retrieve mode bits from special SID (S-1-5-88-3) on stat. Subsequent patch will fix setattr (chmod) to save mode bits in S-1-5-88-3-<mode> Note that when an ACE matching S-1-5-88-3 is not found, we default the mode to an approximation based on the owner, group and everyone permissions (as with the "cifsacl" mount option). See See e.g. https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/hh509017(v=ws.10) Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs/cifs/cifsproto.h')
-rw-r--r--fs/cifs/cifsproto.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/cifs/cifsproto.h b/fs/cifs/cifsproto.h
index 592a6cea2b79..dd75746e60cd 100644
--- a/fs/cifs/cifsproto.h
+++ b/fs/cifs/cifsproto.h
@@ -197,6 +197,7 @@ extern int cifs_rename_pending_delete(const char *full_path,
const unsigned int xid);
extern int cifs_acl_to_fattr(struct cifs_sb_info *cifs_sb,
struct cifs_fattr *fattr, struct inode *inode,
+ bool get_mode_from_special_sid,
const char *path, const struct cifs_fid *pfid);
extern int id_mode_to_cifs_acl(struct inode *inode, const char *path, __u64,
kuid_t, kgid_t);