Rebase link(at) properly
This commit is contained in:
@@ -634,6 +634,37 @@ pub fn tgkill(tgid: pid_t, tid: pid_t, sig: i32) usize {
|
||||
return syscall2(.tgkill, @bitCast(usize, @as(isize, tgid)), @bitCast(usize, @as(isize, tid)), @bitCast(usize, @as(isize, sig)));
|
||||
}
|
||||
|
||||
pub fn link(oldpath: [*:0]const u8, newpath: [*:0]const u8, flags: i32) usize {
|
||||
if (@hasField(SYS, "link")) {
|
||||
return syscall3(
|
||||
.link,
|
||||
@ptrToInt(oldpath),
|
||||
@ptrToInt(newpath),
|
||||
@bitCast(usize, @as(isize, flags)),
|
||||
);
|
||||
} else {
|
||||
return syscall5(
|
||||
.linkat,
|
||||
@bitCast(usize, @as(isize, AT_FDCWD)),
|
||||
@ptrToInt(oldpath),
|
||||
@bitCast(usize, @as(isize, AT_FDCWD)),
|
||||
@ptrToInt(newpath),
|
||||
@bitCast(usize, @as(isize, flags)),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
pub fn linkat(oldfd: fd_t, oldpath: [*:0]const u8, newfd: fd_t, newpath: [*:0]const u8, flags: i32) usize {
|
||||
return syscall5(
|
||||
.linkat,
|
||||
@bitCast(usize, @as(isize, oldfd)),
|
||||
@ptrToInt(oldpath),
|
||||
@bitCast(usize, @as(isize, newfd)),
|
||||
@ptrToInt(newpath),
|
||||
@bitCast(usize, @as(isize, flags)),
|
||||
);
|
||||
}
|
||||
|
||||
pub fn unlink(path: [*:0]const u8) usize {
|
||||
if (@hasField(SYS, "unlink")) {
|
||||
return syscall1(.unlink, @ptrToInt(path));
|
||||
|
||||
Reference in New Issue
Block a user