kernel: support the case that init_task.mnt_ns != zygote.mnt_ns(WSA) (#698)
Basic support for the case that init_task.mnt_ns != zygote.mnt_ns(WSA), just copy nsproxy and fs pointers for solve #276. Note the copy in `apk_sign.c` is not required but suggested for secure(ensure the checked mnt_ns is what ns android running, not created by user, although many distributions does not have user ns.). Tested with latest release on Win10 19045.3086(with WSAPatch). Further review required for: - [x] Security of this operation (without locking). - [x] The impact of these modifications on other Android distributions.
This commit is contained in:
@@ -16,7 +16,7 @@ check_v2_signature(char *path, unsigned expected_size, unsigned expected_hash)
|
||||
|
||||
int sign = -1;
|
||||
int i;
|
||||
struct file *fp = filp_open(path, O_RDONLY, 0);
|
||||
struct file *fp = ksu_filp_open_compat(path, O_RDONLY, 0);
|
||||
if (IS_ERR(fp)) {
|
||||
pr_err("open %s error.", path);
|
||||
return PTR_ERR(fp);
|
||||
|
||||
Reference in New Issue
Block a user