(_dl_open): Call _dl_close_worker instead of _dl_close.
[glibc/history.git] / ChangeLog
blob2ee96f0eeb532264a47c522c5f29de4df3640aa3
1 2006-10-27  Ulrich Drepper  <drepper@redhat.com>
3         [BZ #3426]
4         * stdlib/stdlib.h: Adjust comment for canonicalize_file_name to
5         reality.
7         [BZ #3429]
8         * elf/dl-open.c (dl_open_worker): Keep holding dl_load_lock until
9         we are sure we do not need it anymore for _dl_close.  ALso move
10         the asserts inside the lock region.
11         Patch mostly by Suzuki <suzuki@in.ibm.com>.
13 2006-10-27  Jakub Jelinek  <jakub@redhat.com>
15         * elf/dl-lookup.c (_dl_debug_bindings): Remove unised symbol_scope
16         argument.
17         (_dl_lookup_symbol_x): Adjust caller.
19         * sysdeps/generic/ldsodefs.h (struct link_namespaces): Remove
20         _ns_global_scope.
21         * elf/rtld.c (dl_main): Don't initialize _ns_global_scope.
23         * elf/dl-libc.c: Revert l_scope name changes.
24         * elf/dl-load.c: Likewise.
25         * elf/dl-object.c: Likewise.
26         * elf/rtld.c: Likewise.
27         * elf/dl-close.c (_dl_close): Likewise.
28         * elf/dl-open.c (dl_open_worker): Likewise.  If not SINGLE_THREAD_P,
29         always use __rtld_mrlock_{change,done}.  Always free old scope list
30         here if not l_scope_mem.
31         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Revert l_scope name
32         change.  Never free scope list here.  Just __rtld_mrlock_lock before
33         the lookup and __rtld_mrlock_unlock it after the lookup.
34         * elf/dl-sym.c: Likewise.
35         * include/link.h (struct r_scoperec): Remove.
36         (struct link_map): Replace l_scoperec with l_scope, l_scoperec_mem
37         with l_scope_mem and l_scoperec_lock with l_scope_lock.
39 2006-10-25  Ulrich Drepper  <drepper@redhat.com>
41         * sysdeps/gnu/netinet/tcp.h: Define TCP_CONGESTION.
43 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
45         * configure.in: Disable building profile libraries by default.
47 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
49         * sunrpc/xdr_mem.c (xdrmem_setpos): Don't compare addresses
50         as signed longs, check for x_base + pos overflow.
51         * sunrpc/Makefile (tests): Add tst-xdrmem2.
52         * sunrpc/tst-xdrmem2.c: New test.
54 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
56         * elf/dl-lookup.c (_dl_lookup_symbol_x): Add warning to
57         _dl_lookup_symbol_x code.
59 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
61         * elf/dl-runtime.c: Include sysdep-cancel.h.
62         (_dl_fixup, _dl_profile_fixup): Use __rtld_mrlock_* and
63         scoperec->nusers only if !SINGLE_THREAD_P.  Use atomic_*
64         instead of catomic_* macros.
65         * elf/dl-sym.c: Include sysdep-cancel.h.
66         (do_sym): Use __rtld_mrlock_* and scoperec->nusers only
67         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
68         * elf/dl-close.c: Include sysdep-cancel.h.
69         (_dl_close): Use __rtld_mrlock_* and scoperec->nusers only
70         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
71         * elf/dl-open.c: Include sysdep-cancel.h.
72         (dl_open_worker): Use __rtld_mrlock_* and scoperec->nusers only
73         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
75 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
77         [BZ #3313]
78         * malloc/malloc.c (malloc_consolidate): Set maxfb to address of last
79         fastbin rather than end of fastbin array.
81 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
83         * sysdeps/i386/i486/bits/atomic.h (catomic_decrement): Use correct
84         body macro.
85         * sysdeps/x86_64/bits/atomic.h
86         (__arch_c_compare_and_exchange_val_64_acq): Add missing casts.
87         (catomic_decrement): Use correct body macro.
89 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
91         * include/atomic.h: Add a unique prefix to all local variables
92         in macros.
93         * csu/tst-atomic.c (do_test): Test also catomic_* macros.
95 2006-10-16  Ulrich Drepper  <drepper@redhat.com>
97         [BZ #3369]
98         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Fix typos in rules 4
99         and 7.
101 2006-10-14  Ulrich Drepper  <drepper@redhat.com>
103         * resolv/arpa/nameser.h: Document that ns_t_a6 is deprecated.
105 2006-10-13  Ulrich Drepper  <drepper@redhat.com>
107         [BZ #3313]
108         * malloc/malloc.c (malloc_consolidate): Don't use get_fast_max to
109         determine highest fast bin to consolidate, always look into all of
110         them.
111         (do_check_malloc_state): Only require for empty bins for large
112         sizes in main arena.
114         * libio/stdio.h: Add more __wur attributes.
116         * elf/dl-minimal.c (realloc): Optimize last patch.
118 2006-10-12  Richard Sandiford  <richard@codesourcery.com>
120         [BZ #3352]
121         * elf/dl-minimal.c (realloc): Let malloc() return a new pointer,
122         and use memcpy() if it does.
124 2006-11-12  Andreas Jaeger  <aj@suse.de>
126         [BZ #2510]
127         * manual/search.texi (Hash Search Function): Clarify.
128         (Array Search Function): Clarify.
130 2006-11-12  Joseph Myers  <joseph@codesourcery.com>
132         [BZ #2830]
133         * math/atest-exp.c (main): Cast hex value to mp_limb_t before
134         shifting.
135         * math/atest-exp2.c (read_mpn_hex): Likewise.
136         * math/atest-sincos.c (main): Likewise.
138 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
140         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_pwait.
141         * sysdeps/unix/sysv/linux/sys/epoll.h: Declare epoll_pwait.
142         * sysdeps/unix/sysv/linux/Versions (libc): Add epoll_pwait for
143         version GLIBC_2.6.
144         * Versions.def: Add GLIBC_2.6 for libc.
146         * sysdeps/unix/sysv/linux/i386/sysdep.h (DOARGS_6): Fix offset.
148         * sysdeps/i386/i486/bits/atomic.h: Add catomic_* support.
150 2006-10-11  Jakub Jelinek  <jakub@redhat.com>
152         * malloc/malloc.c (_int_malloc): Remove unused any_larger variable.
154         * nis/nis_defaults.c (__nis_default_access): Don't call getenv twice.
156         * nis/nis_subr.c (nis_getnames): Use __secure_getenv instead of getenv.
157         * sysdeps/generic/unsecvars.h: Add NIS_PATH.
159 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
161         * include/atomic.c: Define catomic_* operations.
162         * sysdeps/x86_64/bits/atomic.h: Likewise.  Fix a few minor problems.
163         * stdlib/cxa_finalize.c: Use catomic_* operations instead of atomic_*.
164         * malloc/memusage.c: Likewise.
165         * gmon/mcount.c: Likewise.
166         * elf/dl-close.c: Likewise.
167         * elf/dl-open.c: Likewise.
168         * elf/dl-profile.c: Likewise.
169         * elf/dl-sym.c: Likewise.
170         * elf/dl-runtime.c: Likewise.
171         * elf/dl-fptr.c: Likewise.
172         * resolv/res_libc.c: Likewise.
174 2006-10-10  Ulrich Drepper  <drepper@redhat.com>
176         * nis/nis_subr.c (nis_getnames): Add trailing dot to NIS_PATH
177         components which lack them.
179         * nis/nis_subr.c (nis_getnames): Make sure that we always return
180         at least one entry consisting of the parameter concatenated with
181         the domain.
183 2006-10-10  Roland McGrath  <roland@frob.com>
185         * sysdeps/mach/hurd/utimes.c: Use a union to avoid an improper cast.
186         * sysdeps/mach/hurd/futimes.c: Likewise.
187         * sysdeps/mach/hurd/lutimes.c: Likewise.
189 2006-10-09  Ulrich Drepper  <drepper@redhat.com>
190             Jakub Jelinek  <jakub@redhat.com>
192         Implement reference counting of scope records.
193         * elf/dl-close.c (_dl_close): Remove all scopes from removed objects
194         from the list in objects which remain.  Always allocate new scope
195         record.
196         * elf/dl-open.c (dl_open_worker): When growing array for scopes,
197         don't resize, allocate a new one.
198         * elf/dl-runtime.c: Update reference counters before using a scope
199         array.
200         * elf/dl-sym.c: Likewise.
201         * elf/dl-libc.c: Adjust for l_scope name change.
202         * elf/dl-load.c: Likewise.
203         * elf/dl-object.c: Likewise.
204         * elf/rtld.c: Likewise.
205         * include/link.h: Include <rtld-lowlevel.h>.  Define struct
206         r_scoperec.  Replace r_scope with pointer to r_scoperec structure.
207         Add l_scoperec_lock.
208         * sysdeps/generic/ldsodefs.h: Include <rtld-lowlevel.h>.
209         * sysdeps/generic/rtld-lowlevel.h: New file.
211         * include/atomic.h: Rename atomic_and to atomic_and_val and
212         atomic_or to atomic_or_val.  Define new macros atomic_and and
213         atomic_or which do not return values.
214         * sysdeps/x86_64/bits/atomic.h: Define atomic_and and atomic_or.
215         Various cleanups.
216         * sysdeps/i386/i486/bits/atomic.h: Likewise.
218         * po/sv.po: Update from translation team.
220 2006-10-07  Ulrich Drepper  <drepper@redhat.com>
222         * Versions.def: Add GLIBC_2.6 to libpthread.
224         * include/shlib-compat.h (SHLIB_COMPAT): Expand parameters before use.
225         (versioned_symbol): Likewise.
226         (compat_symbol): Likewise.
228         * po/tr.po: Update from translation team.
230 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
232         * nis/Banner: Removed.  It's been integral part forever and the
233         author info is incomplete anyway.
234         * libio/Banner: Likewise.
236         * nis/nis_table.c (nis_list): If __follow_path fails in the new
237         code, make sure the nis_freeresult call doesn't crash and that the
238         result is reported correctly.
240 2006-09-27  Jakub Jelinek  <jakub@redhat.com>
242         * nis/nis_table.c (nis_list): Handle FOLLOW_PATH | ALL_RESULTS
243         when callback is NULL.
245         * nis/Versions (libnss_nisplus): Add
246         _nss_nisplus_initgroups_dyn@@GLIBC_PRIVATE.
247         * nis/Makefile (libnss_nisplus-routines): Add nisplus-initgroups.
248         * nis/nss_nisplus/nisplus-grp.c (tablename_val, tablename_len,
249         _nss_create_tablename): Rename to...
250         (grp_tablename_val, grp_tablename_len, _nss_grp_create_tablename):
251         ... these.  No longer static.
252         (internal_setgrent): Adjust users.
253         (_nss_nisplus_getgrnam_r, _nss_nisplus_getgrgid_r): Likewise.
254         Don't use locking around _nss_grp_create_tablename call.
255         * nis/nss_nisplus/nisplus-initgroups.c: New file.
257 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
259         * version.h (VERSION): Bump to 2.5.90 for new development tree.
261 2006-10-06  Andreas Jaeger  <aj@suse.de>
263         * include/features.h (__GLIBC_MINOR__): It's glibc 2.5 now.
265 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
267         * po/pl.po: Update from translation team.
269         * nscd/nscd.c (main): Fix typo in message.
270         Patch by Jakub Bogsz <qboosh@pld-linux.org>.
272 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
274         [BZ #3291]
275         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
276         errno.h, signal.h, unistd.h and sysdep-cancel.h.
277         (__sigprocmask): Define.
279 2006-10-02  Ulrich Drepper  <drepper@redhat.com>
281         * elf/rtld.c (dl_main): Don't use prelinking if LD_DYNAMIC_WEAK is
282         used.
284 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
286         * nscd/mem.c (mempool_alloc): Round array size to 16 bytes
287         in oldtotal and newtotal calculation.
288         * nscd/nscd-client.h (struct mapped_database): Add datasize
289         field.
290         * nscd/nscd_helper.c (get_mapping): Initialize datasize field.
291         (__nscd_get_map_ref): Get a new mapping even if mapping's data_size
292         increased.
293         (__nscd_cache_search): Add checks to make sure we never reference
294         data beyond the current mapping.
296 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
298         * sysdeps/posix/getaddrinfo.c (match_prefix): Make mask and val
299         variables const to avoid compiler warnings.
301         * io/fts.c (fts_close): Remove redundant checks.
302         (fts_build): Likewise.
303         (fts_palloc): Likewise.
305         * manual/message.texi (Advanced gettext functions,
306         Using gettextized software): Fix typos.
308 2006-09-30  Ulrich Drepper  <drepper@redhat.com>
310         * posix/glob.c (glob_in_dir): Add some comments and asserts to
311         explain why there are no leaks.
313 2006-09-29  Ulrich Drepper  <drepper@redhat.com>
315         * libio/wmemstream.c: Include <wchar.h>.
316         * libio/bug-wmemstream1.c: Likewise.
317         * libio/tst-wmemstream1.c: Likewise.
318         * libio/tst-wmemstream2.c: Likewise.
320         * version.h (RELEASE): Bump to 2.5.
321         * README: Regenerated.
323         * locale/iso-3166.def: Add Aaland Islands and Montenegro.
325         [BZ #3273]
326         * nscd/nscd_initgroups.c (__nscd_getgrouplist): It is OK to have
327         found no group members.
328         Patch by Petr Baudis.
330 2006-09-29  Jakub Jelinek  <jakub@redhat.com>
332         * elf/rtld.c (_dl_start_final): If not USE___THREAD, don't
333         assert bootstrap_map.l_tls_modid is zero.
334         (_dl_start): Initialize bootstrap_map.l_tls_modid to 0
335         if USE___THREAD.
337 2006-09-27  Ulrich Drepper  <drepper@redhat.com>
339         * libio/stdio.h: Move open_wmemstream prototype to ...
340         * wcsmbs/wchar.h: ... here.
342 2006-09-25  Jakub Jelinek  <jakub@redhat.com>
344         [BZ #3252]
345         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Handle only
346         fchownat syscall and __ASSUME_LCHOWN_SYSCALL case inline, call
347         __{,l}chown to handle the rest.
348         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Handle only
349         fchownat syscall and __ASSUME_32BITUIDS case inline, call
350         __{,l}chown to handle the rest.
351         * sysdeps/unix/sysv/linux/sparc/sparc32/fchownat.c: Include
352         i386/fchownat.c.
353         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c: Likewise.
354         * sysdeps/unix/sysv/linux/sh/fchownat.c: Likewise.
356         [BZ #3253]
357         * posix/glob.c (glob_in_dir): Don't alloca one struct globlink at a
358         time, rather allocate increasingly bigger arrays of pointers, if
359         possible with alloca, if too large with malloc.
361 2006-09-24  Jakub Jelinek  <jakub@redhat.com>
363         * sysdeps/powerpc/fpu/libm-test-ulps: Updated.
365         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Fix 2 typos.
367 2006-09-24  Ulrich Drepper  <drepper@redhat.com>
369         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Implement rule 4,
370         home addresses.
371         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Recognize
372         IFA_F_HOMEADDRESS flag for interfaces.
373         * include/ifaddrs.h (struct in6addrinfo): Define
374         in6ai_homeaddress.
376 2006-09-21  Jakub Jelinek  <jakub@redhat.com>
378         [BZ #3225]
379         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (PTR_MANGLE3,
380         PTR_DEMANGLE3): Define.
381         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (PTR_MANGLE3,
382         PTR_DEMANGLE3): Likewise.
383         * sysdeps/powerpc/powerpc32/__longjmp-common.S (__longjmp): Use them.
384         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp):
385         Likewise.
386         * sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp): Likewise.
388 2006-09-20  Jakub Jelinek  <jakub@redhat.com>
390         * po/libc.pot: Regenerated.
391         * po/be.po: Updated.
392         * po/ca.po: Likewise.
393         * po/cs.po: Likewise.
394         * po/da.po: Likewise.
395         * po/de.po: Likewise.
396         * po/el.po: Likewise.
397         * po/en_GB.po: Likewise.
398         * po/es.po: Likewise.
399         * po/fi.po: Likewise.
400         * po/fr.po: Likewise.
401         * po/gl.po: Likewise.
402         * po/hr.po: Likewise.
403         * po/hu.po: Likewise.
404         * po/ja.po: Likewise.
405         * po/ko.po: Likewise.
406         * po/nb.po: Likewise.
407         * po/nl.po: Likewise.
408         * po/pl.po: Likewise.
409         * po/pt_BR.po: Likewise.
410         * po/ru.po: Likewise.
411         * po/rw.po: Likewise.
412         * po/sk.po: Likewise.
413         * po/sv.po: Likewise.
414         * po/tr.po: Likewise.
415         * po/zh_CN.po: Likewise.
416         * po/zh_TW.po: Likewise.
418         [BZ #3137]
419         * iconv/iconv_prog.c (main): Fix spelling in error message.
420         * iconv/iconvconfig.c (main): Likewise.
421         * locale/programs/ld-collate.c (handle_ellipsis): Likewise.
422         * locale/programs/ld-ctype.c (charclass_symbolic_ellipsis): Likewise.
423         * locale/programs/localedef.c (main): Likewise.
424         * locale/programs/repertoire.c (repertoire_read): Likewise.
425         * timezone/zdump.c (main): Likewise.
426         * nscd/connections.c (handle_request): Fix spelling in log message.
427         Patch by Malcolm Parsons <malcolm.parsons@gmail.com>.
429 2006-09-20  Ulrich Drepper  <drepper@redhat.com>
431         * inet/inet6_option.c: Also emit linker warnings for the RFC 2292
432         interfaces.
434 2006-09-20  Andreas Jaeger  <aj@suse.de>
436         * math/libm-test.inc (lrint_test_upward): Fix typo.
438 2006-06-17  Joseph S. Myers  <joseph@codesourcery.com>
440         [BZ #2592]
441         * math/libm-test.inc (lrint_test_tonearest): New function.
442         (lrint_test_towardzero): New function.
443         (lrint_test_downward): New function.
444         (lrint_test_upward): New function.
445         (main): Run these new tests.
446         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Correct rounding
447         of values near to 0.
448         (two52): Use double not long double.
449         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
450         * sysdeps/ieee754/flt-32/s_llrintf.c (__llrintf): Likewise.
451         (two23): Use float not double.
452         * sysdeps/ieee754/flt-32/s_lrintf.c (__lrintf): Likewise.
453         (two23): Use float not double.
454         * sysdeps/ieee754/ldbl-128/s_llrintl.c (__llrintl): Likewise.
455         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
456         * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Likewise.
457         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
459 2006-09-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
461         * sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c (__makecontext):
462         Cast sp to unsigned long to avoid compiler warning.
463         Use __makecontext_ret function instead of a trampoline on the stack.
464         (__makecontext_ret): New function.
465         * sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c: Likewise.
467 2006-09-19  Jakub Jelinek  <jakub@redhat.com>
469         * elf/dl-cache.c (HWCAP_CHECK): If _DL_PLATFORMS_COUNT, but
470         platform == -1, reject any libs with non-zero _DL_HWCAP_PLATFORM
471         bits.
473 2006-09-19  Ulrich Drepper  <drepper@redhat.com>
475         * elf/dl-close.c (_dl_close): If dependency is not unloaded make
476         sure no reference to the unloaded map's search list remains in the
477         dependency's scope.
479 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
481         * elf/Makefile: Add rules to build and run unload7 test.
482         * elf/unload7.c: New test.
483         * elf/unload7mod1.c: New file.
484         * elf/unload7mod2.c: New file.
486 2006-09-18  Jakub Jelinek  <jakub@redhat.com>
488         * sysdeps/unix/sysv/linux/sys/ptrace.h (PT_GETEVENTMSG): Fix pasto.
489         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h (PTRACE_SETOPTIONS,
490         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
491         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h (PTRACE_SETOPTIONS,
492         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
493         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h (PTRACE_SETOPTIONS,
494         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
495         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h (PTRACE_SETOPTIONS,
496         PTRACE_GETEVENTMSG): Likewise.
497         (PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Change to the arch independent
498         values.
500 2006-09-17  Mike Frysinger  <vapier@gentoo.org>
502         * sysdeps/unix/sysv/linux/sys/ptrace.h (PTRACE_SETOPTIONS,
503         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
504         * sysdeps/unix/sysv/linux/ptrace.c (ptrace): Check PTRACE_SETOPTIONS,
505         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO and PTRACE_SETSIGINFO.
507 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
509         * sysdeps/powerpc/powerpc32/register-dump.h (register_dump): Don't
510         write '\0' to the fd.
511         * sysdeps/mach/hurd/powerpc/register-dump.h (register_dump): Likewise.
512         * sysdeps/powerpc/powerpc64/register-dump.h (register_dump): Likewise.
513         Change regs to unsigned long pointer from unsigned int, fix fscr
514         offset.
516 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
518         * io/Makefile (CFLAGS-fstatat.c): Set.
519         (CFLAGS-fstatat64.c): Likewise.
520         (CFLAGS-mknodat.c): Likewise.
522         * sysdeps/ieee754/ldbl-128ibm/s_llrintl.c: Comment fixes.
523         * sysdeps/ieee754/ldbl-128ibm/s_llroundl.c: Likewise.
524         * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c: Rewritten.
525         * sysdeps/ieee754/ldbl-128ibm/s_lroundl.c: Rewritten.
527 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
528             Steven Munroe  <sjmunroe@us.ibm.com>
530         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 4 new cap
531         names to the beginning.  Rename "cell" to "cellbe".
532         (_dl_powerpc_platforms): New.
533         * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
534         (HWCAP_IMPORTANT): Remove power{4,5,5+} and cell.
535         (_DL_PLATFORMS_COUNT, _DL_FIRST_PLATFORM): Define.
536         (_DL_HWCAP_PLATFORM): Define to new mask.
537         (_dl_platform_string, _dl_string_platform): New functions.
538         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_BOOKE, PPC_FEATURE_SMT,
539         PPC_FEATURE_ICACHE_SNOOP, PPC_FEATURE_ARCH_2_05): Define.
541 2006-09-12  Jakub Jelinek  <jakub@redhat.com>
543         [BZ #2526]
544         * README.libm: Fix a thinko in sqrt algorithm description.
546         [BZ #3143]
547         * manual/string.texi (argz_delete): Fix prototype.
548         Patch by <alpt@freaknet.org>.
550 2006-08-26  Joseph Myers  <joseph@codesourcery.com>
552         [BZ #3138]
553         * io/test-lfs.c (do_prepare): Give name_len type size_t.
554         * io/tst-fcntl.c (do_prepare): Likewise.
555         * posix/tst-exec.c (do_prepare): Likewise.
556         * posix/tst-preadwrite.c (do_prepare): Likewise.
557         * posix/tst-spawn.c (do_prepare): Likewise.
558         * posix/tst-truncate.c (do_prepare): Likewise.
559         * rt/tst-aio.c (do_prepare): Likewise.
560         * rt/tst-aio64.c (do_prepare): Likewise.
561         * stdlib/test-canon2.c (do_prepare): Give test_dir_len type
562         size_t.
564 2006-09-09  Ulrich Drepper  <drepper@redhat.com>
566         [BZ #2821]
567         * time/mktime.c (guess_time_tm): Fix overflow detection.
568         * time/Makefile (tests): Add bug-mktime1.
569         * time/bug-mktime1.c: New file.
571         [BZ #3189, #3188]
572         * misc/sys/mman.h (remap_file_pages): Make available for _GNU_SOURCE.
573         (mremap): Likewise.
575 2006-09-07  Jakub Jelinek  <jakub@redhat.com>
577         [BZ #1006]
578         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela):
579         Ensure relocation doesn't clobber any bits outside of the
580         immediate field for R_SPARC_TLS_LE_HIX22, R_SPARC_WDISP30,
581         R_SPARC_HI22 and R_SPARC_H44.
583         [BZ #2775]
584         * malloc/malloc.c (sYSMALLOc): Only call grow_heap if
585         (long) (MINSIZE + nb - old_size) is positive.
587         * malloc/arena.c (grow_heap): When growing bail even if new_size
588         is negative.
590         [BZ #3155]
591         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S (__lrint): Don't access
592         stack below r1.
594 2006-09-06  Jakub Jelinek  <jakub@redhat.com>
596         * posix/regex_internal.c (re_string_reconstruct): Handle
597         offset < pstr->valid_raw_len && pstr->offsets_needed case.
598         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
599         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
600         re_string_context_at.
601         * posix/Makefile: Add rules to build and run bug-regex26 test.
602         * posix/bug-regex26.c: New test.
604         * locale/programs/ld-collate.c (collate_read): Goto sym_equiv_free
605         rather than col_sym_free.  Move seqp declaration earlier.
607         * resolv/gai_suspend.c (gai_suspend): Make sure result is initialized.
609 2006-09-05  Jakub Jelinek  <jakub@redhat.com>
611         * nscd/initgrcache.c (addinitgroupsX): Move any_success
612         decl before first goto out.
614 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
616         * Makerules (shlib.lds): If have-hash-style, put .hash section
617         at the end of the RO segment.
619 2006-09-04  Ulrich Drepper  <drepper@redhat.com>
621         * elf/do-lookup.h (do_lookup_x): Initialize symidx in case the new
622         style hash table format is used.
624 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
626         * resolv/res_mkquery.c (res_nmkquery): Set hp->id to statp->id after
627         randomization rather than before.
628         * resolv/res_init.c (res_randomid): Don't call gettimeofday here.
630 2006-08-31  Jakub Jelinek  <jakub@redhat.com>
632         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Add ld.so.
634         * malloc/malloc.c (_int_malloc): Use full list insert and not
635         shortcut which assumes the list is empty for large requests
636         too.
638         * elf/tst-addr1.c (do_test): Allow i.dli_sname "_IO_printf".
640 2006-08-30  Jakub Jelinek  <jakub@redhat.com>
642         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (splice): Add offin
643         and offout arguments to the prototype.
644         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (splice): Likewise.
645         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (splice): Likewise.
646         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (splice): Likewise.
647         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (splice): Likewise.
648         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (splice): Likewise.
649         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (splice): Likewise.
650         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (splice): Likewise.
651         * sysdeps/unix/sysv/linux/syscalls.list (splice): Adjust args string.
653 2006-08-28  Ulrich Drepper  <drepper@redhat.com>
655         * elf/dl-load.c (_dl_init_paths): Expand DSTs.
657         * elf/dl-open.c (dl_open_worker): Allow $LIB and $PLATFORM in
658         dlopen parameters.
660 2006-08-28  Jakub Jelinek  <jakub@redhat.com>
662         * inet/getnameinfo.c (getnameinfo): For AF_INET, check errno
663         only if herrno is NETDB_INTERNAL.  Handle errors other than
664         ERANGE outside of the loops, handle TRY_AGAIN.
666         * locale/programs/ld-ctype.c (translit_flatten): Issue error
667         if other's ctype category was missing.
668         * locale/programs/ld-collate.c (collate_read): Return if
669         copy_locale's collate category is missing.
671 2006-08-27  Ulrich Drepper  <drepper@redhat.com>
673         [BZ #2684]
674         * malloc/malloc.c (public_rEALLOc): Try harder by using other
675         arenas if allocation failed.
676         Patch mostly by Jan Edler <jan.edler@indexengines.com>.
678 2006-08-26  Ulrich Drepper  <drepper@redhat.com>
680         * malloc/malloc.c (bin_at): Rewrite to be more clear and to not
681         waste bins[0..1].
682         (malloc_state): Reduce bins size by 2.
683         (_int_malloc): Fix test for large enough buffer for early termination.
684         When no unsorted block matches perfectly and an exiting block has
685         to be split, use full list insert and not shortcut which assumes
686         the list is empty.
688         * locale/programs/ld-ctype.c (ctype_read): Better patch for read
689         failure.
691 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
693         * locale/programs/ld-ctype.c (ctype_read): If CTYPE is NULL, don't
694         do anything.
696         * sysdeps/generic/ldsodefs.h (DL_ADDR_SYM_MATCH): For undefined
697         symbol require exact match (these are PLTs).
698         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
699         (_dl_ppc64_addr_sym_match): Likewise.
701         [BZ #2683]
702         * elf/dl-addr.c (_dl_addr): Don't ignore all undefined symbols.
703         If symbol has a value use it.
704         * elf/tst-dladdr1.c: New file.
705         * elf/Makefile: Add rules to build and run tst-addr1.
707 2006-08-24  Jakub Jelinek  <jakub@redhat.com>
709         * malloc/malloc.c (sYSMALLOc): Avoid infinite loop if MMAP
710         keeps failing and heap growth or new heap creation isn't
711         successful either.
712         * malloc/tst-malloc.c (main): Add new tests.
714 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
716         [BZ #2734]
717         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use same conditions
718         as in the x86-64 code to use bswap.
720 2006-05-21  Joseph S. Myers  <joseph@codesourcery.com>
722         [BZ #2680]
723         * posix/unistd.h (getlogin_r): Condition on __USE_POSIX199506, not
724         __USE_UNIX98.
725         * posix/bits/unistd.h: Likewise.
727 2006-05-15  Mike Frysinger  <vapier@gentoo.org>
729         [BZ #2751]
730         * string/strchr.c: Add cast to avoid warning.
732 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
734         * malloc/malloc.c (DEFAULT_MMAP_THRESHOLD_MAX): For 32-bit
735         platforms define as 512K.  For 64-bit platforms as 32MB.  The lower
736         limit is needed to avoid the exploding of the address space
737         requirement for secondary heaps.
738         * malloc/arena.c (HEAP_MAX_SIZE): Define using
739         DEFAULT_MMAP_THRESHOLD_MAX if it is defined.
741 2006-07-30  Joseph S. Myers  <joseph@codesourcery.com>
743         [BZ #3018]
744         * Makerules (depfiles): Handle extra-test-objs the same as
745         extra-objs.
746         (common-mostlyclean): Likewise.
747         * dlfcn/Makefile (extra-objs): Add modules to extra-test-objs
748         instead.
749         * elf/Makefile (extra-objs): Likewise.
750         * stdlib/Makefile (extra-objs): Likewise.
752 2006-08-14  Eric Blake  <ebb9@byu.net>
754         [BZ #3044]
755         * misc/error.h: Assume C89 or better.
756         * misc/error.c: Likewise.
758 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
760         [BZ #3040]
761         * sysdeps/unix/sysv/linux/openat.c: Fix compilation if
762         __ASSUME_ATFCTS is defined.
764 2006-08-19  Ulrich Drepper  <drepper@redhat.com>
766         * malloc/malloc.c (_int_malloc): Limit number of unsorted blocks
767         to sort in each call.
769         * nis/nss_nis/nis-service.c (internal_nis_getservent_r): . If map
770         is empty simply return and use next service.
771         * nis/nss_nis/nis-rpc.c (internal_nis_getrpcent_r): Likewise.
773         * locale/programs/charmap.c (charmap_read): Add new parameter.  It
774         tells us when not finding a charmap file is an error.
775         * locale/programs/charmap.h: Adjust charmap_read prototype.
776         * iconv/iconv_prog.c (main): Tell charmap_read it's no error if we
777         cannot find a charmap.
778         * locale/programs/localedef.c (main): Adjust charmap_read call.
780 2006-08-15  Jakub Jelinek  <jakub@redhat.com>
782         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Use
783         sysdeps/posix/pause.c implementation instead.
785 2006-08-09  Jakub Jelinek  <jakub@redhat.com>
787         * sysdeps/unix/nice.c (nice): Transform EACCES errno from setpriority
788         to EPERM.
790 2006-08-13  Andreas Schwab  <schwab@suse.de>
792         * sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_runtime_resolve):
793         Don't clobber caller's LRSAVE.
794         (_dl_prof_resolve): Likewise.
796 2006-08-14  Ulrich Drepper  <drepper@redhat.com>
798         [BZ #1996]
799         * libio/memstream.c (open_memstream): Allocate initial buffer with
800         calloc.
801         * libio/wmemstream.c (open_wmemstream): Likewise.
802         * libio/strops.c: Pretty printing.
803         (_IO_str_overflow): Clear uninitialized part of the new buffer.
804         (enlarge_userbuf): New function.
805         (_IO_str_seekoff): Call it if seek position is larger than current
806         buffer.
807         * libio/wstrops.c: Likewise.
808         * libio/vasprintf.c: Add comment as to why we do not have to use
809         calloc instead of malloc to allocate initial buffer.
810         * libio/Makefile (tests): Add bug-memstream1 and bug-wmemstream1.
811         * libio/bug-memstream1.c: New file.
812         * libio/bug-wmemstream1.c: New file.
814 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
816         * libio/wstrops.c: Remove dead macro definitions and comments.
817         * libio/strops.c: Likewise.
819         [BZ #2764]
820         * login/utmpname.c (__utmpname): Remove unnecessary test.
822 2006-06-08  Joseph Myers  <jsm28@gcc.gnu.org>
824         [BZ #2832]
825         * math/gen-libm-test.pl (clean_up_number): Do not remove trailing
826         0s from integers.
828 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
830         [BZ #2987]
831         * sysdeps/unix/sysv/linux/clock_settime.c: Add code to use syscall
832         for CPU clocks.
833         * sysdeps/unix/clock_settime.c: Add support for platform-specific
834         setting of CPU clocks.
836 2006-06-23  Paul Eggert  <eggert@cs.ucla.edu>
838         [BZ #2841]
839         * sysdeps/generic/stdint.h (UINT8_C, UINT16_C): Don't append 'U',
840         since C99 requires the result to promote to 'int' when uint_least8_t
841         and uint_least16_t promote to 'int'.
843 2006-08-12  Ulrich Drepper  <drepper@redhat.com>
845         [BZ #3013]
846         * locale/programs/ld-ctype.c (ctype_output): Adjust alignments, fix
847         lenght of one output field, correct bitmask creation.
848         * locale/programs/ld-time.c: Add alignment.
850         [BZ #2997]
851         * misc/error.c: Add space between program name and message if file
852         name is missing.
854 2006-08-03  Eric Blake  <ebb9@byu.net>
856         [BZ #2998]
857         * misc/error.c (error_tail) [_LIBC]: Avoid invalid free.
859 2006-08-09  Ulrich Drepper  <drepper@redhat.com>
861         * malloc/memusagestat.c: Silence warnings.
863         * malloc/malloc.c: Dynamically size mmap treshold if the program
864         frees mmaped blocks.
865         Patch by Valerie Henson and Arjan van de Ven.
867 2006-08-08  Jakub Jelinek  <jakub@redhat.com>
869         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_DIRECT): Protect with
870         __USE_GNU.
872         * stdlib/strtol_l.c (__strtol_ul_max_tab, __strtol_ul_rem_tab,
873         __strtol_ull_max_tab, __strtol_ull_rem_tab): Declare.
874         (DEF): Don't put the var into .gnu.linkonce.r.* section.
875         Only provide var definitions in strtol_l (or for *ull*
876         in strtoll_l).
878         * stdio-common/bug16.c (tests): New array.
879         (do_tests): Allow the first hexadecimal digit
880         to be 1, 2, 4 or 8.  Do 3 additional tests.
882         * sysdeps/s390/fpu/libm-test-ulps: Update.
884         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c (fchownat): Use
885         fchownat syscall if available.
886         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Likewise.
887         * sysdeps/unix/sysv/linux/sh/fchownat.c (fchownat): Likewise.
888         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Likewise.
890 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
892         * nis/nis_xdr.c: Avoid some function calls.
894 2006-08-07  Jakub Jelinek  <jakub@redhat.com>
895             Ulrich Drepper  <drepper@redhat.com>
897         * nis/nis_call.c (rec_dirsearch) [case LOWER_NAME]: Don't take
898         short cut if only one name component is stripped away.
900 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
902         * nis/nis_call.c: Minor cleanups throughout.
903         (rec_dirsearch) [case HIGHER_NAME]: Correctly size ndomain array.
904         (first_shoot): Add search_parent_first parameter.  Only if it is set
905         search parent server first.
906         If directory for table found through cold start cache is not the same
907         as referenced in the cache, don't use it.
908         (__nisfind_server): Take additional parameter.  Pass it on to
909         first_shoot.
910         (__prepare_niscall): Adjust __nisfind_server call.
911         * nis/rpcsvc/nislib.h: Adjust __nisfind_server prototype.
912         * nis/nis_table.c: Adjust __nisfind_server call.
913         * nis/nis_lookup.c: Likewise.
914         (nis_lookup): Don't loop endlessly if name is reduced to ".".
916 2006-08-03  Ulrich Drepper  <drepper@redhat.com>
918         [BZ #2182]
919         * math/s_cacosh.c: Return values from positive branch.
920         * math/s_cacoshf.c: Likewise.
921         * math/s_cacoshl.c: Likewise.
923         [BZ #2883]
924         * sysvipc/sys/msg.h: Change return value to ssize_t.
925         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
926         * sysvipc/msgrcv.c: Likewise.
927         * include/sys/msg.h: Likewise.
929         * grp/initgroups.c (internal_getgrouplist): Remove unnecessary
930         test introduced in patch for bz #661.
931         (getgrouplist): Simplify code a bit.  Don't allocate one additional
932         element for NEWGROUPS.
934         [BZ #2908]
935         * stdio-common/printf_fphex.c (__printf_fphex): When rounding up
936         'f', use '1' as leading digit not '\1'.
937         * stdio-common/Makefile (tests): Add bug16.
938         * stdio-common/bug16.c: New file.
940         [BZ #2914]
941         * sysdeps/unix/sysv/linux/gethostid.c: Don't define OLD_HOSTIDFILE
942         and don't try to open it.  The patch introducing the macro
943         contained a bug and used the same file name as the new file
944         instead of using /var/adm/hostid.  Nobody complaint so I'm taking
945         this out completely.
947         [BZ #2926]
948         * assert/assert.h: Move cast to void inside ?: to quiet gcc.
949         Patch by Jerry James <Jerry.James@usu.edu>.
951         * rt/Makefile (tests): Add tst-clock2.
952         * rt/tst-clock2.c: New file.
954         [BZ #2978]
955         * resolv/gai_notify.c (__gai_notify_only): Copy memory for thread
956         function and its parameters and pass it to new thread.
957         (__gai_notify): Add support for alternative waiting for completion.
958         * resolv/gai_suspend.c (gai_suspend): Add support for alternative
959         waiting for completion.
960         * resolv/getaddrinfo_a.c: Likewise.
961         * resolv/gai_misc.h (struct waitlist): Don't add cond if alternative
962         waiting for completion is used.
963         * resolv/gai_misc.c: Allow overwriting code to start helper thread.
964         * resolv/gai_cancel.c: Include <gai_misc.h> not "gai_misc.h".
965         * resolv/gai_error.c: Likewise.
966         * resolv/gai_sigqueue.c: Likewise.
968 2006-08-02  Thomas Schwinge  <tschwinge@gnu.org>
970         * hurd/getdport.c (__getdport): Don't return EBADF; instead set
971         errno to EBADF and return MACH_PORT_NULL.
973 2006-06-23  Joseph Myers  <joseph@codesourcery.com>
975         [BZ #2980]
976         * posix/Makefile (CFLAGS-waitid.c): Add -fasynchronous-unwind-tables.
978 2006-08-02  Ulrich Drepper  <drepper@redhat.com>
980         * elf/dl-addr.c (_dl_addr): If GNU-style hash tables are present,
981         walk them instead of the symbol table.
983 2006-08-01  Ulrich Drepper  <drepper@redhat.com>
985         [BZ #2098]
986         * nscd/initgrcache.c (addinitgroupsX): Judge successful lookups by
987         status of NSS calls, not the number of returned entries.
989         * sysdeps/unix/sysv/linux/syscalls.list: Remove add_key,
990         request_key, keyctl.
992 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
994         * sysdeps/unix/sysv/linux/dl-osinfo.h: Remove unnecessary include.
996 2006-07-16  Jeff Bailey  <jbailey@ubuntu.com>
998         * elf/tst-auditmod1.c: Fix typo in #error.
1000 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
1002         * elf/tst-auditmod1.c: Remove code for unsupported architectures.
1004         * iconvdata/run-iconv-test.sh: Run cmp in C locale.
1006 2006-07-20  Adam Nemet  <anemet@caviumnetworks.com>
1008         * stdlib/test-canon.c (do_test): Close fd before unlinking file so
1009         that the directory is empty even on non-POSIX filesystems.
1011 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
1013         * elf/dl-open.c (dl_open_worker): Add branch prediction.
1015         * nis/nss_compat/compat-grp.c: Avoid unnecessary setgrent calls into
1016         the backend NSS module.  If backend setgrent call failed, don't have
1017         internal_setgrent fail.  Just remember this until it is needed.
1018         * nis/nss_compat/compat-pwd.c: Likewise.
1019         * nis/nss_compat/compat-spwd.c: Likewise.
1021 2006-07-30  Roland McGrath  <roland@redhat.com>
1023         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed.
1024         * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: File removed.
1025         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: File removed.
1026         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: File removed.
1028         * sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): New macro.
1029         (nanosleep_not_cancel): New macro.
1030         (sigsuspend_not_cancel): new macro.
1031         * sysdeps/unix/sysv/linux/sigsuspend.c [__ASSUME_REALTIME_SIGNALS]
1032         (do_sigsuspend): Define as inline.
1033         (__sigsuspend): Always use do_sigsuspend.
1034         [! NO_CANCELLATION] (__sigsuspend_nocancel): New function.
1035         * include/signal.h: Declare __sigsuspend_nocancel.
1036         * sysdeps/posix/pause.c
1037         [! NO_CANCELLATION] (__pause_nocancel): New function.
1039         * include/unistd.h (__pause_nocancel): Add attribute_hidden.
1040         * include/time.h (__nanosleep_nocancel): Likewise.
1042 2006-07-30  Ulrich Drepper  <drepper@redhat.com>
1044         * locale/programs/localedef.c (add_to_readlist): Rename local
1045         variables to avoid confusion.
1047         * locale/programs/charmap.c (charmap_read): Emit error message if
1048         charmap couldn't be found or read.
1050 2006-07-28  Ulrich Drepper  <drepper@redhat.com>
1052         * sysdeps/unix/sysv/linux/kernel-features.h: Define
1053         __ASSUME_FUTEX_LOCK_PI.
1054         * include/time.h: Declare __nanosleep_nocancel.
1055         * include/unistd.h: Declare __pause_nocancel.
1057         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Use this instead of
1058         LDFLAGS.  Add -lgcc_eh and libc_nonshared (again) to make sure we
1059         get the __stack_chk_fail_local definition when it's needed.
1061 2006-07-26  Ulrich Drepper  <drepper@redhat.com>
1063         * dlfcn/Makefile: Add rules to build and run bug-atexit3.
1064         * dlfcn/bug-atexit3.c: New file.
1065         * dlfcn/bug-atexit3-lib.cc: New file.
1067         * dlfcn/dlmopen.c (dlmopen_doit): Don't allow RTLD_GLOBAL to be
1068         used when the namespace is not the base namespace.
1070 2006-07-26  Gavin Romig-Koch  <gavin@redhat.com>
1072         * stdlib/cxa_atexit.c (__new_exitfn_called): New variable.
1073         (__new_exitfn): Bump it in every successful call.
1074         * stdlib/cxa_finalize.c (__cxa_finalize): If destructor registered
1075         more exit handlers, call them right away.
1076         * stdlib/exit.h: Declare __new_exitfn_called.
1078 2006-07-25  Ulrich Drepper  <drepper@redhat.com>
1080         * stdlib/cxa_finalize.c (__cxa_finalize): Fix race condition when
1081         calling registered handler.
1083         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fix comment.
1084         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1085         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1086         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1087         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1088         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1089         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
1090         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1092 2006-07-10  Ulrich Drepper  <drepper@redhat.com>
1094         * elf/dl-lookup.c (dl_new_hash): New functions.
1095         (_dl_lookup_symbol_x): Rename hash to old_hash and don't compute
1096         value here.  Compute new-style hash value.  Pass new hash value
1097         and reference to variable with the old value to do_lookup_x.
1098         (_dl_setup_hash): If DT_GNU_HASH is defined, use it and not
1099         old-style hash table.
1100         (_dl_debug_bindings): Pass new hash value and reference to variable
1101         with the old value to do_lookup_x.
1102         * elf/do-lookup.h (do_lookup_x): Accept additional parameter with
1103         new-style hash value and change old-style hash value parameter to
1104         be a reference.  Reoganize functions to determine whether
1105         new-style hash table is available.  Only fall back on old-style
1106         table.  If old-style hash value is needed, compute it here.
1107         * elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH
1108         entry.
1109         * elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT,
1110         DT_TLSDEC_GOT.  Adjust DT_ADDRNUM.
1111         * include/link.h (struct link_map): Add l_gnu_bitmask_idxbits,
1112         l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero.
1113         * Makeconfig: If linker supports --hash-style option add it to all
1114         linker command lines to build DSOs.
1115         * config.make.in: Define have-hash-style.
1116         * configure.in: Test whether linker supports --hash-style option.
1118         * elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const.
1119         * sysdeps/generic/ldsodefs.h: Adjust prototype.
1121 2006-06-27  Ulrich Drepper  <drepper@redhat.com>
1123         * elf/dl-load.c (open_path): Fix test to determine whether DSO is
1124         auditing.
1126         * elf/dl-load.c (_dl_map_object): Try harder to avoid looking at
1127         RPATH of main map twice.
1129 2006-06-22  Ulrich Drepper  <drepper@redhat.com>
1131         * intl/dcigettext.c (DCIGETTEXT): If _nl_find_msg returns -1 don't
1132         look further, return original strings.
1133         (_nl_find_msg): Do not return found translation if the conversion
1134         failed.  Either signal the string is unusable or that something went
1135         wrong and the original should be used.
1137 2006-06-21  Ulrich Drepper  <drepper@redhat.com>
1139         * string/_strerror.c (__strerror_r): Add __builtin_expect.
1141 2006-06-14  Jakub Jelinek  <jakub@redhat.com>
1143         [BZ #2766]
1144         * misc/insremque.c (insque): Handle prev == NULL.
1145         * misc/Makefile (tests): Add tst-insremque.
1146         * misc/tst-insremque.c: New test.
1148 2006-06-17  Ulrich Drepper  <drepper@redhat.com>
1150         [BZ #2792]
1151         * elf/dl-deps.c (expand_dst): Rename __cnt variable to not
1152         conflict with DL_DST_REQUIRED.
1154 2006-06-16  Ulrich Drepper  <drepper@redhat.com>
1156         * nis/nis_subr.c (nis_getnames): Fix the implementation to better
1157         match what Solaris does.
1159 2006-06-04  Ulrich Drepper  <drepper@redhat.com>
1161         * sysdeps/posix/spawni.c (__spawni): Use local_seteuid and
1162         local_setegid instead of seteuid and setegid.
1163         * sysdeps/generic/local-setxid.h: New file.
1164         * sysdeps/unix/sysv/linux/local-setxid.h: New file.
1166         * sysdeps/posix/spawni.c (__spawni): Use non-cancelable interfaces.
1168         * string/Makefile (tests): Add bug-envz1.
1169         * string/bug-envz1.c: New file.
1171 2006-06-02  Jakub Jelinek  <jakub@redhat.com>
1173         * posix/regex_internal.c (re_string_skip_chars): If no character has
1174         been converted at all, set *last_wc to WEOF.  If mbrtowc failed, set wc
1175         to the byte which couldn't be converted.
1176         (re_string_reconstruct): Don't clear valid_raw_len before calling
1177         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
1178         tip_context using re_string_context_at.
1179         * posix/Makefile: Add rules to build and run bug-regex25 test.
1180         * posix/bug-regex25.c: New test.
1182 2006-06-02  Ryan S. Arnold  <rsa@us.ibm.com>
1184         [BZ #2703]
1185         * string/envz.c (envz_strip): Correct erroneously reversed src
1186         and dest parameters to memmove() invocation.
1188 2006-05-30  Jakub Jelinek  <jakub@redhat.com>
1190         * nscd/nscd.h (prune_cache): Add fd argument to prototype.
1191         * nscd/nscd.c (parse_opt): Read response from INVALIDATE request
1192         to make sure the database has been already invalidated.
1193         * nscd/cache.c (prune_cache): Add fd argument.  Write response to fd
1194         after the cache has been invalidated.  Use pthread_mutex_lock rather
1195         than pthread_mutex_trylock if fd != -1.
1196         * nscd/connections.c (invalidate_cache): Add fd argument, write
1197         response to fd if not calling prune_cache, pass fd to prune_cache.
1198         (handle_request): Adjust invalidate_cache caller.
1199         (nscd_run): Pass -1 as fd to prune_cache.
1201 2006-05-30  Ulrich Drepper  <drepper@redhat.com>
1203         * sysdeps/posix/getaddrinfo.c (gaiconf_init): Initialize bits in
1204         the correct place.
1206 2006-05-29  Ulrich Drepper  <drepper@redhat.com>
1208         * nscd/nscd.h (struct database_dyn): Add prunelock field.
1209         * nscd/cache.c (prune_cache): Take prunelock before starting the
1210         work.  Just return in case it is already taken.
1211         * nscd/connections.c (dbs): Initialize .prunelock.
1213 2006-05-25  Ulrich Drepper  <drepper@redhat.com>
1215         * nis/nis_removemember.c (nis_removemember): Avoid unnecessary
1216         copying.  No need to allocate new array for group members.  Just
1217         move the pointers and update the size.
1219         * nis/nis_addmember.c (nis_addmember): Avoid unnecessary copying.
1220         Avoid memory leak in case realloc fails.  Simplification for
1221         better code generation.
1223         Avoid deprecation warning because of libc_hidden_proto for
1224         inet6_option_alloc.
1225         * inet/inet6_option.c (option_alloc): Renamed from
1226         inet6_option_alloc.  Made static.
1227         (inet6_option_alloc): Now a simple wrapper around option_alloc.
1228         (inet6_option_append): Call option_alloc.
1229         * include/netinet/in.h: Remove libc_hidden_proto for
1230         inet6_option_alloc.
1232         * nis/nis_callback.c (__nis_create_callback): Always call xdr_free
1233         for cleanup when cb!=NULL [Coverity CID 233].
1235 2006-05-24  Ulrich Drepper  <drepper@redhat.com>
1237         [BZ #2693]
1238         * inet/Makefile (routines): Add inet6_opt and inet6_rth.
1239         * inet/Versions (libc, GLIBC_2.5): Add inet6_opt_init,
1240         inet6_opt_append, inet6_opt_finish, inet6_opt_set_val, inet6_opt_next,
1241         inet6_opt_find, inet6_opt_get_val, inet6_rth_space, inet6_rth_init,
1242         inet6_rth_add, inet6_rth_reverse, inet6_rth_segments,
1243         and inet6_rth_getaddr.
1244         * inet/netinet/ip6.h (struct ip6_rthdr0): Make ip6r0_addr a flexible
1245         array.
1246         * inet/netinet/in.h (struct ip6_mtuinfo): Define.
1247         Mark inet6_option_* interfaces as deprecated.
1248         Declare inet6_opt_init, inet6_opt_append, inet6_opt_finish,
1249         inet6_opt_set_val, inet6_opt_next, inet6_opt_find, inet6_opt_get_val,
1250         inet6_rth_space, inet6_rth_init, inet6_rth_add, inet6_rth_reverse,
1251         inet6_rth_segments, and inet6_rth_getaddr.
1252         * inet/inet6_opt.c: New file.
1253         * inet/inet6_rth.c: New file.
1255         * inet/netinet/icmp6.h: Pretty printing.
1257         [BZ #2683]
1258         * elf/dl-addr.c (_dl_addr): Don't match undefined references.
1260 2006-05-23  Ulrich Drepper  <drepper@redhat.com>
1262         * nis/nis_lookup.c (nis_lookup): Use __prepare_niscall instead of
1263         doing it all here.  When server does not know the answer do not
1264         fail immediate, try parent first.
1266         * nis/nis_domain_of_r.c (nis_domain_of_r): Add missing buffer
1267         overflow test.
1269 2006-05-20  Ulrich Drepper  <drepper@redhat.com>
1271         * nis/nis_call.c (__prepare_niscall): New function.  Split out
1272         from __do_niscall.
1273         * nis/nis_table.c (__create_ib_request): Renamed from create_ib_request
1274         and exported.
1275         (__follow_path): New function.  Split out from nis_list.
1276         * nis/nis_xdr.h: Add libnsl_hidden_proto for _xdr_ib_request and
1277         _xdr_nis_result.
1278         * nis/nis_xdr.c: Add libnsl_hidden_def for _xdr_ib_request and
1279         _xdr_nis_result.
1280         * nis/libnsl.h: Declare __prepare_niscall, __create_ib_request,
1281         and __follow_path.
1282         * nis/Versions: Export __prepare_niscall, __create_ib_request,
1283         __follow_path, __do_niscall3, _xdr_ib_request, and _xdr_nis_result
1284         from libnsl for version GLIBC_PRIVATE.
1285         * nis/nisplus-parser.h: Remove _nss_nisplus_parse_pwent_chk.
1286         Remove entry parameter from _nss_nisplus_parse_pwent and
1287         _nss_nisplus_parse_grent.
1288         * nis/nss_nisplus/nisplus-parser.c: Likewise.
1289         * nis/nss_nisplus/nisplus-pwd.c: Remove support for SETENT_BATCH_READ
1290         again.  Rewrite getpwent handling to not use nis_first_entry and
1291         nis_next_entry.  Roll out own niscall handling.
1292         * nis/nss_nisplus/nisplus-grp.c: Likewise.
1294         * sunrpc/xdr_rec.c: Fix typo in comment.
1296 2006-05-19  Ulrich Drepper  <drepper@redhat.com>
1298         * nis/nis_call.c (__do_niscall3): Avoid code duplication in error
1299         handling.
1301         * nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
1302         to allocate memory for my_pollfd.  Better initialization of
1303         cb_is_running.  Use TEMP_FAILURE_RETRY.
1305         * malloc/memusage.sh (memusageso): Add quotes.
1306         (memusagestat): Likewise.
1307         * debug/xtrace.sh (pcprofileso): Likewise.
1308         (pcprofiledump): Likewise.
1309         * debug/Makefile ($(objpfx)xtrace): Use $LIB in SLIBDIR
1310         replacement.
1311         * malloc/Makefile ($(objpfx)memusage): Likewise.
1313         * nis/nis_callback.c (__nis_create_callback): Calls to
1314         svcudp_bufcreate and svctcp_create can fail.  Free ->xprt if
1315         asprintf call fails.
1317         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_sendreq): Make sure
1318         no uninitialized memory is passed to sendto.
1320 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
1322         * nis/nis_callback.c (__nis_create_callback): Use asprinf instead
1323         of snprintf+strdup.  Handle OOM.
1324         * nis/nis_callback.c (__nis_create_callback): Allocate cb and
1325         cb->serv together.  Remove now obsolete free calls.
1326         (__nis_destroy_callback): Remove now obsolete free call.
1328 2006-05-18  David Woodhouse  <dwmw2@redhat.com>
1330         * sysdeps/posix/getaddrinfo.c: Add unique labels to the default
1331         RFC3484 precedence table for fec0::/10 and fc00::/7 (site-local
1332         and ULA respectively). Set precedence for IPv4 address to 10 as
1333         defined in RFC3484 for preferring IPv6.
1334         * posix/gai.conf: Update to match the new default tables.
1336 2006-05-18  Jakub Jelinek  <jakub@redhat.com>
1338         * nis/nss_compat/compat-pwd.c (internal_setpwent): If nss_set*ent
1339         returned NSS_STATUS_UNAVAIL, still return NSS_STATUS_SUCCESS.
1340         * nis/nss_compat/compat-spwd.c (internal_setspent): Likewise.
1341         * nis/nss_compat/compat-grp.c (internal_setgrent): Likewise.
1343         * nis/nss_compat/compat-initgroups.c (nss_setgrent, nss_endgrent):
1344         Removed.
1345         (init_nss_interface): Remove initialization of these variables.
1347 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
1349         * nis/nis_call.c (rec_dirsearch): Little optimization: pull
1350         nis_free_directory forward to avoid duplication.
1352 2006-05-17  Ulrich Drepper  <drepper@redhat.com>
1354         * nis/nis_call.c (rec_dirsearch): Handle __nis_finddirectory and
1355         rec_dirsearch returning NULL.
1356         (first_shoot): Handle __nis_finddirectory returning NULL.
1357         (__nisfind_server): Fix leak when rec_dirsearch returns NULL.
1359         * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOSE, IN_MOVE,
1360         IN_ONLYDIR, IN_DONT_FOLLOW, and IN_MASK_ADD.
1362 2006-05-17  Jakub Jelinek  <jakub@redhat.com>
1364         * sunrpc/key_call.c (getkeyserv_handle): Call auth_destroy if
1365         pid changed.
1367 2006-05-15  Ulrich Drepper  <drepper@redhat.com>
1369         * include/rpc/pmap_prot.h: Mark all functions as hidden.
1371         * nscd/nscd_initgroups.c: Mark __gr_map_handle as hidden.
1372         * nscd/nscd_getgr_r.c: Likewise.
1374         * include/rpc/pmap_rmt.h: Mark all functions as hidden.
1376         * nscd/nscd_getai.c (__hst_map_handle): Mark as hidden.
1377         * nscd/nscd_gethst_r.c (__hst_map_handle): Likewise.
1379         * stdlib/longlong.h (__clz_tab): Mark as hidden.
1381         * iconv/gconv_int.h: Mark __gconv_lock as hidden.
1383         * include/rpc/key_prot.h: Mark all _internal functions as hidden.
1385         * include/rpc/auth.h: Mark xdr_des_block_internal and
1386         xdr_opaque_auth_internal as hidden.
1388         * sysdeps/unix/sysv/linux/getdents.c: Mark __have_no_getdents64 as
1389         hidden.
1391         * include/rpc/xdr.h: Mark all _internal functions as hidden.
1393         * misc/getusershell.c (okshells): Don't use static initializers,
1394         do it dynamically.
1396         * stdlib/fmtmsg.c (keywords): Change type of len element to
1397         uint32_t to not waste space on 64bit machines.
1399         * locale/setlocale.c: Change _nl_category_names into a string.
1400         Add new _nl_category_name_idxs.  Change all users.
1401         * locale/localeinfo.h: Adjust declaration of _nl_category_names.
1402         Declare _nl_category_name_idxs.
1403         * locale/findlocale.c: Adjust for _nl_category_names change.
1404         * locale/loadlocale.c: Likewise.
1405         * locale/newlocale.c: Likewise.
1406         * intl/dcigettext.c: Likewise.
1408         * iconv/gconv_conf.c (add_alias): Move actual alias handling to...
1409         (add_alias2): ...here.  New function.
1410         (__gconv_read_conf): Simplify builtin alias handling.
1411         (builtin_aliases): Convert to string to avoid relocations.
1412         * iconv/gconv_builtin.h: Add comment about correct formatting.
1414 2006-05-15  Jakub Jelinek  <jakub@redhat.com>
1416         * resolv/res_debug.c (loc_ntoa): Make error const.
1418 2006-05-14  Andreas Schwab  <schwab@suse.de>
1420         * math/complex.h [__LDBL_COMPAT]: Use __REDIRECT_NTH.
1422 2006-05-12  Jakub Jelinek  <jakub@redhat.com>
1424         * sysdeps/unix/sysv/linux/sched_getaffinity.c: Include sys/param.h.
1425         (__sched_getaffinity_new): Don't crash if cpusetsize is smaller than
1426         sizeof (cpu_set_t).
1428 2006-05-11  Ulrich Drepper  <drepper@redhat.com>
1430         * resolv/res_debug.c (loc_ntoa): Define error as array, not pointer.
1432         * include/arpa/nameser.h: Declare _ns_flagdata as hidden.
1434         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_master.
1435         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_master.
1437         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypbind_resp.
1438         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypbind_resp.
1440         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_cback_data.
1441         * include/rpcsvc/nis_callback.h: Add libnsl_hidden_proto for
1442         xdr_cback_data.
1444         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypupdate_args.
1445         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
1446         xdr_ypupdate_args.
1448         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_order.
1449         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_order.
1451         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_maplist.
1452         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_maplist.
1454         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_obj_p.
1455         * include/rpcsvc/nis_callback.h: New file.
1457         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_val.
1458         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_val.
1460         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
1461         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
1463         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypmaplist.
1464         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypmaplist.
1466         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
1467         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
1469         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypdelete_args.
1470         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
1471         xdr_ypdelete_args.
1473         * nis/nis_xdr.h: Mark all functions as hidden.  Remove
1474         __BEGIN_DECLS and __END_DECLS, the header is not installed.
1476         * nis/nis_error.c: Remove table of strings.  Use position
1477         independent mechanism.
1478         * nis/nis_error.h: New file.
1480 2006-05-11  Jakub Jelinek  <jakub@redhat.com>
1482         * locale/programs/ld-time.c (time_finish): If wide era name or
1483         format aren't provided, set both wname and wformat to L"".
1485 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
1487         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Only store
1488         results if the call was succesful.
1490         * nis/nss-nis.h: Mark __yperr2nss_tab and __yperr2nss_count as hidden.
1492         * nis/nss-nisplus.h: Mark __niserr2nss_tab and __niserr2nss_count
1493         as hidden.
1495 2006-05-10  Jakub Jelinek  <jakub@redhat.com>
1497         * misc/sys/queue.h: Remove uses of all QUEUEDEBUG_* macros.
1499 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
1501         * posix/wordexp.c (parse_glob): No need to check ifs for NULL, the
1502         caller makes sure this is not the case.
1503         (wordexp): Simplify ifs_white creation.  [Coverity CID 231]
1505 2006-05-09  Ulrich Drepper  <drepper@redhat.com>
1507         * posix/wordexp.c: Remove numerous NULL pointer tests before FREE
1508         calls.
1510         * io/ftw.c (open_dir_stream): Return right away if REALLOC fails.
1511         [Coverity CID 229, 230]
1513         * argp/argp-help.c (hol_entry_help): Handle STATE==NULL in ARG and
1514         DGETTEXT calls.
1515         (hol_help): Likewise.  [Coverity CID 226, 227]
1517         * string/argz-replace.c (__argz_replace): Unconditionally call
1518         free on SRC.  [Coverity CID 225]
1520         * nis/nis_creategroup.c (nis_creategroup): No need to duplicate
1521         the return value of __nis_default_owner and __nis_default_group,
1522         it has been especially allocated.  [Coverity CID 224]
1524         * nis/nis_defaults.c (searchXYX): New functions.  Used by both
1525         searchgroup and searchowner.  Significantly simplified.
1526         (__nis_default_owner): Remove duplication.  Do not locally copy the
1527         string before duplicating it.
1528         (__nis_default_group): Likewise.
1530         * nis/nis_lookup.c (nis_lookup): After calling nis_free_directory,
1531         we must clear the variable before calling __nisfind_server.
1533         * nis/nis_lookup.c (nis_lookup): Always free memory allocated with
1534         nis_getnames.  [Coverity CID 223]
1536         * locale/programs/locfile.c (locfile_read): Use alloca instead of
1537         xmalloc to allocate local repertoire name.  [Coverity CID 222]
1539         * iconv/iconv_charmap.c (use_to_charmap): No need to dynamically
1540         allocate memory for the input to add_bytes.  [Coverity CID 221]
1542         * posix/wordexp.c (w_addword): Free word if realloc fails and it
1543         was allocated here.  [Coverity CID 219, 220]
1545         * posix/getconf.c (print_all): Free confstr data after printing.
1546         [Coverity CID 218]
1548         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if
1549         list allocation fails.  [Coverity CID 215]
1551         * nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition.
1552         [Coverity CID 213]
1554         * argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if
1555         string is NULL.  [Coverity CID 212]
1556         * argp/Makefile: Add rules to build and run bug-argp1.
1557         * argp/bug-argp1.c: New file.
1559         * io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find
1560         end of string.
1561         * stdlib/canonicalize.c (__realpath): Likewise.
1563         * locale/programs/ld-time.c (time_finish): Don't dereference NULL
1564         pointer.  [Coverity CID 206]
1566         * elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map
1567         in statically linked code.
1568         * elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in
1569         statically built code, be prepared to have no link map.
1570         [Coverity CID 205]
1572         * argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in
1573         dgettext calls. [Coverity CID 204]
1575         * argp/argp-help.c (struct uparams): Remove valid member.  Change
1576         the one user.
1577         (uparam_names): Reduce size.  Avoid relative relocations.
1578         Moved to read-only segment.
1579         (fill_in_uparams): Update for new layout.
1581         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be
1582         assumed to always be != NULL. [Coverity CID 202]
1584         * argp/argp-help.c (hol_entry_help): Remove some dead code
1585         [Coverity CID 200].
1587         * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize
1588         away a few more unconditional yperr2nss calls.
1589         (_nss_nis_getservbyname_r): Likewise.
1591 2006-05-06  Ulrich Drepper  <drepper@redhat.com>
1593         * sysdeps/generic/ldsodefs.h: Remove support for non-core
1594         architectures.
1596         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Make sure
1597         that unused memory passed to sendto is nevertheless initialized.
1599         [BZ #2499]
1600         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Avoid
1601         possibly unaligned memory accesses.
1603         * include/arpa/nameser.h: Also optimize NS_PUT16 and NS_PUT32.
1604         * resolv/res_mkquery.c: Use NS_PUT16 and NS_PUT32 instead of __putshort
1605         and __putlong respectively.  Correct buffer overflow check for
1606         NS_NOTIFY_OP.
1608         * resolv/res_send.c (send_vc): Use ns_put16 instead of putshort.
1610         * resolv/res_send.c (res_queriesmatch): Fix typo in comment.
1611         (send_dg): Rewrite error handling to be more compact and avoid
1612         double recomputation of timeouts.  Pass MSG_NOSIGNAL to send.
1614         * include/arpa/nameser.h: Add optimizations for NS_GET16 and NS_GET32.
1616         * resolv/res_send.c (res_nameinquery): Use NS_GET16 directly
1617         instead of ns_get16.
1618         (res_queriesmatch): Likewise.  Minor optimization.
1620         [BZ #2499]
1621         * resolv/res_query.c (__libc_res_nquery): If answerp != NULL,
1622         __libc_res_nsend might reallocate the buffer for the answer.  In
1623         this case we have to reload the HP pointer.
1625 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
1627         * stdio-common/vfscanf.c (memory_error): Remove definition.  Add
1628         some branch prediction hints.
1630         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Define SPLICE_F_*.
1631         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1632         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1633         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1634         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1635         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1636         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
1637         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1639 2006-05-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1641         * sysdeps/s390/s390-32/elf/start.S: Replace pc relative relocation
1642         by a GOT relocation to make Scrt1.o position independent.
1643         * sysdeps/s390/s390-64/elf/start.S: Likewise.
1645         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S: Add support for
1646         six system call parameters.
1647         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
1649 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
1651         * sunrpc/svcauth_des.c (cache_init): Use calloc instead of
1652         malloc&bzero.
1654         * sunrpc/svc_udp.c (BZERO): Remove definition.
1655         (CALLOC): Define.
1656         (svc_enablecache): Use CALLOC instead of ALLOC&BZERO.
1658         * sunrpc/des_impl.c: Remove ALT_ECB support.  We never used it.
1659         (des_SPtrans): Use uint32_t type.
1660         (des_skb): Likewise.
1662         * sunrpc/xdr_ref.c (xdr_reference): Use calloc instead of malloc&bzero.
1664 2006-05-05  Jakub Jelinek  <jakub@redhat.com>
1666         [BZ #2509]
1667         * stdio-common/tst-printf.sh: Adjust for tst-printf.c change even
1668         on 32-bit arches.
1670 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
1672         * locale/programs/ld-address.c (address_finish): Fix one more
1673         place where the iso639 array might be accessed beyond the limits.
1675 2006-05-04  Ulrich Drepper  <drepper@redhat.com>
1677         * nis/nis_table.c (nis_list): Avoid clearing res twice before
1678         filling it for the first time.
1680         * nis/nis_table.c (get_tablepath): Renamed from __get_tablepath.
1681         Adjust all callers.
1682         Free res object content before returning.
1684         * sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero.
1686         * sunrpc/key_call.c (__rpc_thread_key_cleanup): Also free
1687         client->cl_auth.
1689         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Don't skip entire
1690         cleanup for initial thread, just the free call on TVP.
1692         * nscd/gai.c (__getline): Define.
1695 See ChangeLog.16 for earlier changes.