Kernel+LibC+LibCore: Add lchown and fchownat functions

This modifies sys$chown to allow specifying whether or not to follow
symlinks and in which directory.

This was then used to implement lchown and fchownat in LibC and LibCore.
This commit is contained in:
circl 2021-12-31 19:20:17 +01:00 committed by Andreas Kling
parent 344cfa0db4
commit 63760603f3
Notes: sideshowbarker 2024-07-17 21:50:39 +09:00
8 changed files with 64 additions and 7 deletions

View file

@ -564,9 +564,9 @@ ErrorOr<void> VirtualFileSystem::chown(Custody& custody, UserID a_uid, GroupID a
return inode.chown(new_uid, new_gid);
}
ErrorOr<void> VirtualFileSystem::chown(StringView path, UserID a_uid, GroupID a_gid, Custody& base)
ErrorOr<void> VirtualFileSystem::chown(StringView path, UserID a_uid, GroupID a_gid, Custody& base, int options)
{
auto custody = TRY(resolve_path(path, base));
auto custody = TRY(resolve_path(path, base, nullptr, options));
return chown(custody, a_uid, a_gid);
}