about summary refs log tree commit diff
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* fix broken siginfo_t with _GNU_SOURCE definedRich Felker2011-09-201-6/+5
| | | | | | | this bug was introduced in a recent patch. the problem we're working around is that broken GNU software wants to use "struct siginfo" rather than "siginfo_t", but "siginfo" is not in the reserved namespace and thus not legal for the standard header to use.
* fix the definition of struct statvfs to match lsb abiRich Felker2011-09-192-7/+24
| | | | | at the same time, make struct statfs match the traditional definition and make it more useful, especially the fsid_t stuff.
* add some more siginfo aliases broken software expects...Rich Felker2011-09-191-0/+2
|
* cleanup redundancy in bits/signal.h versionsRich Felker2011-09-191-4/+108
|
* fix the type of wchar_t on arm; support wchar_t varying with archRich Felker2011-09-192-15/+6
| | | | | | | | | | | | | | really wchar_t should never vary, but the ARM EABI defines it as an unsigned 32-bit int instead of a signed one, and gcc follows this nonsense. thus, to give a conformant environment, we have to follow (otherwise L""[0] and L'\0' would be 0U rather than 0, but the application would be unaware due to a mismatched definition for WCHAR_MIN and WCHAR_MAX, and Bad Things could happen with respect to signed/unsigned comparisons, promotions, etc.). fortunately no rules are imposed by the C standard on the relationship between wchar_t and wint_t, and WEOF has type wint_t, so we can still make wint_t always-signed and use -1 for WEOF.
* fix broken multi-inclusion guard in sys/reg.hRich Felker2011-09-191-2/+2
|
* cleanup more bits cruft (sysmacros and socket)Rich Felker2011-09-182-1/+199
|
* more bits junk (tcp.h)Rich Felker2011-09-181-1/+1
|
* move invariant netinet/in.h stuff out of bits/in.hRich Felker2011-09-181-2/+147
|
* overhaul clone syscall wrappingRich Felker2011-09-181-0/+27
| | | | | | | | | | | | | | | | | | | | several things are changed. first, i have removed the old __uniclone function signature and replaced it with the "standard" linux __clone/clone signature. this was necessary to expose clone to applications anyway, and it makes it easier to port __clone to new archs, since it's now testable independently of pthread_create. secondly, i have removed all references to the ugly ldt descriptor structure (i386 only) from the c code and pthread structure. in places where it is needed, it is now created on the stack just when it's needed, in assembly code. thus, the i386 __clone function takes the desired thread pointer as its argument, rather than an ldt descriptor pointer, just like on all other sane archs. this should not affect applications since there is really no way an application can use clone with threads/tls in a way that doesn't horribly conflict with and clobber the underlying implementation's use. applications are expected to use clone only for creating actual processes, possibly with new namespace features and whatnot.
* implement ptrace syscall wrapper (untested)Rich Felker2011-09-151-1/+1
|
* fix return types for aio_read and aio_write againRich Felker2011-09-131-2/+2
| | | | | previous fix was backwards and propagated the wrong type rather than the right one...
* fix various errors in function signatures/prototypes found by nszRich Felker2011-09-134-8/+8
|
* fix prototypes for aio_read and aio_writeRich Felker2011-09-131-2/+2
|
* implement gnu sigisemptysetRich Felker2011-09-121-0/+1
|
* add prototypes for GNU *_unlocked stdio functionsRich Felker2011-09-111-0/+4
| | | | | | | actually these are just weak aliases for the normal locking versions right now, and they will probably stay that way since making them lock-free without slowing down the normal versions would require significant code duplication for no benefit.
* add dummied strverscmp (obnoxious GNU function)Rich Felker2011-09-111-0/+1
| | | | | | programs that use this tend to horribly botch international text support, so it's questionable whether we want to support it even in the long term... for now, it's just a dummy that calls strcmp.
* declare alloca in stdlib.h when _GNU_SOURCE is definedRich Felker2011-09-111-0/+1
|
* implement POSIX asynchronous ioRich Felker2011-09-091-0/+60
| | | | | some features are not yet supported, and only minimal testing has been performed. should be considered experimental at this point.
* implement fmemopenRich Felker2011-09-031-0/+1
| | | | testing so far has been minimal. may need further work.
* implement open_wmemstreamRich Felker2011-09-031-0/+1
| | | | | | not heavily tested, but it seems to be correct, including the odd behavior that seeking is in terms of wide character count. this precludes any simple buffering, so we just make the stream unbuffered.
* implement open_memstreamRich Felker2011-09-031-0/+1
| | | | | this is the first attempt, and may have bugs. only minimal testing has been performed.
* fix missing prototypes/wrong signature for psiginfo, psignalRich Felker2011-09-021-0/+3
|
* fix broken FD_* macros on 64-bit targetsRich Felker2011-08-271-3/+3
| | | | | 1 is too small if int is 32-bit but unsigned long is 64-bit. be explicit and use 1UL.
* macro for pthread_equalRich Felker2011-08-141-0/+2
| | | | no sense bloating apps with a function call for an equality comparison...
* implement forkallRich Felker2011-08-121-0/+1
| | | | | | | | | | | | this is a "nonstandard" function that was "rejected" by POSIX, but nonetheless had its behavior documented in the POSIX rationale for fork. it's present on solaris and possibly some other systems, and duplicates the whole calling process, not just a single thread. glibc does not have this function. it should not be used in programs intending to be portable, but may be useful for testing, checkpointing, etc. and it's an interesting (and quite small) example of the usefulness of the __synccall framework originally written to work around deficiencies in linux's setuid syscall.
* consistency: use struct __ucontext instead of ucontext_t in prototypesRich Felker2011-07-311-1/+1
| | | | | this is necessary to avoid build errors if feature test macros are not properly defined when including ucontext.h
* add missing signalfd flagsRich Felker2011-07-091-0/+3
|
* fill in junk in stropts.hRich Felker2011-06-301-1/+123
| | | | | | STREAMS are utterly useless as far as I can tell, but some software was apparently broken by the presence of stropts.h but lack of macros it's supposed to define...
* add and consolidate nasty stdio_ext junkRich Felker2011-06-301-0/+27
| | | | | hopefully this resolves the rest of the issues with hideously nonportable hacks in programs that use gnulib.
* implement the nonstandard GNU function fpurgeRich Felker2011-06-301-0/+1
| | | | | | this is a really ugly and backwards function, but its presence will prevent lots of broken gnulib software from trying to define its own version of fpurge and thereby failing to build or worse.
* avoid errors in ucontext.h when no feature test macros are definedRich Felker2011-06-291-3/+5
|
* further fixup dlfcn.hRich Felker2011-06-271-4/+10
|
* match LSB/glibc constants for dynamic loaderRich Felker2011-06-271-4/+4
|
* XSI search.h API implementation by Szabolcs NagyRich Felker2011-06-251-1/+35
|
* move all limits that don't vary out of bits/limits.h, into main limits.hRich Felker2011-06-251-0/+22
|
* copy-paste error in prctl.hRich Felker2011-06-181-1/+1
|
* fix some struct padding to match LSB/glibc ABI where it may be helpfulRich Felker2011-06-162-2/+5
|
* duplicate re_nsub in LSB/glibc ABI compatible locationRich Felker2011-06-161-1/+2
|
* add netpacket/packet.hRich Felker2011-06-091-0/+44
| | | | | looks like busybox is going to want it, and apparently some other low-level network software does too...
* isgreater etc. relation macros for math.hRich Felker2011-06-081-0/+18
|
* define MQ_PRIO_MAXRich Felker2011-06-071-0/+1
|
* add support for POSIX message queues, except mq_notifyRich Felker2011-06-071-0/+34
|
* use __attribute__((const)) for errno and pthread_self if __GNUC__ is definedRich Felker2011-06-062-0/+6
| | | | | this is not too ugly and should result in significant code size and performance improvements for many programs.
* fix handling of d_name in struct direntRich Felker2011-06-061-1/+1
| | | | | | | | | | | | basically there are 3 choices for how to implement this variable-size string member: 1. C99 flexible array member: breaks using dirent.h with pre-C99 compiler. 2. old way: length-1 string: generates array bounds warnings in caller. 3. new way: length-NAME_MAX string. no problems, simplifies all code. of course the usable part in the pointer returned by readdir might be shorter than NAME_MAX+1 bytes, but that is allowed by the standard and doesn't hurt anything.
* missing prototypes for mbsnrtowcs and wcsnrtombsRich Felker2011-05-301-0/+6
|
* implement pthread_[sg]etconcurrency.Rich Felker2011-05-301-0/+3
| | | | | | there is a resource limit of 0 bits to store the concurrency level requested. thus any positive level exceeds a resource limit, resulting in EAGAIN. :-)
* initial implementation of posix_spawnRich Felker2011-05-281-0/+67
| | | | | file actions are not yet implemented, but everything else should be mostly complete and roughly correct.
* eventfd syscall wrapper and read/write wrappersRich Felker2011-05-081-0/+25
|
* add SA_NOMASK alias for SA_NODEFER with _GNU_SOURCERich Felker2011-05-051-0/+1
|