Can only be called on 32 bit systems. For 64 bit see lseek.
pub fn llseek(fd: fd_t, offset: off_t, result: ?*off_t, whence: u32) u32
pub fn llseek(fd: fd_t, offset: off_t, result: ?*off_t, whence: u32) u32 {
// NOTE: The offset parameter splitting is independent from the target
// endianness.
return syscall5(
.llseek,
@as(u32, @bitCast(fd)),
@truncate(@as(u64, @bitCast(offset >> 32))),
@truncate(@as(u64, @bitCast(offset))),
@intFromPtr(result),
whence,
);
}