* sysdeps/ia64/fpu/e_logl.c: File removed.
[glibc.git] / ChangeLog
blob487cb686c3c6f3dd8c1790078e3a707b13b13b04
1 2005-01-10  Roland McGrath  <roland@redhat.com>
3         * sysdeps/ia64/fpu/e_logl.c: File removed.
5         * dlfcn/dlfcn.c (init): Fix typo in attribute decl.
7 2005-01-10  Ulrich Drepper  <drepper@redhat.com>
9         * sysdeps/generic/dl-tls.c (_dl_next_tls_modid): Fix assertion and
10         recognition of last entry.
12 2005-01-09  Ulrich Drepper  <drepper@redhat.com>
14         * elf/dl-runtime.c: Include <sys/param.h>.
16         * elf/Makefile (headers): Add bits/link.h.
18 2005-01-09  Andreas Schwab  <schwab@suse.de>
20         * elf/rtld.c (dl_main): Create main_map with __RTLD_OPENEXEC.
22 2005-01-09  Andreas Jaeger  <aj@suse.de>
24         * time/strptime_l.c (__strptime_internal): Add braces to avoid
25         warning.
27         * sysdeps/x86_64/bits/link.h: Use vector_size for GCC 4.0.
29         * elf/rtld.c (dl_main): Call _dl_add_to_slotinfo only if USE_TLS.
31 2005-01-08  Jakub Jelinek  <jakub@redhat.com>
33         * elf/Makefile (generated): Add tst-pie1{,.out,.o}.
35 2005-01-09  Ulrich Drepper  <drepper@redhat.com>
37         * elf/dl-fini.c (_dl_fini): Call destructors of audit DSOs after
38         those of all the regular objects.
40         * elf/dl-debug.c (_dl_debug_initialize): Take extra parameter and
41         use it to select the r_debug structure for that namespace.
42         * elf/dl-close.c (_dl_close): Adjust call to _dl_debug_initialize.
43         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
44         * elf/dl-open.c (_dl_open): Likewise.
45         * elf/rtld.c (dl_main): Likewise.
46         * sysdeps/generic/ldsodefs.h (struct link_namespaces): Add _ns_debug
47         member.
48         (_dl_debug_initialize): Add new parameter in declaration.
50         * elf/dl-close.c (_dl_close): Make sure auditing callbacks are not
51         called for the auditing objects themselves.
52         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
54 2005-01-07  Ulrich Drepper  <drepper@redhat.com>
56         * sysdeps/powerpc/powerpc64/dl-machine.h
57         (elf_machine_runtime_setup): If profile != 0 does not anymore mean
58         GLRO(dl_profile) != NULL.
59         * sysdeps/powerpc/powerpc64/bits/link.h (struct la_ppc64_regs): Add
60         padding.
61         * sysdeps/powerpc/powerpc64/dl-trampoline.S: (_dl_profile_resolve):
62         Extend _dl_prof_resolve to add pass extra parameters to
63         _dl_profile_fixup and set up structure with register content.
65         * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_machine_runtime_setup):
66         If profile != 0 does not anymore mean GLRO(dl_profile) != NULL.
67         * sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_prof_resolve):
68         Extend _dl_prof_resolve to add pass extra parameters to
69         _dl_profile_fixup and set up structure with register content.
70         * sysdeps/powerpc/powerpc32/bits/link.h: Fix types of some fields in
71         the register and result structures.
72         * sysdeps/powerpc/powerpc64/bits/link.h: Fix types of some fields
73         in the 32-bit register and result structures.
75         * sysdeps/powerpc/powerpc64/dl-trampoline.S: Use register names.
77         * sysdeps/powerpc/powerpc32/dl-trampoline.S: New file.
78         * sysdeps/powerpc/powerpc32/dl-machine.h: Remove trampoline code here.
79         Define ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.
80         * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add ppc32 variants.
81         * elf/tst-auditmod1.c: Add ppc32 support.
82         * sysdeps/powerpc/powerpc32/bits/link.h: New file.
83         * sysdeps/powerpc/powerpc64/bits/link.h: Add ppc32 definitions.
85         * malloc/malloc.c (malloc_printerr): Print program name as part of
86         error message.
88         * misc/sys/cdefs.h (__attribute_warn_unused_result__): Define.
89         * stdlib/stdlib.h: Make realloc with
90         __attribute_warn_unused_result__ instead of __wur.
91         * malloc/malloc.h: Add __wur and __attribute_warn_unused_result__
92         markers as in <stdlib.h>.
94         * libio/stdio.h: Remove __wur from rename and remove.
95         * posix/unistd.h: Remove __wur from dup2.
97 2005-01-03  Andreas Jaeger  <aj@suse.de>
99         * elf/Makefile (tests): Revert patch from 2005-01-03.
101 2005-01-07  Ulrich Drepper  <drepper@redhat.com>
103         * sysdeps/unix/sysv/linux/init-first.c (__libc_init_first): Don't
104         make __libc_init_first hidden.
106         * elf/rtld.c [!DONT_USE_BOOTSTRAP_MAP] (_dl_start_final): Initialize
107         l_relocated of rtld map.
108         * sysdeps/powerpc/powerpc64/dl-trampoline.S: New file.
109         * sysdeps/powerpc/powerpc64/dl-machine.h: Remove trampoline code here.
110         Define ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.
111         * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add ppc64 variants.
112         * elf/tst-auditmod1.c: Add ppc64 support.
113         * sysdeps/powerpc/powerpc64/bits/link.h: New file.
115 2005-01-06  Roland McGrath  <roland@redhat.com>
117         [BZ #633]
118         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Catch errno values
119         indicating file-name lookup errors, and return ENOSYS or EBADF instead.
121 2005-01-06  Ulrich Drepper  <drepper@redhat.com>
123         * csu/elf-init.c (__libc_csu_fini): Don't do anything here.
124         * sysdeps/generic/libc-start.c: Don't register program destructor here.
126         * dlfcn/Makefile: Add rules to build dlfcn.c.
127         (LDFLAGS-dl.so): Removed.
128         * dlfcn/dlclose.c: _dl_close is now in ld.so, use function pointer
129         table.
130         * dlfcn/dlmopen.c: Likewise for _dl_open.
131         * dlfcn/dlopen.c: Likewise.
132         * dlfcn/dlopenold.c: Likewise.
133         * elf/dl-libc.c: Likewise for _dl_open and _dl_close.
134         * elf/Makefile (routines): Remove dl-open and dl-close.
135         (dl-routines): Add dl-open, dl-close, and dl-trampoline.
136         Add rules to build and run tst-audit1.
137         * elf/tst-audit1.c: New file.
138         * elf/tst-auditmod1.c: New file.
139         * elf/Versions [libc]: Remove _dl_open and _dl_close.
140         * elf/dl-close.c: Change for use inside ld.so instead of libc.so.
141         * elf/dl-open.c: Likewise.
142         * elf/dl-debug.c (_dl_debug_initialize): Allow reinitialization,
143         signaled by nonzero parameter.
144         * elf/dl-init.c: Fix use of r_state.
145         * elf/dl-load.c: Likewise.
147         * elf/dl-close.c: Add auditing checkpoints.
148         * elf/dl-open.c: Likewise.
149         * elf/dl-fini.c: Likewise.
150         * elf/dl-load.c: Likewise.
151         * elf/dl-sym.c: Likewise.
152         * sysdeps/generic/libc-start.c: Likewise.
153         * elf/dl-object.c: Allocate memory for auditing information.
154         * elf/dl-reloc.c: Remove RESOLV.  We now always need the map.
155         Correctly initialize slotinfo.
156         * elf/dynamic-link.h: Adjust after removal of RESOLV.
157         * sysdeps/hppa/dl-lookupcfg.h: Likewise.
158         * sysdeps/ia64/dl-lookupcfg.h: Likewise.
159         * sysdeps/powerpc/powerpc64/dl-lookupcfg.h: Removed.
160         * elf/dl-runtime.c (_dl_fixup): Little cleanup.
161         (_dl_profile_fixup): New parameters to point to register struct and
162         variable for frame size.
163         Add auditing checkpoints.
164         (_dl_call_pltexit): New function.
165         Don't define trampoline code here.
166         * elf/rtld.c: Recognize LD_AUDIT.  Load modules on startup.
167         Remove all the functions from _rtld_global_ro which only _dl_open
168         and _dl_close needed.
169         Add auditing checkpoints.
170         * elf/link.h: Define symbols for auditing interfaces.
171         * include/link.h: Likewise.
172         * include/dlfcn.h: Define __RTLD_AUDIT.
173         Remove prototypes for _dl_open and _dl_close.
174         Adjust access to argc and argv in libdl.
175         * dlfcn/dlfcn.c: New file.
176         * sysdeps/generic/dl-lookupcfg.h: Remove all content now that RESOLVE
177         is gone.
178         * sysdeps/generic/ldsodefs.h: Add definitions for auditing interfaces.
179         * sysdeps/generic/unsecvars.h: Add LD_AUDIT.
180         * sysdeps/i386/dl-machine.h: Remove trampoline code here.
181         Adjust for removal of RESOLVE.
182         * sysdeps/x86_64/dl-machine.h: Likewise.
183         * sysdeps/generic/dl-trampoline.c: New file.
184         * sysdeps/i386/dl-trampoline.c: New file.
185         * sysdeps/x86_64/dl-trampoline.c: New file.
187         * sysdeps/generic/dl-tls.c: Cleanups.  Fixup for dtv_t change.
188         Fix updating of DTV.
189         * sysdeps/generic/libc-tls.c: Likewise.
191         * sysdeps/arm/bits/link.h: Renamed to ...
192         * sysdeps/arm/buts/linkmap.h: ...this.
193         * sysdeps/generic/bits/link.h: Renamed to...
194         * sysdeps/generic/bits/linkmap.h: ...this.
195         * sysdeps/hppa/bits/link.h: Renamed to...
196         * sysdeps/hppa/bits/linkmap.h: ...this.
197         * sysdeps/hppa/i386/link.h: Renamed to...
198         * sysdeps/hppa/i386/linkmap.h: ...this.
199         * sysdeps/hppa/ia64/link.h: Renamed to...
200         * sysdeps/hppa/ia64/linkmap.h: ...this.
201         * sysdeps/hppa/s390/link.h: Renamed to...
202         * sysdeps/hppa/s390/linkmap.h: ...this.
203         * sysdeps/hppa/sh/link.h: Renamed to...
204         * sysdeps/hppa/sh/linkmap.h: ...this.
205         * sysdeps/hppa/x86_64/link.h: Renamed to...
206         * sysdeps/hppa/x86_64/linkmap.h: ...this.
208         * posix/unistd.h: Declare ftruncate for POSIX 2003.  [BZ #640]
210 2004-12-22  Steven Munroe  <sjmunroe@us.ibm.com>
212         * math/libm-test.inc (rint_test_tonearest): New test.
213         (rint_test_towardzero): New test.
214         (rint_test_downward): New test.
215         (rint_test_upward): New test.
216         * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: Fix -0.0 case.
217         Remove redundant const values.
218         * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: Fix -0.0 case.
219         Remove redundant const values.  Use float const.
220         * sysdeps/powerpc/powerpc32/fpu/s_floor.S: Fix -0.0 case.
221         * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: Fix -0.0 case.
222         Use float const.
223         * sysdeps/powerpc/powerpc32/fpu/s_rint.S: Fix -0.0 case.
224         * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: Fix -0.0 case.
225         Use float const.
226         * sysdeps/powerpc/powerpc32/fpu/s_round.S: Fix -0.0 case.
227         Remove redundant const values.
228         * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: Fix -0.0 case.
229         Remove redundant const values.  Use float const.
230         * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: Fix -0.0 case.
231         Remove redundant const values.
232         * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: Fix -0.0 case.
233         Remove redundant const values.  Use float const.
234         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Use EALIGN for Quadword
235         alignment.  Fix -0.0 case.  Remove redundant const values.
236         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Use EALIGN for Quadword
237         alignment.  Fix -0.0 case.  Remove redundant const values.
238         Use float const.
239         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Use EALIGN for Quadword
240         alignment.  Fix -0.0 case.
241         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Use EALIGN for Quadword
242         alignment.  Fix -0.0 case.  Use float const.
243         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Use EALIGN for Quadword
244         alignment.  Fix -0.0 case.
245         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Use EALIGN for Quadword
246         alignment.  Fix -0.0 case.  Use float const.
247         * sysdeps/powerpc/powerpc64/fpu/s_round.S: Use EALIGN for Quadword
248         alignment.  Fix -0.0 case.  Remove redundant const values.
249         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Use EALIGN for Quadword
250         alignment.  Fix -0.0 case.  Remove redundant const values.
251         Use float const.
252         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Use EALIGN for Quadword
253         alignment.  Fix -0.0 case.
254         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Use EALIGN for Quadword
255         alignment.  Fix -0.0 case.  Remove redundant const values.
256         Use float const.
258 2005-01-06  Ulrich Drepper  <drepper@redhat.com>
260         * misc/sys/cdefs.h: Define __wur.
261         * libio/stdio.h: Use __wur for a number of interfaces.
262         * posix/unistd.h: Likewise.
263         * stdlib/stdlib.h: Likewise.
265 2004-12-29  Jakub Jelinek  <jakub@redhat.com>
267         * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Use
268         libc_hidden_proto instead of HIDDEN_PROTO.
269         * sysdeps/ia64/fpu/libm-symbols.h (HIDDEN_PROTO): Remove.
270         (__libm_error_support): If ASSEMBLER and in libc, define to
271         HIDDEN_JUMPTARGET(__libm_error_support).
273 2004-12-28  David Mosberger  <davidm@hpl.hp.com>
275         * sysdeps/ia64/fpu/Makefile (duplicated-routines): New macro.
276         (sysdep_routines): Replace libm_ldexp{,f,l} and libm_scalbn{,f,l}
277         with $(duplicated-routines).
278         (libm-sysdep_routines): Likewise, but substitute "s_" prefix for
279         "m_" prefix.
281 2004-12-27  David Mosberger  <davidm@hpl.hp.com>
283         * sysdeps/ia64/fpu/libm-symbols.h: Add include of <sysdep.h> and
284         undefine "ret" macro.  Add __libm_error_support hidden definitions.
286         * sysdeps/ia64/fpu/e_lgamma_r.c: Remove CVS-id comment.  Add
287         missing portion of copyright statement.
288         * sysdeps/ia64/fpu/e_lgammaf_r.c: Likewise.
289         * sysdeps/ia64/fpu/e_lgammal_r.c: Likewise.
291         * sysdeps/ia64/fpu/w_lgamma.c: Remove CVS-id comment.  Add
292         missing portion of copyright statement.
293         (__ieee754_lgamma): Rename from lgamma().  Make lgamma() a weak alias.
294         (__ieee754_gamma): Likewise.
295         * sysdeps/ia64/fpu/w_lgammaf.c: Likewise.
296         * sysdeps/ia64/fpu/w_lgammal.c: Likewise.
298 2004-12-09  H. J. Lu <hjl@lucon.org>
300         * sysdeps/ia64/fpu/s_nextafterl.c: Remove.
301         * sysdeps/ia64/fpu/s_nexttoward.c: Likewise.
302         * sysdeps/ia64/fpu/s_nexttowardf.c: Likewise.
303         * sysdeps/ia64/fpu/e_atan2l.S: Remove (duplicate of e_atan2l.c).
304         * sysdeps/ia64/fpu/e_expl.S: Likewise.
305         * sysdeps/ia64/fpu/e_logl.c: Remove (conflicts with e_logl.S).
307 2004-11-18  David Mosberger  <davidm@hpl.hp.com>
309         * sysdeps/ia64/fpu/README: New file.
310         * sysdeps/ia64/fpu/gen_import_file_list: New file.
311         * sysdeps/ia64/fpu/import_check: Likewise.
312         * sysdeps/ia64/fpu/import_diffs: Likewise.
313         * sysdeps/ia64/fpu/import_file.awk: Likewise.
314         * sysdeps/ia64/fpu/import_intel_libm: Likewise.
315         * sysdeps/ia64/fpu/libm-symbols.h: Likewise.
317         * sysdeps/ia64/fpu/e_acos.S: Update from Intel libm v2.1+.
318         * sysdeps/ia64/fpu/e_acosf.S: Likewise.
319         * sysdeps/ia64/fpu/e_acosl.S: Likewise.
320         * sysdeps/ia64/fpu/e_asin.S: Likewise.
321         * sysdeps/ia64/fpu/e_asinf.S: Likewise.
322         * sysdeps/ia64/fpu/e_asinl.S: Likewise.
323         * sysdeps/ia64/fpu/e_atan2.S: Likewise.
324         * sysdeps/ia64/fpu/e_atan2f.S: Likewise.
325         * sysdeps/ia64/fpu/e_cosh.S: Likewise.
326         * sysdeps/ia64/fpu/e_coshf.S: Likewise.
327         * sysdeps/ia64/fpu/e_coshl.S: Likewise.
328         * sysdeps/ia64/fpu/e_exp.S: Likewise.
329         * sysdeps/ia64/fpu/e_expf.S: Likewise.
330         * sysdeps/ia64/fpu/e_fmod.S: Likewise.
331         * sysdeps/ia64/fpu/e_fmodf.S: Likewise.
332         * sysdeps/ia64/fpu/e_fmodl.S: Likewise.
333         * sysdeps/ia64/fpu/e_hypot.S: Likewise.
334         * sysdeps/ia64/fpu/e_hypotf.S: Likewise.
335         * sysdeps/ia64/fpu/e_hypotl.S: Likewise.
336         * sysdeps/ia64/fpu/e_log.S: Likewise.
337         * sysdeps/ia64/fpu/e_log2.S: Likewise.
338         * sysdeps/ia64/fpu/e_log2f.S: Likewise.
339         * sysdeps/ia64/fpu/e_log2l.S: Likewise.
340         * sysdeps/ia64/fpu/e_logf.S: Likewise.
341         * sysdeps/ia64/fpu/e_pow.S: Likewise.
342         * sysdeps/ia64/fpu/e_powf.S: Likewise.
343         * sysdeps/ia64/fpu/e_powl.S: Likewise.
344         * sysdeps/ia64/fpu/e_remainder.S: Likewise.
345         * sysdeps/ia64/fpu/e_remainderf.S: Likewise.
346         * sysdeps/ia64/fpu/e_remainderl.S: Likewise.
347         * sysdeps/ia64/fpu/e_scalb.S: Likewise.
348         * sysdeps/ia64/fpu/e_scalbf.S: Likewise.
349         * sysdeps/ia64/fpu/e_scalbl.S: Likewise.
350         * sysdeps/ia64/fpu/e_sinh.S: Likewise.
351         * sysdeps/ia64/fpu/e_sinhf.S: Likewise.
352         * sysdeps/ia64/fpu/e_sinhl.S: Likewise.
353         * sysdeps/ia64/fpu/e_sqrt.S: Likewise.
354         * sysdeps/ia64/fpu/e_sqrtf.S: Likewise.
355         * sysdeps/ia64/fpu/e_sqrtl.S: Likewise.
356         * sysdeps/ia64/fpu/libm_error.c: Likewise.
357         * sysdeps/ia64/fpu/libm_reduce.c: Likewise.
358         * sysdeps/ia64/fpu/libm_support.h: Likewise.
359         * sysdeps/ia64/fpu/s_atan.S: Likewise.
360         * sysdeps/ia64/fpu/s_atanf.S: Likewise.
361         * sysdeps/ia64/fpu/s_atanl.S: Likewise.
362         * sysdeps/ia64/fpu/s_cbrt.S: Likewise.
363         * sysdeps/ia64/fpu/s_cbrtf.S: Likewise.
364         * sysdeps/ia64/fpu/s_cbrtl.S: Likewise.
365         * sysdeps/ia64/fpu/s_ceil.S: Likewise.
366         * sysdeps/ia64/fpu/s_ceilf.S: Likewise.
367         * sysdeps/ia64/fpu/s_ceill.S: Likewise.
368         * sysdeps/ia64/fpu/s_cos.S: Likewise.
369         * sysdeps/ia64/fpu/s_cosf.S: Likewise.
370         * sysdeps/ia64/fpu/s_cosl.S: Likewise.
371         * sysdeps/ia64/fpu/s_expm1.S: Likewise.
372         * sysdeps/ia64/fpu/s_expm1f.S: Likewise.
373         * sysdeps/ia64/fpu/s_expm1l.S: Likewise.
374         * sysdeps/ia64/fpu/s_fabs.S: Likewise.
375         * sysdeps/ia64/fpu/s_fabsf.S: Likewise.
376         * sysdeps/ia64/fpu/s_fabsl.S: Likewise.
377         * sysdeps/ia64/fpu/s_floor.S: Likewise.
378         * sysdeps/ia64/fpu/s_floorf.S: Likewise.
379         * sysdeps/ia64/fpu/s_floorl.S: Likewise.
380         * sysdeps/ia64/fpu/s_frexp.c: Likewise.
381         * sysdeps/ia64/fpu/s_frexpf.c: Likewise.
382         * sysdeps/ia64/fpu/s_frexpl.c: Likewise.
383         * sysdeps/ia64/fpu/s_ilogb.S: Likewise.
384         * sysdeps/ia64/fpu/s_ilogbf.S: Likewise.
385         * sysdeps/ia64/fpu/s_ilogbl.S: Likewise.
386         * sysdeps/ia64/fpu/s_log1p.S: Likewise.
387         * sysdeps/ia64/fpu/s_log1pf.S: Likewise.
388         * sysdeps/ia64/fpu/s_log1pl.S: Likewise.
389         * sysdeps/ia64/fpu/s_logb.S: Likewise.
390         * sysdeps/ia64/fpu/s_logbf.S: Likewise.
391         * sysdeps/ia64/fpu/s_logbl.S: Likewise.
392         * sysdeps/ia64/fpu/s_modf.S: Likewise.
393         * sysdeps/ia64/fpu/s_modff.S: Likewise.
394         * sysdeps/ia64/fpu/s_modfl.S: Likewise.
395         * sysdeps/ia64/fpu/s_nearbyint.S: Likewise.
396         * sysdeps/ia64/fpu/s_nearbyintf.S: Likewise.
397         * sysdeps/ia64/fpu/s_nearbyintl.S: Likewise.
398         * sysdeps/ia64/fpu/s_rint.S: Likewise.
399         * sysdeps/ia64/fpu/s_rintf.S: Likewise.
400         * sysdeps/ia64/fpu/s_rintl.S: Likewise.
401         * sysdeps/ia64/fpu/s_round.S: Likewise.
402         * sysdeps/ia64/fpu/s_roundf.S: Likewise.
403         * sysdeps/ia64/fpu/s_roundl.S: Likewise.
404         * sysdeps/ia64/fpu/s_significand.S: Likewise.
405         * sysdeps/ia64/fpu/s_significandf.S: Likewise.
406         * sysdeps/ia64/fpu/s_significandl.S: Likewise.
407         * sysdeps/ia64/fpu/s_tan.S: Likewise.
408         * sysdeps/ia64/fpu/s_tanf.S: Likewise.
409         * sysdeps/ia64/fpu/s_tanl.S: Likewise.
410         * sysdeps/ia64/fpu/s_trunc.S: Likewise.
411         * sysdeps/ia64/fpu/s_truncf.S: Likewise.
412         * sysdeps/ia64/fpu/s_truncl.S: Likewise.
414         * sysdeps/ia64/fpu/e_acosh.S: New file from Intel libm v2.1+.
415         * sysdeps/ia64/fpu/e_acoshf.S: Likewise.
416         * sysdeps/ia64/fpu/e_acoshl.S: Likewise.
417         * sysdeps/ia64/fpu/e_atanh.S: Likewise.
418         * sysdeps/ia64/fpu/e_atanhf.S: Likewise.
419         * sysdeps/ia64/fpu/e_atanhl.S: Likewise.
420         * sysdeps/ia64/fpu/e_exp10.S: Likewise.
421         * sysdeps/ia64/fpu/e_exp10f.S: Likewise.
422         * sysdeps/ia64/fpu/e_exp10l.S: Likewise.
423         * sysdeps/ia64/fpu/e_exp2.S: Likewise.
424         * sysdeps/ia64/fpu/e_exp2f.S: Likewise.
425         * sysdeps/ia64/fpu/e_exp2l.S: Likewise.
426         * sysdeps/ia64/fpu/e_lgamma_r.S: Likewise.
427         * sysdeps/ia64/fpu/e_lgammaf_r.S: Likewise.
428         * sysdeps/ia64/fpu/e_lgammal_r.S: Likewise.
429         * sysdeps/ia64/fpu/e_logl.S: Likewise.
430         * sysdeps/ia64/fpu/libm_frexp.S: Likewise.
431         * sysdeps/ia64/fpu/libm_frexpf.S: Likewise.
432         * sysdeps/ia64/fpu/libm_frexpl.S: Likewise.
433         * sysdeps/ia64/fpu/s_libm_ldexp.S: Likewise.
434         * sysdeps/ia64/fpu/s_libm_ldexpf.S: Likewise.
435         * sysdeps/ia64/fpu/s_libm_ldexpl.S: Likewise.
436         * sysdeps/ia64/fpu/s_libm_scalbn.S: Likewise.
437         * sysdeps/ia64/fpu/s_libm_scalbnf.S: Likewise.
438         * sysdeps/ia64/fpu/s_libm_scalbnl.S: Likewise.
439         * sysdeps/ia64/fpu/libm_lgamma.S: Likewise.
440         * sysdeps/ia64/fpu/libm_lgammaf.S: Likewise.
441         * sysdeps/ia64/fpu/libm_lgammal.S: Likewise.
442         * sysdeps/ia64/fpu/libm_sincos.S: Likewise.
443         * sysdeps/ia64/fpu/libm_sincos_large.S: Likewise.
444         * sysdeps/ia64/fpu/libm_sincosf.S: Likewise.
445         * sysdeps/ia64/fpu/libm_sincosl.S: Likewise.
446         * sysdeps/ia64/fpu/libm_scalblnf.S: Likewise.
447         * sysdeps/ia64/fpu/s_asinh.S: Likewise.
448         * sysdeps/ia64/fpu/s_asinhf.S: Likewise.
449         * sysdeps/ia64/fpu/s_asinhl.S: Likewise.
450         * sysdeps/ia64/fpu/s_erf.S: Likewise.
451         * sysdeps/ia64/fpu/s_erfc.S: Likewise.
452         * sysdeps/ia64/fpu/s_erfcf.S: Likewise.
453         * sysdeps/ia64/fpu/s_erfcl.S: Likewise.
454         * sysdeps/ia64/fpu/s_erff.S: Likewise.
455         * sysdeps/ia64/fpu/s_erfl.S: Likewise.
456         * sysdeps/ia64/fpu/s_fdim.S: Likewise.
457         * sysdeps/ia64/fpu/s_fdimf.S: Likewise.
458         * sysdeps/ia64/fpu/s_fdiml.S: Likewise.
459         * sysdeps/ia64/fpu/s_fma.S: Likewise.
460         * sysdeps/ia64/fpu/s_fmaf.S: Likewise.
461         * sysdeps/ia64/fpu/s_fmal.S: Likewise.
462         * sysdeps/ia64/fpu/s_fmax.S: Likewise.
463         * sysdeps/ia64/fpu/s_fmaxf.S: Likewise.
464         * sysdeps/ia64/fpu/s_fmaxl.S: Likewise.
465         * sysdeps/ia64/fpu/s_ldexp.c: Likewise.
466         * sysdeps/ia64/fpu/s_ldexpf.c: Likewise.
467         * sysdeps/ia64/fpu/s_ldexpl.c: Likewise.
468         * sysdeps/ia64/fpu/s_nextafter.S: Likewise.
469         * sysdeps/ia64/fpu/s_nextafterf.S: Likewise.
470         * sysdeps/ia64/fpu/s_nextafterl.S: Likewise.
471         * sysdeps/ia64/fpu/s_nexttoward.S: Likewise.
472         * sysdeps/ia64/fpu/s_nexttowardf.S: Likewise.
473         * sysdeps/ia64/fpu/s_nexttowardl.S: Likewise.
474         * sysdeps/ia64/fpu/s_tanh.S: Likewise.
475         * sysdeps/ia64/fpu/s_tanhf.S: Likewise.
476         * sysdeps/ia64/fpu/s_tanhl.S: Likewise.
477         * sysdeps/ia64/fpu/s_scalblnf.c: Likewise.
478         * sysdeps/ia64/fpu/w_lgamma.c: Likewise.
479         * sysdeps/ia64/fpu/w_lgammaf.c: Likewise.
480         * sysdeps/ia64/fpu/w_lgammal.c: Likewise.
481         * sysdeps/ia64/fpu/w_tgamma.S: Likewise.
482         * sysdeps/ia64/fpu/w_tgammaf.S: Likewise.
483         * sysdeps/ia64/fpu/w_tgammal.S: Likewise.
485         * sysdeps/ia64/fpu/e_gamma_r.c: New empty dummy-file.
486         * sysdeps/ia64/fpu/e_gammaf_r.c: Likewise.
487         * sysdeps/ia64/fpu/e_gammal_r.c: Likewise.
488         * sysdeps/ia64/fpu/w_acosh.c: Likewise.
489         * sysdeps/ia64/fpu/w_acoshf.c: Likewise.
490         * sysdeps/ia64/fpu/w_acoshl.c: Likewise.
491         * sysdeps/ia64/fpu/w_atanh.c: Likewise.
492         * sysdeps/ia64/fpu/w_atanhf.c: Likewise.
493         * sysdeps/ia64/fpu/w_atanhl.c: Likewise.
494         * sysdeps/ia64/fpu/w_exp10.c: Likewise.
495         * sysdeps/ia64/fpu/w_exp10f.c: Likewise.
496         * sysdeps/ia64/fpu/w_exp10l.c: Likewise.
497         * sysdeps/ia64/fpu/w_exp2.c: Likewise.
498         * sysdeps/ia64/fpu/w_exp2f.c: Likewise.
499         * sysdeps/ia64/fpu/w_exp2l.c: Likewise.
500         * sysdeps/ia64/fpu/w_expl.c: Likewise.
501         * sysdeps/ia64/fpu/e_expl.S: Likewise.
502         * sysdeps/ia64/fpu/w_lgamma_r.c: Likewise.
503         * sysdeps/ia64/fpu/w_lgammaf_r.c: Likewise.
504         * sysdeps/ia64/fpu/w_lgammal_r.c: Likewise.
505         * sysdeps/ia64/fpu/w_log2.c: Likewise.
506         * sysdeps/ia64/fpu/w_log2f.c: Likewise.
507         * sysdeps/ia64/fpu/w_log2l.c: Likewise.
508         * sysdeps/ia64/fpu/w_sinh.c: Likewise.
509         * sysdeps/ia64/fpu/w_sinhf.c: Likewise.
510         * sysdeps/ia64/fpu/w_sinhl.c: Likewise.
512         * sysdeps/ia64/fpu/libm_atan2_reg.S: Remove.
513         * sysdeps/ia64/fpu/s_ldexp.S: Likewise.
514         * sysdeps/ia64/fpu/s_ldexpf.S: Likewise.
515         * sysdeps/ia64/fpu/s_ldexpl.S: Likewise.
516         * sysdeps/ia64/fpu/s_scalbn.S: Likewise.
517         * sysdeps/ia64/fpu/s_scalbnf.S: Likewise.
518         * sysdeps/ia64/fpu/s_scalbnl.S: Likewise.
520         * sysdeps/ia64/fpu/s_sincos.c: Make it an empty dummy-file.
521         * sysdeps/ia64/fpu/s_sincosf.c: Likewise.
522         * sysdeps/ia64/fpu/s_sincosl.c: Likewise.
524         * sysdeps/ia64/fpu/e_atan2l.S: Add "Not needed" comment.
526         * sysdeps/ia64/fpu/s_copysign.S: Add __libm_copysign{,f,l}
527         alias for use by libm_error.c
529         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove
530         libm_atan2_reg, libm_tan, libm_frexp4{f,l}.
531         Mention s_erfc{,f,l}, libm_frexp{,f,l}, libm_ldexp{,f,l},
532         libm_sincos{,f,l}, libm_sincos_large, libm_lgamma{,f,l},
533         libm_scalbn{,f,l}, libm_scalblnf.
534         (sysdep_routines): Remove libm_frexp4{,f,l}.
535         Mention libm_frexp{,f,l}, libm_ldexp{,f,l}, and libm_scalbn{,f,l}.
536         (sysdep-CPPFLAGS): Add -include libm-symbols.h, -D__POSIX__,
537         _D_LIB_VERSIONIMF=_LIB_VERSION, -DSIZE_LONG_INT_64, and
538         -DSIZE_LONG_LONG_INT_64.
540 2005-01-05  Steven Munroe  <sjmunroe@us.ibm.com>
542         * elf/rtld.c (dl_main) [NEED_DL_SYSINFO_DSO]: Insure l_map_end and
543         l_text_end are set for a VDSO with a single PT_LOAD entry.
545 2005-01-05  Ulrich Drepper  <drepper@redhat.com>
547         * libio/iofopncook.c (_IO_cookie_seekoff): Define.  Mark offset as
548         invalid to disable optimizations in fileops which won't work here.
549         (_IO_cookie_jumps): Use it.
550         (_IO_old_cookie_jumps): Likewise.
551         * libio/fmemopen.c (fmemopen_seek): Result must be returned in *P,
552         not the return value.
553         * stdio-common/Makefile (tests): Add tst-fmemopen2.
554         * stdio-common/tst-fmemopen2.c: New file.
556         * sysdeps/unix/sysv/linux/bits/waitflags.h: Define __WNOTHREAD.
558 2005-01-05  Roland McGrath  <roland@redhat.com>
560         * configure.in (libc_cv_cpp_asm_debuginfo): Checked moved ...
561         * sysdeps/i386/configure.in: ... here.  New file.
563 2005-01-03  Ulrich Drepper  <drepper@redhat.com>
565         * sysdeps/generic/libc-start.c [SHARED] (__libc_start_main): Don't
566         initialize __environ again.
567         * stdlib/Makefile: Add rules to build and run tst-putenv.
568         * stdlib/tst-putenv.c: New file.
569         * stdlib/tst-putenvmod.c: New file.
571         * sysdeps/unix/sysv/linux/init-first.c: Clean file up.  Don't
572         define unnecessary wrappers or aliases of static functions.
574 2005-01-03  Andreas Jaeger  <aj@suse.de>
576         * csu/Makefile (generated): Add start.os and start.ob.
578         * elf/Makefile (tests): Change rule for tst-pie1 so that make
579         clean works.
581 2004-12-29  Roland McGrath  <roland@redhat.com>
583         [BZ #626]
584         * sysdeps/unix/alarm.c (alarm): Round return value to nearest rather
585         than always up; when nearest is zero, round up to one.
587 2004-12-28  Ulrich Drepper  <drepper@redhat.com>
589         * po/es.po: Update from translation team.
591         * sysdeps/generic/dl-tls.c (__tls_get_addr): Fix typo.
593 2004-12-27  Ulrich Drepper  <drepper@redhat.com>
595         * include/signal.h: Define __sigemptyset.
597 2004-04-27  Paolo Bonzini  <bonzini@gnu.org>
599         * posix/regex_internal.h (struct re_dfastate_t): Make
600         word_trtable a pointer to the 512-item transition table.
601         * posix/regexec.c (build_trtable): Fill in either state->trtable
602         or state->word_trtable.  Return a boolean indicating success.
603         (transit_state): Expect state->trtable to be a 256-item
604         transition table.  Reorganize code to have less tests in
605         the common case, and to save an indentation level.
606         * posix/regex_internal.c (free_state): Free word_trtable.
608 2004-12-21  Jakub Jelinek  <jakub@redhat.com>
610         * sysdeps/unix/sysv/linux/i386/clone.S (__clone): Make sure %esp when
611         calling fn is 16 byte aligned.
612         * sysdeps/i386/tst-stack-align.h: New file.
614         * misc/efgcvt_r.c (FLOAT_MIN_10_EXP, FLOAT_MIN_10_NORM): Define.
615         (ecvt_r): Special case denormals.
616         * misc/qefgcvt_r.c (FLOAT_MIN_10_EXP, FLOAT_MIN_10_NORM): Define.
617         * misc/tst-efgcvt.c: Include float.h.
618         (ecvt_tests): Add 2 new tests.
620 2004-12-20  Roland McGrath  <roland@frob.com>
622         * version.h (RELEASE, VERSION): development, 2.3.90
623         * include/features.h (__GLIBC_MINOR__): Now 4.
625 2004-12-20  Jakub Jelinek  <jakub@redhat.com>,
626             Jim Gifford  <giffordj@linkline.com>
628         [BZ #562]
629         * sysdeps/mips/Makefile (librt-sysdep_routines): Add.
630         * sysdeps/unix/mips/rt-sysdep.S: New file.
632 2004-12-19  Roland McGrath  <roland@redhat.com>
634         * iconv/Makefile (test-iconvconfig): New target.
635         [$(cross-compiling) != yes] (xtests): Depend on it.
637         * iconv/iconvconfig.c (nostdlib, output_file, output_file_len):
638         New variables.
639         (options, parse_opt, main): Take new options --nostdlib and
640         --output/-o to set them.  Under --nostdlib, skip GCONV_PATH dirs.
641         (write_output): If output_file is set, write the output there.
643 2004-12-19  Andreas Jaeger  <aj@suse.de>
645         [BZ #560]
646         * inet/netinet/in.h: Use __interface_addr instead of __interface.
648         [BZ #573]
649         * sunrpc/xcrypt.c (passwd2des_internal): Make it hidden instead of
650         internal linkage.
652 2004-12-19  Roland McGrath  <roland@frob.com>
654         * version.h (VERSION): 2.3.4.
655         * README.template: Various updates.
656         * README: Regenerated.
657         * NEWS: Mention ports.
658         * README-alpha: File removed.
660         [BZ #416]
661         * locale/langinfo.h: Comment fixes.
663 2004-12-17  Ulrich Drepper  <drepper@redhat.com>
665         * po/ja.po: Update from translation team.
667 2004-12-17  Richard Henderson  <rth@redhat.com>
669         * sysdeps/unix/sysv/linux/alpha/clone.S (__clone): Add support
670         for NPTL where the PID is stored at userlevel and needs to be
671         reset when CLONE_THREAD is not used.
673 2004-12-17  Jakub Jelinek  <jakub@redhat.com>
675         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
677 2004-12-17  Andreas Jaeger  <aj@suse.de>
679         * math/libm-test.inc (atan2_test): Compute value with 36 digits.
680         * sysdeps/alpha/fpu/libm-test-ulps: Adjust for changed result.
681         * sysdeps/powerpc/fpu/libm-test-ulps: Likewise.
682         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
683         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Likewise.
684         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Likewise.
685         * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
687 2004-12-16  Ulrich Drepper  <drepper@redhat.com>
689         * stdlib/tst-setcontext.c: Enlarge st1 and st2 arrays.
691 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
693         [BZ #610]
694         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
695         (__novec_getcontext): Fix typo in store of fp29.
696         (__getcontext): Fix typo in store of fp29.
697         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
698         (__novec_swapcontext): Fix typo in store of fp29.
699         (__swapcontext): Fix typo in store of fp29.
701 2004-12-17  GOTO Masanori  <gotom@debian.or.jp>
703         * sysdeps/unix/sysv/linux/dl-osinfo.h (DL_SYSDEP_OSCHECK): Fix
704         vague message.
706 2004-12-16  Roland McGrath  <roland@redhat.com>
708         * nscd/Makefile ($(objpfx)nscd): Don't depend on $(selinux-LIBS),
709         which is usually a -lselinux that make will resolve wrongly.
711 2004-12-16  Andreas Jaeger  <aj@suse.de>
713         * math/math.h: Use #if defined to not receive warnings about
714         undefined symbols.
716 2004-12-16  Jakub Jelinek  <jakub@redhat.com>
718         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Add support
719         for NPTL where the PID is stored at userlevel and needs to be reset
720         when CLONE_THREAD is not used.
722         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
723         (SYSCALL_ERROR_HANDLER): If RTLD_PRIVATE_ERRNO, use rtld_errno
724         instead of errno.
725         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S: Include
726         sysdep-cancel.h instead of sysdep.h.  Handle cancellation.
727         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerate.
729         * sysdeps/ieee754/ldbl-128/e_expl.c: Include stdlib.h.
731 2004-12-15  Jakub Jelinek  <jakub@redhat.com>
733         * sysdeps/unix/sysv/linux/gethostid.c: Make bi-arch safe.
735 2004-12-15  Steven Munroe  <sjmunroe@us.ibm.com>
737         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Correct stack
738         alignment.  Clean up flag bit tests.
739         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Correct stack
740         alignment.  Clean up flag bit tests.  Remove redundent SP assignment.
741         Add TOC register save/restore around function call.
743         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Make no_vmx symbol
744         local.
745         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Make no_vmx symbol
746         local.
747         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Make no_vmx symbol
748         local.
749         * sysdeps/powerpc/powerpc64/setjmp-common.S: Make no_vmx and
750         aligned_save_vmx symbol local.
752 2004-12-15  Ulrich Drepper  <drepper@redhat.com>
754         * sysdeps/i386/i486/bits/string.h (__strncat_g): Fix i686
755         implementation.
757 2004-09-08  H.J. Lu  <hongjiu.lu@intel.com>
759         * Makeconfig (libunwind): New.
760         (libgcc_eh): Add $(libunwind).
761         (gnulib): Always set to -lgcc $(libgcc_eh).
762         (static-gnulib): Always set to -lgcc -lgcc_eh $(libunwind).
763         (libc.so-gnulib): New.
764         * Makerules (LDLIBS-c.so): Use $(libc.so-gnulib) instead of
765         $(static-gnulib).
766         * configure.in (libc_cv_cc_with_libunwind): Set to yes if gcc
767         uses -lunwind for static binaries.
769 2004-06-05  Joseph S. Myers  <jsm@polyomino.org.uk>
771         * malloc/Makefile (install-bin): Remove memusage.
772         (install-bin-script): Add memusage.
774 2004-12-15  Jakub Jelinek  <jakub@redhat.com>
776         * nis/nis_domain_of_r.c (nis_domain_of_r): Use libnsl_hidden_def,
777         not libnsl_hidden_proto.
779         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add support
780         for NPTL where the PID is stored at userlevel and needs to be reset
781         when CLONE_THREAD is not used.
782         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
784         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S (__clone): Save
785         and restore r2 around call to fn.
787 2004-12-15  Andreas Jaeger  <aj@suse.de>
789         * sysdeps/ia64/dl-machine.h (elf_machine_rela): Mark auto instead
790         of static, add always_inline attribute.
791         (elf_machine_rela_relative): Likewise.
792         (elf_machine_lazy_rel): Likewise.
794 2004-12-15  Ulrich Drepper  <drepper@redhat.com>
796         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Add support
797         for pid caching in nptl.
799 2004-12-14  Ulrich Drepper  <drepper@redhat.com>
801         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Add support
802         for pid caching in nptl.
804 2004-10-18  Maciej W. Rozycki  <macro@mips.com>
806         * sysdeps/unix/sysv/linux/mips/bits/socket.h (__cmsg_nxthdr): Use
807         __NTH instead of __THROW in the inline definition.
808         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise.
810         * sysdeps/mips/bits/dlfcn.h (RTLD_DEEPBIND): New macro.
812         * sysdeps/unix/sysv/linux/mips/bits/mman.h
813         (PROT_GROWSDOWN, PROT_GROWSUP): New macros.
815 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
817         * sysdeps/powerpc/powerpc64/ppc-mcount.S (PROF): Don't undef.
818         * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S: Invoke CALL_MOUNT.
819         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Likewise.
820         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
821         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
822         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
823         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Likewise.
824         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
825         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: Likewise.
827 2004-10-19  Wolfram Gloger  <wg@malloc.de>
829         * malloc/hooks.c (mem2chunk_check, top_check): Handle
830         non-contiguous arena.  Reported by Michael Dalton
831         <mwdalton@stanford.edu> [BZ #457].  Add further checks for top chunk.
833 2004-12-14  Jakub Jelinek  <jakub@redhat.com>
835         * sysdeps/posix/sysconf.c (__sysconf_check_spec): Remove leading
836         underscore from GETCONF_DIR filenames.
838 2004-12-13  Ulrich Drepper  <drepper@redhat.com>
840         * po/de.po: Update from translation team.
842         * nss/getnssent.c (__nss_getent): Double buffer size each round to
843         avoid problems with delays for some people's huge entries.
844         * nss/getXXbyYY.c (FUNCTION_NAME): Likewise.
846 2004-12-13  Jakub Jelinek  <jakub@redhat.com>
848         * posix/getconf.c (main): Prepend just $GETCONF_DIR/ instead of
849         $GETCONF_DIR/_ to spec.
850         * posix/confstr.c (confstr): Remove leading underscores for
851         _CS_POSIX_V6_WIDTH_RESTRICTED_ENVS.
853 2004-12-12  Ulrich Drepper  <drepper@redhat.com>
855         * elf/dl-load.c (_dl_map_object_from_fd): Fix computation of
856         mapping start.  It must take the actual pagesize into account, not
857         the alignment in the file.
859 2004-12-11  Ulrich Drepper  <drepper@redhat.com>
861         * malloc/malloc.c (_int_realloc): Add checks for corrupted memory.
862         (_int_free): Make clear message are result of free() calls.
864         * malloc/malloc.c (_int_realloc): Remove unnecessary tests for
865         oldmem and size == 0.
867 2004-12-10  Ulrich Drepper  <drepper@redhat.com>
869         * malloc/arena.c (arena_get2): Prevent endless loop if arenas and
870         list lock are taken.
872 2004-12-08  Thorsten Kukuk  <kukuk@suse.de>
874         * nis/nss_nisplus/nisplus-netgrp.c (_nss_nisplus_getnetgrent_r):
875         Add check if the value is not an empty string.  [BZ #597]
877 2004-11-29  Jakub Jelinek  <jakub@redhat.com>
879         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): If densize > 2
880         and numsize < densize, always shift num up by empty + 1 limbs.
882 2004-12-07  Paolo Bonzini  <bonzini@gnu.org>
884         * posix/regexec.c (proceed_next_node): Simplify treatment of epsilon
885         nodes.  Pass the pushed node to push_fail_stack.
886         (push_fail_stack): Accept a single node rather than an array
887         of two epsilon destinations.
888         (build_sifted_states): Only walk non-epsilon nodes.
889         (check_arrival): Don't pass epsilon nodes to
890         check_arrival_add_next_nodes.
891         (check_arrival_add_next_nodes) [DEBUG]: Abort if an epsilon node is
892         found.
893         (check_node_accept): Do expensive checks later.
894         (add_epsilon_src_nodes): Cache result of merging the inveclosures.
895         * posix/regex_internal.h (re_dfastate_t): Add non_eps_nodes and
896         inveclosure.
897         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at,
898         re_string_context_at, re_string_peek_byte_case,
899         re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
900         Declare as pure.
901         * posix/regex_internal.c (create_newstate_common): Remove.
902         (register_state): Move part of it here.  Initialize non_eps_nodes.
903         (free_state): Free inveclosure and non_eps_nodes.
904         (create_cd_newstate, create_ci_newstate): Allocate the new
905         re_dfastate_t here.
907 2004-12-09  Ulrich Drepper  <drepper@redhat.com>
909         * malloc/malloc.c (public_rEALLOc): Add parameter checks.
910         (_int_free): Provide better error message for invalid pointers.
912 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
914         * posix/tst-regex.c: Use defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
915         conditionals instead of defined _POSIX_CPUTIME.
916         (main): If _POSIX_CPUTIME == 0, call sysconf to see if CPUTIME
917         option is available.
918         * posix/tst-regex.c2: Use defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
919         conditionals instead of defined _POSIX_CPUTIME.
920         (do_test): If _POSIX_CPUTIME == 0, call sysconf to see if CPUTIME
921         option is available.
922         * sysdeps/posix/sysconf.c (__sysconf): If _POSIX_CPUTIME resp.
923         _POSIX_THREAD_CPUTIME is defined to 0, return -1 for the corresponding
924         _SC_ argument.
926 2004-12-08  Jakub Jelinek  <jakub@redhat.com>
928         * elf/ldd.bash.in: When set -o pipefail is available, use that for
929         piping to cat; when not, don't use the pipe at all.
930         Pipe to cat in all cases of running the executable.
931         When direct running exits with code 5, retry running via ${RTLD}.
932         * elf/rtld.c (process_envvars): If __libc_enable_secure and
933         mode != normal, exit with exitcode 5.
935 2004-12-07  Jakub Jelinek  <jakub@redhat.com>
937         * sysdeps/posix/sysconf.c (__sysconf_check_spec): Only define
938         if it will be actually used.
940 2004-12-07  Roland McGrath  <roland@redhat.com>
942         * rt/tst-timer5.c (setup_test): New function.
943         (TEST_CLOCK_MISSING): Use it to punt test if timer_create does not
944         support CLOCK_MONOTONIC.
946 2004-12-07  Jakub Jelinek  <jakub@redhat.com>
948         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Add support for
949         NPTL where the PID is stored at userlevel and needs to be reset when
950         CLONE_THREAD is not used.  Restore gp before calling _exit.
952 2004-12-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
954         * sysdeps/unix/sysv/linux/sh/clone.S: Clear the frame pointer when
955         starting a new thread.  Add support for NPTL where the PID is stored
956         at userlevel and needs to be reset when CLONE_THREAD is not used.
958 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
960         * elf/rtld.c (process_envvars): Don't consider LD_SHOW_AUXV
961         and LD_DYNAMIC_WEAK if __libc_enable_secure.
962         If __libc_enable_secure, /etc/suid-debug doesn't exist and
963         program will be actually run, turn off all debugging.
964         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add LD_DEBUG,
965         LD_DYNAMIC_WEAK and LD_SHOW_AUXV.
967 2004-12-06  Jakub Jelinek  <jakub@redhat.com>
969         * time/tzset.c (tzset_internal): If + or - is seen,
970         but no offset after it, reset offset to 0.  [BZ #601]
972 2004-12-06  Ulrich Drepper  <drepper@redhat.com>
974         * libio/ioseekpos.c (_IO_seekpos_unlocked): Call _IO_SEEKOFF not
975         _IO_SEEKPOS, saving one indirect jump.
977         * libio/fileops.c (_IO_new_file_seekoff): Fix optimization of in-buffer
978         seek.  Remove dead code.
980 2004-12-02  Jakub Jelinek  <jakub@redhat.com>
982         * libio/Makefile (tests): Add bug-ungetc4.
983         * libio/bug-ungetc4.c: New test.
985 2004-12-06  Roland McGrath  <roland@redhat.com>
987         * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): Diagnose EINVAL
988         for CLOCK_THREAD_CPUTIME_ID, not ENOTSUP.
989         Use SYSDEP_NANOSLEEP handler before validating CLOCK_ID value.
991         * rt/tst-timer4.c (TEST_CLOCK, TEST_CLOCK_NANOSLEEP): New macros.
992         Use them throughout in place of CLOCK_REALTIME and nanosleep.
993         (do_test) [TEST_CLOCK_MISSING]: Call this macro and if it returns
994         non-null, punt the test with a message using the string returned.
995         * rt/tst-timer5.c: New file.
996         * rt/Makefile (tests): Add it.
998 2004-12-01  Paolo Bonzini  <bonzini@gnu.org>
1000         * posix/regcomp.c (free_dfa_content, init_dfa): Remove
1001         references to re_dfa_t's subexps field.
1002         (parse_sub_exp, parse_expression): Do not use it.  Use
1003         completed_bkref_map instead.
1004         (create_initial_state, peek_token): Store a backreference \N
1005         with opr.idx = N-1.
1006         * posix/regexec.c (proceed_next_node, check_dst_limits, get_subexp):
1007         Likewise.
1008         (check_subexp_limits): Remove useless condition.
1009         * posix/regex_internal.h (re_subexp_t): Remove.
1010         (re_dfa_t): Remove subexps and subexps_alloc field, add
1011         completed_bkref_map.
1013 2004-12-05  Roland McGrath  <roland@frob.com>
1015         * Makeconfig: Comment typo fix.
1017 2004-11-30  Andreas Schwab  <schwab@suse.de>
1019         * nis/ypclnt.c (ypprot_err): Remove unused entries.
1021 2004-11-30  Paolo Bonzini  <bonzini@gnu.org>
1023         * posix/regexec.c (check_dst_limits_calc_pos_1): Check for
1024         bkref_idx == -1, and don't recurse in that case.
1026 2004-11-30  GOTO Masanori  <gotom@debian.or.jp>
1028         * posix/confstr.c: Enclose #error message with double quote
1029         for gcc-3.3 and lower.
1031 2004-12-04  Ulrich Drepper  <drepper@redhat.com>
1033         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for NPTL where
1034         the PID is stored at userlevel and needs to be reset when CLONE_THREAD
1035         is not used.
1036         * sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.
1038 2004-11-18  Daniel Jacobowitz  <dan@codesourcery.com>
1040         * sysdeps/arm/sysdep.h: Define __USE_BX__ if bx is available.
1041         Use it instead of __THUMB_INTERWORK__.  Make RETINSTR take
1042         only a condition and a register.
1043         * sysdeps/arm/dl-machine.h: Use __USE_BX__ instead of
1044         __THUMB_INTERWORK__.
1045         (_dl_start_user): Use BX.
1046         * sysdeps/arm/strlen.S: Use DO_RET.
1047         * sysdeps/unix/arm/brk.S: Likewise.
1048         * sysdeps/unix/arm/fork.S: Likewise.
1049         * sysdeps/unix/arm/sysdep.S: Likewise.
1050         * sysdeps/unix/arm/sysdep.h: Likewise.
1051         * sysdeps/unix/sysv/linux/arm/clone.S: Update uses of RETINSTR.
1052         * sysdeps/unix/sysv/linux/arm/mmap.S: Likewise.
1053         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise.
1054         * sysdeps/unix/sysv/linux/arm/socket.S: Likewise.
1055         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
1056         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
1058 2004-12-02  Roland McGrath  <roland@redhat.com>
1060         * extra-lib.mk (object-suffixes-$(lib)): Add .oS when
1061         $(lib)-static-only-routines is nonempty.
1062         (extra-objs, o-iterator.mk rule): Filter out .oS from generators.
1063         Add a special rule for .oS objects -> _nonshared.a library.
1065 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
1067         * time/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
1068         convert T2, not T.
1069         * time/Makefile (tests): Add tst-mktime3.
1070         * time/tst-mktime3.c: New test.
1072 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
1074         * stdlib/stdlib.h (realpath): Remove nonnull attribute.
1076         * posix/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
1077         normal_bracket label.
1079         * time/tst-mktime2.c (bigtime_test): Initialize tm.tm_isdst to -1.
1081 2004-12-01  Roland McGrath  <roland@redhat.com>
1083         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c):
1084         Do $(make-target-directory).
1086 2004-11-29  Roland McGrath  <roland@redhat.com>
1088         * posix/confstr.c: Avoid punctuation in #error text.
1090 2004-11-27  Ulrich Drepper  <drepper@redhat.com>
1092         * posix/Makefile (tests): Add tst-sysconf.
1093         * posix/tst-sysconf.c: New file.
1095         * posix/getconf.c (vars): Add support for _SC_IPV6 and
1096         _SC_RAW_SOCKETS.
1097         * sysdeps/posix/sysconf.c (__sysconf): Add support for _SC_IPV6
1098         and _SC_RAW_SOCKETS.
1099         * sysdeps/generic/bits/confname.h: Define _SC_IPV6 and
1100         _SC_RAW_SOCKETS.
1102 2004-11-26  Jakub Jelinek  <jakub@redhat.com>
1104         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add GETCONF_DIR.
1106 2004-11-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1108         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
1109         NO_SGIDEFS_H isn't defined.  Don't include sgidefs.h twice.
1110         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
1111         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
1112         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
1114 2004-11-27  Ulrich Drepper  <drepper@redhat.com>
1116         * include/dlfcn.h (__libc_dlopen): Add __RTLD_DLOPEN to the mode
1117         parameter.  Reported by VY Newsum <newsum@fel.tno.nl>.
1119 2004-11-10  Daniel Jacobowitz  <dan@debian.org>
1121         * libio/iolibio.h (_IO_fclose, _IO_new_fclose, _IO_old_fclose,
1122         _IO_fflush, _IO_fgetpos, _IO_fgetpos64, _IO_fgets, _IO_fopen,
1123         _IO_old_fopen, _IO_new_fopen, _IO_fopen64, __fopen_internal,
1124         _IO_fprintf, _IO_fputs, _IO_fsetpos, _IO_fsetpos64, _IO_ftell,
1125         _IO_fread, _IO_fwrite, _IO_gets, _IO_printf, _IO_puts, _IO_scanf,
1126         _IO_fflush_internal, _IO_ftell_internal, _IO_fputs_internal)
1127         _IO_fwrite_internal): Remove incorrect __THROW.
1128         * libio/libioP.h (_IO_default_xsputn, _IO_wdefault_xsputn,
1129         _IO_default_xsgetn, _IO_wdefault_xsgetn, _IO_default_write,
1130         _IO_default_read, _IO_getline, _IO_getline_info, _IO_getwline,
1131         _IO_getwline_info, _IO_file_read_internal, _IO_sgetn_internal,
1132         _IO_wdo_write_internal, _IO_do_write_internal,
1133         _IO_getline_info_internal, _IO_getline_internal,
1134         _IO_vfprintf_internal, _IO_putc_internal, _IO_read, _IO_write,
1135         _IO_close): Likewise.
1137 2004-11-26  Jakub Jelinek  <jakub@redhat.com>
1139         * posix/Makefile (install-others): Add $(inst_libexecdir)/getconf.
1140         (CFLAGS-sysconf.c): Add -D_GETCONF_DIR.
1141         (CFLAGS-getconf.c): New.
1142         ($(inst_libexecdir)/getconf): New.
1143         * posix/confstr.c (confstr): Use __sysconf to query specifications
1144         that don't have _POSIX_V6_* macros defined.  Use __*_{C,LD}FLAGS
1145         macros defined in bits/environments.h.
1146         * sysdeps/posix/sysconf.c: Include stdlib.h, string.h and
1147         sys/stat.h.
1148         (__sysconf_check_spec): New routine.
1149         (__sysconf): Use it.
1150         * posix/getconf.c (specs): Change into structure array.
1151         (main): If -v is not given, try to get default from
1152         $(libexecdir)/getconf/default.  If specification is not
1153         supported by this getconf, try to execute
1154         $(libexecdir)/getconf/$(specification).
1155         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/environments.h: New file.
1156         * sysdeps/unix/sysv/linux/s390/bits/environments.h: New file.
1157         * sysdeps/unix/sysv/linux/powerpc/bits/environments.h: New file.
1158         * sysdeps/unix/sysv/linux/sparc/bits/environments.h: New file.
1159         * sysdeps/unix/sysv/linux/i386/bits/environments.h: New file.
1160         * sysdeps/unix/sysv/linux/x86_64/bits/environments.h: New file.
1161         * sysdeps/generic/bits/environments.h (__ILP32_OFFBIG_CFLAGS):
1162         Define.
1164         * stdlib/stdlib.h (setenv): Use nonnull only for second argument.
1165         (unsetenv): Remove.
1167 2004-11-23  Paolo Bonzini  <bonzini@gnu.org>
1169         * posix/regcomp.c (analyze_tree): Always call calc_epsdest.
1170         (calc_inveclosure): Use re_node_set_insert_last.
1171         (parse_dup_op): Lower X{1,5} to (X(X(X(XX?)?)?)?)?
1172         rather than X?X?X?X?X?.
1173         * posix/regex_internal.h (re_node_set_insert_last): New declaration.
1174         * posix/regex_internal.c (re_node_set_insert_last): New function.
1175         * posix/PCRE.tests: Add testcases.
1177 2004-11-25  Ulrich Drepper  <drepper@redhat.com>
1179         * dlfcn/dlfcn.h: Remove nonnull attribute from dlopen.
1181         * posix/confstr.c (confstr): Return appropriate strings for
1182         _CS_LFS_LINTFLAGS, _CS_LFS64_CFLAGS, and _CS_LFS64_LINTFLAGS.
1184 2004-11-05  Maciej W. Rozycki  <macro@mips.com>
1186         * sysdeps/mips/dl-machine.h: Include <sgidefs.h>.  Use _ABIO32,
1187         _ABIN32 and _ABI64 for ABI selection throughout.
1188         * sysdeps/mips/elf/start.S: Likewise.
1189         * sysdeps/mips/mips64/__longjmp.c: Likewise.
1190         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
1191         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
1192         * sysdeps/mips/mips64/setjmp.S: Likewise.
1193         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
1194         * sysdeps/mips/sys/regdef.h: Likewise.
1195         * sysdeps/mips/sys/ucontext.h: Likewise.
1196         * sysdeps/unix/mips/sysdep.h: Likewise.
1197         * sysdeps/unix/sysv/linux/kernel-features.h: Likewise.
1198         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
1199         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
1200         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
1201         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
1202         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
1203         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
1204         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
1205         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
1207         * sysdeps/mips/atomicity.h: Use _ABIO32, _ABIN32 and _ABI64 for
1208         ABI selection throughout.
1209         * sysdeps/mips/bits/setjmp.h: Likewise.
1210         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
1211         * sysdeps/mips/machine-gmon.h: Likewise.
1212         * sysdeps/mips/sys/asm.h: Likewise.
1213         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
1214         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
1215         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
1216         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
1217         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
1218         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
1219         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
1220         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
1222         * sysdeps/mips/sgidefs.h: Prevent <asm/sgidefs.h> from being
1223         included by kernel headers and undo its settings if already
1224         included.  Define _ABIO32, _ABIN32 and _ABI64 if missing and use
1225         them to define _MIPS_SIM_ABI32, _MIPS_SIM_NABI32 and
1226         _MIPS_SIM_ABI64 for compatibility.
1227         * sysdeps/unix/sysv/linux/mips/Makefile: Use _ABIO32, _ABIN32 and
1228         _ABI64 for ABI selection in generated syscall-list.h
1229         * sysdeps/unix/sysv/linux/mips/configure.in: Use _ABIO32, _ABIN32
1230         and _ABI64 for ABI selection in generated asm-unistd.h.
1231         * sysdeps/unix/sysv/linux/mips/configure: Regenerate.
1233         * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Correct
1234         an inverted _MIPS_SIM conditional.
1236 2004-11-23  Alexandre Oliva  <aoliva@redhat.com>
1238         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Use free
1239         range even if it doesn't match exactly.
1241 2004-11-23  Jakub Jelinek  <jakub@redhat.com>
1243         * nss/nss_files/files-XXX.c (internal_getent): If parse_line returned
1244         -1, also do H_ERRNO_SET (NETDB_INTERNAL).
1246 2004-11-22  Ulrich Drepper  <drepper@redhat.com>
1248         * sysdeps/i386/fpu_control.h: Add volatile to the asms.
1249         Patch by Alexander Stohr.
1251 2004-11-22  Jakub Jelinek  <jakub@redhat.com>
1253         * nscd/nscd_getai (__nscd_getai): Avoid memory and file descriptor
1254         leaks.
1255         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free air.
1257 2004-11-15  Maciej W. Rozycki  <macro@mips.com>
1259         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h (__SI_MAX_SIZE):
1260         Define appropriately based on __WORDSIZE.
1261         [struct siginfo] (__pad0): Add for explicit padding.
1263         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Formatting fixes
1264         throughout.
1266 2004-11-22  Ulrich Drepper  <drepper@redhat.com>
1268         * dirent/dirent.h: Add nonnull attributes.
1269         * dlfcn/dlfcn.h: Likewise.
1271 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
1273         * sysdeps/ieee754/k_standard.c: Document code 50.
1274         (__kernel_standard) <case 50>: Avoid raising div-by-zero
1275         exception again.
1277 2004-11-19  H.J. Lu  <hongjiu.lu@intel.com>
1279         [BZ #552]
1280         * math/libm-test.inc (tgamma_test): Update tgamma (0) and
1281         tgamma (-0).
1282         * sysdeps/generic/w_tgamma.c (__tgamma): Properly handle |x| == 0.
1283         * sysdeps/generic/w_tgammaf.c (__tgammaf): Likewise.
1284         * sysdeps/generic/w_tgammal.c (__tgammal): Likewise.
1285         * sysdeps/ieee754/dbl-64/e_gamma_r.c (__ieee754_gamma_r): Likewise.
1286         * sysdeps/ieee754/flt-32/e_gammaf_r.c: Likewise.
1287         * sysdeps/ieee754/ldbl-128/e_gammal_r.c: Likewise.
1288         * sysdeps/ieee754/ldbl-96/e_gammal_r.c: Likewise.
1289         * sysdeps/ieee754/k_standard.c (__kernel_standard): Handle
1290         tgamma (0) and tgamma (-0).
1292 2004-11-20  Ulrich Drepper  <drepper@redhat.com>
1294         * time/tzfile.c (__tzfile_read): Avoid open for checking whether
1295         the file we already use changed.
1297         * misc/syslog.c: Remove !USE_IN_LIBIO code.
1299 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
1301         * signal/signal.h (__sysv_signal, sysv_signal, signal, bsd_signal,
1302         ssignal): Remove __nonnull attribute.
1304 2004-11-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1306         * sysdeps/unix/sysv/linux/sh/sys/procfs.h: New file.
1308 2004-11-20  Ulrich Drepper  <drepper@redhat.com>
1310         * signal/signal.h: Add nonnull attributes.
1312         * signal/signal.h: Add deprecated attributes to sigstack,
1313         sigpause, sigblock, sigsetmask, siggetmask.
1315 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
1317         * sysdeps/unix/sysv/linux/bits/socket.h (SCM_RIGHTS): Avoid
1318         comma at the end of enum if __USE_BSD is not defined.
1320 2004-11-19  Ulrich Drepper  <drepper@redhat.com>
1322         * malloc/malloc.c (_int_malloc): Check for corruption of chunk
1323         which is about to be returned.
1325         * malloc/malloc.c (_int_free): Add a few more cheap tests for
1326         corruption.
1328 2004-11-17  Randolph Chung  <tausq@debian.org>
1330         * sysdeps/hppa/dl-machine.h (TRAMPOLINE_TEMPLATE): Add unwind
1331         annotations.
1333 2004-11-18  Jakub Jelinek  <jakub@redhat.com>
1335         [BZ #544]
1336         * posix/regex.h (RE_NO_SUB): New define.
1337         * posix/regex_internal.h (OP_DELETED_SUBEXP): New.
1338         (re_dfa_t): Add subexp_map.
1339         * posix/regcomp.c (struct subexp_optimize): New type.
1340         (optimize_subexps): New routine.
1341         (re_compile_internal): Call it.
1342         (re_compile_pattern): Set preg->no_sub to 1 if RE_NO_SUB.
1343         (free_dfa_content): Free subexp_map.
1344         (calc_inveclosure, calc_eclosure): Skip OP_DELETED_SUBEXP nodes.
1345         * posix/regexec.c (re_search_internal): If subexp_map
1346         is not NULL, duplicate registers as needed.
1347         * posix/Makefile: Add rules to build and run tst-regex2.
1348         * posix/tst-regex2.c: New test.
1349         * posix/rxspencer/tests: Fix last two tests (\0 -> \1).
1350         Add some new tests for nested subexpressions.
1352 2004-11-18  Ulrich Drepper  <drepper@redhat.com>
1354         * libio/libio.h (_IO_FLAGS2_FORTIFY): Renamed from
1355         _IO_FLAGS2_CHECK_PERCENT_N.
1356         * debug/fprintf_chk.c: Adjust all users.
1357         * debug/printf_chk.c: Likewise.
1358         * debug/vfprintf_chk.c: Likewise.
1359         * debug/vprintf_chk.c: Likewise.
1360         * debug/vsnprintf_chk.c: Likewise.
1361         * debug/vsprintf_chk.c: Likewise.
1362         * stdio-common/vfprintf.c: Likewise.  Detect missing %N$ formats.
1363         * debug/tst-chk1.c: Test detection of missing %N$ formats.
1365 2004-11-15  Jakub Jelinek  <jakub@redhat.com>
1367         * posix/bug-regex24.c: Include string.h.
1369         * nis/nis_clone_obj.c (nis_clone_object): Rename out3 label to out2
1370         and out2 to out.  Remove out label.  Formatting.
1372 2004-11-15  Ulrich Drepper  <drepper@redhat.com>
1374         * include/stdio.h: Do not mark __libc_message as noreturn.
1375         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Add loop to
1376         fool gcc.  Include <stdbool.h>.
1377         * sysdeps/posix/libc_fatal.c (__libc_fatal): Add loop to fool gcc.
1378         (__libc_message): Fix typo.
1380 2004-11-13  Ulrich Drepper  <drepper@redhat.com>
1382         * malloc/malloc.c (malloc_state): stat_lock_* elements need only
1383         be defined if THREAD_STATS is defined.  Remove pad0_ since it does
1384         not align with cache line sizes in general anyway.
1386 2004-11-13  Jakub Jelinek  <jakub@redhat.com>
1388         * elf/rtld.c (print_statistics): Avoid segfaults if not all namespaces
1389         are used.  Fix computation of num_relative_relocations on RELA
1390         architectures other than IA-64 and Alpha.
1392 2004-11-13  Ulrich Drepper  <drepper@redhat.com>
1394         * malloc/malloc.c (_int_free): Use munmap_chunk for handling
1395         mmaped memory.
1397 2004-11-12  Ulrich Drepper  <drepper@redhat.com>
1399         * malloc/malloc.c (_int_free): Remove test for NULL parameter.
1400         (_int_realloc): Call _int_free only if memory parameter is not NULL.
1402         * sysdeps/unix/sysv/linux/libc_fatal.c: Add new function __libc_message
1403         which performs the printing and simple format string handling.  The
1404         string is written to tty, stderr, syslog in this order, stopping after
1405         the first successful output.
1406         (__libc_fatal): Call __libc_message.
1407         * include/stdio.h: Declare __libc_message.
1408         * malloc/malloc.c (malloc_printerr): Use __libc_message.
1409         * debug/chk_fail.c: Also print message with __libc_message.
1410         * debug/test-strcpy_chk.c: Ensure that debug messages are not printed
1411         to the terminal or stderr.
1412         * debug/tst-chk1.c: Likewise.
1414         * posix/Makefile: Remove gpl2lgpl variable.
1416 2004-11-12  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1418         * elf/elf.h: Add 20 bit relocations R_390_*20.
1420 2004-11-12  Jakub Jelinek  <jakub@redhat.com>
1422         * sysdeps/unix/sysv/linux/i386/setuid.c: Include linux/posix_types.h.
1423         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
1424         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1425         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
1426         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1427         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
1429 2004-11-12  Andreas Schwab  <schwab@suse.de>
1431         * nis/ypclnt.c (ypprot_err): Fix "minor optimizations".
1433 2004-11-12  Ulrich Drepper  <drepper@redhat.com>
1435         * posix/Makefile (tests): Add bug-regex24.
1436         * posix/bug-regex24.c: New file.
1438 2004-11-12  Paolo Bonzini  <bonzini@gnu.org>
1440         * posix/regexec.c (check_dst_limits_calc_pos_1): Use the map to
1441         cut recursive paths.  Make exit condition more precise.
1442         (match_ctx_add_entry): Initialize the map.
1443         * posix/regex_internal.h (struct re_backref_cache_entry): Add a map of
1444         reachable subexpression nodes from each backreference cache entry.
1446 2004-11-10  Jakub Jelinek  <jakub@redhat.com>
1448         * sysdeps/unix/sysv/linux/setreuid.c: Remove sys/syscall.h,
1449         sys/types.h, linux/posix_types.h, sysdep.h and pthread-functions.h
1450         includes.  Include setxid.h.  Use INLINE_SETXID_SYSCALL macro
1451         instead of INLINE_SYSCALL, kill the HAVE_PTR__NPTL_SETXID guarded
1452         snippets.
1453         * sysdeps/unix/sysv/linux/setegid.c: Likewise.
1454         * sysdeps/unix/sysv/linux/setuid.c: Likewise.
1455         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
1456         * sysdeps/unix/sysv/linux/setgid.c: Likewise.
1457         * sysdeps/unix/sysv/linux/setresuid.c: Likewise.
1458         * sysdeps/unix/sysv/linux/setresgid.c: Likewise.
1459         * sysdeps/unix/sysv/linux/setregid.c: Likewise.
1460         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
1461         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1462         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
1463         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
1464         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
1465         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1466         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
1467         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
1468         * sysdeps/unix/sysv/linux/alpha/setreuid.c: Likewise.
1469         Formatting.  Change signed int into int.
1470         * sysdeps/unix/sysv/linux/alpha/setresuid.c: Likewise.
1471         * sysdeps/unix/sysv/linux/alpha/setresgid.c: Likewise.
1472         * sysdeps/unix/sysv/linux/alpha/setregid.c: Likewise.
1473         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
1474         Remove.
1475         * sysdeps/unix/setxid.h: New file.
1477         * Rules (binaries-static): Add xtests-static.
1478         * Makeconfig (run-program-prefix): Filter also xtests-static.
1480 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu.
1482         [BZ #535]
1483         * time/difftime.c: Fix a double-rounding bug on hosts with
1484         64-bit time_t and long double being IEEE double.  Also, port
1485         to more valid C99 hosts, even those that have padding bits.
1486         Don't include <values.h> since it is marked as an obsolescent
1487         interface.  Include <limits.h>, <float.h>, and <stdint.h> instead.
1488         (TYPE_BITS, TYPE_FLOATING, TYPE_SIGNED): New macros.
1489         (subtract): New static function, that works correctly without
1490         double-rounding, even on hosts with 64-bit time_t.  Also cater
1491         to hosts with padding bits.
1492         (__difftime): Use it.  Use DBL_MANT_DIG and LDBL_MANT_DIG to
1493         determine whether floating types are wide enough: the old
1494         test (which used sizeof) could in theory report the wrong results
1495         on hosts with padding bits in floating-point values.
1497 2004-11-11  Simon Josefsson  <jas@extundo.com>
1499         [BZ #542]
1500         * sysdeps/generic/strtok_r.c [HAVE_CONFIG_H]: Include config.h.
1501         [!_LIBC]: Include strtok_r.h (in gnulib), map __strtok_r to
1502         strtok_r and __rawmemchr to strch.
1503         (__strtok_r): Use C89 prototype.
1504         [weak_alias]: Move calls to libc_hidden_def and weak_alias into
1505         this #ifdef.
1507 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
1509         [BZ #541]
1510         * time/mktime.c (SHR): New macro, which is a portable
1511         substitute for >> that should work even on Crays.
1512         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
1513         Problem reported by Mark D. Baushke in
1514         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
1516 2004-11-09  Paolo Bonzini  <bonzini@gnu.org>
1518         * posix/regexec.c (match_ctx_free_subtops): Remove, merge into...
1519         (match_ctx_clean): ... this function.
1520         (match_ctx_free): Call match_ctx_clean.
1522         * posix/regexec.c (transit_state): Remove the check for
1523         out-of-bounds buffers.
1524         (check_matching): Check here for out-of-bounds buffers.
1525         (re_search_internal): Store into match_kind a set of bits
1526         indicating which incantation of fastmap scanning must be
1527         used.  Use a switch statement instead of multiple ifs.
1528         Exit the final "for (;;)" with goto free_return unless
1529         the match succeeded, thus simplifying some conditionals.
1531         * posix/regex_internal.c (re_string_reconstruct,
1532         re_string_context_at): Add several branch predictions for
1533         case-sensitive matching and no transition table being used.
1535 2004-11-10  Ulrich Drepper  <drepper@redhat.com>
1537         * posix/tst-waitid.c: Don't use error to print error message, they
1538         won't end up in the .out file.
1540 2004-11-09  Ulrich Drepper  <drepper@redhat.com>
1542         * nscd/nscd-client.h (libc_locked_map_ptr): Add new first
1543         parameter, used as class for definition.
1544         * nscd/nscd_getpw_r.c: Adjust for libc_locked_map_ptr change.
1545         (pw_map_free): Ensure no crash after memory is freed.
1546         * nscd/nscd_getgr_r.c: Likewise.  Make map externally visible.
1547         * nscd/nscd_gethst_r.c: Likewise.
1548         * nscd/nscd_getai.c: Use map from nscd_gethost.c.
1549         * nscd/nscd_initgroups.c: Use map from nscd_getgr.c.
1551         * nscd/nscd_getai.c: Add some checks to detect corrupt databases.
1552         * nscd/nscd_getgr_r.c: Likewise
1553         * nscd/nscd_gethst_r.c: Likewise.
1554         * nscd/nscd_getpw_r.c: Likewise
1556 2004-11-09  Jakub Jelinek  <jakub@redhat.com>
1558         * posix/regcomp.c (calc_eclosure_iter): Don't access
1559         dfa->edests[node].elems[0] if dfa->edests[node].nelem == 0.
1560         * posix/rxspencer/tests: Add 5 new tests.
1562 2004-11-09  Ulrich Drepper  <drepper@redhat.com>
1564         * sysdeps/unix/sysv/linux/ifaddrs.c: Determine sin6_scope_id field
1565         value correctly.  Patch by Mitsuru Kanda <mk@karaba.org>.
1567 2004-11-04  Jakub Jelinek  <jakub@redhat.com>
1569         * libio/fileops.c (_IO_new_file_seekoff): If mode is 0 and
1570         fp->_offset == _IO_pos_BAD, just call _IO_SYSSEEK (fp, 0, dir)
1571         and if successful set fp->_offset.
1572         * libio/Makefile (tests): Add bug-ungetc3.
1573         * libio/bug-ungetc3.c: New test.
1575 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
1577         * sysdeps/gnu/_G_config.h (_G_HAVE_MREMAP): Define symbol.
1578         * sysdeps/mach/hurd/_G_config.h: New file.
1579         * libio/fileops.c (mmap_remap_check) [__linux__]: Replaced with
1580         [_G_HAVE_MREMAP].
1582 2004-11-08  Ulrich Drepper  <drepper@redhat.com>
1584         * posix/regcomp.c (utf8_sb_map): Define.
1585         (free_dfa_content): Don't free dfa->sb_char if it's a pointer to
1586         utf8_sb_map.
1587         (init_dfa): Use utf8_sb_map instead of initializing memory when the
1588         encoding is UTF-8.
1590 2004-11-03  Paolo Bonzini  <bonzini@gnu.org>
1592         * posix/regcomp.c (init_dfa): Get the codeset name outside glibc as
1593         well.  Check if it is spelled UTF8 as well as UTF-8, and check
1594         case-insensitively.  Set dfa->map_notascii manually when outside
1595         glibc.
1596         * posix/regex_internal.c (build_wcs_upper_buffer) [!_LIBC]: Enable
1597         optimizations based on map_notascii.
1598         * posix/regex_internal.h [HAVE_LANGINFO_H || HAVE_LANGINFO_CODESET
1599         || _LIBC]: Include langinfo.h.
1601         * posix/regex_internal.h (struct re_backref_cache_entry): Add "more"
1602         field.
1603         * posix/regexec.c (check_dst_limits): Hoist computation of the source
1604         and destination bkref_idx out of the loop.  Pass it to
1605         check_dst_limits_calc_pos.
1606         (check_dst_limits_calc_pos_1): New function, containing the recursive
1607         loop of check_dst_limits_calc_pos; uses the "more" field of
1608         struct re_backref_cache to control the loop.
1609         (check_dst_limits_calc_pos): Store into "boundaries" the position
1610         relative to lim's start and end positions.  Do not accept eclosures,
1611         accept bkref_idx instead.  Call check_dst_limits_calc_pos_1 to do the
1612         work.
1613         (sift_states_bkref): Use the "more" field of struct re_backref_cache
1614         to control the loop.  A big "if" was turned into a continue and the
1615         function was reindented.
1616         (get_subexp): Use the "more" field of struct re_backref_cache
1617         to control the loop.
1618         (match_ctx_add_entry): Initialize the bkref_ents' "more" field.
1619         (search_cur_bkref_entry): Return -1 if out of bounds.
1621         * posix/regexec.c (empty_set): Remove.
1622         (sift_states_backward): Remove cur_src variable.  Move inner loop
1623         to build_sifted_states.
1624         (build_sifted_states): Extract from sift_states_backward.  Do not
1625         use empty_set.
1626         (update_cur_sifted_state): Do not use empty_set.  Special case
1627         dest_nodes->nelem == 0.
1629         * posix/regex_internal.h (struct re_backref_cache_entry): Remove flag
1630         field.
1631         (struct re_sift_context_t): Remove cur_bkref, cls_subexp_idx,
1632         check_subexp fields.  Move limits last.
1633         * posix/regexec.c (match_ctx_clear_flag): Remove.
1634         (sift_ctx_init): Remove check_subexp parameter.  Do not set removed
1635         fields.  Callers adjusted.
1636         (expand_bkref_cache): Remove last_str parameter.  Callers adjusted.
1637         (re_search_internal): Remove fast_translate variable.
1638         (update_cur_sifted_state): Pass candidates as the final parameter
1639         to sift_states_bkref.
1640         (sift_states_bkref): Change last unused parameter to be "candidates",
1641         do not fetch candidates into a local variable.
1642         Remove dead test for "node == sctx->bkref", and the cur_bkref_idx
1643         variable.
1644         Remove loops that set/reset the flag field of backref cache entries.
1645         (check_arrival_add_next_nodes): Use a signed int to hold the return
1646         value of re_node_set_insert.
1647         (group_nodes_into_DFAstates): Likewise.
1648         (match_ctx_add_entry): Do not set the flag field of the new entry.
1650 2004-11-05  Roland McGrath  <roland@redhat.com>
1652         * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Define
1653         _dl_sysinfo_dso under [NEED_DL_SYSINFO_DSO] as well.
1654         * elf/rtld.c (dl_main): Set up GLRO(dl_sysinfo_dso) under
1655         [NEED_DL_SYSINFO_DSO] as well.
1656         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Always include
1657         AT_SYSINFO and AT_SYSINFO_EHDR in name table.
1658         (_dl_sysdep_start) [NEED_DL_SYSINFO_DSO]: Match AT_SYSINFO_EHDR.
1659         * elf/dl-support.c (_dl_sysinfo_dso): Define also under
1660         [NEED_DL_SYSINFO_DSO].
1661         (_dl_aux_init) [NEED_DL_SYSINFO || NEED_DL_SYSINFO_DSO]:
1662         Match AT_SYSINFO_EHDR and set GL(dl_sysinfo_dso).
1664 2004-11-05  Roland McGrath  <roland@redhat.com>
1666         * manual/errno.texi (Error Codes): Revert last change for now.
1667         * sysdeps/gnu/errlist.c: Regenerated.
1669 2004-11-04  Roland McGrath  <roland@frob.com>
1671         * Makeconfig (link-libc, rpath-dirs): Remove AIX cruft definitions.
1672         (LDFLAGS-rpath-ORIGIN, LDFLAGS-soname-fname): Likewise.
1673         (LDFLAGS-rdynamic, LDFLAGS-Bsymbolic): Likewise.
1674         ($(common-objpfx)gnu/lib-names.stmp): Likewise.
1676 2004-11-01  Jakub Jelinek  <jakub@redhat.com>
1678         * sysdeps/unix/sysv/linux/x86_64/sys/procfs.h [__WORDSIZE == 32]
1679         (elf_fpxregset_t): New type.
1680         (struct elf_prpsinfo): If __WORDSIZE == 32, change pr_[ug]id type
1681         to unsigned short int.
1682         * sysdeps/unix/sysv/linux/x86_64/sys/user.h
1683         (struct user_fpregs_struct): Fix comment.
1684         * sysdeps/i386/fpu/bits/mathdef.h (float_t, double_t): If
1685         __FLOAT_EVAL_METHOD__ is defined and 0, typedef to float resp. double.
1686         * sysdeps/x86_64/fpu/bits/mathdef.h: Include bits/wordsize.h.
1687         (float_t, double_t): If -m32 and not -mfpmath=sse, typedef to
1688         long double.
1689         * sysdeps/x86_64/fpu/bits/fenv.h: Include bits/wordsize.h.
1690         (fenv_t): Remove __mxcsr field for -m32.
1692 2004-11-04  Jakub Jelinek  <jakub@redhat.com>
1694         * libio/ftello.c (ftello): Don't subtract save_end - save_base
1695         if pos is _IO_pos_BAD.
1696         * libio/ftello64.c (ftello64): Likewise.
1697         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
1698         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
1699         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
1700         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
1701         * libio/ioftell.c (_IO_ftell): Likewise.
1702         Cast to long int instead of off_t when checking for overflow.
1704 2004-11-04  Richard Henderson  <rth@redhat.com>
1706         * sysdeps/unix/sysv/linux/alpha/register-dump.h (regnames): Align.
1707         (linefeed): Remove.
1708         (register_dump): Rewrite to generate into a flat buffer instead
1709         of into iovecs.
1711 2004-11-02  Jakub Jelinek  <jakub@redhat.com>
1713         * debug/tst-chk1.c (ret): New volatile variable.
1714         (CHK_FAIL_END): Remove redundant ret setting.
1715         (do_test): Remote ret variable.
1717 2004-01-03  Paolo Bonzini  <bonzini@gnu.org>
1719         * posix/regex_internal.h (__regfree) [!_LIBC]: Define to regfree.
1721 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
1723         * sysdeps/generic/utime.c: Include <stddef.h>.
1725         * sysdeps/generic/sysconf.c: Include <grp.h> and <pwd.h>.
1727         * sysdeps/generic/tempname.c (__path_search): Add missing argument
1728         TRY_TMPDIR.
1730 2004-10-31  Mariusz Mazur <mmazur@kernel.pl>
1732         * sysdeps/unix/sysv/linux/alpha/setregid.c: New file.
1733         * sysdeps/unix/sysv/linux/alpha/setresgid.c: New file.
1734         * sysdeps/unix/sysv/linux/alpha/setresuid.c: New file.
1735         * sysdeps/unix/sysv/linux/alpha/setreuid.c: New file.
1737 2004-10-27  Derek R. Price  <derek@ximbiot.com>
1739         [BZ #487] This change is imported from gnulib.
1740         * time/mktime.c (not_equal_tm) [DEBUG]: Remove redundant check.
1742 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
1744         [BZ #473]
1745         * time/tst-mktime.c (main): Don't assume that mktime fails
1746         when given time stamps before 1970.  It returns negative
1747         time_t values instead, for compatibility with BSD.
1749         * time/tst-mktime2.c: New file.
1750         * time/Makefile (tests): Add it.
1752         [BZ #473] Import from gnulib.  Revamp to avoid several problems near
1753         time_t extrema, and on hosts with 64-bit time_t and 32-bit int.
1754         This fixes Debian bug 177940.
1755         * time/mktime.c (TIME_T_MIDPOINT): New macro.
1756         (ydhms_diff): Renamed from ydhms_tm_diff, with a new signature,
1757         which avoids overflow problems on hosts with 64-bit time_t and
1758         32-bit int.  All callers changed.  Now an inline function.
1759         Verify at compile-time that long int is wide enough to avoid
1760         these overflow problems.
1761         (guess_time_tm): New function.
1762         (__mktime_internal): Use it.  Avoid overflow when computing yday on
1763         hosts with 64-bit long and 32-bit int.  Remove tests for 69;
1764         no longer needed.  Use if rather than #ifdef for LEAP_SECONDS_POSSIBLE
1765         so that the code is checked by more compilers.
1766         Do not rely on floating point to probe: stick to integer arithmetic,
1767         to avoid potential porting problems.
1768         Repair potential overflow correctly in the Southern Hemisphere.
1769         (localtime_offset): Add a FIXME for the case where time_t is unsigned.
1771 2004-10-30  Andreas Schwab  <schwab@suse.de>
1773         * sysdeps/m68k/dl-machine.h (elf_machine_rela)
1774         (elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
1775         instead of static.
1777 2004-10-30  Andreas Schwab  <schwab@suse.de>
1779         * sysdeps/unix/sysv/linux/waitid.c: Include <stddef.h> for NULL.
1781 2004-10-30  Ulrich Drepper  <drepper@redhat.com>
1783         * malloc/malloc.c (_int_free): Use unique comments for the error
1784         cases.
1786 2004-10-28  Roland McGrath  <roland@frob.com>
1788         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_fork): Use i386_thread_state
1789         instead of machine_thread_state.
1791 2004-10-28  Roland McGrath  <roland@redhat.com>
1793         * sysdeps/unix/sysv/linux/syscalls.list: Remove setaltroot.
1795 2004-10-28  Ulrich Drepper  <drepper@redhat.com>
1797         * elf/dl-open.c (dl_open_worker): Remove reference to glibcbug script.
1799 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
1801         * elf/dl-load.c (_dl_map_object): Use cache_rpath to check for
1802         existing rpath in main executable, not explicit test.
1804 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
1806         * include/resolv.h (_res_opcodes): New extern.
1807         Add libresolv_hidden_proto.
1808         * resolv/res_debug.c (_res_opcodes): Remove.
1809         (__p_class_syms, __p_type_syms): Add libresolv_hidden_proto
1810         and libresolv_hidden_data_def.  Remove attribute_hidden.
1811         * resolv/res_mkquery (_res_opcodes): Remove.
1812         * resolv/res_data.c (_res_opcodes): Remove attribute_hidden.
1813         Add libresolv_hidden_data_def.
1815 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
1817         * elf/dl-open.c (_dl_open): Don't allow explicitly opening a DSO
1818         into an empty namespace.
1820         * elf/dl-fini.c (_dl_fini): Fix search for map in maps array.
1821         Reverse order of namespaces.
1822         * elf/Makefile: Add rules to build and run tst-dlmopen3.
1823         * elf/tst-dlmopen3.c: New file.
1824         * elf/tst-dlmopen1mod.c: Add check whether constructor runs.
1826 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
1828         * sysdeps/generic/glob.c (globfree): Clear gl_pathv after freeing it.
1829         * posix/Makefile: Add rules to build and run bug-glob2 test.
1830         * posix/bug-glob2.c: New test.
1832 2004-10-27  Roland McGrath  <roland@frob.com>
1834         * sysdeps/mach/hurd/i386/tls.h (HURD_TLS_DESC_DECL): New macro.
1835         (_hurd_tls_init): Use it.
1836         (_hurd_tls_fork): New function.
1837         * sysdeps/mach/hurd/fork.c (__fork) [USE_TLS]: Call it.
1839 2004-10-26  Roland McGrath  <roland@frob.com>
1841         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Initialize TCB->tcb.
1843 2004-10-26  Jakub Jelinek  <jakub@redhat.com>
1845         * sysdeps/gnu/netinet/udp.h (struct udphdr): Use u_int16_t
1846         type instead of uint16_t.  Formatting.
1848 2004-10-25  Roland McGrath  <roland@redhat.com>
1850         * login/openpty.c (openpty): Add libutil_hidden_def.
1852         * nss/nss_files/files-parse.c (nss_files_parse_hidden_def): Define to
1853         either libc_hidden_def or libnss_files_hidden_def, not hidden_def.
1854         This file is also compiled into libnss_hesiod by #include.
1856 2004-10-25  Roland McGrath  <roland@frob.com>
1858         * sysdeps/unix/bsd/hp: Directory and all files removed.
1859         These are now in the ports repository.
1860         * sysdeps/unix/bsd/osf: Likewise.
1861         * sysdeps/unix/bsd/sequent: Likewise.
1862         * sysdeps/unix/bsd/sony: Likewise.
1863         * sysdeps/unix/bsd/ultrix4: Likewise.
1864         * sysdeps/unix/sysv/aix: Likewise.
1865         * sysdeps/unix/sysv/hpux: Likewise.
1866         * sysdeps/unix/sysv/irix4: Likewise.
1867         * sysdeps/unix/sysv/isc2.2: Likewise.
1868         * sysdeps/unix/sysv/minix: Likewise.
1869         * sysdeps/unix/sysv/sco3.2.4: Likewise.
1870         * sysdeps/unix/sysv/sco3.2: Likewise.
1871         * sysdeps/unix/sysv/sysv4: Likewise.
1873         * configure.in (ASM_LINE_SEP): Move this setting to ...
1874         * sysdeps/hppa/configure.in: ... here, new file.
1875         * sysdeps/hppa/configure: New generated file.
1876         * configure: Regenerated.
1878 2004-10-25  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1880         * sysdeps/sh/dl-machine.h: Include sysdep.h.
1881         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add CFI directives.
1882         (elf_machine_runtime_setup): Add always_inline attribute.
1883         (_dl_start_user): Pass the correct environ.
1884         (elf_machine_rela): Replace static inline by auto inline, add
1885         always_inline attribute.
1886         (elf_machine_rela_relative): Likewise.
1887         (elf_machine_lazy_rel): Likewise.
1889 2004-10-24  Ulrich Drepper  <drepper@redhat.com>
1891         * nis/nis_call.c: Pretty printing.  Minor cleanups.
1892         * nis/nis_addmember.c (nis_addmember): Add assert to check buffer
1893         bounds.
1895         * resolv/nss_dns/dns-host.c: Avoid using PLTs.
1896         * include/libc-symbols.h: Define hidden attribute macros for
1897         libnss_nisplus and libutil.
1898         * include/utmp.h: Add libutil_hidden_proto for login_tty.
1899         * login/login_tty.c: Add libutil_hidden_def.
1900         * nis/nisplus-parser.h: Add libnss_nisplus_hidden_proto for parsers.
1901         * nis/nss_nisplus/nisplus-parser.c: Add libnss_nisplus_hidden_def.
1902         * include/pty.h: New file.
1903         * include/rpcsvc/yp.h: New file.
1904         * include/rpcsvc/ypclnt.h: New file.
1905         * include/rpcsvc/ypupd.h: New file.
1906         * include/libc-symbols.h: Define hidden attribute macros for libnsl.
1907         * include/rpcsvc/nislib.h: Use libnsl_hidden_proto for various
1908         functions.
1909         * nis/nis_add.c: Add libnsl_hidden_def.  Minor optimizations.
1910         * nis/nis_call.c: Likewise.
1911         * nis/nis_clone_obj.c: Likewise.
1912         * nis/nis_defaults.c: Likewise.
1913         * nis/nis_domain_of_r.c: Likewise.
1914         * nis/nis_error.c: Likewise.
1915         * nis/nis_file.c: Likewise.
1916         * nis/nis_free.c: Likewise.
1917         * nis/nis_local_names.c: Likewise.
1918         * nis/nis_lookup.c: Likewise.
1919         * nis/nis_modify.c: Likewise.
1920         * nis/nis_print.c: Likewise.
1921         * nis/nis_remove.c: Likewise.
1922         * nis/nis_subr.c: Likewise.
1923         * nis/nis_table.c: Likewise.
1924         * nis/nis_util.c: Likewise.
1925         * nis/yp_xdr.c: Likewise.
1926         * nis/ypclnt.c: Likewise.
1927         * nis/ypupdate_xdr.c: Likewise.
1929         * resolv/res_send.c (send_dg): Cope with failures.
1931         * include/libc-symbols.h: Define hidden attribute macros for
1932         libnss_files.
1933         * include/netdb.h: Use libnss_files_hidden_proto for the parsers
1934         defined in libnss_files, not libc_hidden_proto.
1935         * include/netinet/ether.h: Likewise.
1936         * include/rpc/netdb.h: Likewise.
1937         * nss/nss_files/files-parse.c: Use hidden_def in parser definitions
1938         instead of libc_hidden_def.
1939         * nss/nss_files/files-netgrp.c: Add libnss_files_hidden_def to
1940         _nss_netgroup_parseline definition.
1942 2004-10-23  Roland McGrath  <roland@frob.com>
1944         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Don't return early
1945         after an RPC succeeds.
1947         * sysdeps/vax, sysdeps/unix/bsd/vax: Directories and all files removed.
1948         These are now in the ports repository.
1949         * sysdeps/tahoe, sysdeps/unix/bsd/tahoe: Likewise.
1950         * sysdeps/cris, sysdeps/unix/sysv/linux/cris: Likewise.
1951         * sysdeps/am29k, sysdeps/i860, sysdeps/i960, sysdeps/m88k: Likewise.
1952         * sysdeps/standalone, sysdeps/z8000: Likewise.
1954 2004-10-23  Ulrich Drepper  <drepper@redhat.com>
1956         * resolv/res_send.c (send_dg): Combine write and read to socket
1957         into one loop.
1959 2004-10-22  Roland McGrath  <roland@frob.com>
1961         * Makefile (%.bz2, %.gz): Move these pattern rules ...
1962         * Makerules: ... to here.
1964 2001-10-31  Alexandre Oliva  <aoliva@redhat.com>
1966         * elf/elf.h: Add R_MN10300_* relocation numbers.
1968 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
1970         [BZ #471] Fix imported from gnulib.
1971         * time/mktime.c (leapyear, ydms_tm_diff): Year is of type
1972         long int, not int, to avoid problems when tm_year == INT_MAX
1973         and tm_mon > 12.
1974         (__mktime_intenral): Compute year using long int arithmetic,
1975         not int arithmetic, to avoid problems on hosts where time_t
1976         and long are 64 bits but int is 32.
1978         [BZ #468] Import a fix from gnulib.
1979         * time/mktime.c [! DEBUG]: Do not include <string.h>.
1980         It's needed only if DEBUG is nonzero.
1982         [BZ #470] Import fix from gnulib.
1983         * time/mktime.c [!_LIBC] (__mktime_internal): Define to
1984         mktime_internal, to avoid clashes with any __mktime_internal
1985         function defined in the standard library.
1987         [BZ #469] Imported from gnulib.
1988         * time/mktime.c (__isleap): Remove; all uses replaced by:
1989         (leapyear): New function, which avoids overflow by not adding
1990         1900 to year before testing whether it is a leap year.
1992         [BZ #472] Imported from gnulib.
1993         * time/mktime.c (Local Variables): Remove -DHAVE_TIME_R_POSIX;
1994         no longer used.
1996 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
1998         * resolv/res_send.c: Remove compatibility code which is unused in
1999         glibc and probably bitrotten.
2001         * debug/execinfo.h: Remove __THROW from backtrace prototype.
2003 2004-10-22  Jakub Jelinek  <jakub@redhat.com>
2005         * sysdeps/i386/Makefile (CFLAGS-backtrace.c): Add -fexceptions.
2006         * sysdeps/i386/backtrace.c: Include <bits/libc-lock.h>, <dlfcn.h>,
2007         <stdlib.h> and <unwind.h>.  Remove <bp-checks.h> include.
2008         (struct trace_arg): New type.
2009         (unwind_backtrace, unwind_getip, unwind_getcfa, unwind_getgr): New
2010         fn pointers resp. macros.
2011         (init, backtrace_helper): New functions.
2012         (__backtrace): Rewritten to use _Unwind_Backtrace first and fall
2013         back to frame pointer walking.
2015 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
2017         * sysdeps/unix/sysv/linux/Versions: Things are still in flux, it
2018         seems.  Undo last additions.
2020 2004-10-21  Ulrich Drepper  <drepper@redhat.com>
2022         * posix/execvp.c (execvp): Also ignore ENODEV and ETIMEDOUT errno
2023         values.
2025 2004-10-20  Roland McGrath  <roland@redhat.com>
2027         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Check also
2028         $(config-sysdirs) for shlib-versions files.
2030         * Makeconfig ($(common-objpfx)soversions.i): Replace shell loop with
2031         use of ...
2032         * scripts/soversions.awk: ... this new file.  Collect lib info and
2033         match any DEFAULT line before emitting anything, so DEFAULT can come
2034         later in the concatenation of shlib-versions files.
2036         * manual/errno.texi (Error Codes): Add ENOKEY, EKEYEXPIRED,
2037         EKEYREVOKED, EKEYREJECTED.
2038         * sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.3.4): New errlist.
2039         * sysdeps/gnu/errlist.c: Regenerated
2041         * sysdeps/gnu/errlist-compat.awk: Don't bail if Versions gives a count
2042         higher than ERR_MAX reports.  Instead, emit a #define ERR_MAX.
2043         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.h): New target.
2044         (generated): Add errlist-compat.h.
2045         * sysdeps/gnu/errlist.awk: Make output #include <errlist-compat.h> to
2046         define ERR_MAX and use that for table size.
2048 2004-10-20  Ulrich Drepper  <drepper@redhat.com>
2050         * sysdeps/unix/sysv/linux/syscalls.list: Add entries for setaltroot,
2051         key_add, key_request, and keyctl syscalls.
2052         * sysdeps/unix/sysv/linux/Versions: Export them.
2054 2004-10-19  Roland McGrath  <roland@frob.com>
2056         * sysdeps/mach/readonly-area.c: New file.
2058 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
2060         * elf/Versions [ld, GLIBC_PRIVATE]: Add _dl_debug_state.
2061         * elf/dl-debug.c (_dl_debug_state): Add rtld_hidden_def.
2062         * sysdeps/generic/ldsodefs.h (_dl_debug_state): Don't mark as
2063         hidden but use rtld_hidden_proto.
2065 2004-10-19  Alfred M. Szmidt  <ams@gnu.org>
2067         * sysdeps/generic/readonly-area.c (__readonly_str): Renamed to ...
2068         (__readonly_area): ... this.
2070 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
2072         * sysdeps/generic/strcpy_chk.c (__strcpy_chk): Speed up by checking
2073         destlen only every 4 bytes.
2075 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
2077         * nss/getent.c (hosts_keys): Let inet_pton decide whether the
2078         string is an address or not.
2080 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
2082         * elf/dl-addr.c (_dl_addr): Don't look at STT_TLS symbols.
2083         Use DL_SYMBOL_ADDRESS to set dli_saddr.
2085         * debug/Makefile (catchsegv): Prefix $LIB with a backslash.
2087 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
2089         * debug/Makefile ($(objpfx)catchsegv): To support multilib
2090         platforms, use $LIB in path to slibdir.
2092 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
2094         * debug/catchsegv.sh: Update copyright year.
2095         Use mktemp to create segv_output file.
2097 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
2099         * elf/dl-libc.c (__libc_dlsym_private, __libc_register_dl_open_hook):
2100         New functions.
2101         (__libc_dlopen_mode): Call __libc_register_dl_open_hook and
2102         __libc_register_dlfcn_hook.
2103         * dlfcn/Makefile (routines, elide-routines.os): Set.
2104         Add rules to build and test tststatic2.
2105         * dlfcn/tststatic2.c: New test.
2106         * dlfcn/modstatic2.c: New test module.
2107         * dlfcn/dladdr.c: Call _dlfcn_hook from libdl.so if not NULL.
2108         Define __ prefixed routine in libc.a and in libdl.a just call it.
2109         * dlfcn/dladdr1.c: Likewise.
2110         * dlfcn/dlclose.c: Likewise.
2111         * dlfcn/dlerror.c: Likewise.
2112         * dlfcn/dlinfo.c: Likewise.
2113         * dlfcn/dlmopen.c: Likewise.
2114         * dlfcn/dlopen.c: Likewise.
2115         * dlfcn/dlopenold.c: Likewise.
2116         * dlfcn/dlsym.c: Likewise.
2117         * dlfcn/dlvsym.c: Likewise.
2118         * dlfcn/sdladdr.c: New file.
2119         * dlfcn/sdladdr1.c: New file.
2120         * dlfcn/sdlclose.c: New file.
2121         * dlfcn/sdlerror.c: New file.
2122         * dlfcn/sdlinfo.c: New file.
2123         * dlfcn/sdlopen.c: New file.
2124         * dlfcn/sdlsym.c: New file.
2125         * dlfcn/sdlvsym.c: New file.
2126         * dlfcn/Versions (libdl): Export _dlfcn_hook@GLIBC_PRIVATE.
2127         * include/dlfcn.h (DL_CALLER_DECL, DL_CALLER RETURN_ADDRESS): Define.
2128         (struct dlfcn_hook): New type.
2129         (_dlfcn_hook): New extern decl.
2130         (__dlopen, __dlclose, __dlsym, __dlerror, __dladdr, __dladdr1,
2131         __dlinfo, __dlmopen, __libc_dlsym_private,
2132         __libc_register_dl_open_hook, __libc_register_dlfcn_hook): New
2133         prototypes.
2134         (__dlvsym): Use DL_CALLER_DECL.
2135         * include/libc-symbols.h: Define libdl_hidden_proto and friends.
2137         * malloc/arena.c (_dl_open_hook): Extern decl.
2138         (ptmalloc_init): Don't call _dl_addr when dlopened from statically
2139         linked programs but don't use brk for them either.
2141 2004-10-18  Roland McGrath  <roland@redhat.com>
2143         * dlfcn/bug-dlsym1.c (main): Remove bogus setenv call.
2145 2004-10-18  Ulrich Drepper  <drepper@redhat.com>
2147         * elf/dl-open.c (dl_open_worker): Avoid dereferencing map in
2148         statically linked code if there might none be found.
2150 2004-10-06  Maciej W. Rozycki  <macro@mips.com>
2152         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
2153         (__SYSCALL_CLOBBERS): Add "memory".
2154         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h
2155         (__SYSCALL_CLOBBERS): Likewise.
2156         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h
2157         (__SYSCALL_CLOBBERS): Likewise.
2159 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
2161         * include/libc-symbols.h: Define libresolv_hidden_proto and friends.
2162         * include/resolv.h: Add libresolv_hidden_proto for symbols defined,
2163         used, and exported in libresolv.
2164         * resolv/base64.c: Add libresolv_hidden_def.
2165         * resolv/gethnamaddr.c: Likewise.
2166         * resolv/ns_name.c: Likewise.
2167         * resolv/ns_netint.c: Likewise.
2168         * resolv/res_comp.c: Likewise.
2169         * resolv/res_data.c: Likewise.
2170         * resolv/res_debug.c: Likewise.
2171         * resolv/res_mkquery.c: Likewise.
2172         * resolv/res_query.c: Likewise.
2173         * resolv/res_send.c: Likewise.
2175 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
2177         * elf/dl-minimal.c (__chk_fail): New.  Add rtld_hidden_def.
2178         * sysdeps/unix/sysv/linux/readonly-area.c: New file.
2179         * sysdeps/i386/i686/memmove.S (__memmove_chk): Add checking
2180         routine.
2181         * sysdeps/i386/i686/memcpy.S (__memcpy_chk): Likewise.
2182         * sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
2183         * sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
2184         * sysdeps/i386/i686/memmove-chk.S: New file.
2185         * sysdeps/i386/i686/memcpy-chk.S: Likewise.
2186         * sysdeps/i386/i686/mempcpy-chk.S: Likewise.
2187         * sysdeps/i386/i686/memset-chk.S: Likewise.
2188         * sysdeps/generic/strcat-chk.c (__strcat_chk): Don't __chk_fail
2189         if exactly fitting into buffer.
2190         * sysdeps/generic/strncat-chk.c (__strncat_chk): Likewise.
2191         * sysdeps/generic/readonly-area.c: New file.
2192         * sysdeps/generic/strncpy-chk.c (__strncpy_chk): Only test
2193         destlen once.
2194         * sysdeps/x86_64/memset.S (__memset_chk): Add checking routine.
2195         * sysdeps/x86_64/memcpy.S (__memcpy_chk): Likewise.
2196         * sysdeps/x86_64/mempcpy.S (__memcpy_chk): Define to __mempcpy_chk.
2197         * sysdeps/x86_64/memcpy-chk.S: New file.
2198         * sysdeps/x86_64/mempcpy-chk.S: Likewise.
2199         * sysdeps/x86_64/memset-chk.S: Likewise.
2200         * sysdeps/x86_64/strcpy-chk.S: Likewise.
2201         * sysdeps/x86_64/stpcpy-chk.S: Likewise.
2202         * argp/argp-xinl.c (__OPTIMIZE__): Define to 1 instead of nothing.
2203         * argp/argp-fs-xinl.c (__OPTIMIZE__): Likewise.
2204         * debug/tst-chk1.c: New test.
2205         * debug/tst-chk2.c: Likewise.
2206         * debug/tst-chk3.c: Likewise.
2207         * debug/test-strcpy_chk.c: Likewise.
2208         * debug/test-stpcpy_chk.c: Likewise.
2209         * debug/vsprintf_chk.c (__vsprintf_chk): If flags > 0, request
2210         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
2211         * debug/Makefile (routines): Add printf_chk, fprintf_chk, vprintf_chk,
2212         vfprintf_chk, gets_chk and readonly-area.
2213         (CFLAGS-*_chk.c): Set.
2214         (tests): Add tst-chk1, tst-chk2, tst-chk3, test-strcpy_chk and
2215         test-stpcpy_chk.
2216         * debug/vprintf_chk.c: New file.
2217         * debug/printf_chk.c: Likewise.
2218         * debug/vfprintf_chk.c: Likewise.
2219         * debug/fprintf_chk.c: Likewise.
2220         * debug/gets_chk.c: Likewise.
2221         * debug/chk_fail.c (__chk_fail): Add libc_hidden_def.
2222         * debug/snprintf_chk.c (__snprintf_chk): Fix order of arguments
2223         passed to __vsnprintf_chk.
2224         * debug/Versions (libc): Export __printf_chk, __fprintf_chk,
2225         __vprintf_chk, __vfprintf_chk and __gets_chk @GLIBC_2.3.4.
2226         * debug/vsnprintf_chk.c (__vsnprintf_chk): Don't call
2227         __vsnprintf, instead create a temporary file with
2228         _IO_strn_jumps jumptable.  If flags > 0, request
2229         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
2230         * libio/Makefile (headers): Add bits/stdio2.h.
2231         * libio/stdio.h: Include <bits/stdio2.h> if __USE_FORTIFY_LEVEL.
2232         (sprintf, snprintf, vsprintf, vsnprintf): Remove defines.
2233         * libio/strfile.h (_IO_strnfile): New type.
2234         (_IO_strn_jumps): New extern.
2235         * libio/vsnprintf.c (_IO_strnfile): Remove.
2236         (_IO_strn_jumps): Remove static.
2237         * libio/bits/stdio2.h: New file.
2238         * libio/vswprintf.c (_IO_strnfile): Rename type to...
2239         (_IO_wstrnfile): ...this.  Adjust all uses.
2240         * libio/libio.h (_IO_FLAGS2_CHECK_PERCENT_N): Define.
2241         * stdio-common/vfprintf.c (STR_LEN): Define.
2242         (vfprintf): Add readonly_format variable.
2243         Handle _IO_FLAGS2_CHECK_PERCENT_N.
2244         (buffered_vfprintf): Copy _flags2.
2245         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
2246         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
2247         __vfprintf_chk): New prototypes.
2248         (__vsprintf_chk, __vsnprintf_chk): Add libc_hidden_proto.
2249         * include/string.h (__memcpy_chk, __memmove_chk, __mempcpy_chk,
2250         __memset_chk, __strcpy_chk, __stpcpy_chk, __strncpy_chk, __strcat_chk,
2251         __strncat_chk): New prototypes.
2252         * include/bits/string3.h: New file.
2253         * include/sys/cdefs.h (__chk_fail): Add libc_hidden_proto
2254         and rtld_hidden_proto.
2255         * string/Makefile (headers): Add bits/string3.h.
2256         * string/bits/string3.h (bcopy, bzero): New defines.
2257         (memset, memcpy, memmove, strcpy, strncpy, strcat, strncat): Change
2258         macros so that inlines are used only if unknown destination size
2259         or side-effects in destination argument.
2260         (mempcpy, stpcpy): Likewise.  Protect with #ifdef __USE_GNU.
2262 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
2264         * debug/Makefile (routines): Add *_chk.
2265         * debug/Versions (libc): Export __chk_fail, __memcpy_chk,
2266         __memmove_chk, __mempcpy_chk, __memset_chk, __stpcpy_chk,
2267         __strcat_chk, __strcpy_chk, __strncat_chk, __strncpy_chk,
2268         __sprintf_chk, __vsprintf_chk, __snprintf_chk, __vsnprintf_chk
2269         @GLIBC_2.3.4.
2270         * debug/chk_fail.c: New file.
2271         * debug/snprintf_chk.c: Likewise.
2272         * debug/sprintf_chk.c: Likewise.
2273         * debug/vsnprintf_chk.c: Likewise.
2274         * debug/vsprintf_chk.c: Likewise.
2275         * include/features.h (_FORTIFY_SOURCE): Document, handle.
2276         (__USE_FORTIFY_LEVEL): Define.
2277         (__GNUC_PREREQ): Move to earlier location.
2278         * include/sys/cdefs.h (__chk_fail): New prototype.
2279         * libio/bits/stdio.h (sprintf, vsprintf, snprintf, vsnprintf):
2280         Define if __USE_FORTIFY_LEVEL.
2281         * misc/sys/cdefs.h (__bos, __bos0): Define.
2282         * string/string.h: Include <bits/string3.h> if __USE_FORTIFY_LEVEL.
2283         * bits/string/string3.h: New header.
2284         * sysdeps/generic/memcpy_chk.c: New file.
2285         * sysdeps/generic/memmove_chk.c: Likewise.
2286         * sysdeps/generic/mempcpy_chk.c: Likewise.
2287         * sysdeps/generic/memset_chk.c: Likewise.
2288         * sysdeps/generic/stpcpy_chk.c: Likewise.
2289         * sysdeps/generic/strcat_chk.c: Likewise.
2290         * sysdeps/generic/strcpy_chk.c: Likewise.
2291         * sysdeps/generic/strncat_chk.c: Likewise.
2292         * sysdeps/generic/strncpy_chk.c: Likewise.
2294 2004-10-17  Roland McGrath  <roland@frob.com>
2296         * manual/memory.texi (Page Lock Functions): Typo fix.
2297         Reported by Carlos Maziero <maziero@ppgia.pucpr.br>
2299 2004-10-16  Alfred M. Szmidt  <ams@kemisten.nu>
2301         * sysdeps/mach/hurd/Makefile (link-libc-static): Use
2302         `$(static-gnulib') instead of `$(gnulib)'.
2304 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
2306         * sunrpc/rpc_clntout.c: Avoid including rcsid into binary.
2307         * sunrpc/rpc_cout.c: Likewise.
2308         * sunrpc/rpc_hout.c: Likewise.
2309         * sunrpc/rpc_main.c: Likewise.
2310         * sunrpc/rpc_parse.c: Likewise.
2311         * sunrpc/rpc_sample.c: Likewise.
2312         * sunrpc/rpc_scan.c: Likewise.
2313         * sunrpc/rpc_svcout.c: Likewise.
2314         * sunrpc/rpc_tblout.c: Likewise.
2315         * sunrpc/rpc_util.c: Likewise.
2317 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
2319         * sysdeps/unix/sysv/linux/i386/sysdep.h (PUSHARGS_6, DOARGS_6,
2320         POPARGS_6, _PUSHARGS_6, _DOARGS_6, _POPARGS_6): Define.
2321         * sysdeps/unix/sysv/linux/i386/syscall.S (syscall): Handle 6 argument
2322         syscalls.
2324 2004-10-15  Ulrich Drepper  <drepper@redhat.com>
2326         * nscd/nscd.h (_PATH_NSCD_PASSWD_DB): Move to /var/db.
2327         (_PATH_NSCD_GROUP_DB): Likewise.
2328         (_PATH_NSCD_HOSTS_DB): Likewise.
2329         (_PATH_NSCD_XYZ_DB_TMP): New #define, point to /var/run.
2330         * nscd/connections.c (nscd_init): Non-persistent database files
2331         are created with the _PATH_NSCD_XYZ_DB_TMP path.
2332         * nscd/nscd.init: Create /var/db/nscd if necessary.
2334 2004-10-15  Richard Henderson  <rth@redhat.com>
2336         * sysdeps/unix/sysv/linux/alpha/register-dump.h: New file.
2337         * sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h (SIGCONTEXT): Add
2338         _code argument, pass sigcontext by pointer.
2339         (SIGCONTEXT_EXTRA_ARGS): Likewise.
2340         (GET_PC, GET_FRAME, GET_STACK): Expect ctx as pointer.
2342 2004-10-14  Richard Henderson  <rth@redhat.com>
2344         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
2345         elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
2346         instead of static.
2348         * sysdeps/unix/sysv/linux/adjtime.c (ADJTIME): Use prototype
2349         style definition.
2350         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): If
2351         __ASSUME_TIMEVAL64, define __adjtime directly rather than
2352         via strong_alias.
2354 2004-10-14  Ulrich Drepper  <drepper@redhat.com>
2356         * nscd/Makefile: When using compilers without -fpie support, also
2357         link with -lselinux if necessary.
2358         Patch by Arkadiusz Miskiewicz <arekm@pld-linux.org>.
2360         * nscd/connections.c (nscd_init): Remove file if not persistent
2361         and not shared.  Patch by Jerome Borsboom <j.borsboom@erasmusmc.nl>.
2363 2004-10-14  Jakub Jelinek  <jakub@redhat.com>
2365         * sysdeps/unix/sysv/linux/i386/setresuid.c: Handle
2366         defined __NR_setresuid32 && !defined __NR_setresuid.
2367         * sysdeps/unix/sysv/linux/i386/setresgid.c: Handle
2368         defined __NR_setresgid32 && !defined __NR_setresgid.
2370         * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit,
2371         __signbitl, sqrtf, sqrt, sqrtl, fdim, fdimf): Use __NTH macro.
2373         * sysdeps/generic/errno-loc.c: Don't undef #errno
2374         if RTLD_PRIVATE_ERRNO.
2375         * include/errno.h (__errno_location): If RTLD_PRIVATE_ERRNO,
2376         add attribute_hidden.
2378         * dlfcn/dlinfo.c (dlinfo_doit): Replace iteration over GL(dl_loaded)
2379         chain with iteration over all namespaces' _ns_loaded chains.
2380         * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_preferred_address):
2381         Likewise.
2382         * sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Likewise.
2384         * elf/rtld.c (_dl_start): Fix one last dl_loaded.
2385         * elf/dl-load.c (_dl_map_object_from_fd): Avoid definition of
2386         label when it is not needed.
2387         * elf/dl-close.c (_dl_close): Typo: & -> &&.
2389 2004-10-12  Jakub Jelinek  <jakub@redhat.com>
2391         * sysdeps/generic/segfault.c: Include alloca.h and stdint.h.
2392         Don't include frame.h.
2393         (CURRENT_STACK_FRAME, INNER_THAN, ADVANCE_STACK_FRAME): Remove.
2394         (catch_segfault): Use backtrace function.
2396         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Fix comment.
2397         * sysdeps/unix/sysv/linux/ia64/register-dump.h: New file.
2398         * sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h (GET_PC): Return sc_ip
2399         field.
2401 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
2403         Add support for namespaces in the dynamic linker.
2404         * dlfcn/Makefile (libdl-routines): Add dlmopen.
2405         * dlfcn/Versions [libdl, GLIBC_2.3.4]: Add dlmopen.
2406         * dlfcn/dlfcn.h: Define Lmid_t, LM_ID_BASE, and LM_ID_NEWLM.
2407         Declare dlmopen.  Document RTLD_DI_LMID.
2408         * dlfcn/dlinfo.c: Handle RTLD_DI_LMID.
2409         * dlfcn/dlmopen.c: New file.
2410         * dlfcn/dlopen.c: Pass new parameter to _dl_open.
2411         * dlfcn/dlopenold.c: Likewise.
2412         * elf/dl-addr.c: Adjust for removal of GL(dl_loaded).
2413         * elf/dl-caller.c: Likewise.
2414         * elf/dl-close.c: Likewise.
2415         * elf/dl-conflict.c: Likewise.
2416         * elf/dl-debug.c: Likewise.
2417         * elf/dl-lookup.c: Likewise.
2418         * elf/dl-sym.c: Likewise.
2419         * elf/dl-version.c: Likewise.
2420         * elf/do-lookup.h: Likewise.
2421         * elf/rtld.c: Likewise.
2422         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
2423         * elf/dl-depsc: Likewise.  Add new parameter to _dl_map_object.
2424         * elf/dl-fini.c: Call destructors in all namespaces.
2425         * elf/dl-iteratephdr.c: Compute total nloaded.  Adjust for removal of
2426         GL(dl_loaded).
2427         * elf/dl-libc.c: Pass new parameter to _dl_open.  Adjust for removal
2428         of GL(dl_loaded).
2429         * elf/dl-load.c (_dl_map_object_from_fd): Don't load ld.so a second
2430         time.  Reuse the one from the main namespace in all others.
2431         Pass new parameter to _dl_new_object.
2432         Adjust for removal of GL(dl_loaded).
2433         * elf/dl-object.c: Take new parameter.  Use it to initialize l_ns.
2434         Adjust for removal of GL(dl_loaded).
2435         * elf/dl-open.c (_dl_open): Take new parameter.
2436         Adjust for removal of GL(dl_loaded).
2437         * elf/dl-support.c: Replace global _dl_loaded etc variables with
2438         _dl_ns variable.
2439         * include/dlfcn.h: Adjust prototype of _dl_open.
2440         Define __LM_ID_CALLER.
2441         * include/link.h: Add l_real, l_ns, and l_direct_opencount elements.
2442         * sysdeps/generic/dl-tls.c: Bump TLS_STATIC_SURPLUS.  Since libc is
2443         using TLS we need memory appropriate to the number of namespaces.
2444         * sysdeps/generic/ldsodefs.h (struct rtld_global): Replace _dl_loaded,
2445         _dl_nloaded, _dl_global_scope, _dl_main_searchlist, and
2446         _dl_global_scope_alloc with _dl_ns element.  Define DL_NNS.
2447         Adjust prototypes of _dl_map_object and member in rtld_global_ro.
2448         * malloc/malloc.c: Include <dlfcn.h>.
2449         * malloc/arena.c (ptmalloc_init): If libc is not in primary namespace,
2450         never use brk.
2451         * elf/Makefile: Add rules to build and run tst-dlmopen1 and
2452         tst-dlmopen2.
2453         * elf/tst-dlmopen1.c: New file.
2454         * elf/tst-dlmopen1mod.c: New file.
2455         * elf/tst-dlmopen2.c: New file.
2457         * elf/dl-close.c: Improve reference counting by tracking direct loads.
2458         * elf/dl-lookup.c (add_dependency): Likewise.
2459         * elf/dl-open.c (dl_open_worker): Likewise.
2460         * elf/rtld.c (dl_main): Likewise.
2462 2004-09-09  GOTO Masanori  <gotom@debian.or.jp>
2464         [BZ #77]
2465         * elf/dl-close.c: Count down l_opencount to check not only for
2466         l_reldeps, but also l_initfini.
2468 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
2470         * elf/dl-close.c (_dl_close): Update bug reporting instructions.
2472 2004-10-11  Ulrich Drepper  <drepper@redhat.com>
2474         * timezone/asia: Update from tzdata2004e.
2475         * timezone/southamerica: Likewise.
2476         * timezone/private.h: Update from tzcode2004e.
2477         * timezone/zdump.c: Likewise.
2479         * stdio-common/vfscanf.c: Add support for reading localized
2480         digits.  Patch mainly by Hamed Malek <hamed@bamdad.org>.
2482         * resolv/res_init.c (res_thread_freeres): Reset _res.options.
2483         [BZ #434]
2485         * resolv/res_send.c (send_dg): Use nonblocking sockets.  Add
2486         appropriate poll/select calls and restart operation if necessary.
2487         Also handle EINTR.
2489         * elf/tst-dlopenrpath.c (do_test): Enable code which was disabled
2490         for debugging.
2492         * elf/dl-sym.c (do_sym): Avoid using global variable.
2494         * elf/dl-addr.c (_dl_addr): Really use match everywhere.
2496 2004-10-09  Andreas Schwab  <schwab@suse.de>
2498         * sysdeps/m68k/memcopy.h (WORD_COPY_BWD): Remove use of cast as
2499         lvalue.
2501         * sysdeps/m68k/fpu/bits/mathinline.h: Remove __THROW from inline
2502         definitions.
2504 2004-10-07  Andreas Schwab  <schwab@suse.de>
2506         * misc/sys/uio.h: Change __vector to __iovec to avoid clash with
2507         altivec.
2509 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
2511         * gmon/Makefile (CFLAGS-mcount.c): Move before inclusion of "Rules".
2512         * sysdeps/powerpc/powerpc64/Makefile (CFLAGS-mcount.c): Add
2513         -msoft-float.
2514         * sysdeps/powerpc/powerpc64/sysdep.h (SAVE_ARG, REST_ARG): New macros.
2515         (CALL_MCOUNT): Replace with a gas macro implementation.
2516         (EALIGN): Delete PROF version.
2517         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Invoke CALL_MCOUNT.
2518         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Likewise.
2519         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
2520         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
2521         * sysdeps/powerpc/powerpc64/memcpy.S: Likewise.
2522         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
2523         * sysdeps/powerpc/powerpc64/stpcpy.S: Likewise.
2524         * sysdeps/powerpc/powerpc64/strchr.S: Likewise.
2525         * sysdeps/powerpc/powerpc64/strcmp.S: Likewise.
2526         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
2527         * sysdeps/powerpc/powerpc64/strlen.S: Likewise.
2528         * sysdeps/powerpc/powerpc64/strncmp.S: Likewise.
2529         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Likewise.
2530         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Likewise.
2531         * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Likewise.
2532         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Likewise.
2533         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Likewise.
2534         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: Likewise.
2535         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: Likewise.
2536         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: Likewise.
2537         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: Likewise.
2538         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Likewise.
2539         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Likewise.
2540         * sysdeps/powerpc/powerpc64/fpu/s_round.S: Likewise.
2541         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Likewise.
2542         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Likewise.
2543         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Likewise.
2545         * sysdeps/powerpc/powerpc64/setjmp-common.S: Add extra entry point
2546         past _mcount call.
2547         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Use it.
2548         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
2550 2004-10-06  Ulrich Drepper  <drepper@redhat.com>
2552         * resolv/res_mkquery.c (res_nmkquery): Reject randombits value if
2553         low 16 bits are zero.
2555 2004-10-06  Jakub Jelinek  <jakub@redhat.com>
2557         * posix/tst-getaddrinfo2.c: Include stdlib.h and string.h.
2558         (do_test): Use %p instead of 0x%08X to print a pointer.
2560         * malloc/malloc.c: Include stdio-common/_itoa.h.
2562 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
2564         * elf/rtld.c (dl_main): Use _dl_debug_printf instead of _dl_printf
2565         for prelink message.
2567 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
2569         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Include dl-sysdep.h.
2570         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
2572 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
2574         * grp/initgroups.c: Remove duplicate group IDs.
2575         * grp/compat-initgroups.c: Likewise.
2576         * nscd/initgrcache.c: Likewise.
2578 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
2580         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (__sysconf): Return 200112L
2581         for _SC_CPUTIME or _SC_THREAD_CPUTIME.
2583         * nscd/Makefile (nscd-cflags): Set to -DIS_IN_nscd=1, plus
2584         -fpie if building PIE.
2585         (CFLAGS-*.c): Use it.
2587         * nscd/Makefile (relro-LDFLAGS): Add -Wl,-z,now if have-z-relro.
2588         ($(objpfx)nscd): Add $(relro-LDFLAGS).
2590         * sysdeps/unix/sysv/linux/i386/sysconf.c: Include hp-timing.h.
2591         (__sysconf): Return -1 for _SC_CPUTIME or _SC_THREAD_CPUTIME if
2592         !HP_TIMING_AVAIL.
2594 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
2596         * nscd/Makefile (distribute): Remove TODO.
2597         * nscd/TODO: Removed.
2599 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
2601         * nscd/gai.c: Define __no_netlink_support if NEED_NETLINK is
2602         defined and __ASSUME_NETLINK_SUPPORT is zero.
2603         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gai.c): Add
2604         -DNEED_NETLINK.
2606         * malloc/mtrace.pl: Avoid calling location unless it is needed for
2607         output.  Patch by Edward Bishop <binutils@gmail.com>.
2609         * nscd/Makefile (CFLAGS-gai.c): Add -fpie.
2611 2004-10-04  H.J. Lu  <hongjiu.lu@intel.com>
2613         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c
2614         (clock_getcpuclockid): Add missing retval.
2616         * sysdeps/unix/sysv/linux/ia64/sysconf.c (linux_sysconf): Fix a typo.
2618 2004-10-04  Roland McGrath  <roland@redhat.com>
2620         * include/errno.h [RTLD_PRIVATE_ERRNO] (errno): Rename the real symbol
2621         to rtld_errno.
2622         * sysdeps/generic/errno.c [RTLD_PRIVATE_ERRNO] (rtld_errno): Define it,
2623         and don't define any other errno names.
2624         * sysdeps/unix/alpha/sysdep.h [RTLD_PRIVATE_ERRNO]: Use rtld_errno in
2625         place of errno.
2626         * sysdeps/unix/i386/sysdep.S: Likewise.
2627         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
2628         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
2629         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
2630         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
2631         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
2632         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
2633         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
2634         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
2635         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
2636         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
2637         * sysdeps/unix/x86_64/sysdep.S: Likewise.
2639         * sysdeps/generic/errno.c [! USE___THREAD] (errno): Use `nocommon'
2640         attribute instead of `section'.
2642 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
2644         * sysdeps/unix/sysv/linux/ia64/sysconf.c: New file.
2645         * sysdeps/unix/sysv/linux/ia64/Dist: Add has_cpuclock.c.
2646         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: Move actual
2647         testing code to...
2648         * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c: ...here.  New file.
2649         * sysdeps/unix/sysv/linux/i386/sysconf.c: Add dynamic check for
2650         _SC_CPUTIME and _SC_THREAD_CPUTIME.
2652         * nscd/connections.c (start_threads): Use sysconf in case
2653         _POSIX_CLOCK_SELECTION or _POSIX_MONOTONIC_CLOCK is not greater zero.
2655         * nscd/Makefile (nscd-modules): Add gai.
2656         * nscd/gai.c: New file.
2657         * nscd/nscd.c: Remove getaddrinfo stub definition.
2659         * assert/assert.h: Give up on using __builtin_expect.
2661         * elf/rtld.c (dl_main): Only skip => output in ldd mode if both
2662         strings are identical.
2664 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
2666         * malloc/arena.c (aligned_heap_area): New variable.
2667         (new_heap): If aligned_heap_area != NULL, attempt to use that
2668         first.  If HEAP_MAX_SIZE << 1 area is already HEAP_MAX_SIZE bytes
2669         aligned, remember the second half in aligned_heap_area.
2670         (delete_heap): Clear aligned_heap_area if deleting the area right
2671         before aligned_heap_area.
2673 2004-10-03  Juerg Billeter  <j@bitron.ch>
2675         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Return -1 if nscd
2676         can't be used.  [BZ #424]
2678 2004-10-03  Ulrich Drepper  <drepper@redhat.com>
2680         Dynamically create new threads if necessary.
2681         * nscd/connections.c (fd_ready): If no thread available for processing
2682         the request, create a new one unless the limit is reached.
2683         (start_threads): Check errors from pthread_create.
2684         * nscd/nscd.h: Declare max_nthreads.
2685         * nscd/nscd_conf.c: Parse max-nthreads entry.
2686         * nscd/nscd.conf: Add max-threads entry.
2687         * nscd/nscd_stat.c: Print current and maximum number of threads.
2689         Implement paranoia mode.
2690         * nscd/connections.c (nscd_init): Mark database and socket descriptors
2691         as close on exec.
2692         (restart): New function.
2693         (restart_p): New function.
2694         (nscd_run): Add missing descrement of nready in case readylist is
2695         empty.
2696         (main_loop_poll): Call restart_p and restart.
2697         (main_loop_epoll): Likewise.
2698         (begin_drop_privileges): Save original UID and GID.
2699         * nscd/nscd.c: Define new variables paranoia, restart_time,
2700         restart_interval, oldcwd, old_gid, old_uid.
2701         (main): Disable paranoia mode if we are not forking.
2702         (check_pid): When re-execing, the PID file contains the same PID as
2703         the current process.  Do not fail in this case.
2704         * nscd/nscd.conf: Add paranoia and restart-interval entries.
2705         * nscd/nscd.h: Define RESTART_INTERVAL.  Declare new variables.
2706         * nscd/nscd_conf.c: Parse paranoia and restart-internal configurations.
2707         * nscd/nscd_stat.c: Print paranoia and restart-internal values.
2709         * nscd/connections.c: Implement alternative loop for main thread
2710         which uses epoll.
2711         * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]
2712         (CFLAGS-connections.c): Add -DHAVE_EPOLL.
2714 2004-10-02  Ulrich Drepper  <drepper@redhat.com>
2716         * nscd/Makefile (CFLAGS-initgrcache.c): Add to CFLAGS-* variables,
2717         don't replace old content.
2719         * nscd/connections.c: Rewrite handling of incoming connections.  All
2720         are handled by one thread which then hands off the descriptors for the
2721         real work to the worker threads.
2722         * nscd/Makefile: Link nscd with librt.
2724         * nscd/selinux.c: Pretty printing.
2726         * nscd/dbg_log.c (dbg_log): Don't add unnecessary newline to
2727         output.  Let syslog do the formatting if debug_level == 0.
2729         * nscd/nscd_helper.c (get_mapping): No need to check timestamp if
2730         nscd_certainly_running is nonzero.
2732 2004-10-02  Simon Josefsson  <jas@extundo.com>
2734         [BZ #420]
2735         * sysdeps/generic/memmem.c [!_LIBC]: Define __builtin_expect, to
2736         make the file usable inside gnulib.
2738 2004-10-01  Ulrich Drepper  <drepper@redhat.com>
2740         * malloc/malloc.c (public_vALLOc): Add missing use of hooks.
2741         (public_pVALLOc): Likewise.
2743         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Always add the
2744         group the caller provided unless there is a real problem.
2746         * posix/bug-glob1.c (prepare): Fix creation of symlink.
2748 2004-09-30  Ulrich Drepper  <drepper@redhat.com>
2750         * posix/Makefile: Add rules to build and run bug-glob1.
2751         * posix/bug-glob1.c: New file.
2753         * iconv/iconv_prog.c (main): Print progress information to stderr.
2755         * nscd/nscd.c (termination_handler): Reset timestamp so that
2756         clients immediately stop using the database.
2758         * nscd/nscd-client.h (__nscd_get_map_ref): Drop volatile from last
2759         parameter.
2760         (__nscd_drop_map_ref): Change second parameter to be a reference to
2761         a variable.  Update variable when cycle count changed.
2762         * nscd/nscd_helper.c (__nscd_get_map_ref): Remove volatile here, too.
2763         * nscd/nscd_getai.c: Correctly use __nscd_drop_map_ref.  Reinitialize
2764         all variables and avoid memory leak in case of retries.
2765         * nscd/nscd_getgr_r.c: Likewise.
2766         * nscd/nscd_gethst_r.c: Likewise.
2767         * nscd/nscd_getpw_r.c: Likewise.
2768         * nscd/nscd_initgroups.c: Likewise.
2770         * nscd/nscd.h: Add declaration of addinitgroups and
2771         readdinitgroups.
2773 2004-09-30  Andreas Jaeger  <aj@suse.de>
2775         * nscd/Makefile (CFLAGS-nscd_initgroups.c): Set to -fpie.
2776         (CFLAGS-initgrcache.c): Set to -fexceptions.
2778 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
2780         * sysdeps/generic/glob.c (glob_in_dir): Don't blindly trust
2781         readdir results; for symlinks or files of unknown type check using
2782         stat whether the file exists.
2784         * posix/tst-gnuglob.c (find_file): Handle leading "./".  Fix
2785         recognition of files.
2787 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
2789         * time/tzfile.c (tzfile_mtime): New variable.
2790         (__tzfile_read): Reread the file if mtime is different.
2792 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
2794         * sysdeps/alpha/fpu/bits/mathinline.h (__fdimf, __fdim, fdimf, fdim):
2795         Handle +inf/+inf.
2796         * sysdeps/powerpc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
2797         * sysdeps/sparc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
2799 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
2801         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use correct constant for
2802         testing result of __nscd_get_map_ref.
2804 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
2806         * sysdeps/i386/fpu/s_fdim.S (__fdim): Handle +inf/+inf.
2807         * sysdeps/i386/fpu/s_fdimf.S (__fdimf): Likewise.
2808         * sysdeps/i386/fpu/s_fdiml.S (__fdiml): Likewise.
2810 004-09-29  Ulrich Drepper  <drepper@redhat.com>
2812         * grp/initgroups.c: Move compat_call implementation...
2813         * grp/compat-initgroups.c: ...to here.  New file.
2814         * grp/Makefile (distribute): Add compat-initgroups.c.
2815         (CFLAGS-initgroups.c): Add -DUSE_NSCD=1.
2816         * mscd/initgrcache.c: New file.
2817         * nscd/nscd_initgroups.c: New file.
2818         * nscd/Makefile (routines): Add nscd_initgroups.
2819         (nscd-modules): Add initgrcache.
2820         * nscd/cache.c (prune_cache): Add support for INITGROUPS entries.
2821         * nscd/connections.c: Handle INITGROUPS requests.
2822         * nscd/nscd-client.h: Define INITGROUPS, initgr_response_header.
2823         Add initgrdata element to struct datahead.  Fix typo in comment.
2824         * nscd/nscd_proto.h: Declare __nscd_getgrouplist.  Fix parameter
2825         type in __nscd_getgrgrid_r.
2826         * nscd/selinux.c (perms): Add INITGROUPS entry.
2828         * nscd/nscd_getai.c: No need to include <sys/mman.h>.
2830         * sunrpc/get_myaddr.c (get_myaddress): Account for interfaces without
2831         assigned addresses.
2832         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
2833         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
2834         * sunrpc/clnt_udp.c (is_network_up): Likewise.
2836         * nscd/nscd.c: Define getaddrinfo hidden so that it is never found
2837         outside.
2839         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_segvflags):
2840         Renamed from si_flags due to conflict with si_flags from <elf.h>.
2842 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
2844         * nscd/nscd_getai.c: Use NO_MAPPING instead of MAP_FAILED for test
2845         of failing __nscd_get_map_ref.  Fix a few typos.
2847         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Make sure
2848         SIGSETXID is not blocked.
2849         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Likewise.
2850         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
2851         * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise.
2852         * sysdeps/generic/sigfillset.c (sigfillset): Don't set SIGSETXID.
2854         * sunrpc/get_myaddr.c (get_myaddress): Fix test for failing
2855         getifaddrs call.
2856         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
2857         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
2858         * sunrpc/Makefile (xtests): Add tst-getmyaddr.
2859         * sunrpc/tst-getmyaddr.c: New file.
2861         * malloc/arena.c (ptmalloc_init): Allow MALLOC_CHECK_==0 to
2862         disable all checking.
2864         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_flags): Add
2865         support to get this value.
2867 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
2869         * io/utime.h (utime): Allow second argument to be NULL.
2871 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
2873         * sysdeps/posix/getaddrinfo.c (gaih_inet): If NAME is a numerical IP
2874         address and AI_CANONNAME is set, return copy of NAME as ai_canonname.
2876 2004-09-27  Andreas Jaeger  <aj@suse.de>
2878         * sysdeps/i386/dl-machine.h (elf_machine_rela_relative): Replace
2879         static inline by auto inline, add always_inline attribute.
2880         (elf_machine_rel): Likewise.
2881         (elf_machine_rela): Likewise.
2882         (elf_machine_lazy_rel): Likewise.
2883         (elf_machine_lazy_rela): Likewise.
2884         (elf_machine_rel_relative): Likewise.
2886 2004-09-27  Ulrich Drepper  <drepper@redhat.com>
2888         * sunrpc/xdr_intXX_t.c: Add xdr_quad_t and xdr_u_quad_t aliases.
2889         * sunrpc/rpc/xdr.h: Declare xdr_quad_t and xdr_u_quad_t.
2890         * sunrpc/rpc_parse.c (get_type): Use "quad_t" for TOK_HYPER.
2891         Otherwise isvectordef will loop infinitely if typedef hyper int64_t
2892         is seen.
2893         (unsigned_dec): Use "u_quad_t" for similar reasons.
2894         * sunrpc/Versions: Export xdr_quad_t and xdr_u_quad_t.
2896 2004-09-27  Roland McGrath  <roland@redhat.com>
2898         * sysdeps/generic/bits/waitstatus.h (__WIFSIGNALED): Simplify bit
2899         twiddling in last change.
2901         * posix/tst-waitid.c (do_test): Add tests for waitpid with WCONTINUED.
2903         [BZ #409]
2904         * posix/sys/wait.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
2905         * stdlib/stdlib.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
2906         * sysdeps/generic/bits/waitstatus.h (__W_CONTINUED): New macro.
2907         [WCONTINUED] (__WIFCONTINUED): New macro.
2908         (__WIFSIGNALED): Rewritten to exclude __W_CONTINUED value, and have no
2909         branches.
2911         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Add fifth argument to
2912         all three syscall uses, not just one!
2914 2004-09-26  Richard Henderson  <rth@redhat.com>
2916         * sysdeps/alpha/alphaev6/memcpy.S: Mark .prologue.
2917         * sysdeps/unix/alpha/sysdep.h (LEAF, ENTRY): Align entry points
2918         to 16 byte boundaries.
2920 2004-09-26  Ulrich Drepper  <drepper@redhat.com>
2922         * elf/readlib.c (process_file): Before complaining about too-short
2923         file, check that it potentially be an ELF file.  Also complain about
2924         empty files.  [BZ #151].
2926         * scripts/test-installation.pl: Fix ld.so recognition for new
2927         LD_TRACE_LOADED_OBJECTS output format.
2928         Patch by <jsberg04+computing.glibc@ftml.net>  [BZ #407].
2930         * elf/dl-support.c (_dl_non_dynamic_init): Fix cleaning of
2931         environment.  [BZ #384]
2933         * sunrpc/clnt_udp.c (is_network_up): Use getifaddrs instead of ioctl.
2934         * sunrpc/get_myaddr.c (get_myaddress): Likewise.
2935         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
2936         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.  Change interface
2937         to avoid buffer overrun and remove now useless parameters.
2938         (clnt_broadcast): Adjust caller.  [BZ #381].
2940         * sysdeps/generic/s_fdim.c: Handle +inf/+inf
2941         * sysdeps/generic/s_fdimf.c: Likewise.
2942         * sysdeps/generic/s_fdiml.c: Likewise.
2943         * sysdeps/i386/i686/fpu/s_fdim.S: Likewise.
2944         * sysdeps/i386/i686/fpu/s_fdimf.S: Likewise.
2945         * sysdeps/i386/i686/fpu/s_fdiml.S: Likewise.
2946         * sysdeps/powerpc/fpu/s_fdim.c: Likewise.
2947         * sysdeps/powerpc/fpu/s_fdimf.c: Likewise.
2948         * sysdeps/x86_64/fpu/s_fdiml.S: Likewise.
2949         * math/libm-test.inc (fdim_test): Add test case.  [BZ #376].
2951         * sysdeps/generic/bits/types.h: Fix __SQUAD_TYPE and __UQUAD_TYPE
2952         for compilers without __GLIBC_HAVE_LONG_LONG.  [BZ #362]
2954         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Remove incorrect
2955         requirement on socktype and protocol.
2956         (gaih_inet): If numeric port number is given, return records for all
2957         possible socket types.
2958         * posix/tst-getaddrinfo2.c: New file.
2959         * posix/Makefile (tests): Add tst-getaddrinfo2.  [BZ #358]
2961 2004-09-25  Ulrich Drepper  <drepper@redhat.com>
2963         * locale/loadlocale.c (_nl_intern_locale_data): Recognize LC_CTYPE
2964         data where _nl_value_type_LC_CTYPE does not contain the type
2965         information.  Add range checks.
2966         Reported by John Lumby <johnlumby@hotmail.com> [BZ #356].
2968         * libio/vasprintf.c (_IO_vasprintf): Fix condition to decide
2969         whether to realloc or not.
2970         Reported by Pavel Kankovsky <peak@argo.troja.mff.cuni.cz> [BZ #346].
2972         * intl/dcigettext.c (DCIGETTEXT): Protect tfind/tsearch calls.
2973         * intl/dcigettext.c (_nl_find_msg): Call _nl_load_domain also if
2974         decided < 0.
2975         * intl/finddomain.c (_nl_find_domain): Likewise.
2976         * intl/loadmsgcat.c (_nl_load_domain): Set decided to 1 only once we
2977         are done.  First set to -1 to signal initialization is ongoing.
2978         Protect against concurrent callers with recursive lock.
2979         * intl/finddomain.c (_nl_find_domain): Protect calls to
2980         _nl_make_l10nflist.  [BZ #322]
2982         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If determinination of
2983         source address fails, initialized source_addr_len field so that
2984         duplicate address recognition does not copy junk.
2986 2004-09-25  Jakub Jelinek  <jakub@redhat.com>
2988         * sysdeps/unix/sysv/linux/i386/setuid.c (__setuid): Remove second
2989         result declaration.
2991 2004-09-22  Andreas Schwab  <schwab@suse.de>
2993         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Adjust whitespace.
2995 2004-09-24  Ulrich Drepper  <drepper@redhat.com>
2997         * misc/daemon.c (daemon): Don't succeed if /dev/null cannot be
2998         opened.
3000         * nis/ypclnt.c (do_ypcall): Add one missing unlock.  Simplify the
3001         code a bit.
3003         * misc/daemon.c (daemon): Define errno in case /dev/null is not
3004         the correct device.
3006         * nis/ypclnt.c (yp_bind_file): Optimize a bit.  Minimal cleanups.
3008 2004-09-23  Andreas Jaeger  <aj@suse.de>
3010         * locale/weight.h (findidx): Remove static, it's not supported
3011         anymore with GCC 4.0 in a block scope.
3012         * locale/weightwc.h (findidx): Likewise.
3013         * posix/regcomp.c (seek_collating_symbol_entry): Likewise.
3014         (lookup_collation_sequence_value): Likewise.
3015         (build_range_exp): Likewise.
3016         (build_collating_symbol): Likewise.
3017         * iconv/iconvconfig.c (write_output): Likewise.
3018         * elf/do-rel.h (elf_dynamic_do_rel): Likewise.
3020         * sysdeps/x86_64/dl-machine.h (elf_machine_rela_relative): Remove
3021         static, add always_inline attribute.
3022         (elf_machine_rela): Likewise.
3023         (elf_machine_lazy_rel): Likewise.
3025         * elf/dynamic-link.h (elf_get_dynamic_info): Make static dependend
3026         on !RESOLVE so that it's not defined in local scope.
3028 2004-09-23  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3030         * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL_NCS): Define.
3032 2004-09-23  Thorsten Kukuk  <kukuk@suse.de>
3034         * sysdeps/unix/sysv/linux/sys/mount.h: Sync MS_RMT_MASK flag
3035         and BLK* ioctls with linux kernel headers.
3037 2004-09-23  Ulrich Drepper  <drepper@redhat.com>
3039         * sysdeps/generic/bits/dlfcn.h: Add RTLD_DEEPBIND.
3040         * elf/dl-object.c (_dl_new_object): Add new parameter mode.  If mode
3041         has RTLD_DEEPBIND set add local searchlist before global scope.
3042         * sysdeps/generic/ldsodefs.h (_dl_new_object): Adjust prototype.
3043         * elf/rtld.c: Adjust callers of _dl_new_object.
3044         * elf/dl-load.c: Likewise.
3045         (_dl_map_object_from_fd): If RTLD_DEEPBIND is used, don't do anything
3046         for DF_SYMBOLIC.
3047         * elf/dl-open.c (dl_open_writer): Pass RTLD_DEEPBIND flag on to
3048         _dl_map_object_deps.
3049         * elf/tst-deep1.c: New file.
3050         * elf/tst-deep1mod1.c: New file.
3051         * elf/tst-deep1mod2.c: New file.
3052         * elf/tst-deep1mod3.c: New file.
3053         * elf/Makefile: Add rules to build and run new tests.
3055         * elf/dl-deps.c: Pretty printing.
3057 2004-09-23  Jakub Jelinek  <jakub@redhat.com>
3059         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
3060         argument to numbers from syscall names.
3061         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
3062         (INTERNAL_SYSCALL_NCS): Renamed from...
3063         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
3064         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
3065         (INTERNAL_SYSCALL_NCS): Define.
3066         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
3067         (INTERNAL_SYSCALL_NCS): Likewise.
3068         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
3069         Change name argument to numbers from syscall names.
3070         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
3071         (INTERNAL_SYSCALL_NCS): Define.
3073 2004-09-22  Ulrich Drepper  <drepper@redhat.com>
3075         * malloc/malloc.c (malloc_printerr): Use syslog if writev failed.
3077         * string/string.h: Add __nonnull annotations.
3078         * stdlib/stdlib.h: Likewise.
3080 2004-09-20  H.J. Lu  <hongjiu.lu@intel.com>
3082         * sysdeps/unix/sysv/linux/ia64/sysdep.h (DO_INLINE_SYSCALL):
3083         Renamed to ...
3084         (DO_INLINE_SYSCALL_NCS): This.
3085         (DO_INLINE_SYSCALL): New.
3086         (INLINE_SYSCALL): Updated.
3087         (INTERNAL_SYSCALL_NCS): Updated.
3089 2004-09-21  Ulrich Drepper  <drepper@redhat.com>
3091         * elf/sprof.c (load_shobj): Add support for reading symbol table
3092         from debuginfo file.
3094         * elf/ldd.bash.in: Fix syntax errors.
3096 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
3098         * sysdeps/unix/sysv/linux/dl-execstack.c
3099         (_dl_make_stack_executable): Remove some duplication.
3101         * nscd/nscd.c (options): Mark S option as hidden.
3102         (parse_opt): When S option is used, print warning message.
3103         * nscd/grpcache.c (adgrptbyX): Don't handle secure mode.
3104         * nscd/hstcache.c (addhstbyX): Don't handle secure mode.
3105         * nscd/aicache.c (addhstaiX): Don't handle secure mode.
3106         * nscd/pwdcache.c (addpwbyX): Don't handle secure mode.
3108 2004-09-20  Roland McGrath  <roland@frob.com>
3110         * elf/dl-load.c (__stack_prot): Only use PROT_GROWSUP/PROT_GROWSDOWN
3111         in initializer #if defined.
3113 2004-09-18  Paul Eggert  <eggert@cs.ucla.edu>
3115         [BZ #391]
3116         * stdlib/getsubopt.c: Merge fixes from gnulib.
3117         (__strchrnul) [!_LIBC]: Define and include "strchrnul.c".
3118         (getsubopt): Use prototypes, not K&R style.
3119         Fix bug: memcmp(A,B,N) was being invoked on a memory block B
3120         whose size might be smaller than N.  Use strncmp to avoid the bug.
3122 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
3124         * configure.in: If selinux has not explictly been requested, don't
3125         comment on it missing.
3127         * elf/dl-load.c: Define __stack_prot.
3128         * sysdeps/unix/sysv/linux/dl-execstack.c: Don't define
3129         __stack_prot here, just declare it.
3131 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
3133         * configure.in (libc_cv_z_relro): Only set to yes if linker script
3134         contains DATA_SEGMENT_RELRO_END.
3136 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
3138         * elf/dl-load.c (_dl_map_object_from_fd): Add some error checking.
3139         Reorder code slightly.
3140         * elf/rtld.c (dl_main): No need to check whether l_info[DT_HASH]
3141         is non-null, _dl_setup_hash will do that.
3143 2004-09-19  Ulrich Drepper  <drepper@redhat.com>
3145         * sysdeps/unix/sysv/linux/setegid.c [HAVE_PTR__NPTL_SETXID]: Call
3146         callback to set IDs in all other threads as well.
3147         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
3148         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
3149         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
3150         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
3151         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
3152         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
3153         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
3154         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
3155         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
3156         * sysdeps/unix/sysv/linux/setuid.c: New file.
3157         * sysdeps/unix/sysv/linux/setgid.c: New file.
3158         * sysdeps/unix/sysv/linux/setreuid.c: New file.
3159         * sysdeps/unix/sysv/linux/setregid.c: New file.
3160         * sysdeps/unix/sysv/linux/setresuid.c: New file.
3161         * sysdeps/unix/sysv/linux/setresgid.c: New file.
3162         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NCS.
3163         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
3164         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
3165         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
3166         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
3167         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c: Use x86 version.
3168         * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c: Likewise.
3169         * sysdeps/unix/sysv/linux/sparc/sparc32/setresgid.c: New file.
3170         * sysdeps/unix/sysv/linux/sparc/sparc32/setresuid.c: New file.
3171         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove setresgid
3172         and setresuid.
3173         * nscd/aicache.c: Use pthread_seteuid_np instead of seteuid.
3174         * nscd/grpcache.c: Likewise.
3175         * nscd/hstcache.c: Likewise.
3176         * nscd/pwdcache.c: Likewise.
3178         * resolv/res_mkquery.c (res_nmkquery): Fix typo.
3180 2004-09-18  Ulrich Drepper  <drepper@redhat.com>
3182         * sysdeps/unisx/sysv/linux/dl-execstack.c: Get protection flag
3183         from memory.
3184         * elf/dl-load.c (_dl_map_object_from_fd): Add PROT_EXEC flag to
3185         __stack_flags.
3187         * sysdeps/posix/getaddrinfo.c (gaih_inet): Do not use
3188         gethostbyname3_r if we are not looking for the canonical name.
3190         * resolv/res_mkquery.c (res_nmkquery): Randomize request ID every
3191         time.
3193 2004-09-18  Roland McGrath  <roland@redhat.com>
3195         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Pass fifth argument to
3196         system call.
3198 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
3200         * include/link.h (struct link_map): Add l_used element.
3201         * sysdeps/generic/ldsodefs.h: Define DL_DEBUG_UNUSED.
3202         * elf/rtld.c (process_dl_debug): Recognize unused.
3203         (dl_main): When unused debug flag is set check for unused direct
3204         dependencies.
3205         When printing dependencies and SONAME starts with /, omit the SONAME =>
3206         part.
3207         * elf/dl-lookup.c (_dl_lookup_symbol_x): Mark object in which the
3208         symbol has been found as used.
3209         * elf/ldd.bash.in: Add -u option.
3211 2004-09-18  Jakub Jelinek  <jakub@redhat.com>
3213         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
3214         Do nothing if __NR_set_tid_address is not defined.  [BZ #390]
3216 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
3218         * sysdeps/posix/getaddrinfo.c: Use gethostbyname3_r NSS function
3219         in case it is available.
3221 2004-09-17  Jakub Jelinek  <jakub@redhat.com>
3223         * nscd/nscd.c (parse_opt): Write arg string instead of (void *)
3224         key to the socket.
3226 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
3228         * misc/sys/cdefs.h: Define __nonnull using nonnull function attribute
3229         for gcc 3.3 and higher.
3230         * io/fcntl.h: Add __nonnull where appropriate.
3231         * io/ftw.h: Likewise.
3232         * io/utime.h: Likewise.
3233         * io/sys/poll.h: Likewise.
3234         * io/sys/sendfile.h: Likewise.
3235         * io/sys/stat.h: Likewise.
3236         * io/sys/statfs.h: Likewise.
3237         * io/sys/statvfs.h: Likewise.
3238         * posix/unistd.h: Likewise.
3239         * catgets/nl_types.h: Likewise.
3240         * crypt/crypt.h: Likewise.
3241         * debug/execinfo.h: Likewise.
3243 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
3245         * posix/glob.h: Remove cruft to make header usable outside glibc.
3246         The maintenance headache is too big.
3248         * configure.in: Add test for required SELinux features.
3249         * config.make.in: Add have-selinux entry.
3250         * config.h.in: Add HAVE_SELINUX entry.
3251         * nscd/Makefile (nscd-modules): Add selinux.
3252         (CFLAGS-selinux.c): Add -fpie.
3253         Define selinux-LIBS and use in link line.
3254         * nscd/connections.c (handle_request): Check access SELinux permissions
3255         before processing request.
3256         * nscd/nscd.c (main): Initialize selinux_enabled and stop avc thread.
3257         * nscd/nscd_stat.c: Transmit and print AVC statistics.
3258         * nscd/selinux.c: New file.
3259         * nscd/selinux.h: New file.
3260         Patch mostly by Matthew Rickard <mjricka@epoch.ncsc.mil>.
3262 2004-09-16  Jakub Jelinek  <jakub@redhat.com>
3264         * nscd/nscd_helper.c (__nscd_unmap, get_mapping): Use __munmap
3265         instead of munmap.
3267         * nscd/Makefile (CFLAGS-aicache.c): Set to -fpie.
3269 2004-09-16  Thorsten Kukuk  <kukuk@suse.de>
3271         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check
3272         __nss_not_use_nscd_hosts variable if nscd should be used or not.
3274 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
3276         * nscd/nscd_proto.h: Define NSS_NSCD_RETRY.
3277         Add __nscd_getai prototype.
3278         * nss/getXXbyYY_r.c: Remode definition of NSS_NSCD_RETRY.
3279         * nscd/nscd-client.h: Remove __nscd_getai prototype.
3280         * nscd/nscd_getai.c: Include nscd_proto.h.
3282         * elf/ldd.bash.in: Add support for SELinux environments.
3283         Patch by Stephen Smalley <sds@epoch.ncsc.mil>.
3285 2004-09-16  Roland McGrath  <roland@redhat.com>
3287         * configure.in (--with-headers): Let argument contain a : separated
3288         list of directories to use, not just one.
3289         * configure: Regenerated.
3291 2004-09-15  Richard Henderson  <rth@redhat.com>
3293         * sysdeps/alpha/fpu/libm-test-ulps: Update.
3294         * scripts/data/c++-types-alpha-linux-gnu.data: New file.
3296 2004-09-15  Ulrich Drepper  <drepper@redhat.com>
3298         * nscd/aicache.c: Prefer using gethostbyname3_r NSS callback to also
3299         get ttl and canonical name.  Use these two values.
3300         * resolv/Versions: Export _nss_dns_gethostbyname3_r from libnss_dns.
3301         * resolv/nss_dns/dns-host.c (getanswer_r): Take two new parameters.
3302         If nonnull fill with TTL and pointer to canonical name respectively.
3303         (_nss_dns_gethostbyaddr_r): Pass NULL in new parameters of getanswer_r.
3304         (_nss_dns_gethostbyname2_r): Just wrapper around
3305         _nss_dns_gethostbyname3_r.
3306         (_nss_dns_gethostbyname3_r): Renamed from _nss_dns_gethostbyname2_r.
3307         Take two new parameters which as passed to getanswer_r.
3309         * nscd/Makefile (rountines): Add nscd_getai.
3310         (nscd-modules): Add aicache.
3311         * nscd/aicache.c: New file.
3312         * nscd/nscd_getai.c: New file.
3313         * nscd/cache.c (prune_cache): Handle GETAI request type.
3314         * nscd/connections.c: Add GETAI support in request handling.
3315         * nscd/nscd-client.h (request_type): Add GETAI.
3316         Define ai_response_header and struct nscd_ai_result types.
3317         (struct datahead): Add aidata field.
3318         Declare __nscd_getai.
3319         * nscd/nscd.c: Add getaddrinfo definition to catch problems.
3320         * nscd/nscd.h: Declare addhstai and readdhstai.
3322         * sysdeps/posix/getaddrinfo.c: Add support for using cached results.
3323         * posix/Makefile (CFLAGS-getaddrinfo.c): Add -DUSE_NSCD.
3325         * nscd/nscd-client.h  (struct datahead): Use uint8_t instead of bool.
3327 2004-09-14  Ulrich Drepper  <drepper@redhat.com>
3329         * misc/sys/cdefs.h: Remove debugging text from __P and __PMT.
3331 2004-09-13  Ulrich Drepper  <drepper@redhat.com>
3333         * misc/sys/cdefs.h: Restore old definition of __P.
3334         * csu/munch.awk: Remove uses of __P and __PMT.
3335         * gmon/gmon.c: Likewise.
3336         * hesiod/hesiod.h: Likewise.
3337         * include/stdio.h: Likewise.
3338         * io/fts.c: Likewise.
3339         * libio/genops.c: Likewise.
3340         * libio/libioP.h: Likewise.
3341         * libio/fileops.c: Likewise.
3342         * libio/iolibio.h: Likewise.
3343         * libio/libio.h: Likewise.
3344         * libio/memstream.c: Likewise.
3345         * libio/oldfileops.c: Likewise.
3346         * libio/oldstdfiles.c: Likewise.
3347         * libio/iopopen.c: Likewise.
3348         * libio/vsnprintf.c: Likewise.
3349         * libio/vswprintf.c: Likewise.
3350         * libio/wgenops.c: Likewise.
3351         * libio/oldiopopen.c: Likewise.
3352         * locale/programs/xmalloc.c: Likewise.
3353         * locale/programs/xstrdup.c: Likewise.
3354         * malloc/mtrace.c: Likewise.
3355         * misc/getttyent.c: Likewise.
3356         * misc/getusershell.c: Likewise.
3357         * nis/rpcsvc/ypupd.h: Likewise.
3358         * posix/fnmatch.h: Likewise.
3359         * posix/glob.h: Likewise.
3360         * resolv/arpa/nameser.h: Likewise.
3361         * resolv/gethnamaddr.c: Likewise.
3362         * resolv/resolv.h: Likewise.
3363         * resolv/inet_net_ntop.c: Likewise.
3364         * resolv/inet_net_pton.c: Likewise.
3365         * resolv/res_init.c: Likewise.
3366         * resolv/nss_dns/dns-network.c: Likewise.
3367         * stdio-common/vfprintf.c: Likewise.
3368         * stdio-common/reg-printf.c: Likewise.
3369         * sysdeps/generic/chflags.c: Likewise.
3370         * sysdeps/generic/fchflags.c: Likewise.
3371         * sysdeps/generic/glob.c: Likewise.
3372         * sysdeps/generic/printf_fphex.c: Likewise.
3373         * sysdeps/generic/memcmp.c: Likewise.
3374         * sysdeps/generic/memcopy.h: Likewise.
3375         * sysdeps/generic/morecore.c: Likewise.
3376         * sysdeps/generic/sstk.c: Likewise.
3377         * sysdeps/posix/sigvec.c: Likewise.
3378         * sysdeps/posix/ttyname_r.c: Likewise.
3379         * sysdeps/standalone/arm/bits/errno.h: Likewise.
3380         * sysdeps/standalone/standalone.h: Likewise.
3381         * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise.
3382         * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
3383         * sysdeps/unix/arm/start.c: Likewise.
3384         * sysdeps/unix/bsd/sigaction.c: Likewise.
3385         * sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise.
3386         * sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise.
3387         * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise.
3388         * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise.
3389         * sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise.
3390         * sysdeps/unix/sparc/start.c: Likewise.
3391         * sysdeps/unix/sysv/getdents.c: Likewise.
3392         * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise.
3393         * sysdeps/unix/sysv/irix4/getgroups.c: Likewise.
3394         * sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
3395         * sysdeps/unix/sysv/irix4/getrusage.c: Likewise.
3396         * sysdeps/unix/sysv/irix4/pathconf.c: Likewise.
3397         * sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
3398         * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise.
3399         * sysdeps/unix/sysv/irix4/start.c: Likewise.
3400         * sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
3401         * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise.
3402         * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise.
3403         * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
3404         * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise.
3405         * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
3406         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
3407         * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise.
3408         * sysdeps/unix/sysv/sysv4/setsid.c: Likewise.
3409         * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
3410         * sysdeps/unix/sysv/sysv4/waitpid.c: Likewise.
3411         * sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise.
3412         * time/tzset.c: Likewise.
3413         * time/strftime_l.c: Likewise.
3414         * time/strptime_l.c: Likewise.
3415         * crypt/md5.h: Likewise.
3417 2004-09-13  Andreas Jaeger  <aj@suse.de>
3419         * configure.in: Support GCC 4.x.
3420         * configure: Regenerated.
3422 2004-09-13  Thorsten Kukuk  <kukuk@suse.de>
3424         * nscd/nscd_stat.c: Don't access dbs[cnt].head for disabled services.
3426         * nscd/nscd.init: Fix path to socket.
3428 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
3430         * nscd/nscd_helper.c (get_mapping): Correctly check cmsg length.
3431         Avoid file descriptor leak in case of size mismatch.
3433         * nscd/nscd-client.h: Fix database structure layout for biarch.
3434         * nscd/mem.c (gc): Add casts to avoid warnings.
3436         * nss/getent.c: Don't preconstruct help message.  Do it only when
3437         needed.
3439         * locale/programs/locale.c: Simplify help message printing.
3441 2004-09-12  Roland McGrath  <roland@frob.com>
3443         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]: Add decls
3444         missing in last change.
3446 2004-09-11  Thorsten Kukuk  <kukuk@suse.de>
3448         * nis/nss_compat/compat-grp.c: Check that buflen is greater zero
3449         before writing data into the buffer with negative offset.
3450         * nis/nss_compat/compat-initgroups.c: Likewise.
3451         * nis/nss_compat/compat-pwd.c: Likewise.
3452         * nis/nss_compat/compat-spwd.c Likewise.
3454 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
3456         * misc/syslog.c (vsyslog): Fix copying of PID in case of
3457         out-of-memory situation.  [BZ #365].
3459         * sysdeps/alpha/fpu/bits/mathinline.h: Use __NTH instead of
3460         __THROW in inline function definitions.
3462         * posix/spawn.h [__USE_GNU]: Define POSIX_SPAWN_USEVFORK.
3463         * posix/spawnattr_setflags.c: Check whether any unknown bit is set
3464         in FLAGS parameter and fail if this is the case.
3465         * sysdeps/posix/spawni.c: Use vfork if POSIX_SPAWN_USEVFORK flag is
3466         set.
3468         * nscd/pwdcache.c (cache_addpw): Sync also negative results to disk.
3469         * nscd/grpcache.c (cache_addgr): Likewise.
3470         * nscd/hstcache.c (cache_addhst): Likewise.
3472 2004-09-11  Roland McGrath  <roland@frob.com>
3474         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]:
3475         Set _dl_phdr and _dl_phnum.
3476         (init1): When bootstrap task, bail early and never examine *D.
3478 2004-09-11  Alfred M. Szmidt  <ams@kemisten.nu>
3480         * sysdeps/mach/hurd/i386/tls.h (__i386_set_gdt) [!HAVE_I386_SET_GDT]:
3481         Cast THR, SEL and DESC to `void'.
3483 2004-09-11  Ulrich Drepper  <drepper@redhat.com>
3485         * nscd/connections.c (nscd_run): Call setup_thread only for enabled
3486         databases.
3488         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Use __NTH for __cmsg_nxthdr.
3490 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
3492         * nscd/nscd.c (pagesize_m1): New variable.
3493         (main): Initialize it.
3494         * nscd/nscd.h: Declare pagesize_m1.
3495         * nscd/hstcache.c: Pass correctly aligned address to msync.
3496         * nscd/grpcache.c: Likewise.
3497         * nscd/pwdcache.c: Likewise.
3499 2004-09-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3501         * sysdeps/unix/sysv/linux/sh/pthread_cond_wait.S: Decrement
3502         __nwaiters.  If pthread_cond_destroy has been called and this is
3503         the last waiter, signal pthread_cond_destroy caller and avoid
3504         using the pthread_cond_t structure after unlock.
3505         * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise.
3507 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
3509         * sysdeps/unix/sysv/linux/kernel-features.h: Don't define
3510         __ASSUME_CLONE_STOPPED.
3512 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
3514         * misc/sys/cdefs.h (__REDIRECT_NTH): Change order of __THROW and
3515         __asm__ for C++.  [BZ #377]
3517 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
3519         * nscd/nscd_stat.c: Improve output by also printing .shared and
3520         .persistent.
3522         * nscd/connections.c: Allow cache sharing to be really disabled.
3524 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
3526         * malloc/malloc.c (_int_free): Only do arena boundary check for
3527         contiguous arenas.
3529 2004-09-10  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
3531         * stdlib/longlong.h [__M32R__] (add_ssaaaa, sub_ddmmss): Fix broken
3532         instruct operands.
3533         * elf/elf.h: Add R_M32R_* relocs.
3535 2004-09-09  Ulrich Drepper  <drepper@redhat.com>
3537         * misc/sys/cdefs.h: Despite what the gcc manual says, gcc 3.2
3538         seems not to support the nothrow attribute.  Use it only for gcc
3539         3.3 and higher.
3541         * malloc/hooks.c (top_check): Print top chunk corruption as normal
3542         error message.
3544         * malloc/malloc.c (malloc_printerr): Don't make informational
3545         message look like error message.
3547 2004-09-09  Andreas Jaeger  <aj@suse.de>
3549         * nscd/Makefile (CFLAGS-nscd_setup_thread.c): Set to -fpie.
3551 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
3553         * sysdeps/unix/sysv/linux/bits/socket.h (__SCM_CONNECT): Removed.
3555         * malloc/malloc.c (_int_free): Add inexpensive double free and
3556         memory corruption tests.
3557         (malloc_printf_nc): Renamed to malloc_printerr.  Second parameter
3558         is no format string anymore.  Don't use stdio.  Adjust all callers.
3559         * malloc/hooks.c: Adjust malloc_printf_nc callers.
3561 2004-09-08  Roland McGrath  <roland@redhat.com>
3563         * malloc/mcheck.c: Don't use __P.
3564         Use prototypes definitions for static functions.
3566 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
3568         * sysdeps/ia64/fpu/bits/mathinline.h: Use __NTH instead of __THROW.
3570 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
3571             Jakub Jelinek  <jakub@redhat.com>
3573         * nscd/nscd-client.h: Add a few #includes.
3575         * nscd/Makefile (nscd-modules): Add nscd_setup_thread.
3576         * nscd/connections.c (nscd_run): Call setup_thread for maintenance
3577         threads.
3578         * nscd/nscd-client.h (struct database_pers_head): Add
3579         nscd_certainly_running field.
3580         * nscd/nscd.h: Declare setup_thread.
3581         * nscd/nscd_helper.c (__nscd_get_map_ref): Avoid the time test if
3582         nscd_certainly_running is nonzero.
3583         * sysdeps/generic/nscd_setup_thread.c: New file.
3584         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: New file.
3586 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
3588         * nscd/connections.c: Implement r/o sharing of nscd's cache with client
3589         processes via shared memory.
3590         * nscd/nscd-client.h: Likewise.
3591         * nscd/nscd.h: Likewise.
3592         * nscd/nscd_conf.c: Likewise.
3593         * nscd/nscd_getgr_r.c: Likewise.
3594         * nscd/nscd_getpw_r.c: Likewise.
3595         * nscd/nscd_gethst_r.c: Likewise.
3596         * nscd/nscd.conf: Add new config parameters.
3597         * nscd/Makefile (aux): Add nscd_helper.
3598         * nscd/nscd_helper.c: New file.
3599         * nscd/mem.c (gc): Indicate beginning and end of the gc cycle.
3601         * nscd/hstcache.c: Simplify a lot.  We cache only the request itself,
3602         no derived information.
3603         * connections.c (nscd_init): Fix bug in testing size of the persistent.
3605         * nis/Makefile (aux): Add nis_hash.
3606         * nis/nis_hash.c: New file.  Split out from nis_util.c.
3607         * nis/nis_util.c: Move __nis_hash code in separate file.
3609         * csu/tst-atomic.c: Improve atomic_increment_val test which would
3610         not have found a ppc bug.
3612         * sysdeps/s390/fpu/bits/mathinline.h: Remove unnecessary includes.
3614         * malloc/arena.c: Remove __MALLOC_P uses.
3615         * malloc/malloc.c: Likewise.
3617         * malloc/mtrace.c: Remove __P uses.
3618         * malloc/mcheck-init.c: Likewise.
3620 2004-09-07  Jakub Jelinek  <jakub@redhat.com>
3622         * sysdeps/powerpc/powerpc64/configure.in: New file.
3623         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
3624         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
3625         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
3626         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
3627         BODY_PREFIX): Define.
3628         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
3629         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
3630         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
3631         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
3632         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
3634 2004-09-07  Ulrich Drepper  <drepper@redhat.com>
3636         * malloc/malloc.h: Don't define __THROW if it is already defined.
3638         * sysdeps/powerpc/bits/atomic.h (atomic_increment): Define.
3639         (atomic_decrement): Define.
3641         * sysdeps/powerpc/bits/atomic.h: Implement atomic_increment_val and
3642         atomic_decrement_val.
3643         * sysdeps/powerpc/powerpc32/bits/atomic.h: Likewise.
3644         * sysdeps/powerpc/powerpc64/bits/atomic.h: Likewise.
3646         * csu/tst-atomic.c (do_test): Add tests of atomic_increment_val
3647         and atomic_decrement_val.
3649         * include/atomic.h: Define atomic_increment_val, atomic_decrement_val,
3650         and atomic_delay is not already defined.
3651         * sysdeps/i386/i486/bits/atomic.h: Define atomic_delay.
3652         * sysdeps/x86_64/bits/atomic.h: Likewise.
3654         * miscd/sys/cdefs.h (__NTH): New macro.
3655         (__THROW): Define using nothrow attribute for C code and gcc >= 3.2.
3656         (__REDIRECT_NTH): New macro.
3657         * argp/argp.h: Use __NTH and __REDIRECT_NTH where necessary.
3658         * ctype/ctype.h: Likewise.
3659         * dirent/dirent.h: Likewise.
3660         * io/fcntl.h: Likewise.
3661         * io/sys/sendfile.h: Likewise.
3662         * io/sys/stat.h: Likewise.
3663         * io/sys/statfs.h: Likewise.
3664         * io/sys/statvfs.h: Likewise.
3665         * libio/bits/stdio.h: Likewise.
3666         * misc/sys/mman.h: Likewise.
3667         * posix/unistd.h: Likewise.
3668         * resource/sys/resource.h: Likewise.
3669         * rt/aio.h: Likewise.
3670         * signal/signal.h: Likewise.
3671         * stdlib/stdlib.h: Likewise.
3672         * string/argz.h: Likewise.
3673         * string/string.h: Likewise.
3674         * sysdeps/generic/inttypes.h: Likewise.
3675         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
3676         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
3677         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
3678         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
3679         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
3680         * sysdeps/unix/sysv/linux/bits/sys/sysmacros.h: Likewise.
3681         * wcsmbs/wchar.h: Likewise.
3683         * sysdeps/generic/glob.c: Use __PMT isntead of __P where appropriate.
3685         * resolv/gethnamaddr.c (getanswer): Remove __P use in variable
3686         definition.
3688         * io/sys/poll.h: Remove __THROW from poll prototype, it's a
3689         cancellation point.
3691         * io/fts.c (fts_open): Remove uses of __P.
3693         * include/stdlib.h: No need to use __THROW in this header.
3695 2004-09-06  Roland McGrath  <roland@frob.com>
3697         * sysdeps/mach/hurd/dl-sysdep.c (__writev): Does use assert on FD
3698         validity, since __assert_fail gets to here anyway.  Just fail.
3700 2004-09-06  Ulrich Drepper  <drepper@redhat.com>
3702         * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix problem with
3703         AF_UNSPEC lookup with AI_CANONNAME of name which has only IPv6
3704         addresses.
3706 2004-09-05  Richard Henderson  <rth@redhat.com>
3708         * sysdeps/alpha/fpu/fraiseexcpt.c: Remove file.
3709         * sysdeps/unix/sysv/linux/kernel-features.h
3710         (__ASSUME_IEEE_RAISE_EXCEPTION): New.
3711         * sysdeps/unix/sysv/linux/alpha/fraiseexcpt.c: New file.
3712         * sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h: New file.
3713         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use it.
3714         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
3716 2004-09-05  Richard Henderson  <rth@redhat.com>
3718         * sysdeps/alpha/div.S: Save and restore FPCR around fp operations.
3719         * sysdeps/alpha/divl.S, sysdeps/alpha/divq.S, sysdeps/alpha/divqu.S,
3720         sysdeps/alpha/ldiv.S, sysdeps/alpha/reml.S, sysdeps/alpha/remq.S,
3721         sysdeps/alpha/remqu.S: Likewise.
3722         * sysdeps/alpha/div_libc.h (FRAME): Increase to 64.
3724 2004-09-05  Ulrich Drepper  <drepper@redhat.com>
3726         * nscd/cache.c (cache_add): Correctly log GETHOSTBYADDR and
3727         GETHOSTBYADDRv6 requests.
3729 2004-09-04  Ulrich Drepper  <drepper@redhat.com>
3731         * nscd/pwdcache.c (cache_addpw): Use correct key length in
3732         cache_add calls.
3733         * nscd/grpcache.c (cache_addgr): Likewise.
3735 2004-09-03  Alfred M. Szmidt  <ams@kemisten.nu>
3737         * sysdeps/mach/hurd/i386/tls.h (THREAD_DTV): Changed type of _DTV
3738         to `dtv_t *'.
3740 2004-09-03  Ulrich Drepper  <drepper@redhat.com>
3742         * nscd/nscd.c (parse_opt): Use writev instead of two write for
3743         invalidate command.
3745 2004-09-02  Ulrich Drepper  <drepper@redhat.com>
3747         * nscd/connections.c (nscd_run): Check early for invalid request types.
3749 2004-09-02  Roland McGrath  <roland@frob.com>
3751         * sysdeps/mach/hurd/i386/tls.h (TLS_INIT_TP_EXPENSIVE): New macro.
3752         (INSTALL_NEW_DTV, THREAD_DTV): Rewritten to fetch the right word.
3753         (THREAD_SELF): New macro.
3755 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
3757         [BZ #357]
3758         * stdlib/tst-setcontext.c (test_stack): Added test for stack clobber.
3759         (main): Call test_stack.
3760         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
3761         (__getcontext): Push stack frame then save parms in local frame.
3762         Improve instruction scheduling.
3763         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
3764         (__swapcontext): Likewise.
3766 2004-09-01  Andreas Schwab  <schwab@suse.de>
3768         * sysdeps/unix/sysv/linux/ia64/sys/ucontext.h [g++ >= 3.5]: Use
3769         __builtin_offsetof.
3771 2004-09-01  Jakub Jelinek  <jakub@redhat.com>
3773         [BZ #361]
3774         * posix/fnmatch_loop.c (FCT): For backslash between brackets, branch
3775         to normal_bracket after fetching the next character.
3776         * posix/tst-fnmatch.input: Add 25 new tests.
3777         Reported by Markus Oberhumer <markus@oberhumer.com>.
3779 2004-09-01  Ulrich Drepper  <drepper@redhat.com>
3781         * elf/rtld.c (dl_main): First check existence of ld.so.preload
3782         with access.
3784 2004-09-01  Roland McGrath  <roland@redhat.com>
3786         * sysdeps/unix/sysv/linux/bits/waitflags.h
3787         (WSTOPPED, WEXITED, WCONTINUED, WNOWAIT): New macros.
3788         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_WAITID_SYSCALL):
3789         New macro.
3790         * sysdeps/unix/sysv/linux/waitid.c: New file.  Use new syscall when
3791         available, or fall back to the waitpid-based generic code.
3793 2004-08-14  Alfred M. Szmidt  <ams@kemisten.nu>
3795         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Let gcc
3796         clobber the `ebp' register.
3797         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Removed.
3798         Reverts change from 2004-05-07 by Jeroen Dekkers.
3800         * sysdeps/mach/hurd/i386/init-first.c (init): Changed the type of
3801         NEWSP from `void *' to `int *'.  Changed all casts accordingly.
3803 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
3805         * wcsmbs/wcsmbsload.c (__wcsmbs_getfct): Move attribute_hidden
3806         before return type.
3807         * locale/localename.c (__current_locale_name): Likewise.
3809 2004-08-30  Roland McGrath  <roland@frob.com>
3811         * scripts/extract-abilist.awk: If `lastversion' variable defined, omit
3812         later sets from output.
3813         * Makerules (check-abi): Pass option to set that with value of
3814         LIB-abi-frozen variable if one is set.
3816         * abilist/libcidn.abilist: New file (empty).
3818 2004-08-30  Jakub Jelinek  <jakub@redhat.com>
3820         * posix/bits/posix1_lim.h (_POSIX_CHILD_MAX, _POSIX_OPEN_MAX): If
3821         not __USE_XOPEN2K, use the Unix98 mandated values.
3823 2004-08-27  Roland McGrath  <roland@redhat.com>
3825         * configure.in (usetls): Default to yes.
3826         * configure: Regenerated.
3828 2004-08-26  Roland McGrath  <roland@redhat.com>
3830         * configure.in (add_ons_automatic): New variable, set to yes or no
3831         indicating --enable-add-ons with no explicit list.
3832         (running add-on fragments): Allow a fragment to modify $libc_add_on
3833         and have that affect its place in the list of add-ons to use.
3834         * configure: Regenerated.
3836 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
3838         * nscd/cache.c: Major rewrite.  The data is now optionally kept in
3839         a mmaped memory region which is automatically mirrored on disk.
3840         This implements persistent data storage.  The Memory handled
3841         needed to be completely revamped, it now uses a garbage collection
3842         mechanism instead of malloc.
3843         * nscd/connections.c: Likewise.
3844         * nscd/nscd.c: Likewise.
3845         * nscd/nscd.h: Likewise.
3846         * nscd/nscd_conf.c: Likewise.
3847         * nscd/nscd_stat.c: Likewise.
3848         * nscd/grpcache.c: Likewise.
3849         * nscd/hstcache.c:: Likewise.
3850         * nscd/pwdcache.c:: Likewise.
3851         * nscd/Makefile: Add rules to build mem.c.
3852         * nscd/mem.c: New file.
3853         * nscd/nscd.conf: Describe new configuration options.
3855 2004-08-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3857         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
3858         NO_SGIDEFS_H isn't defined.
3859         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
3860         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
3862         * sysdeps/unix/sysv/linux/sh/pread.c: Define NO_SGIDEFS_H and
3863         _MIPS_SIM.
3864         * sysdeps/unix/sysv/linux/sh/pwrite.c: Likewise.
3865         * sysdeps/unix/sysv/linux/sh/pread64.c: Likewise.
3866         * sysdeps/unix/sysv/linux/sh/pwrite64.c: Likewise.
3868 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
3870         * nscd/connections.c (nscd_run): atomic_increment was not missing.
3872         * sysdeps/gnu/Makefile (libdl-sysdep_routines): Don't add eval.
3873         Patch by Greg Schafer.
3875 2004-08-25  Richard Henderson  <rth@redhat.com>
3877         * sysdeps/alpha/elf/start.S (_start): Use $15 as frame unwind
3878         instead of $31.  Zero $15.
3879         * sysdeps/unix/sysv/linux/alpha/clone.S (thread_start): Likewise.
3881 2004-08-25  Ulrich Drepper  <drepper@redhat.com>
3883         * sysdeps/powerpc/powerpc64/bits/atomic.h
3884         (__arch_compare_and_exchange_bool_32_acq): Fix case where oldval
3885         is negative.
3886         (__arch_compare_and_exchange_bool_32_rel): Likewise.
3888         * nscd/connections.c: Make socket nonblocking so that threads
3889         don't get stuck on accept.  Fix locking.
3891         * nscd/grpcache.c (cache_addgr): Use copy of original key in hash
3892         entry with alternative key.
3893         * nscd/pwdcache.c (cache_addpw): Likewise.
3895 2004-08-25  Richard Sandiford  <rsandifo@redhat.com>
3897         * sysdeps/mips/dl-machine.h (_dl_start_user): Don't set
3898         __libc_stack_end.
3900 2004-08-23  Ulrich Drepper  <drepper@redhat.com>
3902         * sysdeps/gnu/netinet/udp.h: Cosmetic changes.  Remove unnecessary
3903         __BEGIN_DECLS/__END_DECLS.
3905 2004-08-23  Andreas Jaeger  <aj@suse.de>
3907         [BZ #341]
3908         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_NOATIME): Define.
3909         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (O_NOATIME): Likewise.
3910         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (O_NOATIME): Likewise.
3911         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (O_NOATIME): Likewise.
3912         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (O_NOATIME): Likewise.
3913         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_NOATIME): Likewise.
3914         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (O_NOATIME): Likewise.
3915         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (O_NOATIME): Likewise.
3916         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_NOATIME): Likewise.
3917         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (O_NOATIME): Likewise.
3918         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (O_NOATIME): Likewise.
3919         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_NOATIME): Likewise.
3920         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (O_NOATIME): Likewise.
3922 2004-08-21  Ulrich Drepper  <drepper@redhat.com>
3924         * malloc/hooks.c (DEFAULT_CHECK_ACTION): Moved to malloc.c.
3925         (check_action): Likewise.
3926         When printing error messages, use malloc_printf_nc now instead of
3927         fiddling with the streams cancellation flag in every place.
3928         * malloc/malloc.c (DEFAULT_CHECK_ACTION): New definition.  Change
3929         default to 3.
3930         (check_action): New variable.
3931         (unlink): Print error message and eventually terminate in case list
3932         is corrupted.
3933         (malloc_printf_nc): New function.  Use it in _int_free.
3934         Change proposed by Arjan van de Ven.
3936         * dlfcn/Makefile: Don't build eval.c anymore.
3938 2004-08-20  Roland McGrath  <roland@frob.com>
3940         * csu/Makefile ($(objpfx)version-info.h): Use printf in place
3941         of echo -e for POSIX.2 portability.
3942         Reported by Paul Jarc <prj@po.cwru.edu>.
3944 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
3946         * sysdeps/posix/getaddrinfo.c (gaih_inet): Minor optimizations in
3947         list generation.
3949         * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't use
3950         getcanonname_r function if AI_CANONNAME flag is not set in
3951         request.
3953         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss):
3954         Initialize mysize with limits only if latter is >= 0.  Use mysize
3955         in malloc call.
3957 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
3959         * sysdeps/posix/getaddrinfo.c (gaih_inet): Cast canon to (char *)
3960         to avoid warning.
3962         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Initialize
3963         status to NSS_STATUS_UNAVAIL.
3965 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
3967         * sysdeps/posix/getaddrinfo.c (gaih_inet): Use h->h_name in the
3968         cannoname lookup since it has the FQDN even if the original NAME
3969         value has not.
3971 2004-08-18  Ulrich Drepper  <drepper@redhat.com>
3973         * sysdeps/posix/getaddrinfo.c (gaih_inet): Store NAME parameter
3974         pointer in new variable ORIG_NAME and use this pointer when
3975         determination of canonical name failed, not the possibly IDN
3976         translated value of NAME.
3978 2004-08-17  Ulrich Drepper  <drepper@redhat.com>
3980         * resolv/resolv.h (RES_DEFAULT): Add RES_NOIP6DOTINT.
3981         * resolv/res_init.c (res_setoptions): Recognize ip6-dotint option.
3982         Reset RES_NOIP6DOTINT flag in this case..
3984         * sysdeps/posix/getaddrinfo.c: Fix memory handling of
3985         ai_canonname.
3987 2004-08-16  Ulrich Drepper  <drepper@redhat.com>
3989         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Don't use
3990         CNAME records, we better follow the chain of CNAME records which
3991         can be accomplished with A/AAAA lookups.
3993 2004-08-15  Roland McGrath  <roland@redhat.com>
3995         * sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who):
3996         Remove __RUSAGE_BOTH constant and RUSAGE_BOTH macro.
3997         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
3998         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
3999         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
4001 2004-08-15  Roland McGrath  <roland@frob.com>
4003         * sysdeps/i386/i686/Makefile (elide-routines.os): Append hp-timing to
4004         this, not ...
4005         (static-only-routines): ... this.
4006         * sysdeps/ia64/Makefile: Likewise.
4007         * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
4008         * sysdeps/sparc/sparc64/Makefile: Likewise.
4009         * sysdeps/x86_64/Makefile: Likewise.
4010         * sysdeps/i386/i686/hp-timing.c: Revert copyright terms change.
4011         * sysdeps/ia64/hp-timing.c: Likewise.
4012         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
4013         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
4015         * csu/elf-init.c: Update copyright terms including special exception
4016         for these trivial files, which are statically linked into executables
4017         that use dynamic linking for the significant library code.
4018         * io/fstat.c: Likewise.
4019         * io/fstat64.c: Likewise.
4020         * io/lstat.c: Likewise.
4021         * io/lstat64.c: Likewise.
4022         * io/stat.c: Likewise.
4023         * io/stat64.c: Likewise.
4024         * stdlib/atexit.c: Likewise.
4025         * sysdeps/alpha/elf/initfini.c: Likewise.
4026         * sysdeps/alpha/elf/start.S: Likewise.
4027         * sysdeps/arm/elf/start.S: Likewise.
4028         * sysdeps/cris/elf/start.S: Likewise.
4029         * sysdeps/generic/initfini.c: Likewise.
4030         * sysdeps/generic/mknod.c: Likewise.
4031         * sysdeps/hppa/elf/initfini.c: Likewise.
4032         * sysdeps/hppa/elf/start.S: Likewise.
4033         * sysdeps/i386/elf/start.S: Likewise.
4034         * sysdeps/i386/i686/hp-timing.c: Likewise.
4035         * sysdeps/ia64/elf/initfini.c: Likewise.
4036         * sysdeps/ia64/elf/start.S: Likewise.
4037         * sysdeps/ia64/hp-timing.c: Likewise.
4038         * sysdeps/m68k/elf/start.S: Likewise.
4039         * sysdeps/mach/start.c: Likewise.
4040         * sysdeps/mips/elf/start.S: Likewise.
4041         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
4042         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
4043         * sysdeps/s390/s390-32/elf/start.S: Likewise.
4044         * sysdeps/s390/s390-32/initfini.c: Likewise.
4045         * sysdeps/s390/s390-64/elf/start.S: Likewise.
4046         * sysdeps/s390/s390-64/initfini.c: Likewise.
4047         * sysdeps/sh/elf/initfini.c: Likewise.
4048         * sysdeps/sh/elf/start.S: Likewise.
4049         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
4050         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
4051         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
4052         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
4053         * sysdeps/standalone/i386/start.S: Likewise.
4054         * sysdeps/standalone/i960/start.S: Likewise.
4055         * sysdeps/standalone/m68k/m68020/start.S: Likewise.
4056         * sysdeps/unix/arm/start.c: Likewise.
4057         * sysdeps/unix/bsd/osf/alpha/start.S: Likewise.
4058         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
4059         * sysdeps/unix/sparc/start.c: Likewise.
4060         * sysdeps/unix/start.c: Likewise.
4061         * sysdeps/unix/sysv/aix/start.s: Likewise.
4062         * sysdeps/unix/sysv/irix4/start.c: Likewise.
4063         * sysdeps/x86_64/elf/initfini.c: Likewise.
4064         * sysdeps/x86_64/elf/start.S: Likewise.
4066 2004-08-15  Roland McGrath  <roland@redhat.com>
4068         [BZ #227]
4069         * sysdeps/unix/sysv/linux/kernel-features.h
4070         (__ASSUME_BRK_PAGE_ROUNDED): New macro.
4071         * sysdeps/unix/sysv/linux/dl-sysdep.c (frob_brk)
4072         [! __ASSUME_BRK_PAGE_ROUNDED]: Adjust the break up if it falls within
4073         the partial page after the dynamic linker's own data segment.
4075 2004-08-15  Ulrich Drepper  <drepper@redhat.com>
4077         * sysdeps/posix/getaddrinfo.c (gaih_inet): Optimize generation of
4078         v4-mapped addresses a bit.
4079         (gethosts): Move alloca out of macro, so that it is done only once.
4081         * sysdeps/posix/getaddrinfo.c (gaih_addrtuple): Change type of
4082         addr to avoid casts.
4083         (gethosts): Removed.
4084         (gethosts2): Renamed to gethosts.  Make it usable for family !=
4085         AF_UNSPEC.  Fix AI_V4MAPPED.
4086         (gaih_inet): Remove use of old gethosts.  Always use what used to be
4087         gethosts2.  If entry is found, try to use the same NSS module's
4088         getcanonname_r function.  Use gethostbyaddr for AI_CANONNAME only
4089         if getcanonname_r was not available.  Fix filtering of AI_V4MAPPED
4090         addresses.  Numerous cleanups.
4091         * resolv/nss_dns/dns-canon.c: New file.
4092         * resolv/Makefile (libnss_dns-routines): Add dns-canon.
4093         * resolv/Versions (libnss_dns): Add _nss_dns_getcanonname_r.
4095         * elf/Makefile: Add rules to build and run tst-dlopenrpath.
4096         * elf/tst-dlopenrpath.c: New file.
4097         * elf/tst-dlopenrpathmod.c: New file.
4099         * intl/tst-gettext.sh: Adjust for change of de.po file to UTF-8.
4100         * intl/tst-gettext.c: Likewise.
4102         * nss/getent.c (ahosts_keys_int): Correctly print IPv6 addresses.
4104         * nss/getent.c: Allow queries for getaddrinfo with AF_INET and
4105         AF_INET6.
4107 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
4109         * po/de.po: Update from translation team.
4111 2004-08-14  Roland McGrath  <roland@frob.com>
4113         * sysdeps/mach/configure: Regenerated.
4114         * sysdeps/mach/hurd/configure: Regenerated.
4116 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
4118         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If RFC3484 sorting is
4119         performed, make sure it is still the first entry after sorting
4120         that has the ai_canonname information.
4122         * sysdeps/posix/getaddrinfo.c (gaih_inet): Really set ai_canonname
4123         only in one entry.
4125 2004-08-13  Daniel Jacobowitz  <dan@debian.org>
4127         * scripts/output-format.sed: Handle default case of three-argument
4128         OUTPUT_FORMAT.
4130         * sysdeps/arm/machine-gmon.h (mcount_internal): Mark as
4131         __attribute_used__.
4133 2004-08-13  Ulrich Drepper  <drepper@redhat.com>
4135         * nss/getent.c (ahosts_keys): ai_canonname is NULL for all but the
4136         first returned entry.  Print name only if not NULL.
4138         * nis/nss_nis/nis-netgrp.c: Remove locking by using data in struct
4139         __netgrent object passed in instead of global variables.
4140         Optimize.
4141         * nis/nss_nisplus/nisplus-netgrp.c: Remove locking by using data
4142         in struct __netgrent object passed in instead of global variables.
4143         * inet/netgroup.h (struct __netgrent): Add service_user field.
4144         Move cursor in anonymous union, add new field location to that
4145         union.
4146         * inet/getnetgrent_r.c: Extensive rewrite to really enable
4147         concurrent uset of set/get/endnetgrent and innetgr.
4148         Reported by Chuck Simmons.
4150         * inet/netgroup.h (struct name_list): Replace name pointer with
4151         zero-sized array.
4152         * inet/getnetgrent_r.c: Adjust code for change in name_list
4153         layout.  Numerous strdup and free calls removed.
4155         * elf/sprof.c (read_symbols): When comparing aliases, prefer
4156         non-hidden over hidden symbols and strong over weak symbols
4157         if both don't start with '_'.
4159         * malloc/malloc.c: Use strong_alias instead of weak_alias wherever
4160         possible.
4162 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
4164         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
4165         RUSAGE_ enums as __RUSAGE_ and adjust macros accordingly.
4166         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
4167         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
4168         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
4169         Define non-standard RLIMIT_ enums as __RLIMIT_ and adjust macros
4170         accordingly.
4172 2004-08-11  Andreas Schwab  <schwab@suse.de>
4174         * resolv/res_libc.c: Move definition of __res_initstamp ...
4175         * resolv/res_init.c: ... here.
4177 2004-08-10  GOTO Masanori  <gotom@debian.or.jp>
4179         * locale/C-time.c: Change default ERA value from NULL to "".
4180         * locale/tst-C-locale.c: Add test case for ERA keywords.
4182 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
4184         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
4185         RLIMIT__ enums as __RLIMIT_ and adjust macros accordingly.
4186         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
4187         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
4189 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
4191         * sysdeps/unix/sysv/linux/bits/resource.h (RLIMIT_SIGPENDING,
4192         RLIMIT_MSGQUEUE): Add.
4193         (RLIMIT_NLIMITS, RLIM_NLIMITS): Adjust.
4194         * sysdeps/unix/sysv/linux/alpha/bits/resource.h (RLIMIT_SIGPENDING,
4195         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
4196         (RLIM_NLIMITS): Adjust.
4197         * sysdeps/unix/sysv/linux/sparc/bits/resource.h (RLIMIT_SIGPENDING,
4198         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
4199         (RLIM_NLIMITS): Adjust.
4200         * sysdeps/unix/sysv/linux/mips/bits/resource.h (RLIMIT_SIGPENDING,
4201         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
4202         (RLIM_NLIMITS): Adjust.
4204 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
4206         * resolv/res_query.c (__libc_res_nsearch): Protect the debugging
4207         printf with #ifdef DEBUG and RES_DEBUG check.
4209         * sysdeps/unix/sysv/linux/bits/shm.h: Move __END_DECLS after
4210         __USE_MISC #endif.
4211         * sysdeps/generic/bits/shm.h: Add __BEGIN_DECLS for __getpagesize
4212         declaration.
4213         * sysdeps/gnu/bits/shm.h: Likewise.
4214         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
4215         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
4216         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
4217         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
4218         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
4220 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
4222         * po/ca.po: Update from translation team.
4224 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
4226         * sysdeps/unix/sysv/linux/bits/shm.h: Add __BEGIN_DECLS for
4227         __getpagesize declaration.
4229 2004-08-11  Roland McGrath  <roland@redhat.com>
4231         * configure.in (libc_cv_cpp_asm_debuginfo): Add missing braces around
4232         commands inside &&.
4233         Reported by Andreas Schwab <schwab@suse.de>.
4234         * configure: Regenerated.
4236         * posix/tst-waitid.c (do_test): Ignore SIGCHLD before cleanup SIGKILL.
4238 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
4240         * time/tzset.c (tzset_internal): Add new parameter which is
4241         nonzero if called through tzset.  Use TZDEFAULT name including
4242         name comparison if the new parameter is zero.  This means implicit
4243         tzset calls will not cause files to be opened and read by tzfile.c
4244         all the time.
4246 2004-08-11  Jakub Jelinek  <jakub@redhat.com>
4248         * rt/tst-timer2.c (do_test): If timer_create fails, just continue.
4249         * rt/tst-timer4.c (do_test): If one of the timer_create calls fails,
4250         return 1 immediately.
4252         * time/tzfile.c (__tzfile_read): Free transitions only if it will
4253         not be reused.
4255         * sysdeps/ieee754/dbl-64/mpa.c: Include <sys/param.h>.
4256         * sysdeps/ieee754/dbl-64/mpa.h (MAX, MIN): Macros removed.
4258         * stdio-common/tst-popen.c: Include <string.h>.
4260         * resolv/res_send.c (__libc_res_nsend): Only define TMPBUF #if DEBUG.
4262         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Remove noreturn
4263         attribute.  Return NULL instead of calling pthread_exit at the end.
4265 2004-08-11  Roland McGrath  <roland@redhat.com>
4267         * iconvdata/testdata/ISO-2022-JP-3: Regenerated.
4269 2004-08-10  Alfred M. Szmidt  <ams@kemisten.nu>
4271         * sysdeps/generic/bits/in.h (struct ip_mreq): Remove definition.
4273 2004-08-10  Jakub Jelinek  <jakub@redhat.com>
4275         * libio/bits/stdio.h (fread_unlocked): Cast 0 to (size_t).
4276         (fwrite_unlocked): When checking if size * n is <= 8, cast each
4277         argument to size_t individually.  Cast n to (void) instead of
4278         (size_t), surround with (), return (size_t) 0 if one of n or size
4279         is 0.  [BZ #316]
4280         * stdio-common/Makefile (tests): Add tst-unlockedio.
4281         * stdio-common/tst-unlockedio.c: New test.
4283 2004-08-09  Roland McGrath  <roland@frob.com>
4285         * manual/install.texi (Supported Configurations): Replace bug-glibc
4286         mention with web URL.
4287         * INSTALL: Regenerated.
4288         * locale/iso-3166.def: Likewise, in comment.
4289         * locale/iso-4217.def: Likewise.
4290         * locale/iso-639.def: Likewise.
4291         * posix/cpio.h: Remove bug reporting comment.
4293 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
4295         * libio/bits/stdio.h (fread_unlocked): Add a couple of (size_t)
4296         casts to handle funny calls with floating point argument values
4297         and signed values correctly and without warning.
4298         (fwrite_unlocked): Likewise.  [BZ #309]
4300         * malloc/memusage.c (me): Use creat64, not creat.
4301         * malloc/memusagestat.c: Fix handling of very large sizes.  [BZ #285]
4302         Patch by Guy Maor <guymaor@yahoo.com>.
4304         * elf/ldconfig.c (options): Mark parameter option names as
4305         translatable.  [BZ #253]  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
4307         * iconv/gconv_charset.h (strip): Also allow comma which is what is
4308         used to separate options.  [BZ #194]
4310 2004-08-09  Roland McGrath  <roland@redhat.com>
4312         * FAQ.in: Refer to web pages instead of bug-glibc.
4313         * FAQ: Regenerated.
4315         * time/strptime_l.c: #include <stdbool.h>, `bool' used in last change.
4317 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
4319         * time/tzset.c (tzset_internal): If TZ is not set do not compare
4320         old and new tz value since it might be /etc/localtime in both
4321         cases although the file changed.  [BZ #154]
4322         Patch by Christian Franke <franke@computer.org>.
4324         * time/tzfile.c (__tzfile_read): Determine dev/ino of file.
4325         Compare with values of previously opened file.  Don't do anything
4326         is they match.
4328 2004-08-08  Ulrich Drepper  <drepper@redhat.com>
4330         * elf/dl-load.c (_dl_map_object): If __RTLD_CALLMAP flag is set,
4331         reset loader before the actual loading.
4332         * elf/dl-open.c (dl_open_worker): If file name contains no path
4333         element determine map of caller.  Pass caller map in this case to
4334         _dl_map_object.  Set __RTLD_CALLMAP in mode.
4335         * include/dlfcn.h (__RTLD_CALLMAP): Define.  [BZ #116]
4336         Patch by Greg Wolodkin <greg@mathworks.com>.
4338         * misc/syslog.c (openlog_internal): Always try both UDP and TCP.
4339         [BZ #108]  Patch mainly by Bjorn Andersson <bjorn@iki.fi>.
4341         * configure.in: Also recognize i786. [BZ #106]
4342         Patch by <pluto@pld-linux.org>.
4344         * resolv/res_query.c (__libc_res_nsearch): Correctly test whether
4345         name contains any dots. [BZ #95]
4347         * resolv/res_send.c: Compiling with DEBUG defined works again.
4348         * resolv/gethnamaddr.c (dprintf): Renamed to Dprintf.  Adjust all
4349         callers.
4351         * resolv/tst-leaks.c (TIMEOUT): Define so that if no server is
4352         available the process is not killed. [BZ #41]
4354         * intl/tst-gettext.c (main): Improve some messages. [BZ #33]
4356         * time/strptime_l.c (__strptime_internal): Fix handling of %Ey.
4357         [BZ #28]
4359         * po/sv.po: Update from translation team.
4361 2004-08-07  Ulrich Drepper  <drepper@redhat.com>
4363         * inet/netinet/in.h: Add more const to the setipv4soucefilter,
4364         getsourcefilter, and setsourcefilter parameter list.
4365         * sysdeps/generic/setipv4sourcefilter.c: Likewise.
4366         * sysdeps/generic/getsourcefilter.c: Likewise.
4367         * sysdeps/generic/setsourcefilter.c: Likewise.
4368         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: Likewise.
4369         * sysdeps/unix/sysv/linux/getsourcefilter.c: Likewise.
4370         * sysdeps/unix/sysv/linux/setsourcefilter.c: Likewise.
4372         * po/tr.po: Update from translation team.
4374 2004-08-06  Ulrich Drepper  <drepper@redhat.com>
4376         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): Fix typo.
4377         Reported by Paolo Bonzini.
4379 2004-08-06  Jakub Jelinek  <jakub@redhat.com>
4381         * sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add
4382         always_inline.
4383         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_runtime_setup,
4384         elf_machine_fixup_plt, elf_machine_plt_conflict): Likewise.
4386         * sysdeps/unix/sysv/linux/netatalk/at.h: Include bits/sockaddr.h
4387         before including linux/atalk.h.
4389         * resolv/res_libc.c: Include atomic.h.
4391         * intl/finddomain.c (free_mem): Rename to...
4392         (_nl_finddomain_subfreeres): ... this.  Add
4393         __libc_freeres_fn_section.
4394         * intl/loadmsgcat.c (_nl_unload_domain): Add
4395         __libc_freeres_fn_section.
4396         * intl/gettextP.h (_nl_unload_domain): Move into #ifdef _LIBC.
4397         Add attribute_hidden.
4398         (_nl_findomain_subfreeres): New prototype.
4399         * iconv/gconv_db.c (free_mem): Call _nl_findomain_subfreeres.
4401 2004-07-30  Guido Guenther  <agx@sigxcpu.org>
4403         * nss/getent.c (passwd_keys): Use strtoul instead of isdigit to
4404         test if the key is numeric or not.
4405         (group_keys): Likewise.
4407 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
4409         * inet/netinet/in.h: Define struct ip_msfilter, IP_MSFILTER_SIZE,
4410         struct group_filter, and GROUP_FILTER_SIZE.
4411         * include/sys/socket.h: Declare __getsockopt.
4412         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: New file.
4413         * sysdeps/unix/sysv/linux/getipv4sourcefilter.c: New file.
4414         * sysdeps/unix/sysv/linux/setsourcefilter.c: New file.
4415         * sysdeps/unix/sysv/linux/getsourcefilter.c: New file. [BZ #211]
4417         * po/ko.po: Update from translation team.
4419 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
4421         * hesiod/hesiod.c (__hesiod_res_get): Use calloc instead of malloc +
4422         memset.
4423         (__hesiod_res_set): Free nsaddrs.
4425         * include/resolv.h (__res_maybe_init): Add prototype.
4426         * resolv/resolv.h (struct __res_state): Add _u._ext.initstamp field.
4427         * resolv/Versions (libc): Add __res_maybe_init@@GLIBC_PRIVATE.
4428         * resolv/res_libc.c (__res_initstamp, lock): New variables.
4429         (res_init): Increase __res_initstamp.
4430         (__res_maybe_init): New function.
4431         * resolv/res_init.c (__res_vinit): Initialize _u._ext.initstamp.
4432         * hesiod/hesiod.c (__hesiod_res_get): Use __res_maybe_init instead
4433         of RES_INIT check and {res_ninit,__res_ninit,res_init} call.
4434         * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise.
4435         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
4436         _nss_dns_gethostbyaddr_r): Likewise.
4437         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
4438         _nss_dns_getnetbyaddr_r): Likewise.
4439         * resolv/gethnamaddr.c (gethostbyname, gethostbyname2,
4440         gethostbyaddr): Likewise.
4441         * resolv/res_data.c (fp_nquery, res_mkquery, res_mkupdate,
4442         res_isourserver, res_sendsigned, res_update, res_search,
4443         res_querydomain): Likewise.
4444         * nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)): Likewise.
4445         * nss/digits_dots.c (__nss_hostname_digits_dots): Likewise.
4446         * nss/getnssent_r.c (__nss_setent, __nss_endent, __nss_getent_r):
4447         Likewise.
4449 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
4451         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set ai_family for
4452         V4-mapped IPv6 addresses and req->ai_family==AF_INET.
4453         Reported by A. Guru <a.guru@sympatico.ca>.
4455         * po/sv.po: Update from translation team.
4456         * po/sk.po: Likewise.
4457         * po/pl.po: Likewise.
4459 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
4460             Ulrich Drepper  <drepper@redhat.com>
4462         * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Don't read more input
4463         characters than necessary.
4465 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
4467         * wcsmbs/Makefile (tests): Add tst-mbsrtowcs.
4468         * wcsmbs/tst-mbsrtowcs.c: New file.
4470         * po/fr.po: Update from translation team.
4472 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
4474         * resolv/inet_pton.c (inet_pton4): Disallow octal numbers.  Reported
4475         by A. Guru <a.guru@sympatico.ca>.  [BZ #295]
4477 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
4479         * po/nl.po: Update from translation team.
4481         * sysdeps/posix/getaddrinfo.c (gaih_inet): Recognize all the IPv4
4482         numeric address formats inet_addr knows.
4483         (getaddrinfo): Allow AI_NUMERICSERV flag.
4484         If neither IPv4 nor IPv6 interface is present we cannot make any
4485         decision for AI_ADDRCONFIG.  Fail if AI_NUMERICSERV is set and the
4486         string is not just a number.  Remove useless freeaddrinfo call.
4487         * resolv/netdb.h (AI_NUMERICSERV): Define.
4488         Based on a patch by a.guru@sympatico.ca.
4490 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
4492         * stdlib/strfmon_l.c (__vstrfmon_l): Memset whole info structure
4493         instead of trying to initialize some, but not all, fields one by
4494         one.
4495         * stdio-common/printf_size.c (printf_size): Initialize fb_info
4496         structure with *info instead of trying to initialize some, but not
4497         all, fields from it.
4499         * nscd/connections.c (handle_request): Check if req->type is in
4500         LASTDBREQ .. LASTREQ range instead of req.
4502         * locale/programs/linereader.c (lr_create): Initialize
4503         lr->return_widestr to 0.
4505         * elf/dl-close.c (free_slotinfo): Add __libc_freeres_fn_section.
4506         (free_mem): Call free_slotinfo just once.
4508         * stdio-common/tst-fmemopen.c (main): Check for MAP_FAILED instead
4509         of NULL.
4511         * locale/localeinfo.h (_nl_locale_subfreeres): New prototype.
4512         * locale/setlocale.c (free_category): Add __libc_freeres_fn_section.
4513         (free_mem): Rename to _nl_locale_subfreeres.
4514         * iconv/gconv_db.c: Include locale/localeinfo.h.
4515         (free_derivation, free_modules_db): Add __libc_freeres_fn_section.
4516         (free_mem): Call _nl_locale_subfreeres.
4517         * iconv/gconv_dl.c (do_release_all): Add __libc_freeres_fn_section.
4519 2004-08-04  Roland McGrath  <roland@frob.com>
4521         * Makeconfig ($(common-objpfx)config.status):
4522         Fix typo: $(add_ons) -> $(add-ons).
4523         (Makeconfig-add-on): New variable.  When doing $(sysdep-makeconfigs)
4524         include, use black magic to get it set to an add-on's name during the
4525         include of the add-on's Makeconfig.
4527         * configure.in: Use variable name `libc_add_on' when sourcing add-on
4528         configure fragments, so they can refer to this.
4529         * configure: Regenerated.
4531 2004-08-04  Roland McGrath  <roland@redhat.com>
4533         * posix/tst-waitid.c (test_child): Sleep a second before stopping.
4534         (do_test): Bump sleep to three seconds.
4535         (sigchld, check_sigchld): New functions.
4536         (do_test): Handle SIGCHLD and check for getting the right details.
4538         * posix/tst-waitid.c (do_test): Kill the child process when bailing
4539         out early on some failure.
4540         [WCONTINUED]: Test WCONTINUED functionality.
4542 2004-08-03  Ulrich Drepper  <drepper@redhat.com>
4544         * nscd/connections.c (handle_request): Print more descriptive
4545         message for invalid request types.
4547 2004-08-02  Jakub Jelinek  <jakub@redhat.com>
4549         * iconvdata/ibm932.c (BODY): Avoid binary search for ch >= 0xffff.
4550         Always treat high as highest number in range + 1.
4551         * iconvdata/ibm943.c (BODY): Likewise.
4553 2004-07-31  Bruno Haible  <bruno@clisp.org>
4555         * iconvdata/JISX0213.TXT: Updated to JISX0213 plane 1 version 2004.
4556         * iconvdata/jisx0213.c (__jisx0213_to_ucs_main,
4557         __jisx0213_to_ucs_pagestart, __jisx0213_from_ucs_level1,
4558         __jisx0213_from_ucs_level2): Regenerated.
4559         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): New function.
4560         * iconvdata/iso-2022-jp-3.c (JISX0213_1_2000_set): Renamed from
4561         JISX0213_1_set.
4562         (JISX0213_1_2004_set): New enum value.
4563         (BODY for FROM_LOOP): Treat ESC $ ( Q like ESC $ ( O.
4564         (BODY for TO_LOOP): For JISX 0213 plane 1 characters, emit ESC $ ( O
4565         when possible, ESC $ ( Q when needed.
4566         * iconvdata/testdata/EUC-JISX0213: Add the 10 new characters.
4567         * iconvdata/testdata/EUC-JISX0213..UTF8: Update.
4568         * iconvdata/testdata/SHIFT_JISX0213: Add the 10 new characters.
4569         * iconvdata/testdata/SHIFT_JISX0213..UTF8: Update.
4570         * iconvdata/testdata/ISO-2022-JP-3: Add the 10 new JISX0213 characters.
4571         * iconvdata/testdata/ISO-2022-JP-3..UTF8: Update.
4573 2004-07-22  Bruno Haible  <bruno@clisp.org>
4575         * iconvdata/gconv-modules (ISO-8859-7): Add alias ISO_8859-7:2003.
4577 2004-07-29  David S. Miller  <davem@redhat.com>
4579         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy): Optimize
4580         better for smaller than 256 byte copies.  Also, use only one
4581         unrolled loop instead of two for the large copy case.
4583 2004-07-30  Richard Henderson  <rth@redhat.com>
4585         * sysdeps/alpha/divq.S: Save t3 before it gets clobbered.
4586         * sysdeps/alpha/remq.S: Likewise.
4587         * sysdeps/alpha/div.S, sysdeps/alpha/ldiv.S: Rewrite with the
4588         new division algorithms in divl.S and divq.S respectively.
4590 2004-07-28  GOTO Masanori  <gotom@debian.or.jp>
4592         * timezone/asia: Update from tzdata2004b.
4593         * timezone/backward: Likewise.
4594         * timezone/europe: Likewise.
4595         * timezone/iso3166.tab: Likewise.
4596         * timezone/leapseconds: Likewise.
4597         * timezone/northamerica: Likewise.
4598         * timezone/southamerica: Likewise.
4599         * timezone/zone.tab: Likewise.
4601         * timezone/private.h: Update from tzcode2004b.
4602         * timezone/zic.c: Likewise.
4604 2004-07-27  Ulrich Drepper  <drepper@redhat.com>
4606         * nscd/grpcache.c (cache_addgr): If necessary, add entry also
4607         under the name the user provided.
4608         * nscd/pwdcache.c (cache_addpw): Likewise.
4610 2004-07-26  Roland McGrath  <roland@redhat.com>
4612         * sysdeps/posix/waitid.c [WEXITED]: Clear WEXITED bit in OPTIONS for
4613         call to __waitpid.
4615 2004-07-26  Ulrich Drepper  <drepper@redhat.com>
4617         * nscd/hstcache.c (cache_addhst): Fix two scenarios which lead to
4618         memory leaks.
4620         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Assign pointer for
4621         new buffer at the right time.
4622         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
4624 2004-07-25  Ulrich Drepper  <drepper@redhat.com>
4626         * inet/Versions [libc, GLIBC_2.3.4]: Add getipv4sourcefilter,
4627         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
4628         * inet/Makefile (routines): Likewise.
4629         * inet/netinet/in.h: Add prototypes for getipv4sourcefilter,
4630         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
4631         * sysdeps/generic/getipv4sourcefilter.c: New file.
4632         * sysdeps/generic/setipv4sourcefilter.c: New file.
4633         * sysdeps/generic/getsourcefilter.c: New file.
4634         * sysdeps/generic/setsourcefilter.c: New file.
4636 2004-07-17  Steven Munroe  <sjmunroe@us.ibm.com>
4638         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
4639         for POWER4 machines.
4641 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
4643         [BZ #274]
4644         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): Fix used >=
4645         BITS_PER_MP_LIMB shifting up.
4646         * stdlib/tst-strtod.c (main): Add new tests.
4648 2004-07-23  Jakub Jelinek  <jakub@redhat.com>
4650         [BZ #282]
4651         * libio/iopopen.c (_IO_new_popen): Use _IO_init instead of
4652         _IO_no_init.  Remove wd from struct locked_FILE.
4653         (_IO_wproc_jumps): Remove.
4654         Reported by Andrew Josey <a.josey@opengroup.org>.
4655         * stdio-common/Makefile (tests): Add tst-popen.
4656         * stdio-common/tst-popen.c: New test.
4658 2004-07-23  Ulrich Drepper  <drepper@redhat.com>
4660         * posix/bits/posix1_lim.h: Fix values for _POSIX_CHILD_MAX and
4661         _POSIX_OPEN_MAX.  Add _POSIX_HOST_NAME_MAX, _POSIX_SYMLINK_MAX,
4662         _POSIX_SYMLOOP_MAX, and _POSIX_RE_DUP_MAX.
4663         Reported by Andrew Josey.
4665         * include/features.h: Document _POSIX_C_SOURCE == 200112L.
4667         * grp/grp.h: Define gid_t if __USE_XOPEN2K is defined.
4668         * pwd/pwd.h: Define uid_t and gid_t if __USE_XOPEN2K is defined.
4669         * io/sys/stat.h: Define dev_t, gid_t, ino_t, mode_t, nlink_t,
4670         off_t, time_t, and uid_t if __USE_XOPEN2K is defined.
4671         * signal/signal.h: Define pid_t if __USE_XOPEN2K is defined.
4672         * posix/unistd.h: Define gid_t, off_t, pid_t, uid_t, and
4673         useconds_t if __USE_XOPEN2K is defined.
4674         * io/utime.h: Define time_t if __USE_XOPEN2K is defined.
4675         * libio/stdio.h: Declare fseeko and ftello if __USE_XOPEN2K is defined.
4677 2004-07-19  Thorsten Kukuk  <kukuk@suse.de>
4679         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
4680         allocate memory for large temporary variables with alloca.
4682 2004-07-22  Ulrich Drepper  <drepper@redhat.com>
4684         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Compatibility
4685         code must have version GLIBC_2.0.  Patch by Dwayne McConnell.
4687         * nscd/nscd_getgr_r.c (nscd_getgr_r): Avoid read call with NULL
4688         pointer and zero length.
4690 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
4692         * nscd/cache.c (prune_cache): Print correct list when debugging.
4694 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
4696         * resolv/res_libc.c (res_init): If RES_INIT is set and
4697         _res.nscount > 0, call __res_nclose and free nsaddrs.
4698         * resolv/Makefile: Add rules to build and run tst-leaks2.
4699         * resolv/tst-leaks2.c: New test.
4701 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
4703         * intl/libintl.h: Don't define macros for C++.
4704         Patch by Goto Masanori.
4706 2004-07-22  GOTO Masanori  <gotom@debian.or.jp>
4708         [BZ #276]
4709         * include/arpa/inet.h: Change inet_aton type from in_addr_t to int.
4710         * inet/arpa/inet.h: Likewise.
4711         * resolv/inet_addr.c: Likewise.
4713 2004-07-21  Alexandre Oliva  <aoliva@redhat.com>
4715         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: Add semtimedop.
4717 2004-07-20  Roland McGrath  <roland@redhat.com>
4719         * configure.in (add_ons): Substitute this.  Move $add_ons handling
4720         after AC_CANONICAL_HOST and default setting of $machine et al.
4721         Don't set $subdirs from $add_ons.
4722         Instead, source add-on/configure fragments early on.
4723         (base_machine): If it's already set, don't set it based on $machine.
4724         (libc_config_ok): New variable, set to no.  If an add-on fragment sets
4725         it to yes, skip the  tuple sanity check as if --enable-hacker-mode.
4726         (sysnames): Try appending add-on names after machine as well.
4727         * config.make.in (add-ons): Set from @add_ons@ instead of @subdirs@.
4728         * Makeconfig ($(common-objpfx)config.status): Also depend on configure
4729         files in $(add_ons) dirs.
4731         * sysdeps/unix/sysv/linux/bits/in.h (struct ip_mreq): Remove
4732         definition, now in netinet/in.h proper.
4734 2004-07-20  Alexandre Oliva  <aoliva@redhat.com>
4736         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
4737         Sort by syscalls.  Make sure we get headers such as sgidefs.h from
4738         the build tree before just-installed ones.
4740         * sysdeps/mips/atomicity.h: Use standard names for ABI macros,
4741         include sgidefs.h where appropriate.
4742         * sysdeps/mips/dl-machine.h: Likewise.
4743         * sysdeps/mips/machine-gmon.h: Likewise.
4744         * sysdeps/mips/bits/setjmp.h: Likewise.
4745         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
4746         * sysdeps/mips/mips64/__longjmp.c: Likewise.
4747         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
4748         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
4749         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
4750         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
4751         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
4752         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
4753         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
4754         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
4755         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
4756         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
4757         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
4758         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
4759         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
4760         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
4761         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
4762         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
4763         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
4764         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
4765         Likewise.
4766         * sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h):
4767         Likewise.
4769         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Update to use
4770         _dl_lookup_symbol_x.
4771         (elf_machine_runtime_link_map): Don't INTUSE _dl_signal_error.
4773 2004-07-20  Ulrich Drepper  <drepper@redhat.com>
4775         * inet/netinet/in.h: Define struct ip_mreq and struct
4776         ip_mreq_source.
4777         Define struct group_req and struct group_source_req.
4778         * sysdeps/unix/sysv/linux/bits/in.h: Define IP_UNBLOCK_SOURCE,
4779         IP_BLOCK_SOURCE, IP_ADD_SOURCE_MEMBERSHIP,
4780         IP_DROP_SOURCE_MEMBERSHIP, IP_MSFILTER, MCAST_JOIN_GROUP,
4781         MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, MCAST_LEAVE_GROUP,
4782         MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP, and
4783         MCAST_MSFILTER.
4784         Define MCAST_INCLUDE and MCAST_EXCLUDE.
4786         * iconvdata/gconv-modules: Add alias for IBM874 [BZ #244].
4788 2004-07-19  Jakub Jelinek  <jakub@redhat.com>
4790         [BZ #258]
4791         * math/libm-test.inc (max_value, min_value): New variables.
4792         (initialize): Initialize them.
4793         (pow_test): Add a couple of new tests.
4794         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Don't generate invalid
4795         exception if |y| >= 1U<<31.
4796         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Don't generate invalid
4797         exception if |y| >= 1L<<63.
4798         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
4799         If y*log2(x) overflows to +-inf, return still +inf/+0 instead of NaN.
4800         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
4802 2004-07-18  Ulrich Drepper  <drepper@redhat.com>
4804         * nscd/pwdcache.c (cache_addpw): Optimize case of unsuccessful
4805         lookup a bit.
4806         * nscd/grpcache.c (cache_addgr): Likewise.
4807         * nscd/hstcache.c (cache_addhst): Likewise.
4809 2004-07-10  GOTO Masanori  <gotom@debian.or.jp>
4811         * sysdeps/s390/s390-32/elf/start.S: Remove symbol _fp_hw.
4812         * sysdeps/s390/s390-64/elf/start.S: Likewise.
4814 2004-04-16  Andreas Schwab  <schwab@suse.de>
4816         * sysdeps/ia64/bits/atomic.h: Cast first argument of
4817         __sync_bool_compare_and_swap_si correct to void*.
4819 2004-07-17  Ulrich Drepper  <drepper@redhat.com>
4821         * iconv/iconv_prog.c (print_known_names): Make machine-readable
4822         output even less cluttered.
4824 2004-07-16  Steven Munroe  <sjmunroe@us.ibm.com>
4826         [BZ #269]
4827         * setjmp/Makefile (tests): Add bug269-setjmp.
4828         * setjmp/bug269-setjmp.c: New file.
4829         * sysdeps/powerpc/powerpc64/__longjmp-common.S [SHARED && !IS_IN_rtld]:
4830         Store R2 from jmpbuf in callers TOC save area.
4831         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [SHARED && !IS_IN_rtld]:
4832         Store R2 in TOC save area.
4833         * sysdeps/powerpc/powerpc64/setjmp-common.S [SHARED && !IS_IN_rtld]:
4834         Copy TOC save area from previous frame as R2 (TOC) in jmpbuf.
4836 2004-07-16  Jakub Jelinek  <jakub@redhat.com>
4838         * locale/newlocale.c: Include bits/libc-lock.h.
4839         (__libc_setlocale_lock): Extern decl.
4840         (__newlocale): Use it.
4841         Reported by Ulrich Weigand <Ulrich.Weigand@de.ibm.com>.
4843 2004-07-15  Jakub Jelinek  <jakub@redhat.com>
4845         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Remove
4846         static inline __attribute ((always_inline)).  Don't define if
4847         NO_CANCELLATION.
4848         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
4849         __fcntl_nocancel.
4850         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c (__fcntl_nocancel):
4851         Remove static inline __attribute ((always_inline)).  Don't define
4852         if NO_CANCELLATION.
4853         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
4854         __fcntl_nocancel.
4855         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Define to
4856         __libc_fcntl if NO_CANCELLATION and __ASSUME_FCNTL64 == 0.
4857         Don't define at all if NO_CANCELLATION and __ASSUME_FCNTL64 > 0.
4858         (__libc_fcntl): Don't define if __fcntl_nocancel is a macro.
4860         [BZ #262]
4861         * sysdeps/i386/elf/start.S (_start): Use @GOT instead of @GOTOFF
4862         for main.
4863         * elf/Makefile: Add rules to build and run tst-pie1.
4864         * elf/tst-pie1.c: New test.
4865         * elf/tst-piemod1.c: New file.
4867 2004-07-14  Jakub Jelinek  <jakub@redhat.com>
4869         [BZ #266]
4870         * manual/string.texi (l64a): Note that the static buffer is 7 bytes
4871         long.  Rewrite example code so that it takes into account l64a output
4872         shorter than 6 characters.
4873         Reported by Julian Graham <julian.graham@aya.yale.edu>.
4875 2004-07-14  Kaz  Kojima  <kkojima@rr.iij4u.or.jp>
4877         * sysdeps/sh/dl-machine.h: Don't reset _dl_starting_up here.
4878         (elf_machine_rela_relative): Remove unused valiable.
4880 2004-07-12  Paul Eggert  <eggert@cs.ucla.edu>
4882         [BZ #263]
4883         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Don't store
4884         outside the buffer if the read returns 0.  __strtod_l can't set
4885         endp to NULL, so remove a test for that case.
4887 2004-07-12  Roland McGrath  <roland@redhat.com>
4889         * manual/signal.texi (Interrupted Primitives): Make clear that
4890         TEMP_FAILURE_RETRY evaluates its expression as long int and compares
4891         it to -1 to define "failure".
4893 2004-07-10  Ulrich Drepper  <drepper@redhat.com>
4895         * elf/ldconfig.c: Define PROCINFO_CLASS as static before including
4896         ldsodefs.h.
4897         * sysdeps/generic/ldsodefs.h: Only define PROCINFO_CLASS if it is not
4898         already defined.
4899         * sysdeps/i386/dl-procinfo.c: Define PROCINFO_CALLS only if not
4900         already defined.
4902         * elf/rtld.c (print_statistics): Mark with noinline attribute.
4903         * sysdeps/i386/dl-machine.h (elf_machine_rel): Mark with always_inline
4904         attribute.
4905         (elf_machine_rel_relative): Likewise.
4907         * include/string.h: Add libc_hidden_proto for __strtok_r and
4908         __strsep_g.
4909         * sysdeps/generic/strsep.c: Add libc_hidden_def.
4910         * sysdeps/generic/strtok_r.c: Likewise.
4911         * sysdeps/i386/strtok_r.S: Add alias for internal symbol.
4912         * sysdeps/i386/i686/strtok_r.S: Likewise.
4913         * sysdeps/x86_64/strtok_r.S: Likewise.
4915 2004-07-09  Alexandre Oliva  <aoliva@redhat.com>
4917         * inet/getnetgrent_r.c (internal_setnetgrent): Make it hidden
4918         instead of internal-linkage, such that we can alias to it.
4919         (internal_endnetgrent, internal_getnetgrent_r): Likewise.
4921 2004-07-09  Ulrich Drepper  <drepper@redhat.com>
4923         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Move attribute
4924         to the front for gcc 3.5+.
4925         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
4926         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
4927         * include/fcntl.h: Don't declare __fcntl_nocancel here if
4928         NO_CANCELLATION is defined.
4930 2004-07-07  Jakub Jelinek  <jakub@redhat.com>
4932         * elf/dl-fini.c (_dl_fini): Add nloaded variable, load
4933         GL(dl_nloaded) into it while still in critical section.
4935 2004-07-06  Thorsten Kukuk  <kukuk@suse.de>
4937         * nss/getent.c (print_group, print_passwd): Use %lu format for
4938         `unsigned long int' values.
4940         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Fix syntax
4941         error typos in goto statements.
4943 2004-07-07  Roland McGrath  <roland@frob.com>
4945         * Makefile (dist-separate): New variable.
4946         (glibc-%.tar rule): Make separate tar files for add-ons listed there.
4947         Depend on their configure files.
4948         (dist-do-separate-dirs): New canned sequence to do that.
4949         (dist-separate-libidn, dist-separate-linuxthreads): New variables.
4950         (dist): Depend on add-on tar files based on $(dist-separate).
4951         (dist-version): New variable, default to $(version).
4952         (tag-for-dist, dist): Use that in place of $(version) in deps.
4954 2004-07-07  Ulrich Drepper  <drepper@redhat.com>
4956         * elf/dl-fini.c (_dl_fini): Move the unlock of the ld.so lock
4957         before the loop running the destructors.
4959 2004-05-18  Andreas Schwab  <schwab@suse.de>
4961         * elf/dl-load.c (_dl_map_object_from_fd): Use the end address of
4962         the first segment for mprotect, not l_text_end.
4964 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
4966         * elf/dl-profile.c (_dl_start_profile): Compact error handling.
4967         Remove hashfraction variable.  Make kcount and kcountsize local
4968         variables.
4970         * elf/dl-init.c: Don't define and use _dl_starting_up if
4971         HAVE_INLINED_SYSCALLS is defined and the variable is not used.
4972         * elf/dl-support.c: Likewise.
4973         * elf/rtld.c: Likewise.
4974         * elf/dl-misc.c (_dl_debug_vdprintf): Use writev syscall directly
4975         if HAVE_INLINED_SYSCALLS is defined.
4976         * sysdeps/powerpc/powerpc64/dl-machine.h: Don't reset _dl_starting_up
4977         here.
4978         * sysdeps/powerpc/powerpc32/dl-start.S: Likewise.
4979         * sysdeps/unix/sysv/linux/configure.in: Define HAVE_INLINED_SYSCALLS.
4980         * config.h.in: Add entry for HAVE_INLINED_SYSCALLS.
4982         * sysdeps/posix/profil.c: If compiled for ld.so, omit code which
4983         is needed to stop profiling.
4984         * elf/dl-open.c (dl_open_worker): If a newly opened object is to be
4985         profile make sure it cannot be unloaded.
4987         * sysdeps/unix/sysv/linux/dl-origin.c: Inline readlink syscall.
4989         * sysdeps/unix/sysv/linux/fcntl.c: If compiled without cancellation
4990         support, make sure the helper function is inlined.
4991         * sysdeps/unix/sysv/linux/pread.c: Likewise.
4992         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
4993         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
4994         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
4996 2004-07-05  Jakub Jelinek  <jakub@redhat.com>
4998         * include/string.h (ffs): Add libc_hidden_builtin_proto.
4999         * sysdeps/rs6000/ffs.c (ffs): Add libc_hidden_builtin_def.
5000         * sysdeps/alpha/alphaev67/ffs.S (ffs): Likewise.
5001         * sysdeps/alpha/ffs.S (ffs): Likewise.
5002         * sysdeps/s390/ffs.c (ffs): Likewise.
5003         * sysdeps/powerpc/ffs.c (ffs): Likewise.
5004         * sysdeps/i386/ffs.c (ffs): Likewise.
5005         * sysdeps/i386/i686/ffs.c (ffs): Likewise.
5006         * sysdeps/m68k/ffs.c (ffs): Likewise.
5007         * sysdeps/generic/ffs.c (ffs): Likewise.
5008         * sysdeps/m88k/ffs.c (ffs): Likewise.
5009         * sysdeps/am29k/ffs.c (ffs): Likewise.
5010         * sysdeps/i960/ffs.c (ffs): Likewise.
5011         * sysdeps/x86_64/ffs.c (ffs): Likewise.
5013         * Makerules (check-abi): Use diff -p -U 0 instead of diff -pu0.
5015         * sysdeps/powerpc/novmx-longjmp.c (__libc_longjmp,
5016         __libc_siglongjmp): Remove symbol_version.
5017         * sysdeps/powerpc/longjmp.c (__libc_longjmp, __libc_siglongjmp):
5018         Export @@GLIBC_PRIVATE, not @@GLIBC_2.3.4.
5019         * sysdeps/powerpc/sigjmp.c (__sigjmp_save): Use strong_alias
5020         unconditionally.
5021         * sysdeps/powerpc/novmx-sigjmp.c (__sigjmp_save): Remove.
5022         * sysdeps/powerpc/powerpc32/__longjmp.S (__longjmp): Use
5023         strong_alias instead of default_symbol_version, remove
5024         symbol_version.
5025         * sysdeps/powerpc/powerpc64/__longjmp.S (__longjmp): Likewise.
5026         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__novmx__setjmp): Change
5027         into strong_alias to __novmxsetjmp.
5028         (__vmx__setjmp): Similarly with __vmxsetjmp.
5029         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
5030         default_symbol_version and symbol_version.
5031         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__novmx__setjmp): Change
5032         into strong_alias to __novmxsetjmp.
5033         (__vmx__setjmp): Similarly with __vmxsetjmp.
5034         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
5035         default_symbol_version and symbol_version.
5037         * nscd/nscd_getgr_r.c: Include stdio-common/_itoa.h.
5039 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
5041         * elf/rtld.c (dl_main): Mark dyn_temp with attribute_relro.
5043 2004-07-04  Matthew Reppert  <arashi@kai.vm.bytemark.co.uk>
5045         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Use libc_hidden_ver
5046         instead of libc_hidden_def.
5048 2004-07-01  Roland McGrath  <roland@redhat.com>
5050         * aclocal.m4: Add provide for AC_CONFIG_AUX_DIR_DEFAULT.
5052         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Move top-level
5053         $(..)shlib-versions file to last in deps list.  This lets add-ons give
5054         more-specific matches that override defaults in the top-level file.
5056         * sysdeps/unix/sysv/linux/configure.in: If arch_minimum_kernel was
5057         already set, don't set it or libc_cv_gcc_unwind_find_fde.
5058         * sysdeps/unix/sysv/linux/configure: Regenerated.
5060 2004-07-01  Martin Schwidefsky  <schwidefsky@de.ibm.com>
5062         * sysdeps/s390/fpu/bits/mathinline.h [__LIBC_INTERNAL_MATH_INLINES]
5063         (__ieee754_sqrt): Define as __MATH_INLINE using sqdbr instruction.
5064         (__ieee754_sqrtf): Define as __MATH_INLINE using sqebr instruction.
5065         * sysdeps/s390/fpu/e_sqrt.c: New file.
5066         * sysdeps/s390/fpu/e_sqrtf.c: New file.
5067         * sysdeps/s390/Implies: New file.
5068         * sysdeps/s390/s390-32/Implies: Remove ieee754, move
5069         ieee754/dbl-64 and ieee754/flt-32 to s390/Implies.
5070         * sysdeps/s390/s390-64/Implies: Likewise.
5072 2004-06-30  Jakub Jelinek  <jakub@redhat.com>
5074         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Include tls.h.
5075         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
5077         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (thread_start):
5078         DO_CALL (exit, 1) instead of branching to _exit.
5079         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (thread_start):
5080         Likewise.
5082         * sysdeps/s390/fpu/bits/mathinline.h: New file.
5084         * include/glob.h (glob64): Add libc_hidden_proto.
5085         * sysdeps/generic/glob64.c (glob64): Add libc_hidden_def.
5086         * sysdeps/gnu/glob64.c (glob64): Likewise.
5087         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Likewise.
5089 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
5091         * sysdeps/i386/fpu/libm-test-ulps: Update for GCC 3.4.
5092         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
5094 2004-06-11  Dwayne Grant McConnell  <dgm69@us.ibm.com>
5096         * sysdeps/powerpc/fpu/s_lround.c: Removed.
5097         * sysdeps/powerpc/fpu/s_lroundf.c: Removed.
5098         * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: New file.
5099         * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: New file.
5100         * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: New file.
5101         * sysdeps/powerpc/powerpc32/fpu/s_floor.S: New file.
5102         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: Removed.
5103         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: New file.
5104         * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: New file.
5105         * sysdeps/powerpc/powerpc32/fpu/s_lround.S: New file.
5106         * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: New file.
5107         * sysdeps/powerpc/powerpc32/fpu/s_rint.S: New file.
5108         * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: New file.
5109         * sysdeps/powerpc/powerpc32/fpu/s_round.S: New file.
5110         * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: New file.
5111         * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: New file.
5113 2004-06-30  Ulrich Drepper  <drepper@redhat.com>
5115         * include/net/if.h: Handle if_nameindex and if_freenameindex with
5116         libc_proto_hidden.
5117         * sysdeps/unix/sysv/linux/netlinkaccess.h: New file.
5118         * sysdeps/unix/sysv/linux/ifaddrs.c: Export netlink handling functions.
5119         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Implement using
5120         netlink if possible.  Fall back on ioctl method if necessary.
5121         * sysdeps/unix/sysv/linux/Dist: Add netlinkaccess.h.
5123         * include/unistd.h: Declare __truncate.
5124         * sysdeps/generic/truncate.c: Also define __truncate.
5125         * sysdeps/mach/hurd/truncate.c: Likewise.
5126         * sysdeps/unix/common/syscalls.list: Likewise.
5127         * sysdeps/unix/sysv/linux/truncate64.c: Use __truncate, not truncate.
5129 2004-06-29  Ulrich Drepper  <drepper@redhat.com>
5131         * stdio-common/printf-parsemb.c (__parse_one_specmb): Initialize
5132         info.extra.  Patch by Marcus Meissner.
5134 2004-06-29  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
5136         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
5137         Fix branch offset for a PLT entry.
5139 2004-06-20  Jim Meyering  <jim@meyering.net>
5141         * malloc/obstack.h (obstack_base): Cast to `void *', to align with
5142         documentation.
5144 2004-06-28  Ulrich Drepper  <drepper@redhat.com>
5146         * inet/bug-if1.c (do_test): Simply use 0 as invalid index.
5147         Workaround for [BZ #232].
5149         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Use extend_alloca.
5151 2004-06-28  GOTO Masanori  <gotom@debian.or.jp>
5153         * iconv/gconv_simple.c: Use get16/put16 for user given buffer
5154         in ucs2/ucs2reverse when unaligned memory access is attempted.
5155         * iconv/tst-iconv5.c: New file.
5156         * iconv/Makefile (tests): Add tst-iconv5.
5158 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
5160         * inet/bug-if1.c: Include <string.h>.
5162 2004-06-19  Roland McGrath  <roland@redhat.com>
5164         * sysdeps/posix/waitid.c (do_waitid) [DO_WAITID]: Define function
5165         under this macro name instead.
5166         [NO_DO_WAITID]: Don't define it at all.
5167         (do_waitid) [WNOWAIT, WEXITED]: If these POSIX.1 waitid flag bits are
5168         defined, then return ENOTSUP for combinations of selection bits other
5169         than WEXITED and WEXITED|WSTOPPED, which this version cannot support.
5171         * posix/tst-waitid.c: New file.
5172         * posix/Makefile (tests): Add it.
5174 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
5176         * sysdeps/unix/alpha/sysdep.h (inline_syscall6): Fix a typo.
5178         [BZ #231]
5179         * sysdeps/unix/alpha/sysdep.S (__syscall_error): Avoid !samegp
5180         relocation in librt.so.
5182         [BZ #230]
5183         * sysdeps/alpha/dl-machine.h (_dl_start_user): Use ldah/ldl to load
5184         _dl_skip_args.  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
5186 2004-06-27  Ulrich Drepper  <drepper@redhat.com>
5188         * elf/ldconfig.c (add_dir): Take chroot into account.
5189         Based on changes by HJ Lu and Hideki Iwamoto.
5191         * nscd/connections.c (invalidate_cache): If the host cache has to
5192         be invalidated, re-read resolv.conf.
5194         * resolv/resolv.h (RES_NOIP6DOTINT): Define.
5195         * resolv/res_init.c (res_setoptions): Handle no-ip6-dotint option.
5196         * resolv/gethnamaddr.c (gethostbyaddr): Don't lookup with .ip6.int
5197         if RES_NOIP6DOTINT flag is set.
5198         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
5200 2004-06-25  Jakub Jelinek  <jakub@redhat.com>
5202         * sysdeps/unix/sysv/linux/powerpc/fcntl.c: Move to...
5203         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fcntl.c: ... here.
5204         * sysdeps/unix/sysv/linux/powerpc/lockf64.c: Move to...
5205         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lockf64.c: ... here.
5206         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: New file.
5208         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_GETLK, F_SETLK,
5209         F_SETLKW): Fix values for -m32 -D_FILE_OFFSET_BITS=64.
5211 2004-06-21  Jakub Jelinek  <jakub@redhat.com>
5213         [BZ #231]
5214         * sysdeps/unix/alpha/Makefile: New file.
5215         * sysdeps/unix/alpha/rt-sysdep.S: New file.
5216         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
5218 2004-06-18  Ulrich Drepper  <drepper@redhat.com>
5220         * sysdeps/posix/getaddrinfo.c (gaih_inet): For AI_CANONNAME,
5221         determine the canonical name only for the first returned entry.
5223         * inet/bug-if1.c: New file.
5224         * inet/Makefile (tests): Add bug-if1.
5226 2004-06-18  Roland McGrath  <roland@frob.com>
5228         * Makerules (compile-mkdep-flags): Add -MT $@.
5230         * Makefile (dist, tag-for-dist): New targets.
5231         (files-for-dist, tag-of-stem): New variables.
5232         (glibc-%.tar glibc-linuxthreads-%.tar): New pattern rule.
5233         Make tar files using cvs export.
5234         (%.bz2, %.gz, tag-%): New pattern rules.
5235         (distribute): Variable removed.
5236         (+subdir_targets): Remove distinfo targets.
5237         (echo_subdirs, echo-distinfo, parent_echo-distinfo): Targets removed.
5238         (rpm/%): Pattern rule removed.
5239         * rpm/Makefile, rpm/rpmrc, rpm/template: Ancient cruft files removed.
5240         * Rules (subdir_echo-headers, subdir_echo-distinfo, subdir_dist):
5241         Targets removed.
5242         * Makerules (dist, subdir_distinfo): Targets removed.
5243         ($(objpfx)distinfo): Depend on $(distribute).
5244         * Make-dist: File removed.
5246         * NEWS: Fix a typo.  Update bug-reporting instructions.
5248 2004-06-17  Thorsten Kukuk  <kukuk@suse.de>
5250         * sysdeps/unix/sysv/linux/sched_setaffinity.c
5251         (__sched_setaffinity_new): Set errno to EINVAL and return -1 if
5252         cpuset is wrongly set.
5254 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
5256         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
5257         for POWER4 machines.
5259 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
5261         [BZ #218]
5262         * sunrpc/pmap_prot2.c (xdr_pmaplist): When freeing, remember pml_next
5263         in a local variable, point rp to that local variable afterwards.
5265 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
5267         * sysdeps/ieee754/dbl-64/e_sqrt.c (__ieee754_sqrt): Handle special
5268         cases properly.
5270 2004-06-17  Ulrich Drepper  <drepper@redhat.com>
5272         * sysdeps/unix/sysv/linux/if_index.c (if_indextoname): Correct
5273         error value for unknown interface. [BZ #198]
5275 2004-06-13  Jakub Jelinek  <jakub@redhat.com>
5277         * sysdeps/i386/bits/string.h (memcpy): Add () around arguments.
5278         (memchr, __memrchr, strlen, strcmp, strncmp, __strchr_g, __strchr_c,
5279         __strchrnul_g, __strchrnul_c, strspn, strcspn, strpbrk): Add memory
5280         the asm uses as its input, either of size __n where __n is known or
5281         0xfffffff.
5282         (strstr): Add "memory" clobber.
5284 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
5286         [BZ #219]
5287         * nss/nsswitch.c (free_mem): Don't try to close a library handle
5288         if the handle is invalid.  Patch by David Kimdon <kimdon@esrf.fr>.
5290 2004-06-11  Dmitry V. Levin  <ldv@altlinux.org>
5292         [BZ #217]
5293         * debug/xtrace.sh: Fix typo in error diagnostics.
5295 2004-06-14  Andreas Schwab  <schwab@suse.de>
5297         * stdio-common/psignal.c (psignal): Don't use BUF when asprintf
5298         failed.
5300 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
5302         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Fix pasto
5303         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
5304         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Fix pasto
5305         that clobbers r19.
5306         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Fix pasto
5307         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
5308         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S:
5309         Fix setting of sigcontext.v_regs.  Fix pasto that clobbers r19.
5310         Fix pasto that overflowed sigcontext.v_reserve.
5311         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S:
5312         Fix pasto that clobbers r19.
5313         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Fix setting
5314         of sigcontext.v_regs.  Fix pasto that clobbers r19.  Fix pasto that
5315         overflowed sigcontext.v_reserve.
5317 2004-05-04  H.J. Lu  <hongjiu.lu@intel.com>
5319         [BZ #150]
5320         * sysdeps/generic/strtol_l.c (DEF): Use ".gnu.linkonce.r."
5321         instead of ".gnu.linkonce.ro." as the prefix for linkonce
5322         read-only section name.
5324 2004-06-14  Richard Henderson  <rth@redhat.com>
5326         * sysdeps/alpha/div_libc.h (_ITOFS): Use "sp" not "$sp".
5327         (_ITOFT, _FTOIT, _ITOFT2): Likewise.
5329 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
5331         * sysdeps/s390/s390-32/backtrace.c (init): Guard with #ifdef SHARED.
5332         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
5333         (__backtrace): Don't call init #ifndef SHARED.
5334         * sysdeps/s390/s390-64/backtrace.c (init): Guard with #ifdef SHARED.
5335         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
5336         (__backtrace): Don't call init #ifndef SHARED.
5337         * sysdeps/ia64/backtrace.c (init): Guard with #ifdef SHARED.
5338         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
5339         (__backtrace): Don't call init #ifndef SHARED.
5341 2004-06-11  Roland McGrath  <roland@redhat.com>
5343         * sysdeps/arm/strlen.S [__ARMEB__]: Compute correctly for big-endian.
5344         From Krzysztof Halasa <khc@pm.waw.pl>.
5346 2004-06-10  Jakub Jelinek  <jakub@redhat.com>
5348         * elf/tls-macros.h [__s390x__] (TLS_LD, TLS_GD): Clobber also r14.
5350 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
5352         [BZ #199]
5353         * crypt/md5-crypt.c (__md5_crypt): Only update buflen if realloc
5354         succeeds.  Reported by Miles Ohlrich <miles@cray.com>.
5356         * elf/chroot_canon.c (chroot_canon): Avoid segfault if first malloc
5357         fails.  Avoid memory leak if realloc fails.
5359 2004-06-09  Jakub Jelinek  <jakub@redhat.com>
5361         * sysdeps/generic/setenv.c (setenv): Return -1/EINVAL if name is
5362         NULL, "" or contains '=' character in it.  Reported by
5363         Michael T Kerrisk <mtk-lists@gmx.net>.
5364         * stdlib/tst-environ.c: Include errno.h.
5365         (main): Add tests for these arguments to setenv/unsetenv.
5367 2004-06-07  Roland McGrath  <roland@frob.com>
5369         * NEWS: Update bug reporting instructions.  Fix some typos.
5371 2004-06-05  Ulrich Drepper  <drepper@redhat.com>
5373         * stdio-common/_itoa.h: Don't expand _itoa inline for libc.
5374         * stdio-common/_itoa.c: Add _itoa implementation.
5376         * nscd/nscd_gethst_r.c (__nscd_open_socket): Change implementation
5377         to also send request.  Add parameter to allow this.
5378         Change callers.
5379         * nscd/nscd_getgr_r.c: Change __nscd_open_socket caller.
5380         * nscd/nscd_getpw_r.c: Likewise.
5381         * nscd/nscd-client.h: Change __nscd_open_socket prototype.
5383 2004-06-05  Andreas Jaeger  <aj@suse.de>
5385         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
5386         Handle more than 6 args correctly.  Based on a patch by Masahide
5387         Washizawa <washi@jp.ibm.com>.
5389 2004-06-04  Ulrich Drepper  <drepper@redhat.com>
5391         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use __nss_not_use_nscd_hosts
5392         in all places, not __nss_not_use_nscd_group.
5393         Reported by Philippe Gregoire.
5395 2004-06-03  Ulrich Drepper  <drepper@redhat.com>
5397         * sysdeps/i386/i486/bits/atomic.h: Optimize a bit.
5399 2004-05-07  Dmitry V. Levin  <ldv@altlinux.org>
5401         * argp/argp-help.c (__argp_error, __argp_failure): Check result
5402         of __asprintf call and don't use string if it failed.
5403         * stdio-common/psignal.c (psignal): Likewise.
5404         * locale/programs/localedef.c (more_help): Likewise.
5405         * resolv/res_hconf.c (arg_service_list, arg_trimdomain_list,
5406         arg_bool, parse_line): Check result of __asprintf calls and
5407         don't use string if they failed.
5408         * sunrpc/svc_simple.c (registerrpc, universal): Likewise.
5409         * elf/ldconfig.c (parse_conf_include): Check result of __asprintf
5410         call and exit if it failed.
5412 2004-05-10  Jakub Jelinek  <jakub@redhat.com>
5414         * sysdeps/posix/sysconf.c (__sysconf) <cases _SC_REALTIME_SIGNALS,
5415         _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
5416         _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES,
5417         _SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION,
5418         _SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS,
5419         _SC_THREADS, _SC_THREAD_SAFE_FUNCTIONS, _SC_THREAD_ATTR_STACKADDR,
5420         _SC_THREAD_ATTR_STACKSIZE, _SC_THREAD_PRIORITY_SCHEDULING,
5421         _SC_THREAD_PRIO_INHERIT, _SC_THREAD_PRIO_PROTECT,
5422         _SC_THREAD_PROCESS_SHARED>: Return _POSIX_* value instead of 1.
5423         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf)
5424         <case _SC_MONOTONIC_CLOCK>: Return _POSIX_VERSION instead of 1.
5426 2004-05-07  Jeroen Dekkers  <jeroen@dekkers.cx>
5428         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Add
5429         -momit-leaf-frame-pointer.
5431         * inet/test-ifaddrs.c (addr_string): Surround AF_PACKET case with
5432         #ifdef AF_PACKET.
5434         * sysdeps/mach/hurd/getcwd.c
5435         (_hurd_canonicalize_directory_name_intern): Only realloc when
5436         size is <= 0.
5438         * sysdeps/mach/hurd/mmap.c (__mmap): Fail when addr or offset
5439         isn't page aligned.
5441         * sysdeps/mach/hurd/spawni.c (EXPAND_DTABLE): Set dtablesize to
5442         new size.
5444         * sysdeps/mach/hurd/Versions (GLIBC_PRIVATE): Add __libc_read,
5445         __libc_write and __libc_lseek64.
5447 2004-05-29  Roland McGrath  <roland@redhat.com>
5449         * elf/Makefile (shared-only-routines): Add dl-caller.
5451 2004-05-28  Ulrich Drepper  <drepper@redhat.com>
5453         * sysdeps/powerpc/configure.in: New file.
5455 2004-05-28  Steven Munroe  <sjmunroe@us.ibm.com>
5457         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Add .machine
5458         "altivec" to enable VMX instructions.
5459         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
5460         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
5461         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
5462         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
5463         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
5464         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
5465         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
5466         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
5467         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
5469 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
5471         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Define using
5472         __builtin_expm1l for GCC 3.5+.
5473         (__expl): Define using __builtin_expl for GCC 3.4+.
5474         (exp, expf, expl): Don't define for GCC 3.4+.
5475         (tan, tanf, tanl): Don't define for GCC 3.5+.
5476         (__atan2l): Define using __builtin_atan2l for GCC 3.4+.
5477         (atan2, atan2f, atan2l): Don't define for GCC 3.4+ or !__FAST_MATH__.
5478         (fmod, fmodf, fmodl): Don't define for GCC 3.5+ or !__FAST_MATH__.
5479         (fabsf, fabsl): Only provide if __USE_MISC or __USE_ISOC99.
5480         (sin, sinf, sinl, cos, cosf, cosl, log, logf, logl): Don't define
5481         for GCC 3.4+.
5482         (log10, log10f, log10l, asin, asinf, asinl, acos, acosf, acosl):
5483         Don't define for GCC 3.5+.
5484         (atan, atanf, atanl): Don't define for GCC 3.4+ or !__FAST_MATH__.
5485         (log1p, log1pf, log1pl, logb, logbf, logbl, log2, log2f, log2l): Don't
5486         define for GCC 3.5+.
5487         (drem, dremf, dreml): Don't define for GCC 3.5+ or !__FAST_MATH__.
5488         * sysdeps/sparc/fpu/bits/mathinline.h (sqrt, sqrtf, sqrtl): Don't
5489         define for GCC 3.2+.
5491 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
5493         * string/bits/string2.h (__bzero): Define even for GCC 3.0+.
5494         * sysdeps/alpha/stpcpy.S (stpcpy): Add libc_hidden_builtin_def.
5495         * sysdeps/alpha/alphaev67/stpcpy.S (stpcpy): Likewise.
5496         * sysdeps/powerpc/powerpc32/stpcpy.S (stpcpy): Likewise.
5497         * sysdeps/powerpc/powerpc64/stpcpy.S (stpcpy): Likewise.
5498         * sysdeps/sparc/sparc32/stpcpy.S (stpcpy): Likewise.
5499         * sysdeps/sparc/sparc64/stpcpy.S (stpcpy): Likewise.
5500         * sysdeps/i386/stpcpy.S (stpcpy): Likewise.
5501         * sysdeps/i386/i586/stpcpy.S (stpcpy): Likewise.
5502         * sysdeps/generic/stpcpy.c (stpcpy): Likewise.
5503         * sysdeps/x86_64/stpcpy.S (stpcpy): Likewise.
5504         * sysdeps/i386/i586/memcpy.S (memcpy): Remove
5505         libc_hidden_builtin_def if MEMPCPY_P.
5506         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
5507         * sysdeps/i386/i686/mempcpy.S (mempcpy): Add libc_hidden_builtin_def.
5508         * sysdeps/i386/i586/mempcpy.S (mempcpy): Likewise.
5509         * sysdeps/generic/mempcpy.c (mempcpy): Likewise.
5510         * sysdeps/x86_64/mempcpy.S (mempcpy): Likewise.
5512 2004-05-26  Roland McGrath  <roland@frob.com>
5514         * sysdeps/generic/bits/in.h
5515         (IMPLINK_IP, IMPLINK_LOWEXPER, IMPLINK_HIGHEXPER): Macros removed.
5516         These are long obsolete in BSD systems where they originated.
5517         * conform/data/netinet/in.h-data: Remove `allow IMPLINK_*'
5519 2004-05-26  Jakub Jelinek  <jakub@redhat.com>
5521         * include/string.h (mempcpy, stpcpy): Add libc_hidden_builtin_proto.
5522         * string/bits/string2.h (memset): Disable macro for GCC 3.0+.
5523         (__mempcpy): Use __builtin_mempcpy for GCC 3.4+.
5524         (strchr): For GCC 3.2+, only use __rawmemchr if second argument is
5525         constant '\0' and first argument is not constant.
5526         (__stpcpy): Use __builtin_stpcpy for GCC 3.4+.
5527         (strncpy): Remove #ifdef _USE_STRING_ARCH_mempcpy variant.
5528         For GCC 3.2+ use __builtin_strncpy.
5529         (strncat): For GCC 3.2+ use __builtin_strncat.
5530         (strcmp): For GCC 3.2+ use __builtin_strcmp if both arguments are
5531         constant.
5532         (strcspn, strspn, strpbrk): For GCC 3.2+, use builtin function
5533         if both arguments are constant.
5535 2004-05-26  Ulrich Drepper  <drepper@redhat.com>
5537         * nss/nss_files/files-hosts.c: Fix condition for looking up IPv4
5538         mapped addresses in gethostbyaddr.
5540 2004-05-25  Ulrich Drepper  <drepper@redhat.com>
5542         * nss/digits_dots.c (__nss_hostname_digits_dots): Remove typep and
5543         flags parameter, convert afp to simple int parameter.  Adjust code.
5544         typep was never != NULL and flags therefore also unused.  *afp is
5545         never modified.
5546         * nss/nsswitch.h: Adjust __nss_hostname_digits_dots prototype.
5547         * nss/getXXbyYY.c: Remove HAVE_TYPE handling.  Adjust af parameter
5548         handling for __nss_hostname_digits_dots calls.
5549         * nss/getXXbyYY_r.c: Likewise.
5551         * elf/dl-load.c (_dl_map_object_from_fd): Map DSOs with MAP_DENYWRITE.
5553 2004-05-25  Steven Munroe  <sjmunroe@us.ibm.com>
5555         * sysdeps/powerpc/fpu/Makefile: Make ld.so a dependency of libm.so.
5556         * sysdeps/powerpc/fpu/bits/mathinline.h [__LIBC_INERNAL_MATH_INLINES]
5557         (__ieee754_sqrt): Define as __MATH_INLINE using fsqrt instruction.
5558         (__ieee754_sqrtf): Define as __MATH_INLINE using fsqrts instruction.
5559         * sysdeps/powerpc/fpu/e_sqrt.c (__slow_ieee754_sqrt): Moved
5560         implementation from w_sqrt.c.
5561         * sysdeps/powerpc/fpu/e_sqrtf.c (__slow_ieee754_sqrtf): Moved
5562         implementation from w_sqrtf.c.
5563         * sysdeps/powerpc/fpu/w_sqrt.c (__sqrt): Wrapper implementation
5564         using inline __ieee754_sqrt().
5565         * sysdeps/powerpc/fpu/w_sqrtf.c (__sqrtf): Wrapper implementation
5566         using inline __ieee754_sqrtf().
5567         * sysdeps/powerpc/powerpc32/sysdep.h [__ASSEMBLER__]: Include
5568         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
5569         * sysdeps/powerpc/sysdep.h [__ASSEMBLER__] (PPC_FEATURE_*): Define
5570         PPC_FEATURE_*  independent of __ASSEMBLER__.
5572 2004-05-25  Jakub Jelinek  <jakub@redhat.com>
5574         * sysdeps/pthread/aio_notify.c: Use <> instead of "" for aio_misc.h
5575         include.
5576         (aio_start_notify_thread): Define if not defined.
5577         (notify_func_wrapper): Use it.
5578         * sysdeps/pthread/aio_misc.c: Use <> instead of "" for aio_misc.h
5579         include.
5580         (aio_create_helper_thread): Define if not defined.
5581         (__aio_create_helper_thread): New function.
5582         (__aio_enqueue_request): Use aio_create_helper_thread.
5584         * nis/ypclnt.c (ypall_data, ypall_foreach): Remove.
5585         (struct ypresp_all_data): New type.
5586         (__xdr_ypresp_all): Change second argument to
5587         struct ypresp_all_data *.  Replace ypall_foreach and
5588         ypall_data with objp->foreach and objp->data.
5589         (yp_all): Remove status variable, add data.  Replace
5590         all uses of status with data.status.  Initialize data.foreach
5591         and data.data instead of ypall_foreach and ypall_data.
5593 2004-05-24  Jakub Jelinek  <jakub@redhat.com>
5595         * elf/dl-lookup.c (add_dependency): Set DF_1_NODELETE bit
5596         in l_flags_1, not in l_flags.
5598 2004-04-10  Robert Millan  <robertmh@gnu.org>
5600         * sysdeps/unix/sysv/linux/bits/in.h: Cosmetic fixes to get in sync
5601         with sysdeps/generic/bits/in.h.
5603 2004-05-25  Roland McGrath  <roland@frob.com>
5605         * sysdeps/generic/unwind-dw2-fde-glibc.c: Change copyright terms from
5606         GCC GPL to standard glibc LGPL.
5608 2004-05-24  Ulrich Drepper  <drepper@redhat.com>
5610         * manual/string.texi (Copying and Concatenation): Fixed second
5611         concat example.
5612         Reported by Fabian Pietsch <fabian@zzznowman.dyndns.org>.
5614 2004-05-23  Ulrich Drepper  <drepper@redhat.com>
5616         * malloc/obstack.c: Don't allow linking with _obstack.
5618 2004-05-23  Andreas Schwab  <schwab@suse.de>
5620         * sysdeps/m68k/m68020/bits/atomic.h: Use "+m" constraint instead
5621         of separate "m" constraints.
5623 2004-05-15  Chris Demetriou  <cgd@broadcom.com>
5625         * sysdeps/mips/dl-machine.h (ELF_DL_FRAME_SIZE)
5626         (ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS): For the N32
5627         and 64 ABIs, save and restore regs $10 and $11 (a6 and a7).
5629 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
5631         * malloc/obstack.c (_obstack) [!defined _LIBC]: Remove; not used.
5632         Add comment explaining why libc still defines it.
5634 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
5636         * malloc/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
5637         obstack_alignment_mask, obstack_alloc, obstack_base,
5638         obstack_blank, obstack_blank_fast, obstack_chunk_size,
5639         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
5640         obstack_grow0, obstack_init, obstack_int_grow,
5641         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
5642         obstack_next_free, obstack_object_size, obstack_ptr_grow,
5643         obstack_ptr_grow_fast, obstack_room): Remove declarations of
5644         nonexistent functions.
5646 2004-05-18  Steven Munroe  <sjmunroe@us.ibm.com>
5648         * sysdeps/powerpc/powerpc64/sysdep.h [__ASSEMBLER__]: Include
5649         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
5650         [PIC]: Redundent for powerpc64, removed.
5651         (ENTRY): Generate size and alignment for opd entry.
5652         (EALIGN): Generate size and alignment for opd entry.
5653         (END): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
5654         (END_GEN_TB): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
5656 2004-05-19  Ulrich Drepper  <drepper@redhat.com>
5658         * misc/regexp.h: Say the functions have been withdrawn.
5660         * wcsmbs/tst-wcpncpy.c: Add more tests.
5662 2004-05-18  Roland McGrath  <roland@frob.com>
5664         * sysdeps/generic/unwind.h: Change copyright terms from GCC GPL to
5665         standard glibc LGPL.
5666         * sysdeps/generic/unwind-dw2.c: Likewise.
5667         * sysdeps/generic/unwind-dw2-fde.c: Likewise.
5668         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
5669         * sysdeps/generic/unwind-pe.h: Likewise.
5671 2004-05-15  Petter Reinholdtsen  <pere@hungry.com>
5673         * locale/iso-3166.def: Remove YUGOSLAVIA and insert "SERBIA AND
5674         MONTENEGRO" which have taken over the code 819.  Patch from
5675         Danilo Segan. [BZ #40]
5677 2004-05-15  Jakub Jelinek  <jakub@redhat.com>
5679         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
5680         (SYSCALL_ERROR_HANDLER): Rename __sparc.get_pic.l7 to
5681         __sparc_get_pic_l7.
5683 2004-05-15  Joseph S. Myers  <jsm@polyomino.org.uk>
5685         * catgets/gencat.c: Update bug reporting instructions.
5686         * csu/version.c: Likewise.
5687         * debug/catchsegv.sh: Likewise.
5688         * debug/pcprofiledump.c: Likewise.
5689         * debug/xtrace.sh: Likewise.
5690         * elf/ldd.bash.in: Likewise.
5691         * iconv/iconv_prog.c: Likewise.
5692         * iconv/iconvconfig.c: Likewise.
5693         * locale/programs/locale.c: Likewise.
5694         * locale/programs/localedef.c: Likewise.
5695         * login/programs/pt_chown.c: Likewise.
5696         * malloc/memusage.sh: Likewise.
5697         * malloc/memusagestat.c: Likewise.
5698         * malloc/mtrace.pl: Likewise.
5699         * manual/crypt.texi: Likewise.
5700         * manual/install.texi: Likewise.
5701         * nss/makedb.c: Likewise.
5703 2004-05-14  Jakub Jelinek  <jakub@redhat.com>
5705         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Only
5706         CHECK_STATIC_TLS if sym != NULL.
5707         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
5708         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
5710 2004-05-12  Andreas Schwab  <schwab@suse.de>
5712         * posix/regex_internal.c (build_wcs_buffer): Also set pstr->mbs
5713         when translating.
5715 2004-05-13  H.J. Lu  <hongjiu.lu@intel.com>
5717         * Rules (xtests): Depend on tests.
5719 2004-05-13  Jakub Jelinek  <jakub@redhat.com>
5721         * libio/genops.c (_IO_default_xsputn): Avoid one overflow per char if
5722         count is negative, yet write_ptr < write_end.
5723         (_IO_default_xsgetn): Avoid one underflow per char if count is
5724         negative, yet read_ptr < read_end.
5726 2004-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
5728         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h (XTABS): Define XTABS
5729         equal to TAB3.
5731 2004-05-12  Ulrich Drepper  <drepper@redhat.com>
5733         * elf/dl-lookup.c (_dl_lookup_symbol_x): Correct _dl_signal_cerror
5734         call.
5736 2004-05-10  Roland McGrath  <roland@frob.com>
5738         * hurd/hurdlookup.c (__hurd_file_name_split): Return ENOENT for "".
5739         (__hurd_directory_name_split): Likewise.
5741 2004-05-10  Ulrich Drepper  <drepper@redhat.com>
5743         * po/fr.po: Update from translation team.
5745 2004-05-10  Andreas Jaeger  <aj@suse.de>
5747         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
5748         Correctly compute alignment.
5749         Patch by Michael Matz <matz@suse.de>.
5751 2004-05-09  Ulrich Drepper  <drepper@redhat.com>
5753         * sysdeps/generic/sigpause.c: Prevent sigpause prototype.
5754         * sysdeps/posix/sigpause.c: Likewise.
5755         * signal/signal.h: Don't define sigpause macro unless needed.
5757 2004-05-08  Jakub Jelinek  <jakub@redhat.com>
5759         * configure.in (libc_cv_libgcc_s_suffix): New check.
5760         (libc_cv_as_needed): Use -lgcc_s$libc_cv_libgcc_s_suffix.
5761         * config.make.in (libgcc_s_suffix): Set.
5762         * Makeconfig (libgcc_eh): Use -lgcc_s$(libgcc_s_suffix).
5764 2004-05-08  Ulrich Drepper  <drepper@redhat.com>
5766         * signal/signal.h: Use BSD sigpause only if BSD behavior is preferred.
5768 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
5770         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_1,
5771         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
5772         Load argument values into temporary variables.
5773         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_1,
5774         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
5775         Likewise.
5777 2004-05-07  Ulrich Drepper  <drepper@redhat.com>
5779         * sysdeps/unix/sysv/linux/Makefile: mq_send.c and mq_receive.c
5780         need to be compiled with exceptions.
5782 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
5784         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Fix memory handling.
5785         * sysdeps/generic/ifreq.c (__ifreq): Fix memory handling.
5787         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Make clear that
5788         realloc cannot fail.
5790         * nss/nss_files/files-netgrp.c (EXPAND): Free buffer which cannot
5791         be expanded.
5793         * nis/nis_table.c: Clean up memory handling.
5794         * nis/nis_subr.c (nis_getnames): Clean up memory handling.
5795         * nis/nis_removemember.c (nis_removemember): Add comment
5796         explaining use of realloc.
5798         * math/tgmath.h (fabs): Use __TGMATH_UNARY_REAL_IMAG_RET_REAL.
5799         (carg): Likewise.
5800         Patch by Lev S Bishop <lev.bishop@yale.edu>.
5802         * math/bug-tgmath1.c (main): Test fabs and carg as well.
5804 2004-05-06  Richard Henderson  <rth@redhat.com>
5806         * elf/elf.h (AT_L1I_CACHESHAPE, AT_L1D_CACHESHAPE,
5807         AT_L2_CACHESHAPE, AT_L3_CACHESHAPE): New.
5808         * sysdeps/unix/sysv/linux/alpha/Versions: Export
5809         __libc_alpha_cache_shape as a private symbol.
5810         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c: New file.
5811         * sysdeps/unix/sysv/linux/alpha/sysconf.c: New file.
5813 2004-05-06  Richard Henderson  <rth@redhat.com>
5815         * sysdeps/alpha/div_libc.h (_ITOFS, _ITOFT, _FTOIT, _ITOFT2): New.
5816         * sysdeps/alpha/divl.S: Use them.
5817         * sysdeps/alpha/divq.S: Likewise.
5818         * sysdeps/alpha/divqu.S: Likewise.
5819         * sysdeps/alpha/reml.S: Likewise.
5820         * sysdeps/alpha/remq.S: Likewise.
5821         * sysdeps/alpha/remqu.S: Likewise.
5823 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
5825         * math/tgmath.h (__TGMATH_UNARY_REAL_IMAG_RET_REAL):Define.
5826         (cimag): Use it.
5827         (creal): Likewise.
5828         * math/Makefile (tests): Add bug-tgmath1.
5829         * math/bug-tgmath1.c: New file.
5831 2004-05-05  Jakub Jelinek  <jakub@redhat.com>
5833         * sysdeps/alpha/atomicity.h: Remove.
5834         * sysdeps/generic/atomicity.h: Remove.
5836 2004-05-05  H.J. Lu  <hongjiu.lu@intel.com>
5838         * sysdeps/i386/i486/bits/string.h (strpbrk): Cast return to
5839         char *.
5841 2004-04-22  David Mosberger  <davidm@hpl.hp.com>
5843         * sysdeps/unix/sysv/linux/ia64/Makefile (librt-routines): Mention
5844           rt-sysdep.
5845         * sysdeps/unix/sysv/linux/ia64/rt-sysdep.S: New file.
5847         * sysdeps/ia64/strcat.c: New file.
5848         * sysdeps/ia64/strcat.S: Delete.
5850 2004-05-04  Jakub Jelinek  <jakub@redhat.com>
5852         * sysdeps/unix/sysv/linux/ia64/sysdep.S (USE___THREAD): Remove
5853         defined.
5855 2004-04-23  Jakub Jelinek  <jakub@redhat.com>
5857         * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Add
5858         libc_hidden_proto.  Define to __GI___libm_error_support for
5859         assembly going into libc.so.
5860         * sysdeps/ia64/fpu/libc_libm_error.c (__libm_error_support): Add
5861         libc_hidden_def.
5863         * include/libc-symbols.h (HIDDEN_BUILTIN_JUMPTARGET): Define.
5864         * sysdeps/ia64/bcopy.S (bcopy): Use it for jump to memmove.
5866         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Access
5867         gprel errno if RTLD_PRIVATE_ERRNO or __thread __libc_errno/errno
5868         if USE___THREAD.
5870 2004-05-03  Jakub Jelinek  <jakub@redhat.com>
5872         * sysdeps/unix/bsd/bits/fcntl.h (F_SETOWN, F_GETOWN): Define if
5873         __USE_BSD or __USE_UNIX98.
5874         * sysdeps/unix/bsd/ultrix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
5875         * sysdeps/unix/bsd/bsd4.4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
5876         * sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h (F_SETOWN, F_GETOWN):
5877         Likewise.
5878         * sysdeps/unix/common/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
5879         * sysdeps/unix/sysv/aix/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
5880         * sysdeps/unix/sysv/irix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
5881         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (F_SETOWN, F_GETOWN):
5882         Likewise.
5883         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_SETOWN, F_GETOWN):
5884         Likewise.
5885         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (F_SETOWN, F_GETOWN):
5886         Likewise.
5887         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (F_SETOWN, F_GETOWN):
5888         Likewise.
5889         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (F_SETOWN, F_GETOWN):
5890         Likewise.
5891         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (F_SETOWN, F_GETOWN):
5892         Likewise.
5893         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (F_SETOWN, F_GETOWN):
5894         Likewise.
5895         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (F_SETOWN, F_GETOWN):
5896         Likewise.
5897         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (F_SETOWN, F_GETOWN):
5898         Likewise.
5899         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (F_SETOWN, F_GETOWN):
5900         Likewise.
5901         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (F_SETOWN, F_GETOWN):
5902         Likewise.
5903         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (F_SETOWN, F_GETOWN):
5904         Likewise.
5905         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_SETOWN, F_GETOWN):
5906         Likewise.
5907         * sysdeps/generic/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
5908         * sysdeps/mach/hurd/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
5909         * io/sys/stat.h (S_ISSOCK, S_IFSOCK): Likewise.
5911 2004-05-01  Jakub Jelinek  <jakub@redhat.com>
5913         * posix/Versions (libc): Remove __libc_wait, __libc_waitpid,
5914         __libc_pause, __libc_nanosleep, __libc_pread, __libc_pread64,
5915         __libc_pwrite64, __waitid and __pselect @@GLIBC_PRIVATE.
5916         * stdlib/Versions (libc): Remove __on_exit@@GLIBC_PRIVATE.
5917         * sysdeps/unix/sysv/linux/Versions (libc): Remove
5918         __libc_sigaction@@GLIBC_PRIVATE.
5919         * sysdeps/unix/sysv/linux/x86_64/Versions (libc): Remove
5920         __modify_ldt@@GLIBC_PRIVATE.
5921         * socket/Versions (libc): Remove __libc_accept, __libc_send,
5922         __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv,
5923         __libc_sendto and __libc_connect @@GLIBC_PRIVATE.
5924         * stdio-common/Versions (libc): Remove
5925         _itoa_upper_digits@@GLIBC_PRIVATE.
5926         * resolv/Versions (libresolv): Remove __ns_samename@@GLIBC_PRIVATE.
5927         * misc/Versions (libc): Remove __libc_fsync, __libc_msync,
5928         __libc_readv and __libc_writev @@GLIBC_PRIVATE.
5929         * termios/Versions (libc): Remove __libc_tcdrain@@GLIBC_PRIVATE.
5930         * io/Versions (libc): Remove __libc_open, __libc_close, __libc_read,
5931         __libc_write, __libc_lseek, __libc_fcntl, __libc_open64 and
5932         __libc_lseek64 @@GLIBC_PRIVATE.
5934 2004-04-30  Jakub Jelinek  <jakub@redhat.com>
5936         * elf/dl-load.c (open_verify): Move e_phentsize check after e_type
5937         check.
5939 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
5941         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: New file.
5942         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: New file.
5943         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: New file.
5944         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: New file.
5945         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: Removed.
5946         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: New file.
5947         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: Removed.
5948         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: New file.
5949         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: New file.
5950         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: New file.
5951         * sysdeps/powerpc/powerpc64/fpu/s_lround.S: New file.
5952         * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: New file.
5953         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: New file.
5954         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: New file.
5955         * sysdeps/powerpc/powerpc64/fpu/s_round.S: New file.
5956         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: New file.
5957         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: New file.
5958         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: New file.
5960         * math/test-misc.c [LDBL_MANT_DIG == 106](main): Correct LDBL_MAX
5961         mantissa for AIX long double format.
5962         * misc/qefgcvt.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Define for AIX
5963         long double format.
5964         * misc/qefgcvt_r.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Likewise.
5965         * stdlib/fpioconst.c [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
5966         (_fpioconst_pow10): AIX long double format has same exponent range as
5967         double.
5968         * stdlib/fpioconst.h [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
5969         (LDBL_MAX_10_EXP_LOG): AIX long double format has same exponent range
5970         as double.
5972 2004-04-23  Art Haas  <ahaas@airmail.net>
5974         * sysdeps/unix/sysv/linux/kernel-features.h: Add 'defined'.
5976 2004-04-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
5978         * sysdeps/unix/sysv/linux/mq_getattr.c: Include <stddef.h>.
5979         * sysdeps/unix/sysv/linux/mq_notify.c: Likewise.
5980         * sysdeps/unix/sysv/linux/mq_open.c: Likewise.
5981         * sysdeps/unix/sysv/linux/mq_receive.c: Likewise.
5982         * sysdeps/unix/sysv/linux/mq_send.c: Likewise.
5984 2004-04-29  Philip Blundell  <pb@nexus.co.uk>
5986         * sysdeps/arm/dl-machine.h (RTLD_START): Avoid unnecessary GOT
5987         entries.
5989 2004-04-29  Jakub Jelinek  <jakub@redhat.com>
5991         * manual/resource.texi (sched_setaffinity, sched_getaffinity): Fix
5992         prototypes and description [BZ #131].
5994         * string/bits/string2.h (strpbrk): Cast NULL to char * [BZ #130].
5995         Patch by Ed Catmur <ed@catmur.co.uk>.
5996         * string/tst-inlcall.c (main): Add test for strpbrk.
5998         [BZ #140]
5999         * sysdeps/unix/sysv/linux/sys/sysctl.h: Remove linux/compiler.h
6000         include.
6001         (_LINUX_KERNEL_H, _LINUX_TYPES_H, _LINUX_LIST_H): Only define if not
6002         yet defined, #undef back after including linux/sysctl.h if defined
6003         here.
6004         (__LINUX_COMPILER_H, __user): Define if not yet defined, #undef
6005         back after including linux/sysctl.h if defined here.
6007         * sysdeps/sparc/sparc64/soft-fp/qp_qtoi.c (_Qp_qtoi): Use %f31
6008         for single precision register, add it to __asm clobbers [BZ #139].
6009         * sysdeps/sparc/sparc64/soft-fp/qp_qtoui.c (_Qp_qtoui): Use %f31
6010         for single precision register, add it to __asm clobbers.
6011         * sysdeps/sparc/sparc64/soft-fp/qp_qtoux.c (_Qp_qtoux): Use fqtox
6012         instead of fqtoi in QP_HANDLE_EXCEPTIONS.
6013         * sysdeps/sparc/sparc64/soft-fp/qp_qtox.c (_Qp_qtox): Likewise.
6014         Reported by M. H. VanLeeuwen <vanl@megsinet.net>.
6016 2004-04-23  Andreas Schwab  <schwab@suse.de>
6018         * sysdeps/unix/sysv/linux/m68k/register-dump.h: Use
6019         __attribute_used__.
6021 2004-04-22  Philip Blundell  <philb@gnu.org>
6023         * sysdeps/arm/dl-machine.h (elf_machine_rela): Don't use INTUSE
6024         when calling _dl_signal_error.
6025         (elf_machine_rel): Likewise.
6027 2004-04-21  Ulrich Drepper  <drepper@redhat.com>
6029         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Define _GI___sigsetjmp
6030         and use it internally instead of __sigsetjmp.
6031         * sysdeps/ia64/fpu/s_frexpf.c (frexpf): Use _GI___libm_frexp_4f.
6032         * sysdeps/ia64/fpu/s_frexpl.c (frexpl): Use _GI___libm_frexp_4l.
6033         * sysdeps/ia64/fpu/libm_frexp4.S: Define _GI___libm_frexp_4.
6034         * sysdeps/ia64/fpu/libm_frexp4f.S: Define _GI___libm_frexp_4f.
6035         * sysdeps/ia64/fpu/libm_frexp4l.S: Define _GI___libm_frexp_4l.
6036         * sysdeps/ia64/fpu/s_frexp.c (frexp): Use _GI___libm_frexp_4.
6037         * sysdeps/ia64/fpu/libm_support.h: Declare _GI___libm_frexp_4,
6038         _GI___libm_frexp_4f, _GI___libm_frexp_4l.
6039         * sysdeps/ia64/fpu/bits/mathinline.h: New file.
6040         * sysdeps/unix/sysv/linux/ia64/__start_context.S: Use
6041         HIDDEN_JUMPTARGET for exit call.
6042         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use HIDDEN_JUMPTARGET for
6043         _exit call.
6044         * sysdeps/ia64/bcopy.S: Use HIDDEN_JUMPTARGET for memmove call.
6045         * sysdeps/ia64/strcat.S: Use HIDDEN_JUMPTARGET for strlen and
6046         strcpy calls.
6048 2004-04-21  Jakub Jelinek  <jakub@redhat.com>
6050         * posix/tst-chmod.c (do_test): Fix a typo.
6052         * elf/lateglobal.c (main): Fix error checks.
6053         Patch by Stephen Clarke <stephen.clarke@st.com>.
6055         * manual/ctype.texi (isblank, iswblank): Mark as ISO functions,
6056         mention they have been added in ISO C99.
6057         Reported by Ben Pfaff <blp@cs.stanford.edu>.
6059 2004-03-31  H.J. Lu  <hongjiu.lu@intel.com>
6061         * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: Fix typo.
6063 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
6065         * sysdeps/unix/sysv/linux/shm_open.c (shm_unlink): Change EPERM into
6066         EACCES.
6068 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
6070         * stdio-common/vfscanf.c (_IO_vfscanf): Revert last %% whitespace
6071         handling change.
6072         * stdio-common/tst-sscanf.c (int_tests): Adjust.
6074         * nis/nss-nis.c: Include stdlib.h.
6076         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Shut up a
6077         warning.
6078         * sysdeps/sparc/sparc64/memcmp.S (memcmp): Remove BP_SYM () from
6079         libc_hidden_builtin_def.
6081 2004-04-20  Jim Meyering  <jim@meyering.net>
6083         * misc/error.c (error_tail): Don't leak upon realloc failure.
6085 2004-04-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
6087         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
6088         Use RETURN_ADDRESS instead of __builtin_return_address.
6090 2004-04-19  Ulrich Drepper  <drepper@redhat.com>
6092         * sysdeps/unix/sysv/linux/mq_unlink.c: Rewrite to produce more
6093         compact code.
6095 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
6097         * stdio-common/vfscanf.c (_IO_vfscanf): When skipping whitespace,
6098         do input_error () instead of conv_error () and don't look at errno.
6099         Don't eat any whitespace before %% if skip_space == 0.
6100         * stdio-common/tst-sscanf.c (int_tests): New array.
6101         (main): Run int_tests.
6104 See ChangeLog.14 for earlier changes.