1 LF64(5) Standards, Environments, and Macros LF64(5) 2 3 4 5 NAME 6 lf64 - transitional interfaces for 64-bit file offsets 7 8 DESCRIPTION 9 The data types, interfaces, and macros described on this page provide 10 explicit access to 64-bit file offsets. They are accessible through the 11 transitional compilation environment described on the lfcompile64(5) 12 manual page. The function prototype and semantics of a transitional 13 interface are equivalent to those of the standard version of the call, 14 except that relevant data types are 64-bit entities. 15 16 Data Types 17 The following tables list the standard data or struct types in the 18 left-hand column and their corresponding explicit 64-bit file offset 19 types in the right-hand column, grouped by header. The absence of an 20 entry in the left-hand column indicates that there is no existing 21 explicit 32-bit type that corresponds to the 64-bit type listed in the 22 right--hand column. Note that in a 64-bit application, the standard 23 definition is equivalent to the 64-bit file offset definition. 24 25 <aio.h> 26 27 struct aiocb struct aiocb64 28 off_t aio_offset; off64_t aio_offset; 29 30 31 <sys/dirent.h> 32 33 struct dirent struct dirent64 34 ino_t d_ino; ino64_t d_ino; 35 off_t d_off; off64_t d_off; 36 37 38 <sys/fcntl.h> 39 40 struct flock struct flock64 41 off_t l_start; off64_t l_start; 42 off_t l_len; off64_t l_len; 43 F_SETLK F_SETLK64 44 F_SETLKW F_SETLKW64 45 F_GETLK F_GETLK64 46 F_FREESP F_FREESP64 47 F_ALLOCSP F_ALLOCSP64 48 O_LARGEFILE 49 50 51 <sys/stdio.h> 52 53 fpos_t fpos64_t 54 55 56 <sys/resource.h> 57 58 rlim_t rlim64_t 59 struct rlimit struct rlimit64 60 rlim_t rlim_cur; rlim64_t rlim_cur; 61 rlim_t rlim_max; rlim64_t rlim_max; 62 RLIM_INFINITY RLIM64_INFINITY 63 RLIM_SAVED_MAX RLIM64_SAVED_MAX 64 RLIM_SAVED_CUR RLIM64_SAVED_CUR 65 66 67 <sys/stat.h> 68 69 struct stat struct stat64 70 ino_t st_ino; ino64_t st_ino; 71 off_t st_size; off64_t st_size; 72 blkcnt_t st_blocks; blkcnt64_t st_blocks; 73 74 75 <sys/statvfs.h> 76 77 struct statvfs struct statvfs64 78 fsblkcnt_t f_blocks; fsblkcnt64_t f_blocks; 79 fsblkcnt_t f_bfree; fsblkcnt64_t f_bfree; 80 fsblkcnt_t f_bavail; fsblkcnt64_t f_bavail; 81 fsfilcnt_t f_files; fsfilcnt64_t f_files; 82 fsfilcnt_t f_ffree; fsfilcnt64_t f_ffree; 83 fsfilcnt_t f_favail; fsfilcnt64_t f_favail; 84 85 86 <sys/types.h> 87 88 off_t; off64_t; 89 ino_t; ino64_t; 90 blkcnt_t; blkcnt64_t; 91 fsblkcnt_t; fsblkcnt64_t; 92 fsfilcnt_t; fsfilcnt64_t; 93 94 95 <unistd.h> 96 97 _LFS64_LARGEFILE 98 _LFS64_STDIO 99 100 101 <sys/unistd.h> 102 103 _CS_LFS64_CFLAGS 104 _CS_LFS64_LDFLAGS 105 _CS_LFS64_LIBS 106 _CS_LFS64_LINTFLAGS 107 108 109 System Interfaces 110 The following tables display the standard API and the corresponding 111 transitional interfaces for 64-bit file offsets. The interfaces are 112 grouped by header. The interface name and the affected data types are 113 displayed in courier font. 114 115 <aio.h> 116 117 int aio_cancel(..., int aio_cancel64(..., 118 struct aiocb *); struct aiocb64 *); 119 int aio_error( int aio_error64( 120 const struct aiocb *); const struct aiocb64 *); 121 int aio_fsync(..., int aio_fsync64(..., 122 struct aiocb *); struct aiocb64 *); 123 int aio_read(struct aiocb *); int aio_read64(struct aiocb64 *); 124 int aio_return(struct aiocb *); int aio_return64(struct aiocb64 *); 125 int aio_suspend( int aio_suspend64( 126 const struct aiocb *, ...); const struct aiocb64 *, ...); 127 int aio_waitn(aiocb_t *[], int aio_waitn64(aiocb64_t *[], 128 ...); ...); 129 int aio_write(struct aiocb *); int aio_write64(struct aiocb64 *); 130 int lio_listio(..., int lio_listio64(..., 131 const struct aiocb *, ...); const struct aiocb64 *, ...); 132 133 134 <dirent.h> 135 136 int alphasort( int alphasort64( 137 const struct dirent **, const struct dirent64 **, 138 const struct dirent **) const struct dirent64 **) 139 struct dirent *readdir(); struct dirent64 *readdir64(); 140 struct dirent *readdir_r(); struct dirent64 *readdir64_r(); 141 int scandir(..., int scandir64(..., 142 struct dirent *(*[]), struct dirent64 *(*[]), 143 int (*)(const struct dirent *), int (*)(const struct dirent64 *), 144 int (*)(const struct dirent **, int (*)(const struct dirent64 **, 145 const struct dirent **)) const struct dirent64 **)) 146 147 148 <fcntl.h> 149 150 int attropen(); int attropen64(); 151 int creat(); int creat64(); 152 int open(); int open64(); 153 int openat(); int openat64(); 154 int posix_fadvise() int posix_fadvise64() 155 int posix_fallocate() int posix_fallocate64() 156 157 158 <ftw.h> 159 160 int ftw(..., int ftw64(..., 161 const struct stat *, ...); const struct stat64 *, ...); 162 163 int nftw(.. int nftw64(..., 164 const struct stat *, ...); const struct stat64 *, ...); 165 166 167 168 <libgen.h> 169 170 char *copylist(..., off_t); char *copylist64(..., off64_t); 171 172 173 <stdio.h> 174 175 int fgetpos(); int fgetpos64(); 176 FILE *fopen(); FILE *fopen64(); 177 FILE *freopen(); FILE *freopen64(); 178 int fseeko(..., off_t, ...); int fseeko64(..., off64_t, ...); 179 int fsetpos(..., int fsetpos64(..., 180 const fpos_t *); const fpos64_t *); 181 off_t ftello(); off64_t ftello64()(); 182 FILE *tmpfile(); FILE *tmpfile64(); 183 184 185 <stdlib.h> 186 187 int mkstemp(); int mkstemp64(); 188 189 190 <sys/async.h> 191 192 int aioread(..., off_t, ...); int aioread64(..., off64_t, ...); 193 int aiowrite(..., off_t, ...); int aiowrite64(..., off64_t, ...); 194 195 196 <sys/dirent.h> 197 198 int getdents(..., dirent); int getdents64(..., dirent64); 199 200 201 202 <sys/mman.h> 203 204 void mmap(..., off_t); void mmap64(..., off64_t); 205 206 207 <sys/resource.h> 208 209 int getrlimit(..., int getrlimit64(..., 210 struct rlimit *); struct rlimit64 *); 211 int setrlimit(..., int setrlimit64(..., 212 const struct rlimit *); const struct rlimit64 *); 213 214 215 <sys/sendfile.h> 216 217 ssize_t sendfile(..., ssize_t sendfile64(..., 218 off_t *, ...); off64_t *, ...); 219 ssize_t sendfilev(..., const ssize_t sendfilev64(..., const 220 struct sendfilevec *, ...); struct sendfilevec64 *, ...); 221 222 223 224 <sys/stat.h> 225 226 int fstat(..., struct stat *); int fstat64(..., struct stat64 *); 227 int fstatat(..., int fstatat64(..., 228 struct stat *, int); struct stat64 *, int); 229 int lstat(..., struct stat *); int lstat64(..., struct stat64 *); 230 int stat(..., struct stat *); int stat64(..., struct stat64 *); 231 232 233 <sys/statvfs.h> 234 235 int statvfs(..., int statvfs64(..., 236 struct statvfs *); struct statvfs64 *); 237 int fstatvfs(..., int fstatvfs64(..., 238 struct statvfs *); struct statvfs64 *); 239 240 241 <ucbinclude/stdio.h> 242 243 FILE *fopen() FILE *fopen64() 244 FILE *freopen() FILE *freopen64() 245 246 247 <ucbinclude/sys/dir.h> 248 249 int alphasort( int alphasort64( 250 struct direct **, struct direct64 **, 251 struct direct **); struct direct64 **); 252 struct direct *readdir(); struct direct64 *readdir64(); 253 int scandir(..., int scandir64(..., 254 struct direct *(*[]);, ...); struct direct64 *(*[]);, ...); 255 256 257 258 <unistd.h> 259 260 int lockf(..., off_t); int lockf64(..., off64_t); 261 off_t lseek(..., off_t, ...); off64_t lseek64(..., off64_t, ...); 262 int ftruncate(..., off_t); int ftruncate64..., off64_t); 263 ssize_t pread(..., off_t); ssize_t pread64..., off64_t); 264 ssize_t pwrite(..., off_t); ssize_t pwrite64(..., off64_t); 265 ssize_t preadv(..., off_t); ssize_t preadv64..., off64_t); 266 ssize_t pwritev(..., off_t); ssize_t pwritev64(..., off64_t); 267 int truncate(..., off_t); int truncate64(..., off64_t); 268 269 270 SEE ALSO 271 lfcompile(5), lfcompile64(5) 272 273 274 275 May 17, 2020 LF64(5)