NAME | DESCRIPTION | SEE ALSO
The data types, interfaces, and macros described on this page provide explicit access to 64-bit file offsets. They are accessible through the transitional compilation environment described on the lfcompile64(5) manual page. The function prototype and semantics of a transitional interface are equivalent to those of the standard version of the call, except that relevant data types are 64-bit entities.
The following table lists the standard data or struct types and their corresponding explicit 64-bit file offset types. The absence of an entry in the Standard Definition column indicates that there is no existing explicit 32-bit type that corresponds to the type listed in the 64-bit File Offset Definition column. Note that in a 64-bit application, the Standard Definition is equivalent to the 64-bit File Offset Definition.
Standard Definition | 64-bit File Offset Definition | Header |
struct aiocb | struct aiocb64 | <aio.h> |
off_t aio_offset; | off64_t aio_offset; | |
struct dirent | struct dirent64 | <sys/dirent.h> |
ino_t d_ino; | ino64_t d_ino; | |
off_t d_off; | off64_t d_off; | |
struct flock | struct flock64 | <sys/fcntl.h> |
off_t l_start; | off64_t l_start; | |
off_t l_len; | off64_t l_len; | |
F_SETLK | F_SETLK64 | |
F_SETLKW | F_SETLKW64 | |
F_GETLK | F_GETLK64 | |
F_FREESP | F_FREESP64 | |
O_LARGEFILE | ||
fpos_t | fpos64_t | <sys/stdio.h> |
rlim_t | rlim64_t | <sys/resource.h> |
struct rlimit | struct rlimit64 | |
rlim_t rlim_cur; | rlim64_t rlim_cur; | |
rlim_t rlim_max; | rlim64_t rlim_max; | |
RLIM_INFINITY | RLIM64_INFINITY | |
RLIM_SAVED_MAX | RLIM64_SAVED_MAX | |
RLIM_SAVED_CUR | RLIM64_SAVED_CUR | |
struct stat | struct stat64 | <sys/stat.h> |
ino_t st_ino; | ino64_t st_ino; | |
off_t st_size; | off64_t st_size; | |
blkcnt_t st_blocks; | blkcnt64_t st_blocks; |
Standard Definition | 64-bit File Offset Definition | Header |
struct statvfs | struct statvfs64 | <sys/statvfs.h> |
fsblkcnt_t f_blocks; | fsblkcnt64_t f_blocks; | |
fsblkcnt_t f_bfree; | fsblkcnt64_t f_bfree; | |
fsblkcnt_t f_bavial; | fsblkcnt64_t f_bavial; | |
fsfilcnt_t f_files; | fsfilcnt64_t f_files; | |
fsfilcnt_t f_ffree; | fsfilcnt64_t f_ffree; | |
fsfilcnt_t f_favail; | fsfilcnt64_t f_favail; | |
off_t; | off64_t; | <sys/types.h> |
ino_t; | ino64_t; | |
blkcnt_t; | blkcnt64_t; | |
fsblkcnt_t; | fsblkcnt64_t; | |
fsfilcnt_t; | fsfilcnt64_t; | |
_LFS64_LARGEFILE | <unistd.h> | |
_LFS64_STDIO | ||
_CS_LFS64_CFLAGS | <sys/unistd.h> | |
_CS_LFS64_LDFLAGS | ||
_CS_LFS64_LIBS | ||
_CS_LFS64_LINTFLAGS |
The following table shows the standard API and the corresponding transitional interfaces for 64-bit file offsets. The interface name and the affected data types are shown in bold face.
Standard API | 64-bit File Offset Definition | Header |
int aio_cancel(..., | int aio_cancel64(..., | <aio.h> |
struct aiocb *); | struct aiocb64 *); | |
int aio_error | int aio_error64 | |
(const struct aiocb *); | (const struct aiocb64 *); | |
int aio_fsync(..., | int aio_fsync64(..., | |
struct aiocb *); | struct aiocb64 *); | |
int aio_read(struct aiocb *); | int aio_read64(struct aiocb64 *); | |
int aio_return(struct aiocb *); | int aio_return64(struct aiocb64 *); | |
int aio_suspend | int aio_suspend64 | |
(const struct aiocb *, ...); | (const struct aiocb64 *, ...); | |
int aio_write(struct aiocb *); | int aio_write64(struct aiocb64 *); | |
int lio_listio(..., | int lio_listio64(..., | |
const struct aiocb *, ...); | const struct aiocb64 *, ...); | |
struct dirent *readdir(); | struct dirent64 *readdir64(); | <dirent.h> |
struct dirent *readdir_r(); | struct dirent64 *readdir64_r(); | |
int creat(); | int creat64(); | <fcntl.h> |
int open(); | int open64(); |
Standard API | 64-bit File Offset Definition | Header |
int ftw(..., const | int ftw64(..., const | <ftw.h> |
struct stat *, ...); | struct stat64 *, ...); | |
int nftw(..., const | int nftw64(..., const | |
struct stat *, ...); | struct stat64 *, ...); | |
char *copylist(..., off_t); | char *copylist64(..., off64_t); | <libgen.h> |
int fgetpos(); | int fgetpos64(); | <stdio.h> |
FILE *fopen(); | FILE *fopen64(); | |
FILE *freopen(); | FILE *freopen64(); | |
int fseeko(..., off_t, ...); | int fseeko64(..., off64_t, ...); | |
int fsetpos(..., | int fsetpos64(..., | |
const fpos_t *); | const fpos64_t *); | |
off_t ftello(); | off64_t ftello64(); | |
FILE *tmpfile(); | FILE *tmpfile64(); | |
int mkstemp(); | int mkstemp64(); | <stdlib.h> |
int aioread(..., off_t, ...); | int aioread64(..., off64_t, ...); | <sys/async.h> |
int aiowrite(..., off_t, ...); | int aiowrite64(..., off64_t, ...); | |
int alphasort( | int alphasort64( | <ucbinclude/sys/dir.h> |
struct direct **, | struct direct64 **, | |
struct direct **); | struct direct64 **); | |
struct direct *readdir(); | struct direct64 *readdir64(); | |
int scandir(..., | int scandir64(..., | |
struct direct *(*[]);, ...); | struct direct64 *(*[]);, ...); | |
int getdents(..., dirent); | int getdents64(..., dirent64); | <sys/dirent.h> |
void mmap(..., off_t); | void mmap64(..., off64_t); | <sys/mman.h> |
int getrlimit(..., | int getrlimit64(..., | <sys/resource.h> |
struct rlimit *); | struct rlimit64 *); | |
int setrlimit(..., | int setrlimit64(..., | |
const struct rlimit *); | const struct rlimit64 *); | |
int fstat(..., struct stat *); | int fstat64(..., struct stat64 *); | <sys/stat.h> |
int lstat(..., struct stat *); | int lstat64(..., struct stat64 *); | |
int stat(..., struct stat *); | int stat64(..., struct stat64 *); | |
int statvfs(..., | int statvfs64(..., | <sys/statvfs.h> |
struct statvfs *); | struct statvfs64 *); | |
int fstatvfs(..., | int fstatvfs64(..., | |
struct statvfs *); | struct statvfs64 *); | |
int lockf(..., off_t); | int lockf64(..., off64_t); | <unistd.h> |
off_t lseek(..., off_t, ...); | off64_t lseek64(..., off64_t, ...); | |
int ftruncate(..., off_t); | int ftruncate64(..., off64_t); | |
ssize_t pread(..., off_t); | ssize_t pread64(..., off64_t); | |
ssize_t pwrite(..., off_t); | ssize_t pwrite64(..., off64_t); | |
int truncate(..., off_t); | int truncate64(..., off64_t); |
NAME | DESCRIPTION | SEE ALSO