diff options
49 files changed, 796 insertions, 293 deletions
@@ -4,6 +4,128 @@ Shift marked &errno down on big-endian instead of up. * elf/tst-stackguard1.c (do_test): Fix a typo. +2005-08-08 Ulrich Drepper <drepper@redhat.com> + + * nscd/cache.c (cache_add): Commit hash table and header to disk. + + * nscd/mem.c (mempool_alloc): Use posix_fallocate instead of ftruncate. + * nscd/connections.c (nscd_init): Likewise. + +2005-08-08 Jakub Jelinek <jakub@redhat.com> + + * stdio-common/fxprintf.c: Include libioP.h. + + * posix/bits/unistd.h (confstr, getgroups, ttyname_r, gethostname, + getdomainname): Add __NTH. + * stdlib/bits/stdlib.h (ptsname_r, wctomb, mbstowcs, wcstombs): + Likewise. + (realpath): Likewise. Use __const instead of const. Add __restrict + keywords. + * socket/bits/socket2.h (recvfrom): Add __restrict keyword to __buf. + * wcsmbs/bits/wchar2.h (wmemcpy, wmemmove, wmempcpy, wmemset, + wcscpy, wcpcpy, wcsncpy, wcpncpy, wcscat, wcsncat, vswprintf, wcrtomb, + mbsrtowcs, wcsrtombs, mbsnrtowcs, wcsnrtombs): Add __NTH. + * string/bits/string3.h (__memset_ichk): Likewise. + (__memcpy_ichk, __memmove_ichk, __mempcpy_ichk, __strcpy_ichk, + __stpcpy_ichk, __strncpy_ichk, stpncpy, __strcat_ichk, + __strncat_ichk): Likewise. Use __const instead of const. + (__stpncpy_chk): Use __const instead of const. + (__stpncpy_alias): Use __REDIRECT_NTH instead of __REDIRECT. + +2005-08-08 Ulrich Drepper <drepper@redhat.com> + Jakub Jelinek <jakub@redhat.com> + + * nscd/mem.c (BLOCK_ALIGN_LOG, BLOCK_ALIGN, BLOCK_ALIGN_M1): Move + definitions to... + * nscd/nscd.h (BLOCK_ALIGN_LOG, BLOCK_ALIGN, BLOCK_ALIGN_M1): ...here. + * nscd/connections.c (usekey): New enum. + (check_use, verify_persistent_db): New functions. + (nscd_init): If persistent database is corrupted, unlink it and + recreate rather than falling back to non-persistent database. + Call verify_persistent_db. Avoid overflows in total computation. + +2005-08-08 Ulrich Drepper <drepper@redhat.com> + + * iconvdata/utf-16.c (PREPARE_LOOP): Minor cleanups to make code + better readable. Avoid passing var to loop function, it's not + necessary at all. + +2005-08-07 Ulrich Drepper <drepper@redhat.com> + + * elf/elf.h (DT_ALPHA_PLTRO): Use symbolic name in DT_ALPHA_PLTRO + definition. + +2005-08-05 Ulrich Drepper <drepper@redhat.com> + + * timezone/checktab.awk: Update from tzcode2005k. + * timezone/private.h: Likewise. + * timezone/scheck.c: Likewise. + * timezone/tzselect.ksh: Likewise. + * timezone/zdump.c: Likewise. + * timezone/zic.c: Likewise. + * timezone/africa: Update from tzdata2005k. + * timezone/antarctica: Likewise. + * timezone/asia: Likewise. + * timezone/australasia: Likewise. + * timezone/europe: Likewise. + * timezone/iso3166.tab: Likewise. + * timezone/leapseconds: Likewise. + * timezone/northamerica: Likewise. + * timezone/solar87: Likewise. + * timezone/solar88: Likewise. + * timezone/solar89: Likewise. + * timezone/southamerica: Likewise. + * timezone/zone.tab: Likewise. + +2005-08-05 Roland McGrath <roland@redhat.com> + + * mach/shortcut.awk: Ignore `weak_alias' lines. + Reported by Alfred M. Szmidt <ams@gnu.org>. + + * sysdeps/mach/hurd/mig-reply.c (reply_port): Don't use ?: as lvalue. + Reported by Alfred M. Szmidt <ams@gnu.org>. + +2005-08-03 Dwayne Grant McConnell <dgm69@us.ibm.com> + + * sysdeps/powerpc/powerpc32/Makefile (CFLAGS-initfini.s): + Use +=, not =, to append. Remove duplicate flags. + * sysdeps/powerpc/powerpc64/Makefile (CFLAGS-initfini.s): + Likewise. Fix comments. + +2005-08-01 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Restart system + call if it returned EINTR. + +2005-07-31 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/x86_64/dl-machine.h (elf_machine_load_address): Move + helper variable into .data.rel.ro. Simplify the code. Extend + comment to explain prelinking. + +2005-07-31 Andreas Jaeger <aj@suse.de> + + * include/bits/syslog.h: New file. + +2005-07-30 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-load.c [__WORDSIZE==64] (FILEBUF_SIZE): Adjust the value + up. We have more program header entries now and the note section + was normally not loaded. + + * nis/nis_subr.c: Some minor code cleanups. + +2005-07-29 Ulrich Drepper <drepper@redhat.com> + + * misc/bits/syslog.h: New file. + * misc/sys/syslog.h: Include <bits/syslog.h> for fortification. + * misc/Makefile (headers): Add bits/syslog.h. + * include/sys/syslog.h: Add __vsyslog_chk prototype and hidden_proto. + * sysdeps/generic/syslog.c: Change vsyslog function to __vsyslog_chk. + Call __vfprintf_chk if necessary. Make vsyslog a wrapper. Add + __syslog_chk. + * misc/Versions: Export __syslog_chk and __vsyslog_chk. + 2005-07-29 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/dl-osinfo.h: Include errno.h, hp-timing.h, @@ -17,11 +139,13 @@ 2005-07-28 Thomas Schwinge <schwinge@nic-nac-project.de> + [BZ #1137] * misc/error.c [_LIBC]: Include <stdbool.h> and <stdint.h>. 2005-07-28 Ulrich Drepper <drepper@redhat.com> - * nis/nis_xdr.c: Help gcc to generate unnecessary wrapper functions. + * nis/nis_xdr.c: Help gcc to avoid generating unnecessary wrapper + functions. 2005-07-28 Jakub Jelinek <jakub@redhat.com> @@ -121,6 +245,7 @@ 2005-07-20 Ulrich Drepper <drepper@redhat.com> + [BZ #1138] * sysdeps/x86_64/fpu/libm-test-ulps: Adjust expected atan2f results. * sysdeps/powerpc/fpu/libm-test-ulps: Likewise. * sysdeps/s390/fpu/libm-test-ulps: Likewise. @@ -128,6 +253,7 @@ 2005-07-20 Bob Wilson <bob.wilson@acm.org> Darin Petkov <darin@tensilica.com> + [BZ #1138] * sysdeps/ieee754/flt-32/e_atan2f.c (pi_lo): Correct exponent value. 2005-07-20 Jakub Jelinek <jakub@redhat.com> @@ -215,6 +341,7 @@ * sunrpc/xdr_ref.c: Likewise. * sysdeps/generic/wordexp.c: Likewise. + [BZ #1137] * misc/Makefile: Add rules to build and run tst-error1. * misc/tst-error1.c: New file. * misc/error.c: Fix memory leak and possibly endless loop. diff --git a/elf/dl-load.c b/elf/dl-load.c index d8b3a56d0d..677174d036 100644 --- a/elf/dl-load.c +++ b/elf/dl-load.c @@ -122,19 +122,19 @@ int __stack_prot attribute_hidden attribute_relro question is how large are the ELF and program header combined. The ELF header 32-bit files is 52 bytes long and in 64-bit files is 64 bytes long. Each program header entry is again 32 and 56 bytes - long respectively. I.e., even with a file which has 7 program - header entries we only have to read 512B. Add to this a bit of - margin for program notes and reading 512B and 640B for 32-bit and - 64-bit files respecitvely is enough. If this heuristic should - really fail for some file the code in `_dl_map_object_from_fd' - knows how to recover. */ + long respectively. I.e., even with a file which has 10 program + header entries we only have to read 372B/624B respectively. Add to + this a bit of margin for program notes and reading 512B and 832B + for 32-bit and 64-bit files respecitvely is enough. If this + heuristic should really fail for some file the code in + `_dl_map_object_from_fd' knows how to recover. */ struct filebuf { ssize_t len; #if __WORDSIZE == 32 # define FILEBUF_SIZE 512 #else -# define FILEBUF_SIZE 640 +# define FILEBUF_SIZE 832 #endif char buf[FILEBUF_SIZE] __attribute__ ((aligned (__alignof (ElfW(Ehdr))))); }; @@ -1867,7 +1867,7 @@ typedef Elf32_Addr Elf32_Conflict; #define LITUSE_ALPHA_TLS_LDM 5 /* Legal values for d_tag of Elf64_Dyn. */ -#define DT_ALPHA_PLTRO 0x70000000 +#define DT_ALPHA_PLTRO (DT_LOPROC + 0) #define DT_ALPHA_NUM 1 /* PowerPC specific declarations */ diff --git a/fedora/branch.mk b/fedora/branch.mk index 989c0d7e3c..34b90fb2b7 100644 --- a/fedora/branch.mk +++ b/fedora/branch.mk @@ -3,5 +3,5 @@ glibc-branch := fedora glibc-base := HEAD DIST_BRANCH := devel COLLECTION := dist-fc4 -fedora-sync-date := 2005-07-29 15:31 UTC -fedora-sync-tag := fedora-glibc-20050729T1531 +fedora-sync-date := 2005-08-08 21:26 UTC +fedora-sync-tag := fedora-glibc-20050808T2126 diff --git a/iconvdata/utf-16.c b/iconvdata/utf-16.c index 6b0dd9c8f5..7f6c760900 100644 --- a/iconvdata/utf-16.c +++ b/iconvdata/utf-16.c @@ -1,5 +1,5 @@ /* Conversion module for UTF-16. - Copyright (C) 1999, 2000-2002, 2003 Free Software Foundation, Inc. + Copyright (C) 1999, 2000-2002, 2003, 2005 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999. @@ -44,10 +44,9 @@ #define PREPARE_LOOP \ enum direction dir = ((struct utf16_data *) step->__data)->dir; \ enum variant var = ((struct utf16_data *) step->__data)->var; \ - int swap; \ - if (FROM_DIRECTION && var == UTF_16) \ + if (__builtin_expect (data->__invocation_counter == 0, 0) && var == UTF_16) \ { \ - if (data->__invocation_counter == 0) \ + if (FROM_DIRECTION) \ { \ /* We have to find out which byte order the file is encoded in. */ \ if (inptr + 2 > inend) \ @@ -63,19 +62,18 @@ *inptrp = inptr += 2; \ } \ } \ - } \ - else if (!FROM_DIRECTION && var == UTF_16 && !data->__internal_use \ - && data->__invocation_counter == 0) \ - { \ - /* Emit the Byte Order Mark. */ \ - if (__builtin_expect (outbuf + 2 > outend, 0)) \ - return __GCONV_FULL_OUTPUT; \ + else if (!FROM_DIRECTION && !data->__internal_use) \ + { \ + /* Emit the Byte Order Mark. */ \ + if (__builtin_expect (outbuf + 2 > outend, 0)) \ + return __GCONV_FULL_OUTPUT; \ \ - put16u (outbuf, BOM); \ - outbuf += 2; \ + put16u (outbuf, BOM); \ + outbuf += 2; \ + } \ } \ - swap = ((struct utf16_data *) step->__data)->swap; -#define EXTRA_LOOP_ARGS , var, swap + int swap = ((struct utf16_data *) step->__data)->swap; +#define EXTRA_LOOP_ARGS , swap /* Direction of the transformation. */ @@ -267,7 +265,7 @@ gconv_end (struct __gconv_step *data) } #define LOOP_NEED_FLAGS #define EXTRA_LOOP_DECLS \ - , enum variant var, int swap + , int swap #include <iconv/loop.c> @@ -328,8 +326,6 @@ gconv_end (struct __gconv_step *data) } \ else \ { \ - uint16_t u2; \ - \ /* It's a surrogate character. At least the first word says \ it is. */ \ if (__builtin_expect (inptr + 4 > inend, 0)) \ @@ -341,7 +337,7 @@ gconv_end (struct __gconv_step *data) } \ \ inptr += 2; \ - u2 = get16 (inptr); \ + uint16_t u2 = get16 (inptr); \ if (__builtin_expect (u2 < 0xdc00, 0) \ || __builtin_expect (u2 > 0xdfff, 0)) \ { \ @@ -358,7 +354,7 @@ gconv_end (struct __gconv_step *data) } #define LOOP_NEED_FLAGS #define EXTRA_LOOP_DECLS \ - , enum variant var, int swap + , int swap #include <iconv/loop.c> diff --git a/include/bits/syslog.h b/include/bits/syslog.h new file mode 100644 index 0000000000..060b893482 --- /dev/null +++ b/include/bits/syslog.h @@ -0,0 +1 @@ +#include <misc/bits/syslog.h> diff --git a/include/sys/syslog.h b/include/sys/syslog.h index e018225333..8b0d59dad6 100644 --- a/include/sys/syslog.h |
