LSEEK
Section: Linux Programmer's Manual (2)
Updated: 10 June 1995
Index
Return to Main Contents
NAME
lseek - reposition read/write file offset
SYNOPSIS
#include <unistd.h>
off_t lseek(int fildes, off_t offset, int whence);
DESCRIPTION
The
lseek
function repositions the offset of the file descriptor
fildes
to the argument
offset
according to the directive
whence.
The argument
fildes
must be an open file descriptor.
Lseek
repositions the file pointer
fildes
as follows:
-
If
whence
is
SEEK_SET,
the offset is set to
offset
bytes.
If
whence
is
SEEK_CUR,
the offset is set to its current location plus
offset
bytes.
If
whence
is
SEEK_END,
the offset is set to the size of the file plus
offset
bytes.
The
lseek
function allows the file offset to be set beyond the end of the existing
end-of-file of the file. If data is later written at this point, subsequent
reads of the data in the gap return bytes of zeros (until data is actually
written into the gap).
Some devices are incapable of seeking. The value of the pointer
associated with such a device is undefined.
RETURN VALUES
Upon successful completion,
lseek
returns the resulting offset location as measured in bytes from the
beginning of the file. Otherwise, a value of -1 is returned and
errno
is set to indicate the error.
ERRORS
- EBADF
-
Fildes
is not an open file descriptor.
- ESPIPE
-
Fildes
is associated with a pipe, socket, or FIFO.
- EINVAL
-
Whence
is not a proper value.
CONFORMS TO
POSIX, BSD 4.3
BUGS
This document's use of
whence
is incorrect English, but maintained for historical reasons.
SEE ALSO
dup(2), open(2), fseek(3)
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- RETURN VALUES
-
- ERRORS
-
- CONFORMS TO
-
- BUGS
-
- SEE ALSO
-
This document was created by
man2html,
using the manual pages.
Time: 12:25:24 GMT, March 22, 2025