LSEEK64(3) Linux Programmer's Manual LSEEK64(3)
NAME
lseek64 - reposition 64-bit read/write file offset
SYNOPSIS
#define _LARGEFILE64_SOURCE
#include <sys/types.h>
#include <unistd.h>
off64_t lseek64(int fd, off64_t offset, int whence);
DESCRIPTION
The lseek(2) family of functions reposition the offset of the open file associated
with the file descriptor fd to offset bytes relative to the start, current posi-
tion, or end of the file, when whence has the value SEEK_SET, SEEK_CUR, or
SEEK_END, respectively.
For more details, return value, and errors, see lseek(2).
Four interfaces are available: lseek(), lseek64(), llseek(), and the raw system
call _llseek().
lseek
Prototype:
off_t lseek(int fd, off_t offset, int whence);
The library routine lseek() uses the type off_t. This is a 32-bit signed type on
32-bit architectures, unless one compiles with
#define _FILE_OFFSET_BITS 64
in which case it is a 64-bit signed type.
lseek64
Prototype:
off64_t lseek64(int fd, off64_t offset, int whence);
The library routine lseek64() uses a 64-bit type even when off_t is a 32-bit type.
Its prototype (and the type off64_t) is available only when one compiles with
#define _LARGEFILE64_SOURCE
The function lseek64() is available since glibc 2.1, and is defined to be an alias
for llseek().
llseek
Prototype:
loff_t llseek(int fd, loff_t offset, int whence);
The type loff_t is a 64-bit signed type. The library routine llseek() is available
in libc5 and glibc and works without special defines. Its prototype was given in
<unistd.h> with libc5, but glibc does not provide a prototype. This is bad, since
a prototype is needed. Users should add the above prototype, or something equiva-
lent, to their own source. When users complained about data loss caused by a mis-
compilation of e2fsck(8), glibc 2.1.3 added the link-time warning
"the `llseek? function may be dangerous; use `lseek64? instead."
This makes this function unusable if one desires a warning-free compilation.
_llseek
All the above functions are implemented in terms of this system call. The proto-
type is:
int _llseek (int fd, off_t offset_hi, off_t offset_lo,
loff_t *result, int whence);
For more details, see llseek(2).
SEE ALSO
llseek(2), lseek(2)
Linux 2004-12-11 LSEEK64(3)
Generated by $Id: phpMan.php,v 4.54 2007/08/21 09:05:22 chedong Exp $ Author: Che Dong
On Apache/2.2.3 (Red Hat)
Under GNU General Public License
2009-12-23 23:29 @127.0.0.1 CrawledBy CCBot/1.0 (+http://www.commoncrawl.org/bot.html)