Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | further fixup dlfcn.h | Rich Felker | 2011-06-27 | 1 | -4/+10 |
| | |||||
* | match LSB/glibc constants for dynamic loader | Rich Felker | 2011-06-27 | 1 | -4/+4 |
| | |||||
* | fix stale pointer issue in dynamic linker with dlopen | Rich Felker | 2011-06-26 | 1 | -0/+1 |
| | |||||
* | don't leave the lock held on dlopen failure.. | Rich Felker | 2011-06-26 | 1 | -2/+2 |
| | |||||
* | add RTLD_DEFAULT support | Rich Felker | 2011-06-26 | 1 | -1/+2 |
| | |||||
* | in dlopen: don't use null pointer | Rich Felker | 2011-06-26 | 1 | -3/+3 |
| | | | | deps can be null if a library has no dependencies (such as libc itself) | ||||
* | fix resolving symbols in objects loaded in RTLD_LOCAL mode | Rich Felker | 2011-06-26 | 1 | -0/+11 |
| | | | | | | basically we temporarily make the library and all its dependencies part of the global namespace but only for the duration of performing relocations, then return them to their former state. | ||||
* | experimental dlopen/dlsym and dynlink changes needed to support them | Rich Felker | 2011-06-26 | 1 | -8/+125 |
| | |||||
* | type directives for x86_64 math asm | Rich Felker | 2011-06-26 | 2 | -0/+2 |
| | |||||
* | error handling in dynamic linking | Rich Felker | 2011-06-26 | 1 | -2/+19 |
| | | | | | | some of the code is not yet used, and is in preparation for dlopen which needs to be able to handle failure loading libraries without terminating the program. | ||||
* | fix useless use of potentially-uninitialized mode variable in sem_open | Rich Felker | 2011-06-26 | 1 | -1/+1 |
| | |||||
* | eliminate OOB array hacks in malloc | Rich Felker | 2011-06-26 | 1 | -46/+45 |
| | |||||
* | use .type directives for math asm (needed for dynamic linking to work) | Rich Felker | 2011-06-26 | 15 | -0/+26 |
| | |||||
* | fix some symbol resolution issues in dynamic linker | Rich Felker | 2011-06-25 | 3 | -4/+6 |
| | | | | | 1. search was wrongly beginning with lib itself rather than dso head 2. inconsistent resolution of function pointers for functions in plt | ||||
* | fix dynamic linker issue in musl-gcc wrapper | Rich Felker | 2011-06-25 | 1 | -1/+1 |
| | |||||
* | wordexp cannot use we_offs unless WRDE_DOOFFS flag is set | Rich Felker | 2011-06-25 | 1 | -1/+2 |
| | | | | | | previously, a potentially-indeterminate value from we_offs was being used, resulting in wrong we_wordc and subsequent crashes in the caller. | ||||
* | XSI search.h API implementation by Szabolcs Nagy | Rich Felker | 2011-06-25 | 6 | -4/+392 |
| | |||||
* | handle library paths better (ignore empty path components, etc.) | Rich Felker | 2011-06-25 | 1 | -3/+5 |
| | |||||
* | move all limits that don't vary out of bits/limits.h, into main limits.h | Rich Felker | 2011-06-25 | 3 | -53/+24 |
| | |||||
* | fix possible (questionable) strict aliasing violations and ptr arith | Rich Felker | 2011-06-25 | 1 | -3/+3 |
| | |||||
* | const correctness in mq_notify | Rich Felker | 2011-06-25 | 1 | -1/+1 |
| | | | | why did gcc allow this invalid assignment to compile in the first place? | ||||
* | proper path searching for dynamic linker | Rich Felker | 2011-06-25 | 3 | -14/+42 |
| | | | | | first, use $LD_LIBRARY_PATH unless suid. if that fails, read path from /etc/ld-musl-$ARCH.path and fallback to a builtin default. | ||||
* | optimize opendir using O_CLOEXEC | Rich Felker | 2011-06-25 | 1 | -2/+1 |
| | |||||
* | discard dso descriptors after performing relocations | Rich Felker | 2011-06-25 | 1 | -0/+12 |
| | | | | | eventually (once dlopen exists) this behavior will be conditional on dlopen/dlsym not being reachable. | ||||
* | keep track of which dsos have been relocated | Rich Felker | 2011-06-25 | 1 | -0/+1 |
| | |||||
* | use soname in ld-musl.so to prevent filename appearing in DT_NEEDEDs | Rich Felker | 2011-06-24 | 1 | -1/+1 |
| | |||||
* | use symlink rather than bogus linker script for libc.so | Rich Felker | 2011-06-24 | 1 | -2/+2 |
| | | | | the linker script caused a bogus DT_NEEDED entry | ||||
* | adapt build/install/gcc-wrapper systems for dynamic linking support | Rich Felker | 2011-06-23 | 3 | -9/+20 |
| | |||||
* | prepare support for LD_LIBRARY_PATH (checking suid/sgid safety) | Rich Felker | 2011-06-23 | 1 | -0/+6 |
| | | | | | | | | | | the use of this test will be much stricter than glibc and other typical implementations; the environment will not be honored whatsoever unless the program is confirmed non-suid/sgid by the aux vector the kernel passed in. no fallback to slow syscall-based checking is used if the kernel fails to provide the information; we simply assume the worst (suid) in this case and refuse to honor environment. | ||||
* | initial commit of prng implementation by Szabolcs Nagy | Rich Felker | 2011-06-23 | 3 | -12/+111 |
| | |||||
* | make ldso asm more uniform with rest of codebase (no unnecessary suffixes) | Rich Felker | 2011-06-19 | 1 | -12/+12 |
| | |||||
* | x86_64: ensure that dtor pointer passed to app is 0 so it won't be used | Rich Felker | 2011-06-19 | 1 | -0/+1 |
| | | | | | leaving it uninitialized caused unpredictable crashes or worse due to calling an indeterminate function pointer. | ||||
* | dynamic linker 64bit fix: hash table entries are always 32bit | Rich Felker | 2011-06-18 | 1 | -2/+2 |
| | |||||
* | experimental dynamic linker! | Rich Felker | 2011-06-18 | 5 | -0/+466 |
| | | | | | | | | some notes: - library search path is hard coded - x86_64 code is untested and may not work - dlopen/dlsym is not yet implemented - relocations in read-only memory won't work | ||||
* | fix memory leak on failure in realpath | Rich Felker | 2011-06-18 | 1 | -4/+4 |
| | |||||
* | copy-paste error in prctl.h | Rich Felker | 2011-06-18 | 1 | -1/+1 |
| | |||||
* | fix some struct padding to match LSB/glibc ABI where it may be helpful | Rich Felker | 2011-06-16 | 2 | -2/+5 |
| | |||||
* | duplicate re_nsub in LSB/glibc ABI compatible location | Rich Felker | 2011-06-16 | 2 | -2/+3 |
| | |||||
* | restore use of .type in asm, but use modern @function (vs %function) | Rich Felker | 2011-06-14 | 20 | -0/+29 |
| | | | | | | | | this seems to be necessary to make the linker accept the functions in a shared library (perhaps to generate PLT entries?) strictly speaking libc-internal asm should not need it. i might clean that up later. | ||||
* | __syscall5 inline is having trouble with PIC; just use the function for now | Rich Felker | 2011-06-14 | 1 | -0/+7 |
| | |||||
* | fix race condition in pthread_kill | Rich Felker | 2011-06-14 | 3 | -1/+8 |
| | | | | | | | | | | | | | | if thread id was reused by the kernel between the time pthread_kill read it from the userspace pthread_t object and the time of the tgkill syscall, a signal could be sent to the wrong thread. the tgkill syscall was supposed to prevent this race (versus the old tkill syscall) but it can't; it can only help in the case where the tid is reused in a different process, but not when the tid is reused in the same process. the only solution i can see is an extra lock to prevent threads from exiting while another thread is trying to pthread_kill them. it should be very very cheap in the non-contended case. | ||||
* | run dtors before taking the exit-lock in pthread exit | Rich Felker | 2011-06-14 | 1 | -2/+2 |
| | | | | previously a long-running dtor could cause pthread_detach to block. | ||||
* | minor locking optimizations | Rich Felker | 2011-06-14 | 2 | -2/+2 |
| | |||||
* | avoid 64bit warnings when using pointers as entropy for temp names | Rich Felker | 2011-06-13 | 2 | -2/+4 |
| | |||||
* | fix sigset macro for 64-bit systems (<< was overflowing due to wrong type) | Rich Felker | 2011-06-13 | 1 | -1/+1 |
| | |||||
* | remove all .size and .type directives for functions from the asm | Rich Felker | 2011-06-13 | 18 | -52/+0 |
| | | | | | these are useless and have caused problems for users trying to build with non-gnu tools like tcc's assembler. | ||||
* | remove old useless timezone.s file (unused) | Rich Felker | 2011-06-13 | 1 | -27/+0 |
| | |||||
* | fix wrong type for wcsrchr argument 2 | Rich Felker | 2011-06-13 | 1 | -1/+1 |
| | |||||
* | x86_64 fenv support (untested; at least known to build successfully) | Rich Felker | 2011-06-13 | 1 | -0/+88 |
| | |||||
* | fix fesetround - it was writing to status word instead of control word | Rich Felker | 2011-06-13 | 1 | -3/+8 |
| |