All pastes #1409357 Raw Edit

aufs 2.6.29 patch

public diff v1 · immutable
#1409357 ·published 2009-05-01 11:35 UTC
rendered paste body
Index: fs/aufs/export.c===================================================================RCS file: /cvsroot/aufs/aufs/fs/aufs/export.c,vretrieving revision 1.43diff -u -r1.43 export.c--- fs/aufs/export.c	26 Jan 2009 06:24:45 -0000	1.43+++ fs/aufs/export.c	1 May 2009 11:30:06 -0000@@ -375,7 +375,7 @@ 	if (nsi_lock) 		si_read_unlock(parent->d_sb); 	path_get(path);-	file = dentry_open(parent, path->mnt, au_dir_roflags);+	file = dentry_open(parent, path->mnt, au_dir_roflags, current_cred()); 	dentry = (void *)file; 	if (IS_ERR(file)) 		goto out;Index: fs/aufs/file.c===================================================================RCS file: /cvsroot/aufs/aufs/fs/aufs/file.c,vretrieving revision 1.83diff -u -r1.83 file.c--- fs/aufs/file.c	26 Jan 2009 06:23:56 -0000	1.83+++ fs/aufs/file.c	1 May 2009 11:30:06 -0000@@ -102,7 +102,7 @@ 	if (file && au_test_nfs(h_dentry->d_sb)) 		h_file = au_h_intent(dentry, bindex, file); 	if (!h_file)-		h_file = dentry_open(dget(h_dentry), mntget(br->br_mnt), flags);+		h_file = dentry_open(dget(h_dentry), mntget(br->br_mnt), flags, current_cred());  	/* 	 * a dirty trick for handling FMODE_EXEC and deny_write_access().Index: fs/aufs/inode.c===================================================================RCS file: /cvsroot/aufs/aufs/fs/aufs/inode.c,vretrieving revision 1.55diff -u -r1.55 inode.c--- fs/aufs/inode.c	26 Jan 2009 06:24:45 -0000	1.55+++ fs/aufs/inode.c	1 May 2009 11:30:06 -0000@@ -414,7 +414,7 @@  int au_test_h_perm(struct inode *h_inode, int mask, int dlgt) {-	if (!current->fsuid)+	if (!current_fsuid()) 		return 0; 	/* todo: fake nameidata? */ 	return vfsub_permission(h_inode, mask, NULL, dlgt);Index: fs/aufs/whout.c===================================================================RCS file: /cvsroot/aufs/aufs/fs/aufs/whout.c,vretrieving revision 1.47diff -u -r1.47 whout.c--- fs/aufs/whout.c	26 Jan 2009 06:24:19 -0000	1.47+++ fs/aufs/whout.c	1 May 2009 11:30:07 -0000@@ -278,7 +278,7 @@ 	 */ 	vfsub_args_init(&vargs, &ign, dlgt, 			(h_dir->i_mode & S_ISVTX)-			&& wh_dentry->d_inode->i_uid != current->fsuid);+			&& wh_dentry->d_inode->i_uid != current_fsuid()); 	vfsub_ign_hinode(&vargs, IN_DELETE, hdir); 	err = vfsub_unlink(h_dir, wh_dentry, &vargs); 	AuTraceErr(err);Index: fs/aufs/xino.c===================================================================RCS file: /cvsroot/aufs/aufs/fs/aufs/xino.c,vretrieving revision 1.65diff -u -r1.65 xino.c--- fs/aufs/xino.c	26 Jan 2009 06:24:24 -0000	1.65+++ fs/aufs/xino.c	1 May 2009 11:30:07 -0000@@ -630,7 +630,7 @@ 		goto out_dput; 	} 	file = dentry_open(dget(dentry), mntget(base_file->f_vfsmnt),-			   O_RDWR | O_CREAT | O_EXCL | O_LARGEFILE);+			   O_RDWR | O_CREAT | O_EXCL | O_LARGEFILE, current_cred()); 	if (IS_ERR(file)) { 		AuErr("%.*s open err %ld\n", AuLNPair(name), PTR_ERR(file)); 		goto out_dput;Index: fs/aufs25/file.c===================================================================RCS file: /cvsroot/aufs/aufs/fs/aufs25/file.c,vretrieving revision 1.20diff -u -r1.20 file.c--- fs/aufs25/file.c	26 Jan 2009 06:24:29 -0000	1.20+++ fs/aufs25/file.c	1 May 2009 11:30:07 -0000@@ -99,7 +99,7 @@ 	if (file && au_test_nfs(h_dentry->d_sb)) 		h_file = au_h_intent(dentry, bindex, file); 	if (!h_file)-		h_file = dentry_open(dget(h_dentry), mntget(br->br_mnt), flags);+		h_file = dentry_open(dget(h_dentry), mntget(br->br_mnt), flags,current_cred());  	/* 	 * a dirty trick for handling FMODE_EXEC and deny_write_access().Index: fs/aufs25/inode.c===================================================================RCS file: /cvsroot/aufs/aufs/fs/aufs25/inode.c,vretrieving revision 1.18diff -u -r1.18 inode.c--- fs/aufs25/inode.c	26 Jan 2009 06:24:45 -0000	1.18+++ fs/aufs25/inode.c	1 May 2009 11:30:07 -0000@@ -405,7 +405,7 @@  int au_test_h_perm(struct inode *h_inode, int mask, int dlgt) {-	if (!current->fsuid)+	if (!current_fsuid()) 		return 0; 	/* todo: fake nameidata? */ 	return vfsub_permission(h_inode, mask, NULL, dlgt);Index: fs/aufs25/whout.c===================================================================RCS file: /cvsroot/aufs/aufs/fs/aufs25/whout.c,vretrieving revision 1.19diff -u -r1.19 whout.c--- fs/aufs25/whout.c	26 Jan 2009 06:24:19 -0000	1.19+++ fs/aufs25/whout.c	1 May 2009 11:30:07 -0000@@ -276,7 +276,7 @@ 	 */ 	vfsub_args_init(&vargs, &ign, dlgt, 			(h_dir->i_mode & S_ISVTX)-			&& wh_dentry->d_inode->i_uid != current->fsuid);+			&& wh_dentry->d_inode->i_uid != current_fsuid()); 	vfsub_ign_hinode(&vargs, IN_DELETE, hdir); 	err = vfsub_unlink(h_dir, wh_dentry, &vargs); 	AuTraceErr(err);@@ -625,7 +625,7 @@ 	struct vfsub_args vargs;  	AuTraceEnter();-	AuDebugOn(current->fsuid);+	AuDebugOn(current_fsuid());  	err = 0; 	wbr = a->br->br_wbr;Index: fs/aufs25/xino.c===================================================================RCS file: /cvsroot/aufs/aufs/fs/aufs25/xino.c,vretrieving revision 1.20diff -u -r1.20 xino.c--- fs/aufs25/xino.c	26 Jan 2009 06:24:24 -0000	1.20+++ fs/aufs25/xino.c	1 May 2009 11:30:07 -0000@@ -621,7 +621,7 @@ 		goto out_dput; 	} 	file = dentry_open(dget(dentry), mntget(base_file->f_vfsmnt),-			   O_RDWR | O_CREAT | O_EXCL | O_LARGEFILE);+			   O_RDWR | O_CREAT | O_EXCL | O_LARGEFILE, current_cred()); 	if (IS_ERR(file)) { 		AuErr("%.*s open err %ld\n", AuLNPair(name), PTR_ERR(file)); 		goto out_dput;