summaryrefslogtreecommitdiff
path: root/libc
AgeCommit message (Collapse)Author
2003-08-01Add a new *scanf implementation, includeing the *wscanf functions.Manuel Novoa III
Should be standards compliant and with several optional features, including support for hexadecimal float notation, locale awareness, glibc-like locale-specific digit grouping with the `'' flag, and positional arg support. I tested it pretty well (finding several bugs in glibc's scanf in the process), but it is brand new so be aware. The *wprintf functions now support floating point output. Also, a couple of bugs were squashed. Finally, %a/%A conversions are now implemented. Implement the glibc xlocale interface for thread-specific locale support. Also add the various *_l(args, locale_t loc_arg) funcs. NOTE!!! setlocale() is NOT threadsafe! NOTE!!! The strto{floating point} conversion functions are now locale aware. The also now support hexadecimal floating point notation. Add the wcsto{floating point} conversion functions. Fix a bug in mktime() related to dst. Note that unlike glibc's mktime, uClibc's version always normalizes the struct tm before attempting to determine the correct dst setting if tm_isdst == -1 on entry. Add a stub version of the libintl functions. (untested) Fixed a known memory leak in setlocale() related to the collation data. Add lots of new config options (which Erik agreed to sort out :-), including finally exposing some of the stripped down stdio configs. Be careful with those though, as they haven't been tested in a long time. (temporary) GOTCHAs... The ctype functions are currently incorrect for 8-bit locales. They will be fixed shortly. The ctype functions are now table-based, resulting in larger staticly linked binaries. I'll be adding an option to use the old approach in the stub locale configuration.
2003-08-01Remove the arch specific shm.h and use the fixed up commonEric Andersen
one which now uses the kernel structs -Erik
2003-07-17Bug fix from Peter Kjellerstedt <peter.kjellerstedt@axis.com>. vfscanf wasManuel Novoa III
not setting the FILE bufread member to flag the end of the buffer. Also, do not set bufgetc member if getc macro support is disabled.
2003-07-15Patch from Peter Kjellerstedt to make it simpler for arches to specifyEric Andersen
either -fPIC or -fpic
2003-07-14Yikes! This was doing another lock instead of unlocking the stream.Manuel Novoa III
2003-07-03As noted by Felix Radensky back on 16 Mar:Eric Andersen
I've tried several times to compile uClibc with soft-float (both gcc-3.2.2 toolchain and wrapper), but applications compiled with uClibc always failed with "Invalid instruction". So I ended up disabling floating point at all and this works well. I also has no problem with glibc from Monta Vista, which is compiled with soft-float. My processor is PowerPC 405GP. Maybe the problem is in FP() macro definition in libc/sysdeps/linux/powerpc/setjmp.S and libc/sysdeps/linux/powerpc/__longjmp.S #ifdef __UCLIBC_HAS_FLOATS__ #define FP(x...) x #else #define FP(x...) #endif which should be defined as if defined __UCLIBC_HAS_FLOATS__ && ! defined __UCLIBC_HAS_SOFT_FLOAT__ #define FP(x...) x #else #define FP(x...) #endif
2003-06-30Yield to yet another glibc-ism and add __prognameEric Andersen
2003-06-27Fix a couple of typosEric Andersen
2003-06-27ret could have been used uninitialized in one caseEric Andersen
2003-06-27Revenge of the TypoEric Andersen
2003-06-27Yet more cleanup for the reentrant pwd/grp functions so theyEric Andersen
should now actually be doing the right thing
2003-06-27Fixup errno handlingEric Andersen
-Erik
2003-06-27Do not let isatty mess up errnoEric Andersen
2003-06-27Cleanup a couple of ugly bitsEric Andersen
2003-06-27Implement mmap64 for armEric Andersen
2003-06-27add mmap64 for i386Eric Andersen
2003-06-27oops. Fix the name so it is "mmap64", not "__mmap64"Eric Andersen
2003-06-27Actually, some arches do support _syscall6, so implement a generic versionEric Andersen
for them... -Erik
2003-06-27Mention that the common mmap64 is a stub and must be overriddenEric Andersen
on a per arch basis using platform specific code
2003-06-27Add missing madvise syscallEric Andersen
2003-06-27Per a patch from Rob McMullen, add getprotoent_r, getprotobyname_r,Eric Andersen
and getprotobynumber_r
2003-06-24Change 'undefined behavior' of fflush() on readonly or reading streamsManuel Novoa III
to match that of current glibc; i.e. don't do anything and return success. Apparently, php calls fflush() on a file opened as readonly before trying to read. Eventually I'll add some config options to flag this and several other instances of nonportable code.
2003-06-17Optionally support the struct tm extension fields.Manuel Novoa III
Add a few misc functions mentioned in time.h. Revert davidm's change regarding using a define for the "/etc/TZ" path, as this is eventually meant to be a configurable extension and not unconditionally supported.
2003-06-17Patch from Ronald Wahl fixing an IPV6 specific problemEric Andersen
with getaddrinfo().
2003-06-16As noted by Peter S. MazingerEric Andersen
After removal of stropts.h none of the files references bits/stropts.h, so it can be removed. Peter
2003-06-16Add memmem().Manuel Novoa III
2003-06-15Implement syscall() for powerpc. Fixup syscall code soEric Andersen
it compiles properly with gcc 3.3. -Erik
2003-06-11Fix arm syscall implementation so it does not blow chunks with gcc 3.3Eric Andersen
-Erik
2003-06-05Patch from Peter S. Mazinger to make the get-needed-libgcc-objectsEric Andersen
script work with newer binutils versions.
2003-06-03Kill the runtime fallback to fork and make it be compile timeEric Andersen
2003-06-03Fix brokenEric Andersen
2003-05-30Clone still had a few little PIC problems....Eric Andersen
2003-05-30In a number of places we erroneously used tests such as '#ifdef PIC' when weEric Andersen
should instead have been testing for '#ifdef __PIC__'. This resulted in NON-PIC code getting mixed into the shared library. Oops!!! -Erik
2003-05-23Sorry. Changed this while fixing the last bug and forgot to change itManuel Novoa III
back. Unfortunately, none of my test cases caught it.
2003-05-15Fix (hopefully) scanf behavior for nul bytes in the stream when processingManuel Novoa III
%c, %s, and %[ specifiers. Note that scanf is undergoing rewrite so I didn't bother optimizing this. I did run all my regression tests though. Set EOF correctly for fmemopen on readonly streams. I really need to check what glibc behavior is for the various open modes though.
2003-05-14Sleep was returning the wrong value because:David McCullough
* nanosleep returns the remaining time, not the time slept * nanosleep only fills out the remaining time if it returns -1 (ie., the sleep was interrupted) Fix from Paul Dale <pauli@snapgear.com>
2003-05-08(__libc_open): Fix wacky indentation.Miles Bader
2003-05-01setjmp was trashing r12 which is bad and can cause apps to crash if they areDavid McCullough
using r12. r12 is supposed to be preserved across C function calls. r0-r7 are trashable :-)
2003-04-29Some small fixups for the h8 support and add the h8s platform support.David McCullough
2003-04-29Fixup __libc_open to use varargs and match the prototype.David McCullough
On the H8 varargs are rather unusual and if you declare a function with varargs, it had better use them or it won't work.
2003-04-29uClibc 0.9.19 has a bug in globfree(). If the previous call toEric Andersen
glob(...,pglob) used the GLOB_DOOFFS flag to reserve the first pglob->gl_offs slots of pglob->gl_pathv, globfree(pglob) would attempt to free the objects pointed to by those slots. If those objects were not on the heap, the system would crash. The attached patch fixes this. Norm
2003-04-23Thierry De Corte notices that when UCLIBC_HAS_FLOAT is disabled, we must alsoEric Andersen
disable drand48, drand48_r, erand48, and erand48_r since they use floats.
2003-04-21Fix SIGTRAP handling on arm. The defination of struct ucontext,Eric Andersen
which was copied from glibc, is wrong. So fix it. -Erik
2003-04-19Patch from Marshall M. Midden:Eric Andersen
It turns out that uClibc's syslog.c does not close sockets when doing retries and when it exits due to errors. This patch fixes it.
2003-04-19Konrad Taro Eisele noticed the sparc struct stat was broken.Eric Andersen
Fix it.
2003-04-16Patch from Liam Girdwood to fix mips profiling when usingEric Andersen
newer gcc versions.
2003-04-02(free_to_heap): Unlock the heap before returning in theMiles Bader
__UCLIBC_UCLINUX_BROKEN_MUNMAP__ case. Fix from YYang1@Winbond.com.tw.
2003-03-11sjhill needs to buy donuts for everyoneEric Andersen
2003-03-11Compliance with MIPS ABI and MIPS kernel changes."Steven J. Hill"
2003-03-07Patch from Stefan Allius:Eric Andersen
fix a couple of gcc 3.3 compiler warnings in gmon.c