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