]>
Commit | Line | Data |
---|---|---|
71f62a6f | 1 | --- aufs/fs/aufs25/vfsub.h~ 2008-05-26 23:48:46.000000000 +0200 |
2 | +++ aufs/fs/aufs25/vfsub.h 2008-05-26 23:51:50.260679424 +0200 | |
3 | @@ -181,7 +181,7 @@ | |
4 | } | |
5 | #endif | |
6 | ||
7 | -#ifdef CONFIG_AUFS_BR_XFS | |
8 | +#ifndef CONFIG_AUFS_BR_XFS | |
9 | /* br_xfs.c */ | |
10 | dev_t au_h_rdev(struct inode *h_inode, struct vfsmount *h_mnt, | |
11 | struct dentry *h_dentry); | |
ee8d0815 AM |
12 | --- aufs/fs/aufs25/xino.c~ 2009-01-26 07:24:24.000000000 +0100 |
13 | +++ aufs/fs/aufs25/xino.c 2009-07-22 18:12:16.356983962 +0200 | |
14 | @@ -621,7 +621,11 @@ | |
15 | goto out_dput; | |
16 | } | |
17 | file = dentry_open(dget(dentry), mntget(base_file->f_vfsmnt), | |
18 | - O_RDWR | O_CREAT | O_EXCL | O_LARGEFILE); | |
19 | + O_RDWR | O_CREAT | O_EXCL | O_LARGEFILE | |
20 | +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) | |
21 | + , current_cred() | |
22 | +#endif | |
23 | + ); | |
24 | if (IS_ERR(file)) { | |
25 | AuErr("%.*s open err %ld\n", AuLNPair(name), PTR_ERR(file)); | |
26 | goto out_dput; | |
27 | ||
28 | --- aufs/fs/aufs25/whout.c~ 2009-01-26 07:24:19.000000000 +0100 | |
29 | +++ aufs/fs/aufs25/whout.c 2009-07-24 12:13:57.149063895 +0200 | |
30 | @@ -276,7 +276,13 @@ | |
31 | */ | |
32 | vfsub_args_init(&vargs, &ign, dlgt, | |
33 | (h_dir->i_mode & S_ISVTX) | |
34 | - && wh_dentry->d_inode->i_uid != current->fsuid); | |
35 | + && wh_dentry->d_inode->i_uid != | |
36 | +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) | |
37 | + current_fsuid() | |
38 | +#else | |
39 | + current->fsuid | |
40 | +#endif | |
41 | + ); | |
42 | vfsub_ign_hinode(&vargs, IN_DELETE, hdir); | |
43 | err = vfsub_unlink(h_dir, wh_dentry, &vargs); | |
44 | AuTraceErr(err); | |
45 | @@ -625,7 +631,13 @@ | |
46 | struct vfsub_args vargs; | |
47 | ||
48 | AuTraceEnter(); | |
49 | - AuDebugOn(current->fsuid); | |
50 | + AuDebugOn( | |
51 | +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) | |
52 | + current_fsuid() | |
53 | +#else | |
54 | + current->fsuid | |
55 | +#endif | |
56 | + ); | |
57 | ||
58 | err = 0; | |
59 | wbr = a->br->br_wbr; | |
60 | ||
61 | --- aufs/fs/aufs25/file.c~ 2009-01-26 07:24:29.000000000 +0100 | |
62 | +++ aufs/fs/aufs25/file.c 2009-07-24 12:16:59.015712355 +0200 | |
63 | @@ -99,7 +99,11 @@ | |
64 | if (file && au_test_nfs(h_dentry->d_sb)) | |
65 | h_file = au_h_intent(dentry, bindex, file); | |
66 | if (!h_file) | |
67 | - h_file = dentry_open(dget(h_dentry), mntget(br->br_mnt), flags); | |
68 | + h_file = dentry_open(dget(h_dentry), mntget(br->br_mnt), flags | |
69 | +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) | |
70 | + ,current_cred() | |
71 | +#endif | |
72 | + ); | |
73 | ||
74 | /* | |
75 | * a dirty trick for handling FMODE_EXEC and deny_write_access(). | |
76 | ||
77 | --- aufs/fs/aufs25/inode.c~ 2009-01-26 07:24:45.000000000 +0100 | |
78 | +++ aufs/fs/aufs25/inode.c 2009-07-24 12:19:05.229033182 +0200 | |
79 | @@ -405,7 +405,13 @@ | |
80 | ||
81 | int au_test_h_perm(struct inode *h_inode, int mask, int dlgt) | |
82 | { | |
83 | - if (!current->fsuid) | |
84 | + if (! | |
85 | +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) | |
86 | + current_fsuid() | |
87 | +#else | |
88 | + current->fsuid | |
89 | +#endif | |
90 | + ) | |
91 | return 0; | |
92 | /* todo: fake nameidata? */ | |
93 | return vfsub_permission(h_inode, mask, NULL, dlgt); |