diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-22 21:27:56 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-22 21:28:34 -0400 |
commit | 94bc891b00e40cbec375feb4568780af183fd7f4 (patch) | |
tree | fd48d354c61d2e736aa593c324a6d794afd8a4e7 /security | |
parent | 934b7024f0ed29003c95cef447d92737ab86dc4f (diff) | |
parent | 1ec7f1ddbe5ba49f7b10c3b129d6d5c90c43526c (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
[PATCH] get rid of __exit_files(), __exit_fs() and __put_fs_struct()
[PATCH] proc_readfd_common() race fix
[PATCH] double-free of inode on alloc_file() failure exit in create_write_pipe()
[PATCH] teach seq_file to discard entries
[PATCH] umount_tree() will unhash everything itself
[PATCH] get rid of more nameidata passing in namespace.c
[PATCH] switch a bunch of LSM hooks from nameidata to path
[PATCH] lock exclusively in collect_mounts() and drop_collected_mounts()
[PATCH] move a bunch of declarations to fs/internal.h
Diffstat (limited to 'security')
-rw-r--r-- | security/dummy.c | 10 | ||||
-rw-r--r-- | security/security.c | 20 | ||||
-rw-r--r-- | security/selinux/hooks.c | 8 | ||||
-rw-r--r-- | security/smack/smack_lsm.c | 4 |
4 files changed, 21 insertions, 21 deletions
diff --git a/security/dummy.c b/security/dummy.c index 98d5f969cdc8..b0232bbf427b 100644 --- a/security/dummy.c +++ b/security/dummy.c | |||
@@ -196,13 +196,13 @@ static int dummy_sb_statfs (struct dentry *dentry) | |||
196 | return 0; | 196 | return 0; |
197 | } | 197 | } |
198 | 198 | ||
199 | static int dummy_sb_mount (char *dev_name, struct nameidata *nd, char *type, | 199 | static int dummy_sb_mount (char *dev_name, struct path *path, char *type, |
200 | unsigned long flags, void *data) | 200 | unsigned long flags, void *data) |
201 | { | 201 | { |
202 | return 0; | 202 | return 0; |
203 | } | 203 | } |
204 | 204 | ||
205 | static int dummy_sb_check_sb (struct vfsmount *mnt, struct nameidata *nd) | 205 | static int dummy_sb_check_sb (struct vfsmount *mnt, struct path *path) |
206 | { | 206 | { |
207 | return 0; | 207 | return 0; |
208 | } | 208 | } |
@@ -229,17 +229,17 @@ static void dummy_sb_post_remount (struct vfsmount *mnt, unsigned long flags, | |||
229 | } | 229 | } |
230 | 230 | ||
231 | 231 | ||
232 | static void dummy_sb_post_addmount (struct vfsmount *mnt, struct nameidata *nd) | 232 | static void dummy_sb_post_addmount (struct vfsmount *mnt, struct path *path) |
233 | { | 233 | { |
234 | return; | 234 | return; |
235 | } | 235 | } |
236 | 236 | ||
237 | static int dummy_sb_pivotroot (struct nameidata *old_nd, struct nameidata *new_nd) | 237 | static int dummy_sb_pivotroot (struct path *old_path, struct path *new_path) |
238 | { | 238 | { |
239 | return 0; | 239 | return 0; |
240 | } | 240 | } |
241 | 241 | ||
242 | static void dummy_sb_post_pivotroot (struct nameidata *old_nd, struct nameidata *new_nd) | 242 | static void dummy_sb_post_pivotroot (struct path *old_path, struct path *new_path) |
243 | { | 243 | { |
244 | return; | 244 | return; |
245 | } | 245 | } |
diff --git a/security/security.c b/security/security.c index 2e250c7028eb..8a285c7b9962 100644 --- a/security/security.c +++ b/security/security.c | |||
@@ -296,15 +296,15 @@ int security_sb_statfs(struct dentry *dentry) | |||
296 | return security_ops->sb_statfs(dentry); | 296 | return security_ops->sb_statfs(dentry); |
297 | } | 297 | } |
298 | 298 | ||
299 | int security_sb_mount(char *dev_name, struct nameidata *nd, | 299 | int security_sb_mount(char *dev_name, struct path *path, |
300 | char *type, unsigned long flags, void *data) | 300 | char *type, unsigned long flags, void *data) |
301 | { | 301 | { |
302 | return security_ops->sb_mount(dev_name, nd, type, flags, data); | 302 | return security_ops->sb_mount(dev_name, path, type, flags, data); |
303 | } | 303 | } |
304 | 304 | ||
305 | int security_sb_check_sb(struct vfsmount *mnt, struct nameidata *nd) | 305 | int security_sb_check_sb(struct vfsmount *mnt, struct path *path) |
306 | { | 306 | { |
307 | return security_ops->sb_check_sb(mnt, nd); | 307 | return security_ops->sb_check_sb(mnt, path); |
308 | } | 308 | } |
309 | 309 | ||
310 | int security_sb_umount(struct vfsmount *mnt, int flags) | 310 | int security_sb_umount(struct vfsmount *mnt, int flags) |
@@ -327,19 +327,19 @@ void security_sb_post_remount(struct vfsmount *mnt, unsigned long flags, void *d | |||
327 | security_ops->sb_post_remount(mnt, flags, data); | 327 | security_ops->sb_post_remount(mnt, flags, data); |
328 | } | 328 | } |
329 | 329 | ||
330 | void security_sb_post_addmount(struct vfsmount *mnt, struct nameidata *mountpoint_nd) | 330 | void security_sb_post_addmount(struct vfsmount *mnt, struct path *mountpoint) |
331 | { | 331 | { |
332 | security_ops->sb_post_addmount(mnt, mountpoint_nd); | 332 | security_ops->sb_post_addmount(mnt, mountpoint); |
333 | } | 333 | } |
334 | 334 | ||
335 | int security_sb_pivotroot(struct nameidata *old_nd, struct nameidata *new_nd) | 335 | int security_sb_pivotroot(struct path *old_path, struct path *new_path) |
336 | { | 336 | { |
337 | return security_ops->sb_pivotroot(old_nd, new_nd); | 337 | return security_ops->sb_pivotroot(old_path, new_path); |
338 | } | 338 | } |
339 | 339 | ||
340 | void security_sb_post_pivotroot(struct nameidata *old_nd, struct nameidata *new_nd) | 340 | void security_sb_post_pivotroot(struct path *old_path, struct path *new_path) |
341 | { | 341 | { |
342 | security_ops->sb_post_pivotroot(old_nd, new_nd); | 342 | security_ops->sb_post_pivotroot(old_path, new_path); |
343 | } | 343 | } |
344 | 344 | ||
345 | int security_sb_get_mnt_opts(const struct super_block *sb, | 345 | int security_sb_get_mnt_opts(const struct super_block *sb, |
diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c index 33af321f647b..308e2cf17d75 100644 --- a/security/selinux/hooks.c +++ b/security/selinux/hooks.c | |||
@@ -2401,22 +2401,22 @@ static int selinux_sb_statfs(struct dentry *dentry) | |||
2401 | } | 2401 | } |
2402 | 2402 | ||
2403 | static int selinux_mount(char *dev_name, | 2403 | static int selinux_mount(char *dev_name, |
2404 | struct nameidata *nd, | 2404 | struct path *path, |
2405 | char *type, | 2405 | char *type, |
2406 | unsigned long flags, | 2406 | unsigned long flags, |
2407 | void *data) | 2407 | void *data) |
2408 | { | 2408 | { |
2409 | int rc; | 2409 | int rc; |
2410 | 2410 | ||
2411 | rc = secondary_ops->sb_mount(dev_name, nd, type, flags, data); | 2411 | rc = secondary_ops->sb_mount(dev_name, path, type, flags, data); |
2412 | if (rc) | 2412 | if (rc) |
2413 | return rc; | 2413 | return rc; |
2414 | 2414 | ||
2415 | if (flags & MS_REMOUNT) | 2415 | if (flags & MS_REMOUNT) |
2416 | return superblock_has_perm(current, nd->path.mnt->mnt_sb, | 2416 | return superblock_has_perm(current, path->mnt->mnt_sb, |
2417 | FILESYSTEM__REMOUNT, NULL); | 2417 | FILESYSTEM__REMOUNT, NULL); |
2418 | else | 2418 | else |
2419 | return dentry_has_perm(current, nd->path.mnt, nd->path.dentry, | 2419 | return dentry_has_perm(current, path->mnt, path->dentry, |
2420 | FILE__MOUNTON); | 2420 | FILE__MOUNTON); |
2421 | } | 2421 | } |
2422 | 2422 | ||
diff --git a/security/smack/smack_lsm.c b/security/smack/smack_lsm.c index 93f5b0ce662a..4215971434e6 100644 --- a/security/smack/smack_lsm.c +++ b/security/smack/smack_lsm.c | |||
@@ -315,10 +315,10 @@ static int smack_sb_statfs(struct dentry *dentry) | |||
315 | * Returns 0 if current can write the floor of the filesystem | 315 | * Returns 0 if current can write the floor of the filesystem |
316 | * being mounted on, an error code otherwise. | 316 | * being mounted on, an error code otherwise. |
317 | */ | 317 | */ |
318 | static int smack_sb_mount(char *dev_name, struct nameidata *nd, | 318 | static int smack_sb_mount(char *dev_name, struct path *path, |
319 | char *type, unsigned long flags, void *data) | 319 | char *type, unsigned long flags, void *data) |
320 | { | 320 | { |
321 | struct superblock_smack *sbp = nd->path.mnt->mnt_sb->s_security; | 321 | struct superblock_smack *sbp = path->mnt->mnt_sb->s_security; |
322 | 322 | ||
323 | return smk_curacc(sbp->smk_floor, MAY_WRITE); | 323 | return smk_curacc(sbp->smk_floor, MAY_WRITE); |
324 | } | 324 | } |