Updated to fedora-glibc-20041217T0906
[glibc.git] / ChangeLog
blobb1b83df7d753bac93b3142e3442bb0ddba4dc542
1 2004-12-17  Jakub Jelinek  <jakub@redhat.com>
3         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
5 2004-12-17  Andreas Jaeger  <aj@suse.de>
7         * math/libm-test.inc (atan2_test): Compute value with 36 digits.
8         * sysdeps/alpha/fpu/libm-test-ulps: Adjust for changed result.
9         * sysdeps/powerpc/fpu/libm-test-ulps: Likewise.
10         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
11         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Likewise.
12         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Likewise.
13         * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
15 2004-12-16  Ulrich Drepper  <drepper@redhat.com>
17         * stdlib/tst-setcontext.c: Enlarge st1 and st2 arrays.
19 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
21         [BZ #610]
22         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
23         (__novec_getcontext): Fix typo in store of fp29.
24         (__getcontext): Fix typo in store of fp29.
25         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
26         (__novec_swapcontext): Fix typo in store of fp29.
27         (__swapcontext): Fix typo in store of fp29.
29 2004-12-17  GOTO Masanori  <gotom@debian.or.jp>
31         * sysdeps/unix/sysv/linux/dl-osinfo.h (DL_SYSDEP_OSCHECK): Fix
32         vague message.
34 2004-12-16  Roland McGrath  <roland@redhat.com>
36         * nscd/Makefile ($(objpfx)nscd): Don't depend on $(selinux-LIBS),
37         which is usually a -lselinux that make will resolve wrongly.
39 2004-12-16  Andreas Jaeger  <aj@suse.de>
41         * math/math.h: Use #if defined to not receive warnings about
42         undefined symbols.
44 2004-12-16  Jakub Jelinek  <jakub@redhat.com>
46         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Add support
47         for NPTL where the PID is stored at userlevel and needs to be reset
48         when CLONE_THREAD is not used.
50         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
51         (SYSCALL_ERROR_HANDLER): If RTLD_PRIVATE_ERRNO, use rtld_errno
52         instead of errno.
53         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S: Include
54         sysdep-cancel.h instead of sysdep.h.  Handle cancellation.
55         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerate.
57         * sysdeps/ieee754/ldbl-128/e_expl.c: Include stdlib.h.
59 2004-12-15  Jakub Jelinek  <jakub@redhat.com>
61         * sysdeps/unix/sysv/linux/gethostid.c: Make bi-arch safe.
63 2004-12-15  Steven Munroe  <sjmunroe@us.ibm.com>
65         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Correct stack
66         alignment.  Clean up flag bit tests.
67         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Correct stack
68         alignment.  Clean up flag bit tests.  Remove redundent SP assignment.
69         Add TOC register save/restore around function call.
71         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Make no_vmx symbol
72         local.
73         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Make no_vmx symbol
74         local.
75         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Make no_vmx symbol
76         local.
77         * sysdeps/powerpc/powerpc64/setjmp-common.S: Make no_vmx and
78         aligned_save_vmx symbol local.
80 2004-12-15  Ulrich Drepper  <drepper@redhat.com>
82         * sysdeps/i386/i486/bits/string.h (__strncat_g): Fix i686
83         implementation.
85 2004-09-08  H.J. Lu  <hongjiu.lu@intel.com>
87         * Makeconfig (libunwind): New.
88         (libgcc_eh): Add $(libunwind).
89         (gnulib): Always set to -lgcc $(libgcc_eh).
90         (static-gnulib): Always set to -lgcc -lgcc_eh $(libunwind).
91         (libc.so-gnulib): New.
92         * Makerules (LDLIBS-c.so): Use $(libc.so-gnulib) instead of
93         $(static-gnulib).
94         * configure.in (libc_cv_cc_with_libunwind): Set to yes if gcc
95         uses -lunwind for static binaries.
97 2004-06-05  Joseph S. Myers  <jsm@polyomino.org.uk>
99         * malloc/Makefile (install-bin): Remove memusage.
100         (install-bin-script): Add memusage.
102 2004-12-15  Jakub Jelinek  <jakub@redhat.com>
104         * nis/nis_domain_of_r.c (nis_domain_of_r): Use libnsl_hidden_def,
105         not libnsl_hidden_proto.
107         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add support
108         for NPTL where the PID is stored at userlevel and needs to be reset
109         when CLONE_THREAD is not used.
110         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
112         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S (__clone): Save
113         and restore r2 around call to fn.
115 2004-12-15  Andreas Jaeger  <aj@suse.de>
117         * sysdeps/ia64/dl-machine.h (elf_machine_rela): Mark auto instead
118         of static, add always_inline attribute.
119         (elf_machine_rela_relative): Likewise.
120         (elf_machine_lazy_rel): Likewise.
122 2004-12-15  Ulrich Drepper  <drepper@redhat.com>
124         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Add support
125         for pid caching in nptl.
127 2004-12-14  Ulrich Drepper  <drepper@redhat.com>
129         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Add support
130         for pid caching in nptl.
132 2004-10-18  Maciej W. Rozycki  <macro@mips.com>
134         * sysdeps/unix/sysv/linux/mips/bits/socket.h (__cmsg_nxthdr): Use
135         __NTH instead of __THROW in the inline definition.
136         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise.
138         * sysdeps/mips/bits/dlfcn.h (RTLD_DEEPBIND): New macro.
140         * sysdeps/unix/sysv/linux/mips/bits/mman.h
141         (PROT_GROWSDOWN, PROT_GROWSUP): New macros.
143 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
145         * sysdeps/powerpc/powerpc64/ppc-mcount.S (PROF): Don't undef.
146         * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S: Invoke CALL_MOUNT.
147         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Likewise.
148         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
149         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
150         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
151         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Likewise.
152         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
153         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: Likewise.
155 2004-10-19  Wolfram Gloger  <wg@malloc.de>
157         * malloc/hooks.c (mem2chunk_check, top_check): Handle
158         non-contiguous arena.  Reported by Michael Dalton
159         <mwdalton@stanford.edu> [BZ #457].  Add further checks for top chunk.
161 2004-12-14  Jakub Jelinek  <jakub@redhat.com>
163         * sysdeps/posix/sysconf.c (__sysconf_check_spec): Remove leading
164         underscore from GETCONF_DIR filenames.
166 2004-12-13  Ulrich Drepper  <drepper@redhat.com>
168         * po/de.po: Update from translation team.
170         * nss/getnssent.c (__nss_getent): Double buffer size each round to
171         avoid problems with delays for some people's huge entries.
172         * nss/getXXbyYY.c (FUNCTION_NAME): Likewise.
174 2004-12-13  Jakub Jelinek  <jakub@redhat.com>
176         * posix/getconf.c (main): Prepend just $GETCONF_DIR/ instead of
177         $GETCONF_DIR/_ to spec.
178         * posix/confstr.c (confstr): Remove leading underscores for
179         _CS_POSIX_V6_WIDTH_RESTRICTED_ENVS.
181 2004-12-12  Ulrich Drepper  <drepper@redhat.com>
183         * elf/dl-load.c (_dl_map_object_from_fd): Fix computation of
184         mapping start.  It must take the actual pagesize into account, not
185         the alignment in the file.
187 2004-12-11  Ulrich Drepper  <drepper@redhat.com>
189         * malloc/malloc.c (_int_realloc): Add checks for corrupted memory.
190         (_int_free): Make clear message are result of free() calls.
192         * malloc/malloc.c (_int_realloc): Remove unnecessary tests for
193         oldmem and size == 0.
195 2004-12-10  Ulrich Drepper  <drepper@redhat.com>
197         * malloc/arena.c (arena_get2): Prevent endless loop if arenas and
198         list lock are taken.
200 2004-12-08  Thorsten Kukuk  <kukuk@suse.de>
202         * nis/nss_nisplus/nisplus-netgrp.c (_nss_nisplus_getnetgrent_r):
203         Add check if the value is not an empty string.  [BZ #597]
205 2004-11-29  Jakub Jelinek  <jakub@redhat.com>
207         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): If densize > 2
208         and numsize < densize, always shift num up by empty + 1 limbs.
210 2004-12-07  Paolo Bonzini  <bonzini@gnu.org>
212         * posix/regexec.c (proceed_next_node): Simplify treatment of epsilon
213         nodes.  Pass the pushed node to push_fail_stack.
214         (push_fail_stack): Accept a single node rather than an array
215         of two epsilon destinations.
216         (build_sifted_states): Only walk non-epsilon nodes.
217         (check_arrival): Don't pass epsilon nodes to
218         check_arrival_add_next_nodes.
219         (check_arrival_add_next_nodes) [DEBUG]: Abort if an epsilon node is
220         found.
221         (check_node_accept): Do expensive checks later.
222         (add_epsilon_src_nodes): Cache result of merging the inveclosures.
223         * posix/regex_internal.h (re_dfastate_t): Add non_eps_nodes and
224         inveclosure.
225         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at,
226         re_string_context_at, re_string_peek_byte_case,
227         re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
228         Declare as pure.
229         * posix/regex_internal.c (create_newstate_common): Remove.
230         (register_state): Move part of it here.  Initialize non_eps_nodes.
231         (free_state): Free inveclosure and non_eps_nodes.
232         (create_cd_newstate, create_ci_newstate): Allocate the new
233         re_dfastate_t here.
235 2004-12-09  Ulrich Drepper  <drepper@redhat.com>
237         * malloc/malloc.c (public_rEALLOc): Add parameter checks.
238         (_int_free): Provide better error message for invalid pointers.
240 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
242         * posix/tst-regex.c: Use defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
243         conditionals instead of defined _POSIX_CPUTIME.
244         (main): If _POSIX_CPUTIME == 0, call sysconf to see if CPUTIME
245         option is available.
246         * posix/tst-regex.c2: Use defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
247         conditionals instead of defined _POSIX_CPUTIME.
248         (do_test): If _POSIX_CPUTIME == 0, call sysconf to see if CPUTIME
249         option is available.
250         * sysdeps/posix/sysconf.c (__sysconf): If _POSIX_CPUTIME resp.
251         _POSIX_THREAD_CPUTIME is defined to 0, return -1 for the corresponding
252         _SC_ argument.
254 2004-12-08  Jakub Jelinek  <jakub@redhat.com>
256         * elf/ldd.bash.in: When set -o pipefail is available, use that for
257         piping to cat; when not, don't use the pipe at all.
258         Pipe to cat in all cases of running the executable.
259         When direct running exits with code 5, retry running via ${RTLD}.
260         * elf/rtld.c (process_envvars): If __libc_enable_secure and
261         mode != normal, exit with exitcode 5.
263 2004-12-07  Jakub Jelinek  <jakub@redhat.com>
265         * sysdeps/posix/sysconf.c (__sysconf_check_spec): Only define
266         if it will be actually used.
268 2004-12-07  Roland McGrath  <roland@redhat.com>
270         * rt/tst-timer5.c (setup_test): New function.
271         (TEST_CLOCK_MISSING): Use it to punt test if timer_create does not
272         support CLOCK_MONOTONIC.
274 2004-12-07  Jakub Jelinek  <jakub@redhat.com>
276         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Add support for
277         NPTL where the PID is stored at userlevel and needs to be reset when
278         CLONE_THREAD is not used.  Restore gp before calling _exit.
280 2004-12-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
282         * sysdeps/unix/sysv/linux/sh/clone.S: Clear the frame pointer when
283         starting a new thread.  Add support for NPTL where the PID is stored
284         at userlevel and needs to be reset when CLONE_THREAD is not used.
286 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
288         * elf/rtld.c (process_envvars): Don't consider LD_SHOW_AUXV
289         and LD_DYNAMIC_WEAK if __libc_enable_secure.
290         If __libc_enable_secure, /etc/suid-debug doesn't exist and
291         program will be actually run, turn off all debugging.
292         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add LD_DEBUG,
293         LD_DYNAMIC_WEAK and LD_SHOW_AUXV.
295 2004-12-06  Jakub Jelinek  <jakub@redhat.com>
297         * time/tzset.c (tzset_internal): If + or - is seen,
298         but no offset after it, reset offset to 0.  [BZ #601]
300 2004-12-06  Ulrich Drepper  <drepper@redhat.com>
302         * libio/ioseekpos.c (_IO_seekpos_unlocked): Call _IO_SEEKOFF not
303         _IO_SEEKPOS, saving one indirect jump.
305         * libio/fileops.c (_IO_new_file_seekoff): Fix optimization of in-buffer
306         seek.  Remove dead code.
308 2004-12-02  Jakub Jelinek  <jakub@redhat.com>
310         * libio/Makefile (tests): Add bug-ungetc4.
311         * libio/bug-ungetc4.c: New test.
313 2004-12-06  Roland McGrath  <roland@redhat.com>
315         * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): Diagnose EINVAL
316         for CLOCK_THREAD_CPUTIME_ID, not ENOTSUP.
317         Use SYSDEP_NANOSLEEP handler before validating CLOCK_ID value.
319         * rt/tst-timer4.c (TEST_CLOCK, TEST_CLOCK_NANOSLEEP): New macros.
320         Use them throughout in place of CLOCK_REALTIME and nanosleep.
321         (do_test) [TEST_CLOCK_MISSING]: Call this macro and if it returns
322         non-null, punt the test with a message using the string returned.
323         * rt/tst-timer5.c: New file.
324         * rt/Makefile (tests): Add it.
326 2004-12-01  Paolo Bonzini  <bonzini@gnu.org>
328         * posix/regcomp.c (free_dfa_content, init_dfa): Remove
329         references to re_dfa_t's subexps field.
330         (parse_sub_exp, parse_expression): Do not use it.  Use
331         completed_bkref_map instead.
332         (create_initial_state, peek_token): Store a backreference \N
333         with opr.idx = N-1.
334         * posix/regexec.c (proceed_next_node, check_dst_limits, get_subexp):
335         Likewise.
336         (check_subexp_limits): Remove useless condition.
337         * posix/regex_internal.h (re_subexp_t): Remove.
338         (re_dfa_t): Remove subexps and subexps_alloc field, add
339         completed_bkref_map.
341 2004-12-05  Roland McGrath  <roland@frob.com>
343         * Makeconfig: Comment typo fix.
345 2004-11-30  Andreas Schwab  <schwab@suse.de>
347         * nis/ypclnt.c (ypprot_err): Remove unused entries.
349 2004-11-30  Paolo Bonzini  <bonzini@gnu.org>
351         * posix/regexec.c (check_dst_limits_calc_pos_1): Check for
352         bkref_idx == -1, and don't recurse in that case.
354 2004-11-30  GOTO Masanori  <gotom@debian.or.jp>
356         * posix/confstr.c: Enclose #error message with double quote
357         for gcc-3.3 and lower.
359 2004-12-04  Ulrich Drepper  <drepper@redhat.com>
361         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for NPTL where
362         the PID is stored at userlevel and needs to be reset when CLONE_THREAD
363         is not used.
364         * sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.
366 2004-11-18  Daniel Jacobowitz  <dan@codesourcery.com>
368         * sysdeps/arm/sysdep.h: Define __USE_BX__ if bx is available.
369         Use it instead of __THUMB_INTERWORK__.  Make RETINSTR take
370         only a condition and a register.
371         * sysdeps/arm/dl-machine.h: Use __USE_BX__ instead of
372         __THUMB_INTERWORK__.
373         (_dl_start_user): Use BX.
374         * sysdeps/arm/strlen.S: Use DO_RET.
375         * sysdeps/unix/arm/brk.S: Likewise.
376         * sysdeps/unix/arm/fork.S: Likewise.
377         * sysdeps/unix/arm/sysdep.S: Likewise.
378         * sysdeps/unix/arm/sysdep.h: Likewise.
379         * sysdeps/unix/sysv/linux/arm/clone.S: Update uses of RETINSTR.
380         * sysdeps/unix/sysv/linux/arm/mmap.S: Likewise.
381         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise.
382         * sysdeps/unix/sysv/linux/arm/socket.S: Likewise.
383         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
384         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
386 2004-12-02  Roland McGrath  <roland@redhat.com>
388         * extra-lib.mk (object-suffixes-$(lib)): Add .oS when
389         $(lib)-static-only-routines is nonempty.
390         (extra-objs, o-iterator.mk rule): Filter out .oS from generators.
391         Add a special rule for .oS objects -> _nonshared.a library.
393 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
395         * time/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
396         convert T2, not T.
397         * time/Makefile (tests): Add tst-mktime3.
398         * time/tst-mktime3.c: New test.
400 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
402         * stdlib/stdlib.h (realpath): Remove nonnull attribute.
404         * posix/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
405         normal_bracket label.
407         * time/tst-mktime2.c (bigtime_test): Initialize tm.tm_isdst to -1.
409 2004-12-01  Roland McGrath  <roland@redhat.com>
411         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c):
412         Do $(make-target-directory).
414 2004-11-29  Roland McGrath  <roland@redhat.com>
416         * posix/confstr.c: Avoid punctuation in #error text.
418 2004-11-27  Ulrich Drepper  <drepper@redhat.com>
420         * posix/Makefile (tests): Add tst-sysconf.
421         * posix/tst-sysconf.c: New file.
423         * posix/getconf.c (vars): Add support for _SC_IPV6 and
424         _SC_RAW_SOCKETS.
425         * sysdeps/posix/sysconf.c (__sysconf): Add support for _SC_IPV6
426         and _SC_RAW_SOCKETS.
427         * sysdeps/generic/bits/confname.h: Define _SC_IPV6 and
428         _SC_RAW_SOCKETS.
430 2004-11-26  Jakub Jelinek  <jakub@redhat.com>
432         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add GETCONF_DIR.
434 2004-11-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
436         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
437         NO_SGIDEFS_H isn't defined.  Don't include sgidefs.h twice.
438         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
439         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
440         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
442 2004-11-27  Ulrich Drepper  <drepper@redhat.com>
444         * include/dlfcn.h (__libc_dlopen): Add __RTLD_DLOPEN to the mode
445         parameter.  Reported by VY Newsum <newsum@fel.tno.nl>.
447 2004-11-10  Daniel Jacobowitz  <dan@debian.org>
449         * libio/iolibio.h (_IO_fclose, _IO_new_fclose, _IO_old_fclose,
450         _IO_fflush, _IO_fgetpos, _IO_fgetpos64, _IO_fgets, _IO_fopen,
451         _IO_old_fopen, _IO_new_fopen, _IO_fopen64, __fopen_internal,
452         _IO_fprintf, _IO_fputs, _IO_fsetpos, _IO_fsetpos64, _IO_ftell,
453         _IO_fread, _IO_fwrite, _IO_gets, _IO_printf, _IO_puts, _IO_scanf,
454         _IO_fflush_internal, _IO_ftell_internal, _IO_fputs_internal)
455         _IO_fwrite_internal): Remove incorrect __THROW.
456         * libio/libioP.h (_IO_default_xsputn, _IO_wdefault_xsputn,
457         _IO_default_xsgetn, _IO_wdefault_xsgetn, _IO_default_write,
458         _IO_default_read, _IO_getline, _IO_getline_info, _IO_getwline,
459         _IO_getwline_info, _IO_file_read_internal, _IO_sgetn_internal,
460         _IO_wdo_write_internal, _IO_do_write_internal,
461         _IO_getline_info_internal, _IO_getline_internal,
462         _IO_vfprintf_internal, _IO_putc_internal, _IO_read, _IO_write,
463         _IO_close): Likewise.
465 2004-11-26  Jakub Jelinek  <jakub@redhat.com>
467         * posix/Makefile (generated: Add getconf.speclist.
468         ($(inst_libexecdir)/getconf): Use getconf.speclist instead of
469         getconf output.
470         ($(objpfx)getconf.speclist): New rule.
471         * posix/getconf.speclist.h: New file.
473 2004-11-26  Jakub Jelinek  <jakub@redhat.com>
475         * posix/Makefile (install-others): Add $(inst_libexecdir)/getconf.
476         (CFLAGS-sysconf.c): Add -D_GETCONF_DIR.
477         (CFLAGS-getconf.c): New.
478         ($(inst_libexecdir)/getconf): New.
479         * posix/confstr.c (confstr): Use __sysconf to query specifications
480         that don't have _POSIX_V6_* macros defined.  Use __*_{C,LD}FLAGS
481         macros defined in bits/environments.h.
482         * sysdeps/posix/sysconf.c: Include stdlib.h, string.h and
483         sys/stat.h.
484         (__sysconf_check_spec): New routine.
485         (__sysconf): Use it.
486         * posix/getconf.c (specs): Change into structure array.
487         (main): If -v is not given, try to get default from
488         $(libexecdir)/getconf/default.  If specification is not
489         supported by this getconf, try to execute
490         $(libexecdir)/getconf/$(specification).
491         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/environments.h: New file.
492         * sysdeps/unix/sysv/linux/s390/bits/environments.h: New file.
493         * sysdeps/unix/sysv/linux/powerpc/bits/environments.h: New file.
494         * sysdeps/unix/sysv/linux/sparc/bits/environments.h: New file.
495         * sysdeps/unix/sysv/linux/i386/bits/environments.h: New file.
496         * sysdeps/unix/sysv/linux/x86_64/bits/environments.h: New file.
497         * sysdeps/generic/bits/environments.h (__ILP32_OFFBIG_CFLAGS):
498         Define.
500         * stdlib/stdlib.h (setenv): Use nonnull only for second argument.
501         (unsetenv): Remove.
503 2004-11-23  Paolo Bonzini  <bonzini@gnu.org>
505         * posix/regcomp.c (analyze_tree): Always call calc_epsdest.
506         (calc_inveclosure): Use re_node_set_insert_last.
507         (parse_dup_op): Lower X{1,5} to (X(X(X(XX?)?)?)?)?
508         rather than X?X?X?X?X?.
509         * posix/regex_internal.h (re_node_set_insert_last): New declaration.
510         * posix/regex_internal.c (re_node_set_insert_last): New function.
511         * posix/PCRE.tests: Add testcases.
513 2004-11-25  Ulrich Drepper  <drepper@redhat.com>
515         * dlfcn/dlfcn.h: Remove nonnull attribute from dlopen.
517         * posix/confstr.c (confstr): Return appropriate strings for
518         _CS_LFS_LINTFLAGS, _CS_LFS64_CFLAGS, and _CS_LFS64_LINTFLAGS.
520 2004-11-05  Maciej W. Rozycki  <macro@mips.com>
522         * sysdeps/mips/dl-machine.h: Include <sgidefs.h>.  Use _ABIO32,
523         _ABIN32 and _ABI64 for ABI selection throughout.
524         * sysdeps/mips/elf/start.S: Likewise.
525         * sysdeps/mips/mips64/__longjmp.c: Likewise.
526         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
527         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
528         * sysdeps/mips/mips64/setjmp.S: Likewise.
529         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
530         * sysdeps/mips/sys/regdef.h: Likewise.
531         * sysdeps/mips/sys/ucontext.h: Likewise.
532         * sysdeps/unix/mips/sysdep.h: Likewise.
533         * sysdeps/unix/sysv/linux/kernel-features.h: Likewise.
534         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
535         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
536         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
537         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
538         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
539         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
540         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
541         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
543         * sysdeps/mips/atomicity.h: Use _ABIO32, _ABIN32 and _ABI64 for
544         ABI selection throughout.
545         * sysdeps/mips/bits/setjmp.h: Likewise.
546         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
547         * sysdeps/mips/machine-gmon.h: Likewise.
548         * sysdeps/mips/sys/asm.h: Likewise.
549         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
550         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
551         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
552         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
553         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
554         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
555         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
556         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
558         * sysdeps/mips/sgidefs.h: Prevent <asm/sgidefs.h> from being
559         included by kernel headers and undo its settings if already
560         included.  Define _ABIO32, _ABIN32 and _ABI64 if missing and use
561         them to define _MIPS_SIM_ABI32, _MIPS_SIM_NABI32 and
562         _MIPS_SIM_ABI64 for compatibility.
563         * sysdeps/unix/sysv/linux/mips/Makefile: Use _ABIO32, _ABIN32 and
564         _ABI64 for ABI selection in generated syscall-list.h
565         * sysdeps/unix/sysv/linux/mips/configure.in: Use _ABIO32, _ABIN32
566         and _ABI64 for ABI selection in generated asm-unistd.h.
567         * sysdeps/unix/sysv/linux/mips/configure: Regenerate.
569         * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Correct
570         an inverted _MIPS_SIM conditional.
572 2004-11-23  Alexandre Oliva  <aoliva@redhat.com>
574         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Use free
575         range even if it doesn't match exactly.
577 2004-11-23  Jakub Jelinek  <jakub@redhat.com>
579         * nss/nss_files/files-XXX.c (internal_getent): If parse_line returned
580         -1, also do H_ERRNO_SET (NETDB_INTERNAL).
582 2004-11-22  Ulrich Drepper  <drepper@redhat.com>
584         * sysdeps/i386/fpu_control.h: Add volatile to the asms.
585         Patch by Alexander Stohr.
587 2004-11-22  Jakub Jelinek  <jakub@redhat.com>
589         * nscd/nscd_getai (__nscd_getai): Avoid memory and file descriptor
590         leaks.
591         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free air.
593 2004-11-15  Maciej W. Rozycki  <macro@mips.com>
595         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h (__SI_MAX_SIZE):
596         Define appropriately based on __WORDSIZE.
597         [struct siginfo] (__pad0): Add for explicit padding.
599         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Formatting fixes
600         throughout.
602 2004-11-22  Ulrich Drepper  <drepper@redhat.com>
604         * dirent/dirent.h: Add nonnull attributes.
605         * dlfcn/dlfcn.h: Likewise.
607 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
609         * sysdeps/ieee754/k_standard.c: Document code 50.
610         (__kernel_standard) <case 50>: Avoid raising div-by-zero
611         exception again.
613 2004-11-19  H.J. Lu  <hongjiu.lu@intel.com>
615         [BZ #552]
616         * math/libm-test.inc (tgamma_test): Update tgamma (0) and
617         tgamma (-0).
618         * sysdeps/generic/w_tgamma.c (__tgamma): Properly handle |x| == 0.
619         * sysdeps/generic/w_tgammaf.c (__tgammaf): Likewise.
620         * sysdeps/generic/w_tgammal.c (__tgammal): Likewise.
621         * sysdeps/ieee754/dbl-64/e_gamma_r.c (__ieee754_gamma_r): Likewise.
622         * sysdeps/ieee754/flt-32/e_gammaf_r.c: Likewise.
623         * sysdeps/ieee754/ldbl-128/e_gammal_r.c: Likewise.
624         * sysdeps/ieee754/ldbl-96/e_gammal_r.c: Likewise.
625         * sysdeps/ieee754/k_standard.c (__kernel_standard): Handle
626         tgamma (0) and tgamma (-0).
628 2004-11-20  Ulrich Drepper  <drepper@redhat.com>
630         * time/tzfile.c (__tzfile_read): Avoid open for checking whether
631         the file we already use changed.
633         * misc/syslog.c: Remove !USE_IN_LIBIO code.
635 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
637         * signal/signal.h (__sysv_signal, sysv_signal, signal, bsd_signal,
638         ssignal): Remove __nonnull attribute.
640 2004-11-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
642         * sysdeps/unix/sysv/linux/sh/sys/procfs.h: New file.
644 2004-11-20  Ulrich Drepper  <drepper@redhat.com>
646         * signal/signal.h: Add nonnull attributes.
648         * signal/signal.h: Add deprecated attributes to sigstack,
649         sigpause, sigblock, sigsetmask, siggetmask.
651 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
653         * sysdeps/unix/sysv/linux/bits/socket.h (SCM_RIGHTS): Avoid
654         comma at the end of enum if __USE_BSD is not defined.
656 2004-11-19  Ulrich Drepper  <drepper@redhat.com>
658         * malloc/malloc.c (_int_malloc): Check for corruption of chunk
659         which is about to be returned.
661         * malloc/malloc.c (_int_free): Add a few more cheap tests for
662         corruption.
664 2004-11-17  Randolph Chung  <tausq@debian.org>
666         * sysdeps/hppa/dl-machine.h (TRAMPOLINE_TEMPLATE): Add unwind
667         annotations.
669 2004-11-18  Jakub Jelinek  <jakub@redhat.com>
671         [BZ #544]
672         * posix/regex.h (RE_NO_SUB): New define.
673         * posix/regex_internal.h (OP_DELETED_SUBEXP): New.
674         (re_dfa_t): Add subexp_map.
675         * posix/regcomp.c (struct subexp_optimize): New type.
676         (optimize_subexps): New routine.
677         (re_compile_internal): Call it.
678         (re_compile_pattern): Set preg->no_sub to 1 if RE_NO_SUB.
679         (free_dfa_content): Free subexp_map.
680         (calc_inveclosure, calc_eclosure): Skip OP_DELETED_SUBEXP nodes.
681         * posix/regexec.c (re_search_internal): If subexp_map
682         is not NULL, duplicate registers as needed.
683         * posix/Makefile: Add rules to build and run tst-regex2.
684         * posix/tst-regex2.c: New test.
685         * posix/rxspencer/tests: Fix last two tests (\0 -> \1).
686         Add some new tests for nested subexpressions.
688 2004-11-18  Ulrich Drepper  <drepper@redhat.com>
690         * libio/libio.h (_IO_FLAGS2_FORTIFY): Renamed from
691         _IO_FLAGS2_CHECK_PERCENT_N.
692         * debug/fprintf_chk.c: Adjust all users.
693         * debug/printf_chk.c: Likewise.
694         * debug/vfprintf_chk.c: Likewise.
695         * debug/vprintf_chk.c: Likewise.
696         * debug/vsnprintf_chk.c: Likewise.
697         * debug/vsprintf_chk.c: Likewise.
698         * stdio-common/vfprintf.c: Likewise.  Detect missing %N$ formats.
699         * debug/tst-chk1.c: Test detection of missing %N$ formats.
701 2004-11-15  Jakub Jelinek  <jakub@redhat.com>
703         * posix/bug-regex24.c: Include string.h.
705         * nis/nis_clone_obj.c (nis_clone_object): Rename out3 label to out2
706         and out2 to out.  Remove out label.  Formatting.
708 2004-11-15  Ulrich Drepper  <drepper@redhat.com>
710         * include/stdio.h: Do not mark __libc_message as noreturn.
711         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Add loop to
712         fool gcc.  Include <stdbool.h>.
713         * sysdeps/posix/libc_fatal.c (__libc_fatal): Add loop to fool gcc.
714         (__libc_message): Fix typo.
716 2004-11-13  Ulrich Drepper  <drepper@redhat.com>
718         * malloc/malloc.c (malloc_state): stat_lock_* elements need only
719         be defined if THREAD_STATS is defined.  Remove pad0_ since it does
720         not align with cache line sizes in general anyway.
722 2004-11-13  Jakub Jelinek  <jakub@redhat.com>
724         * elf/rtld.c (print_statistics): Avoid segfaults if not all namespaces
725         are used.  Fix computation of num_relative_relocations on RELA
726         architectures other than IA-64 and Alpha.
728 2004-11-13  Ulrich Drepper  <drepper@redhat.com>
730         * malloc/malloc.c (_int_free): Use munmap_chunk for handling
731         mmaped memory.
733 2004-11-12  Ulrich Drepper  <drepper@redhat.com>
735         * malloc/malloc.c (_int_free): Remove test for NULL parameter.
736         (_int_realloc): Call _int_free only if memory parameter is not NULL.
738         * sysdeps/unix/sysv/linux/libc_fatal.c: Add new function __libc_message
739         which performs the printing and simple format string handling.  The
740         string is written to tty, stderr, syslog in this order, stopping after
741         the first successful output.
742         (__libc_fatal): Call __libc_message.
743         * include/stdio.h: Declare __libc_message.
744         * malloc/malloc.c (malloc_printerr): Use __libc_message.
745         * debug/chk_fail.c: Also print message with __libc_message.
746         * debug/test-strcpy_chk.c: Ensure that debug messages are not printed
747         to the terminal or stderr.
748         * debug/tst-chk1.c: Likewise.
750         * posix/Makefile: Remove gpl2lgpl variable.
752 2004-11-12  Martin Schwidefsky  <schwidefsky@de.ibm.com>
754         * elf/elf.h: Add 20 bit relocations R_390_*20.
756 2004-11-12  Jakub Jelinek  <jakub@redhat.com>
758         * sysdeps/unix/sysv/linux/i386/setuid.c: Include linux/posix_types.h.
759         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
760         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
761         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
762         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
763         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
765 2004-11-12  Andreas Schwab  <schwab@suse.de>
767         * nis/ypclnt.c (ypprot_err): Fix "minor optimizations".
769 2004-11-12  Ulrich Drepper  <drepper@redhat.com>
771         * posix/Makefile (tests): Add bug-regex24.
772         * posix/bug-regex24.c: New file.
774 2004-11-12  Paolo Bonzini  <bonzini@gnu.org>
776         * posix/regexec.c (check_dst_limits_calc_pos_1): Use the map to
777         cut recursive paths.  Make exit condition more precise.
778         (match_ctx_add_entry): Initialize the map.
779         * posix/regex_internal.h (struct re_backref_cache_entry): Add a map of
780         reachable subexpression nodes from each backreference cache entry.
782 2004-11-10  Jakub Jelinek  <jakub@redhat.com>
784         * sysdeps/unix/sysv/linux/setreuid.c: Remove sys/syscall.h,
785         sys/types.h, linux/posix_types.h, sysdep.h and pthread-functions.h
786         includes.  Include setxid.h.  Use INLINE_SETXID_SYSCALL macro
787         instead of INLINE_SYSCALL, kill the HAVE_PTR__NPTL_SETXID guarded
788         snippets.
789         * sysdeps/unix/sysv/linux/setegid.c: Likewise.
790         * sysdeps/unix/sysv/linux/setuid.c: Likewise.
791         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
792         * sysdeps/unix/sysv/linux/setgid.c: Likewise.
793         * sysdeps/unix/sysv/linux/setresuid.c: Likewise.
794         * sysdeps/unix/sysv/linux/setresgid.c: Likewise.
795         * sysdeps/unix/sysv/linux/setregid.c: Likewise.
796         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
797         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
798         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
799         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
800         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
801         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
802         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
803         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
804         * sysdeps/unix/sysv/linux/alpha/setreuid.c: Likewise.
805         Formatting.  Change signed int into int.
806         * sysdeps/unix/sysv/linux/alpha/setresuid.c: Likewise.
807         * sysdeps/unix/sysv/linux/alpha/setresgid.c: Likewise.
808         * sysdeps/unix/sysv/linux/alpha/setregid.c: Likewise.
809         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
810         Remove.
811         * sysdeps/unix/setxid.h: New file.
813         * Rules (binaries-static): Add xtests-static.
814         * Makeconfig (run-program-prefix): Filter also xtests-static.
816 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu.
818         [BZ #535]
819         * time/difftime.c: Fix a double-rounding bug on hosts with
820         64-bit time_t and long double being IEEE double.  Also, port
821         to more valid C99 hosts, even those that have padding bits.
822         Don't include <values.h> since it is marked as an obsolescent
823         interface.  Include <limits.h>, <float.h>, and <stdint.h> instead.
824         (TYPE_BITS, TYPE_FLOATING, TYPE_SIGNED): New macros.
825         (subtract): New static function, that works correctly without
826         double-rounding, even on hosts with 64-bit time_t.  Also cater
827         to hosts with padding bits.
828         (__difftime): Use it.  Use DBL_MANT_DIG and LDBL_MANT_DIG to
829         determine whether floating types are wide enough: the old
830         test (which used sizeof) could in theory report the wrong results
831         on hosts with padding bits in floating-point values.
833 2004-11-11  Simon Josefsson  <jas@extundo.com>
835         [BZ #542]
836         * sysdeps/generic/strtok_r.c [HAVE_CONFIG_H]: Include config.h.
837         [!_LIBC]: Include strtok_r.h (in gnulib), map __strtok_r to
838         strtok_r and __rawmemchr to strch.
839         (__strtok_r): Use C89 prototype.
840         [weak_alias]: Move calls to libc_hidden_def and weak_alias into
841         this #ifdef.
843 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
845         [BZ #541]
846         * time/mktime.c (SHR): New macro, which is a portable
847         substitute for >> that should work even on Crays.
848         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
849         Problem reported by Mark D. Baushke in
850         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
852 2004-11-09  Paolo Bonzini  <bonzini@gnu.org>
854         * posix/regexec.c (match_ctx_free_subtops): Remove, merge into...
855         (match_ctx_clean): ... this function.
856         (match_ctx_free): Call match_ctx_clean.
858         * posix/regexec.c (transit_state): Remove the check for
859         out-of-bounds buffers.
860         (check_matching): Check here for out-of-bounds buffers.
861         (re_search_internal): Store into match_kind a set of bits
862         indicating which incantation of fastmap scanning must be
863         used.  Use a switch statement instead of multiple ifs.
864         Exit the final "for (;;)" with goto free_return unless
865         the match succeeded, thus simplifying some conditionals.
867         * posix/regex_internal.c (re_string_reconstruct,
868         re_string_context_at): Add several branch predictions for
869         case-sensitive matching and no transition table being used.
871 2004-11-10  Ulrich Drepper  <drepper@redhat.com>
873         * posix/tst-waitid.c: Don't use error to print error message, they
874         won't end up in the .out file.
876 2004-11-09  Ulrich Drepper  <drepper@redhat.com>
878         * nscd/nscd-client.h (libc_locked_map_ptr): Add new first
879         parameter, used as class for definition.
880         * nscd/nscd_getpw_r.c: Adjust for libc_locked_map_ptr change.
881         (pw_map_free): Ensure no crash after memory is freed.
882         * nscd/nscd_getgr_r.c: Likewise.  Make map externally visible.
883         * nscd/nscd_gethst_r.c: Likewise.
884         * nscd/nscd_getai.c: Use map from nscd_gethost.c.
885         * nscd/nscd_initgroups.c: Use map from nscd_getgr.c.
887         * nscd/nscd_getai.c: Add some checks to detect corrupt databases.
888         * nscd/nscd_getgr_r.c: Likewise
889         * nscd/nscd_gethst_r.c: Likewise.
890         * nscd/nscd_getpw_r.c: Likewise
892 2004-11-09  Jakub Jelinek  <jakub@redhat.com>
894         * posix/regcomp.c (calc_eclosure_iter): Don't access
895         dfa->edests[node].elems[0] if dfa->edests[node].nelem == 0.
896         * posix/rxspencer/tests: Add 5 new tests.
898 2004-11-09  Ulrich Drepper  <drepper@redhat.com>
900         * sysdeps/unix/sysv/linux/ifaddrs.c: Determine sin6_scope_id field
901         value correctly.  Patch by Mitsuru Kanda <mk@karaba.org>.
903 2004-11-04  Jakub Jelinek  <jakub@redhat.com>
905         * libio/fileops.c (_IO_new_file_seekoff): If mode is 0 and
906         fp->_offset == _IO_pos_BAD, just call _IO_SYSSEEK (fp, 0, dir)
907         and if successful set fp->_offset.
908         * libio/Makefile (tests): Add bug-ungetc3.
909         * libio/bug-ungetc3.c: New test.
911 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
913         * sysdeps/gnu/_G_config.h (_G_HAVE_MREMAP): Define symbol.
914         * sysdeps/mach/hurd/_G_config.h: New file.
915         * libio/fileops.c (mmap_remap_check) [__linux__]: Replaced with
916         [_G_HAVE_MREMAP].
918 2004-11-08  Ulrich Drepper  <drepper@redhat.com>
920         * posix/regcomp.c (utf8_sb_map): Define.
921         (free_dfa_content): Don't free dfa->sb_char if it's a pointer to
922         utf8_sb_map.
923         (init_dfa): Use utf8_sb_map instead of initializing memory when the
924         encoding is UTF-8.
926 2004-11-03  Paolo Bonzini  <bonzini@gnu.org>
928         * posix/regcomp.c (init_dfa): Get the codeset name outside glibc as
929         well.  Check if it is spelled UTF8 as well as UTF-8, and check
930         case-insensitively.  Set dfa->map_notascii manually when outside
931         glibc.
932         * posix/regex_internal.c (build_wcs_upper_buffer) [!_LIBC]: Enable
933         optimizations based on map_notascii.
934         * posix/regex_internal.h [HAVE_LANGINFO_H || HAVE_LANGINFO_CODESET
935         || _LIBC]: Include langinfo.h.
937         * posix/regex_internal.h (struct re_backref_cache_entry): Add "more"
938         field.
939         * posix/regexec.c (check_dst_limits): Hoist computation of the source
940         and destination bkref_idx out of the loop.  Pass it to
941         check_dst_limits_calc_pos.
942         (check_dst_limits_calc_pos_1): New function, containing the recursive
943         loop of check_dst_limits_calc_pos; uses the "more" field of
944         struct re_backref_cache to control the loop.
945         (check_dst_limits_calc_pos): Store into "boundaries" the position
946         relative to lim's start and end positions.  Do not accept eclosures,
947         accept bkref_idx instead.  Call check_dst_limits_calc_pos_1 to do the
948         work.
949         (sift_states_bkref): Use the "more" field of struct re_backref_cache
950         to control the loop.  A big "if" was turned into a continue and the
951         function was reindented.
952         (get_subexp): Use the "more" field of struct re_backref_cache
953         to control the loop.
954         (match_ctx_add_entry): Initialize the bkref_ents' "more" field.
955         (search_cur_bkref_entry): Return -1 if out of bounds.
957         * posix/regexec.c (empty_set): Remove.
958         (sift_states_backward): Remove cur_src variable.  Move inner loop
959         to build_sifted_states.
960         (build_sifted_states): Extract from sift_states_backward.  Do not
961         use empty_set.
962         (update_cur_sifted_state): Do not use empty_set.  Special case
963         dest_nodes->nelem == 0.
965         * posix/regex_internal.h (struct re_backref_cache_entry): Remove flag
966         field.
967         (struct re_sift_context_t): Remove cur_bkref, cls_subexp_idx,
968         check_subexp fields.  Move limits last.
969         * posix/regexec.c (match_ctx_clear_flag): Remove.
970         (sift_ctx_init): Remove check_subexp parameter.  Do not set removed
971         fields.  Callers adjusted.
972         (expand_bkref_cache): Remove last_str parameter.  Callers adjusted.
973         (re_search_internal): Remove fast_translate variable.
974         (update_cur_sifted_state): Pass candidates as the final parameter
975         to sift_states_bkref.
976         (sift_states_bkref): Change last unused parameter to be "candidates",
977         do not fetch candidates into a local variable.
978         Remove dead test for "node == sctx->bkref", and the cur_bkref_idx
979         variable.
980         Remove loops that set/reset the flag field of backref cache entries.
981         (check_arrival_add_next_nodes): Use a signed int to hold the return
982         value of re_node_set_insert.
983         (group_nodes_into_DFAstates): Likewise.
984         (match_ctx_add_entry): Do not set the flag field of the new entry.
986 2004-11-05  Roland McGrath  <roland@redhat.com>
988         * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Define
989         _dl_sysinfo_dso under [NEED_DL_SYSINFO_DSO] as well.
990         * elf/rtld.c (dl_main): Set up GLRO(dl_sysinfo_dso) under
991         [NEED_DL_SYSINFO_DSO] as well.
992         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Always include
993         AT_SYSINFO and AT_SYSINFO_EHDR in name table.
994         (_dl_sysdep_start) [NEED_DL_SYSINFO_DSO]: Match AT_SYSINFO_EHDR.
995         * elf/dl-support.c (_dl_sysinfo_dso): Define also under
996         [NEED_DL_SYSINFO_DSO].
997         (_dl_aux_init) [NEED_DL_SYSINFO || NEED_DL_SYSINFO_DSO]:
998         Match AT_SYSINFO_EHDR and set GL(dl_sysinfo_dso).
1000 2004-11-05  Roland McGrath  <roland@redhat.com>
1002         * manual/errno.texi (Error Codes): Revert last change for now.
1003         * sysdeps/gnu/errlist.c: Regenerated.
1005 2004-11-04  Roland McGrath  <roland@frob.com>
1007         * Makeconfig (link-libc, rpath-dirs): Remove AIX cruft definitions.
1008         (LDFLAGS-rpath-ORIGIN, LDFLAGS-soname-fname): Likewise.
1009         (LDFLAGS-rdynamic, LDFLAGS-Bsymbolic): Likewise.
1010         ($(common-objpfx)gnu/lib-names.stmp): Likewise.
1012 2004-11-01  Jakub Jelinek  <jakub@redhat.com>
1014         * sysdeps/unix/sysv/linux/x86_64/sys/procfs.h [__WORDSIZE == 32]
1015         (elf_fpxregset_t): New type.
1016         (struct elf_prpsinfo): If __WORDSIZE == 32, change pr_[ug]id type
1017         to unsigned short int.
1018         * sysdeps/unix/sysv/linux/x86_64/sys/user.h
1019         (struct user_fpregs_struct): Fix comment.
1020         * sysdeps/i386/fpu/bits/mathdef.h (float_t, double_t): If
1021         __FLOAT_EVAL_METHOD__ is defined and 0, typedef to float resp. double.
1022         * sysdeps/x86_64/fpu/bits/mathdef.h: Include bits/wordsize.h.
1023         (float_t, double_t): If -m32 and not -mfpmath=sse, typedef to
1024         long double.
1025         * sysdeps/x86_64/fpu/bits/fenv.h: Include bits/wordsize.h.
1026         (fenv_t): Remove __mxcsr field for -m32.
1028 2004-11-04  Jakub Jelinek  <jakub@redhat.com>
1030         * libio/ftello.c (ftello): Don't subtract save_end - save_base
1031         if pos is _IO_pos_BAD.
1032         * libio/ftello64.c (ftello64): Likewise.
1033         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
1034         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
1035         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
1036         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
1037         * libio/ioftell.c (_IO_ftell): Likewise.
1038         Cast to long int instead of off_t when checking for overflow.
1040 2004-11-04  Richard Henderson  <rth@redhat.com>
1042         * sysdeps/unix/sysv/linux/alpha/register-dump.h (regnames): Align.
1043         (linefeed): Remove.
1044         (register_dump): Rewrite to generate into a flat buffer instead
1045         of into iovecs.
1047 2004-11-02  Jakub Jelinek  <jakub@redhat.com>
1049         * debug/tst-chk1.c (ret): New volatile variable.
1050         (CHK_FAIL_END): Remove redundant ret setting.
1051         (do_test): Remote ret variable.
1053 2004-01-03  Paolo Bonzini  <bonzini@gnu.org>
1055         * posix/regex_internal.h (__regfree) [!_LIBC]: Define to regfree.
1057 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
1059         * sysdeps/generic/utime.c: Include <stddef.h>.
1061         * sysdeps/generic/sysconf.c: Include <grp.h> and <pwd.h>.
1063         * sysdeps/generic/tempname.c (__path_search): Add missing argument
1064         TRY_TMPDIR.
1066 2004-11-02  Jakub Jelinek  <jakub@redhat.com>
1068         * include/features.h (__USE_FORTIFY_LEVEL): Also set for Red Hat
1069         GCC 3.4.x-RH >= 3.4.2-8.
1070         * libio/bits/features.h (printf, fprintf, vprintf, vfprintf): For
1071         GCC 3.4.x-RH use __builtin___{,v}{,f}printf_chk instead of
1072         __{,v}{,f}printf_chk.
1073         * debug/tst-chk1.c (do_test): Deal with GCC 3.4.x-RH not
1074         being able to recognize subobjects.
1076 2004-10-31  Mariusz Mazur <mmazur@kernel.pl>
1078         * sysdeps/unix/sysv/linux/alpha/setregid.c: New file.
1079         * sysdeps/unix/sysv/linux/alpha/setresgid.c: New file.
1080         * sysdeps/unix/sysv/linux/alpha/setresuid.c: New file.
1081         * sysdeps/unix/sysv/linux/alpha/setreuid.c: New file.
1083 2004-10-27  Derek R. Price  <derek@ximbiot.com>
1085         [BZ #487] This change is imported from gnulib.
1086         * time/mktime.c (not_equal_tm) [DEBUG]: Remove redundant check.
1088 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
1090         [BZ #473]
1091         * time/tst-mktime.c (main): Don't assume that mktime fails
1092         when given time stamps before 1970.  It returns negative
1093         time_t values instead, for compatibility with BSD.
1095         * time/tst-mktime2.c: New file.
1096         * time/Makefile (tests): Add it.
1098         [BZ #473] Import from gnulib.  Revamp to avoid several problems near
1099         time_t extrema, and on hosts with 64-bit time_t and 32-bit int.
1100         This fixes Debian bug 177940.
1101         * time/mktime.c (TIME_T_MIDPOINT): New macro.
1102         (ydhms_diff): Renamed from ydhms_tm_diff, with a new signature,
1103         which avoids overflow problems on hosts with 64-bit time_t and
1104         32-bit int.  All callers changed.  Now an inline function.
1105         Verify at compile-time that long int is wide enough to avoid
1106         these overflow problems.
1107         (guess_time_tm): New function.
1108         (__mktime_internal): Use it.  Avoid overflow when computing yday on
1109         hosts with 64-bit long and 32-bit int.  Remove tests for 69;
1110         no longer needed.  Use if rather than #ifdef for LEAP_SECONDS_POSSIBLE
1111         so that the code is checked by more compilers.
1112         Do not rely on floating point to probe: stick to integer arithmetic,
1113         to avoid potential porting problems.
1114         Repair potential overflow correctly in the Southern Hemisphere.
1115         (localtime_offset): Add a FIXME for the case where time_t is unsigned.
1117 2004-10-30  Andreas Schwab  <schwab@suse.de>
1119         * sysdeps/m68k/dl-machine.h (elf_machine_rela)
1120         (elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
1121         instead of static.
1123 2004-10-30  Andreas Schwab  <schwab@suse.de>
1125         * sysdeps/unix/sysv/linux/waitid.c: Include <stddef.h> for NULL.
1127 2004-10-30  Ulrich Drepper  <drepper@redhat.com>
1129         * malloc/malloc.c (_int_free): Use unique comments for the error
1130         cases.
1132 2004-10-28  Roland McGrath  <roland@frob.com>
1134         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_fork): Use i386_thread_state
1135         instead of machine_thread_state.
1137 2004-10-28  Roland McGrath  <roland@redhat.com>
1139         * sysdeps/unix/sysv/linux/syscalls.list: Remove setaltroot.
1141 2004-10-28  Ulrich Drepper  <drepper@redhat.com>
1143         * elf/dl-open.c (dl_open_worker): Remove reference to glibcbug script.
1145 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
1147         * elf/dl-load.c (_dl_map_object): Use cache_rpath to check for
1148         existing rpath in main executable, not explicit test.
1150 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
1152         * include/resolv.h (_res_opcodes): New extern.
1153         Add libresolv_hidden_proto.
1154         * resolv/res_debug.c (_res_opcodes): Remove.
1155         (__p_class_syms, __p_type_syms): Add libresolv_hidden_proto
1156         and libresolv_hidden_data_def.  Remove attribute_hidden.
1157         * resolv/res_mkquery (_res_opcodes): Remove.
1158         * resolv/res_data.c (_res_opcodes): Remove attribute_hidden.
1159         Add libresolv_hidden_data_def.
1161 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
1163         * elf/dl-open.c (_dl_open): Don't allow explicitly opening a DSO
1164         into an empty namespace.
1166         * elf/dl-fini.c (_dl_fini): Fix search for map in maps array.
1167         Reverse order of namespaces.
1168         * elf/Makefile: Add rules to build and run tst-dlmopen3.
1169         * elf/tst-dlmopen3.c: New file.
1170         * elf/tst-dlmopen1mod.c: Add check whether constructor runs.
1172 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
1174         * sysdeps/generic/glob.c (globfree): Clear gl_pathv after freeing it.
1175         * posix/Makefile: Add rules to build and run bug-glob2 test.
1176         * posix/bug-glob2.c: New test.
1178 2004-10-27  Roland McGrath  <roland@frob.com>
1180         * sysdeps/mach/hurd/i386/tls.h (HURD_TLS_DESC_DECL): New macro.
1181         (_hurd_tls_init): Use it.
1182         (_hurd_tls_fork): New function.
1183         * sysdeps/mach/hurd/fork.c (__fork) [USE_TLS]: Call it.
1185 2004-10-26  Roland McGrath  <roland@frob.com>
1187         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Initialize TCB->tcb.
1189 2004-10-26  Jakub Jelinek  <jakub@redhat.com>
1191         * sysdeps/gnu/netinet/udp.h (struct udphdr): Use u_int16_t
1192         type instead of uint16_t.  Formatting.
1194 2004-10-25  Roland McGrath  <roland@redhat.com>
1196         * login/openpty.c (openpty): Add libutil_hidden_def.
1198         * nss/nss_files/files-parse.c (nss_files_parse_hidden_def): Define to
1199         either libc_hidden_def or libnss_files_hidden_def, not hidden_def.
1200         This file is also compiled into libnss_hesiod by #include.
1202 2004-10-25  Roland McGrath  <roland@frob.com>
1204         * sysdeps/unix/bsd/hp: Directory and all files removed.
1205         These are now in the ports repository.
1206         * sysdeps/unix/bsd/osf: Likewise.
1207         * sysdeps/unix/bsd/sequent: Likewise.
1208         * sysdeps/unix/bsd/sony: Likewise.
1209         * sysdeps/unix/bsd/ultrix4: Likewise.
1210         * sysdeps/unix/sysv/aix: Likewise.
1211         * sysdeps/unix/sysv/hpux: Likewise.
1212         * sysdeps/unix/sysv/irix4: Likewise.
1213         * sysdeps/unix/sysv/isc2.2: Likewise.
1214         * sysdeps/unix/sysv/minix: Likewise.
1215         * sysdeps/unix/sysv/sco3.2.4: Likewise.
1216         * sysdeps/unix/sysv/sco3.2: Likewise.
1217         * sysdeps/unix/sysv/sysv4: Likewise.
1219         * configure.in (ASM_LINE_SEP): Move this setting to ...
1220         * sysdeps/hppa/configure.in: ... here, new file.
1221         * sysdeps/hppa/configure: New generated file.
1222         * configure: Regenerated.
1224 2004-10-25  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1226         * sysdeps/sh/dl-machine.h: Include sysdep.h.
1227         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add CFI directives.
1228         (elf_machine_runtime_setup): Add always_inline attribute.
1229         (_dl_start_user): Pass the correct environ.
1230         (elf_machine_rela): Replace static inline by auto inline, add
1231         always_inline attribute.
1232         (elf_machine_rela_relative): Likewise.
1233         (elf_machine_lazy_rel): Likewise.
1235 2004-10-24  Ulrich Drepper  <drepper@redhat.com>
1237         * nis/nis_call.c: Pretty printing.  Minor cleanups.
1238         * nis/nis_addmember.c (nis_addmember): Add assert to check buffer
1239         bounds.
1241         * resolv/nss_dns/dns-host.c: Avoid using PLTs.
1242         * include/libc-symbols.h: Define hidden attribute macros for
1243         libnss_nisplus and libutil.
1244         * include/utmp.h: Add libutil_hidden_proto for login_tty.
1245         * login/login_tty.c: Add libutil_hidden_def.
1246         * nis/nisplus-parser.h: Add libnss_nisplus_hidden_proto for parsers.
1247         * nis/nss_nisplus/nisplus-parser.c: Add libnss_nisplus_hidden_def.
1248         * include/pty.h: New file.
1249         * include/rpcsvc/yp.h: New file.
1250         * include/rpcsvc/ypclnt.h: New file.
1251         * include/rpcsvc/ypupd.h: New file.
1252         * include/libc-symbols.h: Define hidden attribute macros for libnsl.
1253         * include/rpcsvc/nislib.h: Use libnsl_hidden_proto for various
1254         functions.
1255         * nis/nis_add.c: Add libnsl_hidden_def.  Minor optimizations.
1256         * nis/nis_call.c: Likewise.
1257         * nis/nis_clone_obj.c: Likewise.
1258         * nis/nis_defaults.c: Likewise.
1259         * nis/nis_domain_of_r.c: Likewise.
1260         * nis/nis_error.c: Likewise.
1261         * nis/nis_file.c: Likewise.
1262         * nis/nis_free.c: Likewise.
1263         * nis/nis_local_names.c: Likewise.
1264         * nis/nis_lookup.c: Likewise.
1265         * nis/nis_modify.c: Likewise.
1266         * nis/nis_print.c: Likewise.
1267         * nis/nis_remove.c: Likewise.
1268         * nis/nis_subr.c: Likewise.
1269         * nis/nis_table.c: Likewise.
1270         * nis/nis_util.c: Likewise.
1271         * nis/yp_xdr.c: Likewise.
1272         * nis/ypclnt.c: Likewise.
1273         * nis/ypupdate_xdr.c: Likewise.
1275         * resolv/res_send.c (send_dg): Cope with failures.
1277         * include/libc-symbols.h: Define hidden attribute macros for
1278         libnss_files.
1279         * include/netdb.h: Use libnss_files_hidden_proto for the parsers
1280         defined in libnss_files, not libc_hidden_proto.
1281         * include/netinet/ether.h: Likewise.
1282         * include/rpc/netdb.h: Likewise.
1283         * nss/nss_files/files-parse.c: Use hidden_def in parser definitions
1284         instead of libc_hidden_def.
1285         * nss/nss_files/files-netgrp.c: Add libnss_files_hidden_def to
1286         _nss_netgroup_parseline definition.
1288 2004-10-23  Roland McGrath  <roland@frob.com>
1290         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Don't return early
1291         after an RPC succeeds.
1293         * sysdeps/vax, sysdeps/unix/bsd/vax: Directories and all files removed.
1294         These are now in the ports repository.
1295         * sysdeps/tahoe, sysdeps/unix/bsd/tahoe: Likewise.
1296         * sysdeps/cris, sysdeps/unix/sysv/linux/cris: Likewise.
1297         * sysdeps/am29k, sysdeps/i860, sysdeps/i960, sysdeps/m88k: Likewise.
1298         * sysdeps/standalone, sysdeps/z8000: Likewise.
1300 2004-10-23  Ulrich Drepper  <drepper@redhat.com>
1302         * resolv/res_send.c (send_dg): Combine write and read to socket
1303         into one loop.
1305 2004-10-22  Roland McGrath  <roland@frob.com>
1307         * Makefile (%.bz2, %.gz): Move these pattern rules ...
1308         * Makerules: ... to here.
1310 2001-10-31  Alexandre Oliva  <aoliva@redhat.com>
1312         * elf/elf.h: Add R_MN10300_* relocation numbers.
1314 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
1316         [BZ #471] Fix imported from gnulib.
1317         * time/mktime.c (leapyear, ydms_tm_diff): Year is of type
1318         long int, not int, to avoid problems when tm_year == INT_MAX
1319         and tm_mon > 12.
1320         (__mktime_intenral): Compute year using long int arithmetic,
1321         not int arithmetic, to avoid problems on hosts where time_t
1322         and long are 64 bits but int is 32.
1324         [BZ #468] Import a fix from gnulib.
1325         * time/mktime.c [! DEBUG]: Do not include <string.h>.
1326         It's needed only if DEBUG is nonzero.
1328         [BZ #470] Import fix from gnulib.
1329         * time/mktime.c [!_LIBC] (__mktime_internal): Define to
1330         mktime_internal, to avoid clashes with any __mktime_internal
1331         function defined in the standard library.
1333         [BZ #469] Imported from gnulib.
1334         * time/mktime.c (__isleap): Remove; all uses replaced by:
1335         (leapyear): New function, which avoids overflow by not adding
1336         1900 to year before testing whether it is a leap year.
1338         [BZ #472] Imported from gnulib.
1339         * time/mktime.c (Local Variables): Remove -DHAVE_TIME_R_POSIX;
1340         no longer used.
1342 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
1344         * resolv/res_send.c: Remove compatibility code which is unused in
1345         glibc and probably bitrotten.
1347         * debug/execinfo.h: Remove __THROW from backtrace prototype.
1349 2004-10-22  Jakub Jelinek  <jakub@redhat.com>
1351         * sysdeps/i386/Makefile (CFLAGS-backtrace.c): Add -fexceptions.
1352         * sysdeps/i386/backtrace.c: Include <bits/libc-lock.h>, <dlfcn.h>,
1353         <stdlib.h> and <unwind.h>.  Remove <bp-checks.h> include.
1354         (struct trace_arg): New type.
1355         (unwind_backtrace, unwind_getip, unwind_getcfa, unwind_getgr): New
1356         fn pointers resp. macros.
1357         (init, backtrace_helper): New functions.
1358         (__backtrace): Rewritten to use _Unwind_Backtrace first and fall
1359         back to frame pointer walking.
1361 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
1363         * sysdeps/unix/sysv/linux/Versions: Things are still in flux, it
1364         seems.  Undo last additions.
1366 2004-10-21  Ulrich Drepper  <drepper@redhat.com>
1368         * posix/execvp.c (execvp): Also ignore ENODEV and ETIMEDOUT errno
1369         values.
1371 2004-10-20  Jakub Jelinek  <jakub@redhat.com>
1373         * sysdeps/unix/sysv/linux/readonly-area.c (__readonly_area): If /proc
1374         is not mounted, return 1.
1376 2004-10-20  Roland McGrath  <roland@redhat.com>
1378         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Check also
1379         $(config-sysdirs) for shlib-versions files.
1381         * Makeconfig ($(common-objpfx)soversions.i): Replace shell loop with
1382         use of ...
1383         * scripts/soversions.awk: ... this new file.  Collect lib info and
1384         match any DEFAULT line before emitting anything, so DEFAULT can come
1385         later in the concatenation of shlib-versions files.
1387         * manual/errno.texi (Error Codes): Add ENOKEY, EKEYEXPIRED,
1388         EKEYREVOKED, EKEYREJECTED.
1389         * sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.3.4): New errlist.
1390         * sysdeps/gnu/errlist.c: Regenerated
1392         * sysdeps/gnu/errlist-compat.awk: Don't bail if Versions gives a count
1393         higher than ERR_MAX reports.  Instead, emit a #define ERR_MAX.
1394         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.h): New target.
1395         (generated): Add errlist-compat.h.
1396         * sysdeps/gnu/errlist.awk: Make output #include <errlist-compat.h> to
1397         define ERR_MAX and use that for table size.
1399 2004-10-20  Ulrich Drepper  <drepper@redhat.com>
1401         * sysdeps/unix/sysv/linux/syscalls.list: Add entries for setaltroot,
1402         key_add, key_request, and keyctl syscalls.
1403         * sysdeps/unix/sysv/linux/Versions: Export them.
1405 2004-10-19  Roland McGrath  <roland@frob.com>
1407         * sysdeps/mach/readonly-area.c: New file.
1409 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
1411         * elf/Versions [ld, GLIBC_PRIVATE]: Add _dl_debug_state.
1412         * elf/dl-debug.c (_dl_debug_state): Add rtld_hidden_def.
1413         * sysdeps/generic/ldsodefs.h (_dl_debug_state): Don't mark as
1414         hidden but use rtld_hidden_proto.
1416 2004-10-19  Alfred M. Szmidt  <ams@gnu.org>
1418         * sysdeps/generic/readonly-area.c (__readonly_str): Renamed to ...
1419         (__readonly_area): ... this.
1421 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
1423         * sysdeps/generic/strcpy_chk.c (__strcpy_chk): Speed up by checking
1424         destlen only every 4 bytes.
1426 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
1428         * nss/getent.c (hosts_keys): Let inet_pton decide whether the
1429         string is an address or not.
1431 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
1433         * elf/dl-addr.c (_dl_addr): Don't look at STT_TLS symbols.
1434         Use DL_SYMBOL_ADDRESS to set dli_saddr.
1436         * debug/Makefile (catchsegv): Prefix $LIB with a backslash.
1438 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
1440         * debug/Makefile ($(objpfx)catchsegv): To support multilib
1441         platforms, use $LIB in path to slibdir.
1443 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
1445         * debug/catchsegv.sh: Update copyright year.
1446         Use mktemp to create segv_output file.
1448 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
1450         * include/features.h (__USE_FORTIFY_LEVEL): Enable even with
1451         Red Hat gcc4 4.0.0 and above.
1453 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
1455         * elf/dl-libc.c (__libc_dlsym_private, __libc_register_dl_open_hook):
1456         New functions.
1457         (__libc_dlopen_mode): Call __libc_register_dl_open_hook and
1458         __libc_register_dlfcn_hook.
1459         * dlfcn/Makefile (routines, elide-routines.os): Set.
1460         Add rules to build and test tststatic2.
1461         * dlfcn/tststatic2.c: New test.
1462         * dlfcn/modstatic2.c: New test module.
1463         * dlfcn/dladdr.c: Call _dlfcn_hook from libdl.so if not NULL.
1464         Define __ prefixed routine in libc.a and in libdl.a just call it.
1465         * dlfcn/dladdr1.c: Likewise.
1466         * dlfcn/dlclose.c: Likewise.
1467         * dlfcn/dlerror.c: Likewise.
1468         * dlfcn/dlinfo.c: Likewise.
1469         * dlfcn/dlmopen.c: Likewise.
1470         * dlfcn/dlopen.c: Likewise.
1471         * dlfcn/dlopenold.c: Likewise.
1472         * dlfcn/dlsym.c: Likewise.
1473         * dlfcn/dlvsym.c: Likewise.
1474         * dlfcn/sdladdr.c: New file.
1475         * dlfcn/sdladdr1.c: New file.
1476         * dlfcn/sdlclose.c: New file.
1477         * dlfcn/sdlerror.c: New file.
1478         * dlfcn/sdlinfo.c: New file.
1479         * dlfcn/sdlopen.c: New file.
1480         * dlfcn/sdlsym.c: New file.
1481         * dlfcn/sdlvsym.c: New file.
1482         * dlfcn/Versions (libdl): Export _dlfcn_hook@GLIBC_PRIVATE.
1483         * include/dlfcn.h (DL_CALLER_DECL, DL_CALLER RETURN_ADDRESS): Define.
1484         (struct dlfcn_hook): New type.
1485         (_dlfcn_hook): New extern decl.
1486         (__dlopen, __dlclose, __dlsym, __dlerror, __dladdr, __dladdr1,
1487         __dlinfo, __dlmopen, __libc_dlsym_private,
1488         __libc_register_dl_open_hook, __libc_register_dlfcn_hook): New
1489         prototypes.
1490         (__dlvsym): Use DL_CALLER_DECL.
1491         * include/libc-symbols.h: Define libdl_hidden_proto and friends.
1493         * malloc/arena.c (_dl_open_hook): Extern decl.
1494         (ptmalloc_init): Don't call _dl_addr when dlopened from statically
1495         linked programs but don't use brk for them either.
1497 2004-10-18  Roland McGrath  <roland@redhat.com>
1499         * dlfcn/bug-dlsym1.c (main): Remove bogus setenv call.
1501 2004-10-18  Ulrich Drepper  <drepper@redhat.com>
1503         * elf/dl-open.c (dl_open_worker): Avoid dereferencing map in
1504         statically linked code if there might none be found.
1506 2004-10-06  Maciej W. Rozycki  <macro@mips.com>
1508         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
1509         (__SYSCALL_CLOBBERS): Add "memory".
1510         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h
1511         (__SYSCALL_CLOBBERS): Likewise.
1512         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h
1513         (__SYSCALL_CLOBBERS): Likewise.
1515 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
1517         * include/libc-symbols.h: Define libresolv_hidden_proto and friends.
1518         * include/resolv.h: Add libresolv_hidden_proto for symbols defined,
1519         used, and exported in libresolv.
1520         * resolv/base64.c: Add libresolv_hidden_def.
1521         * resolv/gethnamaddr.c: Likewise.
1522         * resolv/ns_name.c: Likewise.
1523         * resolv/ns_netint.c: Likewise.
1524         * resolv/res_comp.c: Likewise.
1525         * resolv/res_data.c: Likewise.
1526         * resolv/res_debug.c: Likewise.
1527         * resolv/res_mkquery.c: Likewise.
1528         * resolv/res_query.c: Likewise.
1529         * resolv/res_send.c: Likewise.
1531 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
1533         * elf/dl-minimal.c (__chk_fail): New.  Add rtld_hidden_def.
1534         * sysdeps/unix/sysv/linux/readonly-area.c: New file.
1535         * sysdeps/i386/i686/memmove.S (__memmove_chk): Add checking
1536         routine.
1537         * sysdeps/i386/i686/memcpy.S (__memcpy_chk): Likewise.
1538         * sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
1539         * sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
1540         * sysdeps/i386/i686/memmove-chk.S: New file.
1541         * sysdeps/i386/i686/memcpy-chk.S: Likewise.
1542         * sysdeps/i386/i686/mempcpy-chk.S: Likewise.
1543         * sysdeps/i386/i686/memset-chk.S: Likewise.
1544         * sysdeps/generic/strcat-chk.c (__strcat_chk): Don't __chk_fail
1545         if exactly fitting into buffer.
1546         * sysdeps/generic/strncat-chk.c (__strncat_chk): Likewise.
1547         * sysdeps/generic/readonly-area.c: New file.
1548         * sysdeps/generic/strncpy-chk.c (__strncpy_chk): Only test
1549         destlen once.
1550         * sysdeps/x86_64/memset.S (__memset_chk): Add checking routine.
1551         * sysdeps/x86_64/memcpy.S (__memcpy_chk): Likewise.
1552         * sysdeps/x86_64/mempcpy.S (__memcpy_chk): Define to __mempcpy_chk.
1553         * sysdeps/x86_64/memcpy-chk.S: New file.
1554         * sysdeps/x86_64/mempcpy-chk.S: Likewise.
1555         * sysdeps/x86_64/memset-chk.S: Likewise.
1556         * sysdeps/x86_64/strcpy-chk.S: Likewise.
1557         * sysdeps/x86_64/stpcpy-chk.S: Likewise.
1558         * argp/argp-xinl.c (__OPTIMIZE__): Define to 1 instead of nothing.
1559         * argp/argp-fs-xinl.c (__OPTIMIZE__): Likewise.
1560         * debug/tst-chk1.c: New test.
1561         * debug/tst-chk2.c: Likewise.
1562         * debug/tst-chk3.c: Likewise.
1563         * debug/test-strcpy_chk.c: Likewise.
1564         * debug/test-stpcpy_chk.c: Likewise.
1565         * debug/vsprintf_chk.c (__vsprintf_chk): If flags > 0, request
1566         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
1567         * debug/Makefile (routines): Add printf_chk, fprintf_chk, vprintf_chk,
1568         vfprintf_chk, gets_chk and readonly-area.
1569         (CFLAGS-*_chk.c): Set.
1570         (tests): Add tst-chk1, tst-chk2, tst-chk3, test-strcpy_chk and
1571         test-stpcpy_chk.
1572         * debug/vprintf_chk.c: New file.
1573         * debug/printf_chk.c: Likewise.
1574         * debug/vfprintf_chk.c: Likewise.
1575         * debug/fprintf_chk.c: Likewise.
1576         * debug/gets_chk.c: Likewise.
1577         * debug/chk_fail.c (__chk_fail): Add libc_hidden_def.
1578         * debug/snprintf_chk.c (__snprintf_chk): Fix order of arguments
1579         passed to __vsnprintf_chk.
1580         * debug/Versions (libc): Export __printf_chk, __fprintf_chk,
1581         __vprintf_chk, __vfprintf_chk and __gets_chk @GLIBC_2.3.4.
1582         * debug/vsnprintf_chk.c (__vsnprintf_chk): Don't call
1583         __vsnprintf, instead create a temporary file with
1584         _IO_strn_jumps jumptable.  If flags > 0, request
1585         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
1586         * libio/Makefile (headers): Add bits/stdio2.h.
1587         * libio/stdio.h: Include <bits/stdio2.h> if __USE_FORTIFY_LEVEL.
1588         (sprintf, snprintf, vsprintf, vsnprintf): Remove defines.
1589         * libio/strfile.h (_IO_strnfile): New type.
1590         (_IO_strn_jumps): New extern.
1591         * libio/vsnprintf.c (_IO_strnfile): Remove.
1592         (_IO_strn_jumps): Remove static.
1593         * libio/bits/stdio2.h: New file.
1594         * libio/vswprintf.c (_IO_strnfile): Rename type to...
1595         (_IO_wstrnfile): ...this.  Adjust all uses.
1596         * libio/libio.h (_IO_FLAGS2_CHECK_PERCENT_N): Define.
1597         * stdio-common/vfprintf.c (STR_LEN): Define.
1598         (vfprintf): Add readonly_format variable.
1599         Handle _IO_FLAGS2_CHECK_PERCENT_N.
1600         (buffered_vfprintf): Copy _flags2.
1601         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
1602         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
1603         __vfprintf_chk): New prototypes.
1604         (__vsprintf_chk, __vsnprintf_chk): Add libc_hidden_proto.
1605         * include/string.h (__memcpy_chk, __memmove_chk, __mempcpy_chk,
1606         __memset_chk, __strcpy_chk, __stpcpy_chk, __strncpy_chk, __strcat_chk,
1607         __strncat_chk): New prototypes.
1608         * include/bits/string3.h: New file.
1609         * include/sys/cdefs.h (__chk_fail): Add libc_hidden_proto
1610         and rtld_hidden_proto.
1611         * string/Makefile (headers): Add bits/string3.h.
1612         * string/bits/string3.h (bcopy, bzero): New defines.
1613         (memset, memcpy, memmove, strcpy, strncpy, strcat, strncat): Change
1614         macros so that inlines are used only if unknown destination size
1615         or side-effects in destination argument.
1616         (mempcpy, stpcpy): Likewise.  Protect with #ifdef __USE_GNU.
1618 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
1620         * debug/Makefile (routines): Add *_chk.
1621         * debug/Versions (libc): Export __chk_fail, __memcpy_chk,
1622         __memmove_chk, __mempcpy_chk, __memset_chk, __stpcpy_chk,
1623         __strcat_chk, __strcpy_chk, __strncat_chk, __strncpy_chk,
1624         __sprintf_chk, __vsprintf_chk, __snprintf_chk, __vsnprintf_chk
1625         @GLIBC_2.3.4.
1626         * debug/chk_fail.c: New file.
1627         * debug/snprintf_chk.c: Likewise.
1628         * debug/sprintf_chk.c: Likewise.
1629         * debug/vsnprintf_chk.c: Likewise.
1630         * debug/vsprintf_chk.c: Likewise.
1631         * include/features.h (_FORTIFY_SOURCE): Document, handle.
1632         (__USE_FORTIFY_LEVEL): Define.
1633         (__GNUC_PREREQ): Move to earlier location.
1634         * include/sys/cdefs.h (__chk_fail): New prototype.
1635         * libio/bits/stdio.h (sprintf, vsprintf, snprintf, vsnprintf):
1636         Define if __USE_FORTIFY_LEVEL.
1637         * misc/sys/cdefs.h (__bos, __bos0): Define.
1638         * string/string.h: Include <bits/string3.h> if __USE_FORTIFY_LEVEL.
1639         * bits/string/string3.h: New header.
1640         * sysdeps/generic/memcpy_chk.c: New file.
1641         * sysdeps/generic/memmove_chk.c: Likewise.
1642         * sysdeps/generic/mempcpy_chk.c: Likewise.
1643         * sysdeps/generic/memset_chk.c: Likewise.
1644         * sysdeps/generic/stpcpy_chk.c: Likewise.
1645         * sysdeps/generic/strcat_chk.c: Likewise.
1646         * sysdeps/generic/strcpy_chk.c: Likewise.
1647         * sysdeps/generic/strncat_chk.c: Likewise.
1648         * sysdeps/generic/strncpy_chk.c: Likewise.
1650 2004-10-17  Roland McGrath  <roland@frob.com>
1652         * manual/memory.texi (Page Lock Functions): Typo fix.
1653         Reported by Carlos Maziero <maziero@ppgia.pucpr.br>
1655 2004-10-16  Alfred M. Szmidt  <ams@kemisten.nu>
1657         * sysdeps/mach/hurd/Makefile (link-libc-static): Use
1658         `$(static-gnulib') instead of `$(gnulib)'.
1660 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
1662         * sunrpc/rpc_clntout.c: Avoid including rcsid into binary.
1663         * sunrpc/rpc_cout.c: Likewise.
1664         * sunrpc/rpc_hout.c: Likewise.
1665         * sunrpc/rpc_main.c: Likewise.
1666         * sunrpc/rpc_parse.c: Likewise.
1667         * sunrpc/rpc_sample.c: Likewise.
1668         * sunrpc/rpc_scan.c: Likewise.
1669         * sunrpc/rpc_svcout.c: Likewise.
1670         * sunrpc/rpc_tblout.c: Likewise.
1671         * sunrpc/rpc_util.c: Likewise.
1673 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
1675         * sysdeps/unix/sysv/linux/i386/sysdep.h (PUSHARGS_6, DOARGS_6,
1676         POPARGS_6, _PUSHARGS_6, _DOARGS_6, _POPARGS_6): Define.
1677         * sysdeps/unix/sysv/linux/i386/syscall.S (syscall): Handle 6 argument
1678         syscalls.
1680 2004-10-15  Ulrich Drepper  <drepper@redhat.com>
1682         * nscd/nscd.h (_PATH_NSCD_PASSWD_DB): Move to /var/db.
1683         (_PATH_NSCD_GROUP_DB): Likewise.
1684         (_PATH_NSCD_HOSTS_DB): Likewise.
1685         (_PATH_NSCD_XYZ_DB_TMP): New #define, point to /var/run.
1686         * nscd/connections.c (nscd_init): Non-persistent database files
1687         are created with the _PATH_NSCD_XYZ_DB_TMP path.
1688         * nscd/nscd.init: Create /var/db/nscd if necessary.
1690 2004-10-15  Richard Henderson  <rth@redhat.com>
1692         * sysdeps/unix/sysv/linux/alpha/register-dump.h: New file.
1693         * sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h (SIGCONTEXT): Add
1694         _code argument, pass sigcontext by pointer.
1695         (SIGCONTEXT_EXTRA_ARGS): Likewise.
1696         (GET_PC, GET_FRAME, GET_STACK): Expect ctx as pointer.
1698 2004-10-14  Richard Henderson  <rth@redhat.com>
1700         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
1701         elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
1702         instead of static.
1704         * sysdeps/unix/sysv/linux/adjtime.c (ADJTIME): Use prototype
1705         style definition.
1706         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): If
1707         __ASSUME_TIMEVAL64, define __adjtime directly rather than
1708         via strong_alias.
1710 2004-10-14  Ulrich Drepper  <drepper@redhat.com>
1712         * nscd/Makefile: When using compilers without -fpie support, also
1713         link with -lselinux if necessary.
1714         Patch by Arkadiusz Miskiewicz <arekm@pld-linux.org>.
1716         * nscd/connections.c (nscd_init): Remove file if not persistent
1717         and not shared.  Patch by Jerome Borsboom <j.borsboom@erasmusmc.nl>.
1719 2004-10-14  Jakub Jelinek  <jakub@redhat.com>
1721         * sysdeps/unix/sysv/linux/i386/setresuid.c: Handle
1722         defined __NR_setresuid32 && !defined __NR_setresuid.
1723         * sysdeps/unix/sysv/linux/i386/setresgid.c: Handle
1724         defined __NR_setresgid32 && !defined __NR_setresgid.
1726         * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit,
1727         __signbitl, sqrtf, sqrt, sqrtl, fdim, fdimf): Use __NTH macro.
1729         * sysdeps/generic/errno-loc.c: Don't undef #errno
1730         if RTLD_PRIVATE_ERRNO.
1731         * include/errno.h (__errno_location): If RTLD_PRIVATE_ERRNO,
1732         add attribute_hidden.
1734         * dlfcn/dlinfo.c (dlinfo_doit): Replace iteration over GL(dl_loaded)
1735         chain with iteration over all namespaces' _ns_loaded chains.
1736         * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_preferred_address):
1737         Likewise.
1738         * sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Likewise.
1740         * elf/rtld.c (_dl_start): Fix one last dl_loaded.
1741         * elf/dl-load.c (_dl_map_object_from_fd): Avoid definition of
1742         label when it is not needed.
1743         * elf/dl-close.c (_dl_close): Typo: & -> &&.
1745 2004-10-12  Jakub Jelinek  <jakub@redhat.com>
1747         * sysdeps/generic/segfault.c: Include alloca.h and stdint.h.
1748         Don't include frame.h.
1749         (CURRENT_STACK_FRAME, INNER_THAN, ADVANCE_STACK_FRAME): Remove.
1750         (catch_segfault): Use backtrace function.
1752         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Fix comment.
1753         * sysdeps/unix/sysv/linux/ia64/register-dump.h: New file.
1754         * sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h (GET_PC): Return sc_ip
1755         field.
1757 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
1759         Add support for namespaces in the dynamic linker.
1760         * dlfcn/Makefile (libdl-routines): Add dlmopen.
1761         * dlfcn/Versions [libdl, GLIBC_2.3.4]: Add dlmopen.
1762         * dlfcn/dlfcn.h: Define Lmid_t, LM_ID_BASE, and LM_ID_NEWLM.
1763         Declare dlmopen.  Document RTLD_DI_LMID.
1764         * dlfcn/dlinfo.c: Handle RTLD_DI_LMID.
1765         * dlfcn/dlmopen.c: New file.
1766         * dlfcn/dlopen.c: Pass new parameter to _dl_open.
1767         * dlfcn/dlopenold.c: Likewise.
1768         * elf/dl-addr.c: Adjust for removal of GL(dl_loaded).
1769         * elf/dl-caller.c: Likewise.
1770         * elf/dl-close.c: Likewise.
1771         * elf/dl-conflict.c: Likewise.
1772         * elf/dl-debug.c: Likewise.
1773         * elf/dl-lookup.c: Likewise.
1774         * elf/dl-sym.c: Likewise.
1775         * elf/dl-version.c: Likewise.
1776         * elf/do-lookup.h: Likewise.
1777         * elf/rtld.c: Likewise.
1778         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
1779         * elf/dl-depsc: Likewise.  Add new parameter to _dl_map_object.
1780         * elf/dl-fini.c: Call destructors in all namespaces.
1781         * elf/dl-iteratephdr.c: Compute total nloaded.  Adjust for removal of
1782         GL(dl_loaded).
1783         * elf/dl-libc.c: Pass new parameter to _dl_open.  Adjust for removal
1784         of GL(dl_loaded).
1785         * elf/dl-load.c (_dl_map_object_from_fd): Don't load ld.so a second
1786         time.  Reuse the one from the main namespace in all others.
1787         Pass new parameter to _dl_new_object.
1788         Adjust for removal of GL(dl_loaded).
1789         * elf/dl-object.c: Take new parameter.  Use it to initialize l_ns.
1790         Adjust for removal of GL(dl_loaded).
1791         * elf/dl-open.c (_dl_open): Take new parameter.
1792         Adjust for removal of GL(dl_loaded).
1793         * elf/dl-support.c: Replace global _dl_loaded etc variables with
1794         _dl_ns variable.
1795         * include/dlfcn.h: Adjust prototype of _dl_open.
1796         Define __LM_ID_CALLER.
1797         * include/link.h: Add l_real, l_ns, and l_direct_opencount elements.
1798         * sysdeps/generic/dl-tls.c: Bump TLS_STATIC_SURPLUS.  Since libc is
1799         using TLS we need memory appropriate to the number of namespaces.
1800         * sysdeps/generic/ldsodefs.h (struct rtld_global): Replace _dl_loaded,
1801         _dl_nloaded, _dl_global_scope, _dl_main_searchlist, and
1802         _dl_global_scope_alloc with _dl_ns element.  Define DL_NNS.
1803         Adjust prototypes of _dl_map_object and member in rtld_global_ro.
1804         * malloc/malloc.c: Include <dlfcn.h>.
1805         * malloc/arena.c (ptmalloc_init): If libc is not in primary namespace,
1806         never use brk.
1807         * elf/Makefile: Add rules to build and run tst-dlmopen1 and
1808         tst-dlmopen2.
1809         * elf/tst-dlmopen1.c: New file.
1810         * elf/tst-dlmopen1mod.c: New file.
1811         * elf/tst-dlmopen2.c: New file.
1813         * elf/dl-close.c: Improve reference counting by tracking direct loads.
1814         * elf/dl-lookup.c (add_dependency): Likewise.
1815         * elf/dl-open.c (dl_open_worker): Likewise.
1816         * elf/rtld.c (dl_main): Likewise.
1818 2004-09-09  GOTO Masanori  <gotom@debian.or.jp>
1820         [BZ #77]
1821         * elf/dl-close.c: Count down l_opencount to check not only for
1822         l_reldeps, but also l_initfini.
1824 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
1826         * elf/dl-close.c (_dl_close): Update bug reporting instructions.
1828 2004-10-11  Ulrich Drepper  <drepper@redhat.com>
1830         * timezone/asia: Update from tzdata2004e.
1831         * timezone/southamerica: Likewise.
1832         * timezone/private.h: Update from tzcode2004e.
1833         * timezone/zdump.c: Likewise.
1835         * stdio-common/vfscanf.c: Add support for reading localized
1836         digits.  Patch mainly by Hamed Malek <hamed@bamdad.org>.
1838         * resolv/res_init.c (res_thread_freeres): Reset _res.options.
1839         [BZ #434]
1841         * resolv/res_send.c (send_dg): Use nonblocking sockets.  Add
1842         appropriate poll/select calls and restart operation if necessary.
1843         Also handle EINTR.
1845         * elf/tst-dlopenrpath.c (do_test): Enable code which was disabled
1846         for debugging.
1848         * elf/dl-sym.c (do_sym): Avoid using global variable.
1850         * elf/dl-addr.c (_dl_addr): Really use match everywhere.
1852 2004-10-09  Andreas Schwab  <schwab@suse.de>
1854         * sysdeps/m68k/memcopy.h (WORD_COPY_BWD): Remove use of cast as
1855         lvalue.
1857         * sysdeps/m68k/fpu/bits/mathinline.h: Remove __THROW from inline
1858         definitions.
1860 2004-10-07  Andreas Schwab  <schwab@suse.de>
1862         * misc/sys/uio.h: Change __vector to __iovec to avoid clash with
1863         altivec.
1865 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
1867         * gmon/Makefile (CFLAGS-mcount.c): Move before inclusion of "Rules".
1868         * sysdeps/powerpc/powerpc64/Makefile (CFLAGS-mcount.c): Add
1869         -msoft-float.
1870         * sysdeps/powerpc/powerpc64/sysdep.h (SAVE_ARG, REST_ARG): New macros.
1871         (CALL_MCOUNT): Replace with a gas macro implementation.
1872         (EALIGN): Delete PROF version.
1873         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Invoke CALL_MCOUNT.
1874         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Likewise.
1875         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
1876         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
1877         * sysdeps/powerpc/powerpc64/memcpy.S: Likewise.
1878         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
1879         * sysdeps/powerpc/powerpc64/stpcpy.S: Likewise.
1880         * sysdeps/powerpc/powerpc64/strchr.S: Likewise.
1881         * sysdeps/powerpc/powerpc64/strcmp.S: Likewise.
1882         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
1883         * sysdeps/powerpc/powerpc64/strlen.S: Likewise.
1884         * sysdeps/powerpc/powerpc64/strncmp.S: Likewise.
1885         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Likewise.
1886         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Likewise.
1887         * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Likewise.
1888         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Likewise.
1889         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Likewise.
1890         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: Likewise.
1891         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: Likewise.
1892         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: Likewise.
1893         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: Likewise.
1894         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Likewise.
1895         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Likewise.
1896         * sysdeps/powerpc/powerpc64/fpu/s_round.S: Likewise.
1897         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Likewise.
1898         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Likewise.
1899         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Likewise.
1901         * sysdeps/powerpc/powerpc64/setjmp-common.S: Add extra entry point
1902         past _mcount call.
1903         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Use it.
1904         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
1906 2004-10-06  Ulrich Drepper  <drepper@redhat.com>
1908         * resolv/res_mkquery.c (res_nmkquery): Reject randombits value if
1909         low 16 bits are zero.
1911 2004-10-06  Jakub Jelinek  <jakub@redhat.com>
1913         * posix/tst-getaddrinfo2.c: Include stdlib.h and string.h.
1914         (do_test): Use %p instead of 0x%08X to print a pointer.
1916         * malloc/malloc.c: Include stdio-common/_itoa.h.
1918 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
1920         * elf/rtld.c (dl_main): Use _dl_debug_printf instead of _dl_printf
1921         for prelink message.
1923 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
1925         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Include dl-sysdep.h.
1926         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
1928 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
1930         * grp/initgroups.c: Remove duplicate group IDs.
1931         * grp/compat-initgroups.c: Likewise.
1932         * nscd/initgrcache.c: Likewise.
1934 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
1936         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (__sysconf): Return 200112L
1937         for _SC_CPUTIME or _SC_THREAD_CPUTIME.
1939         * nscd/Makefile (nscd-cflags): Set to -DIS_IN_nscd=1, plus
1940         -fpie if building PIE.
1941         (CFLAGS-*.c): Use it.
1943         * nscd/Makefile (relro-LDFLAGS): Add -Wl,-z,now if have-z-relro.
1944         ($(objpfx)nscd): Add $(relro-LDFLAGS).
1946         * sysdeps/unix/sysv/linux/i386/sysconf.c: Include hp-timing.h.
1947         (__sysconf): Return -1 for _SC_CPUTIME or _SC_THREAD_CPUTIME if
1948         !HP_TIMING_AVAIL.
1950 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
1952         * nscd/Makefile (distribute): Remove TODO.
1953         * nscd/TODO: Removed.
1955 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
1957         * nscd/gai.c: Define __no_netlink_support if NEED_NETLINK is
1958         defined and __ASSUME_NETLINK_SUPPORT is zero.
1959         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gai.c): Add
1960         -DNEED_NETLINK.
1962         * malloc/mtrace.pl: Avoid calling location unless it is needed for
1963         output.  Patch by Edward Bishop <binutils@gmail.com>.
1965         * nscd/Makefile (CFLAGS-gai.c): Add -fpie.
1967 2004-10-04  H.J. Lu  <hongjiu.lu@intel.com>
1969         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c
1970         (clock_getcpuclockid): Add missing retval.
1972         * sysdeps/unix/sysv/linux/ia64/sysconf.c (linux_sysconf): Fix a typo.
1974 2004-10-04  Roland McGrath  <roland@redhat.com>
1976         * include/errno.h [RTLD_PRIVATE_ERRNO] (errno): Rename the real symbol
1977         to rtld_errno.
1978         * sysdeps/generic/errno.c [RTLD_PRIVATE_ERRNO] (rtld_errno): Define it,
1979         and don't define any other errno names.
1980         * sysdeps/unix/alpha/sysdep.h [RTLD_PRIVATE_ERRNO]: Use rtld_errno in
1981         place of errno.
1982         * sysdeps/unix/i386/sysdep.S: Likewise.
1983         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
1984         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
1985         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
1986         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
1987         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
1988         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
1989         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
1990         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
1991         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
1992         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
1993         * sysdeps/unix/x86_64/sysdep.S: Likewise.
1995         * sysdeps/generic/errno.c [! USE___THREAD] (errno): Use `nocommon'
1996         attribute instead of `section'.
1998 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
2000         * sysdeps/unix/sysv/linux/ia64/sysconf.c: New file.
2001         * sysdeps/unix/sysv/linux/ia64/Dist: Add has_cpuclock.c.
2002         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: Move actual
2003         testing code to...
2004         * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c: ...here.  New file.
2005         * sysdeps/unix/sysv/linux/i386/sysconf.c: Add dynamic check for
2006         _SC_CPUTIME and _SC_THREAD_CPUTIME.
2008         * nscd/connections.c (start_threads): Use sysconf in case
2009         _POSIX_CLOCK_SELECTION or _POSIX_MONOTONIC_CLOCK is not greater zero.
2011         * nscd/Makefile (nscd-modules): Add gai.
2012         * nscd/gai.c: New file.
2013         * nscd/nscd.c: Remove getaddrinfo stub definition.
2015         * assert/assert.h: Give up on using __builtin_expect.
2017         * elf/rtld.c (dl_main): Only skip => output in ldd mode if both
2018         strings are identical.
2020 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
2022         * malloc/arena.c (aligned_heap_area): New variable.
2023         (new_heap): If aligned_heap_area != NULL, attempt to use that
2024         first.  If HEAP_MAX_SIZE << 1 area is already HEAP_MAX_SIZE bytes
2025         aligned, remember the second half in aligned_heap_area.
2026         (delete_heap): Clear aligned_heap_area if deleting the area right
2027         before aligned_heap_area.
2029 2004-10-03  Juerg Billeter  <j@bitron.ch>
2031         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Return -1 if nscd
2032         can't be used.  [BZ #424]
2034 2004-10-03  Ulrich Drepper  <drepper@redhat.com>
2036         Dynamically create new threads if necessary.
2037         * nscd/connections.c (fd_ready): If no thread available for processing
2038         the request, create a new one unless the limit is reached.
2039         (start_threads): Check errors from pthread_create.
2040         * nscd/nscd.h: Declare max_nthreads.
2041         * nscd/nscd_conf.c: Parse max-nthreads entry.
2042         * nscd/nscd.conf: Add max-threads entry.
2043         * nscd/nscd_stat.c: Print current and maximum number of threads.
2045         Implement paranoia mode.
2046         * nscd/connections.c (nscd_init): Mark database and socket descriptors
2047         as close on exec.
2048         (restart): New function.
2049         (restart_p): New function.
2050         (nscd_run): Add missing descrement of nready in case readylist is
2051         empty.
2052         (main_loop_poll): Call restart_p and restart.
2053         (main_loop_epoll): Likewise.
2054         (begin_drop_privileges): Save original UID and GID.
2055         * nscd/nscd.c: Define new variables paranoia, restart_time,
2056         restart_interval, oldcwd, old_gid, old_uid.
2057         (main): Disable paranoia mode if we are not forking.
2058         (check_pid): When re-execing, the PID file contains the same PID as
2059         the current process.  Do not fail in this case.
2060         * nscd/nscd.conf: Add paranoia and restart-interval entries.
2061         * nscd/nscd.h: Define RESTART_INTERVAL.  Declare new variables.
2062         * nscd/nscd_conf.c: Parse paranoia and restart-internal configurations.
2063         * nscd/nscd_stat.c: Print paranoia and restart-internal values.
2065         * nscd/connections.c: Implement alternative loop for main thread
2066         which uses epoll.
2067         * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]
2068         (CFLAGS-connections.c): Add -DHAVE_EPOLL.
2070 2004-10-02  Ulrich Drepper  <drepper@redhat.com>
2072         * nscd/Makefile (CFLAGS-initgrcache.c): Add to CFLAGS-* variables,
2073         don't replace old content.
2075         * nscd/connections.c: Rewrite handling of incoming connections.  All
2076         are handled by one thread which then hands off the descriptors for the
2077         real work to the worker threads.
2078         * nscd/Makefile: Link nscd with librt.
2080         * nscd/selinux.c: Pretty printing.
2082         * nscd/dbg_log.c (dbg_log): Don't add unnecessary newline to
2083         output.  Let syslog do the formatting if debug_level == 0.
2085         * nscd/nscd_helper.c (get_mapping): No need to check timestamp if
2086         nscd_certainly_running is nonzero.
2088 2004-10-02  Simon Josefsson  <jas@extundo.com>
2090         [BZ #420]
2091         * sysdeps/generic/memmem.c [!_LIBC]: Define __builtin_expect, to
2092         make the file usable inside gnulib.
2094 2004-10-01  Ulrich Drepper  <drepper@redhat.com>
2096         * malloc/malloc.c (public_vALLOc): Add missing use of hooks.
2097         (public_pVALLOc): Likewise.
2099         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Always add the
2100         group the caller provided unless there is a real problem.
2102         * posix/bug-glob1.c (prepare): Fix creation of symlink.
2104 2004-09-30  Ulrich Drepper  <drepper@redhat.com>
2106         * posix/Makefile: Add rules to build and run bug-glob1.
2107         * posix/bug-glob1.c: New file.
2109         * iconv/iconv_prog.c (main): Print progress information to stderr.
2111         * nscd/nscd.c (termination_handler): Reset timestamp so that
2112         clients immediately stop using the database.
2114         * nscd/nscd-client.h (__nscd_get_map_ref): Drop volatile from last
2115         parameter.
2116         (__nscd_drop_map_ref): Change second parameter to be a reference to
2117         a variable.  Update variable when cycle count changed.
2118         * nscd/nscd_helper.c (__nscd_get_map_ref): Remove volatile here, too.
2119         * nscd/nscd_getai.c: Correctly use __nscd_drop_map_ref.  Reinitialize
2120         all variables and avoid memory leak in case of retries.
2121         * nscd/nscd_getgr_r.c: Likewise.
2122         * nscd/nscd_gethst_r.c: Likewise.
2123         * nscd/nscd_getpw_r.c: Likewise.
2124         * nscd/nscd_initgroups.c: Likewise.
2126         * nscd/nscd.h: Add declaration of addinitgroups and
2127         readdinitgroups.
2129 2004-09-30  Andreas Jaeger  <aj@suse.de>
2131         * nscd/Makefile (CFLAGS-nscd_initgroups.c): Set to -fpie.
2132         (CFLAGS-initgrcache.c): Set to -fexceptions.
2134 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
2136         * sysdeps/generic/glob.c (glob_in_dir): Don't blindly trust
2137         readdir results; for symlinks or files of unknown type check using
2138         stat whether the file exists.
2140         * posix/tst-gnuglob.c (find_file): Handle leading "./".  Fix
2141         recognition of files.
2143 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
2145         * time/tzfile.c (tzfile_mtime): New variable.
2146         (__tzfile_read): Reread the file if mtime is different.
2148 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
2150         * sysdeps/alpha/fpu/bits/mathinline.h (__fdimf, __fdim, fdimf, fdim):
2151         Handle +inf/+inf.
2152         * sysdeps/powerpc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
2153         * sysdeps/sparc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
2155 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
2157         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use correct constant for
2158         testing result of __nscd_get_map_ref.
2160 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
2162         * sysdeps/i386/fpu/s_fdim.S (__fdim): Handle +inf/+inf.
2163         * sysdeps/i386/fpu/s_fdimf.S (__fdimf): Likewise.
2164         * sysdeps/i386/fpu/s_fdiml.S (__fdiml): Likewise.
2166 004-09-29  Ulrich Drepper  <drepper@redhat.com>
2168         * grp/initgroups.c: Move compat_call implementation...
2169         * grp/compat-initgroups.c: ...to here.  New file.
2170         * grp/Makefile (distribute): Add compat-initgroups.c.
2171         (CFLAGS-initgroups.c): Add -DUSE_NSCD=1.
2172         * mscd/initgrcache.c: New file.
2173         * nscd/nscd_initgroups.c: New file.
2174         * nscd/Makefile (routines): Add nscd_initgroups.
2175         (nscd-modules): Add initgrcache.
2176         * nscd/cache.c (prune_cache): Add support for INITGROUPS entries.
2177         * nscd/connections.c: Handle INITGROUPS requests.
2178         * nscd/nscd-client.h: Define INITGROUPS, initgr_response_header.
2179         Add initgrdata element to struct datahead.  Fix typo in comment.
2180         * nscd/nscd_proto.h: Declare __nscd_getgrouplist.  Fix parameter
2181         type in __nscd_getgrgrid_r.
2182         * nscd/selinux.c (perms): Add INITGROUPS entry.
2184         * nscd/nscd_getai.c: No need to include <sys/mman.h>.
2186         * sunrpc/get_myaddr.c (get_myaddress): Account for interfaces without
2187         assigned addresses.
2188         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
2189         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
2190         * sunrpc/clnt_udp.c (is_network_up): Likewise.
2192         * nscd/nscd.c: Define getaddrinfo hidden so that it is never found
2193         outside.
2195         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_segvflags):
2196         Renamed from si_flags due to conflict with si_flags from <elf.h>.
2198 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
2200         * nscd/nscd_getai.c: Use NO_MAPPING instead of MAP_FAILED for test
2201         of failing __nscd_get_map_ref.  Fix a few typos.
2203         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Make sure
2204         SIGSETXID is not blocked.
2205         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Likewise.
2206         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
2207         * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise.
2208         * sysdeps/generic/sigfillset.c (sigfillset): Don't set SIGSETXID.
2210         * sunrpc/get_myaddr.c (get_myaddress): Fix test for failing
2211         getifaddrs call.
2212         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
2213         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
2214         * sunrpc/Makefile (xtests): Add tst-getmyaddr.
2215         * sunrpc/tst-getmyaddr.c: New file.
2217         * malloc/arena.c (ptmalloc_init): Allow MALLOC_CHECK_==0 to
2218         disable all checking.
2220         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_flags): Add
2221         support to get this value.
2223 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
2225         * io/utime.h (utime): Allow second argument to be NULL.
2227 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
2229         * sysdeps/posix/getaddrinfo.c (gaih_inet): If NAME is a numerical IP
2230         address and AI_CANONNAME is set, return copy of NAME as ai_canonname.
2232 2004-09-27  Andreas Jaeger  <aj@suse.de>
2234         * sysdeps/i386/dl-machine.h (elf_machine_rela_relative): Replace
2235         static inline by auto inline, add always_inline attribute.
2236         (elf_machine_rel): Likewise.
2237         (elf_machine_rela): Likewise.
2238         (elf_machine_lazy_rel): Likewise.
2239         (elf_machine_lazy_rela): Likewise.
2240         (elf_machine_rel_relative): Likewise.
2242 2004-09-27  Ulrich Drepper  <drepper@redhat.com>
2244         * sunrpc/xdr_intXX_t.c: Add xdr_quad_t and xdr_u_quad_t aliases.
2245         * sunrpc/rpc/xdr.h: Declare xdr_quad_t and xdr_u_quad_t.
2246         * sunrpc/rpc_parse.c (get_type): Use "quad_t" for TOK_HYPER.
2247         Otherwise isvectordef will loop infinitely if typedef hyper int64_t
2248         is seen.
2249         (unsigned_dec): Use "u_quad_t" for similar reasons.
2250         * sunrpc/Versions: Export xdr_quad_t and xdr_u_quad_t.
2252 2004-09-27  Roland McGrath  <roland@redhat.com>
2254         * sysdeps/generic/bits/waitstatus.h (__WIFSIGNALED): Simplify bit
2255         twiddling in last change.
2257         * posix/tst-waitid.c (do_test): Add tests for waitpid with WCONTINUED.
2259         [BZ #409]
2260         * posix/sys/wait.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
2261         * stdlib/stdlib.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
2262         * sysdeps/generic/bits/waitstatus.h (__W_CONTINUED): New macro.
2263         [WCONTINUED] (__WIFCONTINUED): New macro.
2264         (__WIFSIGNALED): Rewritten to exclude __W_CONTINUED value, and have no
2265         branches.
2267         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Add fifth argument to
2268         all three syscall uses, not just one!
2270 2004-09-26  Richard Henderson  <rth@redhat.com>
2272         * sysdeps/alpha/alphaev6/memcpy.S: Mark .prologue.
2273         * sysdeps/unix/alpha/sysdep.h (LEAF, ENTRY): Align entry points
2274         to 16 byte boundaries.
2276 2004-09-26  Ulrich Drepper  <drepper@redhat.com>
2278         * elf/readlib.c (process_file): Before complaining about too-short
2279         file, check that it potentially be an ELF file.  Also complain about
2280         empty files.  [BZ #151].
2282         * scripts/test-installation.pl: Fix ld.so recognition for new
2283         LD_TRACE_LOADED_OBJECTS output format.
2284         Patch by <jsberg04+computing.glibc@ftml.net>  [BZ #407].
2286         * elf/dl-support.c (_dl_non_dynamic_init): Fix cleaning of
2287         environment.  [BZ #384]
2289         * sunrpc/clnt_udp.c (is_network_up): Use getifaddrs instead of ioctl.
2290         * sunrpc/get_myaddr.c (get_myaddress): Likewise.
2291         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
2292         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.  Change interface
2293         to avoid buffer overrun and remove now useless parameters.
2294         (clnt_broadcast): Adjust caller.  [BZ #381].
2296         * sysdeps/generic/s_fdim.c: Handle +inf/+inf
2297         * sysdeps/generic/s_fdimf.c: Likewise.
2298         * sysdeps/generic/s_fdiml.c: Likewise.
2299         * sysdeps/i386/i686/fpu/s_fdim.S: Likewise.
2300         * sysdeps/i386/i686/fpu/s_fdimf.S: Likewise.
2301         * sysdeps/i386/i686/fpu/s_fdiml.S: Likewise.
2302         * sysdeps/powerpc/fpu/s_fdim.c: Likewise.
2303         * sysdeps/powerpc/fpu/s_fdimf.c: Likewise.
2304         * sysdeps/x86_64/fpu/s_fdiml.S: Likewise.
2305         * math/libm-test.inc (fdim_test): Add test case.  [BZ #376].
2307         * sysdeps/generic/bits/types.h: Fix __SQUAD_TYPE and __UQUAD_TYPE
2308         for compilers without __GLIBC_HAVE_LONG_LONG.  [BZ #362]
2310         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Remove incorrect
2311         requirement on socktype and protocol.
2312         (gaih_inet): If numeric port number is given, return records for all
2313         possible socket types.
2314         * posix/tst-getaddrinfo2.c: New file.
2315         * posix/Makefile (tests): Add tst-getaddrinfo2.  [BZ #358]
2317 2004-09-25  Ulrich Drepper  <drepper@redhat.com>
2319         * locale/loadlocale.c (_nl_intern_locale_data): Recognize LC_CTYPE
2320         data where _nl_value_type_LC_CTYPE does not contain the type
2321         information.  Add range checks.
2322         Reported by John Lumby <johnlumby@hotmail.com> [BZ #356].
2324         * libio/vasprintf.c (_IO_vasprintf): Fix condition to decide
2325         whether to realloc or not.
2326         Reported by Pavel Kankovsky <peak@argo.troja.mff.cuni.cz> [BZ #346].
2328         * intl/dcigettext.c (DCIGETTEXT): Protect tfind/tsearch calls.
2329         * intl/dcigettext.c (_nl_find_msg): Call _nl_load_domain also if
2330         decided < 0.
2331         * intl/finddomain.c (_nl_find_domain): Likewise.
2332         * intl/loadmsgcat.c (_nl_load_domain): Set decided to 1 only once we
2333         are done.  First set to -1 to signal initialization is ongoing.
2334         Protect against concurrent callers with recursive lock.
2335         * intl/finddomain.c (_nl_find_domain): Protect calls to
2336         _nl_make_l10nflist.  [BZ #322]
2338         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If determinination of
2339         source address fails, initialized source_addr_len field so that
2340         duplicate address recognition does not copy junk.
2342 2004-09-25  Jakub Jelinek  <jakub@redhat.com>
2344         * sysdeps/unix/sysv/linux/i386/setuid.c (__setuid): Remove second
2345         result declaration.
2347 2004-09-22  Andreas Schwab  <schwab@suse.de>
2349         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Adjust whitespace.
2351 2004-09-24  Ulrich Drepper  <drepper@redhat.com>
2353         * misc/daemon.c (daemon): Don't succeed if /dev/null cannot be
2354         opened.
2356         * nis/ypclnt.c (do_ypcall): Add one missing unlock.  Simplify the
2357         code a bit.
2359         * misc/daemon.c (daemon): Define errno in case /dev/null is not
2360         the correct device.
2362         * nis/ypclnt.c (yp_bind_file): Optimize a bit.  Minimal cleanups.
2364 2004-09-23  Andreas Jaeger  <aj@suse.de>
2366         * locale/weight.h (findidx): Remove static, it's not supported
2367         anymore with GCC 4.0 in a block scope.
2368         * locale/weightwc.h (findidx): Likewise.
2369         * posix/regcomp.c (seek_collating_symbol_entry): Likewise.
2370         (lookup_collation_sequence_value): Likewise.
2371         (build_range_exp): Likewise.
2372         (build_collating_symbol): Likewise.
2373         * iconv/iconvconfig.c (write_output): Likewise.
2374         * elf/do-rel.h (elf_dynamic_do_rel): Likewise.
2376         * sysdeps/x86_64/dl-machine.h (elf_machine_rela_relative): Remove
2377         static, add always_inline attribute.
2378         (elf_machine_rela): Likewise.
2379         (elf_machine_lazy_rel): Likewise.
2381         * elf/dynamic-link.h (elf_get_dynamic_info): Make static dependend
2382         on !RESOLVE so that it's not defined in local scope.
2384 2004-09-23  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2386         * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL_NCS): Define.
2388 2004-09-23  Thorsten Kukuk  <kukuk@suse.de>
2390         * sysdeps/unix/sysv/linux/sys/mount.h: Sync MS_RMT_MASK flag
2391         and BLK* ioctls with linux kernel headers.
2393 2004-09-23  Ulrich Drepper  <drepper@redhat.com>
2395         * sysdeps/generic/bits/dlfcn.h: Add RTLD_DEEPBIND.
2396         * elf/dl-object.c (_dl_new_object): Add new parameter mode.  If mode
2397         has RTLD_DEEPBIND set add local searchlist before global scope.
2398         * sysdeps/generic/ldsodefs.h (_dl_new_object): Adjust prototype.
2399         * elf/rtld.c: Adjust callers of _dl_new_object.
2400         * elf/dl-load.c: Likewise.
2401         (_dl_map_object_from_fd): If RTLD_DEEPBIND is used, don't do anything
2402         for DF_SYMBOLIC.
2403         * elf/dl-open.c (dl_open_writer): Pass RTLD_DEEPBIND flag on to
2404         _dl_map_object_deps.
2405         * elf/tst-deep1.c: New file.
2406         * elf/tst-deep1mod1.c: New file.
2407         * elf/tst-deep1mod2.c: New file.
2408         * elf/tst-deep1mod3.c: New file.
2409         * elf/Makefile: Add rules to build and run new tests.
2411         * elf/dl-deps.c: Pretty printing.
2413 2004-09-23  Jakub Jelinek  <jakub@redhat.com>
2415         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
2416         argument to numbers from syscall names.
2417         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
2418         (INTERNAL_SYSCALL_NCS): Renamed from...
2419         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
2420         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
2421         (INTERNAL_SYSCALL_NCS): Define.
2422         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
2423         (INTERNAL_SYSCALL_NCS): Likewise.
2424         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
2425         Change name argument to numbers from syscall names.
2426         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
2427         (INTERNAL_SYSCALL_NCS): Define.
2429 2004-09-22  Ulrich Drepper  <drepper@redhat.com>
2431         * malloc/malloc.c (malloc_printerr): Use syslog if writev failed.
2433         * string/string.h: Add __nonnull annotations.
2434         * stdlib/stdlib.h: Likewise.
2436 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
2438         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
2439         argument to numbers from syscall names.
2440         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
2441         (INTERNAL_SYSCALL_NCS): Renamed from...
2442         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
2443         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
2444         (INTERNAL_SYSCALL_NCS): Define.
2445         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
2446         (INTERNAL_SYSCALL_NCS): Likewise.
2447         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
2448         Change name argument to numbers from syscall names.
2449         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
2450         (INTERNAL_SYSCALL_NCS): Define.
2452 2004-09-20  H.J. Lu  <hongjiu.lu@intel.com>
2454         * sysdeps/unix/sysv/linux/ia64/sysdep.h (DO_INLINE_SYSCALL):
2455         Renamed to ...
2456         (DO_INLINE_SYSCALL_NCS): This.
2457         (DO_INLINE_SYSCALL): New.
2458         (INLINE_SYSCALL): Updated.
2459         (INTERNAL_SYSCALL_NCS): Updated.
2461 2004-09-21  Ulrich Drepper  <drepper@redhat.com>
2463         * elf/sprof.c (load_shobj): Add support for reading symbol table
2464         from debuginfo file.
2466         * elf/ldd.bash.in: Fix syntax errors.
2468 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
2470         * sysdeps/unix/sysv/linux/dl-execstack.c
2471         (_dl_make_stack_executable): Remove some duplication.
2473         * nscd/nscd.c (options): Mark S option as hidden.
2474         (parse_opt): When S option is used, print warning message.
2475         * nscd/grpcache.c (adgrptbyX): Don't handle secure mode.
2476         * nscd/hstcache.c (addhstbyX): Don't handle secure mode.
2477         * nscd/aicache.c (addhstaiX): Don't handle secure mode.
2478         * nscd/pwdcache.c (addpwbyX): Don't handle secure mode.
2480 2004-09-20  Roland McGrath  <roland@frob.com>
2482         * elf/dl-load.c (__stack_prot): Only use PROT_GROWSUP/PROT_GROWSDOWN
2483         in initializer #if defined.
2485 2004-09-18  Paul Eggert  <eggert@cs.ucla.edu>
2487         [BZ #391]
2488         * stdlib/getsubopt.c: Merge fixes from gnulib.
2489         (__strchrnul) [!_LIBC]: Define and include "strchrnul.c".
2490         (getsubopt): Use prototypes, not K&R style.
2491         Fix bug: memcmp(A,B,N) was being invoked on a memory block B
2492         whose size might be smaller than N.  Use strncmp to avoid the bug.
2494 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
2496         * configure.in: If selinux has not explictly been requested, don't
2497         comment on it missing.
2499         * elf/dl-load.c: Define __stack_prot.
2500         * sysdeps/unix/sysv/linux/dl-execstack.c: Don't define
2501         __stack_prot here, just declare it.
2503 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
2505         * configure.in (libc_cv_z_relro): Only set to yes if linker script
2506         contains DATA_SEGMENT_RELRO_END.
2508 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
2510         * elf/dl-load.c (_dl_map_object_from_fd): Add some error checking.
2511         Reorder code slightly.
2512         * elf/rtld.c (dl_main): No need to check whether l_info[DT_HASH]
2513         is non-null, _dl_setup_hash will do that.
2515 2004-09-19  Ulrich Drepper  <drepper@redhat.com>
2517         * sysdeps/unix/sysv/linux/setegid.c [HAVE_PTR__NPTL_SETXID]: Call
2518         callback to set IDs in all other threads as well.
2519         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
2520         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
2521         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
2522         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
2523         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
2524         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
2525         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
2526         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
2527         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
2528         * sysdeps/unix/sysv/linux/setuid.c: New file.
2529         * sysdeps/unix/sysv/linux/setgid.c: New file.
2530         * sysdeps/unix/sysv/linux/setreuid.c: New file.
2531         * sysdeps/unix/sysv/linux/setregid.c: New file.
2532         * sysdeps/unix/sysv/linux/setresuid.c: New file.
2533         * sysdeps/unix/sysv/linux/setresgid.c: New file.
2534         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NCS.
2535         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
2536         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
2537         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
2538         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
2539         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c: Use x86 version.
2540         * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c: Likewise.
2541         * sysdeps/unix/sysv/linux/sparc/sparc32/setresgid.c: New file.
2542         * sysdeps/unix/sysv/linux/sparc/sparc32/setresuid.c: New file.
2543         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove setresgid
2544         and setresuid.
2545         * nscd/aicache.c: Use pthread_seteuid_np instead of seteuid.
2546         * nscd/grpcache.c: Likewise.
2547         * nscd/hstcache.c: Likewise.
2548         * nscd/pwdcache.c: Likewise.
2550         * resolv/res_mkquery.c (res_nmkquery): Fix typo.
2552 2004-09-18  Ulrich Drepper  <drepper@redhat.com>
2554         * sysdeps/unisx/sysv/linux/dl-execstack.c: Get protection flag
2555         from memory.
2556         * elf/dl-load.c (_dl_map_object_from_fd): Add PROT_EXEC flag to
2557         __stack_flags.
2559         * sysdeps/posix/getaddrinfo.c (gaih_inet): Do not use
2560         gethostbyname3_r if we are not looking for the canonical name.
2562         * resolv/res_mkquery.c (res_nmkquery): Randomize request ID every
2563         time.
2565 2004-09-18  Roland McGrath  <roland@redhat.com>
2567         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Pass fifth argument to
2568         system call.
2570 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
2572         * include/link.h (struct link_map): Add l_used element.
2573         * sysdeps/generic/ldsodefs.h: Define DL_DEBUG_UNUSED.
2574         * elf/rtld.c (process_dl_debug): Recognize unused.
2575         (dl_main): When unused debug flag is set check for unused direct
2576         dependencies.
2577         When printing dependencies and SONAME starts with /, omit the SONAME =>
2578         part.
2579         * elf/dl-lookup.c (_dl_lookup_symbol_x): Mark object in which the
2580         symbol has been found as used.
2581         * elf/ldd.bash.in: Add -u option.
2583 2004-09-18  Jakub Jelinek  <jakub@redhat.com>
2585         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
2586         Do nothing if __NR_set_tid_address is not defined.  [BZ #390]
2588 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
2590         * sysdeps/posix/getaddrinfo.c: Use gethostbyname3_r NSS function
2591         in case it is available.
2593 2004-09-17  Jakub Jelinek  <jakub@redhat.com>
2595         * nscd/nscd.c (parse_opt): Write arg string instead of (void *)
2596         key to the socket.
2598 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
2600         * misc/sys/cdefs.h: Define __nonnull using nonnull function attribute
2601         for gcc 3.3 and higher.
2602         * io/fcntl.h: Add __nonnull where appropriate.
2603         * io/ftw.h: Likewise.
2604         * io/utime.h: Likewise.
2605         * io/sys/poll.h: Likewise.
2606         * io/sys/sendfile.h: Likewise.
2607         * io/sys/stat.h: Likewise.
2608         * io/sys/statfs.h: Likewise.
2609         * io/sys/statvfs.h: Likewise.
2610         * posix/unistd.h: Likewise.
2611         * catgets/nl_types.h: Likewise.
2612         * crypt/crypt.h: Likewise.
2613         * debug/execinfo.h: Likewise.
2615 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
2617         * posix/glob.h: Remove cruft to make header usable outside glibc.
2618         The maintenance headache is too big.
2620         * configure.in: Add test for required SELinux features.
2621         * config.make.in: Add have-selinux entry.
2622         * config.h.in: Add HAVE_SELINUX entry.
2623         * nscd/Makefile (nscd-modules): Add selinux.
2624         (CFLAGS-selinux.c): Add -fpie.
2625         Define selinux-LIBS and use in link line.
2626         * nscd/connections.c (handle_request): Check access SELinux permissions
2627         before processing request.
2628         * nscd/nscd.c (main): Initialize selinux_enabled and stop avc thread.
2629         * nscd/nscd_stat.c: Transmit and print AVC statistics.
2630         * nscd/selinux.c: New file.
2631         * nscd/selinux.h: New file.
2632         Patch mostly by Matthew Rickard <mjricka@epoch.ncsc.mil>.
2634 2004-09-16  Jakub Jelinek  <jakub@redhat.com>
2636         * nscd/nscd_helper.c (__nscd_unmap, get_mapping): Use __munmap
2637         instead of munmap.
2639         * nscd/Makefile (CFLAGS-aicache.c): Set to -fpie.
2641 2004-09-16  Thorsten Kukuk  <kukuk@suse.de>
2643         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check
2644         __nss_not_use_nscd_hosts variable if nscd should be used or not.
2646 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
2648         * nscd/nscd_proto.h: Define NSS_NSCD_RETRY.
2649         Add __nscd_getai prototype.
2650         * nss/getXXbyYY_r.c: Remode definition of NSS_NSCD_RETRY.
2651         * nscd/nscd-client.h: Remove __nscd_getai prototype.
2652         * nscd/nscd_getai.c: Include nscd_proto.h.
2654         * elf/ldd.bash.in: Add support for SELinux environments.
2655         Patch by Stephen Smalley <sds@epoch.ncsc.mil>.
2657 2004-09-16  Roland McGrath  <roland@redhat.com>
2659         * configure.in (--with-headers): Let argument contain a : separated
2660         list of directories to use, not just one.
2661         * configure: Regenerated.
2663 2004-09-15  Richard Henderson  <rth@redhat.com>
2665         * sysdeps/alpha/fpu/libm-test-ulps: Update.
2666         * scripts/data/c++-types-alpha-linux-gnu.data: New file.
2668 2004-09-15  Ulrich Drepper  <drepper@redhat.com>
2670         * nscd/aicache.c: Prefer using gethostbyname3_r NSS callback to also
2671         get ttl and canonical name.  Use these two values.
2672         * resolv/Versions: Export _nss_dns_gethostbyname3_r from libnss_dns.
2673         * resolv/nss_dns/dns-host.c (getanswer_r): Take two new parameters.
2674         If nonnull fill with TTL and pointer to canonical name respectively.
2675         (_nss_dns_gethostbyaddr_r): Pass NULL in new parameters of getanswer_r.
2676         (_nss_dns_gethostbyname2_r): Just wrapper around
2677         _nss_dns_gethostbyname3_r.
2678         (_nss_dns_gethostbyname3_r): Renamed from _nss_dns_gethostbyname2_r.
2679         Take two new parameters which as passed to getanswer_r.
2681         * nscd/Makefile (rountines): Add nscd_getai.
2682         (nscd-modules): Add aicache.
2683         * nscd/aicache.c: New file.
2684         * nscd/nscd_getai.c: New file.
2685         * nscd/cache.c (prune_cache): Handle GETAI request type.
2686         * nscd/connections.c: Add GETAI support in request handling.
2687         * nscd/nscd-client.h (request_type): Add GETAI.
2688         Define ai_response_header and struct nscd_ai_result types.
2689         (struct datahead): Add aidata field.
2690         Declare __nscd_getai.
2691         * nscd/nscd.c: Add getaddrinfo definition to catch problems.
2692         * nscd/nscd.h: Declare addhstai and readdhstai.
2694         * sysdeps/posix/getaddrinfo.c: Add support for using cached results.
2695         * posix/Makefile (CFLAGS-getaddrinfo.c): Add -DUSE_NSCD.
2697         * nscd/nscd-client.h  (struct datahead): Use uint8_t instead of bool.
2699 2004-09-14  Ulrich Drepper  <drepper@redhat.com>
2701         * misc/sys/cdefs.h: Remove debugging text from __P and __PMT.
2703 2004-09-13  Ulrich Drepper  <drepper@redhat.com>
2705         * misc/sys/cdefs.h: Restore old definition of __P.
2706         * csu/munch.awk: Remove uses of __P and __PMT.
2707         * gmon/gmon.c: Likewise.
2708         * hesiod/hesiod.h: Likewise.
2709         * include/stdio.h: Likewise.
2710         * io/fts.c: Likewise.
2711         * libio/genops.c: Likewise.
2712         * libio/libioP.h: Likewise.
2713         * libio/fileops.c: Likewise.
2714         * libio/iolibio.h: Likewise.
2715         * libio/libio.h: Likewise.
2716         * libio/memstream.c: Likewise.
2717         * libio/oldfileops.c: Likewise.
2718         * libio/oldstdfiles.c: Likewise.
2719         * libio/iopopen.c: Likewise.
2720         * libio/vsnprintf.c: Likewise.
2721         * libio/vswprintf.c: Likewise.
2722         * libio/wgenops.c: Likewise.
2723         * libio/oldiopopen.c: Likewise.
2724         * locale/programs/xmalloc.c: Likewise.
2725         * locale/programs/xstrdup.c: Likewise.
2726         * malloc/mtrace.c: Likewise.
2727         * misc/getttyent.c: Likewise.
2728         * misc/getusershell.c: Likewise.
2729         * nis/rpcsvc/ypupd.h: Likewise.
2730         * posix/fnmatch.h: Likewise.
2731         * posix/glob.h: Likewise.
2732         * resolv/arpa/nameser.h: Likewise.
2733         * resolv/gethnamaddr.c: Likewise.
2734         * resolv/resolv.h: Likewise.
2735         * resolv/inet_net_ntop.c: Likewise.
2736         * resolv/inet_net_pton.c: Likewise.
2737         * resolv/res_init.c: Likewise.
2738         * resolv/nss_dns/dns-network.c: Likewise.
2739         * stdio-common/vfprintf.c: Likewise.
2740         * stdio-common/reg-printf.c: Likewise.
2741         * sysdeps/generic/chflags.c: Likewise.
2742         * sysdeps/generic/fchflags.c: Likewise.
2743         * sysdeps/generic/glob.c: Likewise.
2744         * sysdeps/generic/printf_fphex.c: Likewise.
2745         * sysdeps/generic/memcmp.c: Likewise.
2746         * sysdeps/generic/memcopy.h: Likewise.
2747         * sysdeps/generic/morecore.c: Likewise.
2748         * sysdeps/generic/sstk.c: Likewise.
2749         * sysdeps/posix/sigvec.c: Likewise.
2750         * sysdeps/posix/ttyname_r.c: Likewise.
2751         * sysdeps/standalone/arm/bits/errno.h: Likewise.
2752         * sysdeps/standalone/standalone.h: Likewise.
2753         * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise.
2754         * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
2755         * sysdeps/unix/arm/start.c: Likewise.
2756         * sysdeps/unix/bsd/sigaction.c: Likewise.
2757         * sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise.
2758         * sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise.
2759         * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise.
2760         * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise.
2761         * sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise.
2762         * sysdeps/unix/sparc/start.c: Likewise.
2763         * sysdeps/unix/sysv/getdents.c: Likewise.
2764         * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise.
2765         * sysdeps/unix/sysv/irix4/getgroups.c: Likewise.
2766         * sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
2767         * sysdeps/unix/sysv/irix4/getrusage.c: Likewise.
2768         * sysdeps/unix/sysv/irix4/pathconf.c: Likewise.
2769         * sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
2770         * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise.
2771         * sysdeps/unix/sysv/irix4/start.c: Likewise.
2772         * sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
2773         * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise.
2774         * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise.
2775         * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
2776         * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise.
2777         * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
2778         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
2779         * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise.
2780         * sysdeps/unix/sysv/sysv4/setsid.c: Likewise.
2781         * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
2782         * sysdeps/unix/sysv/sysv4/waitpid.c: Likewise.
2783         * sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise.
2784         * time/tzset.c: Likewise.
2785         * time/strftime_l.c: Likewise.
2786         * time/strptime_l.c: Likewise.
2787         * crypt/md5.h: Likewise.
2789 2004-09-13  Andreas Jaeger  <aj@suse.de>
2791         * configure.in: Support GCC 4.x.
2792         * configure: Regenerated.
2794 2004-09-13  Thorsten Kukuk  <kukuk@suse.de>
2796         * nscd/nscd_stat.c: Don't access dbs[cnt].head for disabled services.
2798         * nscd/nscd.init: Fix path to socket.
2800 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
2802         * nscd/nscd_helper.c (get_mapping): Correctly check cmsg length.
2803         Avoid file descriptor leak in case of size mismatch.
2805         * nscd/nscd-client.h: Fix database structure layout for biarch.
2806         * nscd/mem.c (gc): Add casts to avoid warnings.
2808         * nss/getent.c: Don't preconstruct help message.  Do it only when
2809         needed.
2811         * locale/programs/locale.c: Simplify help message printing.
2813 2004-09-12  Roland McGrath  <roland@frob.com>
2815         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]: Add decls
2816         missing in last change.
2818 2004-09-11  Thorsten Kukuk  <kukuk@suse.de>
2820         * nis/nss_compat/compat-grp.c: Check that buflen is greater zero
2821         before writing data into the buffer with negative offset.
2822         * nis/nss_compat/compat-initgroups.c: Likewise.
2823         * nis/nss_compat/compat-pwd.c: Likewise.
2824         * nis/nss_compat/compat-spwd.c Likewise.
2826 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
2828         * misc/syslog.c (vsyslog): Fix copying of PID in case of
2829         out-of-memory situation.  [BZ #365].
2831         * sysdeps/alpha/fpu/bits/mathinline.h: Use __NTH instead of
2832         __THROW in inline function definitions.
2834         * posix/spawn.h [__USE_GNU]: Define POSIX_SPAWN_USEVFORK.
2835         * posix/spawnattr_setflags.c: Check whether any unknown bit is set
2836         in FLAGS parameter and fail if this is the case.
2837         * sysdeps/posix/spawni.c: Use vfork if POSIX_SPAWN_USEVFORK flag is
2838         set.
2840         * nscd/pwdcache.c (cache_addpw): Sync also negative results to disk.
2841         * nscd/grpcache.c (cache_addgr): Likewise.
2842         * nscd/hstcache.c (cache_addhst): Likewise.
2844 2004-09-11  Roland McGrath  <roland@frob.com>
2846         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]:
2847         Set _dl_phdr and _dl_phnum.
2848         (init1): When bootstrap task, bail early and never examine *D.
2850 2004-09-11  Alfred M. Szmidt  <ams@kemisten.nu>
2852         * sysdeps/mach/hurd/i386/tls.h (__i386_set_gdt) [!HAVE_I386_SET_GDT]:
2853         Cast THR, SEL and DESC to `void'.
2855 2004-09-11  Ulrich Drepper  <drepper@redhat.com>
2857         * nscd/connections.c (nscd_run): Call setup_thread only for enabled
2858         databases.
2860         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Use __NTH for __cmsg_nxthdr.
2862 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
2864         * nscd/nscd.c (pagesize_m1): New variable.
2865         (main): Initialize it.
2866         * nscd/nscd.h: Declare pagesize_m1.
2867         * nscd/hstcache.c: Pass correctly aligned address to msync.
2868         * nscd/grpcache.c: Likewise.
2869         * nscd/pwdcache.c: Likewise.
2871 2004-09-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2873         * sysdeps/unix/sysv/linux/sh/pthread_cond_wait.S: Decrement
2874         __nwaiters.  If pthread_cond_destroy has been called and this is
2875         the last waiter, signal pthread_cond_destroy caller and avoid
2876         using the pthread_cond_t structure after unlock.
2877         * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise.
2879 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
2881         * sysdeps/unix/sysv/linux/kernel-features.h: Don't define
2882         __ASSUME_CLONE_STOPPED.
2884 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
2886         * misc/sys/cdefs.h (__REDIRECT_NTH): Change order of __THROW and
2887         __asm__ for C++.  [BZ #377]
2889 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
2891         * nscd/nscd_stat.c: Improve output by also printing .shared and
2892         .persistent.
2894         * nscd/connections.c: Allow cache sharing to be really disabled.
2896 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
2898         * malloc/malloc.c (_int_free): Only do arena boundary check for
2899         contiguous arenas.
2901 2004-09-10  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
2903         * stdlib/longlong.h [__M32R__] (add_ssaaaa, sub_ddmmss): Fix broken
2904         instruct operands.
2905         * elf/elf.h: Add R_M32R_* relocs.
2907 2004-09-09  Ulrich Drepper  <drepper@redhat.com>
2909         * misc/sys/cdefs.h: Despite what the gcc manual says, gcc 3.2
2910         seems not to support the nothrow attribute.  Use it only for gcc
2911         3.3 and higher.
2913         * malloc/hooks.c (top_check): Print top chunk corruption as normal
2914         error message.
2916         * malloc/malloc.c (malloc_printerr): Don't make informational
2917         message look like error message.
2919 2004-09-09  Andreas Jaeger  <aj@suse.de>
2921         * nscd/Makefile (CFLAGS-nscd_setup_thread.c): Set to -fpie.
2923 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
2925         * sysdeps/unix/sysv/linux/bits/socket.h (__SCM_CONNECT): Removed.
2927         * malloc/malloc.c (_int_free): Add inexpensive double free and
2928         memory corruption tests.
2929         (malloc_printf_nc): Renamed to malloc_printerr.  Second parameter
2930         is no format string anymore.  Don't use stdio.  Adjust all callers.
2931         * malloc/hooks.c: Adjust malloc_printf_nc callers.
2933 2004-09-08  Roland McGrath  <roland@redhat.com>
2935         * malloc/mcheck.c: Don't use __P.
2936         Use prototypes definitions for static functions.
2938 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
2940         * sysdeps/ia64/fpu/bits/mathinline.h: Use __NTH instead of __THROW.
2942 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
2943             Jakub Jelinek  <jakub@redhat.com>
2945         * nscd/nscd-client.h: Add a few #includes.
2947         * nscd/Makefile (nscd-modules): Add nscd_setup_thread.
2948         * nscd/connections.c (nscd_run): Call setup_thread for maintenance
2949         threads.
2950         * nscd/nscd-client.h (struct database_pers_head): Add
2951         nscd_certainly_running field.
2952         * nscd/nscd.h: Declare setup_thread.
2953         * nscd/nscd_helper.c (__nscd_get_map_ref): Avoid the time test if
2954         nscd_certainly_running is nonzero.
2955         * sysdeps/generic/nscd_setup_thread.c: New file.
2956         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: New file.
2958 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
2960         * nscd/connections.c: Implement r/o sharing of nscd's cache with client
2961         processes via shared memory.
2962         * nscd/nscd-client.h: Likewise.
2963         * nscd/nscd.h: Likewise.
2964         * nscd/nscd_conf.c: Likewise.
2965         * nscd/nscd_getgr_r.c: Likewise.
2966         * nscd/nscd_getpw_r.c: Likewise.
2967         * nscd/nscd_gethst_r.c: Likewise.
2968         * nscd/nscd.conf: Add new config parameters.
2969         * nscd/Makefile (aux): Add nscd_helper.
2970         * nscd/nscd_helper.c: New file.
2971         * nscd/mem.c (gc): Indicate beginning and end of the gc cycle.
2973         * nscd/hstcache.c: Simplify a lot.  We cache only the request itself,
2974         no derived information.
2975         * connections.c (nscd_init): Fix bug in testing size of the persistent.
2977         * nis/Makefile (aux): Add nis_hash.
2978         * nis/nis_hash.c: New file.  Split out from nis_util.c.
2979         * nis/nis_util.c: Move __nis_hash code in separate file.
2981         * csu/tst-atomic.c: Improve atomic_increment_val test which would
2982         not have found a ppc bug.
2984         * sysdeps/s390/fpu/bits/mathinline.h: Remove unnecessary includes.
2986         * malloc/arena.c: Remove __MALLOC_P uses.
2987         * malloc/malloc.c: Likewise.
2989         * malloc/mtrace.c: Remove __P uses.
2990         * malloc/mcheck-init.c: Likewise.
2992 2004-09-07  Jakub Jelinek  <jakub@redhat.com>
2994         * sysdeps/powerpc/powerpc64/configure.in: New file.
2995         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
2996         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
2997         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
2998         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
2999         BODY_PREFIX): Define.
3000         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
3001         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
3002         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
3003         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
3004         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
3006 2004-09-07  Ulrich Drepper  <drepper@redhat.com>
3008         * malloc/malloc.h: Don't define __THROW if it is already defined.
3010         * sysdeps/powerpc/bits/atomic.h (atomic_increment): Define.
3011         (atomic_decrement): Define.
3013         * sysdeps/powerpc/bits/atomic.h: Implement atomic_increment_val and
3014         atomic_decrement_val.
3015         * sysdeps/powerpc/powerpc32/bits/atomic.h: Likewise.
3016         * sysdeps/powerpc/powerpc64/bits/atomic.h: Likewise.
3018         * csu/tst-atomic.c (do_test): Add tests of atomic_increment_val
3019         and atomic_decrement_val.
3021         * include/atomic.h: Define atomic_increment_val, atomic_decrement_val,
3022         and atomic_delay is not already defined.
3023         * sysdeps/i386/i486/bits/atomic.h: Define atomic_delay.
3024         * sysdeps/x86_64/bits/atomic.h: Likewise.
3026         * miscd/sys/cdefs.h (__NTH): New macro.
3027         (__THROW): Define using nothrow attribute for C code and gcc >= 3.2.
3028         (__REDIRECT_NTH): New macro.
3029         * argp/argp.h: Use __NTH and __REDIRECT_NTH where necessary.
3030         * ctype/ctype.h: Likewise.
3031         * dirent/dirent.h: Likewise.
3032         * io/fcntl.h: Likewise.
3033         * io/sys/sendfile.h: Likewise.
3034         * io/sys/stat.h: Likewise.
3035         * io/sys/statfs.h: Likewise.
3036         * io/sys/statvfs.h: Likewise.
3037         * libio/bits/stdio.h: Likewise.
3038         * misc/sys/mman.h: Likewise.
3039         * posix/unistd.h: Likewise.
3040         * resource/sys/resource.h: Likewise.
3041         * rt/aio.h: Likewise.
3042         * signal/signal.h: Likewise.
3043         * stdlib/stdlib.h: Likewise.
3044         * string/argz.h: Likewise.
3045         * string/string.h: Likewise.
3046         * sysdeps/generic/inttypes.h: Likewise.
3047         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
3048         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
3049         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
3050         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
3051         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
3052         * sysdeps/unix/sysv/linux/bits/sys/sysmacros.h: Likewise.
3053         * wcsmbs/wchar.h: Likewise.
3055         * sysdeps/generic/glob.c: Use __PMT isntead of __P where appropriate.
3057         * resolv/gethnamaddr.c (getanswer): Remove __P use in variable
3058         definition.
3060         * io/sys/poll.h: Remove __THROW from poll prototype, it's a
3061         cancellation point.
3063         * io/fts.c (fts_open): Remove uses of __P.
3065         * include/stdlib.h: No need to use __THROW in this header.
3067 2004-09-06  Roland McGrath  <roland@frob.com>
3069         * sysdeps/mach/hurd/dl-sysdep.c (__writev): Does use assert on FD
3070         validity, since __assert_fail gets to here anyway.  Just fail.
3072 2004-09-06  Ulrich Drepper  <drepper@redhat.com>
3074         * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix problem with
3075         AF_UNSPEC lookup with AI_CANONNAME of name which has only IPv6
3076         addresses.
3078 2004-09-05  Richard Henderson  <rth@redhat.com>
3080         * sysdeps/alpha/fpu/fraiseexcpt.c: Remove file.
3081         * sysdeps/unix/sysv/linux/kernel-features.h
3082         (__ASSUME_IEEE_RAISE_EXCEPTION): New.
3083         * sysdeps/unix/sysv/linux/alpha/fraiseexcpt.c: New file.
3084         * sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h: New file.
3085         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use it.
3086         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
3088 2004-09-05  Richard Henderson  <rth@redhat.com>
3090         * sysdeps/alpha/div.S: Save and restore FPCR around fp operations.
3091         * sysdeps/alpha/divl.S, sysdeps/alpha/divq.S, sysdeps/alpha/divqu.S,
3092         sysdeps/alpha/ldiv.S, sysdeps/alpha/reml.S, sysdeps/alpha/remq.S,
3093         sysdeps/alpha/remqu.S: Likewise.
3094         * sysdeps/alpha/div_libc.h (FRAME): Increase to 64.
3096 2004-09-05  Ulrich Drepper  <drepper@redhat.com>
3098         * nscd/cache.c (cache_add): Correctly log GETHOSTBYADDR and
3099         GETHOSTBYADDRv6 requests.
3101 2004-09-04  Ulrich Drepper  <drepper@redhat.com>
3103         * nscd/pwdcache.c (cache_addpw): Use correct key length in
3104         cache_add calls.
3105         * nscd/grpcache.c (cache_addgr): Likewise.
3107 2004-09-03  Alfred M. Szmidt  <ams@kemisten.nu>
3109         * sysdeps/mach/hurd/i386/tls.h (THREAD_DTV): Changed type of _DTV
3110         to `dtv_t *'.
3112 2004-09-03  Ulrich Drepper  <drepper@redhat.com>
3114         * nscd/nscd.c (parse_opt): Use writev instead of two write for
3115         invalidate command.
3117 2004-09-02  Ulrich Drepper  <drepper@redhat.com>
3119         * nscd/connections.c (nscd_run): Check early for invalid request types.
3121 2004-09-02  Roland McGrath  <roland@frob.com>
3123         * sysdeps/mach/hurd/i386/tls.h (TLS_INIT_TP_EXPENSIVE): New macro.
3124         (INSTALL_NEW_DTV, THREAD_DTV): Rewritten to fetch the right word.
3125         (THREAD_SELF): New macro.
3127 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
3129         [BZ #357]
3130         * stdlib/tst-setcontext.c (test_stack): Added test for stack clobber.
3131         (main): Call test_stack.
3132         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
3133         (__getcontext): Push stack frame then save parms in local frame.
3134         Improve instruction scheduling.
3135         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
3136         (__swapcontext): Likewise.
3138 2004-09-01  Andreas Schwab  <schwab@suse.de>
3140         * sysdeps/unix/sysv/linux/ia64/sys/ucontext.h [g++ >= 3.5]: Use
3141         __builtin_offsetof.
3143 2004-09-01  Jakub Jelinek  <jakub@redhat.com>
3145         [BZ #361]
3146         * posix/fnmatch_loop.c (FCT): For backslash between brackets, branch
3147         to normal_bracket after fetching the next character.
3148         * posix/tst-fnmatch.input: Add 25 new tests.
3149         Reported by Markus Oberhumer <markus@oberhumer.com>.
3151 2004-09-01  Ulrich Drepper  <drepper@redhat.com>
3153         * elf/rtld.c (dl_main): First check existence of ld.so.preload
3154         with access.
3156 2004-09-01  Roland McGrath  <roland@redhat.com>
3158         * sysdeps/unix/sysv/linux/bits/waitflags.h
3159         (WSTOPPED, WEXITED, WCONTINUED, WNOWAIT): New macros.
3160         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_WAITID_SYSCALL):
3161         New macro.
3162         * sysdeps/unix/sysv/linux/waitid.c: New file.  Use new syscall when
3163         available, or fall back to the waitpid-based generic code.
3165 2004-08-14  Alfred M. Szmidt  <ams@kemisten.nu>
3167         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Let gcc
3168         clobber the `ebp' register.
3169         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Removed.
3170         Reverts change from 2004-05-07 by Jeroen Dekkers.
3172         * sysdeps/mach/hurd/i386/init-first.c (init): Changed the type of
3173         NEWSP from `void *' to `int *'.  Changed all casts accordingly.
3175 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
3177         * wcsmbs/wcsmbsload.c (__wcsmbs_getfct): Move attribute_hidden
3178         before return type.
3179         * locale/localename.c (__current_locale_name): Likewise.
3181 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
3183         * elf/ldconfig.c (parse_conf): Add prefix argument, prepend it
3184         before arguments to add_dir and pass to parse_conf_include.
3185         (parse_conf_include): Add prefix argument, pass it down to
3186         parse_conf.
3187         (main): Call arch_startup.  Adjust parse_conf caller.
3188         Call add_arch_dirs.
3189         * sysdeps/generic/dl-cache.h (arch_startup, add_arch_dirs): Define.
3190         * sysdeps/unix/sysv/linux/i386/dl-cache.h: New file.
3191         * sysdeps/unix/sysv/linux/ia64/dl-cache.h (EMUL_HACK, arch_startup,
3192         add_arch_dirs): Define.
3193         * sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: Prepend
3194         /emul/ia32-linux before the 32-bit ld.so pathname.
3195         * sysdeps/unix/sysv/linux/ia64/dl-procinfo.c: New file.
3196         * sysdeps/unix/sysv/linux/ia64/dl-procinfo.h: New file.
3198 2004-08-30  Roland McGrath  <roland@frob.com>
3200         * scripts/extract-abilist.awk: If `lastversion' variable defined, omit
3201         later sets from output.
3202         * Makerules (check-abi): Pass option to set that with value of
3203         LIB-abi-frozen variable if one is set.
3205         * abilist/libcidn.abilist: New file (empty).
3207 2004-08-30  Jakub Jelinek  <jakub@redhat.com>
3209         * posix/bits/posix1_lim.h (_POSIX_CHILD_MAX, _POSIX_OPEN_MAX): If
3210         not __USE_XOPEN2K, use the Unix98 mandated values.
3212 2004-08-27  Roland McGrath  <roland@redhat.com>
3214         * configure.in (usetls): Default to yes.
3215         * configure: Regenerated.
3217 2004-08-26  Roland McGrath  <roland@redhat.com>
3219         * configure.in (add_ons_automatic): New variable, set to yes or no
3220         indicating --enable-add-ons with no explicit list.
3221         (running add-on fragments): Allow a fragment to modify $libc_add_on
3222         and have that affect its place in the list of add-ons to use.
3223         * configure: Regenerated.
3225 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
3227         * nscd/cache.c: Major rewrite.  The data is now optionally kept in
3228         a mmaped memory region which is automatically mirrored on disk.
3229         This implements persistent data storage.  The Memory handled
3230         needed to be completely revamped, it now uses a garbage collection
3231         mechanism instead of malloc.
3232         * nscd/connections.c: Likewise.
3233         * nscd/nscd.c: Likewise.
3234         * nscd/nscd.h: Likewise.
3235         * nscd/nscd_conf.c: Likewise.
3236         * nscd/nscd_stat.c: Likewise.
3237         * nscd/grpcache.c: Likewise.
3238         * nscd/hstcache.c:: Likewise.
3239         * nscd/pwdcache.c:: Likewise.
3240         * nscd/Makefile: Add rules to build mem.c.
3241         * nscd/mem.c: New file.
3242         * nscd/nscd.conf: Describe new configuration options.
3244 2004-08-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3246         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
3247         NO_SGIDEFS_H isn't defined.
3248         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
3249         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
3251         * sysdeps/unix/sysv/linux/sh/pread.c: Define NO_SGIDEFS_H and
3252         _MIPS_SIM.
3253         * sysdeps/unix/sysv/linux/sh/pwrite.c: Likewise.
3254         * sysdeps/unix/sysv/linux/sh/pread64.c: Likewise.
3255         * sysdeps/unix/sysv/linux/sh/pwrite64.c: Likewise.
3257 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
3259         * nscd/connections.c (nscd_run): atomic_increment was not missing.
3261         * sysdeps/gnu/Makefile (libdl-sysdep_routines): Don't add eval.
3262         Patch by Greg Schafer.
3264 2004-08-25  Richard Henderson  <rth@redhat.com>
3266         * sysdeps/alpha/elf/start.S (_start): Use $15 as frame unwind
3267         instead of $31.  Zero $15.
3268         * sysdeps/unix/sysv/linux/alpha/clone.S (thread_start): Likewise.
3270 2004-08-25  Ulrich Drepper  <drepper@redhat.com>
3272         * sysdeps/powerpc/powerpc64/bits/atomic.h
3273         (__arch_compare_and_exchange_bool_32_acq): Fix case where oldval
3274         is negative.
3275         (__arch_compare_and_exchange_bool_32_rel): Likewise.
3277         * nscd/connections.c: Make socket nonblocking so that threads
3278         don't get stuck on accept.  Fix locking.
3280         * nscd/grpcache.c (cache_addgr): Use copy of original key in hash
3281         entry with alternative key.
3282         * nscd/pwdcache.c (cache_addpw): Likewise.
3284 2004-08-25  Richard Sandiford  <rsandifo@redhat.com>
3286         * sysdeps/mips/dl-machine.h (_dl_start_user): Don't set
3287         __libc_stack_end.
3289 2004-08-23  Ulrich Drepper  <drepper@redhat.com>
3291         * sysdeps/gnu/netinet/udp.h: Cosmetic changes.  Remove unnecessary
3292         __BEGIN_DECLS/__END_DECLS.
3294 2004-08-23  Andreas Jaeger  <aj@suse.de>
3296         [BZ #341]
3297         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_NOATIME): Define.
3298         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (O_NOATIME): Likewise.
3299         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (O_NOATIME): Likewise.
3300         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (O_NOATIME): Likewise.
3301         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (O_NOATIME): Likewise.
3302         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_NOATIME): Likewise.
3303         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (O_NOATIME): Likewise.
3304         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (O_NOATIME): Likewise.
3305         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_NOATIME): Likewise.
3306         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (O_NOATIME): Likewise.
3307         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (O_NOATIME): Likewise.
3308         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_NOATIME): Likewise.
3309         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (O_NOATIME): Likewise.
3311 2004-08-21  Ulrich Drepper  <drepper@redhat.com>
3313         * malloc/hooks.c (DEFAULT_CHECK_ACTION): Moved to malloc.c.
3314         (check_action): Likewise.
3315         When printing error messages, use malloc_printf_nc now instead of
3316         fiddling with the streams cancellation flag in every place.
3317         * malloc/malloc.c (DEFAULT_CHECK_ACTION): New definition.  Change
3318         default to 3.
3319         (check_action): New variable.
3320         (unlink): Print error message and eventually terminate in case list
3321         is corrupted.
3322         (malloc_printf_nc): New function.  Use it in _int_free.
3323         Change proposed by Arjan van de Ven.
3325         * dlfcn/Makefile: Don't build eval.c anymore.
3327 2004-08-20  Roland McGrath  <roland@frob.com>
3329         * csu/Makefile ($(objpfx)version-info.h): Use printf in place
3330         of echo -e for POSIX.2 portability.
3331         Reported by Paul Jarc <prj@po.cwru.edu>.
3333 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
3335         * sysdeps/posix/getaddrinfo.c (gaih_inet): Minor optimizations in
3336         list generation.
3338         * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't use
3339         getcanonname_r function if AI_CANONNAME flag is not set in
3340         request.
3342         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss):
3343         Initialize mysize with limits only if latter is >= 0.  Use mysize
3344         in malloc call.
3346 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
3348         * sysdeps/posix/getaddrinfo.c (gaih_inet): Cast canon to (char *)
3349         to avoid warning.
3351         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Initialize
3352         status to NSS_STATUS_UNAVAIL.
3354 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
3356         * sysdeps/powerpc/powerpc64/configure.in: New file.
3357         * sysdeps/powerpc/powerpc64/configure: Rebuilt.
3358         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
3359         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
3360         * configure: Rebuilt.
3361         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
3362         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
3363         BODY_PREFIX): Define.
3364         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
3365         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
3366         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
3367         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
3368         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
3370 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
3372         * sysdeps/posix/getaddrinfo.c (gaih_inet): Use h->h_name in the
3373         cannoname lookup since it has the FQDN even if the original NAME
3374         value has not.
3376 2004-08-18  Ulrich Drepper  <drepper@redhat.com>
3378         * sysdeps/posix/getaddrinfo.c (gaih_inet): Store NAME parameter
3379         pointer in new variable ORIG_NAME and use this pointer when
3380         determination of canonical name failed, not the possibly IDN
3381         translated value of NAME.
3383 2004-08-17  Ulrich Drepper  <drepper@redhat.com>
3385         * resolv/resolv.h (RES_DEFAULT): Add RES_NOIP6DOTINT.
3386         * resolv/res_init.c (res_setoptions): Recognize ip6-dotint option.
3387         Reset RES_NOIP6DOTINT flag in this case..
3389         * sysdeps/posix/getaddrinfo.c: Fix memory handling of
3390         ai_canonname.
3392 2004-08-16  Ulrich Drepper  <drepper@redhat.com>
3394         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Don't use
3395         CNAME records, we better follow the chain of CNAME records which
3396         can be accomplished with A/AAAA lookups.
3398 2004-08-15  Roland McGrath  <roland@redhat.com>
3400         * sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who):
3401         Remove __RUSAGE_BOTH constant and RUSAGE_BOTH macro.
3402         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
3403         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
3404         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
3406 2004-08-15  Roland McGrath  <roland@frob.com>
3408         * sysdeps/i386/i686/Makefile (elide-routines.os): Append hp-timing to
3409         this, not ...
3410         (static-only-routines): ... this.
3411         * sysdeps/ia64/Makefile: Likewise.
3412         * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
3413         * sysdeps/sparc/sparc64/Makefile: Likewise.
3414         * sysdeps/x86_64/Makefile: Likewise.
3415         * sysdeps/i386/i686/hp-timing.c: Revert copyright terms change.
3416         * sysdeps/ia64/hp-timing.c: Likewise.
3417         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
3418         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
3420         * csu/elf-init.c: Update copyright terms including special exception
3421         for these trivial files, which are statically linked into executables
3422         that use dynamic linking for the significant library code.
3423         * io/fstat.c: Likewise.
3424         * io/fstat64.c: Likewise.
3425         * io/lstat.c: Likewise.
3426         * io/lstat64.c: Likewise.
3427         * io/stat.c: Likewise.
3428         * io/stat64.c: Likewise.
3429         * stdlib/atexit.c: Likewise.
3430         * sysdeps/alpha/elf/initfini.c: Likewise.
3431         * sysdeps/alpha/elf/start.S: Likewise.
3432         * sysdeps/arm/elf/start.S: Likewise.
3433         * sysdeps/cris/elf/start.S: Likewise.
3434         * sysdeps/generic/initfini.c: Likewise.
3435         * sysdeps/generic/mknod.c: Likewise.
3436         * sysdeps/hppa/elf/initfini.c: Likewise.
3437         * sysdeps/hppa/elf/start.S: Likewise.
3438         * sysdeps/i386/elf/start.S: Likewise.
3439         * sysdeps/i386/i686/hp-timing.c: Likewise.
3440         * sysdeps/ia64/elf/initfini.c: Likewise.
3441         * sysdeps/ia64/elf/start.S: Likewise.
3442         * sysdeps/ia64/hp-timing.c: Likewise.
3443         * sysdeps/m68k/elf/start.S: Likewise.
3444         * sysdeps/mach/start.c: Likewise.
3445         * sysdeps/mips/elf/start.S: Likewise.
3446         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
3447         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
3448         * sysdeps/s390/s390-32/elf/start.S: Likewise.
3449         * sysdeps/s390/s390-32/initfini.c: Likewise.
3450         * sysdeps/s390/s390-64/elf/start.S: Likewise.
3451         * sysdeps/s390/s390-64/initfini.c: Likewise.
3452         * sysdeps/sh/elf/initfini.c: Likewise.
3453         * sysdeps/sh/elf/start.S: Likewise.
3454         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
3455         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
3456         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
3457         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
3458         * sysdeps/standalone/i386/start.S: Likewise.
3459         * sysdeps/standalone/i960/start.S: Likewise.
3460         * sysdeps/standalone/m68k/m68020/start.S: Likewise.
3461         * sysdeps/unix/arm/start.c: Likewise.
3462         * sysdeps/unix/bsd/osf/alpha/start.S: Likewise.
3463         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
3464         * sysdeps/unix/sparc/start.c: Likewise.
3465         * sysdeps/unix/start.c: Likewise.
3466         * sysdeps/unix/sysv/aix/start.s: Likewise.
3467         * sysdeps/unix/sysv/irix4/start.c: Likewise.
3468         * sysdeps/x86_64/elf/initfini.c: Likewise.
3469         * sysdeps/x86_64/elf/start.S: Likewise.
3471 2004-08-15  Roland McGrath  <roland@redhat.com>
3473         [BZ #227]
3474         * sysdeps/unix/sysv/linux/kernel-features.h
3475         (__ASSUME_BRK_PAGE_ROUNDED): New macro.
3476         * sysdeps/unix/sysv/linux/dl-sysdep.c (frob_brk)
3477         [! __ASSUME_BRK_PAGE_ROUNDED]: Adjust the break up if it falls within
3478         the partial page after the dynamic linker's own data segment.
3480 2004-08-15  Ulrich Drepper  <drepper@redhat.com>
3482         * sysdeps/posix/getaddrinfo.c (gaih_inet): Optimize generation of
3483         v4-mapped addresses a bit.
3484         (gethosts): Move alloca out of macro, so that it is done only once.
3486         * sysdeps/posix/getaddrinfo.c (gaih_addrtuple): Change type of
3487         addr to avoid casts.
3488         (gethosts): Removed.
3489         (gethosts2): Renamed to gethosts.  Make it usable for family !=
3490         AF_UNSPEC.  Fix AI_V4MAPPED.
3491         (gaih_inet): Remove use of old gethosts.  Always use what used to be
3492         gethosts2.  If entry is found, try to use the same NSS module's
3493         getcanonname_r function.  Use gethostbyaddr for AI_CANONNAME only
3494         if getcanonname_r was not available.  Fix filtering of AI_V4MAPPED
3495         addresses.  Numerous cleanups.
3496         * resolv/nss_dns/dns-canon.c: New file.
3497         * resolv/Makefile (libnss_dns-routines): Add dns-canon.
3498         * resolv/Versions (libnss_dns): Add _nss_dns_getcanonname_r.
3500         * elf/Makefile: Add rules to build and run tst-dlopenrpath.
3501         * elf/tst-dlopenrpath.c: New file.
3502         * elf/tst-dlopenrpathmod.c: New file.
3504         * intl/tst-gettext.sh: Adjust for change of de.po file to UTF-8.
3505         * intl/tst-gettext.c: Likewise.
3507         * nss/getent.c (ahosts_keys_int): Correctly print IPv6 addresses.
3509         * nss/getent.c: Allow queries for getaddrinfo with AF_INET and
3510         AF_INET6.
3512 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
3514         * po/de.po: Update from translation team.
3516 2004-08-14  Roland McGrath  <roland@frob.com>
3518         * sysdeps/mach/configure: Regenerated.
3519         * sysdeps/mach/hurd/configure: Regenerated.
3521 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
3523         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If RFC3484 sorting is
3524         performed, make sure it is still the first entry after sorting
3525         that has the ai_canonname information.
3527         * sysdeps/posix/getaddrinfo.c (gaih_inet): Really set ai_canonname
3528         only in one entry.
3530 2004-08-13  Daniel Jacobowitz  <dan@debian.org>
3532         * scripts/output-format.sed: Handle default case of three-argument
3533         OUTPUT_FORMAT.
3535         * sysdeps/arm/machine-gmon.h (mcount_internal): Mark as
3536         __attribute_used__.
3538 2004-08-13  Ulrich Drepper  <drepper@redhat.com>
3540         * nss/getent.c (ahosts_keys): ai_canonname is NULL for all but the
3541         first returned entry.  Print name only if not NULL.
3543         * nis/nss_nis/nis-netgrp.c: Remove locking by using data in struct
3544         __netgrent object passed in instead of global variables.
3545         Optimize.
3546         * nis/nss_nisplus/nisplus-netgrp.c: Remove locking by using data
3547         in struct __netgrent object passed in instead of global variables.
3548         * inet/netgroup.h (struct __netgrent): Add service_user field.
3549         Move cursor in anonymous union, add new field location to that
3550         union.
3551         * inet/getnetgrent_r.c: Extensive rewrite to really enable
3552         concurrent uset of set/get/endnetgrent and innetgr.
3553         Reported by Chuck Simmons.
3555         * inet/netgroup.h (struct name_list): Replace name pointer with
3556         zero-sized array.
3557         * inet/getnetgrent_r.c: Adjust code for change in name_list
3558         layout.  Numerous strdup and free calls removed.
3560         * elf/sprof.c (read_symbols): When comparing aliases, prefer
3561         non-hidden over hidden symbols and strong over weak symbols
3562         if both don't start with '_'.
3564         * malloc/malloc.c: Use strong_alias instead of weak_alias wherever
3565         possible.
3567 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
3569         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
3570         RUSAGE_ enums as __RUSAGE_ and adjust macros accordingly.
3571         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
3572         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
3573         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
3574         Define non-standard RLIMIT_ enums as __RLIMIT_ and adjust macros
3575         accordingly.
3577 2004-08-11  Andreas Schwab  <schwab@suse.de>
3579         * resolv/res_libc.c: Move definition of __res_initstamp ...
3580         * resolv/res_init.c: ... here.
3582 2004-08-10  GOTO Masanori  <gotom@debian.or.jp>
3584         * locale/C-time.c: Change default ERA value from NULL to "".
3585         * locale/tst-C-locale.c: Add test case for ERA keywords.
3587 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
3589         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
3590         RLIMIT__ enums as __RLIMIT_ and adjust macros accordingly.
3591         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
3592         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
3594 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
3596         * sysdeps/unix/sysv/linux/bits/resource.h (RLIMIT_SIGPENDING,
3597         RLIMIT_MSGQUEUE): Add.
3598         (RLIMIT_NLIMITS, RLIM_NLIMITS): Adjust.
3599         * sysdeps/unix/sysv/linux/alpha/bits/resource.h (RLIMIT_SIGPENDING,
3600         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
3601         (RLIM_NLIMITS): Adjust.
3602         * sysdeps/unix/sysv/linux/sparc/bits/resource.h (RLIMIT_SIGPENDING,
3603         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
3604         (RLIM_NLIMITS): Adjust.
3605         * sysdeps/unix/sysv/linux/mips/bits/resource.h (RLIMIT_SIGPENDING,
3606         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
3607         (RLIM_NLIMITS): Adjust.
3609 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
3611         * resolv/res_query.c (__libc_res_nsearch): Protect the debugging
3612         printf with #ifdef DEBUG and RES_DEBUG check.
3614         * sysdeps/unix/sysv/linux/bits/shm.h: Move __END_DECLS after
3615         __USE_MISC #endif.
3616         * sysdeps/generic/bits/shm.h: Add __BEGIN_DECLS for __getpagesize
3617         declaration.
3618         * sysdeps/gnu/bits/shm.h: Likewise.
3619         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
3620         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
3621         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
3622         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
3623         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
3625 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
3627         * po/ca.po: Update from translation team.
3629 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
3631         * sysdeps/unix/sysv/linux/bits/shm.h: Add __BEGIN_DECLS for
3632         __getpagesize declaration.
3634 2004-08-11  Roland McGrath  <roland@redhat.com>
3636         * configure.in (libc_cv_cpp_asm_debuginfo): Add missing braces around
3637         commands inside &&.
3638         Reported by Andreas Schwab <schwab@suse.de>.
3639         * configure: Regenerated.
3641         * posix/tst-waitid.c (do_test): Ignore SIGCHLD before cleanup SIGKILL.
3643 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
3645         * time/tzset.c (tzset_internal): Add new parameter which is
3646         nonzero if called through tzset.  Use TZDEFAULT name including
3647         name comparison if the new parameter is zero.  This means implicit
3648         tzset calls will not cause files to be opened and read by tzfile.c
3649         all the time.
3651 2004-08-11  Jakub Jelinek  <jakub@redhat.com>
3653         * rt/tst-timer2.c (do_test): If timer_create fails, just continue.
3654         * rt/tst-timer4.c (do_test): If one of the timer_create calls fails,
3655         return 1 immediately.
3657         * time/tzfile.c (__tzfile_read): Free transitions only if it will
3658         not be reused.
3660         * sysdeps/ieee754/dbl-64/mpa.c: Include <sys/param.h>.
3661         * sysdeps/ieee754/dbl-64/mpa.h (MAX, MIN): Macros removed.
3663         * stdio-common/tst-popen.c: Include <string.h>.
3665         * resolv/res_send.c (__libc_res_nsend): Only define TMPBUF #if DEBUG.
3667         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Remove noreturn
3668         attribute.  Return NULL instead of calling pthread_exit at the end.
3670 2004-08-11  Roland McGrath  <roland@redhat.com>
3672         * iconvdata/testdata/ISO-2022-JP-3: Regenerated.
3674 2004-07-23  Jakub Jelinek  <jakub@redhat.com>
3676         [BZ #284]
3677         * include/features.h (_POSIX_SOURCE, _POSIX_C_SOURCE): Define
3678         if _XOPEN_SOURCE >= 500 even if __STRICT_ANSI__ is defined.
3680 2004-08-10  Alfred M. Szmidt  <ams@kemisten.nu>
3682         * sysdeps/generic/bits/in.h (struct ip_mreq): Remove definition.
3684 2004-08-10  Jakub Jelinek  <jakub@redhat.com>
3686         * libio/bits/stdio.h (fread_unlocked): Cast 0 to (size_t).
3687         (fwrite_unlocked): When checking if size * n is <= 8, cast each
3688         argument to size_t individually.  Cast n to (void) instead of
3689         (size_t), surround with (), return (size_t) 0 if one of n or size
3690         is 0.  [BZ #316]
3691         * stdio-common/Makefile (tests): Add tst-unlockedio.
3692         * stdio-common/tst-unlockedio.c: New test.
3694 2004-08-09  Roland McGrath  <roland@frob.com>
3696         * manual/install.texi (Supported Configurations): Replace bug-glibc
3697         mention with web URL.
3698         * INSTALL: Regenerated.
3699         * locale/iso-3166.def: Likewise, in comment.
3700         * locale/iso-4217.def: Likewise.
3701         * locale/iso-639.def: Likewise.
3702         * posix/cpio.h: Remove bug reporting comment.
3704 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
3706         * libio/bits/stdio.h (fread_unlocked): Add a couple of (size_t)
3707         casts to handle funny calls with floating point argument values
3708         and signed values correctly and without warning.
3709         (fwrite_unlocked): Likewise.  [BZ #309]
3711         * malloc/memusage.c (me): Use creat64, not creat.
3712         * malloc/memusagestat.c: Fix handling of very large sizes.  [BZ #285]
3713         Patch by Guy Maor <guymaor@yahoo.com>.
3715         * elf/ldconfig.c (options): Mark parameter option names as
3716         translatable.  [BZ #253]  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
3718         * iconv/gconv_charset.h (strip): Also allow comma which is what is
3719         used to separate options.  [BZ #194]
3721 2004-08-09  Roland McGrath  <roland@redhat.com>
3723         * FAQ.in: Refer to web pages instead of bug-glibc.
3724         * FAQ: Regenerated.
3726         * time/strptime_l.c: #include <stdbool.h>, `bool' used in last change.
3728 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
3730         * time/tzset.c (tzset_internal): If TZ is not set do not compare
3731         old and new tz value since it might be /etc/localtime in both
3732         cases although the file changed.  [BZ #154]
3733         Patch by Christian Franke <franke@computer.org>.
3735         * time/tzfile.c (__tzfile_read): Determine dev/ino of file.
3736         Compare with values of previously opened file.  Don't do anything
3737         is they match.
3739 2004-08-08  Ulrich Drepper  <drepper@redhat.com>
3741         * elf/dl-load.c (_dl_map_object): If __RTLD_CALLMAP flag is set,
3742         reset loader before the actual loading.
3743         * elf/dl-open.c (dl_open_worker): If file name contains no path
3744         element determine map of caller.  Pass caller map in this case to
3745         _dl_map_object.  Set __RTLD_CALLMAP in mode.
3746         * include/dlfcn.h (__RTLD_CALLMAP): Define.  [BZ #116]
3747         Patch by Greg Wolodkin <greg@mathworks.com>.
3749         * misc/syslog.c (openlog_internal): Always try both UDP and TCP.
3750         [BZ #108]  Patch mainly by Bjorn Andersson <bjorn@iki.fi>.
3752         * configure.in: Also recognize i786. [BZ #106]
3753         Patch by <pluto@pld-linux.org>.
3755         * resolv/res_query.c (__libc_res_nsearch): Correctly test whether
3756         name contains any dots. [BZ #95]
3758         * resolv/res_send.c: Compiling with DEBUG defined works again.
3759         * resolv/gethnamaddr.c (dprintf): Renamed to Dprintf.  Adjust all
3760         callers.
3762         * resolv/tst-leaks.c (TIMEOUT): Define so that if no server is
3763         available the process is not killed. [BZ #41]
3765         * intl/tst-gettext.c (main): Improve some messages. [BZ #33]
3767         * time/strptime_l.c (__strptime_internal): Fix handling of %Ey.
3768         [BZ #28]
3770         * po/sv.po: Update from translation team.
3772 2004-08-07  Ulrich Drepper  <drepper@redhat.com>
3774         * inet/netinet/in.h: Add more const to the setipv4soucefilter,
3775         getsourcefilter, and setsourcefilter parameter list.
3776         * sysdeps/generic/setipv4sourcefilter.c: Likewise.
3777         * sysdeps/generic/getsourcefilter.c: Likewise.
3778         * sysdeps/generic/setsourcefilter.c: Likewise.
3779         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: Likewise.
3780         * sysdeps/unix/sysv/linux/getsourcefilter.c: Likewise.
3781         * sysdeps/unix/sysv/linux/setsourcefilter.c: Likewise.
3783         * po/tr.po: Update from translation team.
3785 2004-08-06  Ulrich Drepper  <drepper@redhat.com>
3787         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): Fix typo.
3788         Reported by Paolo Bonzini.
3790 2004-08-06  Jakub Jelinek  <jakub@redhat.com>
3792         * sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add
3793         always_inline.
3794         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_runtime_setup,
3795         elf_machine_fixup_plt, elf_machine_plt_conflict): Likewise.
3797         * sysdeps/unix/sysv/linux/netatalk/at.h: Include bits/sockaddr.h
3798         before including linux/atalk.h.
3800         * resolv/res_libc.c: Include atomic.h.
3802         * intl/finddomain.c (free_mem): Rename to...
3803         (_nl_finddomain_subfreeres): ... this.  Add
3804         __libc_freeres_fn_section.
3805         * intl/loadmsgcat.c (_nl_unload_domain): Add
3806         __libc_freeres_fn_section.
3807         * intl/gettextP.h (_nl_unload_domain): Move into #ifdef _LIBC.
3808         Add attribute_hidden.
3809         (_nl_findomain_subfreeres): New prototype.
3810         * iconv/gconv_db.c (free_mem): Call _nl_findomain_subfreeres.
3812 2004-07-30  Guido Guenther  <agx@sigxcpu.org>
3814         * nss/getent.c (passwd_keys): Use strtoul instead of isdigit to
3815         test if the key is numeric or not.
3816         (group_keys): Likewise.
3818 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
3820         * inet/netinet/in.h: Define struct ip_msfilter, IP_MSFILTER_SIZE,
3821         struct group_filter, and GROUP_FILTER_SIZE.
3822         * include/sys/socket.h: Declare __getsockopt.
3823         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: New file.
3824         * sysdeps/unix/sysv/linux/getipv4sourcefilter.c: New file.
3825         * sysdeps/unix/sysv/linux/setsourcefilter.c: New file.
3826         * sysdeps/unix/sysv/linux/getsourcefilter.c: New file. [BZ #211]
3828         * po/ko.po: Update from translation team.
3830 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
3832         * hesiod/hesiod.c (__hesiod_res_get): Use calloc instead of malloc +
3833         memset.
3834         (__hesiod_res_set): Free nsaddrs.
3836         * include/resolv.h (__res_maybe_init): Add prototype.
3837         * resolv/resolv.h (struct __res_state): Add _u._ext.initstamp field.
3838         * resolv/Versions (libc): Add __res_maybe_init@@GLIBC_PRIVATE.
3839         * resolv/res_libc.c (__res_initstamp, lock): New variables.
3840         (res_init): Increase __res_initstamp.
3841         (__res_maybe_init): New function.
3842         * resolv/res_init.c (__res_vinit): Initialize _u._ext.initstamp.
3843         * hesiod/hesiod.c (__hesiod_res_get): Use __res_maybe_init instead
3844         of RES_INIT check and {res_ninit,__res_ninit,res_init} call.
3845         * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise.
3846         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
3847         _nss_dns_gethostbyaddr_r): Likewise.
3848         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
3849         _nss_dns_getnetbyaddr_r): Likewise.
3850         * resolv/gethnamaddr.c (gethostbyname, gethostbyname2,
3851         gethostbyaddr): Likewise.
3852         * resolv/res_data.c (fp_nquery, res_mkquery, res_mkupdate,
3853         res_isourserver, res_sendsigned, res_update, res_search,
3854         res_querydomain): Likewise.
3855         * nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)): Likewise.
3856         * nss/digits_dots.c (__nss_hostname_digits_dots): Likewise.
3857         * nss/getnssent_r.c (__nss_setent, __nss_endent, __nss_getent_r):
3858         Likewise.
3860 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
3862         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set ai_family for
3863         V4-mapped IPv6 addresses and req->ai_family==AF_INET.
3864         Reported by A. Guru <a.guru@sympatico.ca>.
3866         * po/sv.po: Update from translation team.
3867         * po/sk.po: Likewise.
3868         * po/pl.po: Likewise.
3870 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
3871             Ulrich Drepper  <drepper@redhat.com>
3873         * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Don't read more input
3874         characters than necessary.
3876 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
3878         * wcsmbs/Makefile (tests): Add tst-mbsrtowcs.
3879         * wcsmbs/tst-mbsrtowcs.c: New file.
3881         * po/fr.po: Update from translation team.
3883 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
3885         * resolv/inet_pton.c (inet_pton4): Disallow octal numbers.  Reported
3886         by A. Guru <a.guru@sympatico.ca>.  [BZ #295]
3888 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
3890         * po/nl.po: Update from translation team.
3892         * sysdeps/posix/getaddrinfo.c (gaih_inet): Recognize all the IPv4
3893         numeric address formats inet_addr knows.
3894         (getaddrinfo): Allow AI_NUMERICSERV flag.
3895         If neither IPv4 nor IPv6 interface is present we cannot make any
3896         decision for AI_ADDRCONFIG.  Fail if AI_NUMERICSERV is set and the
3897         string is not just a number.  Remove useless freeaddrinfo call.
3898         * resolv/netdb.h (AI_NUMERICSERV): Define.
3899         Based on a patch by a.guru@sympatico.ca.
3901 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
3903         * stdlib/strfmon_l.c (__vstrfmon_l): Memset whole info structure
3904         instead of trying to initialize some, but not all, fields one by
3905         one.
3906         * stdio-common/printf_size.c (printf_size): Initialize fb_info
3907         structure with *info instead of trying to initialize some, but not
3908         all, fields from it.
3910         * nscd/connections.c (handle_request): Check if req->type is in
3911         LASTDBREQ .. LASTREQ range instead of req.
3913         * locale/programs/linereader.c (lr_create): Initialize
3914         lr->return_widestr to 0.
3916         * elf/dl-close.c (free_slotinfo): Add __libc_freeres_fn_section.
3917         (free_mem): Call free_slotinfo just once.
3919         * stdio-common/tst-fmemopen.c (main): Check for MAP_FAILED instead
3920         of NULL.
3922         * locale/localeinfo.h (_nl_locale_subfreeres): New prototype.
3923         * locale/setlocale.c (free_category): Add __libc_freeres_fn_section.
3924         (free_mem): Rename to _nl_locale_subfreeres.
3925         * iconv/gconv_db.c: Include locale/localeinfo.h.
3926         (free_derivation, free_modules_db): Add __libc_freeres_fn_section.
3927         (free_mem): Call _nl_locale_subfreeres.
3928         * iconv/gconv_dl.c (do_release_all): Add __libc_freeres_fn_section.
3930 2004-08-04  Roland McGrath  <roland@frob.com>
3932         * Makeconfig ($(common-objpfx)config.status):
3933         Fix typo: $(add_ons) -> $(add-ons).
3934         (Makeconfig-add-on): New variable.  When doing $(sysdep-makeconfigs)
3935         include, use black magic to get it set to an add-on's name during the
3936         include of the add-on's Makeconfig.
3938         * configure.in: Use variable name `libc_add_on' when sourcing add-on
3939         configure fragments, so they can refer to this.
3940         * configure: Regenerated.
3942 2004-08-04  Roland McGrath  <roland@redhat.com>
3944         * posix/tst-waitid.c (test_child): Sleep a second before stopping.
3945         (do_test): Bump sleep to three seconds.
3946         (sigchld, check_sigchld): New functions.
3947         (do_test): Handle SIGCHLD and check for getting the right details.
3949         * posix/tst-waitid.c (do_test): Kill the child process when bailing
3950         out early on some failure.
3951         [WCONTINUED]: Test WCONTINUED functionality.
3953 2004-08-03  Ulrich Drepper  <drepper@redhat.com>
3955         * nscd/connections.c (handle_request): Print more descriptive
3956         message for invalid request types.
3958 2004-08-02  Jakub Jelinek  <jakub@redhat.com>
3960         * iconvdata/ibm932.c (BODY): Avoid binary search for ch >= 0xffff.
3961         Always treat high as highest number in range + 1.
3962         * iconvdata/ibm943.c (BODY): Likewise.
3964 2004-07-31  Bruno Haible  <bruno@clisp.org>
3966         * iconvdata/JISX0213.TXT: Updated to JISX0213 plane 1 version 2004.
3967         * iconvdata/jisx0213.c (__jisx0213_to_ucs_main,
3968         __jisx0213_to_ucs_pagestart, __jisx0213_from_ucs_level1,
3969         __jisx0213_from_ucs_level2): Regenerated.
3970         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): New function.
3971         * iconvdata/iso-2022-jp-3.c (JISX0213_1_2000_set): Renamed from
3972         JISX0213_1_set.
3973         (JISX0213_1_2004_set): New enum value.
3974         (BODY for FROM_LOOP): Treat ESC $ ( Q like ESC $ ( O.
3975         (BODY for TO_LOOP): For JISX 0213 plane 1 characters, emit ESC $ ( O
3976         when possible, ESC $ ( Q when needed.
3977         * iconvdata/testdata/EUC-JISX0213: Add the 10 new characters.
3978         * iconvdata/testdata/EUC-JISX0213..UTF8: Update.
3979         * iconvdata/testdata/SHIFT_JISX0213: Add the 10 new characters.
3980         * iconvdata/testdata/SHIFT_JISX0213..UTF8: Update.
3981         * iconvdata/testdata/ISO-2022-JP-3: Add the 10 new JISX0213 characters.
3982         * iconvdata/testdata/ISO-2022-JP-3..UTF8: Update.
3984 2004-07-22  Bruno Haible  <bruno@clisp.org>
3986         * iconvdata/gconv-modules (ISO-8859-7): Add alias ISO_8859-7:2003.
3988 2004-07-29  David S. Miller  <davem@redhat.com>
3990         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy): Optimize
3991         better for smaller than 256 byte copies.  Also, use only one
3992         unrolled loop instead of two for the large copy case.
3994 2004-07-30  Richard Henderson  <rth@redhat.com>
3996         * sysdeps/alpha/divq.S: Save t3 before it gets clobbered.
3997         * sysdeps/alpha/remq.S: Likewise.
3998         * sysdeps/alpha/div.S, sysdeps/alpha/ldiv.S: Rewrite with the
3999         new division algorithms in divl.S and divq.S respectively.
4001 2004-07-28  GOTO Masanori  <gotom@debian.or.jp>
4003         * timezone/asia: Update from tzdata2004b.
4004         * timezone/backward: Likewise.
4005         * timezone/europe: Likewise.
4006         * timezone/iso3166.tab: Likewise.
4007         * timezone/leapseconds: Likewise.
4008         * timezone/northamerica: Likewise.
4009         * timezone/southamerica: Likewise.
4010         * timezone/zone.tab: Likewise.
4012         * timezone/private.h: Update from tzcode2004b.
4013         * timezone/zic.c: Likewise.
4015 2004-07-27  Ulrich Drepper  <drepper@redhat.com>
4017         * nscd/grpcache.c (cache_addgr): If necessary, add entry also
4018         under the name the user provided.
4019         * nscd/pwdcache.c (cache_addpw): Likewise.
4021 2004-07-26  Roland McGrath  <roland@redhat.com>
4023         * sysdeps/posix/waitid.c [WEXITED]: Clear WEXITED bit in OPTIONS for
4024         call to __waitpid.
4026 2004-07-26  Ulrich Drepper  <drepper@redhat.com>
4028         * nscd/hstcache.c (cache_addhst): Fix two scenarios which lead to
4029         memory leaks.
4031         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Assign pointer for
4032         new buffer at the right time.
4033         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
4035 2004-07-25  Ulrich Drepper  <drepper@redhat.com>
4037         * inet/Versions [libc, GLIBC_2.3.4]: Add getipv4sourcefilter,
4038         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
4039         * inet/Makefile (routines): Likewise.
4040         * inet/netinet/in.h: Add prototypes for getipv4sourcefilter,
4041         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
4042         * sysdeps/generic/getipv4sourcefilter.c: New file.
4043         * sysdeps/generic/setipv4sourcefilter.c: New file.
4044         * sysdeps/generic/getsourcefilter.c: New file.
4045         * sysdeps/generic/setsourcefilter.c: New file.
4047 2004-07-17  Steven Munroe  <sjmunroe@us.ibm.com>
4049         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
4050         for POWER4 machines.
4052 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
4054         [BZ #274]
4055         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): Fix used >=
4056         BITS_PER_MP_LIMB shifting up.
4057         * stdlib/tst-strtod.c (main): Add new tests.
4059 2004-07-23  Jakub Jelinek  <jakub@redhat.com>
4061         [BZ #282]
4062         * libio/iopopen.c (_IO_new_popen): Use _IO_init instead of
4063         _IO_no_init.  Remove wd from struct locked_FILE.
4064         (_IO_wproc_jumps): Remove.
4065         Reported by Andrew Josey <a.josey@opengroup.org>.
4066         * stdio-common/Makefile (tests): Add tst-popen.
4067         * stdio-common/tst-popen.c: New test.
4069 2004-07-23  Ulrich Drepper  <drepper@redhat.com>
4071         * posix/bits/posix1_lim.h: Fix values for _POSIX_CHILD_MAX and
4072         _POSIX_OPEN_MAX.  Add _POSIX_HOST_NAME_MAX, _POSIX_SYMLINK_MAX,
4073         _POSIX_SYMLOOP_MAX, and _POSIX_RE_DUP_MAX.
4074         Reported by Andrew Josey.
4076         * include/features.h: Document _POSIX_C_SOURCE == 200112L.
4078         * grp/grp.h: Define gid_t if __USE_XOPEN2K is defined.
4079         * pwd/pwd.h: Define uid_t and gid_t if __USE_XOPEN2K is defined.
4080         * io/sys/stat.h: Define dev_t, gid_t, ino_t, mode_t, nlink_t,
4081         off_t, time_t, and uid_t if __USE_XOPEN2K is defined.
4082         * signal/signal.h: Define pid_t if __USE_XOPEN2K is defined.
4083         * posix/unistd.h: Define gid_t, off_t, pid_t, uid_t, and
4084         useconds_t if __USE_XOPEN2K is defined.
4085         * io/utime.h: Define time_t if __USE_XOPEN2K is defined.
4086         * libio/stdio.h: Declare fseeko and ftello if __USE_XOPEN2K is defined.
4088 2004-07-19  Thorsten Kukuk  <kukuk@suse.de>
4090         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
4091         allocate memory for large temporary variables with alloca.
4093 2004-07-22  Ulrich Drepper  <drepper@redhat.com>
4095         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Compatibility
4096         code must have version GLIBC_2.0.  Patch by Dwayne McConnell.
4098         * nscd/nscd_getgr_r.c (nscd_getgr_r): Avoid read call with NULL
4099         pointer and zero length.
4101 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
4103         * nscd/cache.c (prune_cache): Print correct list when debugging.
4105 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
4107         * resolv/res_libc.c (res_init): If RES_INIT is set and
4108         _res.nscount > 0, call __res_nclose and free nsaddrs.
4109         * resolv/Makefile: Add rules to build and run tst-leaks2.
4110         * resolv/tst-leaks2.c: New test.
4112 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
4114         * intl/libintl.h: Don't define macros for C++.
4115         Patch by Goto Masanori.
4117 2004-07-22  GOTO Masanori  <gotom@debian.or.jp>
4119         [BZ #276]
4120         * include/arpa/inet.h: Change inet_aton type from in_addr_t to int.
4121         * inet/arpa/inet.h: Likewise.
4122         * resolv/inet_addr.c: Likewise.
4124 2004-07-21  Alexandre Oliva  <aoliva@redhat.com>
4126         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: Add semtimedop.
4128 2004-07-20  Roland McGrath  <roland@redhat.com>
4130         * configure.in (add_ons): Substitute this.  Move $add_ons handling
4131         after AC_CANONICAL_HOST and default setting of $machine et al.
4132         Don't set $subdirs from $add_ons.
4133         Instead, source add-on/configure fragments early on.
4134         (base_machine): If it's already set, don't set it based on $machine.
4135         (libc_config_ok): New variable, set to no.  If an add-on fragment sets
4136         it to yes, skip the  tuple sanity check as if --enable-hacker-mode.
4137         (sysnames): Try appending add-on names after machine as well.
4138         * config.make.in (add-ons): Set from @add_ons@ instead of @subdirs@.
4139         * Makeconfig ($(common-objpfx)config.status): Also depend on configure
4140         files in $(add_ons) dirs.
4142         * sysdeps/unix/sysv/linux/bits/in.h (struct ip_mreq): Remove
4143         definition, now in netinet/in.h proper.
4145 2004-07-20  Alexandre Oliva  <aoliva@redhat.com>
4147         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
4148         Sort by syscalls.  Make sure we get headers such as sgidefs.h from
4149         the build tree before just-installed ones.
4151         * sysdeps/mips/atomicity.h: Use standard names for ABI macros,
4152         include sgidefs.h where appropriate.
4153         * sysdeps/mips/dl-machine.h: Likewise.
4154         * sysdeps/mips/machine-gmon.h: Likewise.
4155         * sysdeps/mips/bits/setjmp.h: Likewise.
4156         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
4157         * sysdeps/mips/mips64/__longjmp.c: Likewise.
4158         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
4159         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
4160         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
4161         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
4162         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
4163         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
4164         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
4165         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
4166         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
4167         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
4168         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
4169         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
4170         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
4171         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
4172         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
4173         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
4174         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
4175         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
4176         Likewise.
4177         * sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h):
4178         Likewise.
4180         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Update to use
4181         _dl_lookup_symbol_x.
4182         (elf_machine_runtime_link_map): Don't INTUSE _dl_signal_error.
4184 2004-07-20  Ulrich Drepper  <drepper@redhat.com>
4186         * inet/netinet/in.h: Define struct ip_mreq and struct
4187         ip_mreq_source.
4188         Define struct group_req and struct group_source_req.
4189         * sysdeps/unix/sysv/linux/bits/in.h: Define IP_UNBLOCK_SOURCE,
4190         IP_BLOCK_SOURCE, IP_ADD_SOURCE_MEMBERSHIP,
4191         IP_DROP_SOURCE_MEMBERSHIP, IP_MSFILTER, MCAST_JOIN_GROUP,
4192         MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, MCAST_LEAVE_GROUP,
4193         MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP, and
4194         MCAST_MSFILTER.
4195         Define MCAST_INCLUDE and MCAST_EXCLUDE.
4197         * iconvdata/gconv-modules: Add alias for IBM874 [BZ #244].
4199 2004-07-19  Jakub Jelinek  <jakub@redhat.com>
4201         [BZ #258]
4202         * math/libm-test.inc (max_value, min_value): New variables.
4203         (initialize): Initialize them.
4204         (pow_test): Add a couple of new tests.
4205         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Don't generate invalid
4206         exception if |y| >= 1U<<31.
4207         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Don't generate invalid
4208         exception if |y| >= 1L<<63.
4209         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
4210         If y*log2(x) overflows to +-inf, return still +inf/+0 instead of NaN.
4211         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
4213 2004-07-18  Ulrich Drepper  <drepper@redhat.com>
4215         * nscd/pwdcache.c (cache_addpw): Optimize case of unsuccessful
4216         lookup a bit.
4217         * nscd/grpcache.c (cache_addgr): Likewise.
4218         * nscd/hstcache.c (cache_addhst): Likewise.
4220 2004-07-10  GOTO Masanori  <gotom@debian.or.jp>
4222         * sysdeps/s390/s390-32/elf/start.S: Remove symbol _fp_hw.
4223         * sysdeps/s390/s390-64/elf/start.S: Likewise.
4225 2004-04-16  Andreas Schwab  <schwab@suse.de>
4227         * sysdeps/ia64/bits/atomic.h: Cast first argument of
4228         __sync_bool_compare_and_swap_si correct to void*.
4230 2004-07-17  Ulrich Drepper  <drepper@redhat.com>
4232         * iconv/iconv_prog.c (print_known_names): Make machine-readable
4233         output even less cluttered.
4235 2004-07-16  Steven Munroe  <sjmunroe@us.ibm.com>
4237         [BZ #269]
4238         * setjmp/Makefile (tests): Add bug269-setjmp.
4239         * setjmp/bug269-setjmp.c: New file.
4240         * sysdeps/powerpc/powerpc64/__longjmp-common.S [SHARED && !IS_IN_rtld]:
4241         Store R2 from jmpbuf in callers TOC save area.
4242         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [SHARED && !IS_IN_rtld]:
4243         Store R2 in TOC save area.
4244         * sysdeps/powerpc/powerpc64/setjmp-common.S [SHARED && !IS_IN_rtld]:
4245         Copy TOC save area from previous frame as R2 (TOC) in jmpbuf.
4247 2004-07-16  Jakub Jelinek  <jakub@redhat.com>
4249         * locale/newlocale.c: Include bits/libc-lock.h.
4250         (__libc_setlocale_lock): Extern decl.
4251         (__newlocale): Use it.
4252         Reported by Ulrich Weigand <Ulrich.Weigand@de.ibm.com>.
4254 2004-07-15  Jakub Jelinek  <jakub@redhat.com>
4256         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Remove
4257         static inline __attribute ((always_inline)).  Don't define if
4258         NO_CANCELLATION.
4259         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
4260         __fcntl_nocancel.
4261         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c (__fcntl_nocancel):
4262         Remove static inline __attribute ((always_inline)).  Don't define
4263         if NO_CANCELLATION.
4264         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
4265         __fcntl_nocancel.
4266         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Define to
4267         __libc_fcntl if NO_CANCELLATION and __ASSUME_FCNTL64 == 0.
4268         Don't define at all if NO_CANCELLATION and __ASSUME_FCNTL64 > 0.
4269         (__libc_fcntl): Don't define if __fcntl_nocancel is a macro.
4271         [BZ #262]
4272         * sysdeps/i386/elf/start.S (_start): Use @GOT instead of @GOTOFF
4273         for main.
4274         * elf/Makefile: Add rules to build and run tst-pie1.
4275         * elf/tst-pie1.c: New test.
4276         * elf/tst-piemod1.c: New file.
4278 2004-07-14  Jakub Jelinek  <jakub@redhat.com>
4280         [BZ #266]
4281         * manual/string.texi (l64a): Note that the static buffer is 7 bytes
4282         long.  Rewrite example code so that it takes into account l64a output
4283         shorter than 6 characters.
4284         Reported by Julian Graham <julian.graham@aya.yale.edu>.
4286 2004-07-14  Kaz  Kojima  <kkojima@rr.iij4u.or.jp>
4288         * sysdeps/sh/dl-machine.h: Don't reset _dl_starting_up here.
4289         (elf_machine_rela_relative): Remove unused valiable.
4291 2004-07-12  Paul Eggert  <eggert@cs.ucla.edu>
4293         [BZ #263]
4294         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Don't store
4295         outside the buffer if the read returns 0.  __strtod_l can't set
4296         endp to NULL, so remove a test for that case.
4298 2004-07-12  Roland McGrath  <roland@redhat.com>
4300         * manual/signal.texi (Interrupted Primitives): Make clear that
4301         TEMP_FAILURE_RETRY evaluates its expression as long int and compares
4302         it to -1 to define "failure".
4304 2004-07-10  Ulrich Drepper  <drepper@redhat.com>
4306         * elf/ldconfig.c: Define PROCINFO_CLASS as static before including
4307         ldsodefs.h.
4308         * sysdeps/generic/ldsodefs.h: Only define PROCINFO_CLASS if it is not
4309         already defined.
4310         * sysdeps/i386/dl-procinfo.c: Define PROCINFO_CALLS only if not
4311         already defined.
4313         * elf/rtld.c (print_statistics): Mark with noinline attribute.
4314         * sysdeps/i386/dl-machine.h (elf_machine_rel): Mark with always_inline
4315         attribute.
4316         (elf_machine_rel_relative): Likewise.
4318         * include/string.h: Add libc_hidden_proto for __strtok_r and
4319         __strsep_g.
4320         * sysdeps/generic/strsep.c: Add libc_hidden_def.
4321         * sysdeps/generic/strtok_r.c: Likewise.
4322         * sysdeps/i386/strtok_r.S: Add alias for internal symbol.
4323         * sysdeps/i386/i686/strtok_r.S: Likewise.
4324         * sysdeps/x86_64/strtok_r.S: Likewise.
4326 2004-07-09  Alexandre Oliva  <aoliva@redhat.com>
4328         * inet/getnetgrent_r.c (internal_setnetgrent): Make it hidden
4329         instead of internal-linkage, such that we can alias to it.
4330         (internal_endnetgrent, internal_getnetgrent_r): Likewise.
4332 2004-07-09  Ulrich Drepper  <drepper@redhat.com>
4334         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Move attribute
4335         to the front for gcc 3.5+.
4336         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
4337         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
4338         * include/fcntl.h: Don't declare __fcntl_nocancel here if
4339         NO_CANCELLATION is defined.
4341 2004-07-07  Jakub Jelinek  <jakub@redhat.com>
4343         * elf/dl-fini.c (_dl_fini): Add nloaded variable, load
4344         GL(dl_nloaded) into it while still in critical section.
4346 2004-07-06  Thorsten Kukuk  <kukuk@suse.de>
4348         * nss/getent.c (print_group, print_passwd): Use %lu format for
4349         `unsigned long int' values.
4351         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Fix syntax
4352         error typos in goto statements.
4354 2004-07-07  Roland McGrath  <roland@frob.com>
4356         * Makefile (dist-separate): New variable.
4357         (glibc-%.tar rule): Make separate tar files for add-ons listed there.
4358         Depend on their configure files.
4359         (dist-do-separate-dirs): New canned sequence to do that.
4360         (dist-separate-libidn, dist-separate-linuxthreads): New variables.
4361         (dist): Depend on add-on tar files based on $(dist-separate).
4362         (dist-version): New variable, default to $(version).
4363         (tag-for-dist, dist): Use that in place of $(version) in deps.
4365 2004-07-07  Ulrich Drepper  <drepper@redhat.com>
4367         * elf/dl-fini.c (_dl_fini): Move the unlock of the ld.so lock
4368         before the loop running the destructors.
4370 2004-05-18  Andreas Schwab  <schwab@suse.de>
4372         * elf/dl-load.c (_dl_map_object_from_fd): Use the end address of
4373         the first segment for mprotect, not l_text_end.
4375 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
4377         * elf/dl-profile.c (_dl_start_profile): Compact error handling.
4378         Remove hashfraction variable.  Make kcount and kcountsize local
4379         variables.
4381         * elf/dl-init.c: Don't define and use _dl_starting_up if
4382         HAVE_INLINED_SYSCALLS is defined and the variable is not used.
4383         * elf/dl-support.c: Likewise.
4384         * elf/rtld.c: Likewise.
4385         * elf/dl-misc.c (_dl_debug_vdprintf): Use writev syscall directly
4386         if HAVE_INLINED_SYSCALLS is defined.
4387         * sysdeps/powerpc/powerpc64/dl-machine.h: Don't reset _dl_starting_up
4388         here.
4389         * sysdeps/powerpc/powerpc32/dl-start.S: Likewise.
4390         * sysdeps/unix/sysv/linux/configure.in: Define HAVE_INLINED_SYSCALLS.
4391         * config.h.in: Add entry for HAVE_INLINED_SYSCALLS.
4393         * sysdeps/posix/profil.c: If compiled for ld.so, omit code which
4394         is needed to stop profiling.
4395         * elf/dl-open.c (dl_open_worker): If a newly opened object is to be
4396         profile make sure it cannot be unloaded.
4398         * sysdeps/unix/sysv/linux/dl-origin.c: Inline readlink syscall.
4400         * sysdeps/unix/sysv/linux/fcntl.c: If compiled without cancellation
4401         support, make sure the helper function is inlined.
4402         * sysdeps/unix/sysv/linux/pread.c: Likewise.
4403         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
4404         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
4405         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
4407 2004-07-05  Jakub Jelinek  <jakub@redhat.com>
4409         * include/string.h (ffs): Add libc_hidden_builtin_proto.
4410         * sysdeps/rs6000/ffs.c (ffs): Add libc_hidden_builtin_def.
4411         * sysdeps/alpha/alphaev67/ffs.S (ffs): Likewise.
4412         * sysdeps/alpha/ffs.S (ffs): Likewise.
4413         * sysdeps/s390/ffs.c (ffs): Likewise.
4414         * sysdeps/powerpc/ffs.c (ffs): Likewise.
4415         * sysdeps/i386/ffs.c (ffs): Likewise.
4416         * sysdeps/i386/i686/ffs.c (ffs): Likewise.
4417         * sysdeps/m68k/ffs.c (ffs): Likewise.
4418         * sysdeps/generic/ffs.c (ffs): Likewise.
4419         * sysdeps/m88k/ffs.c (ffs): Likewise.
4420         * sysdeps/am29k/ffs.c (ffs): Likewise.
4421         * sysdeps/i960/ffs.c (ffs): Likewise.
4422         * sysdeps/x86_64/ffs.c (ffs): Likewise.
4424         * Makerules (check-abi): Use diff -p -U 0 instead of diff -pu0.
4426         * sysdeps/powerpc/novmx-longjmp.c (__libc_longjmp,
4427         __libc_siglongjmp): Remove symbol_version.
4428         * sysdeps/powerpc/longjmp.c (__libc_longjmp, __libc_siglongjmp):
4429         Export @@GLIBC_PRIVATE, not @@GLIBC_2.3.4.
4430         * sysdeps/powerpc/sigjmp.c (__sigjmp_save): Use strong_alias
4431         unconditionally.
4432         * sysdeps/powerpc/novmx-sigjmp.c (__sigjmp_save): Remove.
4433         * sysdeps/powerpc/powerpc32/__longjmp.S (__longjmp): Use
4434         strong_alias instead of default_symbol_version, remove
4435         symbol_version.
4436         * sysdeps/powerpc/powerpc64/__longjmp.S (__longjmp): Likewise.
4437         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__novmx__setjmp): Change
4438         into strong_alias to __novmxsetjmp.
4439         (__vmx__setjmp): Similarly with __vmxsetjmp.
4440         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
4441         default_symbol_version and symbol_version.
4442         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__novmx__setjmp): Change
4443         into strong_alias to __novmxsetjmp.
4444         (__vmx__setjmp): Similarly with __vmxsetjmp.
4445         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
4446         default_symbol_version and symbol_version.
4448         * nscd/nscd_getgr_r.c: Include stdio-common/_itoa.h.
4450 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
4452         * elf/rtld.c (dl_main): Mark dyn_temp with attribute_relro.
4454 2004-07-04  Matthew Reppert  <arashi@kai.vm.bytemark.co.uk>
4456         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Use libc_hidden_ver
4457         instead of libc_hidden_def.
4459 2004-07-01  Roland McGrath  <roland@redhat.com>
4461         * aclocal.m4: Add provide for AC_CONFIG_AUX_DIR_DEFAULT.
4463         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Move top-level
4464         $(..)shlib-versions file to last in deps list.  This lets add-ons give
4465         more-specific matches that override defaults in the top-level file.
4467         * sysdeps/unix/sysv/linux/configure.in: If arch_minimum_kernel was
4468         already set, don't set it or libc_cv_gcc_unwind_find_fde.
4469         * sysdeps/unix/sysv/linux/configure: Regenerated.
4471 2004-07-01  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4473         * sysdeps/s390/fpu/bits/mathinline.h [__LIBC_INTERNAL_MATH_INLINES]
4474         (__ieee754_sqrt): Define as __MATH_INLINE using sqdbr instruction.
4475         (__ieee754_sqrtf): Define as __MATH_INLINE using sqebr instruction.
4476         * sysdeps/s390/fpu/e_sqrt.c: New file.
4477         * sysdeps/s390/fpu/e_sqrtf.c: New file.
4478         * sysdeps/s390/Implies: New file.
4479         * sysdeps/s390/s390-32/Implies: Remove ieee754, move
4480         ieee754/dbl-64 and ieee754/flt-32 to s390/Implies.
4481         * sysdeps/s390/s390-64/Implies: Likewise.
4483 2004-06-30  Jakub Jelinek  <jakub@redhat.com>
4485         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Include tls.h.
4486         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
4488         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (thread_start):
4489         DO_CALL (exit, 1) instead of branching to _exit.
4490         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (thread_start):
4491         Likewise.
4493         * sysdeps/s390/fpu/bits/mathinline.h: New file.
4495         * include/glob.h (glob64): Add libc_hidden_proto.
4496         * sysdeps/generic/glob64.c (glob64): Add libc_hidden_def.
4497         * sysdeps/gnu/glob64.c (glob64): Likewise.
4498         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Likewise.
4500 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
4502         * sysdeps/i386/fpu/libm-test-ulps: Update for GCC 3.4.
4503         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
4505 2004-06-11  Dwayne Grant McConnell  <dgm69@us.ibm.com>
4507         * sysdeps/powerpc/fpu/s_lround.c: Removed.
4508         * sysdeps/powerpc/fpu/s_lroundf.c: Removed.
4509         * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: New file.
4510         * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: New file.
4511         * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: New file.
4512         * sysdeps/powerpc/powerpc32/fpu/s_floor.S: New file.
4513         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: Removed.
4514         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: New file.
4515         * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: New file.
4516         * sysdeps/powerpc/powerpc32/fpu/s_lround.S: New file.
4517         * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: New file.
4518         * sysdeps/powerpc/powerpc32/fpu/s_rint.S: New file.
4519         * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: New file.
4520         * sysdeps/powerpc/powerpc32/fpu/s_round.S: New file.
4521         * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: New file.
4522         * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: New file.
4524 2004-06-30  Ulrich Drepper  <drepper@redhat.com>
4526         * include/net/if.h: Handle if_nameindex and if_freenameindex with
4527         libc_proto_hidden.
4528         * sysdeps/unix/sysv/linux/netlinkaccess.h: New file.
4529         * sysdeps/unix/sysv/linux/ifaddrs.c: Export netlink handling functions.
4530         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Implement using
4531         netlink if possible.  Fall back on ioctl method if necessary.
4532         * sysdeps/unix/sysv/linux/Dist: Add netlinkaccess.h.
4534         * include/unistd.h: Declare __truncate.
4535         * sysdeps/generic/truncate.c: Also define __truncate.
4536         * sysdeps/mach/hurd/truncate.c: Likewise.
4537         * sysdeps/unix/common/syscalls.list: Likewise.
4538         * sysdeps/unix/sysv/linux/truncate64.c: Use __truncate, not truncate.
4540 2004-06-29  Ulrich Drepper  <drepper@redhat.com>
4542         * stdio-common/printf-parsemb.c (__parse_one_specmb): Initialize
4543         info.extra.  Patch by Marcus Meissner.
4545 2004-06-29  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4547         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
4548         Fix branch offset for a PLT entry.
4550 2004-06-20  Jim Meyering  <jim@meyering.net>
4552         * malloc/obstack.h (obstack_base): Cast to `void *', to align with
4553         documentation.
4555 2004-06-28  Ulrich Drepper  <drepper@redhat.com>
4557         * inet/bug-if1.c (do_test): Simply use 0 as invalid index.
4558         Workaround for [BZ #232].
4560         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Use extend_alloca.
4562 2004-06-28  GOTO Masanori  <gotom@debian.or.jp>
4564         * iconv/gconv_simple.c: Use get16/put16 for user given buffer
4565         in ucs2/ucs2reverse when unaligned memory access is attempted.
4566         * iconv/tst-iconv5.c: New file.
4567         * iconv/Makefile (tests): Add tst-iconv5.
4569 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
4571         * inet/bug-if1.c: Include <string.h>.
4573 2004-06-19  Roland McGrath  <roland@redhat.com>
4575         * sysdeps/posix/waitid.c (do_waitid) [DO_WAITID]: Define function
4576         under this macro name instead.
4577         [NO_DO_WAITID]: Don't define it at all.
4578         (do_waitid) [WNOWAIT, WEXITED]: If these POSIX.1 waitid flag bits are
4579         defined, then return ENOTSUP for combinations of selection bits other
4580         than WEXITED and WEXITED|WSTOPPED, which this version cannot support.
4582         * posix/tst-waitid.c: New file.
4583         * posix/Makefile (tests): Add it.
4585 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
4587         * sysdeps/unix/alpha/sysdep.h (inline_syscall6): Fix a typo.
4589         [BZ #231]
4590         * sysdeps/unix/alpha/sysdep.S (__syscall_error): Avoid !samegp
4591         relocation in librt.so.
4593         [BZ #230]
4594         * sysdeps/alpha/dl-machine.h (_dl_start_user): Use ldah/ldl to load
4595         _dl_skip_args.  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
4597 2004-06-27  Ulrich Drepper  <drepper@redhat.com>
4599         * elf/ldconfig.c (add_dir): Take chroot into account.
4600         Based on changes by HJ Lu and Hideki Iwamoto.
4602         * nscd/connections.c (invalidate_cache): If the host cache has to
4603         be invalidated, re-read resolv.conf.
4605         * resolv/resolv.h (RES_NOIP6DOTINT): Define.
4606         * resolv/res_init.c (res_setoptions): Handle no-ip6-dotint option.
4607         * resolv/gethnamaddr.c (gethostbyaddr): Don't lookup with .ip6.int
4608         if RES_NOIP6DOTINT flag is set.
4609         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
4611 2004-06-25  Jakub Jelinek  <jakub@redhat.com>
4613         * sysdeps/unix/sysv/linux/powerpc/fcntl.c: Move to...
4614         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fcntl.c: ... here.
4615         * sysdeps/unix/sysv/linux/powerpc/lockf64.c: Move to...
4616         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lockf64.c: ... here.
4617         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: New file.
4619         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_GETLK, F_SETLK,
4620         F_SETLKW): Fix values for -m32 -D_FILE_OFFSET_BITS=64.
4622 2004-06-21  Jakub Jelinek  <jakub@redhat.com>
4624         [BZ #231]
4625         * sysdeps/unix/alpha/Makefile: New file.
4626         * sysdeps/unix/alpha/rt-sysdep.S: New file.
4627         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
4629 2004-06-18  Ulrich Drepper  <drepper@redhat.com>
4631         * sysdeps/posix/getaddrinfo.c (gaih_inet): For AI_CANONNAME,
4632         determine the canonical name only for the first returned entry.
4634         * inet/bug-if1.c: New file.
4635         * inet/Makefile (tests): Add bug-if1.
4637 2004-06-18  Roland McGrath  <roland@frob.com>
4639         * Makerules (compile-mkdep-flags): Add -MT $@.
4641         * Makefile (dist, tag-for-dist): New targets.
4642         (files-for-dist, tag-of-stem): New variables.
4643         (glibc-%.tar glibc-linuxthreads-%.tar): New pattern rule.
4644         Make tar files using cvs export.
4645         (%.bz2, %.gz, tag-%): New pattern rules.
4646         (distribute): Variable removed.
4647         (+subdir_targets): Remove distinfo targets.
4648         (echo_subdirs, echo-distinfo, parent_echo-distinfo): Targets removed.
4649         (rpm/%): Pattern rule removed.
4650         * rpm/Makefile, rpm/rpmrc, rpm/template: Ancient cruft files removed.
4651         * Rules (subdir_echo-headers, subdir_echo-distinfo, subdir_dist):
4652         Targets removed.
4653         * Makerules (dist, subdir_distinfo): Targets removed.
4654         ($(objpfx)distinfo): Depend on $(distribute).
4655         * Make-dist: File removed.
4657         * NEWS: Fix a typo.  Update bug-reporting instructions.
4659 2004-06-17  Thorsten Kukuk  <kukuk@suse.de>
4661         * sysdeps/unix/sysv/linux/sched_setaffinity.c
4662         (__sched_setaffinity_new): Set errno to EINVAL and return -1 if
4663         cpuset is wrongly set.
4665 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
4667         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
4668         for POWER4 machines.
4670 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
4672         [BZ #218]
4673         * sunrpc/pmap_prot2.c (xdr_pmaplist): When freeing, remember pml_next
4674         in a local variable, point rp to that local variable afterwards.
4676 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
4678         * sysdeps/ieee754/dbl-64/e_sqrt.c (__ieee754_sqrt): Handle special
4679         cases properly.
4681 2004-06-17  Ulrich Drepper  <drepper@redhat.com>
4683         * sysdeps/unix/sysv/linux/if_index.c (if_indextoname): Correct
4684         error value for unknown interface. [BZ #198]
4686 2004-06-13  Jakub Jelinek  <jakub@redhat.com>
4688         * sysdeps/i386/bits/string.h (memcpy): Add () around arguments.
4689         (memchr, __memrchr, strlen, strcmp, strncmp, __strchr_g, __strchr_c,
4690         __strchrnul_g, __strchrnul_c, strspn, strcspn, strpbrk): Add memory
4691         the asm uses as its input, either of size __n where __n is known or
4692         0xfffffff.
4693         (strstr): Add "memory" clobber.
4695 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
4697         [BZ #219]
4698         * nss/nsswitch.c (free_mem): Don't try to close a library handle
4699         if the handle is invalid.  Patch by David Kimdon <kimdon@esrf.fr>.
4701 2004-06-11  Dmitry V. Levin  <ldv@altlinux.org>
4703         [BZ #217]
4704         * debug/xtrace.sh: Fix typo in error diagnostics.
4706 2004-06-14  Andreas Schwab  <schwab@suse.de>
4708         * stdio-common/psignal.c (psignal): Don't use BUF when asprintf
4709         failed.
4711 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
4713         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Fix pasto
4714         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
4715         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Fix pasto
4716         that clobbers r19.
4717         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Fix pasto
4718         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
4719         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S:
4720         Fix setting of sigcontext.v_regs.  Fix pasto that clobbers r19.
4721         Fix pasto that overflowed sigcontext.v_reserve.
4722         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S:
4723         Fix pasto that clobbers r19.
4724         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Fix setting
4725         of sigcontext.v_regs.  Fix pasto that clobbers r19.  Fix pasto that
4726         overflowed sigcontext.v_reserve.
4728 2004-05-04  H.J. Lu  <hongjiu.lu@intel.com>
4730         [BZ #150]
4731         * sysdeps/generic/strtol_l.c (DEF): Use ".gnu.linkonce.r."
4732         instead of ".gnu.linkonce.ro." as the prefix for linkonce
4733         read-only section name.
4735 2004-06-14  Richard Henderson  <rth@redhat.com>
4737         * sysdeps/alpha/div_libc.h (_ITOFS): Use "sp" not "$sp".
4738         (_ITOFT, _FTOIT, _ITOFT2): Likewise.
4740 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
4742         * sysdeps/s390/s390-32/backtrace.c (init): Guard with #ifdef SHARED.
4743         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
4744         (__backtrace): Don't call init #ifndef SHARED.
4745         * sysdeps/s390/s390-64/backtrace.c (init): Guard with #ifdef SHARED.
4746         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
4747         (__backtrace): Don't call init #ifndef SHARED.
4748         * sysdeps/ia64/backtrace.c (init): Guard with #ifdef SHARED.
4749         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
4750         (__backtrace): Don't call init #ifndef SHARED.
4752 2004-06-11  Roland McGrath  <roland@redhat.com>
4754         * sysdeps/arm/strlen.S [__ARMEB__]: Compute correctly for big-endian.
4755         From Krzysztof Halasa <khc@pm.waw.pl>.
4757 2004-06-10  Jakub Jelinek  <jakub@redhat.com>
4759         * elf/tls-macros.h [__s390x__] (TLS_LD, TLS_GD): Clobber also r14.
4761 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
4763         [BZ #199]
4764         * crypt/md5-crypt.c (__md5_crypt): Only update buflen if realloc
4765         succeeds.  Reported by Miles Ohlrich <miles@cray.com>.
4767         * elf/chroot_canon.c (chroot_canon): Avoid segfault if first malloc
4768         fails.  Avoid memory leak if realloc fails.
4770 2004-06-09  Jakub Jelinek  <jakub@redhat.com>
4772         * sysdeps/generic/setenv.c (setenv): Return -1/EINVAL if name is
4773         NULL, "" or contains '=' character in it.  Reported by
4774         Michael T Kerrisk <mtk-lists@gmx.net>.
4775         * stdlib/tst-environ.c: Include errno.h.
4776         (main): Add tests for these arguments to setenv/unsetenv.
4778 2004-06-07  Roland McGrath  <roland@frob.com>
4780         * NEWS: Update bug reporting instructions.  Fix some typos.
4782 2004-06-05  Ulrich Drepper  <drepper@redhat.com>
4784         * stdio-common/_itoa.h: Don't expand _itoa inline for libc.
4785         * stdio-common/_itoa.c: Add _itoa implementation.
4787         * nscd/nscd_gethst_r.c (__nscd_open_socket): Change implementation
4788         to also send request.  Add parameter to allow this.
4789         Change callers.
4790         * nscd/nscd_getgr_r.c: Change __nscd_open_socket caller.
4791         * nscd/nscd_getpw_r.c: Likewise.
4792         * nscd/nscd-client.h: Change __nscd_open_socket prototype.
4794 2004-06-05  Andreas Jaeger  <aj@suse.de>
4796         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
4797         Handle more than 6 args correctly.  Based on a patch by Masahide
4798         Washizawa <washi@jp.ibm.com>.
4800 2004-06-04  Ulrich Drepper  <drepper@redhat.com>
4802         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use __nss_not_use_nscd_hosts
4803         in all places, not __nss_not_use_nscd_group.
4804         Reported by Philippe Gregoire.
4806 2004-06-03  Ulrich Drepper  <drepper@redhat.com>
4808         * sysdeps/i386/i486/bits/atomic.h: Optimize a bit.
4810 2004-05-07  Dmitry V. Levin  <ldv@altlinux.org>
4812         * argp/argp-help.c (__argp_error, __argp_failure): Check result
4813         of __asprintf call and don't use string if it failed.
4814         * stdio-common/psignal.c (psignal): Likewise.
4815         * locale/programs/localedef.c (more_help): Likewise.
4816         * resolv/res_hconf.c (arg_service_list, arg_trimdomain_list,
4817         arg_bool, parse_line): Check result of __asprintf calls and
4818         don't use string if they failed.
4819         * sunrpc/svc_simple.c (registerrpc, universal): Likewise.
4820         * elf/ldconfig.c (parse_conf_include): Check result of __asprintf
4821         call and exit if it failed.
4823 2004-05-10  Jakub Jelinek  <jakub@redhat.com>
4825         * sysdeps/posix/sysconf.c (__sysconf) <cases _SC_REALTIME_SIGNALS,
4826         _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
4827         _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES,
4828         _SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION,
4829         _SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS,
4830         _SC_THREADS, _SC_THREAD_SAFE_FUNCTIONS, _SC_THREAD_ATTR_STACKADDR,
4831         _SC_THREAD_ATTR_STACKSIZE, _SC_THREAD_PRIORITY_SCHEDULING,
4832         _SC_THREAD_PRIO_INHERIT, _SC_THREAD_PRIO_PROTECT,
4833         _SC_THREAD_PROCESS_SHARED>: Return _POSIX_* value instead of 1.
4834         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf)
4835         <case _SC_MONOTONIC_CLOCK>: Return _POSIX_VERSION instead of 1.
4837 2004-05-07  Jeroen Dekkers  <jeroen@dekkers.cx>
4839         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Add
4840         -momit-leaf-frame-pointer.
4842         * inet/test-ifaddrs.c (addr_string): Surround AF_PACKET case with
4843         #ifdef AF_PACKET.
4845         * sysdeps/mach/hurd/getcwd.c
4846         (_hurd_canonicalize_directory_name_intern): Only realloc when
4847         size is <= 0.
4849         * sysdeps/mach/hurd/mmap.c (__mmap): Fail when addr or offset
4850         isn't page aligned.
4852         * sysdeps/mach/hurd/spawni.c (EXPAND_DTABLE): Set dtablesize to
4853         new size.
4855         * sysdeps/mach/hurd/Versions (GLIBC_PRIVATE): Add __libc_read,
4856         __libc_write and __libc_lseek64.
4858 2004-05-29  Roland McGrath  <roland@redhat.com>
4860         * elf/Makefile (shared-only-routines): Add dl-caller.
4862 2004-05-28  Ulrich Drepper  <drepper@redhat.com>
4864         * sysdeps/powerpc/configure.in: New file.
4866 2004-05-28  Steven Munroe  <sjmunroe@us.ibm.com>
4868         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Add .machine
4869         "altivec" to enable VMX instructions.
4870         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
4871         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
4872         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
4873         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
4874         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
4875         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
4876         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
4877         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
4878         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
4880 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
4882         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Define using
4883         __builtin_expm1l for GCC 3.5+.
4884         (__expl): Define using __builtin_expl for GCC 3.4+.
4885         (exp, expf, expl): Don't define for GCC 3.4+.
4886         (tan, tanf, tanl): Don't define for GCC 3.5+.
4887         (__atan2l): Define using __builtin_atan2l for GCC 3.4+.
4888         (atan2, atan2f, atan2l): Don't define for GCC 3.4+ or !__FAST_MATH__.
4889         (fmod, fmodf, fmodl): Don't define for GCC 3.5+ or !__FAST_MATH__.
4890         (fabsf, fabsl): Only provide if __USE_MISC or __USE_ISOC99.
4891         (sin, sinf, sinl, cos, cosf, cosl, log, logf, logl): Don't define
4892         for GCC 3.4+.
4893         (log10, log10f, log10l, asin, asinf, asinl, acos, acosf, acosl):
4894         Don't define for GCC 3.5+.
4895         (atan, atanf, atanl): Don't define for GCC 3.4+ or !__FAST_MATH__.
4896         (log1p, log1pf, log1pl, logb, logbf, logbl, log2, log2f, log2l): Don't
4897         define for GCC 3.5+.
4898         (drem, dremf, dreml): Don't define for GCC 3.5+ or !__FAST_MATH__.
4899         * sysdeps/sparc/fpu/bits/mathinline.h (sqrt, sqrtf, sqrtl): Don't
4900         define for GCC 3.2+.
4902 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
4904         * string/bits/string2.h (__bzero): Define even for GCC 3.0+.
4905         * sysdeps/alpha/stpcpy.S (stpcpy): Add libc_hidden_builtin_def.
4906         * sysdeps/alpha/alphaev67/stpcpy.S (stpcpy): Likewise.
4907         * sysdeps/powerpc/powerpc32/stpcpy.S (stpcpy): Likewise.
4908         * sysdeps/powerpc/powerpc64/stpcpy.S (stpcpy): Likewise.
4909         * sysdeps/sparc/sparc32/stpcpy.S (stpcpy): Likewise.
4910         * sysdeps/sparc/sparc64/stpcpy.S (stpcpy): Likewise.
4911         * sysdeps/i386/stpcpy.S (stpcpy): Likewise.
4912         * sysdeps/i386/i586/stpcpy.S (stpcpy): Likewise.
4913         * sysdeps/generic/stpcpy.c (stpcpy): Likewise.
4914         * sysdeps/x86_64/stpcpy.S (stpcpy): Likewise.
4915         * sysdeps/i386/i586/memcpy.S (memcpy): Remove
4916         libc_hidden_builtin_def if MEMPCPY_P.
4917         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
4918         * sysdeps/i386/i686/mempcpy.S (mempcpy): Add libc_hidden_builtin_def.
4919         * sysdeps/i386/i586/mempcpy.S (mempcpy): Likewise.
4920         * sysdeps/generic/mempcpy.c (mempcpy): Likewise.
4921         * sysdeps/x86_64/mempcpy.S (mempcpy): Likewise.
4923 2004-05-26  Roland McGrath  <roland@frob.com>
4925         * sysdeps/generic/bits/in.h
4926         (IMPLINK_IP, IMPLINK_LOWEXPER, IMPLINK_HIGHEXPER): Macros removed.
4927         These are long obsolete in BSD systems where they originated.
4928         * conform/data/netinet/in.h-data: Remove `allow IMPLINK_*'
4930 2004-05-26  Jakub Jelinek  <jakub@redhat.com>
4932         * include/string.h (mempcpy, stpcpy): Add libc_hidden_builtin_proto.
4933         * string/bits/string2.h (memset): Disable macro for GCC 3.0+.
4934         (__mempcpy): Use __builtin_mempcpy for GCC 3.4+.
4935         (strchr): For GCC 3.2+, only use __rawmemchr if second argument is
4936         constant '\0' and first argument is not constant.
4937         (__stpcpy): Use __builtin_stpcpy for GCC 3.4+.
4938         (strncpy): Remove #ifdef _USE_STRING_ARCH_mempcpy variant.
4939         For GCC 3.2+ use __builtin_strncpy.
4940         (strncat): For GCC 3.2+ use __builtin_strncat.
4941         (strcmp): For GCC 3.2+ use __builtin_strcmp if both arguments are
4942         constant.
4943         (strcspn, strspn, strpbrk): For GCC 3.2+, use builtin function
4944         if both arguments are constant.
4946 2004-05-26  Ulrich Drepper  <drepper@redhat.com>
4948         * nss/nss_files/files-hosts.c: Fix condition for looking up IPv4
4949         mapped addresses in gethostbyaddr.
4951 2004-05-25  Ulrich Drepper  <drepper@redhat.com>
4953         * nss/digits_dots.c (__nss_hostname_digits_dots): Remove typep and
4954         flags parameter, convert afp to simple int parameter.  Adjust code.
4955         typep was never != NULL and flags therefore also unused.  *afp is
4956         never modified.
4957         * nss/nsswitch.h: Adjust __nss_hostname_digits_dots prototype.
4958         * nss/getXXbyYY.c: Remove HAVE_TYPE handling.  Adjust af parameter
4959         handling for __nss_hostname_digits_dots calls.
4960         * nss/getXXbyYY_r.c: Likewise.
4962         * elf/dl-load.c (_dl_map_object_from_fd): Map DSOs with MAP_DENYWRITE.
4964 2004-05-25  Steven Munroe  <sjmunroe@us.ibm.com>
4966         * sysdeps/powerpc/fpu/Makefile: Make ld.so a dependency of libm.so.
4967         * sysdeps/powerpc/fpu/bits/mathinline.h [__LIBC_INERNAL_MATH_INLINES]
4968         (__ieee754_sqrt): Define as __MATH_INLINE using fsqrt instruction.
4969         (__ieee754_sqrtf): Define as __MATH_INLINE using fsqrts instruction.
4970         * sysdeps/powerpc/fpu/e_sqrt.c (__slow_ieee754_sqrt): Moved
4971         implementation from w_sqrt.c.
4972         * sysdeps/powerpc/fpu/e_sqrtf.c (__slow_ieee754_sqrtf): Moved
4973         implementation from w_sqrtf.c.
4974         * sysdeps/powerpc/fpu/w_sqrt.c (__sqrt): Wrapper implementation
4975         using inline __ieee754_sqrt().
4976         * sysdeps/powerpc/fpu/w_sqrtf.c (__sqrtf): Wrapper implementation
4977         using inline __ieee754_sqrtf().
4978         * sysdeps/powerpc/powerpc32/sysdep.h [__ASSEMBLER__]: Include
4979         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
4980         * sysdeps/powerpc/sysdep.h [__ASSEMBLER__] (PPC_FEATURE_*): Define
4981         PPC_FEATURE_*  independent of __ASSEMBLER__.
4983 2004-05-25  Jakub Jelinek  <jakub@redhat.com>
4985         * sysdeps/pthread/aio_notify.c: Use <> instead of "" for aio_misc.h
4986         include.
4987         (aio_start_notify_thread): Define if not defined.
4988         (notify_func_wrapper): Use it.
4989         * sysdeps/pthread/aio_misc.c: Use <> instead of "" for aio_misc.h
4990         include.
4991         (aio_create_helper_thread): Define if not defined.
4992         (__aio_create_helper_thread): New function.
4993         (__aio_enqueue_request): Use aio_create_helper_thread.
4995         * nis/ypclnt.c (ypall_data, ypall_foreach): Remove.
4996         (struct ypresp_all_data): New type.
4997         (__xdr_ypresp_all): Change second argument to
4998         struct ypresp_all_data *.  Replace ypall_foreach and
4999         ypall_data with objp->foreach and objp->data.
5000         (yp_all): Remove status variable, add data.  Replace
5001         all uses of status with data.status.  Initialize data.foreach
5002         and data.data instead of ypall_foreach and ypall_data.
5004 2004-05-24  Jakub Jelinek  <jakub@redhat.com>
5006         * elf/dl-lookup.c (add_dependency): Set DF_1_NODELETE bit
5007         in l_flags_1, not in l_flags.
5009 2004-04-10  Robert Millan  <robertmh@gnu.org>
5011         * sysdeps/unix/sysv/linux/bits/in.h: Cosmetic fixes to get in sync
5012         with sysdeps/generic/bits/in.h.
5014 2004-05-25  Roland McGrath  <roland@frob.com>
5016         * sysdeps/generic/unwind-dw2-fde-glibc.c: Change copyright terms from
5017         GCC GPL to standard glibc LGPL.
5019 2004-05-24  Ulrich Drepper  <drepper@redhat.com>
5021         * manual/string.texi (Copying and Concatenation): Fixed second
5022         concat example.
5023         Reported by Fabian Pietsch <fabian@zzznowman.dyndns.org>.
5025 2004-05-23  Ulrich Drepper  <drepper@redhat.com>
5027         * malloc/obstack.c: Don't allow linking with _obstack.
5029 2004-05-23  Andreas Schwab  <schwab@suse.de>
5031         * sysdeps/m68k/m68020/bits/atomic.h: Use "+m" constraint instead
5032         of separate "m" constraints.
5034 2004-05-15  Chris Demetriou  <cgd@broadcom.com>
5036         * sysdeps/mips/dl-machine.h (ELF_DL_FRAME_SIZE)
5037         (ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS): For the N32
5038         and 64 ABIs, save and restore regs $10 and $11 (a6 and a7).
5040 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
5042         * malloc/obstack.c (_obstack) [!defined _LIBC]: Remove; not used.
5043         Add comment explaining why libc still defines it.
5045 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
5047         * malloc/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
5048         obstack_alignment_mask, obstack_alloc, obstack_base,
5049         obstack_blank, obstack_blank_fast, obstack_chunk_size,
5050         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
5051         obstack_grow0, obstack_init, obstack_int_grow,
5052         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
5053         obstack_next_free, obstack_object_size, obstack_ptr_grow,
5054         obstack_ptr_grow_fast, obstack_room): Remove declarations of
5055         nonexistent functions.
5057 2004-05-18  Steven Munroe  <sjmunroe@us.ibm.com>
5059         * sysdeps/powerpc/powerpc64/sysdep.h [__ASSEMBLER__]: Include
5060         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
5061         [PIC]: Redundent for powerpc64, removed.
5062         (ENTRY): Generate size and alignment for opd entry.
5063         (EALIGN): Generate size and alignment for opd entry.
5064         (END): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
5065         (END_GEN_TB): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
5067 2004-05-19  Ulrich Drepper  <drepper@redhat.com>
5069         * misc/regexp.h: Say the functions have been withdrawn.
5071         * wcsmbs/tst-wcpncpy.c: Add more tests.
5073 2004-05-18  Roland McGrath  <roland@frob.com>
5075         * sysdeps/generic/unwind.h: Change copyright terms from GCC GPL to
5076         standard glibc LGPL.
5077         * sysdeps/generic/unwind-dw2.c: Likewise.
5078         * sysdeps/generic/unwind-dw2-fde.c: Likewise.
5079         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
5080         * sysdeps/generic/unwind-pe.h: Likewise.
5082 2004-05-15  Petter Reinholdtsen  <pere@hungry.com>
5084         * locale/iso-3166.def: Remove YUGOSLAVIA and insert "SERBIA AND
5085         MONTENEGRO" which have taken over the code 819.  Patch from
5086         Danilo Segan. [BZ #40]
5088 2004-05-15  Jakub Jelinek  <jakub@redhat.com>
5090         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
5091         (SYSCALL_ERROR_HANDLER): Rename __sparc.get_pic.l7 to
5092         __sparc_get_pic_l7.
5094 2004-05-15  Joseph S. Myers  <jsm@polyomino.org.uk>
5096         * catgets/gencat.c: Update bug reporting instructions.
5097         * csu/version.c: Likewise.
5098         * debug/catchsegv.sh: Likewise.
5099         * debug/pcprofiledump.c: Likewise.
5100         * debug/xtrace.sh: Likewise.
5101         * elf/ldd.bash.in: Likewise.
5102         * iconv/iconv_prog.c: Likewise.
5103         * iconv/iconvconfig.c: Likewise.
5104         * locale/programs/locale.c: Likewise.
5105         * locale/programs/localedef.c: Likewise.
5106         * login/programs/pt_chown.c: Likewise.
5107         * malloc/memusage.sh: Likewise.
5108         * malloc/memusagestat.c: Likewise.
5109         * malloc/mtrace.pl: Likewise.
5110         * manual/crypt.texi: Likewise.
5111         * manual/install.texi: Likewise.
5112         * nss/makedb.c: Likewise.
5114 2004-05-14  Jakub Jelinek  <jakub@redhat.com>
5116         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Only
5117         CHECK_STATIC_TLS if sym != NULL.
5118         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
5119         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
5121 2004-05-12  Andreas Schwab  <schwab@suse.de>
5123         * posix/regex_internal.c (build_wcs_buffer): Also set pstr->mbs
5124         when translating.
5126 2004-05-13  H.J. Lu  <hongjiu.lu@intel.com>
5128         * Rules (xtests): Depend on tests.
5130 2004-05-13  Jakub Jelinek  <jakub@redhat.com>
5132         * libio/genops.c (_IO_default_xsputn): Avoid one overflow per char if
5133         count is negative, yet write_ptr < write_end.
5134         (_IO_default_xsgetn): Avoid one underflow per char if count is
5135         negative, yet read_ptr < read_end.
5137 2004-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
5139         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h (XTABS): Define XTABS
5140         equal to TAB3.
5142 2004-05-12  Ulrich Drepper  <drepper@redhat.com>
5144         * elf/dl-lookup.c (_dl_lookup_symbol_x): Correct _dl_signal_cerror
5145         call.
5147 2004-05-10  Roland McGrath  <roland@frob.com>
5149         * hurd/hurdlookup.c (__hurd_file_name_split): Return ENOENT for "".
5150         (__hurd_directory_name_split): Likewise.
5152 2004-05-10  Ulrich Drepper  <drepper@redhat.com>
5154         * po/fr.po: Update from translation team.
5156 2004-05-10  Andreas Jaeger  <aj@suse.de>
5158         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
5159         Correctly compute alignment.
5160         Patch by Michael Matz <matz@suse.de>.
5162 2004-05-09  Ulrich Drepper  <drepper@redhat.com>
5164         * sysdeps/generic/sigpause.c: Prevent sigpause prototype.
5165         * sysdeps/posix/sigpause.c: Likewise.
5166         * signal/signal.h: Don't define sigpause macro unless needed.
5168 2004-05-08  Jakub Jelinek  <jakub@redhat.com>
5170         * configure.in (libc_cv_libgcc_s_suffix): New check.
5171         (libc_cv_as_needed): Use -lgcc_s$libc_cv_libgcc_s_suffix.
5172         * config.make.in (libgcc_s_suffix): Set.
5173         * Makeconfig (libgcc_eh): Use -lgcc_s$(libgcc_s_suffix).
5175 2004-05-08  Ulrich Drepper  <drepper@redhat.com>
5177         * signal/signal.h: Use BSD sigpause only if BSD behavior is preferred.
5179 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
5181         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_1,
5182         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
5183         Load argument values into temporary variables.
5184         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_1,
5185         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
5186         Likewise.
5188 2004-05-07  Ulrich Drepper  <drepper@redhat.com>
5190         * sysdeps/unix/sysv/linux/Makefile: mq_send.c and mq_receive.c
5191         need to be compiled with exceptions.
5193 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
5195         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Fix memory handling.
5196         * sysdeps/generic/ifreq.c (__ifreq): Fix memory handling.
5198         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Make clear that
5199         realloc cannot fail.
5201         * nss/nss_files/files-netgrp.c (EXPAND): Free buffer which cannot
5202         be expanded.
5204         * nis/nis_table.c: Clean up memory handling.
5205         * nis/nis_subr.c (nis_getnames): Clean up memory handling.
5206         * nis/nis_removemember.c (nis_removemember): Add comment
5207         explaining use of realloc.
5209         * math/tgmath.h (fabs): Use __TGMATH_UNARY_REAL_IMAG_RET_REAL.
5210         (carg): Likewise.
5211         Patch by Lev S Bishop <lev.bishop@yale.edu>.
5213         * math/bug-tgmath1.c (main): Test fabs and carg as well.
5215 2004-05-06  Richard Henderson  <rth@redhat.com>
5217         * elf/elf.h (AT_L1I_CACHESHAPE, AT_L1D_CACHESHAPE,
5218         AT_L2_CACHESHAPE, AT_L3_CACHESHAPE): New.
5219         * sysdeps/unix/sysv/linux/alpha/Versions: Export
5220         __libc_alpha_cache_shape as a private symbol.
5221         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c: New file.
5222         * sysdeps/unix/sysv/linux/alpha/sysconf.c: New file.
5224 2004-05-06  Richard Henderson  <rth@redhat.com>
5226         * sysdeps/alpha/div_libc.h (_ITOFS, _ITOFT, _FTOIT, _ITOFT2): New.
5227         * sysdeps/alpha/divl.S: Use them.
5228         * sysdeps/alpha/divq.S: Likewise.
5229         * sysdeps/alpha/divqu.S: Likewise.
5230         * sysdeps/alpha/reml.S: Likewise.
5231         * sysdeps/alpha/remq.S: Likewise.
5232         * sysdeps/alpha/remqu.S: Likewise.
5234 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
5236         * math/tgmath.h (__TGMATH_UNARY_REAL_IMAG_RET_REAL):Define.
5237         (cimag): Use it.
5238         (creal): Likewise.
5239         * math/Makefile (tests): Add bug-tgmath1.
5240         * math/bug-tgmath1.c: New file.
5242 2004-05-05  Jakub Jelinek  <jakub@redhat.com>
5244         * sysdeps/alpha/atomicity.h: Remove.
5245         * sysdeps/generic/atomicity.h: Remove.
5247 2004-05-05  H.J. Lu  <hongjiu.lu@intel.com>
5249         * sysdeps/i386/i486/bits/string.h (strpbrk): Cast return to
5250         char *.
5252 2004-04-22  David Mosberger  <davidm@hpl.hp.com>
5254         * sysdeps/unix/sysv/linux/ia64/Makefile (librt-routines): Mention
5255           rt-sysdep.
5256         * sysdeps/unix/sysv/linux/ia64/rt-sysdep.S: New file.
5258         * sysdeps/ia64/strcat.c: New file.
5259         * sysdeps/ia64/strcat.S: Delete.
5261 2004-05-04  Jakub Jelinek  <jakub@redhat.com>
5263         * sysdeps/unix/sysv/linux/ia64/sysdep.S (USE___THREAD): Remove
5264         defined.
5266 2004-04-23  Jakub Jelinek  <jakub@redhat.com>
5268         * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Add
5269         libc_hidden_proto.  Define to __GI___libm_error_support for
5270         assembly going into libc.so.
5271         * sysdeps/ia64/fpu/libc_libm_error.c (__libm_error_support): Add
5272         libc_hidden_def.
5274         * include/libc-symbols.h (HIDDEN_BUILTIN_JUMPTARGET): Define.
5275         * sysdeps/ia64/bcopy.S (bcopy): Use it for jump to memmove.
5277         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Access
5278         gprel errno if RTLD_PRIVATE_ERRNO or __thread __libc_errno/errno
5279         if USE___THREAD.
5281 2004-05-03  Jakub Jelinek  <jakub@redhat.com>
5283         * sysdeps/unix/bsd/bits/fcntl.h (F_SETOWN, F_GETOWN): Define if
5284         __USE_BSD or __USE_UNIX98.
5285         * sysdeps/unix/bsd/ultrix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
5286         * sysdeps/unix/bsd/bsd4.4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
5287         * sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h (F_SETOWN, F_GETOWN):
5288         Likewise.
5289         * sysdeps/unix/common/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
5290         * sysdeps/unix/sysv/aix/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
5291         * sysdeps/unix/sysv/irix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
5292         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (F_SETOWN, F_GETOWN):
5293         Likewise.
5294         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_SETOWN, F_GETOWN):
5295         Likewise.
5296         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (F_SETOWN, F_GETOWN):
5297         Likewise.
5298         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (F_SETOWN, F_GETOWN):
5299         Likewise.
5300         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (F_SETOWN, F_GETOWN):
5301         Likewise.
5302         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (F_SETOWN, F_GETOWN):
5303         Likewise.
5304         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (F_SETOWN, F_GETOWN):
5305         Likewise.
5306         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (F_SETOWN, F_GETOWN):
5307         Likewise.
5308         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (F_SETOWN, F_GETOWN):
5309         Likewise.
5310         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (F_SETOWN, F_GETOWN):
5311         Likewise.
5312         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (F_SETOWN, F_GETOWN):
5313         Likewise.
5314         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (F_SETOWN, F_GETOWN):
5315         Likewise.
5316         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_SETOWN, F_GETOWN):
5317         Likewise.
5318         * sysdeps/generic/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
5319         * sysdeps/mach/hurd/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
5320         * io/sys/stat.h (S_ISSOCK, S_IFSOCK): Likewise.
5322 2004-05-01  Jakub Jelinek  <jakub@redhat.com>
5324         * posix/Versions (libc): Remove __libc_wait, __libc_waitpid,
5325         __libc_pause, __libc_nanosleep, __libc_pread, __libc_pread64,
5326         __libc_pwrite64, __waitid and __pselect @@GLIBC_PRIVATE.
5327         * stdlib/Versions (libc): Remove __on_exit@@GLIBC_PRIVATE.
5328         * sysdeps/unix/sysv/linux/Versions (libc): Remove
5329         __libc_sigaction@@GLIBC_PRIVATE.
5330         * sysdeps/unix/sysv/linux/x86_64/Versions (libc): Remove
5331         __modify_ldt@@GLIBC_PRIVATE.
5332         * socket/Versions (libc): Remove __libc_accept, __libc_send,
5333         __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv,
5334         __libc_sendto and __libc_connect @@GLIBC_PRIVATE.
5335         * stdio-common/Versions (libc): Remove
5336         _itoa_upper_digits@@GLIBC_PRIVATE.
5337         * resolv/Versions (libresolv): Remove __ns_samename@@GLIBC_PRIVATE.
5338         * misc/Versions (libc): Remove __libc_fsync, __libc_msync,
5339         __libc_readv and __libc_writev @@GLIBC_PRIVATE.
5340         * termios/Versions (libc): Remove __libc_tcdrain@@GLIBC_PRIVATE.
5341         * io/Versions (libc): Remove __libc_open, __libc_close, __libc_read,
5342         __libc_write, __libc_lseek, __libc_fcntl, __libc_open64 and
5343         __libc_lseek64 @@GLIBC_PRIVATE.
5345 2004-04-30  Jakub Jelinek  <jakub@redhat.com>
5347         * elf/dl-load.c (open_verify): Move e_phentsize check after e_type
5348         check.
5350 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
5352         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: New file.
5353         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: New file.
5354         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: New file.
5355         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: New file.
5356         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: Removed.
5357         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: New file.
5358         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: Removed.
5359         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: New file.
5360         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: New file.
5361         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: New file.
5362         * sysdeps/powerpc/powerpc64/fpu/s_lround.S: New file.
5363         * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: New file.
5364         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: New file.
5365         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: New file.
5366         * sysdeps/powerpc/powerpc64/fpu/s_round.S: New file.
5367         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: New file.
5368         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: New file.
5369         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: New file.
5371         * math/test-misc.c [LDBL_MANT_DIG == 106](main): Correct LDBL_MAX
5372         mantissa for AIX long double format.
5373         * misc/qefgcvt.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Define for AIX
5374         long double format.
5375         * misc/qefgcvt_r.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Likewise.
5376         * stdlib/fpioconst.c [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
5377         (_fpioconst_pow10): AIX long double format has same exponent range as
5378         double.
5379         * stdlib/fpioconst.h [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
5380         (LDBL_MAX_10_EXP_LOG): AIX long double format has same exponent range
5381         as double.
5383 2004-04-23  Art Haas  <ahaas@airmail.net>
5385         * sysdeps/unix/sysv/linux/kernel-features.h: Add 'defined'.
5387 2004-04-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
5389         * sysdeps/unix/sysv/linux/mq_getattr.c: Include <stddef.h>.
5390         * sysdeps/unix/sysv/linux/mq_notify.c: Likewise.
5391         * sysdeps/unix/sysv/linux/mq_open.c: Likewise.
5392         * sysdeps/unix/sysv/linux/mq_receive.c: Likewise.
5393         * sysdeps/unix/sysv/linux/mq_send.c: Likewise.
5395 2004-04-29  Philip Blundell  <pb@nexus.co.uk>
5397         * sysdeps/arm/dl-machine.h (RTLD_START): Avoid unnecessary GOT
5398         entries.
5400 2004-04-29  Jakub Jelinek  <jakub@redhat.com>
5402         * manual/resource.texi (sched_setaffinity, sched_getaffinity): Fix
5403         prototypes and description [BZ #131].
5405         * string/bits/string2.h (strpbrk): Cast NULL to char * [BZ #130].
5406         Patch by Ed Catmur <ed@catmur.co.uk>.
5407         * string/tst-inlcall.c (main): Add test for strpbrk.
5409         [BZ #140]
5410         * sysdeps/unix/sysv/linux/sys/sysctl.h: Remove linux/compiler.h
5411         include.
5412         (_LINUX_KERNEL_H, _LINUX_TYPES_H, _LINUX_LIST_H): Only define if not
5413         yet defined, #undef back after including linux/sysctl.h if defined
5414         here.
5415         (__LINUX_COMPILER_H, __user): Define if not yet defined, #undef
5416         back after including linux/sysctl.h if defined here.
5418         * sysdeps/sparc/sparc64/soft-fp/qp_qtoi.c (_Qp_qtoi): Use %f31
5419         for single precision register, add it to __asm clobbers [BZ #139].
5420         * sysdeps/sparc/sparc64/soft-fp/qp_qtoui.c (_Qp_qtoui): Use %f31
5421         for single precision register, add it to __asm clobbers.
5422         * sysdeps/sparc/sparc64/soft-fp/qp_qtoux.c (_Qp_qtoux): Use fqtox
5423         instead of fqtoi in QP_HANDLE_EXCEPTIONS.
5424         * sysdeps/sparc/sparc64/soft-fp/qp_qtox.c (_Qp_qtox): Likewise.
5425         Reported by M. H. VanLeeuwen <vanl@megsinet.net>.
5427 2004-04-23  Andreas Schwab  <schwab@suse.de>
5429         * sysdeps/unix/sysv/linux/m68k/register-dump.h: Use
5430         __attribute_used__.
5432 2004-04-22  Philip Blundell  <philb@gnu.org>
5434         * sysdeps/arm/dl-machine.h (elf_machine_rela): Don't use INTUSE
5435         when calling _dl_signal_error.
5436         (elf_machine_rel): Likewise.
5438 2004-04-21  Ulrich Drepper  <drepper@redhat.com>
5440         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Define _GI___sigsetjmp
5441         and use it internally instead of __sigsetjmp.
5442         * sysdeps/ia64/fpu/s_frexpf.c (frexpf): Use _GI___libm_frexp_4f.
5443         * sysdeps/ia64/fpu/s_frexpl.c (frexpl): Use _GI___libm_frexp_4l.
5444         * sysdeps/ia64/fpu/libm_frexp4.S: Define _GI___libm_frexp_4.
5445         * sysdeps/ia64/fpu/libm_frexp4f.S: Define _GI___libm_frexp_4f.
5446         * sysdeps/ia64/fpu/libm_frexp4l.S: Define _GI___libm_frexp_4l.
5447         * sysdeps/ia64/fpu/s_frexp.c (frexp): Use _GI___libm_frexp_4.
5448         * sysdeps/ia64/fpu/libm_support.h: Declare _GI___libm_frexp_4,
5449         _GI___libm_frexp_4f, _GI___libm_frexp_4l.
5450         * sysdeps/ia64/fpu/bits/mathinline.h: New file.
5451         * sysdeps/unix/sysv/linux/ia64/__start_context.S: Use
5452         HIDDEN_JUMPTARGET for exit call.
5453         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use HIDDEN_JUMPTARGET for
5454         _exit call.
5455         * sysdeps/ia64/bcopy.S: Use HIDDEN_JUMPTARGET for memmove call.
5456         * sysdeps/ia64/strcat.S: Use HIDDEN_JUMPTARGET for strlen and
5457         strcpy calls.
5459 2004-04-21  Jakub Jelinek  <jakub@redhat.com>
5461         * posix/tst-chmod.c (do_test): Fix a typo.
5463         * elf/lateglobal.c (main): Fix error checks.
5464         Patch by Stephen Clarke <stephen.clarke@st.com>.
5466         * manual/ctype.texi (isblank, iswblank): Mark as ISO functions,
5467         mention they have been added in ISO C99.
5468         Reported by Ben Pfaff <blp@cs.stanford.edu>.
5470 2004-03-31  H.J. Lu  <hongjiu.lu@intel.com>
5472         * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: Fix typo.
5474 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
5476         * sysdeps/unix/sysv/linux/shm_open.c (shm_unlink): Change EPERM into
5477         EACCES.
5479 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
5481         * stdio-common/vfscanf.c (_IO_vfscanf): Revert last %% whitespace
5482         handling change.
5483         * stdio-common/tst-sscanf.c (int_tests): Adjust.
5485         * nis/nss-nis.c: Include stdlib.h.
5487         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Shut up a
5488         warning.
5489         * sysdeps/sparc/sparc64/memcmp.S (memcmp): Remove BP_SYM () from
5490         libc_hidden_builtin_def.
5492 2004-04-20  Jim Meyering  <jim@meyering.net>
5494         * misc/error.c (error_tail): Don't leak upon realloc failure.
5496 2004-04-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
5498         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
5499         Use RETURN_ADDRESS instead of __builtin_return_address.
5501 2004-04-19  Ulrich Drepper  <drepper@redhat.com>
5503         * sysdeps/unix/sysv/linux/mq_unlink.c: Rewrite to produce more
5504         compact code.
5506 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
5508         * stdio-common/vfscanf.c (_IO_vfscanf): When skipping whitespace,
5509         do input_error () instead of conv_error () and don't look at errno.
5510         Don't eat any whitespace before %% if skip_space == 0.
5511         * stdio-common/tst-sscanf.c (int_tests): New array.
5512         (main): Run int_tests.
5515 See ChangeLog.14 for earlier changes.