summaryrefslogtreecommitdiffstats
path: root/libc/stdlib
Commit message (Collapse)AuthorAgeFilesLines
* realpath: SUSv4 compliantBernhard Reutner-Fischer2009-11-141-14/+8
| | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* mktemp does not depend on floatsAustin Foxley2009-10-171-1/+5
| | | | Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
* malloc: handle size overflows in realloc()Mike Frysinger2009-10-151-0/+3
| | | | | | | | | The malloc() code checks the incoming size to make sure the header adjustment doesn't cause overflow in the size storage. Add the same check to realloc() to catch stupid stuff like realloc(..., -1). Reported-by: James Coleman <james.coleman@ubicom.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* remove a few more empty #if/#endif pairsDenys Vlasenko2009-09-191-2/+0
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* convert // comments to /**/; remove empty #if/#endif pairs. no code changesDenys Vlasenko2009-09-183-9/+0
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* trim Experimentally off and uncommented hiddenBernhard Reutner-Fischer2009-09-1848-153/+0
| | | | | | | | sed -i -e '/Experimentally off - /d' $(grep -rl "Experimentally off - " *) sed -i -e '/^\/\*[[:space:]]*libc_hidden_proto(/d' $(grep -rl "libc_hidden_proto" *) should be a nop Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* support building out-of-treeBernhard Reutner-Fischer2009-08-174-0/+8
| | | | | | Handle O= Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* - Add strtouq alias (to strtoul) for 64bitBernhard Reutner-Fischer2009-03-251-0/+3
| | | | | | | | The strtouq alias was only available on 32bit, breaking compilation of stuff using strtouq on 64bit machines. At the same time use the correct return type (u_quad_t). Signed-of-by: Peter Korsgaard <jacmet@sunsite.dk>
* *: remove __UCLIBC_CURLOCALE_DATA, __UCLIBC_CURLOCALE_DATA.xDenis Vlasenko2009-01-211-2/+2
| | | | | | | | | | | | | | | | | | | is always equivalent to __UCLIBC_CURLOCALE->x. remove typedef __uclibc_locale_t, it used only in a few places, it is lees confusing to use struct __uclibc_locale_struct everywhere. xlocale.h: hide __global_locale back under _LIBC, bug 53 is wrong in claiming it should be exported. Also hide under _LIBC: extern __locale_t __curlocale_var; extern __locale_t __curlocale(void); extern __locale_t __curlocale_set(__locale_t newloc); # define __UCLIBC_CURLOCALE # define __XL_NPP(N) # define __LOCALE_PARAM # define __LOCALE_ARG # define __LOCALE_PTR
* libc/stdlib/_strtod.c: add parens around a | bDenis Vlasenko2008-12-291-1/+1
|
* - expand SUSv3_LEGACYBernhard Reutner-Fischer2008-12-291-2/+2
| | | | - SUSv4_LEGACY part #1 (non-networking)
* ctype: remove some trivial macros from ctype.h;Denis Vlasenko2008-12-271-17/+11
| | | | | | | | | | | | remove __tolower and __toupper (they existed only in SOME configs!); remove usages of _tolower (some of them clearly buggy) from uclibc code; add a few more -U<define> options to unifdef pass over installed headers; document it on docs/wchar_and_locale.txt text data bss dec hex filename - 514963 2727 15396 533086 8225e lib/libuClibc-0.9.30-svn.so + 514888 2727 15396 533011 82213 lib/libuClibc-0.9.30-svn.so
* setenv.c: tiny code shrinkDenis Vlasenko2008-12-091-36/+38
| | | | | | | text data bss dec hex filename - 546 0 4 550 226 libc/stdlib/setenv.o + 538 0 4 542 21e libc/stdlib/setenv.o
* setenv.c: further code shrinkDenis Vlasenko2008-12-091-36/+26
| | | | | | | text data bss dec hex filename - 672 0 4 676 2a4 libc/stdlib/setenv.o + 546 0 4 550 226 libc/stdlib/setenv.o
* fix segv on clearenv(); unsetenv("foo"); [was deref'ing NULL],Denis Vlasenko2008-12-091-96/+89
| | | | | | | | | add a few missing ENOMEMs, some code shrinking text data bss dec hex filename - 727 0 4 731 2db libc/stdlib/setenv.o + 672 0 4 676 2a4 libc/stdlib/setenv.o
* hostid: improve extremely unreadable partsDenis Vlasenko2008-12-011-1/+1
| | | | | | | | | | | | | | | | | | | | *: remove checks of sigaction and sigprocmask results in cases where they clearly can't fail: sigaction(known_good_sig) sigprocmask(known_good_how) text data bss dec hex filename - 393 4 0 397 18d libc/pwd_grp/lckpwdf.o + 382 4 0 386 182 libc/pwd_grp/lckpwdf.o - 56 0 0 56 38 libc/signal/sigblock.o + 44 0 0 44 2c libc/signal/sigblock.o - 211 0 0 211 d3 libc/signal/sigset.o + 202 0 0 202 ca libc/signal/sigset.o - 56 0 0 56 38 libc/signal/sigsetmask.o + 44 0 0 44 2c libc/signal/sigsetmask.o - 309 0 0 309 135 libc/unistd/sleep.o + 256 0 0 256 100 libc/unistd/sleep.o
* on Bernd's request, remove commented-out code snippetsDenis Vlasenko2008-12-011-1/+0
|
* l64a: shrink by 13 bytes, and -1 relocDenis Vlasenko2008-12-011-10/+10
|
* random: use smaller data fields where appropriateDenis Vlasenko2008-12-013-18/+6
| | | | | | | | | text data bss dec hex filename - 130 156 0 286 11e libc/stdlib/random.o + 130 148 0 278 116 libc/stdlib/random.o - 586 0 0 586 24a libc/stdlib/random_r.o + 570 0 0 570 23a libc/stdlib/random_r.o
* shring sugnal-relared stuff a bit. BTW why constant memset is not inlined by ↵Denis Vlasenko2008-11-291-5/+6
| | | | | | | | | | | gcc? text data bss dec hex filename - 38015 18096 8636 64747 fceb lib/libpthread-0.9.30-svn.so + 38001 18096 8636 64733 fcdd lib/libpthread-0.9.30-svn.so - 274842 1835 19012 295689 48309 lib/libuClibc-0.9.30-svn.so + 274779 1835 19012 295626 482ca lib/libuClibc-0.9.30-svn.so
* - revert 24148:24151Bernhard Reutner-Fischer2008-11-263-13/+15
|
* - remove some bloat that was added in r23660 and subsequent r23698.Bernhard Reutner-Fischer2008-11-253-15/+13
| | | | The sbrk lock is only needed for LT.old
* - hide __libc_{f,}statfs. Thanks to Peter S. Mazinger for mentioning this fact.Bernhard Reutner-Fischer2008-11-252-2/+0
|
* Last portion of libc_hidden_proto removal.Denis Vlasenko2008-11-2037-86/+86
| | | | | Appears to build fine (several .configs tried)
* next portion of libc_hidden_proto removalDenis Vlasenko2008-11-2018-29/+29
|
* libc_hidden_proto removal, a few more functionsDenis Vlasenko2008-11-184-8/+8
|
* libc_hidden_proto removal, just a few functionsDenis Vlasenko2008-11-185-5/+5
|
* - for !UNIX98PTY_ONLY we have to fallback to old-style pty's.Bernhard Reutner-Fischer2008-11-091-9/+8
| | | | Closes #6024
* - less verbose make cleanBernhard Reutner-Fischer2008-11-074-16/+16
|
* - fix another fallout from r23660Bernhard Reutner-Fischer2008-10-292-3/+3
|
* Finally fix the MALLOC=y and MALLOC_SIMPLE=y breakage from svn 23660. (I ↵Rob Landley2008-10-288-74/+68
| | | | found it, this is Bernhard's patch to fix it. Tested and it Works For Me (tm)).
* - pull in prototype for memalign()Bernhard Reutner-Fischer2008-10-271-0/+1
|
* - tidy up inline:Bernhard Reutner-Fischer2008-10-241-1/+1
| | | | ldso and syscalls are __always_inline (the latter would need more cleanup)
* This should fix malloc with debug and without threads. (Chase N Douglas)Bernhard Reutner-Fischer2008-10-166-23/+59
| | | | This should have been in r23660. Untested.
* Fix bug 4994 hangs on read(). I have tested the patch extensibly on ARM/LT.old.Khem Raj2008-10-1110-75/+57
| | | | | Thank you Chase Douglas for reporting it and for the patch.
* - Fix strtol*() with xlocale (on e.g. x86_64) (closes #2544)Bernhard Reutner-Fischer2008-10-081-5/+5
|
* - fix compilation of UCLIBC_HAS_PTY && !ASSUME_DEVPTS && !LINUX_SPECIFICBernhard Reutner-Fischer2008-09-301-2/+3
|
* - fix compilation of legacy modeBernhard Reutner-Fischer2008-09-251-2/+7
|
* - remove posix_openpt relocationBernhard Reutner-Fischer2008-09-111-0/+1
|
* Fix some locale multibyte tests failures ad below:Carmelo Amoroso2008-09-092-16/+50
| | | | | | | | | | | libc/stdlib/_strtod.c -> tst_wcstod; libc/stdlib/stdlib.c -> tst_mblen, tst_mbtowc, tst_wctomb; libc/stdio/_scanf.c -> tst_swscanf; libc/string/strncmp.c -> tst_wcsncmp; libc/misc/wchar/wchar.c -> tst_mbrlen, tst_mbrtowc, tst_wcswidth. Signed-off-by: Filippo Arcidiacono <filippo.arcidiacono@st.com> Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
* - remove a couple of duplicate includesBernhard Reutner-Fischer2008-08-272-2/+0
|
* - trim any trailing whitespaceBernhard Reutner-Fischer2008-07-2318-19/+19
|
* - fix inline keywordBernhard Reutner-Fischer2008-07-232-13/+13
|
* - revert incorrect parts of r22257 and 22259Bernhard Reutner-Fischer2008-06-073-7/+6
| | | | since posix_openpt lives in getpt.c it has to stay there unconditionally.
* - remove __USE_BSD guard from __bsd_getpt().Bernhard Reutner-Fischer2008-06-071-2/+0
| | | | | Fixes compilation error for defined UCLIBC_HAS_PTY && !defined UNIX98PTY_ONLY which need both __libc_ptyname1 and __libc_ptyname2 for ptsname_r().
* - UCLIBC_HAS_GETPT pulls in getpt.Bernhard Reutner-Fischer2008-06-071-1/+4
| | | | - ptsname_r depends on UCLIBC_HAS_PTY just like ptsname()
* This fixes a problem with the move of libc_hidden_proto to string.h.Bernd Schmidt2008-06-041-1/+0
| | | | | | | | | | | | | The obsolete functions bcopy, index, etc. are not supposed to be used within uClibc itself. Hence, there is no libc_hidden_def for them, but the previous patch did not just move libc_hidden_protos, it also added new ones for the legacy functions. As a result, programs which use these functions can no longer link with uClibc. This fixes it by removing the unnecessary libc_hidden_protos. I've also removed all inclusions of <strings.h> from uClibc source files: since we define _GNU_SOURCE, it is sufficient to include <string.h>. We then do not need to duplicate the libc_hidden_proto block in <strings.h>.
* - adds several config-options to allow for turning off certain featuresBernhard Reutner-Fischer2008-06-034-14/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | like o UCLIBC_HAS_GNU_ERROR o UCLIBC_HAS_BSD_ERR o UCLIBC_HAS_PTY o UCLIBC_HAS_GETPT (1) o UCLIBC_SYSCALL_STUBS o UCLIBC_SYSCALL_STUB_WARNING o UCLIBC_LINUX_SPECIFIC (2) o UCLIBC_BSD_SPECIFIC (3) o UCLIBC_NTP_LEGACY (4) o UCLIBC_SV4_DEPRECATED (5) o UCLIBC_HAVE_REALTIME (6) o UCLIBC_HAVE_ADVANCED_REALTIME (7) o UCLIBC_HAVE_EPOLL (8) o UCLIBC_HAVE_XATTR (9) o UCLIBC_HAVE_PROFILING (10) (1) make non-standard getpt optional and implement standard posix_openpt (2) fstatfs(), inotify_*(), ioperm(), iopl(), madvise(), modify_ldt(), personality() ppoll(), setresuid() (3) mincore(), getdomainname(), setdomainname() (4) ntp_adjtime(), ntp_gettime() aliases (5) ustat() [use statfs(2) in your code instead] (6) All marked as "(REALTIME)" in SUSv3 (7) All marked as "(ADVANCED REALTIME)" in SUSv3 (8) epoll_create(), epoll_ctl(), epoll_wait() (9) all Extended Attributes (10) helpers for gcc's -finstrument-functions - Fixes _dl_exit() - Implements sleep(3) for !UCLIBC_HAVE_REALTIME - Implements usleep(3) for !UCLIBC_HAVE_REALTIME - adds #warning about incorrect posix_fadvise{,64}() - removes unused and unwanted uselib() Net outcome is that an allnoconfig with HAVE_SHARED is now about 88k instead of formerly 130k.
* libc/stdlib/stdlib.c: fix whitespace damage. No code changesDenis Vlasenko2008-06-021-92/+86
| | | | | (verified with objdump)
* fix bug 1577: '`' is not an acceptable digit for strto[u]l().Denis Vlasenko2008-06-021-13/+13
| | | | | Code size is not changed on i386.