_llseek
Section: System Calls (2)
Updated: 2023-01-07
Index
Return to Main Contents
NAME
_llseek - reposition read/write file offset
LIBRARY
Standard C library
(libc, -lc)
SYNOPSIS
#include <sys/syscall.h> /* Definition of SYS_* constants */
#include <unistd.h>
int syscall(SYS__llseek, unsigned int fd, unsigned long offset_high,
unsigned long offset_low, loff_t *result,
unsigned int whence);
Note:
glibc provides no wrapper for
_llseek(),
necessitating the use of
syscall(2).
DESCRIPTION
Note: for information about the
llseek(3)
library function, see
lseek64(3).
The
_llseek()
system call repositions the offset of the open file description associated
with the file descriptor
fd
to the value
-
(offset_high << 32) | offset_low
This new offset is a byte offset
relative to the beginning of the file, the current file offset,
or the end of the file, depending on whether
whence
is
SEEK_SET,
SEEK_CUR,
or
SEEK_END,
respectively.
The new file offset is returned in the argument
result.
The type
loff_t
is a 64-bit signed type.
This system call exists on various 32-bit platforms to support
seeking to large file offsets.
RETURN VALUE
Upon successful completion,
_llseek()
returns 0.
Otherwise, a value of -1 is returned and
errno
is set to indicate the error.
ERRORS
- EBADF
-
fd
is not an open file descriptor.
- EFAULT
-
Problem with copying results to user space.
- EINVAL
-
whence
is invalid.
STANDARDS
This function is Linux-specific, and should not be used in programs
intended to be portable.
NOTES
You probably want to use the
lseek(2)
wrapper function instead.
SEE ALSO
lseek(2),
open(2),
lseek64(3)
Index
- NAME
-
- LIBRARY
-
- SYNOPSIS
-
- DESCRIPTION
-
- RETURN VALUE
-
- ERRORS
-
- STANDARDS
-
- NOTES
-
- SEE ALSO
-
This document was created by
man2html,
using the manual pages.
Time: 15:24:29 GMT, May 23, 2024