Skip to content

Instantly share code, notes, and snippets.

@neofob
Last active December 22, 2015 02:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save neofob/6405059 to your computer and use it in GitHub Desktop.
Save neofob/6405059 to your computer and use it in GitHub Desktop.
off_t, ssize_t...with LARGEFILE_SOURCE and all

Largefile system and sendfile64()

kernel userspace _LARGEFILE_SOURCE _FILE_OFFSET_BITS sendfile64(), errno sizeof(off_t) sizeof(ssize_t)
x64 x64 defined 64 OK, 0 8 8
x64 x64 defined undef OK, 0 8 8
kernel userspace _LARGEFILE64_SOURCE _FILE_OFFSET_BITS sendfile64(), errno sizeof(off_t) sizeof(ssize_t)
x64 x64 defined 64 OK, 0 8 8
x64 x64 defined undef OK, 0 8 8
kernel userspace _LARGEFILE_SOURCE _FILE_OFFSET_BITS sendfile64(), errno sizeof(off_t) sizeof(ssize_t)
x32 x32 defined 64 OK, 34 8 4
x32 x32 defined undef -1, N/A 4 4
kernel userspace _LARGEFILE64_SOURCE _FILE_OFFSET_BITS sendfile64(), errno sizeof(off_t) sizeof(ssize_t)
x32 x32 defined 64 OK, 34 8 4
x32 x32 defined undef -1, N/A 4 4

Note: When _LARGEFILE_SOURCE is defined, _LARGEFILE64_SOURCE is not defined and vice versa.

Error code 34: ERANGE

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment