pub unsafe fn fchownat<P: AsRef<Path>>(
dirfd: i32,
filename: P,
user: uid_t,
group: gid_t,
flag: i32
) -> Result<(), Errno>
Expand description
Change ownership of a file.
§Example
let filename = "/tmp/nc-fchown";
let fd = unsafe {
nc::openat(
nc::AT_FDCWD,
filename,
nc::O_CREAT | nc::O_WRONLY | nc::O_TRUNC,
0o644
)
};
assert!(fd.is_ok());
let fd = fd.unwrap();
let ret = unsafe { nc::close(fd) };
assert!(ret.is_ok());
let ret = unsafe { nc::fchownat(nc::AT_FDCWD, filename, 0, 0, 0) };
assert_eq!(ret, Err(nc::EPERM));
let ret = unsafe { nc::unlinkat(nc::AT_FDCWD, filename,0 ) };
assert!(ret.is_ok());