summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)AuthorFilesLines
2011-04-13add profile for getmntent_rRich Felker1-0/+1
2011-04-13fix typos on RLIM_NLIMITS, remove _GNU_SOURCE test for itRich Felker1-3/+1
RLIM_* is in the reserved namespace for this header
2011-04-13fix and cleanup suseconds_t/timeval stuff (broken on 64-bit)Rich Felker2-9/+1
trash in the upper 32 bits was making the kernel sleep forever in select on 64-bit systems.
2011-04-13fix prototypes/signature for setgroups, etc.Rich Felker2-1/+7
2011-04-13fix incorrect GNU sighandler_t typedefRich Felker1-1/+1
2011-04-13implement memrchr (nonstandard) and optimize strrchr in terms of itRich Felker1-0/+1
2011-04-13add ptsname_r (nonstandard) and split ptsname (standard) to separate fileRich Felker1-0/+1
this eliminates the ugly static buffer in programs that use ptsname_r.
2011-04-12move bswap functions to static inline in byteswap.hRich Felker1-0/+25
2011-04-12utmpx.h is no longer under standards, so expose ut_exit structureRich Felker1-3/+3
2011-04-12add some traditional aliases to stat.hRich Felker1-0/+6
2011-04-12add missing rlimit macrosRich Felker1-0/+8
2011-04-11more types cleanupRich Felker1-12/+3
the basic idea is that the only things in alltypes.h should be types that either vary from system to system (in practice, not just in theoretical la-la land - this is the implementation so we choose what constraints we want to impose on ports) or which are needed by multiple system headers.
2011-04-11cleanup types stuff in headers, fix missing u_int*_t in sys/types.hRich Felker2-7/+19
2011-04-10add some ugly legacy type names in sys/types.h (u_char etc.)Rich Felker1-0/+8
2011-04-10add legacy BSD-style timer*() macros in sys/time.hRich Felker1-0/+10
2011-04-10add missing UTIME_* macros in sys/stat.hRich Felker1-0/+3
2011-04-06fix typo in sys/msg.hRich Felker1-1/+1
2011-04-06add IN_LOOPBACKNET constant (nonstandard but in reserved namespace)Rich Felker1-0/+2
2011-04-06fix prototype for strsepRich Felker1-1/+1
2011-04-06fix incorrect (and conflicting on LP64 archs) types for sysv ipc msgq functionsRich Felker1-1/+1
2011-04-05getopt.h is a GNU-getopt-specific header. always expose GNU functions.Rich Felker1-2/+0
2011-04-05add sysexits.h legacy headerRich Felker1-0/+21
2011-04-05add more legacy functions: setlinebuf and setbufferRich Felker1-0/+2
2011-04-05alternate name for syslog.hRich Felker1-0/+1
2011-04-05support the nonstandard err.h interfacesRich Felker1-0/+24
note that unlike the originals, these do not print the program name/argv[0] because we have not saved it anywhere. this could be changed in __libc_start_main if desired.
2011-04-03prototype getdtablesize (nonstandard function)Rich Felker1-0/+1
2011-04-03add setresuid/setresgid functions (nonstandard)Rich Felker1-0/+2
2011-04-03d_fileno alias for d_ino in direntRich Felker1-0/+2
this is nonstandard but since POSIX reserved d_ prefix in dirent.h we might as well define it unconditionally. some programs depend on it.
2011-04-01remove obsolete and useless useconds_t typeRich Felker1-3/+2
2011-04-01fix misspelled PTHREAD_CANCELED constantRich Felker1-1/+1
2011-03-30add some missing prototypes for nonstandard functions (strsep, clearenv)Rich Felker2-0/+2
2011-03-29missing prototype for wcscoll (stub)Rich Felker1-0/+1
2011-03-29implement POSIX timersRich Felker2-6/+17
this implementation is superior to the glibc/nptl implementation, in that it gives true realtime behavior. there is no risk of timer expiration events being lost due to failed thread creation or failed malloc, because the thread is created as time creation time, and reused until the timer is deleted.
2011-03-28prototype for getpassRich Felker1-0/+4
2011-03-25match glibc/lsb cancellation abi on i386Rich Felker1-0/+2
glibc made the ridiculous choice to use pass-by-register calling convention for these functions, which is impossible to duplicate directly on non-gcc compilers. instead, we use ugly asm to wrap and convert the calling convention. presumably this works with every compiler anyone could potentially want to use.
2011-03-19syscall overhaul part two - unify public and internal syscall interfaceRich Felker1-1/+17
with this patch, the syscallN() functions are no longer needed; a variadic syscall() macro allows syscalls with anywhere from 0 to 6 arguments to be made with a single macro name. also, manually casting each non-integer argument with (long) is no longer necessary; the casts are hidden in the macros. some source files which depended on being able to define the old macro SYSCALL_RETURNS_ERRNO have been modified to directly use __syscall() instead of syscall(). references to SYSCALL_SIGSET_SIZE and SYSCALL_LL have also been changed. x86_64 has not been tested, and may need a follow-up commit to fix any minor bugs/oversights.
2011-03-19add some ioctl stuff to sys/mount.hRich Felker1-0/+18
2011-03-19overhaul syscall interfaceRich Felker1-0/+16
this commit shuffles around the location of syscall definitions so that we can make a syscall() library function with both SYS_* and __NR_* style syscall names available to user applications, provides the syscall() library function, and optimizes the code that performs the actual inline syscalls in the library itself. previously on i386 when built as PIC (shared library), syscalls were incurring bus lock (lock prefix) overhead at entry and exit, due to the way the ebx register was being loaded (xchg instruction with a memory operand). now the xchg takes place between two registers. further cleanup to arch/$(ARCH)/syscall.h is planned.
2011-03-18some linux headers useful from user apps.Rich Felker3-0/+550
i'm still not sure whether it's a good idea to include or use any of these, but i'll add them for now. it may make more sense to just add official kernel headers to the include path for compiling programs that need them.
2011-03-18various legacy and linux-specific stuffRich Felker4-1/+115
this commit is part of an effort to make more of busybox work out-of-the-box.
2011-03-18implement [v]swprintfRich Felker1-2/+2
2011-03-17implement robust mutexesRich Felker1-0/+1
some of this code should be cleaned up, e.g. using macros for some of the bit flags, masks, etc. nonetheless, the code is believed to be working and correct at this point.
2011-03-14remove some old cruft from sys/types.hRich Felker1-1/+0
2011-03-12pthread.h needs clockid_tRich Felker1-0/+1
actually it gets this from time.h if _POSIX_C_SOURCE or any other feature test macros are defined, but it breaks if they're not.
2011-03-11missing const in some pthread_attr_* prototypesRich Felker1-8/+8
2011-03-10fix sem_open and sem_close to obey posix semanticsRich Felker1-0/+1
multiple opens of the same named semaphore must return the same pointer, and only the last close can unmap it. thus the ugly global state keeping track of mappings. the maximum number of distinct named semaphores that can be opened is limited sufficiently small that the linear searches take trivial time, especially compared to the syscall overhead of these functions.
2011-03-08fix typos in dirent.hRich Felker1-2/+2
2011-03-08fcntl.h should make availabel the mode constants from sys/stat.hRich Felker2-8/+20
also remove some legacy nonsense that crept in.
2011-03-07add macros for use with d_type extension field in direntRich Felker1-0/+14
2011-03-07add prototypes for pthread_condattr_* and pthread_rwlockattr_*Rich Felker1-0/+12