diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2013-02-06 09:33:17 +0100 |
---|---|---|
committer | Eric W. Biederman <ebiederm@xmission.com> | 2013-02-13 16:28:47 +0100 |
commit | 8abf2775dd425ec3c767ea7c5a51b45fc8be76c2 (patch) | |
tree | 7b6ba7f274246f8675db20845089a31625f5e1cd /fs/cifs/cifsproto.h | |
parent | cifs: Pass GLOBAL_ROOT_UID and GLOBAL_ROOT_GID to keyring_alloc (diff) | |
download | linux-8abf2775dd425ec3c767ea7c5a51b45fc8be76c2.tar.xz linux-8abf2775dd425ec3c767ea7c5a51b45fc8be76c2.zip |
cifs: Use kuids and kgids SID to uid/gid mapping
Update id_mode_to_cifs_acl to take a kuid_t and a kgid_t.
Replace NO_CHANGE_32 with INVALID_UID and INVALID_GID, and tests for
NO_CHANGE_32 with uid_valid and gid_valid.
Carefully unpack the value returned from request_key. memcpy the
value into the expected type. The convert the uid/gid into a
kuid/kgid. And then only if the result is a valid kuid or kgid update
fuid/fgid.
Cc: Steve French <smfrench@gmail.com>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Diffstat (limited to 'fs/cifs/cifsproto.h')
-rw-r--r-- | fs/cifs/cifsproto.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/cifs/cifsproto.h b/fs/cifs/cifsproto.h index 1988c1baa224..0060ec2124bf 100644 --- a/fs/cifs/cifsproto.h +++ b/fs/cifs/cifsproto.h @@ -161,7 +161,7 @@ extern int cifs_acl_to_fattr(struct cifs_sb_info *cifs_sb, struct cifs_fattr *fattr, struct inode *inode, const char *path, const __u16 *pfid); extern int id_mode_to_cifs_acl(struct inode *inode, const char *path, __u64, - uid_t, gid_t); + kuid_t, kgid_t); extern struct cifs_ntsd *get_cifs_acl(struct cifs_sb_info *, struct inode *, const char *, u32 *); extern int set_cifs_acl(struct cifs_ntsd *, __u32, struct inode *, |