Updated to fedora-glibc-20061128T1037
[glibc.git] / ChangeLog
blob2ade0a332cbadfc21fdc8e0e9edd38d77c852a8a
1 2006-11-27  Jakub Jelinek  <jakub@redhat.com>
3         [BZ #3559]
4         * sunrpc/svc_run.c (svc_run): Fail instead of segfaulting if
5         malloc crashed.  Don't allocate memory unnecessarily in each
6         loop.
8 2006-10-21  Jakub Jelinek  <jakub@redhat.com>
10         * resolv/mapv4v6addr.h (map_v4v6_address): Fix last change.
12 2006-11-20  Ulrich Drepper  <drepper@redhat.com>
14         * resolv/mapv4v6addr.h (map_v4v6_address): Optimize a bit.
16 2006-11-18  Bruno Haible  <bruno@clisp.org>
18         * sysdeps/unix/sysv/linux/i386/getgroups.c (__getgroups): Invoke
19         __sysconf only after having tried to call getgroups32.
21 2006-11-19  Ulrich Drepper  <drepper@redhat.com>
23         * nss/nss_files/files-hosts.c (LINE_PARSER): Support IPv6-style
24         addresses for IPv4 queries if they can be mapped.
26 2006-11-16  Jakub Jelinek  <jakub@redhat.com>
28         * sysdeps/x86_64/fpu/s_copysignf.S (__copysignf): Switch to .text.
29         * sysdeps/x86_64/fpu/s_copysign.S (__copysign): Likewise.
30         (signmask): Add .size directive.
31         (othermask): Add .type directive.
33 2006-11-14  Ulrich Drepper  <drepper@redhat.com>
35         * po/nl.po: Update from translation team.
37         * timezone/zdump.c: Redo fix for BZ #3137.
39 2006-11-14  Jakub Jelinek  <jakub@redhat.com>
41         * nss/nss_files/files-alias.c (get_next_alias): Set line back
42         to first_unused after parsing :include: file.
44 2006-11-10  Ulrich Drepper  <drepper@redhat.com>
46         * timezone/africa: Update from tzdata2006o.
47         * timezone/antarctica: Likewise.
48         * timezone/asia: Likewise.
49         * timezone/australasia: Likewise.
50         * timezone/backward: Likewise.
51         * timezone/europe: Likewise.
52         * timezone/iso3166.tab: Likewise.
53         * timezone/northamerica: Likewise.
54         * timezone/southamerica: Likewise.
55         * timezone/zone.tab: Likewise.
57         * time/tzfile.c (__tzfile_read): Extend to handle new file format
58         on machines with 64-bit time_t.
60         * timezone/checktab.awk: Update from tzcode2006o.
61         * timezone/ialloc.c: Likewise.
62         * timezone/private.h: Likewise.
63         * timezone/scheck.c: Likewise.
64         * timezone/tzfile.h: Likewise.
65         * timezone/tzselect.ksh: Likewise.
66         * timezone/zdump.c: Likewise.
67         * timezone/zic.c: Likewise.
69         [BZ #3483]
70         * elf/ldconfig.c (main): Call setlocale and textdomain.
71         Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
73         [BZ #3480]
74         * manual/argp.texi: Fix typos.
75         * manual/charset.texi: Likewise.
76         * manual/errno.texi: Likewise.
77         * manual/filesys.texi: Likewise.
78         * manual/lang.texi: Likewise.
79         * manual/maint.texi: Likewise.
80         * manual/memory.texi: Likewise.
81         * manual/message.texi: Likewise.
82         * manual/resource.texi: Likewise.
83         * manual/search.texi: Likewise.
84         * manual/signal.texi: Likewise.
85         * manual/startup.texi: Likewise.
86         * manual/stdio.texi: Likewise.
87         * manual/sysinfo.texi: Likewise.
88         * manual/syslog.texi: Likewise.
89         * manual/time.texi: Likewise.
90         Patch by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
92         [BZ #3465]
93         * sunrpc/clnt_raw.c: Minimal message improvements.
94         * sunrpc/pm_getmaps.c: Likewise.
95         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
96         * nis/nis_print_group_entry.c: Likewise.
97         * locale/programs/repertoire.c: Likewise.
98         * locale/programs/charmap.c: Likewise.
99         * malloc/memusage.sh: Likewise.
100         * elf/dl-deps.c: Likewise.
101         * locale/programs/ld-collate.c: Likewise.
102         * libio/vswprintf.c: Likewise.
103         * malloc/memusagestat.c: Likewise.
104         * sunrpc/auth_unix.c: Likewise.
105         * sunrpc/rpc_main.c: Likewise.
106         * nscd/cache.c: Likewise.
107         * locale/programs/repertoire.c: Unify output messages.
108         * locale/programs/charmap.c: Likewise.
109         * locale/programs/ld-ctype.c: Likewise.
110         * locale/programs/ld-monetary.c: Likewise.
111         * locale/programs/ld-numeric.c: Likewise.
112         * locale/programs/ld-time.c: Likewise.
113         * elf/ldconfig.c: Likewise.
114         * nscd/selinux.c: Likewise.
115         * elf/cache.c: Likewise.
116         Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
118         [BZ #3451]
119         * sysdeps/i386/fpu/bits/mathinline.h (floor): Make rounding mode
120         change atomic.
121         (ceil): Likewise.
123 2006-11-10  Jakub Jelinek  <jakub@redhat.com>
125         * string/strxfrm_l.c (STRXFRM): Fix trailing \1 optimization
126         if N is one bigger than return value.
127         * string/tst-strxfrm2.c (do_test): Also test strxfrm with l1 + 1
128         and l1 last arguments, if buf is defined, verify the return value
129         equals to strlen (buf) and verify no byte beyond passed length
130         is modified.
132 2006-11-10  Ulrich Drepper  <drepper@redhat.com>
134         * po/sv.po: Update from translation team.
136 2006-11-09  Ulrich Drepper  <drepper@redhat.com>
138         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word): Add
139         noinline attribute.
141 2006-11-10  Jakub Jelinek  <jakub@redhat.com>
143         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Add
144         noinline attribute.
146         * sysdeps/gnu/siglist.c (__old_sys_siglist, __old_sys_sigabbrev):
147         Use __new_sys_siglist instead of _sys_siglist_internal as
148         second macro argument.
149         (_old_sys_siglist): Use declare_symbol_alias macro instead of
150         strong_alias.
152 2006-11-09  Ulrich Drepper  <drepper@redhat.com>
154         [BZ #3493]
155         * posix/unistd.h (sysconf): Remove const attribute.
157         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Fix test for
158         temporary or deprecated addresses.
159         Patch by Sridhar Samudrala <sri@us.ibm.com>.
161         * string/Makefile (tests): Add tst-strxfrm2.
162         * string/tst-strxfrm2.c: New file.
164 2006-10-09  Jakub Jelinek  <jakub@redhat.com>
166         * elf/dl-debug.c (_dl_debug_initialize): Check r->r_map for 0
167         rather than r->r_brk.
169 2006-11-08  Jakub Jelinek  <jakub@redhat.com>
171         * string/strxfrm_l.c (STRXFRM): Do the trailing \1 removal
172         optimization even if needed > n.
174         * elf/dl-load.c (decompose_rpath): Return bool rather than void.
175         If l->l_name is on inhibit_rpath list, set sps->dirs to -1 and
176         return false, otherwise return true.
177         (cache_rpath): Return decompose_rpath return value.
179 2006-11-07  Jakub Jelinek  <jakub@redhat.com>
181         * include/libc-symbols.h (declare_symbol): Rename to...
182         (declare_symbol_alias): ... this.  Add ORIGINAL argument, imply
183         strong_alias (ORIGINAL, SYMBOL) in asm to make sure it preceedes
184         .size directive.
185         * sysdeps/gnu/errlist-compat.awk: Adjust for declare_symbol_alias
186         changes.
187         * sysdeps/gnu/siglist.c: Likewise.
189 2006-11-03  Steven Munroe  <sjmunroe@us.ibm.com>
191         * sysdeps/powerpc/fpu/bits/mathinline.h
192         [__LIBC_INTERNAL_MATH_INLINES]: Moved to ...
193         * sysdeps/powerpc/fpu/math_private.h: ...here.  New file.
195 2006-11-05  Ulrich Drepper  <drepper@redhat.com>
197         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word):
198         Update handling of cache descriptor 0x49 for new models.
199         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word):
200         Likewise.
202 2006-11-02  Jakub Jelinek  <jakub@redhat.com>
204         * malloc/memusage.c (dest): Reset not_me back to false after
205         printing statistics.
207 2006-11-02  Ulrich Drepper  <drepper@redhat.com>
209         * configure.in: Work around ld --help change and avoid -z relro
210         test completely if the architecture doesn't care about security.
212 2006-11-01  Ulrich Drepper  <drepper@redhat.com>
214         * po/sv.po: Update from translation team.
216 2006-10-31  Ulrich Drepper  <drepper@redhat.com>
218         * stdlib/atexit.c (atexit): Don't mark as hidden when used to
219         generate compatibility version.
221 2006-10-29  Ulrich Drepper  <drepper@redhat.com>
223         * configure.in: Relax -z relro requirement a bit.
225         * po/sv.po: Update from translation team.
227 2006-10-29  Jakub Jelinek  <jakub@redhat.com>
229         * elf/dl-sym.c (do_sym): Use RTLD_SINGLE_THREAD_P.
230         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Likewise.
231         * elf/dl-close.c (_dl_close_worker): Likewise.
232         * elf/dl-open.c (_dl_open_worker): Likewise.
233         * sysdeps/generic/sysdep-cancel.h (RTLD_SINGLE_THREAD_P): Define.
235 2006-10-27  Ulrich Drepper  <drepper@redhat.com>
237         * configure.in: Require assembler support for visibility, compiler
238         support for visibility and aliases, linker support for various -z
239         options.
240         * Makeconfig: Remove conditional code which now is unnecessary.
241         * config.h.in: Likewise.
242         * config.make.in: Likewise.
243         * dlfcn/Makefile: Likewise.
244         * elf/Makefile: Likewise.
245         * elf/dl-load.c: Likewise.
246         * elf/rtld.c: Likewise.
247         * include/libc-symbols.h: Likewise.
248         * include/stdio.h: Likewise.
249         * io/Makefile: Likewise.
250         * io/fstat.c: Likewise.
251         * io/fstat64.c: Likewise.
252         * io/fstatat.c: Likewise.
253         * io/fstatat64.c: Likewise.
254         * io/lstat.c: Likewise.
255         * io/lstat64.c: Likewise.
256         * io/mknod.c: Likewise.
257         * io/mknodat.c: Likewise.
258         * io/stat.c: Likewise.
259         * io/stat64.c: Likewise.
260         * libio/stdio.c: Likewise.
261         * nscd/Makefile: Likewise.
262         * stdlib/Makefile: Likewise.
263         * stdlib/atexit.c: Likewise.
264         * sysdeps/generic/ldsodefs.h: Likewise.
265         * sysdeps/i386/dl-machine.h: Likewise.
266         * sysdeps/i386/sysdep.h: Likewise.
267         * sysdeps/i386/i686/memcmp.S: Likewise.
268         * sysdeps/powerpc/powerpc32/sysdep.h: Likewise.
269         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
270         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
272         * Makerules: USE_TLS support is now default.
273         * tls.make.c: Likewise.
274         * csu/Versions: Likewise.
275         * csu/libc-start.c: Likewise.
276         * csu/libc-tls.c: Likewise.
277         * csu/version.c: Likewise.
278         * dlfcn/dlinfo.c: Likewise.
279         * elf/dl-addr.c: Likewise.
280         * elf/dl-cache.c: Likewise.
281         * elf/dl-close.c: Likewise.
282         * elf/dl-iteratephdr.c: Likewise.
283         * elf/dl-load.c: Likewise.
284         * elf/dl-lookup.c: Likewise.
285         * elf/dl-object.c: Likewise.
286         * elf/dl-open.c: Likewise.
287         * elf/dl-reloc.c: Likewise.
288         * elf/dl-support.c: Likewise.
289         * elf/dl-sym.c: Likewise.
290         * elf/dl-sysdep.c: Likewise.
291         * elf/dl-tls.c: Likewise.
292         * elf/ldconfig.c: Likewise.
293         * elf/rtld.c: Likewise.
294         * elf/tst-tls-dlinfo.c: Likewise.
295         * elf/tst-tls1.c: Likewise.
296         * elf/tst-tls10.h: Likewise.
297         * elf/tst-tls14.c: Likewise.
298         * elf/tst-tls2.c: Likewise.
299         * elf/tst-tls3.c: Likewise.
300         * elf/tst-tls4.c: Likewise.
301         * elf/tst-tls5.c: Likewise.
302         * elf/tst-tls6.c: Likewise.
303         * elf/tst-tls7.c: Likewise.
304         * elf/tst-tls8.c: Likewise.
305         * elf/tst-tls9.c: Likewise.
306         * elf/tst-tlsmod1.c: Likewise.
307         * elf/tst-tlsmod13.c: Likewise.
308         * elf/tst-tlsmod13a.c: Likewise.
309         * elf/tst-tlsmod14a.c: Likewise.
310         * elf/tst-tlsmod2.c: Likewise.
311         * elf/tst-tlsmod3.c: Likewise.
312         * elf/tst-tlsmod4.c: Likewise.
313         * elf/tst-tlsmod5.c: Likewise.
314         * elf/tst-tlsmod6.c: Likewise.
315         * include/errno.h: Likewise.
316         * include/link.h: Likewise.
317         * include/tls.h: Likewise.
318         * locale/global-locale.c: Likewise.
319         * locale/localeinfo.h: Likewise.
320         * malloc/arena.c: Likewise.
321         * malloc/hooks.c: Likewise.
322         * malloc/malloc.c: Likewise.
323         * resolv/Versions: Likewise.
324         * sysdeps/alpha/dl-machine.h: Likewise.
325         * sysdeps/alpha/libc-tls.c: Likewise.
326         * sysdeps/generic/ldsodefs.h: Likewise.
327         * sysdeps/generic/tls.h: Likewise.
328         * sysdeps/i386/dl-machine.h: Likewise.
329         * sysdeps/ia64/dl-machine.h: Likewise.
330         * sysdeps/ia64/libc-tls.c: Likewise.
331         * sysdeps/mach/hurd/fork.c: Likewise.
332         * sysdeps/mach/hurd/i386/tls.h: Likewise.
333         * sysdeps/powerpc/powerpc32/dl-machine.c: Likwise.
334         * sysdeps/powerpc/powerpc32/dl-machine.h: Likewise.
335         * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
336         * sysdeps/s390/libc-tls.c: Likewise.
337         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
338         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
339         * sysdeps/sh/dl-machine.h: Likewise.
340         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
341         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
342         * sysdeps/x86_64/dl-machine.h: Likewise.
344         * elf/dl-close.c (_dl_close_worker): Renamed from _dl_close and
345         split out locking and parameter checking.
346         (_dl_close): Call _dl_close_worker after locking and checking.
347         * elf/dl-open.c (_dl_open): Call _dl_close_worker instead of
348         _dl_close.
349         * elf/Makefile: Add rules to build and run tst-thrlock.
350         * elf/tst-thrlock.c:  New file.
352         [BZ #3426]
353         * stdlib/stdlib.h: Adjust comment for canonicalize_file_name to
354         reality.
356         [BZ #3429]
357         * elf/dl-open.c (dl_open_worker): Keep holding dl_load_lock until
358         we are sure we do not need it anymore for _dl_close.  Also move
359         the asserts inside the lock region.
360         Patch mostly by Suzuki <suzuki@in.ibm.com>.
362 2006-10-27  Jakub Jelinek  <jakub@redhat.com>
364         * elf/dl-lookup.c (_dl_debug_bindings): Remove unused symbol_scope
365         argument.
366         (_dl_lookup_symbol_x): Adjust caller.
368         * sysdeps/generic/ldsodefs.h (struct link_namespaces): Remove
369         _ns_global_scope.
370         * elf/rtld.c (dl_main): Don't initialize _ns_global_scope.
372         * elf/dl-libc.c: Revert l_scope name changes.
373         * elf/dl-load.c: Likewise.
374         * elf/dl-object.c: Likewise.
375         * elf/rtld.c: Likewise.
376         * elf/dl-close.c (_dl_close): Likewise.
377         * elf/dl-open.c (dl_open_worker): Likewise.  If not SINGLE_THREAD_P,
378         always use __rtld_mrlock_{change,done}.  Always free old scope list
379         here if not l_scope_mem.
380         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Revert l_scope name
381         change.  Never free scope list here.  Just __rtld_mrlock_lock before
382         the lookup and __rtld_mrlock_unlock it after the lookup.
383         * elf/dl-sym.c: Likewise.
384         * include/link.h (struct r_scoperec): Remove.
385         (struct link_map): Replace l_scoperec with l_scope, l_scoperec_mem
386         with l_scope_mem and l_scoperec_lock with l_scope_lock.
388 2006-10-25  Ulrich Drepper  <drepper@redhat.com>
390         * sysdeps/gnu/netinet/tcp.h: Define TCP_CONGESTION.
392 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
394         * configure.in: Disable building profile libraries by default.
396 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
398         * sunrpc/xdr_mem.c (xdrmem_setpos): Don't compare addresses
399         as signed longs, check for x_base + pos overflow.
400         * sunrpc/Makefile (tests): Add tst-xdrmem2.
401         * sunrpc/tst-xdrmem2.c: New test.
403 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
405         * elf/dl-lookup.c (_dl_lookup_symbol_x): Add warning to
406         _dl_lookup_symbol_x code.
408 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
410         * elf/dl-runtime.c: Include sysdep-cancel.h.
411         (_dl_fixup, _dl_profile_fixup): Use __rtld_mrlock_* and
412         scoperec->nusers only if !SINGLE_THREAD_P.  Use atomic_*
413         instead of catomic_* macros.
414         * elf/dl-sym.c: Include sysdep-cancel.h.
415         (do_sym): Use __rtld_mrlock_* and scoperec->nusers only
416         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
417         * elf/dl-close.c: Include sysdep-cancel.h.
418         (_dl_close): Use __rtld_mrlock_* and scoperec->nusers only
419         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
420         * elf/dl-open.c: Include sysdep-cancel.h.
421         (dl_open_worker): Use __rtld_mrlock_* and scoperec->nusers only
422         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
424 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
426         [BZ #3313]
427         * malloc/malloc.c (malloc_consolidate): Set maxfb to address of last
428         fastbin rather than end of fastbin array.
430 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
432         * sysdeps/i386/i486/bits/atomic.h (catomic_decrement): Use correct
433         body macro.
434         * sysdeps/x86_64/bits/atomic.h
435         (__arch_c_compare_and_exchange_val_64_acq): Add missing casts.
436         (catomic_decrement): Use correct body macro.
438 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
440         * include/atomic.h: Add a unique prefix to all local variables
441         in macros.
442         * csu/tst-atomic.c (do_test): Test also catomic_* macros.
444 2006-10-16  Ulrich Drepper  <drepper@redhat.com>
446         [BZ #3369]
447         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Fix typos in rules 4
448         and 7.
450 2006-10-14  Ulrich Drepper  <drepper@redhat.com>
452         * resolv/arpa/nameser.h: Document that ns_t_a6 is deprecated.
454 2006-10-13  Ulrich Drepper  <drepper@redhat.com>
456         [BZ #3313]
457         * malloc/malloc.c (malloc_consolidate): Don't use get_fast_max to
458         determine highest fast bin to consolidate, always look into all of
459         them.
460         (do_check_malloc_state): Only require for empty bins for large
461         sizes in main arena.
463         * libio/stdio.h: Add more __wur attributes.
465         * elf/dl-minimal.c (realloc): Optimize last patch.
467 2006-10-12  Richard Sandiford  <richard@codesourcery.com>
469         [BZ #3352]
470         * elf/dl-minimal.c (realloc): Let malloc() return a new pointer,
471         and use memcpy() if it does.
473 2006-11-12  Andreas Jaeger  <aj@suse.de>
475         [BZ #2510]
476         * manual/search.texi (Hash Search Function): Clarify.
477         (Array Search Function): Clarify.
479 2006-11-12  Joseph Myers  <joseph@codesourcery.com>
481         [BZ #2830]
482         * math/atest-exp.c (main): Cast hex value to mp_limb_t before
483         shifting.
484         * math/atest-exp2.c (read_mpn_hex): Likewise.
485         * math/atest-sincos.c (main): Likewise.
487 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
489         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_pwait.
490         * sysdeps/unix/sysv/linux/sys/epoll.h: Declare epoll_pwait.
491         * sysdeps/unix/sysv/linux/Versions (libc): Add epoll_pwait for
492         version GLIBC_2.6.
493         * Versions.def: Add GLIBC_2.6 for libc.
495         * sysdeps/unix/sysv/linux/i386/sysdep.h (DOARGS_6): Fix offset.
497         * sysdeps/i386/i486/bits/atomic.h: Add catomic_* support.
499 2006-10-11  Jakub Jelinek  <jakub@redhat.com>
501         * malloc/malloc.c (_int_malloc): Remove unused any_larger variable.
503         * nis/nis_defaults.c (__nis_default_access): Don't call getenv twice.
505         * nis/nis_subr.c (nis_getnames): Use __secure_getenv instead of getenv.
506         * sysdeps/generic/unsecvars.h: Add NIS_PATH.
508 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
510         * include/atomic.c: Define catomic_* operations.
511         * sysdeps/x86_64/bits/atomic.h: Likewise.  Fix a few minor problems.
512         * stdlib/cxa_finalize.c: Use catomic_* operations instead of atomic_*.
513         * malloc/memusage.c: Likewise.
514         * gmon/mcount.c: Likewise.
515         * elf/dl-close.c: Likewise.
516         * elf/dl-open.c: Likewise.
517         * elf/dl-profile.c: Likewise.
518         * elf/dl-sym.c: Likewise.
519         * elf/dl-runtime.c: Likewise.
520         * elf/dl-fptr.c: Likewise.
521         * resolv/res_libc.c: Likewise.
523 2006-10-10  Ulrich Drepper  <drepper@redhat.com>
525         * nis/nis_subr.c (nis_getnames): Add trailing dot to NIS_PATH
526         components which lack them.
528         * nis/nis_subr.c (nis_getnames): Make sure that we always return
529         at least one entry consisting of the parameter concatenated with
530         the domain.
532 2006-10-10  Roland McGrath  <roland@frob.com>
534         * sysdeps/mach/hurd/utimes.c: Use a union to avoid an improper cast.
535         * sysdeps/mach/hurd/futimes.c: Likewise.
536         * sysdeps/mach/hurd/lutimes.c: Likewise.
538 2006-10-09  Ulrich Drepper  <drepper@redhat.com>
539             Jakub Jelinek  <jakub@redhat.com>
541         Implement reference counting of scope records.
542         * elf/dl-close.c (_dl_close): Remove all scopes from removed objects
543         from the list in objects which remain.  Always allocate new scope
544         record.
545         * elf/dl-open.c (dl_open_worker): When growing array for scopes,
546         don't resize, allocate a new one.
547         * elf/dl-runtime.c: Update reference counters before using a scope
548         array.
549         * elf/dl-sym.c: Likewise.
550         * elf/dl-libc.c: Adjust for l_scope name change.
551         * elf/dl-load.c: Likewise.
552         * elf/dl-object.c: Likewise.
553         * elf/rtld.c: Likewise.
554         * include/link.h: Include <rtld-lowlevel.h>.  Define struct
555         r_scoperec.  Replace r_scope with pointer to r_scoperec structure.
556         Add l_scoperec_lock.
557         * sysdeps/generic/ldsodefs.h: Include <rtld-lowlevel.h>.
558         * sysdeps/generic/rtld-lowlevel.h: New file.
560         * include/atomic.h: Rename atomic_and to atomic_and_val and
561         atomic_or to atomic_or_val.  Define new macros atomic_and and
562         atomic_or which do not return values.
563         * sysdeps/x86_64/bits/atomic.h: Define atomic_and and atomic_or.
564         Various cleanups.
565         * sysdeps/i386/i486/bits/atomic.h: Likewise.
567         * po/sv.po: Update from translation team.
569 2006-10-07  Ulrich Drepper  <drepper@redhat.com>
571         * Versions.def: Add GLIBC_2.6 to libpthread.
573         * include/shlib-compat.h (SHLIB_COMPAT): Expand parameters before use.
574         (versioned_symbol): Likewise.
575         (compat_symbol): Likewise.
577         * po/tr.po: Update from translation team.
579 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
581         * nis/Banner: Removed.  It's been integral part forever and the
582         author info is incomplete anyway.
583         * libio/Banner: Likewise.
585         * nis/nis_table.c (nis_list): If __follow_path fails in the new
586         code, make sure the nis_freeresult call doesn't crash and that the
587         result is reported correctly.
589 2006-09-27  Jakub Jelinek  <jakub@redhat.com>
591         * nis/nis_table.c (nis_list): Handle FOLLOW_PATH | ALL_RESULTS
592         when callback is NULL.
594         * nis/Versions (libnss_nisplus): Add
595         _nss_nisplus_initgroups_dyn@@GLIBC_PRIVATE.
596         * nis/Makefile (libnss_nisplus-routines): Add nisplus-initgroups.
597         * nis/nss_nisplus/nisplus-grp.c (tablename_val, tablename_len,
598         _nss_create_tablename): Rename to...
599         (grp_tablename_val, grp_tablename_len, _nss_grp_create_tablename):
600         ... these.  No longer static.
601         (internal_setgrent): Adjust users.
602         (_nss_nisplus_getgrnam_r, _nss_nisplus_getgrgid_r): Likewise.
603         Don't use locking around _nss_grp_create_tablename call.
604         * nis/nss_nisplus/nisplus-initgroups.c: New file.
606 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
608         * version.h (VERSION): Bump to 2.5.90 for new development tree.
610 2006-10-06  Andreas Jaeger  <aj@suse.de>
612         * include/features.h (__GLIBC_MINOR__): It's glibc 2.5 now.
614 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
616         * po/pl.po: Update from translation team.
618         * nscd/nscd.c (main): Fix typo in message.
619         Patch by Jakub Bogsz <qboosh@pld-linux.org>.
621 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
623         [BZ #3291]
624         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
625         errno.h, signal.h, unistd.h and sysdep-cancel.h.
626         (__sigprocmask): Define.
628 2006-10-02  Ulrich Drepper  <drepper@redhat.com>
630         * elf/rtld.c (dl_main): Don't use prelinking if LD_DYNAMIC_WEAK is
631         used.
633 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
635         * nscd/mem.c (mempool_alloc): Round array size to 16 bytes
636         in oldtotal and newtotal calculation.
637         * nscd/nscd-client.h (struct mapped_database): Add datasize
638         field.
639         * nscd/nscd_helper.c (get_mapping): Initialize datasize field.
640         (__nscd_get_map_ref): Get a new mapping even if mapping's data_size
641         increased.
642         (__nscd_cache_search): Add checks to make sure we never reference
643         data beyond the current mapping.
645 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
647         * sysdeps/posix/getaddrinfo.c (match_prefix): Make mask and val
648         variables const to avoid compiler warnings.
650         * io/fts.c (fts_close): Remove redundant checks.
651         (fts_build): Likewise.
652         (fts_palloc): Likewise.
654         * manual/message.texi (Advanced gettext functions,
655         Using gettextized software): Fix typos.
657 2006-09-30  Ulrich Drepper  <drepper@redhat.com>
659         * posix/glob.c (glob_in_dir): Add some comments and asserts to
660         explain why there are no leaks.
662 2006-09-29  Ulrich Drepper  <drepper@redhat.com>
664         * libio/wmemstream.c: Include <wchar.h>.
665         * libio/bug-wmemstream1.c: Likewise.
666         * libio/tst-wmemstream1.c: Likewise.
667         * libio/tst-wmemstream2.c: Likewise.
669         * version.h (RELEASE): Bump to 2.5.
670         * README: Regenerated.
672         * locale/iso-3166.def: Add Aaland Islands and Montenegro.
674         [BZ #3273]
675         * nscd/nscd_initgroups.c (__nscd_getgrouplist): It is OK to have
676         found no group members.
677         Patch by Petr Baudis.
679 2006-09-29  Jakub Jelinek  <jakub@redhat.com>
681         * elf/rtld.c (_dl_start_final): If not USE___THREAD, don't
682         assert bootstrap_map.l_tls_modid is zero.
683         (_dl_start): Initialize bootstrap_map.l_tls_modid to 0
684         if USE___THREAD.
686 2006-09-27  Ulrich Drepper  <drepper@redhat.com>
688         * libio/stdio.h: Move open_wmemstream prototype to ...
689         * wcsmbs/wchar.h: ... here.
691 2006-09-25  Jakub Jelinek  <jakub@redhat.com>
693         [BZ #3252]
694         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Handle only
695         fchownat syscall and __ASSUME_LCHOWN_SYSCALL case inline, call
696         __{,l}chown to handle the rest.
697         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Handle only
698         fchownat syscall and __ASSUME_32BITUIDS case inline, call
699         __{,l}chown to handle the rest.
700         * sysdeps/unix/sysv/linux/sparc/sparc32/fchownat.c: Include
701         i386/fchownat.c.
702         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c: Likewise.
703         * sysdeps/unix/sysv/linux/sh/fchownat.c: Likewise.
705         [BZ #3253]
706         * posix/glob.c (glob_in_dir): Don't alloca one struct globlink at a
707         time, rather allocate increasingly bigger arrays of pointers, if
708         possible with alloca, if too large with malloc.
710 2006-09-24  Jakub Jelinek  <jakub@redhat.com>
712         * sysdeps/powerpc/fpu/libm-test-ulps: Updated.
714         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Fix 2 typos.
716 2006-09-24  Ulrich Drepper  <drepper@redhat.com>
718         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Implement rule 4,
719         home addresses.
720         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Recognize
721         IFA_F_HOMEADDRESS flag for interfaces.
722         * include/ifaddrs.h (struct in6addrinfo): Define
723         in6ai_homeaddress.
725 2006-09-21  Jakub Jelinek  <jakub@redhat.com>
727         [BZ #3225]
728         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (PTR_MANGLE3,
729         PTR_DEMANGLE3): Define.
730         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (PTR_MANGLE3,
731         PTR_DEMANGLE3): Likewise.
732         * sysdeps/powerpc/powerpc32/__longjmp-common.S (__longjmp): Use them.
733         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp):
734         Likewise.
735         * sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp): Likewise.
737 2006-09-20  Jakub Jelinek  <jakub@redhat.com>
739         * po/libc.pot: Regenerated.
740         * po/be.po: Updated.
741         * po/ca.po: Likewise.
742         * po/cs.po: Likewise.
743         * po/da.po: Likewise.
744         * po/de.po: Likewise.
745         * po/el.po: Likewise.
746         * po/en_GB.po: Likewise.
747         * po/es.po: Likewise.
748         * po/fi.po: Likewise.
749         * po/fr.po: Likewise.
750         * po/gl.po: Likewise.
751         * po/hr.po: Likewise.
752         * po/hu.po: Likewise.
753         * po/ja.po: Likewise.
754         * po/ko.po: Likewise.
755         * po/nb.po: Likewise.
756         * po/nl.po: Likewise.
757         * po/pl.po: Likewise.
758         * po/pt_BR.po: Likewise.
759         * po/ru.po: Likewise.
760         * po/rw.po: Likewise.
761         * po/sk.po: Likewise.
762         * po/sv.po: Likewise.
763         * po/tr.po: Likewise.
764         * po/zh_CN.po: Likewise.
765         * po/zh_TW.po: Likewise.
767         [BZ #3137]
768         * iconv/iconv_prog.c (main): Fix spelling in error message.
769         * iconv/iconvconfig.c (main): Likewise.
770         * locale/programs/ld-collate.c (handle_ellipsis): Likewise.
771         * locale/programs/ld-ctype.c (charclass_symbolic_ellipsis): Likewise.
772         * locale/programs/localedef.c (main): Likewise.
773         * locale/programs/repertoire.c (repertoire_read): Likewise.
774         * timezone/zdump.c (main): Likewise.
775         * nscd/connections.c (handle_request): Fix spelling in log message.
776         Patch by Malcolm Parsons <malcolm.parsons@gmail.com>.
778 2006-09-20  Ulrich Drepper  <drepper@redhat.com>
780         * inet/inet6_option.c: Also emit linker warnings for the RFC 2292
781         interfaces.
783 2006-09-20  Andreas Jaeger  <aj@suse.de>
785         * math/libm-test.inc (lrint_test_upward): Fix typo.
787 2006-06-17  Joseph S. Myers  <joseph@codesourcery.com>
789         [BZ #2592]
790         * math/libm-test.inc (lrint_test_tonearest): New function.
791         (lrint_test_towardzero): New function.
792         (lrint_test_downward): New function.
793         (lrint_test_upward): New function.
794         (main): Run these new tests.
795         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Correct rounding
796         of values near to 0.
797         (two52): Use double not long double.
798         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
799         * sysdeps/ieee754/flt-32/s_llrintf.c (__llrintf): Likewise.
800         (two23): Use float not double.
801         * sysdeps/ieee754/flt-32/s_lrintf.c (__lrintf): Likewise.
802         (two23): Use float not double.
803         * sysdeps/ieee754/ldbl-128/s_llrintl.c (__llrintl): Likewise.
804         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
805         * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Likewise.
806         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
808 2006-09-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
810         * sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c (__makecontext):
811         Cast sp to unsigned long to avoid compiler warning.
812         Use __makecontext_ret function instead of a trampoline on the stack.
813         (__makecontext_ret): New function.
814         * sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c: Likewise.
816 2006-09-19  Jakub Jelinek  <jakub@redhat.com>
818         * elf/dl-cache.c (HWCAP_CHECK): If _DL_PLATFORMS_COUNT, but
819         platform == -1, reject any libs with non-zero _DL_HWCAP_PLATFORM
820         bits.
822 2006-09-19  Ulrich Drepper  <drepper@redhat.com>
824         * elf/dl-close.c (_dl_close): If dependency is not unloaded make
825         sure no reference to the unloaded map's search list remains in the
826         dependency's scope.
828 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
830         * elf/Makefile: Add rules to build and run unload7 test.
831         * elf/unload7.c: New test.
832         * elf/unload7mod1.c: New file.
833         * elf/unload7mod2.c: New file.
835 2006-09-18  Jakub Jelinek  <jakub@redhat.com>
837         * sysdeps/unix/sysv/linux/sys/ptrace.h (PT_GETEVENTMSG): Fix pasto.
838         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h (PTRACE_SETOPTIONS,
839         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
840         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h (PTRACE_SETOPTIONS,
841         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
842         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h (PTRACE_SETOPTIONS,
843         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
844         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h (PTRACE_SETOPTIONS,
845         PTRACE_GETEVENTMSG): Likewise.
846         (PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Change to the arch independent
847         values.
849 2006-09-17  Mike Frysinger  <vapier@gentoo.org>
851         * sysdeps/unix/sysv/linux/sys/ptrace.h (PTRACE_SETOPTIONS,
852         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
853         * sysdeps/unix/sysv/linux/ptrace.c (ptrace): Check PTRACE_SETOPTIONS,
854         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO and PTRACE_SETSIGINFO.
856 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
858         * sysdeps/powerpc/powerpc32/register-dump.h (register_dump): Don't
859         write '\0' to the fd.
860         * sysdeps/mach/hurd/powerpc/register-dump.h (register_dump): Likewise.
861         * sysdeps/powerpc/powerpc64/register-dump.h (register_dump): Likewise.
862         Change regs to unsigned long pointer from unsigned int, fix fscr
863         offset.
865 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
867         * io/Makefile (CFLAGS-fstatat.c): Set.
868         (CFLAGS-fstatat64.c): Likewise.
869         (CFLAGS-mknodat.c): Likewise.
871         * sysdeps/ieee754/ldbl-128ibm/s_llrintl.c: Comment fixes.
872         * sysdeps/ieee754/ldbl-128ibm/s_llroundl.c: Likewise.
873         * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c: Rewritten.
874         * sysdeps/ieee754/ldbl-128ibm/s_lroundl.c: Rewritten.
876 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
878         * sysdeps/ieee754/ldbl-128ibm/s_llrintl.c: Comment fixes.
879         * sysdeps/ieee754/ldbl-128ibm/s_llroundl.c: Comment fixes.
880         * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c: Rewritten.
881         * sysdeps/ieee754/ldbl-128ibm/s_lroundl.c: Rewritten.
883         * io/Makefile (CFLAGS-fstatat.c): Set.
884         (CFLAGS-fstatat64.c): Likewise.
885         (CFLAGS-mknodat.c): Likewise.
887 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
888             Steven Munroe  <sjmunroe@us.ibm.com>
890         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 4 new cap
891         names to the beginning.  Rename "cell" to "cellbe".
892         (_dl_powerpc_platforms): New.
893         * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
894         (HWCAP_IMPORTANT): Remove power{4,5,5+} and cell.
895         (_DL_PLATFORMS_COUNT, _DL_FIRST_PLATFORM): Define.
896         (_DL_HWCAP_PLATFORM): Define to new mask.
897         (_dl_platform_string, _dl_string_platform): New functions.
898         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_BOOKE, PPC_FEATURE_SMT,
899         PPC_FEATURE_ICACHE_SNOOP, PPC_FEATURE_ARCH_2_05): Define.
901 2006-09-12  Jakub Jelinek  <jakub@redhat.com>
903         [BZ #2526]
904         * README.libm: Fix a thinko in sqrt algorithm description.
906         [BZ #3143]
907         * manual/string.texi (argz_delete): Fix prototype.
908         Patch by <alpt@freaknet.org>.
910 2006-08-26  Joseph Myers  <joseph@codesourcery.com>
912         [BZ #3138]
913         * io/test-lfs.c (do_prepare): Give name_len type size_t.
914         * io/tst-fcntl.c (do_prepare): Likewise.
915         * posix/tst-exec.c (do_prepare): Likewise.
916         * posix/tst-preadwrite.c (do_prepare): Likewise.
917         * posix/tst-spawn.c (do_prepare): Likewise.
918         * posix/tst-truncate.c (do_prepare): Likewise.
919         * rt/tst-aio.c (do_prepare): Likewise.
920         * rt/tst-aio64.c (do_prepare): Likewise.
921         * stdlib/test-canon2.c (do_prepare): Give test_dir_len type
922         size_t.
924 2006-09-09  Ulrich Drepper  <drepper@redhat.com>
926         [BZ #2821]
927         * time/mktime.c (guess_time_tm): Fix overflow detection.
928         * time/Makefile (tests): Add bug-mktime1.
929         * time/bug-mktime1.c: New file.
931         [BZ #3189, #3188]
932         * misc/sys/mman.h (remap_file_pages): Make available for _GNU_SOURCE.
933         (mremap): Likewise.
935 2006-09-07  Jakub Jelinek  <jakub@redhat.com>
937         [BZ #1006]
938         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela):
939         Ensure relocation doesn't clobber any bits outside of the
940         immediate field for R_SPARC_TLS_LE_HIX22, R_SPARC_WDISP30,
941         R_SPARC_HI22 and R_SPARC_H44.
943         [BZ #2775]
944         * malloc/malloc.c (sYSMALLOc): Only call grow_heap if
945         (long) (MINSIZE + nb - old_size) is positive.
947         * malloc/arena.c (grow_heap): When growing bail even if new_size
948         is negative.
950         [BZ #3155]
951         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S (__lrint): Don't access
952         stack below r1.
954 2006-09-06  Jakub Jelinek  <jakub@redhat.com>
956         * posix/regex_internal.c (re_string_reconstruct): Handle
957         offset < pstr->valid_raw_len && pstr->offsets_needed case.
958         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
959         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
960         re_string_context_at.
961         * posix/Makefile: Add rules to build and run bug-regex26 test.
962         * posix/bug-regex26.c: New test.
964         * locale/programs/ld-collate.c (collate_read): Goto sym_equiv_free
965         rather than col_sym_free.  Move seqp declaration earlier.
967         * resolv/gai_suspend.c (gai_suspend): Make sure result is initialized.
969 2006-09-05  Jakub Jelinek  <jakub@redhat.com>
971         * nscd/initgrcache.c (addinitgroupsX): Move any_success
972         decl before first goto out.
974 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
976         * Makerules (shlib.lds): If have-hash-style, put .hash section
977         at the end of the RO segment.
979 2006-09-04  Ulrich Drepper  <drepper@redhat.com>
981         * elf/do-lookup.h (do_lookup_x): Initialize symidx in case the new
982         style hash table format is used.
984 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
986         * resolv/res_mkquery.c (res_nmkquery): Set hp->id to statp->id after
987         randomization rather than before.
988         * resolv/res_init.c (res_randomid): Don't call gettimeofday here.
990 2006-08-31  Jakub Jelinek  <jakub@redhat.com>
992         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Add ld.so.
994         * malloc/malloc.c (_int_malloc): Use full list insert and not
995         shortcut which assumes the list is empty for large requests
996         too.
998         * elf/tst-addr1.c (do_test): Allow i.dli_sname "_IO_printf".
1000 2006-08-30  Jakub Jelinek  <jakub@redhat.com>
1002         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (splice): Add offin
1003         and offout arguments to the prototype.
1004         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (splice): Likewise.
1005         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (splice): Likewise.
1006         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (splice): Likewise.
1007         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (splice): Likewise.
1008         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (splice): Likewise.
1009         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (splice): Likewise.
1010         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (splice): Likewise.
1011         * sysdeps/unix/sysv/linux/syscalls.list (splice): Adjust args string.
1013 2006-08-28  Ulrich Drepper  <drepper@redhat.com>
1015         * elf/dl-load.c (_dl_init_paths): Expand DSTs.
1017         * elf/dl-open.c (dl_open_worker): Allow $LIB and $PLATFORM in
1018         dlopen parameters.
1020 2006-08-28  Jakub Jelinek  <jakub@redhat.com>
1022         * inet/getnameinfo.c (getnameinfo): For AF_INET, check errno
1023         only if herrno is NETDB_INTERNAL.  Handle errors other than
1024         ERANGE outside of the loops, handle TRY_AGAIN.
1026         * locale/programs/ld-ctype.c (translit_flatten): Issue error
1027         if other's ctype category was missing.
1028         * locale/programs/ld-collate.c (collate_read): Return if
1029         copy_locale's collate category is missing.
1031 2006-08-27  Ulrich Drepper  <drepper@redhat.com>
1033         [BZ #2684]
1034         * malloc/malloc.c (public_rEALLOc): Try harder by using other
1035         arenas if allocation failed.
1036         Patch mostly by Jan Edler <jan.edler@indexengines.com>.
1038 2006-08-26  Ulrich Drepper  <drepper@redhat.com>
1040         * malloc/malloc.c (bin_at): Rewrite to be more clear and to not
1041         waste bins[0..1].
1042         (malloc_state): Reduce bins size by 2.
1043         (_int_malloc): Fix test for large enough buffer for early termination.
1044         When no unsorted block matches perfectly and an exiting block has
1045         to be split, use full list insert and not shortcut which assumes
1046         the list is empty.
1048         * locale/programs/ld-ctype.c (ctype_read): Better patch for read
1049         failure.
1051 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
1053         * locale/programs/ld-ctype.c (ctype_read): If CTYPE is NULL, don't
1054         do anything.
1056         * sysdeps/generic/ldsodefs.h (DL_ADDR_SYM_MATCH): For undefined
1057         symbol require exact match (these are PLTs).
1058         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
1059         (_dl_ppc64_addr_sym_match): Likewise.
1061         [BZ #2683]
1062         * elf/dl-addr.c (_dl_addr): Don't ignore all undefined symbols.
1063         If symbol has a value use it.
1064         * elf/tst-dladdr1.c: New file.
1065         * elf/Makefile: Add rules to build and run tst-addr1.
1067 2006-08-24  Jakub Jelinek  <jakub@redhat.com>
1069         * malloc/malloc.c (sYSMALLOc): Avoid infinite loop if MMAP
1070         keeps failing and heap growth or new heap creation isn't
1071         successful either.
1072         * malloc/tst-malloc.c (main): Add new tests.
1074 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
1076         [BZ #2734]
1077         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use same conditions
1078         as in the x86-64 code to use bswap.
1080 2006-05-21  Joseph S. Myers  <joseph@codesourcery.com>
1082         [BZ #2680]
1083         * posix/unistd.h (getlogin_r): Condition on __USE_POSIX199506, not
1084         __USE_UNIX98.
1085         * posix/bits/unistd.h: Likewise.
1087 2006-05-15  Mike Frysinger  <vapier@gentoo.org>
1089         [BZ #2751]
1090         * string/strchr.c: Add cast to avoid warning.
1092 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
1094         * malloc/malloc.c (DEFAULT_MMAP_THRESHOLD_MAX): For 32-bit
1095         platforms define as 512K.  For 64-bit platforms as 32MB.  The lower
1096         limit is needed to avoid the exploding of the address space
1097         requirement for secondary heaps.
1098         * malloc/arena.c (HEAP_MAX_SIZE): Define using
1099         DEFAULT_MMAP_THRESHOLD_MAX if it is defined.
1101 2006-07-30  Joseph S. Myers  <joseph@codesourcery.com>
1103         [BZ #3018]
1104         * Makerules (depfiles): Handle extra-test-objs the same as
1105         extra-objs.
1106         (common-mostlyclean): Likewise.
1107         * dlfcn/Makefile (extra-objs): Add modules to extra-test-objs
1108         instead.
1109         * elf/Makefile (extra-objs): Likewise.
1110         * stdlib/Makefile (extra-objs): Likewise.
1112 2006-08-14  Eric Blake  <ebb9@byu.net>
1114         [BZ #3044]
1115         * misc/error.h: Assume C89 or better.
1116         * misc/error.c: Likewise.
1118 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
1120         [BZ #3040]
1121         * sysdeps/unix/sysv/linux/openat.c: Fix compilation if
1122         __ASSUME_ATFCTS is defined.
1124 2006-08-19  Ulrich Drepper  <drepper@redhat.com>
1126         * malloc/malloc.c (_int_malloc): Limit number of unsorted blocks
1127         to sort in each call.
1129         * nis/nss_nis/nis-service.c (internal_nis_getservent_r): . If map
1130         is empty simply return and use next service.
1131         * nis/nss_nis/nis-rpc.c (internal_nis_getrpcent_r): Likewise.
1133         * locale/programs/charmap.c (charmap_read): Add new parameter.  It
1134         tells us when not finding a charmap file is an error.
1135         * locale/programs/charmap.h: Adjust charmap_read prototype.
1136         * iconv/iconv_prog.c (main): Tell charmap_read it's no error if we
1137         cannot find a charmap.
1138         * locale/programs/localedef.c (main): Adjust charmap_read call.
1140 2006-08-15  Jakub Jelinek  <jakub@redhat.com>
1142         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Use
1143         sysdeps/posix/pause.c implementation instead.
1145 2006-08-09  Jakub Jelinek  <jakub@redhat.com>
1147         * sysdeps/unix/nice.c (nice): Transform EACCES errno from setpriority
1148         to EPERM.
1150 2006-08-13  Andreas Schwab  <schwab@suse.de>
1152         * sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_runtime_resolve):
1153         Don't clobber caller's LRSAVE.
1154         (_dl_prof_resolve): Likewise.
1156 2006-08-14  Ulrich Drepper  <drepper@redhat.com>
1158         [BZ #1996]
1159         * libio/memstream.c (open_memstream): Allocate initial buffer with
1160         calloc.
1161         * libio/wmemstream.c (open_wmemstream): Likewise.
1162         * libio/strops.c: Pretty printing.
1163         (_IO_str_overflow): Clear uninitialized part of the new buffer.
1164         (enlarge_userbuf): New function.
1165         (_IO_str_seekoff): Call it if seek position is larger than current
1166         buffer.
1167         * libio/wstrops.c: Likewise.
1168         * libio/vasprintf.c: Add comment as to why we do not have to use
1169         calloc instead of malloc to allocate initial buffer.
1170         * libio/Makefile (tests): Add bug-memstream1 and bug-wmemstream1.
1171         * libio/bug-memstream1.c: New file.
1172         * libio/bug-wmemstream1.c: New file.
1174 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
1176         * libio/wstrops.c: Remove dead macro definitions and comments.
1177         * libio/strops.c: Likewise.
1179         [BZ #2764]
1180         * login/utmpname.c (__utmpname): Remove unnecessary test.
1182 2006-06-08  Joseph Myers  <jsm28@gcc.gnu.org>
1184         [BZ #2832]
1185         * math/gen-libm-test.pl (clean_up_number): Do not remove trailing
1186         0s from integers.
1188 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
1190         [BZ #2987]
1191         * sysdeps/unix/sysv/linux/clock_settime.c: Add code to use syscall
1192         for CPU clocks.
1193         * sysdeps/unix/clock_settime.c: Add support for platform-specific
1194         setting of CPU clocks.
1196 2006-06-23  Paul Eggert  <eggert@cs.ucla.edu>
1198         [BZ #2841]
1199         * sysdeps/generic/stdint.h (UINT8_C, UINT16_C): Don't append 'U',
1200         since C99 requires the result to promote to 'int' when uint_least8_t
1201         and uint_least16_t promote to 'int'.
1203 2006-08-12  Ulrich Drepper  <drepper@redhat.com>
1205         [BZ #3013]
1206         * locale/programs/ld-ctype.c (ctype_output): Adjust alignments, fix
1207         lenght of one output field, correct bitmask creation.
1208         * locale/programs/ld-time.c: Add alignment.
1210         [BZ #2997]
1211         * misc/error.c: Add space between program name and message if file
1212         name is missing.
1214 2006-08-03  Eric Blake  <ebb9@byu.net>
1216         [BZ #2998]
1217         * misc/error.c (error_tail) [_LIBC]: Avoid invalid free.
1219 2006-08-09  Ulrich Drepper  <drepper@redhat.com>
1221         * malloc/memusagestat.c: Silence warnings.
1223         * malloc/malloc.c: Dynamically size mmap treshold if the program
1224         frees mmaped blocks.
1225         Patch by Valerie Henson and Arjan van de Ven.
1227 2006-08-08  Jakub Jelinek  <jakub@redhat.com>
1229         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_DIRECT): Protect with
1230         __USE_GNU.
1232         * stdlib/strtol_l.c (__strtol_ul_max_tab, __strtol_ul_rem_tab,
1233         __strtol_ull_max_tab, __strtol_ull_rem_tab): Declare.
1234         (DEF): Don't put the var into .gnu.linkonce.r.* section.
1235         Only provide var definitions in strtol_l (or for *ull*
1236         in strtoll_l).
1238         * stdio-common/bug16.c (tests): New array.
1239         (do_tests): Allow the first hexadecimal digit
1240         to be 1, 2, 4 or 8.  Do 3 additional tests.
1242         * sysdeps/s390/fpu/libm-test-ulps: Update.
1244         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c (fchownat): Use
1245         fchownat syscall if available.
1246         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Likewise.
1247         * sysdeps/unix/sysv/linux/sh/fchownat.c (fchownat): Likewise.
1248         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Likewise.
1250 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
1252         * nis/nis_xdr.c: Avoid some function calls.
1254 2006-08-07  Jakub Jelinek  <jakub@redhat.com>
1255             Ulrich Drepper  <drepper@redhat.com>
1257         * nis/nis_call.c (rec_dirsearch) [case LOWER_NAME]: Don't take
1258         short cut if only one name component is stripped away.
1260 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
1262         * nis/nis_call.c: Minor cleanups throughout.
1263         (rec_dirsearch) [case HIGHER_NAME]: Correctly size ndomain array.
1264         (first_shoot): Add search_parent_first parameter.  Only if it is set
1265         search parent server first.
1266         If directory for table found through cold start cache is not the same
1267         as referenced in the cache, don't use it.
1268         (__nisfind_server): Take additional parameter.  Pass it on to
1269         first_shoot.
1270         (__prepare_niscall): Adjust __nisfind_server call.
1271         * nis/rpcsvc/nislib.h: Adjust __nisfind_server prototype.
1272         * nis/nis_table.c: Adjust __nisfind_server call.
1273         * nis/nis_lookup.c: Likewise.
1274         (nis_lookup): Don't loop endlessly if name is reduced to ".".
1276 2006-08-03  Ulrich Drepper  <drepper@redhat.com>
1278         [BZ #2182]
1279         * math/s_cacosh.c: Return values from positive branch.
1280         * math/s_cacoshf.c: Likewise.
1281         * math/s_cacoshl.c: Likewise.
1283         [BZ #2883]
1284         * sysvipc/sys/msg.h: Change return value to ssize_t.
1285         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
1286         * sysvipc/msgrcv.c: Likewise.
1287         * include/sys/msg.h: Likewise.
1289         * grp/initgroups.c (internal_getgrouplist): Remove unnecessary
1290         test introduced in patch for bz #661.
1291         (getgrouplist): Simplify code a bit.  Don't allocate one additional
1292         element for NEWGROUPS.
1294         [BZ #2908]
1295         * stdio-common/printf_fphex.c (__printf_fphex): When rounding up
1296         'f', use '1' as leading digit not '\1'.
1297         * stdio-common/Makefile (tests): Add bug16.
1298         * stdio-common/bug16.c: New file.
1300         [BZ #2914]
1301         * sysdeps/unix/sysv/linux/gethostid.c: Don't define OLD_HOSTIDFILE
1302         and don't try to open it.  The patch introducing the macro
1303         contained a bug and used the same file name as the new file
1304         instead of using /var/adm/hostid.  Nobody complaint so I'm taking
1305         this out completely.
1307         [BZ #2926]
1308         * assert/assert.h: Move cast to void inside ?: to quiet gcc.
1309         Patch by Jerry James <Jerry.James@usu.edu>.
1311         * rt/Makefile (tests): Add tst-clock2.
1312         * rt/tst-clock2.c: New file.
1314         [BZ #2978]
1315         * resolv/gai_notify.c (__gai_notify_only): Copy memory for thread
1316         function and its parameters and pass it to new thread.
1317         (__gai_notify): Add support for alternative waiting for completion.
1318         * resolv/gai_suspend.c (gai_suspend): Add support for alternative
1319         waiting for completion.
1320         * resolv/getaddrinfo_a.c: Likewise.
1321         * resolv/gai_misc.h (struct waitlist): Don't add cond if alternative
1322         waiting for completion is used.
1323         * resolv/gai_misc.c: Allow overwriting code to start helper thread.
1324         * resolv/gai_cancel.c: Include <gai_misc.h> not "gai_misc.h".
1325         * resolv/gai_error.c: Likewise.
1326         * resolv/gai_sigqueue.c: Likewise.
1328 2006-08-02  Thomas Schwinge  <tschwinge@gnu.org>
1330         * hurd/getdport.c (__getdport): Don't return EBADF; instead set
1331         errno to EBADF and return MACH_PORT_NULL.
1333 2006-06-23  Joseph Myers  <joseph@codesourcery.com>
1335         [BZ #2980]
1336         * posix/Makefile (CFLAGS-waitid.c): Add -fasynchronous-unwind-tables.
1338 2006-08-02  Ulrich Drepper  <drepper@redhat.com>
1340         * elf/dl-addr.c (_dl_addr): If GNU-style hash tables are present,
1341         walk them instead of the symbol table.
1343 2006-08-01  Ulrich Drepper  <drepper@redhat.com>
1345         [BZ #2098]
1346         * nscd/initgrcache.c (addinitgroupsX): Judge successful lookups by
1347         status of NSS calls, not the number of returned entries.
1349         * sysdeps/unix/sysv/linux/syscalls.list: Remove add_key,
1350         request_key, keyctl.
1352 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
1354         * sysdeps/unix/sysv/linux/dl-osinfo.h: Remove unnecessary include.
1356 2006-07-16  Jeff Bailey  <jbailey@ubuntu.com>
1358         * elf/tst-auditmod1.c: Fix typo in #error.
1360 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
1362         * elf/tst-auditmod1.c: Remove code for unsupported architectures.
1364         * iconvdata/run-iconv-test.sh: Run cmp in C locale.
1366 2006-07-20  Adam Nemet  <anemet@caviumnetworks.com>
1368         * stdlib/test-canon.c (do_test): Close fd before unlinking file so
1369         that the directory is empty even on non-POSIX filesystems.
1371 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
1373         * elf/dl-open.c (dl_open_worker): Add branch prediction.
1375         * nis/nss_compat/compat-grp.c: Avoid unnecessary setgrent calls into
1376         the backend NSS module.  If backend setgrent call failed, don't have
1377         internal_setgrent fail.  Just remember this until it is needed.
1378         * nis/nss_compat/compat-pwd.c: Likewise.
1379         * nis/nss_compat/compat-spwd.c: Likewise.
1381 2006-07-30  Roland McGrath  <roland@redhat.com>
1383         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed.
1384         * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: File removed.
1385         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: File removed.
1386         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: File removed.
1388         * sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): New macro.
1389         (nanosleep_not_cancel): New macro.
1390         (sigsuspend_not_cancel): new macro.
1391         * sysdeps/unix/sysv/linux/sigsuspend.c [__ASSUME_REALTIME_SIGNALS]
1392         (do_sigsuspend): Define as inline.
1393         (__sigsuspend): Always use do_sigsuspend.
1394         [! NO_CANCELLATION] (__sigsuspend_nocancel): New function.
1395         * include/signal.h: Declare __sigsuspend_nocancel.
1396         * sysdeps/posix/pause.c
1397         [! NO_CANCELLATION] (__pause_nocancel): New function.
1399         * include/unistd.h (__pause_nocancel): Add attribute_hidden.
1400         * include/time.h (__nanosleep_nocancel): Likewise.
1402 2006-07-30  Ulrich Drepper  <drepper@redhat.com>
1404         * locale/programs/localedef.c (add_to_readlist): Rename local
1405         variables to avoid confusion.
1407         * locale/programs/charmap.c (charmap_read): Emit error message if
1408         charmap couldn't be found or read.
1410 2006-07-28  Ulrich Drepper  <drepper@redhat.com>
1412         * sysdeps/unix/sysv/linux/kernel-features.h: Define
1413         __ASSUME_FUTEX_LOCK_PI.
1414         * include/time.h: Declare __nanosleep_nocancel.
1415         * include/unistd.h: Declare __pause_nocancel.
1417         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Use this instead of
1418         LDFLAGS.  Add -lgcc_eh and libc_nonshared (again) to make sure we
1419         get the __stack_chk_fail_local definition when it's needed.
1421 2006-07-26  Ulrich Drepper  <drepper@redhat.com>
1423         * dlfcn/Makefile: Add rules to build and run bug-atexit3.
1424         * dlfcn/bug-atexit3.c: New file.
1425         * dlfcn/bug-atexit3-lib.cc: New file.
1427         * dlfcn/dlmopen.c (dlmopen_doit): Don't allow RTLD_GLOBAL to be
1428         used when the namespace is not the base namespace.
1430 2006-07-26  Gavin Romig-Koch  <gavin@redhat.com>
1432         * stdlib/cxa_atexit.c (__new_exitfn_called): New variable.
1433         (__new_exitfn): Bump it in every successful call.
1434         * stdlib/cxa_finalize.c (__cxa_finalize): If destructor registered
1435         more exit handlers, call them right away.
1436         * stdlib/exit.h: Declare __new_exitfn_called.
1438 2006-07-25  Ulrich Drepper  <drepper@redhat.com>
1440         * stdlib/cxa_finalize.c (__cxa_finalize): Fix race condition when
1441         calling registered handler.
1443         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fix comment.
1444         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1445         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1446         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1447         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1448         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1449         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
1450         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1452 2006-07-10  Ulrich Drepper  <drepper@redhat.com>
1454         * elf/dl-lookup.c (dl_new_hash): New functions.
1455         (_dl_lookup_symbol_x): Rename hash to old_hash and don't compute
1456         value here.  Compute new-style hash value.  Pass new hash value
1457         and reference to variable with the old value to do_lookup_x.
1458         (_dl_setup_hash): If DT_GNU_HASH is defined, use it and not
1459         old-style hash table.
1460         (_dl_debug_bindings): Pass new hash value and reference to variable
1461         with the old value to do_lookup_x.
1462         * elf/do-lookup.h (do_lookup_x): Accept additional parameter with
1463         new-style hash value and change old-style hash value parameter to
1464         be a reference.  Reoganize functions to determine whether
1465         new-style hash table is available.  Only fall back on old-style
1466         table.  If old-style hash value is needed, compute it here.
1467         * elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH
1468         entry.
1469         * elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT,
1470         DT_TLSDEC_GOT.  Adjust DT_ADDRNUM.
1471         * include/link.h (struct link_map): Add l_gnu_bitmask_idxbits,
1472         l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero.
1473         * Makeconfig: If linker supports --hash-style option add it to all
1474         linker command lines to build DSOs.
1475         * config.make.in: Define have-hash-style.
1476         * configure.in: Test whether linker supports --hash-style option.
1478         * elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const.
1479         * sysdeps/generic/ldsodefs.h: Adjust prototype.
1481 2006-06-27  Ulrich Drepper  <drepper@redhat.com>
1483         * elf/dl-load.c (open_path): Fix test to determine whether DSO is
1484         auditing.
1486         * elf/dl-load.c (_dl_map_object): Try harder to avoid looking at
1487         RPATH of main map twice.
1489 2006-06-22  Ulrich Drepper  <drepper@redhat.com>
1491         * intl/dcigettext.c (DCIGETTEXT): If _nl_find_msg returns -1 don't
1492         look further, return original strings.
1493         (_nl_find_msg): Do not return found translation if the conversion
1494         failed.  Either signal the string is unusable or that something went
1495         wrong and the original should be used.
1497 2006-06-21  Ulrich Drepper  <drepper@redhat.com>
1499         * string/_strerror.c (__strerror_r): Add __builtin_expect.
1501 2006-06-14  Jakub Jelinek  <jakub@redhat.com>
1503         [BZ #2766]
1504         * misc/insremque.c (insque): Handle prev == NULL.
1505         * misc/Makefile (tests): Add tst-insremque.
1506         * misc/tst-insremque.c: New test.
1508 2006-06-17  Ulrich Drepper  <drepper@redhat.com>
1510         [BZ #2792]
1511         * elf/dl-deps.c (expand_dst): Rename __cnt variable to not
1512         conflict with DL_DST_REQUIRED.
1514 2006-06-16  Ulrich Drepper  <drepper@redhat.com>
1516         * nis/nis_subr.c (nis_getnames): Fix the implementation to better
1517         match what Solaris does.
1519 2006-06-04  Ulrich Drepper  <drepper@redhat.com>
1521         * sysdeps/posix/spawni.c (__spawni): Use local_seteuid and
1522         local_setegid instead of seteuid and setegid.
1523         * sysdeps/generic/local-setxid.h: New file.
1524         * sysdeps/unix/sysv/linux/local-setxid.h: New file.
1526         * sysdeps/posix/spawni.c (__spawni): Use non-cancelable interfaces.
1528         * string/Makefile (tests): Add bug-envz1.
1529         * string/bug-envz1.c: New file.
1531 2006-06-02  Jakub Jelinek  <jakub@redhat.com>
1533         * posix/regex_internal.c (re_string_skip_chars): If no character has
1534         been converted at all, set *last_wc to WEOF.  If mbrtowc failed, set wc
1535         to the byte which couldn't be converted.
1536         (re_string_reconstruct): Don't clear valid_raw_len before calling
1537         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
1538         tip_context using re_string_context_at.
1539         * posix/Makefile: Add rules to build and run bug-regex25 test.
1540         * posix/bug-regex25.c: New test.
1542 2006-06-02  Ryan S. Arnold  <rsa@us.ibm.com>
1544         [BZ #2703]
1545         * string/envz.c (envz_strip): Correct erroneously reversed src
1546         and dest parameters to memmove() invocation.
1548 2006-05-30  Jakub Jelinek  <jakub@redhat.com>
1550         * nscd/nscd.h (prune_cache): Add fd argument to prototype.
1551         * nscd/nscd.c (parse_opt): Read response from INVALIDATE request
1552         to make sure the database has been already invalidated.
1553         * nscd/cache.c (prune_cache): Add fd argument.  Write response to fd
1554         after the cache has been invalidated.  Use pthread_mutex_lock rather
1555         than pthread_mutex_trylock if fd != -1.
1556         * nscd/connections.c (invalidate_cache): Add fd argument, write
1557         response to fd if not calling prune_cache, pass fd to prune_cache.
1558         (handle_request): Adjust invalidate_cache caller.
1559         (nscd_run): Pass -1 as fd to prune_cache.
1561 2006-05-30  Ulrich Drepper  <drepper@redhat.com>
1563         * sysdeps/posix/getaddrinfo.c (gaiconf_init): Initialize bits in
1564         the correct place.
1566 2006-05-29  Ulrich Drepper  <drepper@redhat.com>
1568         * nscd/nscd.h (struct database_dyn): Add prunelock field.
1569         * nscd/cache.c (prune_cache): Take prunelock before starting the
1570         work.  Just return in case it is already taken.
1571         * nscd/connections.c (dbs): Initialize .prunelock.
1573 2006-05-25  Ulrich Drepper  <drepper@redhat.com>
1575         * nis/nis_removemember.c (nis_removemember): Avoid unnecessary
1576         copying.  No need to allocate new array for group members.  Just
1577         move the pointers and update the size.
1579         * nis/nis_addmember.c (nis_addmember): Avoid unnecessary copying.
1580         Avoid memory leak in case realloc fails.  Simplification for
1581         better code generation.
1583         Avoid deprecation warning because of libc_hidden_proto for
1584         inet6_option_alloc.
1585         * inet/inet6_option.c (option_alloc): Renamed from
1586         inet6_option_alloc.  Made static.
1587         (inet6_option_alloc): Now a simple wrapper around option_alloc.
1588         (inet6_option_append): Call option_alloc.
1589         * include/netinet/in.h: Remove libc_hidden_proto for
1590         inet6_option_alloc.
1592         * nis/nis_callback.c (__nis_create_callback): Always call xdr_free
1593         for cleanup when cb!=NULL [Coverity CID 233].
1595 2006-05-24  Ulrich Drepper  <drepper@redhat.com>
1597         [BZ #2693]
1598         * inet/Makefile (routines): Add inet6_opt and inet6_rth.
1599         * inet/Versions (libc, GLIBC_2.5): Add inet6_opt_init,
1600         inet6_opt_append, inet6_opt_finish, inet6_opt_set_val, inet6_opt_next,
1601         inet6_opt_find, inet6_opt_get_val, inet6_rth_space, inet6_rth_init,
1602         inet6_rth_add, inet6_rth_reverse, inet6_rth_segments,
1603         and inet6_rth_getaddr.
1604         * inet/netinet/ip6.h (struct ip6_rthdr0): Make ip6r0_addr a flexible
1605         array.
1606         * inet/netinet/in.h (struct ip6_mtuinfo): Define.
1607         Mark inet6_option_* interfaces as deprecated.
1608         Declare inet6_opt_init, inet6_opt_append, inet6_opt_finish,
1609         inet6_opt_set_val, inet6_opt_next, inet6_opt_find, inet6_opt_get_val,
1610         inet6_rth_space, inet6_rth_init, inet6_rth_add, inet6_rth_reverse,
1611         inet6_rth_segments, and inet6_rth_getaddr.
1612         * inet/inet6_opt.c: New file.
1613         * inet/inet6_rth.c: New file.
1615         * inet/netinet/icmp6.h: Pretty printing.
1617         [BZ #2683]
1618         * elf/dl-addr.c (_dl_addr): Don't match undefined references.
1620 2006-05-23  Ulrich Drepper  <drepper@redhat.com>
1622         * nis/nis_lookup.c (nis_lookup): Use __prepare_niscall instead of
1623         doing it all here.  When server does not know the answer do not
1624         fail immediate, try parent first.
1626         * nis/nis_domain_of_r.c (nis_domain_of_r): Add missing buffer
1627         overflow test.
1629 2006-05-20  Ulrich Drepper  <drepper@redhat.com>
1631         * nis/nis_call.c (__prepare_niscall): New function.  Split out
1632         from __do_niscall.
1633         * nis/nis_table.c (__create_ib_request): Renamed from create_ib_request
1634         and exported.
1635         (__follow_path): New function.  Split out from nis_list.
1636         * nis/nis_xdr.h: Add libnsl_hidden_proto for _xdr_ib_request and
1637         _xdr_nis_result.
1638         * nis/nis_xdr.c: Add libnsl_hidden_def for _xdr_ib_request and
1639         _xdr_nis_result.
1640         * nis/libnsl.h: Declare __prepare_niscall, __create_ib_request,
1641         and __follow_path.
1642         * nis/Versions: Export __prepare_niscall, __create_ib_request,
1643         __follow_path, __do_niscall3, _xdr_ib_request, and _xdr_nis_result
1644         from libnsl for version GLIBC_PRIVATE.
1645         * nis/nisplus-parser.h: Remove _nss_nisplus_parse_pwent_chk.
1646         Remove entry parameter from _nss_nisplus_parse_pwent and
1647         _nss_nisplus_parse_grent.
1648         * nis/nss_nisplus/nisplus-parser.c: Likewise.
1649         * nis/nss_nisplus/nisplus-pwd.c: Remove support for SETENT_BATCH_READ
1650         again.  Rewrite getpwent handling to not use nis_first_entry and
1651         nis_next_entry.  Roll out own niscall handling.
1652         * nis/nss_nisplus/nisplus-grp.c: Likewise.
1654         * sunrpc/xdr_rec.c: Fix typo in comment.
1656 2006-05-19  Ulrich Drepper  <drepper@redhat.com>
1658         * nis/nis_call.c (__do_niscall3): Avoid code duplication in error
1659         handling.
1661         * nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
1662         to allocate memory for my_pollfd.  Better initialization of
1663         cb_is_running.  Use TEMP_FAILURE_RETRY.
1665         * malloc/memusage.sh (memusageso): Add quotes.
1666         (memusagestat): Likewise.
1667         * debug/xtrace.sh (pcprofileso): Likewise.
1668         (pcprofiledump): Likewise.
1669         * debug/Makefile ($(objpfx)xtrace): Use $LIB in SLIBDIR
1670         replacement.
1671         * malloc/Makefile ($(objpfx)memusage): Likewise.
1673         * nis/nis_callback.c (__nis_create_callback): Calls to
1674         svcudp_bufcreate and svctcp_create can fail.  Free ->xprt if
1675         asprintf call fails.
1677         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_sendreq): Make sure
1678         no uninitialized memory is passed to sendto.
1680 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
1682         * nis/nis_callback.c (__nis_create_callback): Use asprinf instead
1683         of snprintf+strdup.  Handle OOM.
1684         * nis/nis_callback.c (__nis_create_callback): Allocate cb and
1685         cb->serv together.  Remove now obsolete free calls.
1686         (__nis_destroy_callback): Remove now obsolete free call.
1688 2006-05-18  David Woodhouse  <dwmw2@redhat.com>
1690         * sysdeps/posix/getaddrinfo.c: Add unique labels to the default
1691         RFC3484 precedence table for fec0::/10 and fc00::/7 (site-local
1692         and ULA respectively). Set precedence for IPv4 address to 10 as
1693         defined in RFC3484 for preferring IPv6.
1694         * posix/gai.conf: Update to match the new default tables.
1696 2006-05-18  Jakub Jelinek  <jakub@redhat.com>
1698         * nis/nss_compat/compat-pwd.c (internal_setpwent): If nss_set*ent
1699         returned NSS_STATUS_UNAVAIL, still return NSS_STATUS_SUCCESS.
1700         * nis/nss_compat/compat-spwd.c (internal_setspent): Likewise.
1701         * nis/nss_compat/compat-grp.c (internal_setgrent): Likewise.
1703         * nis/nss_compat/compat-initgroups.c (nss_setgrent, nss_endgrent):
1704         Removed.
1705         (init_nss_interface): Remove initialization of these variables.
1707 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
1709         * nis/nis_call.c (rec_dirsearch): Little optimization: pull
1710         nis_free_directory forward to avoid duplication.
1712 2006-05-17  Ulrich Drepper  <drepper@redhat.com>
1714         * nis/nis_call.c (rec_dirsearch): Handle __nis_finddirectory and
1715         rec_dirsearch returning NULL.
1716         (first_shoot): Handle __nis_finddirectory returning NULL.
1717         (__nisfind_server): Fix leak when rec_dirsearch returns NULL.
1719         * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOSE, IN_MOVE,
1720         IN_ONLYDIR, IN_DONT_FOLLOW, and IN_MASK_ADD.
1722 2006-05-17  Jakub Jelinek  <jakub@redhat.com>
1724         * sunrpc/key_call.c (getkeyserv_handle): Call auth_destroy if
1725         pid changed.
1727 2006-05-15  Ulrich Drepper  <drepper@redhat.com>
1729         * include/rpc/pmap_prot.h: Mark all functions as hidden.
1731         * nscd/nscd_initgroups.c: Mark __gr_map_handle as hidden.
1732         * nscd/nscd_getgr_r.c: Likewise.
1734         * include/rpc/pmap_rmt.h: Mark all functions as hidden.
1736         * nscd/nscd_getai.c (__hst_map_handle): Mark as hidden.
1737         * nscd/nscd_gethst_r.c (__hst_map_handle): Likewise.
1739         * stdlib/longlong.h (__clz_tab): Mark as hidden.
1741         * iconv/gconv_int.h: Mark __gconv_lock as hidden.
1743         * include/rpc/key_prot.h: Mark all _internal functions as hidden.
1745         * include/rpc/auth.h: Mark xdr_des_block_internal and
1746         xdr_opaque_auth_internal as hidden.
1748         * sysdeps/unix/sysv/linux/getdents.c: Mark __have_no_getdents64 as
1749         hidden.
1751         * include/rpc/xdr.h: Mark all _internal functions as hidden.
1753         * misc/getusershell.c (okshells): Don't use static initializers,
1754         do it dynamically.
1756         * stdlib/fmtmsg.c (keywords): Change type of len element to
1757         uint32_t to not waste space on 64bit machines.
1759         * locale/setlocale.c: Change _nl_category_names into a string.
1760         Add new _nl_category_name_idxs.  Change all users.
1761         * locale/localeinfo.h: Adjust declaration of _nl_category_names.
1762         Declare _nl_category_name_idxs.
1763         * locale/findlocale.c: Adjust for _nl_category_names change.
1764         * locale/loadlocale.c: Likewise.
1765         * locale/newlocale.c: Likewise.
1766         * intl/dcigettext.c: Likewise.
1768         * iconv/gconv_conf.c (add_alias): Move actual alias handling to...
1769         (add_alias2): ...here.  New function.
1770         (__gconv_read_conf): Simplify builtin alias handling.
1771         (builtin_aliases): Convert to string to avoid relocations.
1772         * iconv/gconv_builtin.h: Add comment about correct formatting.
1774 2006-05-15  Jakub Jelinek  <jakub@redhat.com>
1776         * resolv/res_debug.c (loc_ntoa): Make error const.
1778 2006-05-14  Andreas Schwab  <schwab@suse.de>
1780         * math/complex.h [__LDBL_COMPAT]: Use __REDIRECT_NTH.
1782 2006-05-12  Jakub Jelinek  <jakub@redhat.com>
1784         * sysdeps/unix/sysv/linux/sched_getaffinity.c: Include sys/param.h.
1785         (__sched_getaffinity_new): Don't crash if cpusetsize is smaller than
1786         sizeof (cpu_set_t).
1788 2006-05-11  Ulrich Drepper  <drepper@redhat.com>
1790         * resolv/res_debug.c (loc_ntoa): Define error as array, not pointer.
1792         * include/arpa/nameser.h: Declare _ns_flagdata as hidden.
1794         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_master.
1795         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_master.
1797         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypbind_resp.
1798         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypbind_resp.
1800         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_cback_data.
1801         * include/rpcsvc/nis_callback.h: Add libnsl_hidden_proto for
1802         xdr_cback_data.
1804         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypupdate_args.
1805         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
1806         xdr_ypupdate_args.
1808         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_order.
1809         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_order.
1811         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_maplist.
1812         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_maplist.
1814         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_obj_p.
1815         * include/rpcsvc/nis_callback.h: New file.
1817         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_val.
1818         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_val.
1820         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
1821         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
1823         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypmaplist.
1824         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypmaplist.
1826         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
1827         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
1829         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypdelete_args.
1830         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
1831         xdr_ypdelete_args.
1833         * nis/nis_xdr.h: Mark all functions as hidden.  Remove
1834         __BEGIN_DECLS and __END_DECLS, the header is not installed.
1836         * nis/nis_error.c: Remove table of strings.  Use position
1837         independent mechanism.
1838         * nis/nis_error.h: New file.
1840 2006-05-11  Jakub Jelinek  <jakub@redhat.com>
1842         * locale/programs/ld-time.c (time_finish): If wide era name or
1843         format aren't provided, set both wname and wformat to L"".
1845 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
1847         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Only store
1848         results if the call was succesful.
1850         * nis/nss-nis.h: Mark __yperr2nss_tab and __yperr2nss_count as hidden.
1852         * nis/nss-nisplus.h: Mark __niserr2nss_tab and __niserr2nss_count
1853         as hidden.
1855 2006-05-10  Jakub Jelinek  <jakub@redhat.com>
1857         * misc/sys/queue.h: Remove uses of all QUEUEDEBUG_* macros.
1859 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
1861         * posix/wordexp.c (parse_glob): No need to check ifs for NULL, the
1862         caller makes sure this is not the case.
1863         (wordexp): Simplify ifs_white creation.  [Coverity CID 231]
1865 2006-05-09  Ulrich Drepper  <drepper@redhat.com>
1867         * posix/wordexp.c: Remove numerous NULL pointer tests before FREE
1868         calls.
1870         * io/ftw.c (open_dir_stream): Return right away if REALLOC fails.
1871         [Coverity CID 229, 230]
1873         * argp/argp-help.c (hol_entry_help): Handle STATE==NULL in ARG and
1874         DGETTEXT calls.
1875         (hol_help): Likewise.  [Coverity CID 226, 227]
1877         * string/argz-replace.c (__argz_replace): Unconditionally call
1878         free on SRC.  [Coverity CID 225]
1880         * nis/nis_creategroup.c (nis_creategroup): No need to duplicate
1881         the return value of __nis_default_owner and __nis_default_group,
1882         it has been especially allocated.  [Coverity CID 224]
1884         * nis/nis_defaults.c (searchXYX): New functions.  Used by both
1885         searchgroup and searchowner.  Significantly simplified.
1886         (__nis_default_owner): Remove duplication.  Do not locally copy the
1887         string before duplicating it.
1888         (__nis_default_group): Likewise.
1890         * nis/nis_lookup.c (nis_lookup): After calling nis_free_directory,
1891         we must clear the variable before calling __nisfind_server.
1893         * nis/nis_lookup.c (nis_lookup): Always free memory allocated with
1894         nis_getnames.  [Coverity CID 223]
1896         * locale/programs/locfile.c (locfile_read): Use alloca instead of
1897         xmalloc to allocate local repertoire name.  [Coverity CID 222]
1899         * iconv/iconv_charmap.c (use_to_charmap): No need to dynamically
1900         allocate memory for the input to add_bytes.  [Coverity CID 221]
1902         * posix/wordexp.c (w_addword): Free word if realloc fails and it
1903         was allocated here.  [Coverity CID 219, 220]
1905         * posix/getconf.c (print_all): Free confstr data after printing.
1906         [Coverity CID 218]
1908         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if
1909         list allocation fails.  [Coverity CID 215]
1911         * nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition.
1912         [Coverity CID 213]
1914         * argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if
1915         string is NULL.  [Coverity CID 212]
1916         * argp/Makefile: Add rules to build and run bug-argp1.
1917         * argp/bug-argp1.c: New file.
1919         * io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find
1920         end of string.
1921         * stdlib/canonicalize.c (__realpath): Likewise.
1923         * locale/programs/ld-time.c (time_finish): Don't dereference NULL
1924         pointer.  [Coverity CID 206]
1926         * elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map
1927         in statically linked code.
1928         * elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in
1929         statically built code, be prepared to have no link map.
1930         [Coverity CID 205]
1932         * argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in
1933         dgettext calls. [Coverity CID 204]
1935         * argp/argp-help.c (struct uparams): Remove valid member.  Change
1936         the one user.
1937         (uparam_names): Reduce size.  Avoid relative relocations.
1938         Moved to read-only segment.
1939         (fill_in_uparams): Update for new layout.
1941         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be
1942         assumed to always be != NULL. [Coverity CID 202]
1944         * argp/argp-help.c (hol_entry_help): Remove some dead code
1945         [Coverity CID 200].
1947         * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize
1948         away a few more unconditional yperr2nss calls.
1949         (_nss_nis_getservbyname_r): Likewise.
1951 2006-05-06  Ulrich Drepper  <drepper@redhat.com>
1953         * sysdeps/generic/ldsodefs.h: Remove support for non-core
1954         architectures.
1956         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Make sure
1957         that unused memory passed to sendto is nevertheless initialized.
1959         [BZ #2499]
1960         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Avoid
1961         possibly unaligned memory accesses.
1963         * include/arpa/nameser.h: Also optimize NS_PUT16 and NS_PUT32.
1964         * resolv/res_mkquery.c: Use NS_PUT16 and NS_PUT32 instead of __putshort
1965         and __putlong respectively.  Correct buffer overflow check for
1966         NS_NOTIFY_OP.
1968         * resolv/res_send.c (send_vc): Use ns_put16 instead of putshort.
1970         * resolv/res_send.c (res_queriesmatch): Fix typo in comment.
1971         (send_dg): Rewrite error handling to be more compact and avoid
1972         double recomputation of timeouts.  Pass MSG_NOSIGNAL to send.
1974         * include/arpa/nameser.h: Add optimizations for NS_GET16 and NS_GET32.
1976         * resolv/res_send.c (res_nameinquery): Use NS_GET16 directly
1977         instead of ns_get16.
1978         (res_queriesmatch): Likewise.  Minor optimization.
1980         [BZ #2499]
1981         * resolv/res_query.c (__libc_res_nquery): If answerp != NULL,
1982         __libc_res_nsend might reallocate the buffer for the answer.  In
1983         this case we have to reload the HP pointer.
1985 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
1987         * stdio-common/vfscanf.c (memory_error): Remove definition.  Add
1988         some branch prediction hints.
1990         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Define SPLICE_F_*.
1991         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1992         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1993         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1994         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1995         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1996         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
1997         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1999 2006-05-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2001         * sysdeps/s390/s390-32/elf/start.S: Replace pc relative relocation
2002         by a GOT relocation to make Scrt1.o position independent.
2003         * sysdeps/s390/s390-64/elf/start.S: Likewise.
2005         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S: Add support for
2006         six system call parameters.
2007         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
2009 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
2011         * sunrpc/svcauth_des.c (cache_init): Use calloc instead of
2012         malloc&bzero.
2014         * sunrpc/svc_udp.c (BZERO): Remove definition.
2015         (CALLOC): Define.
2016         (svc_enablecache): Use CALLOC instead of ALLOC&BZERO.
2018         * sunrpc/des_impl.c: Remove ALT_ECB support.  We never used it.
2019         (des_SPtrans): Use uint32_t type.
2020         (des_skb): Likewise.
2022         * sunrpc/xdr_ref.c (xdr_reference): Use calloc instead of malloc&bzero.
2024 2006-05-05  Jakub Jelinek  <jakub@redhat.com>
2026         [BZ #2509]
2027         * stdio-common/tst-printf.sh: Adjust for tst-printf.c change even
2028         on 32-bit arches.
2030 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
2032         * locale/programs/ld-address.c (address_finish): Fix one more
2033         place where the iso639 array might be accessed beyond the limits.
2035 2006-05-04  Ulrich Drepper  <drepper@redhat.com>
2037         * nis/nis_table.c (nis_list): Avoid clearing res twice before
2038         filling it for the first time.
2040         * nis/nis_table.c (get_tablepath): Renamed from __get_tablepath.
2041         Adjust all callers.
2042         Free res object content before returning.
2044         * sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero.
2046         * sunrpc/key_call.c (__rpc_thread_key_cleanup): Also free
2047         client->cl_auth.
2049         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Don't skip entire
2050         cleanup for initial thread, just the free call on TVP.
2052         * nscd/gai.c (__getline): Define.
2055 See ChangeLog.16 for earlier changes.