1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-25 15:29:32 -05:00
denoland-deno/cli/js/chown.ts

33 lines
903 B
TypeScript
Raw Normal View History

2020-01-02 15:13:47 -05:00
// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
import { sendSync, sendAsync } from "./dispatch_json.ts";
2019-05-07 21:58:58 -04:00
/** Synchronously change owner of a regular file or directory. Linux/Mac OS
* only at the moment.
*
* Requires `allow-write` permission.
*
2019-05-07 21:58:58 -04:00
* @param path path to the file
* @param uid user id of the new owner
* @param gid group id of the new owner
*/
export function chownSync(path: string, uid: number, gid: number): void {
2020-02-25 09:14:27 -05:00
sendSync("op_chown", { path, uid, gid });
2019-05-07 21:58:58 -04:00
}
/** Change owner of a regular file or directory. Linux/Mac OS only at the
* moment.
*
* Requires `allow-write` permission.
*
2019-05-07 21:58:58 -04:00
* @param path path to the file
* @param uid user id of the new owner
* @param gid group id of the new owner
*/
export async function chown(
path: string,
uid: number,
gid: number
): Promise<void> {
2020-02-25 09:14:27 -05:00
await sendAsync("op_chown", { path, uid, gid });
2019-05-07 21:58:58 -04:00
}