about summary refs log tree commit diff
path: root/include/fcntl.h
Commit message (Collapse)AuthorAgeFilesLines
* fix multiple minor namespace issues in headersRich Felker2013-10-201-2/+3
| | | | | | | | | | | | | fcntl.h: AT_* is not a reserved namespace so extensions cannot be exposed by default. langinfo.h: YESSTR and NOSTR were removed from the standard. limits.h: NL_NMAX was removed from the standard. signal.h: the conditional for NSIG was wrongly checking _XOPEN_SOURCE rather than _BSD_SOURCE. this was purely a mistake; it doesn't even match the commit message from the commit that added it.
* add some new linux AT_* flagsRich Felker2013-08-031-0/+2
|
* provide useless 64-bit fcntl macros with _LARGEFILE64_SOURCERich Felker2013-08-021-0/+3
| | | | | this is all useless but part of the API, which is part of the _GNU_SOURCE API, so something may need them.
* fix F_DUPFD_CLOEXEC being defined twicerofl0r2012-12-061-1/+0
|
* fixup for fcntl.h changesrofl0r2012-12-061-16/+15
|
* fcntl.h: add some linux-specific F_ macrosrofl0r2012-12-061-0/+17
| | | | | thankfully these are all generic across archs. the DN_ macros are for usage with F_NOTIFY.
* fcntl.h: O_SEARCH was missing for powerpcrofl0r2012-11-181-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.
* fix stupid bug in updating of O_ACCMODE for O_SEARCH supportRich Felker2012-09-151-1/+1
| | | | this could cause major bugs, and warrants a fix release right away.
* add O_PATH/O_SEARCH support to fcntl.hRich Felker2012-09-131-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.
* add linux tee syscallRich Felker2012-09-081-0/+1
|
* add linux sync_file_range syscallRich Felker2012-09-081-0/+4
|
* add linux readahead syscallRich Felker2012-09-081-0/+1
|
* add fallocate (nonstandardized) functionRich Felker2012-09-081-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.
* default features: make musl usable without feature test macrosRich Felker2012-09-071-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.
* provide loff_t for splice syscallRich Felker2012-09-061-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.
* add splice and vmsplice syscallsRich Felker2012-07-231-0/+12
| | | | based on patches by orc and Isaac Dunham.
* proper error handling for fcntl F_GETOWN on modern kernelsRich Felker2012-06-201-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.
* _GNU_SOURCE is supposed to imply _LARGEFILE64_SOURCERich Felker2012-06-041-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.
* various header cleanups, some related to _BSD_SOURCE additionRich Felker2012-05-221-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.
* support _BSD_SOURCE feature test macroRich Felker2012-05-221-1/+13
| | | | | patch by Isaac Dunham. matched closely (maybe not exact) to glibc's idea of what _BSD_SOURCE should make visible.
* add support for ugly *64 functions with _LARGEFILE64_SOURCERich Felker2012-05-041-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.
* move F_DUPFD_CLOEXEC out of bitsRich Felker2012-04-151-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.
* fix O_SYNC definition, cleanup fcntl.hRich Felker2011-04-141-0/+8
|
* fcntl.h: move macros that do not vary between archs out of bitsRich Felker2011-04-141-0/+24
|
* fcntl.h should make availabel the mode constants from sys/stat.hRich Felker2011-03-081-0/+18
| | | | also remove some legacy nonsense that crept in.
* initial check-in, version 0.5.0 v0.5.0Rich Felker2011-02-121-0/+43