ANDROID: Incremental fs: Fix selinux issues
Bug: 177075428 Test: incfs_test passes atest GtsIncrementalInstallTestCases has only 8 failures Signed-off-by: Paul Lawrence <paullawrence@google.com> Change-Id: I73accfc1982aec1cd7947996c25a23e4a97cfdac
This commit is contained in:
parent
28688d32ed
commit
75c93eb439
@ -898,7 +898,7 @@ static int init_new_file(struct mount_info *mi, struct dentry *dentry,
|
|||||||
.dentry = dentry
|
.dentry = dentry
|
||||||
};
|
};
|
||||||
new_file = dentry_open(&path, O_RDWR | O_NOATIME | O_LARGEFILE,
|
new_file = dentry_open(&path, O_RDWR | O_NOATIME | O_LARGEFILE,
|
||||||
mi->mi_owner);
|
current_cred());
|
||||||
|
|
||||||
if (IS_ERR(new_file)) {
|
if (IS_ERR(new_file)) {
|
||||||
error = PTR_ERR(new_file);
|
error = PTR_ERR(new_file);
|
||||||
@ -1026,7 +1026,7 @@ static int dir_relative_path_resolve(
|
|||||||
if (dir_fd < 0)
|
if (dir_fd < 0)
|
||||||
return dir_fd;
|
return dir_fd;
|
||||||
|
|
||||||
dir_f = dentry_open(base_path, O_RDONLY | O_NOATIME, mi->mi_owner);
|
dir_f = dentry_open(base_path, O_RDONLY | O_NOATIME, current_cred());
|
||||||
|
|
||||||
if (IS_ERR(dir_f)) {
|
if (IS_ERR(dir_f)) {
|
||||||
error = PTR_ERR(dir_f);
|
error = PTR_ERR(dir_f);
|
||||||
@ -1904,10 +1904,13 @@ static int file_open(struct inode *inode, struct file *file)
|
|||||||
struct file *backing_file = NULL;
|
struct file *backing_file = NULL;
|
||||||
struct path backing_path = {};
|
struct path backing_path = {};
|
||||||
int err = 0;
|
int err = 0;
|
||||||
|
const struct cred *old_cred;
|
||||||
|
|
||||||
get_incfs_backing_path(file->f_path.dentry, &backing_path);
|
get_incfs_backing_path(file->f_path.dentry, &backing_path);
|
||||||
backing_file = dentry_open(
|
old_cred = override_creds(mi->mi_owner);
|
||||||
&backing_path, O_RDWR | O_NOATIME | O_LARGEFILE, mi->mi_owner);
|
backing_file = dentry_open(&backing_path,
|
||||||
|
O_RDWR | O_NOATIME | O_LARGEFILE, current_cred());
|
||||||
|
revert_creds(old_cred);
|
||||||
path_put(&backing_path);
|
path_put(&backing_path);
|
||||||
|
|
||||||
if (IS_ERR(backing_file)) {
|
if (IS_ERR(backing_file)) {
|
||||||
|
Loading…
Reference in New Issue
Block a user