diff options
author | David Howells <dhowells@redhat.com> | 2008-11-13 18:39:04 -0500 |
---|---|---|
committer | James Morris <jmorris@namei.org> | 2008-11-13 18:39:04 -0500 |
commit | 82ab8deda7fef36f067ccdeacc3b3caefc970f89 (patch) | |
tree | 377b34ca519b489574945ab4e56172c4412a4423 /fs/xfs/linux-2.6 | |
parent | a5f773a65928a10eb5e5534fe6da6b427ac5b646 (diff) |
CRED: Wrap task credential accesses in the XFS filesystem
Wrap access to task credentials so that they can be separated more easily from
the task_struct during the introduction of COW creds.
Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id().
Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more
sense to use RCU directly rather than a convenient wrapper; these will be
addressed by later patches.
Signed-off-by: David Howells <dhowells@redhat.com>
Reviewed-by: James Morris <jmorris@namei.org>
Acked-by: Serge Hallyn <serue@us.ibm.com>
Cc: xfs@oss.sgi.com
Signed-off-by: James Morris <jmorris@namei.org>
Diffstat (limited to 'fs/xfs/linux-2.6')
-rw-r--r-- | fs/xfs/linux-2.6/xfs_cred.h | 2 | ||||
-rw-r--r-- | fs/xfs/linux-2.6/xfs_ioctl.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/fs/xfs/linux-2.6/xfs_cred.h b/fs/xfs/linux-2.6/xfs_cred.h index 652721ce0ea5..293043a5573a 100644 --- a/fs/xfs/linux-2.6/xfs_cred.h +++ b/fs/xfs/linux-2.6/xfs_cred.h | |||
@@ -24,7 +24,7 @@ | |||
24 | * Credentials | 24 | * Credentials |
25 | */ | 25 | */ |
26 | typedef struct cred { | 26 | typedef struct cred { |
27 | /* EMPTY */ | 27 | /* EMPTY */ |
28 | } cred_t; | 28 | } cred_t; |
29 | 29 | ||
30 | extern struct cred *sys_cred; | 30 | extern struct cred *sys_cred; |
diff --git a/fs/xfs/linux-2.6/xfs_ioctl.c b/fs/xfs/linux-2.6/xfs_ioctl.c index d3438c72dcaf..67c72aec97e6 100644 --- a/fs/xfs/linux-2.6/xfs_ioctl.c +++ b/fs/xfs/linux-2.6/xfs_ioctl.c | |||
@@ -1007,7 +1007,7 @@ xfs_ioctl_setattr( | |||
1007 | * to the file owner ID, except in cases where the | 1007 | * to the file owner ID, except in cases where the |
1008 | * CAP_FSETID capability is applicable. | 1008 | * CAP_FSETID capability is applicable. |
1009 | */ | 1009 | */ |
1010 | if (current->fsuid != ip->i_d.di_uid && !capable(CAP_FOWNER)) { | 1010 | if (current_fsuid() != ip->i_d.di_uid && !capable(CAP_FOWNER)) { |
1011 | code = XFS_ERROR(EPERM); | 1011 | code = XFS_ERROR(EPERM); |
1012 | goto error_return; | 1012 | goto error_return; |
1013 | } | 1013 | } |