summaryrefslogtreecommitdiff
path: root/include/fcntl.h
AgeCommit message (Collapse)AuthorLines
2012-12-06fix F_DUPFD_CLOEXEC being defined twicerofl0r-1/+0
2012-12-06fixup for fcntl.h changesrofl0r-16/+15
2012-12-06fcntl.h: add some linux-specific F_ macrosrofl0r-0/+17
thankfully these are all generic across archs. the DN_ macros are for usage with F_NOTIFY.
2012-11-18fcntl.h: O_SEARCH was missing for powerpcrofl0r-0/+4
put some macros that do not differ between architectures in the main header and remove from bits. restructure mips header so it has the same structure as the others.
2012-09-15fix stupid bug in updating of O_ACCMODE for O_SEARCH supportRich Felker-1/+1
this could cause major bugs, and warrants a fix release right away.
2012-09-13add O_PATH/O_SEARCH support to fcntl.hRich Felker-1/+1
I'm not 100% sure that Linux's O_PATH meets the POSIX requirements for O_SEARCH, but it seems very close if not perfect. and old kernels ignore it, so O_SEARCH will still work as desired as long as the caller has read permissions to the directory.
2012-09-08add linux tee syscallRich Felker-0/+1
2012-09-08add linux sync_file_range syscallRich Felker-0/+4
2012-09-08add linux readahead syscallRich Felker-0/+1
2012-09-08add fallocate (nonstandardized) functionRich Felker-0/+3
this is equivalent to posix_fallocate except that it has an extra mode/flags argument to control its behavior, and stores the error in errno rather than returning an error code.
2012-09-07default features: make musl usable without feature test macrosRich Felker-0/+2
the old behavior of exposing nothing except plain ISO C can be obtained by defining __STRICT_ANSI__ or using a compiler option (such as -std=c99) that predefines it. the new default featureset is POSIX with XSI plus _BSD_SOURCE. any explicit feature test macros will inhibit the default. installation docs have also been updated to reflect this change.
2012-09-06provide loff_t for splice syscallRich Felker-0/+1
so far, this is the only actual use of loff_t i've found. some software, including glib, assumes loff_t must exist if splice exists; this is a reasonable assumption since the official prototype for splice uses loff_t, as it always works with 64-bit offsets regardless of the selected libc off_t size. i'm using #define for now rather than a typedef to make it easy to define in other headers if necessary (like the LFS64 ugliness), but it may be necessary to add it to alltypes.h eventually if other functions end up needing it.
2012-07-23add splice and vmsplice syscallsRich Felker-0/+12
based on patches by orc and Isaac Dunham.
2012-06-20proper error handling for fcntl F_GETOWN on modern kernelsRich Felker-0/+11
on old kernels, there's no way to detect errors; we must assume negative syscall return values are pgrp ids. but if the F_GETOWN_EX fcntl works, we can get a reliable answer.
2012-06-04_GNU_SOURCE is supposed to imply _LARGEFILE64_SOURCERich Felker-1/+1
this is ugly and stupid, but now that the *64 symbol names exist, a lot of broken GNU software detects them in configure, then either breaks during build due to missing off64_t definition, or attempts to compile without function declarations/prototypes. "fixing" it here is easier than telling everyone to add yet another feature test macro to their builds.
2012-05-22various header cleanups, some related to _BSD_SOURCE additionRich Felker-2/+1
there is no reason to avoid multiple identical macro definitions; this is perfectly legal C, and even with the maximal warning options enabled, gcc does not issue any warning for it.
2012-05-22support _BSD_SOURCE feature test macroRich Felker-1/+13
patch by Isaac Dunham. matched closely (maybe not exact) to glibc's idea of what _BSD_SOURCE should make visible.
2012-05-04add support for ugly *64 functions with _LARGEFILE64_SOURCERich Felker-0/+10
musl does not support legacy 32-bit-off_t whatsoever. off_t is always 64 bit, and correct programs that use off_t and the standard functions will just work out of the box. (on glibc, they would require -D_FILE_OFFSET_BITS=64 to work.) however, some programs instead define _LARGEFILE64_SOURCE and use alternate versions of all the standard types and functions with "64" appended to their names. we do not want code to actually get linked against these functions (it's ugly and inconsistent), so macros are used instead of prototypes with weak aliases in the library itself. eventually the weak aliases may be added at the library level for the sake of using code that was originally built against glibc, but the macros will still be the desired solution in the headers.
2012-04-15move F_DUPFD_CLOEXEC out of bitsRich Felker-0/+2
fcntl values 1024 and up are universal, arch-independent. later I'll add some of the other linux-specific ones for notify, leases, pipe size, etc. here too.
2011-04-14fix O_SYNC definition, cleanup fcntl.hRich Felker-0/+8
2011-04-14fcntl.h: move macros that do not vary between archs out of bitsRich Felker-0/+24
2011-03-08fcntl.h should make availabel the mode constants from sys/stat.hRich Felker-0/+18
also remove some legacy nonsense that crept in.
2011-02-12initial check-in, version 0.5.0v0.5.0Rich Felker-0/+43