зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1660901 - ignore AT_NO_AUTOMOUNT in fstatat system call. r=jld
Per the manpage "Both stat() and lstat() act as though AT_NO_AUTOMOUNT was set.", so don't bail if it's set in a call to fstatat. Differential Revision: https://phabricator.services.mozilla.com/D89121
This commit is contained in:
Родитель
76a83d0a21
Коммит
ae8cb5feaf
|
@ -254,9 +254,10 @@ class SandboxPolicyCommon : public SandboxPolicyBase {
|
||||||
fd, path, buf, flags);
|
fd, path, buf, flags);
|
||||||
return BlockedSyscallTrap(aArgs, nullptr);
|
return BlockedSyscallTrap(aArgs, nullptr);
|
||||||
}
|
}
|
||||||
if ((flags & ~AT_SYMLINK_NOFOLLOW) != 0) {
|
if ((flags & ~(AT_SYMLINK_NOFOLLOW | AT_NO_AUTOMOUNT)) != 0) {
|
||||||
SANDBOX_LOG_ERROR("unsupported flags %d in fstatat(%d, \"%s\", %p, %d)",
|
SANDBOX_LOG_ERROR("unsupported flags %d in fstatat(%d, \"%s\", %p, %d)",
|
||||||
(flags & ~AT_SYMLINK_NOFOLLOW), fd, path, buf, flags);
|
(flags & ~(AT_SYMLINK_NOFOLLOW | AT_NO_AUTOMOUNT)), fd,
|
||||||
|
path, buf, flags);
|
||||||
return BlockedSyscallTrap(aArgs, nullptr);
|
return BlockedSyscallTrap(aArgs, nullptr);
|
||||||
}
|
}
|
||||||
return (flags & AT_SYMLINK_NOFOLLOW) == 0 ? broker->Stat(path, buf)
|
return (flags & AT_SYMLINK_NOFOLLOW) == 0 ? broker->Stat(path, buf)
|
||||||
|
|
Загрузка…
Ссылка в новой задаче