summaryrefslogtreecommitdiff
path: root/libc/misc
AgeCommit message (Collapse)Author
2008-06-06Fix hard-to-rigger locking bug in vsyslog():Denis Vlasenko
SIGPIPE handler was attempting to re-acquire an already taken lock. While at it, stop checking for sigaction failure which is not possible here. Sizes: text data bss dec hex filename - 1123 13 2 1138 472 libc/misc/syslog/syslog.o + 1112 13 2 1127 467 libc/misc/syslog/syslog.o Run tested.
2008-06-04Fix typo that prevented "make clean" from removing objects in libc/misc/locale.Bernd Schmidt
2008-06-04This fixes a problem with the move of libc_hidden_proto to string.h.Bernd Schmidt
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>.
2008-06-03syslog.c: fix a buglet in prev-last commit: logic inversion in closelogDenis Vlasenko
2008-06-03syslog.c: fix indentation and style. No code changes.Denis Vlasenko
2008-06-03Fix bug 575 and other small problems noticed along the way.Denis Vlasenko
The bug: this blocks in syslogd is stopped: #include <syslog.h> int main() { int i; for (i = 0; i < 10000; i++) syslog(LOG_INFO, "Testing, disregard...................."); return 0; } Fix: set O_NONBLOCK on fd to "/dev/log". Other fixes: do not try to write to fd -1, do not spin forever or EAGAIN, use constant sockaddr instead of recreating identical one each time, eliminate one intermediate function (SUGPIPE sig handler), use smallints where appropriate, add a few comments. Size: text data bss dec hex filename - 1140 16 21 1177 499 libc/misc/syslog/syslog.o + 1123 13 2 1138 472 libc/misc/syslog/syslog.o
2008-06-03- adds several config-options to allow for turning off certain featuresBernhard Reutner-Fischer
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.
2008-06-03fix trivial mismatch in return type of build_wcs_upper_buffer()Denis Vlasenko
(int/enum). clases bug 3234.
2008-06-01suppress a few "might be used uninitialized" warnings. No code growth.Denis Vlasenko
2008-06-01add missing includes of unistd.h for smallint usageDenis Vlasenko
remove a few duplicate includes of unistd.h
2008-05-30- Avoid warning about undefined preprocessor token. No obj-code changes.Bernhard Reutner-Fischer
2008-05-30- shrink a little bit.Bernhard Reutner-Fischer
text data bss dec hex filename 1176 16 24 1216 4c0 libc/misc/syslog/syslog.o.orig 1140 16 21 1177 499 libc/misc/syslog/syslog.o
2008-05-25__uClibc_main.c: save ~70 bytes by not checking that /dev/nullDenis Vlasenko
is indeed a char device with correct (maj,min). (If it's not such a char device, the system is screwed anyway, nothing can be done about it...) text data bss dec hex filename - 715 4 21 740 2e4 libc/misc/internals/__uClibc_main.o + 644 4 21 669 29d libc/misc/internals/__uClibc_main.o
2008-05-21- fix warning about old-style function definitionBernhard Reutner-Fischer
This could need a pull from upstream to do away with these __STDC__ conditionals.
2008-05-21- fix warning about static not being at the beginning of a declBernhard Reutner-Fischer
2008-05-20replace "if (p) free(p)" by just "free(p)" - free(NULL) is safe.Denis Vlasenko
2008-05-20Introduce and use small[u]int type. Changes in size:Denis Vlasenko
- 79 0 28 107 6b libc/inet/rpc/create_xid.o + 76 0 25 101 65 libc/inet/rpc/create_xid.o - 126 0 4 130 82 libc/misc/assert/__assert.o + 123 0 1 124 7c libc/misc/assert/__assert.o - 648 4 24 676 2a4 libc/misc/internals/__uClibc_main.o + 645 4 21 670 29e libc/misc/internals/__uClibc_main.o - 230 0 4 234 ea libc/stdlib/abort.o + 216 0 1 217 d9 libc/stdlib/abort.o - 129 0 4 133 85 libc/termios/tcgetsid.o + 126 0 1 127 7f libc/termios/tcgetsid.o
2008-05-20- remove old-style definitions. No object-code changes.Bernhard Reutner-Fischer
2008-05-20- silence warningBernhard Reutner-Fischer
2008-05-19Moving libc_hidden_proto's into #ifdef UCLIBC_INTERNAL blockDenis Vlasenko
in string.h and strings.h. This caught unguarded string ops in libc/inet/ethers.c __ether_line_w() function. I will wait for fallout reports for a week or so, then continue converting more libc_hidden_proto's.
2008-05-19Added a bounch of locale fixes.Carmelo Amoroso
* extra/locale/gen_wc8bit.c: use strrchr to parse locale name to handle the case in which it contains a '.' character like ANSI_X3.4-1968 * include/locale.h: use __UCLIBC_HAS_XLOCALE__ to control inclusion of xlocale.h only * libc/misc/ctype/ctype.c: add missing weak_alias for __tolower_l and __toupper_l * libc/misc/locale/locale.c: use strcasecmp (case insensitive) for utf-8 locale name. Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
2008-04-28Experimentally move libc_hidden_proto(time) to time.h.Denis Vlasenko
The only code change observed is actually a case where we were not doing that as needed: 00000000 <__GI_tzset>: -53 push %ebx -e8 00 00 00 00 call 6 <__GI_tzset+0x6> -5b pop %ebx -81 c3 03 00 00 00 add $0x3,%ebx - R_386_GOTPC _GLOBAL_OFFSET_TABLE_ 6a 00 push $0x0 -e8 fc ff ff ff call 10 <__GI_tzset+0x10> - R_386_PLT32 time +e8 fc ff ff ff call 3 <__GI_tzset+0x3> + R_386_PC32 __GI_time 3d ff 4e 98 45 cmp $0x45984eff,%eax 0f 9e c0 setle %al 0f b6 c0 movzbl %al,%eax 50 push %eax -e8 fc ff ff ff call 21 <__GI_tzset+0x21> +e8 fc ff ff ff call 14 <__GI_tzset+0x14> R_386_PC32 _time_tzset 58 pop %eax 5a pop %edx -5b pop %ebx c3 ret No mass migration of libc_hidden_proto(foo) planned. Lets wait for potential fallout first.
2008-04-22Added support for error_print_progname as proposedCarmelo Amoroso
by Will Newton <will.newton@gmail.com>
2008-04-12Functions should be either exported in public .h filesDenis Vlasenko
and marked with libc_hidden_proto/def(), or not be exported in .h files and be hidden (or even static if possible). We have five functions which violate this. Fixing: netdb.h: export ruserpass() rpc/rpc.h: export xdr_accepted_reply() and xdr_rejected_reply() make inet_ntoa_r static function (it is not exported in any .h file) make _time_tzset hidden function (it is not exported in any .h file)
2008-02-12add hidden_proto's for __uc_mallocDenis Vlasenko
(patch by Bernd Schmidt <bernds_cb1 at t-online.de>)
2008-01-09- Fix compilation: semtimedop has 4 args (and not 6)Bernhard Reutner-Fischer
2008-01-05blah, enable the stupid hidden proto for fcntlMike Frysinger
2008-01-05krichy writes in 292:Mike Frysinger
I noticed, that in libc/misc/syslog/syslog.c when the syslog socket is opened, the close-on-exec flag is not set, as it is in gnu libc. This enables that behavior.
2008-01-05implement semtimedop for #927Mike Frysinger
2008-01-05michael_d writes in #1869: make sure GNU error functions output 'program: ' ↵Mike Frysinger
as documented in the function api
2007-12-07Removed pointless initialization to 0 of DIR fieldsCarmelo Amoroso
after having added memset. Thanks to Peter Mazinger for pointing this out. Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
2007-12-05Fix opendir problem when statically linked due to a missingCarmelo Amoroso
initialization of the mutex field within DIR struct. When linked dynamically instead, __pthread_mutex_init will initialize the mutex itself. Without this fix, any call to readdir will stuck forever trying to acquire the mutex. Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
2007-11-23Add some necessary Makefile bits for UCLIBC_FORMAT_FLAT_SEP_DATA.Bernd Schmidt
2007-11-23Some shared flat improvements.Bernd Schmidt
Fix minor errors: - UCLIBC_SHARED_FLAT_ID instead of SHARED_FLAT_ID - use -Wl,-shared-lib-id properly Use libc_so.a as the source for the shared libc, in order to be able to use -mleaf-id-shared-library on the Blackfin.
2007-11-10Do not return error when fprintf returns 0 in addmntent().Khem Raj
fprintf is considered failing if the return is less than 0
2007-09-15also fix bug 1012 by moschny in 64bit version of readdirMike Frysinger
2007-09-15bug 1310: drop hidden aliases to data since some arches crap with this due ↵Mike Frysinger
to copy relocs
2007-07-30make regex_old.c, ruserpass.c use __uc_malloc,Denis Vlasenko
replace "buf = malloc(BUFSIZ); if (!buf) abort();" by __uc_malloc elsewhere. With last 7 patches together uclibc has 3k of static data total with fairly big .config and with 2k being used for 2 x BUFSIZ stdio buffer: text data bss dec hex filename 114 132 2048 2294 8f6 _stdio.o (ex lib/libc.a) total data 593 total bss 3062
2007-07-30make utent.c, getpass.c use __uc_mallocDenis Vlasenko
2007-06-01change the auxvt code from being dependent on MMU to !LDSO as auxvt things ↵Mike Frysinger
are ELF-specific, not MMU-specific
2007-05-06Nickolai Zeldovich writes: if the temp name already exists, then the retry ↵Mike Frysinger
code does not create a new temp name as the code to do so is outside of the retry loop
2007-03-08svn 17941/17943 broke the build. 18032 made the threaded case compile Rob Landley
again, this makes the non-threaded case compile again. I have no idea if this is the proper fix, I'm just tired if it not compiling for two weeks.
2007-03-07Fix a build break due to errno and h_errno being unresolved symbols. Rob Landley
(No idea if this is the right fix but it's something for now.)
2007-02-22need to double check internal errno handling wrt libpthreadMike Frysinger
2007-02-21add missing file for previous commit as pointed out by Peter KjellerstedtMike Frysinger
2007-02-21redo errno handling so that it should work both in thread and non-threaded ↵Mike Frysinger
situations
2007-01-30- should look if LFS is enabled as suggested by pkj in #1131. This generates ↵Bernhard Reutner-Fischer
identical cc1 input for LFS enabled (compared to before r17652) but makes sure that we pickup the non-LFS if LFS is turned off (like r17652 did in this case).
2007-01-29- fix compilation of GNU glob with !LFSBernhard Reutner-Fischer
Sounds like a typo, really
2007-01-11Peter Mazinger pointed out that my last commit was faulty.Joakim Tjernlund
This should fix it.
2007-01-10Fix SEGV for static builds in exit() path.Joakim Tjernlund
Leave the now obsolete libc/misc/pthread dir in for now.