[BZ #722]
[glibc.git] / ChangeLog
blobb85450bccb38a3f83a4ac6d8f6fb08b7c5a5672a
1 2005-02-11  Barry deFrese  <bddebian@comcast.net>
3         [BZ #722]
4         * sysdeps/mach/hurd/setresgid.c: Use weak_alias.
5         * sysdeps/mach/hurd/setresuid.c: Likewise.
7 2005-02-14  GOTO Masanori  <gotom@debian.or.jp>
9         * misc/sys/syslog.h: Fix typo in comment.
11 2005-02-14  Roland McGrath  <roland@redhat.com>
13         [BZ #720]
14         * sysdeps/unix/sysv/linux/sys/kd.h: Don't leave _LINUX_TYPES_H defined
15         if it wasn't originally.
17 2005-02-14  GOTO Masanori  <gotom@debian.or.jp>
19         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove the duplicated
20         getpeername entry.
21         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
22         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
24 2005-02-11  Jakub Jelinek  <jakub@redhat.com>
26         * scripts/soversions.awk: Only record first WORDSIZE{32,64}
27         matching line.
29 2005-02-14  Alan Modra  <amodra@bigpond.net.au>
31         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Define
32         with auto inline, and attribute always_inline.
33         (elf_machine_rela_relative, elf_machine_lazy_rel): Likewise.
34         (elf_machine_rel, elf_machine_rel_relative): Likewise.
35         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
36         (elf_machine_rela_relative, elf_machine_lazy_rel): Likewise.
37         (elf_machine_rel, elf_machine_rel_relative): Likewise.
38         (elf_machine_tprel): Likewise.
40 2005-02-14  Andreas Schwab  <schwab@suse.de>
42         * manual/filesys.texi (Random Access Directory): Fix type of file
43         position value for telldir and seekdir.
44         (Attribute Meanings): Fix typo.
46 2005-02-14  H.J. Lu  <hongjiu.lu@intel.com>
48         * csu/elf-init.c (__libc_csu_fini): Enable if LIBC_NONSHARED
49         isn't defined.
50         * sysdeps/generic/libc-start.c (LIBC_START_MAIN): Call fini
51         if SHARED isn't defined.
52         * elf/Makefile (tests-static): Add tst-array1-static.
53         ($(objpfx)tst-array1-static.out): New target.
54         * elf/tst-array1-static.c: New file.
56 2005-02-11  Jakub Jelinek  <jakub@redhat.com>
58         * debug/chk_fail.c (__chk_fail): Add a while (1) loop around
59         __libc_message to kill GCC warning about noreturn function returning.
61         * elf/rtld.c (dlmain): If LD_TRACE_PRELINKING, clear l_relocated flag
62         before relocating ld.so again.
64         * elf/rtld.c (_dl_start): Set bootstrap_map.l_relocated even
65         for already prelinked ld.so.
67 2005-02-11  Roland McGrath  <roland@redhat.com>
69         [BZ #715]
70         * Makefile (installed-stubs): New variable.
71         Set to $(inst_includedir)/gnu/stubs.h if $(biarch) is no,
72         or to $(inst_includedir)/gnu/stubs-$(biarch).h if otherwise.
73         [$(biarch) != no] (install-others-nosubdir): Add $(installed-stubs).
74         ($(inst_includedir)/gnu/stubs.h): Use $(installed-stubs) for this
75         rule's target.
76         ($(inst_includedir)/gnu/stubs.h): New target, install from ...
77         * include/stubs-biarch.h: New file.
79         * shlib-versions (i.86-.*-.*): Add WORDSIZE64 line mapping to x86_64.
81         * Makeconfig ($(common-objpfx)soversions.mk): Depend on Makeconfig.
82         Emit defn for variable `biarch'.
84         * include/stub-tag.h: Update comment.
86         * scripts/soversions.awk: Fix default version set handling.
88 2005-02-10  Roland McGrath  <roland@redhat.com>
90         [BZ #157]
91         * include/libc-symbols.h (stub_warning): Emit a marker section called
92         .gnu.glibc-stub.NAME.
93         * Makerules ($(objpfx)stubs): Depend on object files, not dep files.
94         Use objdump to collect those marker section names.
95         ($(common-objpfx)shlib.lds): Discard .gnu.glibc-stub.* sections.
97         * Rules (subdir_objs, subdir_stubs): New phony targets.
98         * Makefile (+subdir_targets): Add them.
100         * Makerules ($(common-objpfx)Versions.all): Grok new leading column in
101         soversions.i.
103         * scripts/lib-names.awk: Consider [0-9].* a "number", not just [0-9]+.
104         Reported by H.J. Lu <hongjiu.lu@intel.com>.
106         * scripts/lib-names.awk: Always print WORDSIZE32 section first when
107         doing two.
109 2005-02-10  Jakub Jelinek  <jakub@redhat.com>
111         * sysdeps/powerpc/powerpc32/bits/link.h: Removed.
112         * sysdeps/powerpc/powerpc64/bits/link.h: Moved to...
113         * sysdeps/powerpc/bits/link.h: ... here.  New file.
115 2005-02-09  Jakub Jelinek  <jakub@redhat.com>
117         [BZ #710]
118         * stdlib/random_r.c (__initstate_r): Save old state.
119         * stdlib/Makefile (tests): Add tst-random2.
120         * stdlib/tst-random2.c: New test.
121         Reported by Peter Bergner <bergner@vnet.ibm.com>.
123 2005-01-25  H.J. Lu  <hongjiu.lu@intel.com>
125         * dlfcn/dlfcn.c (init): Put it in .init_array section.
127 2005-02-10  Roland McGrath  <roland@redhat.com>
129         [BZ #632]
130         * scripts/soversions.awk: Expect cpu, vendor, os as separate variables
131         from command line.
132         Grok shlib-versions lines with WORDSIZE* in second column.
133         Add new leading column to output, DEFAULT for existing output lines.
134         Also emit lines with WORDSIZE* for alternate configurations.
135         * Makeconfig ($(common-objpfx)soversions.i): Pass those variables.
136         ($(common-objpfx)soversions.mk): Grok new column, use only DEFAULT.
137         ($(common-objpfx)gnu/lib-names.stmp): Depend on soversions.i instead
138         of soversions.mk; replace inline shell script with use of ...
139         * scripts/lib-names.awk: New file.  If input has non-DEFAULT lines,
140         emit multiple sets of macros under #if.
141         * shlib-versions (x86_64-.*-.*): Add WORDSIZE32 line mapping to i686.
142         (s390x-.*-.*): Likewise for s390.
143         (powerpc64-.*-.*): Likewise for powerpc.
144         (sparc64-.*-.*): Likewise for sparc.
145         (s390-.*-.*, powerpc.*-.*-.*, sparc.*-.*-.*): Add WORDSIZE64 entries
146         for these mapping back to the above.
148 2005-02-08  Jakub Jelinek  <jakub@redhat.com>
150         * elf/dl-load.c (_dl_map_object_from_fd): Fix a typo.
152 2005-02-08  Andreas Schwab  <schwab@suse.de>
154         * sysdeps/m68k/dl-machine.h (elf_machine_rela): Remove use of
155         RESOLVE.
157 2005-02-07  Richard Henderson  <rth@redhat.com>
159         * iconvdata/jis0208.h (struct jisx0208_ucs_idx): Move before use.
161 2005-02-08  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
163         * sysdeps/sh/dl-machine.h (elf_machine_rela): Remove code using
164         RESOLVE.
166 2005-02-07  Ulrich Drepper  <drepper@redhat.com>
168         * elf/dl-load.c (_dl_map_object_from_fd): Makre sure registers are
169         set correctly.
171 2005-01-07  Richard Henderson  <rth@redhat.com>
173         * math/math_private.h (__copysign): Define as builtin for gcc 4.
174         (__copysignf, __copysignl): Likewise.
175         * sysdeps/alpha/fpu/bits/mathinline.h (copysign): Don't define
176         for gcc 4.0.
177         (copysignf, copysignl, fabsf, fabs): Likewise.
178         (__copysign, __copysignf, __copysignl): Remove.
179         (__fabs, __fabsf): Remove.
181 2005-01-07  Jakub Jelinek  <jakub@redhat.com>
183         * elf/dl-load.c (open_path): If rtld_search_dirs is in RELRO segment,
184         avoid writing to it if none of the standard search directories exist.
186 2005-02-07  Steven Munroe  <sjmunroe@us.ibm.com>
188         [BZ #700]
189         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
190         (__novec_setcontext, __setcontext): Fix typo so CCR is restored.
191         Load MSR as a doubleword.
192         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
193         (__novec_swapcontext, __swapcontext): Likewise.
195 2005-02-07  Ulrich Drepper  <drepper@redhat.com>
197         * iconv/iconv_prog.c (main): Provide more help in case on an error.
199         * sysdeps/unix/sysv/linux/i386/sysdep.h (check_consistency): Define.
201 2005-02-07  Jakub Jelinek  <jakub@redhat.com>
203         * nscd/nscd.c (termination_handler): Avoid segfault if some database
204         is not enabled.
206         * nscd/nscd_getai.c (__nscd_getai): If ai_resp->found == -1, set
207         __nss_not_use_nscd_hosts and return -1.
208         * nscd/nscd_initgroups.c (__nscd_getgrouplist): If
209         initgr_resp->found == -1, set __nss_not_use_nscd_group and return -1.
210         Avoid leaking sockets.
212 2005-01-28  Andreas Schwab  <schwab@suse.de>
213             H.J. Lu  <hongjiu.lu@intel.com>
215         [BZ #677]
216         * elf/dl-runtime.c (fixup): Change return type to
217         DL_FIXUP_VALUE_TYPE. Use DL_FIXUP_VALUE_TYPE,
218         DL_FIXUP_MAKE_VALUE and DL_FIXUP_VALUE_CODE_ADDR for relocation
219         values. Use DL_FIXUP_VALUE_ADDR and DL_FIXUP_ADDR_VALUE to
220         store and retrieve relocation values.
221         (profile_fixup): Likewise.
222         * include/link.h (link_map): Use DL_FIXUP_VALUE_TYPE for
223         l_reloc_result.
224         * sysdeps/generic/dl-fptr.h (link_map): Forward declaration.
225         * sysdeps/generic/dl-lookupcfg.h (DL_FIXUP_VALUE_TYPE): New.
226         (DL_FIXUP_MAKE_VALUE): Likewise.
227         (DL_FIXUP_VALUE_CODE_ADDR): Likewise.
228         (DL_FIXUP_VALUE_ADDR): Likewise.
229         (DL_FIXUP_ADDR_VALUE): Likewise.
230         * sysdeps/ia64/dl-lookupcfg.h: Include <dl-fptr.h> for "struct fdesc".
231         (DL_FIXUP_VALUE_TYPE): New.
232         (DL_FIXUP_MAKE_VALUE): Likewise.
233         (DL_FIXUP_VALUE_CODE_ADDR): Likewise.
234         (DL_FIXUP_VALUE_ADDR): Likewise.
235         (DL_FIXUP_ADDR_VALUE): Likewise.
236         * sysdeps/ia64/dl-machine.h (elf_machine_profile_fixup_plt): Removed.
237         (elf_machine_profile_plt): Removed.
238         (elf_machine_fixup_plt): Change return type and type of value
239         parameter to struct fdesc.
240         (elf_machine_plt_value): Likewise.
241         (elf_machine_rela): Use DL_FIXUP_MAKE_VALUE to construct
242         argument for elf_machine_fixup_plt.
244 2005-02-07  Jakub Jelinek  <jakub@redhat.com>
246         * nscd/nscd.init (reload): Print Reloading nscd: before and a newline
247         after the status string printed by killproc.
249 2004-11-18  Alexandre Oliva  <aoliva@redhat.com>
251         * manual/.cvsignore: Add dir-add.texi.
253 2005-02-06  Richard Henderson  <rth@redhat.com>
255         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Use RESOLVE_MAP
256         all the time.
258 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
260         * configure.in (sysnames): Append sysdeps/generic for each add-on.
261         * configure: Regenerated.
263 2005-02-02  Alfred M. Szmidt  <ams@gnu.org>
265         * sysdeps/mach/hurd/tls.h: Include <stdbool.h>
266         (dtv_t): Change pointer type to be a struct which also contains
267         information whether the memory pointed to is static TLS or not.
269         * sysdeps/generic/syslog.c (send_flags) [!send_flags]: Define it.
271         * shadow/sgetspent_r.c (FALSE): Macro renamed to ...
272         (FALSEP): ... this.  Updated all references.
274         * libio/fmemopen.c: Include <stdint.h>.
276 2005-01-30  Ulrich Drepper  <drepper@redhat.com>
278         * nscd/nscd_helper.c (get_mapping): Use MSG_NOSIGNAL if available.
279         * nscd/connections.c (send_ro_fd): Likewise.
281 2005-01-28  H.J. Lu  <hongjiu.lu@intel.com>
283         * elf/tst-auditmod1.c: Add ia64 entries.
284         * sysdeps/generic/ldsodefs.h (La_ia64_regs): New.
285         (La_ia64_retval): New.
286         (audit_ifaces): Add ia64 entries.
287         * sysdeps/ia64/bits/link.h: New file.
288         * sysdeps/ia64/dl-machine.h (elf_machine_runtime_setup): Test
289         for dl_profile non-null.
290         (ARCH_LA_PLTENTER): New.
291         (ARCH_LA_PLTEXIT): New.
292         * sysdeps/ia64/dl-trampoline.S (_dl_runtime_resolve): Allocate
293         only 2 output registers. Allocate stack to save/restore
294         8 incoming fp registers. Call _dl_fixup instead of fixup.
295         (_dl_runtime_profile): Rewrite.
297 2005-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
299         * sysdeps/s390/bits/link.h: New file.
300         * sysdeps/s390/s390-32/dl-trampoline.S: New file.
301         * sysdeps/s390/s390-64/dl-trampoline.S: New file.
302         * sysdeps/s390/s390-32/dl-machine.h: Move PLT trampolines to
303         dl-trampoline.S. Use RESOLVE_MAP instead of RESOLVE to protect
304         relocation code.
305         (elf_machine_runtime_setup): Test for dl_profile non-null.
306         (elf_machine_rela): Remove code using RESOLVE.
307         (ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): New.
308         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
309         * sysdeps/generic/ldsodefs.h (La_s390_32_regs, La_s390_32_retval,
310         La_s390_64_regs, La_s390_64_retval): New.
311         * elf/tst-auditmod1.c: Add s390 entries.
313         * sysdeps/s390/bits/string.h (strlen, strncpy, strcat, strncat,
314         strncat, memchr, strcmp): Add missing memory clobber.
316 2005-01-27  Ulrich Drepper  <drepper@redhat.com>
318         * sysdeps/unix/sysv/linux/alpha/oldglob.c (__old_globfree): Also
319         copy gl_offs.  Patch by Sergey Tikhonov <tsv@solvo.ru>.
321 2005-01-27  Paolo Bonzini  <bonzini@gnu.org>
323         [BZ #558]
324         * posix/regcomp.c (calc_inveclosure): Return reg_errcode_t.
325         Initialize the node sets in dfa->inveclosures.
326         (analyze): Initialize inveclosures only if it is needed.
327         Check errors from calc_inveclosure.
328         * posix/regex_internal.c (re_dfa_add_node): Do not initialize
329         the inveclosure node set.
330         * posix/regexec.c (re_search_internal): If nmatch includes unused
331         subexpressions, reset them to { rm_so: -1, rm_eo: -1 } here.
333         * posix/regcomp.c (parse_bracket_exp) [!RE_ENABLE_I18N]:
334         Do build a SIMPLE_BRACKET token.
336         * posix/regexec.c (transit_state_mb): Do not examine nodes
337         where ACCEPT_MB is not set.
339 2005-01-27  Jakub Jelinek  <jakub@redhat.com>
341         * stdlib/tst-fmtmsg.c: Include stdlib.h.
342         * stdio-common/tst-fmemopen2.c: Include string.h.
343         * posix/execvp.c: Include stdbool.h.
345 2004-12-13  Paolo Bonzini  <bonzini@gnu.org>
347         Separate parsing and creation of the NFA.  Avoided recursion on
348         the (very unbalanced) parse tree.
349         [BZ #611]
350         * posix/regcomp.c (struct subexp_optimize, analyze_tree, calc_epsdest,
351         re_dfa_add_tree_node, mark_opt_subexp_iter): Removed.
352         (optimize_subexps, duplicate_tree, calc_first, calc_next,
353         mark_opt_subexp): Rewritten.
354         (preorder, postorder, lower_subexps, lower_subexp, link_nfa_nodes,
355         create_token_tree, free_tree, free_token): New.
356         (analyze): Accept a regex_t *.  Invoke the passes via the preorder and
357         postorder generic visitors.  Do not initialize the fields in the
358         re_dfa_t that represent the transitions.
359         (free_dfa_content): Use free_token.
360         (re_compile_internal): Analyze before UTF-8 optimizations.  Do not
361         include optimization of subexpressions.
362         (create_initial_state): Fetch the DFA node index from the first node's
363         bin_tree_t *.
364         (optimize_utf8): Abort on unexpected nodes, including OP_DUP_QUESTION.
365         Return on COMPLEX_BRACKET.
366         (duplicate_node_closure): Fix comment.
367         (duplicate_node): Do not initialize the fields in the
368         re_dfa_t that represent the transitions.
369         (calc_eclosure, calc_inveclosure): Do not handle OP_DELETED_SUBEXP.
370         (create_tree): Remove final argument.  All callers adjusted.  Rewritten
371         to use create_token_tree.
372         (parse_reg_exp, parse_branch, parse_expression, parse_bracket_exp,
373         build_charclass_op): Use create_tree or create_token_tree instead
374         of re_dfa_add_tree_node.
375         (parse_dup_op): Likewise.  Also free the tree using free_tree for
376         "<re>{0}", and lower OP_DUP_QUESTION to OP_ALT: "a?" is equivalent
377         to "a|".  Adjust invocation of mark_opt_subexp.
378         (parse_sub_exp): Create a single SUBEXP node.
379         * posix/regex_internal.c (re_dfa_add_node): Remove last parameter,
380         always perform as if it was 1.  Do not initialize OPT_SUBEXP and
381         DUPLICATED, and initialize the DFA fields representing the transitions.
382         * posix/regex_internal.h (re_dfa_add_node): Adjust prototype.
383         (re_token_type_t): Move OP_DUP_PLUS and OP_DUP_QUESTION to the tokens
384         section.  Add a tree-only code SUBEXP.  Remove OP_DELETED_SUBEXP.
385         (bin_tree_t): Include a full re_token_t for TOKEN.  Turn FIRST and
386         NEXT into pointers to trees.  Remove ECLOSURE.
388 2004-12-28  Paolo Bonzini  <bonzini@gnu.org >
390         [BZ #605]
391         * posix/regcomp.c (parse_bracket_exp): Do not modify DFA nodes
392         that were already created.
393         * posix/regex_internal.c (re_dfa_add_node): Set accept_mb field
394         in the token if needed.
395         (create_ci_newstate, create_cd_newstate): Set accept_mb field
396         from the tokens' field.
397         * posix/regex_internal.h (re_token_t): Add accept_mb field.
398         (ACCEPT_MB_NODE): Removed.
399         * posix/regexec.c (proceed_next_node, transit_states_mb,
400         build_sifted_states, check_arrival_add_next_nodes): Use
401         accept_mb instead of ACCEPT_MB_NODE.
403 2005-01-26  Ulrich Drepper  <drepper@redhat.com>
405         * debug/chk_fail.c (__chk_fail): Print program name in final message.
407         * sysdeps/unix/sysv/linux/kernel-features.h: Found reference to
408         MSG_NOSIGNAL being in 2.2 kernels.
410 2005-01-26  Jakub Jelinek  <jakub@redhat.com>
412         * sysdeps/unix/sysv/linux/i386/sysdep.h
413         (SYSCALL_ERROR_HANDLER_TLS_STORE): Remove unnecessary 0 imm.
415         [BZ #693]
416         * posix/regex_internal.h (DUMMY_CONSTRAINT): Rename to...
417         (WORD_DELIM_CONSTRAINT): ...this.
418         (NOT_WORD_DELIM_CONSTRAINT): Define.
419         (re_context_type): Add INSIDE_NOTWORD and NOT_WORD_DELIM,
420         change WORD_DELIM to use WORD_DELIM_CONSTRAINT.
421         * posix/regcomp.c (peek_token): For \B create NOT_WORD_DELIM
422         anchor instead of INSIDE_WORD.
423         (parse_expression): Handle NOT_WORD_DELIM constraint.
424         * posix/bug-regex19.c (tests): Adjust tests that relied on \B
425         being inside word instead of not word delim.
426         * posix/tst-rxspencer.c (mb_frob_pattern): Don't frob escaped
427         characters.
428         * posix/rxspencer/tests: Add some new tests.
430 2005-01-14  GOTO Masanori  <gotom@debian.or.jp>
432         * sunrpc/rpc_main.c (s_output): Generate #include <rpc/pmap_clnt.h>
433         irrespective of Cflag.
435         * manual/memory.texi (sbrk): Fix definition.
436         * manual/string.texi (strcasestr): Fix example typo.
438 2005-01-25  Roland McGrath  <roland@redhat.com>
440         * sysdeps/generic/syslog.c [NO_SIGPIPE]: Protect sigpipe_handler decl.
442 2005-01-23  Roland McGrath  <roland@redhat.com>
444         * sysdeps/i386/Makefile (defines): If -mno-tls-direct-seg-refs appears
445         in $(CFLAGS), add -DNO_TLS_DIRECT_SEG_REFS.
446         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]
447         (SYSCALL_ERROR_HANDLER) [NO_TLS_DIRECT_SEG_REFS]: Load thread pointer
448         from %gs:0 and add to that value, rather that direct %gs:OFFSET access.
449         * sysdeps/unix/i386/sysdep.S [NO_TLS_DIRECT_SEG_REFS]: Likewise.
451 2005-01-25  Jakub Jelinek  <jakub@redhat.com>
453         * stdlib/fmtmsg.c (addseverity): Remove new_string variable.
454         (free_mem): Don't free string.
455         * stdlib/tst-fmtmsg.c: Include string.h.
456         (main): Add some more tests.
458 2005-01-25  Andreas Schwab  <schwab@suse.de>
460         * timezone/asia: Update from tzdata2005c.
461         * timezone/backward: Likewise.
462         * timezone/leapseconds: Likewise.
463         * timezone/northamerica: Likewise.
464         * timezone/southamerica: Likewise.
466         * timezone/private.h: Update from tzcode2005c.
467         * timezone/tzfile.h: Likewise.
468         * timezone/zdump.c: Likewise.
469         * timezone/zic.c: Likewise.
471 2005-01-25  Ulrich Drepper  <drepper@redhat.com>
473         * sysdeps/i386/dl-machine.h (elf_machine_rel): Remove code using
474         RESOLVE.
475         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Remove code
476         using RESOLVE.
477         * elf/rtld.c (_dl_start): Remove RESOLVE definition.
479 2005-01-25  Alan Modra  <amodra@bigpond.net.au>
481         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Test
482         sym_map, not sym, against zero.
484 2005-01-24  Ulrich Drepper  <drepper@redhat.com>
486         * misc/syslog.c: Moved to...
487         * sysdeps/generic/syslog.c: ...here.
488         [NO_SIGIPE]: Don't install SIGPIPE handler.
489         * sysdeps/unix/sysv/linux/syslog.c: New file.
490         * sysdeps/unix/sysv/linux/kernel-features.h: Define
491         __ASSUME_MSG_NOSIGNAL.
493 2005-01-22  Richard Henderson  <rth@redhat.com>
495         * sysdeps/alpha/dl-trampoline.S: New file.
496         * sysdeps/alpha/dl-machine.h: Move PLT trampolines there.
497         Use RESOLVE_MAP instead of RESOLVE to protect relocation code.
498         (elf_machine_runtime_setup): Test for dl_profile non-null.
499         (ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): New.
500         * sysdeps/alpha/bits/link.h: New file.
501         * sysdeps/generic/ldsodefs.h (La_alpha_regs, La_alpha_retval): New.
502         (struct audit_ifaces): Add alpha entries.
503         * elf/tst-auditmod1.c: Add alpha entries.
505 2005-01-22  Ulrich Drepper  <drepper@redhat.com>
507         * sysdeps/ia64/dl-machine.h: Remove PLT trampolines here.
508         * sysdeps/ia64/dl-trampoline.S: New file.
510         * sysdeps/x86_64/bits/link.h: Use namespace-safe identifiers in
511         La_x86_64_xmm definition.
513         * posix/Makefile: Use CFLAGS-*.os instead of CFLAGS-*.c for frame
514         pointer option.
515         * stdlib/Makefile (CFLAGS-system.os): Use this instead of
516         CFLAGS-system.c for frame pointer option.
518 2005-01-21  Roland McGrath  <roland@redhat.com>
520         * elf/dl-runtime.c (_dl_profile_fixup): Remove const from REGS.
521         * sysdeps/i386/dl-machine.h: Update decl.
523 2005-01-21  Jakub Jelinek  <jakub@redhat.com>
525         * elf/Makefile: Add rules to build and run tst-align2.
526         * elf/tst-align2.c: New test.
527         * elf/tst-alignmod2.c: New file.
528         * sysdeps/powerpc/tst-stack-align.h: New file.
529         * sysdeps/i386/dl-machine.h (RTLD_START): Align stack and clear frame
530         pointer before calling _dl_init.
531         * sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
533 2005-01-20  Ulrich Drepper  <drepper@redhat.com>
535         * posix/execl.c: Do not allocate potentially large buffers on the
536         stack.
537         * posix/execle.c: Likewise.
538         * posix/execlp.c: Likewise.
539         * posix/execlp.c: Likewise.
540         (script_execute): Removed.
541         (allocate_scripts_argv): New function.  Called at most once to
542         allocate memory, not every time a script is run.  Adjust caller.
544         * sysdeps/generic/wordexp.c (exec_comm): Add a few
545         TEMP_FAILURE_RETRY.  Reorganize code to avoid multiple calls to
546         exec_comm_child.
547         (exec_comm_child): Can now be inlined.
549         * posix/Makefile: Add -fomit-frame-pointer for a few more files.
550         * stdlib/Makefile: Likewise.
552 2005-01-19  Roland McGrath  <roland@redhat.com>
554         [BZ #681]
555         * sunrpc/openchild.c (_openchild): Use NULL instead of 0 for trailing
556         argument to execlp.
557         Reported by Marcus Meissner <meissner@suse.de>.
559 2005-01-19  Jakub Jelinek  <jakub@redhat.com>
561         * hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Fix a typo
562         in assert.
563         * iconv/strtab.c (strtabfinalize): Likewise.
565         * libio/iofopncook.c (_IO_cookie_seekoff): Add prototype.
567 2005-01-17  Roland McGrath  <roland@redhat.com>
569         * nscd/Makefile (LDLIBS-nscd): New variable.
570         ($(objpfx)nscd): Use that instead of selinux-LIBS.
572         * Makeconfig (link-extra-libs): Define just as $(LDLIBS-$(@F)).
573         (link-extra-libs-static): Define to $(link-extra-libs).
574         (link-extra-libs-bounded): Likewise.
576 2005-01-17  Ulrich Drepper  <drepper@redhat.com>
578         * include/link.h: Remove stray definition of pltenter.
580 2005-01-16  GOTO Masanori  <gotom@debian.or.jp>
582         * sysdeps/unix/rewinddir.c: Reset filepos.
583         * dirent/tst-seekdir.c: Check telldir value after calling rewinddir.
585 2005-01-15  Ulrich Drepper  <drepper@redhat.com>
587         * elf/tst-auditmod1.c: Reduce duplication.
589 2005-01-16  Andreas Schwab  <schwab@suse.de>
591         * sysdeps/m68k/dl-machine.h: Remove trampoline code.  Define
592         ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.
593         (elf_machine_runtime_setup): If profile != 0 does not anymore mean
594         GLRO(dl_profile) != NULL.
595         * sysdeps/m68k/dl-trampoline.S: New file.
596         * sysdeps/m68k/bits/link.h: New file.
597         * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add m68k
598         variants.
599         * elf/tst-auditmod1.c: Add m68k support.
601 2005-01-14  Ulrich Drepper  <drepper@redhat.com>
603         * posix/regcomp.c [!_LIBC] (init_dfa): Fix determining of relevant
604         LC_* variable.  Patch by Aharon Robbins <arnold@skeeve.com>.
606         * stdlib/fmtmsg.c (internal_addseverity): Remove incorrect free call.
607         * stdlib/tst-fmtmsg.c (main): Add another addseverity test.
609 2005-01-12  Ulrich Drepper  <drepper@redhat.com>
611         * elf/dl-load.c (_dl_map_object_from_fd): We don't have to allow
612         callers from libc anymore.
614         * elf/dl-open.c (dl_open_worker): Pass __RTLD_AUDIT flag from caller
615         to _dl_map_object_deps.
616         * elf/dl-load.c (_dl_map_object_from_fd): Don't change memory
617         protections when loading auditing modules.
619         * dlfcn/dlopen.c (dlopen_doit): Catch invalid mode arguments and fail.
621         * posix/getconf.c: Update copyright year.
622         * nss/getent.c: Likewise.
623         * nscd/nscd_nischeck.c: Likewise.
624         * iconv/iconvconfig.c: Likewise.
625         * iconv/iconv_prog.c: Likewise.
626         * elf/ldconfig.c: Likewise.
627         * catgets/gencat.c: Likewise.
628         * csu/version.c: Likewise.
629         * elf/ldd.bash.in: Likewise.
630         * elf/sprof.c (print_version): Likewise.
631         * locale/programs/locale.c: Likewise.
632         * locale/programs/localedef.c: Likewise.
633         * nscd/nscd.c (print_version): Likewise.
634         * debug/xtrace.sh: Likewise.
635         * malloc/memusage.sh: Likewise.
636         * malloc/mtrace.pl: Likewise.
637         * debug/catchsegv.sh: Likewise.
639 2005-01-11  Thorsten Kukuk  <kukuk@suse.de>
641         * sunrpc/svc_tcp.c (svctcp_create): Call listen with SOMAXCONN
642         as backlog.
643         * sunrpc/svc_unix.c (svcunix_create): Likewise.
645         * grp/putgrent.c (putgrent): Don't write 0 as group
646         ID if groupname starts with + or -.
647         * pwd/putpwent.c (putpwent): Don't write 0 as user or
648         group ID if user name starts with + or -.
650 2005-01-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
652         * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add sh variants.
653         * sysdeps/elf/tst-auditmod1.c: Add sh support.
654         * sysdeps/sh/bits/link.h: New.
655         * sysdeps/sh/dl-machine.h: Remove trampoline code here.  Define
656         ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.  Remove obsolete comments.
657         (RTLD_START): Define __fpscr_values.
658         * sysdeps/sh/dl-trampoline.S: New file.
659         * sysdeps/sh/sh4/dl-trampoline.S: New file.
660         * sysdeps/sh/sh4/Versions [ld]: Add __fpscr_values.
661         * sysdeps/sh/sh4/dl-machine.h: Remove.
663 2005-01-10  Jakub Jelinek  <jakub@redhat.com>
665         * time/tst-strptime.c (day_tests): Add 2 new tests.
666         (test_tm, main): Issue an error instead of segfaulting if
667         strptime returns NULL.
669 2005-01-10  H.J. Lu  <hongjiu.lu@intel.com>
671         * sysdeps/alpha/libc-tls.c (__tls_get_addr): Updated for dtv_t union.
672         * sysdeps/ia64/libc-tls.c (__tls_get_addr): Likewise.
674 2005-01-11  Ulrich Drepper  <drepper@redhat.com>
676         * malloc/malloc.h: Remove no-glibc support.
678 2005-01-12  GOTO Masanori  <gotom@debian.or.jp>
680         [BZ #650]
681         * malloc/malloc.h: Always include features.h.
683 2005-01-10  Roland McGrath  <roland@redhat.com>
685         * sysdeps/ia64/fpu/e_logl.c: File removed.
687         * dlfcn/dlfcn.c (init): Fix typo in attribute decl.
689 2005-01-10  Ulrich Drepper  <drepper@redhat.com>
691         * sysdeps/generic/dl-tls.c (_dl_next_tls_modid): Fix assertion and
692         recognition of last entry.
694 2005-01-09  Ulrich Drepper  <drepper@redhat.com>
696         * elf/dl-runtime.c: Include <sys/param.h>.
698         * elf/Makefile (headers): Add bits/link.h.
700 2005-01-09  Andreas Schwab  <schwab@suse.de>
702         * elf/rtld.c (dl_main): Create main_map with __RTLD_OPENEXEC.
704 2005-01-09  Andreas Jaeger  <aj@suse.de>
706         * time/strptime_l.c (__strptime_internal): Add braces to avoid
707         warning.
709         * sysdeps/x86_64/bits/link.h: Use vector_size for GCC 4.0.
711         * elf/rtld.c (dl_main): Call _dl_add_to_slotinfo only if USE_TLS.
713 2005-01-08  Jakub Jelinek  <jakub@redhat.com>
715         * elf/Makefile (generated): Add tst-pie1{,.out,.o}.
717 2005-01-09  Ulrich Drepper  <drepper@redhat.com>
719         * elf/dl-fini.c (_dl_fini): Call destructors of audit DSOs after
720         those of all the regular objects.
722         * elf/dl-debug.c (_dl_debug_initialize): Take extra parameter and
723         use it to select the r_debug structure for that namespace.
724         * elf/dl-close.c (_dl_close): Adjust call to _dl_debug_initialize.
725         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
726         * elf/dl-open.c (_dl_open): Likewise.
727         * elf/rtld.c (dl_main): Likewise.
728         * sysdeps/generic/ldsodefs.h (struct link_namespaces): Add _ns_debug
729         member.
730         (_dl_debug_initialize): Add new parameter in declaration.
732         * elf/dl-close.c (_dl_close): Make sure auditing callbacks are not
733         called for the auditing objects themselves.
734         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
736 2005-01-07  Ulrich Drepper  <drepper@redhat.com>
738         * sysdeps/powerpc/powerpc64/dl-machine.h
739         (elf_machine_runtime_setup): If profile != 0 does not anymore mean
740         GLRO(dl_profile) != NULL.
741         * sysdeps/powerpc/powerpc64/bits/link.h (struct la_ppc64_regs): Add
742         padding.
743         * sysdeps/powerpc/powerpc64/dl-trampoline.S: (_dl_profile_resolve):
744         Extend _dl_prof_resolve to add pass extra parameters to
745         _dl_profile_fixup and set up structure with register content.
747         * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_machine_runtime_setup):
748         If profile != 0 does not anymore mean GLRO(dl_profile) != NULL.
749         * sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_prof_resolve):
750         Extend _dl_prof_resolve to add pass extra parameters to
751         _dl_profile_fixup and set up structure with register content.
752         * sysdeps/powerpc/powerpc32/bits/link.h: Fix types of some fields in
753         the register and result structures.
754         * sysdeps/powerpc/powerpc64/bits/link.h: Fix types of some fields
755         in the 32-bit register and result structures.
757         * sysdeps/powerpc/powerpc64/dl-trampoline.S: Use register names.
759         * sysdeps/powerpc/powerpc32/dl-trampoline.S: New file.
760         * sysdeps/powerpc/powerpc32/dl-machine.h: Remove trampoline code here.
761         Define ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.
762         * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add ppc32 variants.
763         * elf/tst-auditmod1.c: Add ppc32 support.
764         * sysdeps/powerpc/powerpc32/bits/link.h: New file.
765         * sysdeps/powerpc/powerpc64/bits/link.h: Add ppc32 definitions.
767         * malloc/malloc.c (malloc_printerr): Print program name as part of
768         error message.
770         * misc/sys/cdefs.h (__attribute_warn_unused_result__): Define.
771         * stdlib/stdlib.h: Make realloc with
772         __attribute_warn_unused_result__ instead of __wur.
773         * malloc/malloc.h: Add __wur and __attribute_warn_unused_result__
774         markers as in <stdlib.h>.
776         * libio/stdio.h: Remove __wur from rename and remove.
777         * posix/unistd.h: Remove __wur from dup2.
779 2005-01-03  Andreas Jaeger  <aj@suse.de>
781         * elf/Makefile (tests): Revert patch from 2005-01-03.
783 2005-01-07  Ulrich Drepper  <drepper@redhat.com>
785         * sysdeps/unix/sysv/linux/init-first.c (__libc_init_first): Don't
786         make __libc_init_first hidden.
788         * elf/rtld.c [!DONT_USE_BOOTSTRAP_MAP] (_dl_start_final): Initialize
789         l_relocated of rtld map.
790         * sysdeps/powerpc/powerpc64/dl-trampoline.S: New file.
791         * sysdeps/powerpc/powerpc64/dl-machine.h: Remove trampoline code here.
792         Define ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.
793         * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add ppc64 variants.
794         * elf/tst-auditmod1.c: Add ppc64 support.
795         * sysdeps/powerpc/powerpc64/bits/link.h: New file.
797 2005-01-06  Roland McGrath  <roland@redhat.com>
799         [BZ #633]
800         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Catch errno values
801         indicating file-name lookup errors, and return ENOSYS or EBADF instead.
803 2005-01-06  Ulrich Drepper  <drepper@redhat.com>
805         * csu/elf-init.c (__libc_csu_fini): Don't do anything here.
806         * sysdeps/generic/libc-start.c: Don't register program destructor here.
808         * dlfcn/Makefile: Add rules to build dlfcn.c.
809         (LDFLAGS-dl.so): Removed.
810         * dlfcn/dlclose.c: _dl_close is now in ld.so, use function pointer
811         table.
812         * dlfcn/dlmopen.c: Likewise for _dl_open.
813         * dlfcn/dlopen.c: Likewise.
814         * dlfcn/dlopenold.c: Likewise.
815         * elf/dl-libc.c: Likewise for _dl_open and _dl_close.
816         * elf/Makefile (routines): Remove dl-open and dl-close.
817         (dl-routines): Add dl-open, dl-close, and dl-trampoline.
818         Add rules to build and run tst-audit1.
819         * elf/tst-audit1.c: New file.
820         * elf/tst-auditmod1.c: New file.
821         * elf/Versions [libc]: Remove _dl_open and _dl_close.
822         * elf/dl-close.c: Change for use inside ld.so instead of libc.so.
823         * elf/dl-open.c: Likewise.
824         * elf/dl-debug.c (_dl_debug_initialize): Allow reinitialization,
825         signaled by nonzero parameter.
826         * elf/dl-init.c: Fix use of r_state.
827         * elf/dl-load.c: Likewise.
829         * elf/dl-close.c: Add auditing checkpoints.
830         * elf/dl-open.c: Likewise.
831         * elf/dl-fini.c: Likewise.
832         * elf/dl-load.c: Likewise.
833         * elf/dl-sym.c: Likewise.
834         * sysdeps/generic/libc-start.c: Likewise.
835         * elf/dl-object.c: Allocate memory for auditing information.
836         * elf/dl-reloc.c: Remove RESOLV.  We now always need the map.
837         Correctly initialize slotinfo.
838         * elf/dynamic-link.h: Adjust after removal of RESOLV.
839         * sysdeps/hppa/dl-lookupcfg.h: Likewise.
840         * sysdeps/ia64/dl-lookupcfg.h: Likewise.
841         * sysdeps/powerpc/powerpc64/dl-lookupcfg.h: Removed.
842         * elf/dl-runtime.c (_dl_fixup): Little cleanup.
843         (_dl_profile_fixup): New parameters to point to register struct and
844         variable for frame size.
845         Add auditing checkpoints.
846         (_dl_call_pltexit): New function.
847         Don't define trampoline code here.
848         * elf/rtld.c: Recognize LD_AUDIT.  Load modules on startup.
849         Remove all the functions from _rtld_global_ro which only _dl_open
850         and _dl_close needed.
851         Add auditing checkpoints.
852         * elf/link.h: Define symbols for auditing interfaces.
853         * include/link.h: Likewise.
854         * include/dlfcn.h: Define __RTLD_AUDIT.
855         Remove prototypes for _dl_open and _dl_close.
856         Adjust access to argc and argv in libdl.
857         * dlfcn/dlfcn.c: New file.
858         * sysdeps/generic/dl-lookupcfg.h: Remove all content now that RESOLVE
859         is gone.
860         * sysdeps/generic/ldsodefs.h: Add definitions for auditing interfaces.
861         * sysdeps/generic/unsecvars.h: Add LD_AUDIT.
862         * sysdeps/i386/dl-machine.h: Remove trampoline code here.
863         Adjust for removal of RESOLVE.
864         * sysdeps/x86_64/dl-machine.h: Likewise.
865         * sysdeps/generic/dl-trampoline.c: New file.
866         * sysdeps/i386/dl-trampoline.c: New file.
867         * sysdeps/x86_64/dl-trampoline.c: New file.
869         * sysdeps/generic/dl-tls.c: Cleanups.  Fixup for dtv_t change.
870         Fix updating of DTV.
871         * sysdeps/generic/libc-tls.c: Likewise.
873         * sysdeps/arm/bits/link.h: Renamed to ...
874         * sysdeps/arm/bits/linkmap.h: ...this.
875         * sysdeps/generic/bits/link.h: Renamed to...
876         * sysdeps/generic/bits/linkmap.h: ...this.
877         * sysdeps/hppa/bits/link.h: Renamed to...
878         * sysdeps/hppa/bits/linkmap.h: ...this.
879         * sysdeps/i386/bits/link.h: Renamed to...
880         * sysdeps/i386/bits/linkmap.h: ...this.
881         * sysdeps/ia64/bits/link.h: Renamed to...
882         * sysdeps/ia64/bits/linkmap.h: ...this.
883         * sysdeps/s390/bits/link.h: Renamed to...
884         * sysdeps/s390/bits/linkmap.h: ...this.
885         * sysdeps/sh/bits/link.h: Renamed to...
886         * sysdeps/sh/bits/linkmap.h: ...this.
887         * sysdeps/x86_64/bits/link.h: Renamed to...
888         * sysdeps/x86_64/bits/linkmap.h: ...this.
890         * posix/unistd.h: Declare ftruncate for POSIX 2003.  [BZ #640]
892 2004-12-22  Steven Munroe  <sjmunroe@us.ibm.com>
894         * math/libm-test.inc (rint_test_tonearest): New test.
895         (rint_test_towardzero): New test.
896         (rint_test_downward): New test.
897         (rint_test_upward): New test.
898         * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: Fix -0.0 case.
899         Remove redundant const values.
900         * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: Fix -0.0 case.
901         Remove redundant const values.  Use float const.
902         * sysdeps/powerpc/powerpc32/fpu/s_floor.S: Fix -0.0 case.
903         * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: Fix -0.0 case.
904         Use float const.
905         * sysdeps/powerpc/powerpc32/fpu/s_rint.S: Fix -0.0 case.
906         * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: Fix -0.0 case.
907         Use float const.
908         * sysdeps/powerpc/powerpc32/fpu/s_round.S: Fix -0.0 case.
909         Remove redundant const values.
910         * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: Fix -0.0 case.
911         Remove redundant const values.  Use float const.
912         * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: Fix -0.0 case.
913         Remove redundant const values.
914         * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: Fix -0.0 case.
915         Remove redundant const values.  Use float const.
916         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Use EALIGN for Quadword
917         alignment.  Fix -0.0 case.  Remove redundant const values.
918         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Use EALIGN for Quadword
919         alignment.  Fix -0.0 case.  Remove redundant const values.
920         Use float const.
921         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Use EALIGN for Quadword
922         alignment.  Fix -0.0 case.
923         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Use EALIGN for Quadword
924         alignment.  Fix -0.0 case.  Use float const.
925         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Use EALIGN for Quadword
926         alignment.  Fix -0.0 case.
927         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Use EALIGN for Quadword
928         alignment.  Fix -0.0 case.  Use float const.
929         * sysdeps/powerpc/powerpc64/fpu/s_round.S: Use EALIGN for Quadword
930         alignment.  Fix -0.0 case.  Remove redundant const values.
931         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Use EALIGN for Quadword
932         alignment.  Fix -0.0 case.  Remove redundant const values.
933         Use float const.
934         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Use EALIGN for Quadword
935         alignment.  Fix -0.0 case.
936         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Use EALIGN for Quadword
937         alignment.  Fix -0.0 case.  Remove redundant const values.
938         Use float const.
940 2005-01-06  Ulrich Drepper  <drepper@redhat.com>
942         * misc/sys/cdefs.h: Define __wur.
943         * libio/stdio.h: Use __wur for a number of interfaces.
944         * posix/unistd.h: Likewise.
945         * stdlib/stdlib.h: Likewise.
947 2004-12-29  Jakub Jelinek  <jakub@redhat.com>
949         * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Use
950         libc_hidden_proto instead of HIDDEN_PROTO.
951         * sysdeps/ia64/fpu/libm-symbols.h (HIDDEN_PROTO): Remove.
952         (__libm_error_support): If ASSEMBLER and in libc, define to
953         HIDDEN_JUMPTARGET(__libm_error_support).
955 2004-12-28  David Mosberger  <davidm@hpl.hp.com>
957         * sysdeps/ia64/fpu/Makefile (duplicated-routines): New macro.
958         (sysdep_routines): Replace libm_ldexp{,f,l} and libm_scalbn{,f,l}
959         with $(duplicated-routines).
960         (libm-sysdep_routines): Likewise, but substitute "s_" prefix for
961         "m_" prefix.
963 2004-12-27  David Mosberger  <davidm@hpl.hp.com>
965         * sysdeps/ia64/fpu/libm-symbols.h: Add include of <sysdep.h> and
966         undefine "ret" macro.  Add __libm_error_support hidden definitions.
968         * sysdeps/ia64/fpu/e_lgamma_r.c: Remove CVS-id comment.  Add
969         missing portion of copyright statement.
970         * sysdeps/ia64/fpu/e_lgammaf_r.c: Likewise.
971         * sysdeps/ia64/fpu/e_lgammal_r.c: Likewise.
973         * sysdeps/ia64/fpu/w_lgamma.c: Remove CVS-id comment.  Add
974         missing portion of copyright statement.
975         (__ieee754_lgamma): Rename from lgamma().  Make lgamma() a weak alias.
976         (__ieee754_gamma): Likewise.
977         * sysdeps/ia64/fpu/w_lgammaf.c: Likewise.
978         * sysdeps/ia64/fpu/w_lgammal.c: Likewise.
980 2004-12-09  H. J. Lu <hjl@lucon.org>
982         * sysdeps/ia64/fpu/s_nextafterl.c: Remove.
983         * sysdeps/ia64/fpu/s_nexttoward.c: Likewise.
984         * sysdeps/ia64/fpu/s_nexttowardf.c: Likewise.
985         * sysdeps/ia64/fpu/e_atan2l.S: Remove (duplicate of e_atan2l.c).
986         * sysdeps/ia64/fpu/e_expl.S: Likewise.
987         * sysdeps/ia64/fpu/e_logl.c: Remove (conflicts with e_logl.S).
989 2004-11-18  David Mosberger  <davidm@hpl.hp.com>
991         * sysdeps/ia64/fpu/README: New file.
992         * sysdeps/ia64/fpu/gen_import_file_list: New file.
993         * sysdeps/ia64/fpu/import_check: Likewise.
994         * sysdeps/ia64/fpu/import_diffs: Likewise.
995         * sysdeps/ia64/fpu/import_file.awk: Likewise.
996         * sysdeps/ia64/fpu/import_intel_libm: Likewise.
997         * sysdeps/ia64/fpu/libm-symbols.h: Likewise.
999         * sysdeps/ia64/fpu/e_acos.S: Update from Intel libm v2.1+.
1000         * sysdeps/ia64/fpu/e_acosf.S: Likewise.
1001         * sysdeps/ia64/fpu/e_acosl.S: Likewise.
1002         * sysdeps/ia64/fpu/e_asin.S: Likewise.
1003         * sysdeps/ia64/fpu/e_asinf.S: Likewise.
1004         * sysdeps/ia64/fpu/e_asinl.S: Likewise.
1005         * sysdeps/ia64/fpu/e_atan2.S: Likewise.
1006         * sysdeps/ia64/fpu/e_atan2f.S: Likewise.
1007         * sysdeps/ia64/fpu/e_cosh.S: Likewise.
1008         * sysdeps/ia64/fpu/e_coshf.S: Likewise.
1009         * sysdeps/ia64/fpu/e_coshl.S: Likewise.
1010         * sysdeps/ia64/fpu/e_exp.S: Likewise.
1011         * sysdeps/ia64/fpu/e_expf.S: Likewise.
1012         * sysdeps/ia64/fpu/e_fmod.S: Likewise.
1013         * sysdeps/ia64/fpu/e_fmodf.S: Likewise.
1014         * sysdeps/ia64/fpu/e_fmodl.S: Likewise.
1015         * sysdeps/ia64/fpu/e_hypot.S: Likewise.
1016         * sysdeps/ia64/fpu/e_hypotf.S: Likewise.
1017         * sysdeps/ia64/fpu/e_hypotl.S: Likewise.
1018         * sysdeps/ia64/fpu/e_log.S: Likewise.
1019         * sysdeps/ia64/fpu/e_log2.S: Likewise.
1020         * sysdeps/ia64/fpu/e_log2f.S: Likewise.
1021         * sysdeps/ia64/fpu/e_log2l.S: Likewise.
1022         * sysdeps/ia64/fpu/e_logf.S: Likewise.
1023         * sysdeps/ia64/fpu/e_pow.S: Likewise.
1024         * sysdeps/ia64/fpu/e_powf.S: Likewise.
1025         * sysdeps/ia64/fpu/e_powl.S: Likewise.
1026         * sysdeps/ia64/fpu/e_remainder.S: Likewise.
1027         * sysdeps/ia64/fpu/e_remainderf.S: Likewise.
1028         * sysdeps/ia64/fpu/e_remainderl.S: Likewise.
1029         * sysdeps/ia64/fpu/e_scalb.S: Likewise.
1030         * sysdeps/ia64/fpu/e_scalbf.S: Likewise.
1031         * sysdeps/ia64/fpu/e_scalbl.S: Likewise.
1032         * sysdeps/ia64/fpu/e_sinh.S: Likewise.
1033         * sysdeps/ia64/fpu/e_sinhf.S: Likewise.
1034         * sysdeps/ia64/fpu/e_sinhl.S: Likewise.
1035         * sysdeps/ia64/fpu/e_sqrt.S: Likewise.
1036         * sysdeps/ia64/fpu/e_sqrtf.S: Likewise.
1037         * sysdeps/ia64/fpu/e_sqrtl.S: Likewise.
1038         * sysdeps/ia64/fpu/libm_error.c: Likewise.
1039         * sysdeps/ia64/fpu/libm_reduce.c: Likewise.
1040         * sysdeps/ia64/fpu/libm_support.h: Likewise.
1041         * sysdeps/ia64/fpu/s_atan.S: Likewise.
1042         * sysdeps/ia64/fpu/s_atanf.S: Likewise.
1043         * sysdeps/ia64/fpu/s_atanl.S: Likewise.
1044         * sysdeps/ia64/fpu/s_cbrt.S: Likewise.
1045         * sysdeps/ia64/fpu/s_cbrtf.S: Likewise.
1046         * sysdeps/ia64/fpu/s_cbrtl.S: Likewise.
1047         * sysdeps/ia64/fpu/s_ceil.S: Likewise.
1048         * sysdeps/ia64/fpu/s_ceilf.S: Likewise.
1049         * sysdeps/ia64/fpu/s_ceill.S: Likewise.
1050         * sysdeps/ia64/fpu/s_cos.S: Likewise.
1051         * sysdeps/ia64/fpu/s_cosf.S: Likewise.
1052         * sysdeps/ia64/fpu/s_cosl.S: Likewise.
1053         * sysdeps/ia64/fpu/s_expm1.S: Likewise.
1054         * sysdeps/ia64/fpu/s_expm1f.S: Likewise.
1055         * sysdeps/ia64/fpu/s_expm1l.S: Likewise.
1056         * sysdeps/ia64/fpu/s_fabs.S: Likewise.
1057         * sysdeps/ia64/fpu/s_fabsf.S: Likewise.
1058         * sysdeps/ia64/fpu/s_fabsl.S: Likewise.
1059         * sysdeps/ia64/fpu/s_floor.S: Likewise.
1060         * sysdeps/ia64/fpu/s_floorf.S: Likewise.
1061         * sysdeps/ia64/fpu/s_floorl.S: Likewise.
1062         * sysdeps/ia64/fpu/s_frexp.c: Likewise.
1063         * sysdeps/ia64/fpu/s_frexpf.c: Likewise.
1064         * sysdeps/ia64/fpu/s_frexpl.c: Likewise.
1065         * sysdeps/ia64/fpu/s_ilogb.S: Likewise.
1066         * sysdeps/ia64/fpu/s_ilogbf.S: Likewise.
1067         * sysdeps/ia64/fpu/s_ilogbl.S: Likewise.
1068         * sysdeps/ia64/fpu/s_log1p.S: Likewise.
1069         * sysdeps/ia64/fpu/s_log1pf.S: Likewise.
1070         * sysdeps/ia64/fpu/s_log1pl.S: Likewise.
1071         * sysdeps/ia64/fpu/s_logb.S: Likewise.
1072         * sysdeps/ia64/fpu/s_logbf.S: Likewise.
1073         * sysdeps/ia64/fpu/s_logbl.S: Likewise.
1074         * sysdeps/ia64/fpu/s_modf.S: Likewise.
1075         * sysdeps/ia64/fpu/s_modff.S: Likewise.
1076         * sysdeps/ia64/fpu/s_modfl.S: Likewise.
1077         * sysdeps/ia64/fpu/s_nearbyint.S: Likewise.
1078         * sysdeps/ia64/fpu/s_nearbyintf.S: Likewise.
1079         * sysdeps/ia64/fpu/s_nearbyintl.S: Likewise.
1080         * sysdeps/ia64/fpu/s_rint.S: Likewise.
1081         * sysdeps/ia64/fpu/s_rintf.S: Likewise.
1082         * sysdeps/ia64/fpu/s_rintl.S: Likewise.
1083         * sysdeps/ia64/fpu/s_round.S: Likewise.
1084         * sysdeps/ia64/fpu/s_roundf.S: Likewise.
1085         * sysdeps/ia64/fpu/s_roundl.S: Likewise.
1086         * sysdeps/ia64/fpu/s_significand.S: Likewise.
1087         * sysdeps/ia64/fpu/s_significandf.S: Likewise.
1088         * sysdeps/ia64/fpu/s_significandl.S: Likewise.
1089         * sysdeps/ia64/fpu/s_tan.S: Likewise.
1090         * sysdeps/ia64/fpu/s_tanf.S: Likewise.
1091         * sysdeps/ia64/fpu/s_tanl.S: Likewise.
1092         * sysdeps/ia64/fpu/s_trunc.S: Likewise.
1093         * sysdeps/ia64/fpu/s_truncf.S: Likewise.
1094         * sysdeps/ia64/fpu/s_truncl.S: Likewise.
1096         * sysdeps/ia64/fpu/e_acosh.S: New file from Intel libm v2.1+.
1097         * sysdeps/ia64/fpu/e_acoshf.S: Likewise.
1098         * sysdeps/ia64/fpu/e_acoshl.S: Likewise.
1099         * sysdeps/ia64/fpu/e_atanh.S: Likewise.
1100         * sysdeps/ia64/fpu/e_atanhf.S: Likewise.
1101         * sysdeps/ia64/fpu/e_atanhl.S: Likewise.
1102         * sysdeps/ia64/fpu/e_exp10.S: Likewise.
1103         * sysdeps/ia64/fpu/e_exp10f.S: Likewise.
1104         * sysdeps/ia64/fpu/e_exp10l.S: Likewise.
1105         * sysdeps/ia64/fpu/e_exp2.S: Likewise.
1106         * sysdeps/ia64/fpu/e_exp2f.S: Likewise.
1107         * sysdeps/ia64/fpu/e_exp2l.S: Likewise.
1108         * sysdeps/ia64/fpu/e_lgamma_r.S: Likewise.
1109         * sysdeps/ia64/fpu/e_lgammaf_r.S: Likewise.
1110         * sysdeps/ia64/fpu/e_lgammal_r.S: Likewise.
1111         * sysdeps/ia64/fpu/e_logl.S: Likewise.
1112         * sysdeps/ia64/fpu/libm_frexp.S: Likewise.
1113         * sysdeps/ia64/fpu/libm_frexpf.S: Likewise.
1114         * sysdeps/ia64/fpu/libm_frexpl.S: Likewise.
1115         * sysdeps/ia64/fpu/s_libm_ldexp.S: Likewise.
1116         * sysdeps/ia64/fpu/s_libm_ldexpf.S: Likewise.
1117         * sysdeps/ia64/fpu/s_libm_ldexpl.S: Likewise.
1118         * sysdeps/ia64/fpu/s_libm_scalbn.S: Likewise.
1119         * sysdeps/ia64/fpu/s_libm_scalbnf.S: Likewise.
1120         * sysdeps/ia64/fpu/s_libm_scalbnl.S: Likewise.
1121         * sysdeps/ia64/fpu/libm_lgamma.S: Likewise.
1122         * sysdeps/ia64/fpu/libm_lgammaf.S: Likewise.
1123         * sysdeps/ia64/fpu/libm_lgammal.S: Likewise.
1124         * sysdeps/ia64/fpu/libm_sincos.S: Likewise.
1125         * sysdeps/ia64/fpu/libm_sincos_large.S: Likewise.
1126         * sysdeps/ia64/fpu/libm_sincosf.S: Likewise.
1127         * sysdeps/ia64/fpu/libm_sincosl.S: Likewise.
1128         * sysdeps/ia64/fpu/libm_scalblnf.S: Likewise.
1129         * sysdeps/ia64/fpu/s_asinh.S: Likewise.
1130         * sysdeps/ia64/fpu/s_asinhf.S: Likewise.
1131         * sysdeps/ia64/fpu/s_asinhl.S: Likewise.
1132         * sysdeps/ia64/fpu/s_erf.S: Likewise.
1133         * sysdeps/ia64/fpu/s_erfc.S: Likewise.
1134         * sysdeps/ia64/fpu/s_erfcf.S: Likewise.
1135         * sysdeps/ia64/fpu/s_erfcl.S: Likewise.
1136         * sysdeps/ia64/fpu/s_erff.S: Likewise.
1137         * sysdeps/ia64/fpu/s_erfl.S: Likewise.
1138         * sysdeps/ia64/fpu/s_fdim.S: Likewise.
1139         * sysdeps/ia64/fpu/s_fdimf.S: Likewise.
1140         * sysdeps/ia64/fpu/s_fdiml.S: Likewise.
1141         * sysdeps/ia64/fpu/s_fma.S: Likewise.
1142         * sysdeps/ia64/fpu/s_fmaf.S: Likewise.
1143         * sysdeps/ia64/fpu/s_fmal.S: Likewise.
1144         * sysdeps/ia64/fpu/s_fmax.S: Likewise.
1145         * sysdeps/ia64/fpu/s_fmaxf.S: Likewise.
1146         * sysdeps/ia64/fpu/s_fmaxl.S: Likewise.
1147         * sysdeps/ia64/fpu/s_ldexp.c: Likewise.
1148         * sysdeps/ia64/fpu/s_ldexpf.c: Likewise.
1149         * sysdeps/ia64/fpu/s_ldexpl.c: Likewise.
1150         * sysdeps/ia64/fpu/s_nextafter.S: Likewise.
1151         * sysdeps/ia64/fpu/s_nextafterf.S: Likewise.
1152         * sysdeps/ia64/fpu/s_nextafterl.S: Likewise.
1153         * sysdeps/ia64/fpu/s_nexttoward.S: Likewise.
1154         * sysdeps/ia64/fpu/s_nexttowardf.S: Likewise.
1155         * sysdeps/ia64/fpu/s_nexttowardl.S: Likewise.
1156         * sysdeps/ia64/fpu/s_tanh.S: Likewise.
1157         * sysdeps/ia64/fpu/s_tanhf.S: Likewise.
1158         * sysdeps/ia64/fpu/s_tanhl.S: Likewise.
1159         * sysdeps/ia64/fpu/s_scalblnf.c: Likewise.
1160         * sysdeps/ia64/fpu/w_lgamma.c: Likewise.
1161         * sysdeps/ia64/fpu/w_lgammaf.c: Likewise.
1162         * sysdeps/ia64/fpu/w_lgammal.c: Likewise.
1163         * sysdeps/ia64/fpu/w_tgamma.S: Likewise.
1164         * sysdeps/ia64/fpu/w_tgammaf.S: Likewise.
1165         * sysdeps/ia64/fpu/w_tgammal.S: Likewise.
1167         * sysdeps/ia64/fpu/e_gamma_r.c: New empty dummy-file.
1168         * sysdeps/ia64/fpu/e_gammaf_r.c: Likewise.
1169         * sysdeps/ia64/fpu/e_gammal_r.c: Likewise.
1170         * sysdeps/ia64/fpu/w_acosh.c: Likewise.
1171         * sysdeps/ia64/fpu/w_acoshf.c: Likewise.
1172         * sysdeps/ia64/fpu/w_acoshl.c: Likewise.
1173         * sysdeps/ia64/fpu/w_atanh.c: Likewise.
1174         * sysdeps/ia64/fpu/w_atanhf.c: Likewise.
1175         * sysdeps/ia64/fpu/w_atanhl.c: Likewise.
1176         * sysdeps/ia64/fpu/w_exp10.c: Likewise.
1177         * sysdeps/ia64/fpu/w_exp10f.c: Likewise.
1178         * sysdeps/ia64/fpu/w_exp10l.c: Likewise.
1179         * sysdeps/ia64/fpu/w_exp2.c: Likewise.
1180         * sysdeps/ia64/fpu/w_exp2f.c: Likewise.
1181         * sysdeps/ia64/fpu/w_exp2l.c: Likewise.
1182         * sysdeps/ia64/fpu/w_expl.c: Likewise.
1183         * sysdeps/ia64/fpu/e_expl.S: Likewise.
1184         * sysdeps/ia64/fpu/w_lgamma_r.c: Likewise.
1185         * sysdeps/ia64/fpu/w_lgammaf_r.c: Likewise.
1186         * sysdeps/ia64/fpu/w_lgammal_r.c: Likewise.
1187         * sysdeps/ia64/fpu/w_log2.c: Likewise.
1188         * sysdeps/ia64/fpu/w_log2f.c: Likewise.
1189         * sysdeps/ia64/fpu/w_log2l.c: Likewise.
1190         * sysdeps/ia64/fpu/w_sinh.c: Likewise.
1191         * sysdeps/ia64/fpu/w_sinhf.c: Likewise.
1192         * sysdeps/ia64/fpu/w_sinhl.c: Likewise.
1194         * sysdeps/ia64/fpu/libm_atan2_reg.S: Remove.
1195         * sysdeps/ia64/fpu/s_ldexp.S: Likewise.
1196         * sysdeps/ia64/fpu/s_ldexpf.S: Likewise.
1197         * sysdeps/ia64/fpu/s_ldexpl.S: Likewise.
1198         * sysdeps/ia64/fpu/s_scalbn.S: Likewise.
1199         * sysdeps/ia64/fpu/s_scalbnf.S: Likewise.
1200         * sysdeps/ia64/fpu/s_scalbnl.S: Likewise.
1202         * sysdeps/ia64/fpu/s_sincos.c: Make it an empty dummy-file.
1203         * sysdeps/ia64/fpu/s_sincosf.c: Likewise.
1204         * sysdeps/ia64/fpu/s_sincosl.c: Likewise.
1206         * sysdeps/ia64/fpu/e_atan2l.S: Add "Not needed" comment.
1208         * sysdeps/ia64/fpu/s_copysign.S: Add __libm_copysign{,f,l}
1209         alias for use by libm_error.c
1211         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove
1212         libm_atan2_reg, libm_tan, libm_frexp4{f,l}.
1213         Mention s_erfc{,f,l}, libm_frexp{,f,l}, libm_ldexp{,f,l},
1214         libm_sincos{,f,l}, libm_sincos_large, libm_lgamma{,f,l},
1215         libm_scalbn{,f,l}, libm_scalblnf.
1216         (sysdep_routines): Remove libm_frexp4{,f,l}.
1217         Mention libm_frexp{,f,l}, libm_ldexp{,f,l}, and libm_scalbn{,f,l}.
1218         (sysdep-CPPFLAGS): Add -include libm-symbols.h, -D__POSIX__,
1219         _D_LIB_VERSIONIMF=_LIB_VERSION, -DSIZE_LONG_INT_64, and
1220         -DSIZE_LONG_LONG_INT_64.
1222 2005-01-05  Steven Munroe  <sjmunroe@us.ibm.com>
1224         * elf/rtld.c (dl_main) [NEED_DL_SYSINFO_DSO]: Insure l_map_end and
1225         l_text_end are set for a VDSO with a single PT_LOAD entry.
1227 2005-01-05  Ulrich Drepper  <drepper@redhat.com>
1229         * libio/iofopncook.c (_IO_cookie_seekoff): Define.  Mark offset as
1230         invalid to disable optimizations in fileops which won't work here.
1231         (_IO_cookie_jumps): Use it.
1232         (_IO_old_cookie_jumps): Likewise.
1233         * libio/fmemopen.c (fmemopen_seek): Result must be returned in *P,
1234         not the return value.
1235         * stdio-common/Makefile (tests): Add tst-fmemopen2.
1236         * stdio-common/tst-fmemopen2.c: New file.
1238         * sysdeps/unix/sysv/linux/bits/waitflags.h: Define __WNOTHREAD.
1240 2005-01-05  Roland McGrath  <roland@redhat.com>
1242         * configure.in (libc_cv_cpp_asm_debuginfo): Checked moved ...
1243         * sysdeps/i386/configure.in: ... here.  New file.
1245 2005-01-03  Ulrich Drepper  <drepper@redhat.com>
1247         * sysdeps/generic/libc-start.c [SHARED] (__libc_start_main): Don't
1248         initialize __environ again.
1249         * stdlib/Makefile: Add rules to build and run tst-putenv.
1250         * stdlib/tst-putenv.c: New file.
1251         * stdlib/tst-putenvmod.c: New file.
1253         * sysdeps/unix/sysv/linux/init-first.c: Clean file up.  Don't
1254         define unnecessary wrappers or aliases of static functions.
1256 2005-01-03  Andreas Jaeger  <aj@suse.de>
1258         * csu/Makefile (generated): Add start.os and start.ob.
1260         * elf/Makefile (tests): Change rule for tst-pie1 so that make
1261         clean works.
1263 2004-12-29  Roland McGrath  <roland@redhat.com>
1265         [BZ #626]
1266         * sysdeps/unix/alarm.c (alarm): Round return value to nearest rather
1267         than always up; when nearest is zero, round up to one.
1269 2004-12-28  Ulrich Drepper  <drepper@redhat.com>
1271         * po/es.po: Update from translation team.
1273         * sysdeps/generic/dl-tls.c (__tls_get_addr): Fix typo.
1275 2004-12-27  Ulrich Drepper  <drepper@redhat.com>
1277         * include/signal.h: Define __sigemptyset.
1279 2004-04-27  Paolo Bonzini  <bonzini@gnu.org>
1281         * posix/regex_internal.h (struct re_dfastate_t): Make
1282         word_trtable a pointer to the 512-item transition table.
1283         * posix/regexec.c (build_trtable): Fill in either state->trtable
1284         or state->word_trtable.  Return a boolean indicating success.
1285         (transit_state): Expect state->trtable to be a 256-item
1286         transition table.  Reorganize code to have less tests in
1287         the common case, and to save an indentation level.
1288         * posix/regex_internal.c (free_state): Free word_trtable.
1290 2004-12-21  Jakub Jelinek  <jakub@redhat.com>
1292         * sysdeps/unix/sysv/linux/i386/clone.S (__clone): Make sure %esp when
1293         calling fn is 16 byte aligned.
1294         * sysdeps/i386/tst-stack-align.h: New file.
1296         * misc/efgcvt_r.c (FLOAT_MIN_10_EXP, FLOAT_MIN_10_NORM): Define.
1297         (ecvt_r): Special case denormals.
1298         * misc/qefgcvt_r.c (FLOAT_MIN_10_EXP, FLOAT_MIN_10_NORM): Define.
1299         * misc/tst-efgcvt.c: Include float.h.
1300         (ecvt_tests): Add 2 new tests.
1302 2004-12-20  Roland McGrath  <roland@frob.com>
1304         * version.h (RELEASE, VERSION): development, 2.3.90
1305         * include/features.h (__GLIBC_MINOR__): Now 4.
1307 2004-12-20  Jakub Jelinek  <jakub@redhat.com>,
1308             Jim Gifford  <giffordj@linkline.com>
1310         [BZ #562]
1311         * sysdeps/mips/Makefile (librt-sysdep_routines): Add.
1312         * sysdeps/unix/mips/rt-sysdep.S: New file.
1314 2004-12-19  Roland McGrath  <roland@redhat.com>
1316         * iconv/Makefile (test-iconvconfig): New target.
1317         [$(cross-compiling) != yes] (xtests): Depend on it.
1319         * iconv/iconvconfig.c (nostdlib, output_file, output_file_len):
1320         New variables.
1321         (options, parse_opt, main): Take new options --nostdlib and
1322         --output/-o to set them.  Under --nostdlib, skip GCONV_PATH dirs.
1323         (write_output): If output_file is set, write the output there.
1325 2004-12-19  Andreas Jaeger  <aj@suse.de>
1327         [BZ #560]
1328         * inet/netinet/in.h: Use __interface_addr instead of __interface.
1330         [BZ #573]
1331         * sunrpc/xcrypt.c (passwd2des_internal): Make it hidden instead of
1332         internal linkage.
1334 2004-12-19  Roland McGrath  <roland@frob.com>
1336         * version.h (VERSION): 2.3.4.
1337         * README.template: Various updates.
1338         * README: Regenerated.
1339         * NEWS: Mention ports.
1340         * README-alpha: File removed.
1342         [BZ #416]
1343         * locale/langinfo.h: Comment fixes.
1345 2004-12-17  Ulrich Drepper  <drepper@redhat.com>
1347         * po/ja.po: Update from translation team.
1349 2004-12-17  Richard Henderson  <rth@redhat.com>
1351         * sysdeps/unix/sysv/linux/alpha/clone.S (__clone): Add support
1352         for NPTL where the PID is stored at userlevel and needs to be
1353         reset when CLONE_THREAD is not used.
1355 2004-12-17  Jakub Jelinek  <jakub@redhat.com>
1357         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
1359 2004-12-17  Andreas Jaeger  <aj@suse.de>
1361         * math/libm-test.inc (atan2_test): Compute value with 36 digits.
1362         * sysdeps/alpha/fpu/libm-test-ulps: Adjust for changed result.
1363         * sysdeps/powerpc/fpu/libm-test-ulps: Likewise.
1364         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
1365         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Likewise.
1366         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Likewise.
1367         * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
1369 2004-12-16  Ulrich Drepper  <drepper@redhat.com>
1371         * stdlib/tst-setcontext.c: Enlarge st1 and st2 arrays.
1373 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
1375         [BZ #610]
1376         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
1377         (__novec_getcontext): Fix typo in store of fp29.
1378         (__getcontext): Fix typo in store of fp29.
1379         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
1380         (__novec_swapcontext): Fix typo in store of fp29.
1381         (__swapcontext): Fix typo in store of fp29.
1383 2004-12-17  GOTO Masanori  <gotom@debian.or.jp>
1385         * sysdeps/unix/sysv/linux/dl-osinfo.h (DL_SYSDEP_OSCHECK): Fix
1386         vague message.
1388 2004-12-16  Roland McGrath  <roland@redhat.com>
1390         * nscd/Makefile ($(objpfx)nscd): Don't depend on $(selinux-LIBS),
1391         which is usually a -lselinux that make will resolve wrongly.
1393 2004-12-16  Andreas Jaeger  <aj@suse.de>
1395         * math/math.h: Use #if defined to not receive warnings about
1396         undefined symbols.
1398 2004-12-16  Jakub Jelinek  <jakub@redhat.com>
1400         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Add support
1401         for NPTL where the PID is stored at userlevel and needs to be reset
1402         when CLONE_THREAD is not used.
1404         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
1405         (SYSCALL_ERROR_HANDLER): If RTLD_PRIVATE_ERRNO, use rtld_errno
1406         instead of errno.
1407         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S: Include
1408         sysdep-cancel.h instead of sysdep.h.  Handle cancellation.
1409         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerate.
1411         * sysdeps/ieee754/ldbl-128/e_expl.c: Include stdlib.h.
1413 2004-12-15  Jakub Jelinek  <jakub@redhat.com>
1415         * sysdeps/unix/sysv/linux/gethostid.c: Make bi-arch safe.
1417 2004-12-15  Steven Munroe  <sjmunroe@us.ibm.com>
1419         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Correct stack
1420         alignment.  Clean up flag bit tests.
1421         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Correct stack
1422         alignment.  Clean up flag bit tests.  Remove redundent SP assignment.
1423         Add TOC register save/restore around function call.
1425         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Make no_vmx symbol
1426         local.
1427         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Make no_vmx symbol
1428         local.
1429         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Make no_vmx symbol
1430         local.
1431         * sysdeps/powerpc/powerpc64/setjmp-common.S: Make no_vmx and
1432         aligned_save_vmx symbol local.
1434 2004-12-15  Ulrich Drepper  <drepper@redhat.com>
1436         * sysdeps/i386/i486/bits/string.h (__strncat_g): Fix i686
1437         implementation.
1439 2004-09-08  H.J. Lu  <hongjiu.lu@intel.com>
1441         * Makeconfig (libunwind): New.
1442         (libgcc_eh): Add $(libunwind).
1443         (gnulib): Always set to -lgcc $(libgcc_eh).
1444         (static-gnulib): Always set to -lgcc -lgcc_eh $(libunwind).
1445         (libc.so-gnulib): New.
1446         * Makerules (LDLIBS-c.so): Use $(libc.so-gnulib) instead of
1447         $(static-gnulib).
1448         * configure.in (libc_cv_cc_with_libunwind): Set to yes if gcc
1449         uses -lunwind for static binaries.
1451 2004-06-05  Joseph S. Myers  <jsm@polyomino.org.uk>
1453         * malloc/Makefile (install-bin): Remove memusage.
1454         (install-bin-script): Add memusage.
1456 2004-12-15  Jakub Jelinek  <jakub@redhat.com>
1458         * nis/nis_domain_of_r.c (nis_domain_of_r): Use libnsl_hidden_def,
1459         not libnsl_hidden_proto.
1461         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add support
1462         for NPTL where the PID is stored at userlevel and needs to be reset
1463         when CLONE_THREAD is not used.
1464         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
1466         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S (__clone): Save
1467         and restore r2 around call to fn.
1469 2004-12-15  Andreas Jaeger  <aj@suse.de>
1471         * sysdeps/ia64/dl-machine.h (elf_machine_rela): Mark auto instead
1472         of static, add always_inline attribute.
1473         (elf_machine_rela_relative): Likewise.
1474         (elf_machine_lazy_rel): Likewise.
1476 2004-12-15  Ulrich Drepper  <drepper@redhat.com>
1478         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Add support
1479         for pid caching in nptl.
1481 2004-12-14  Ulrich Drepper  <drepper@redhat.com>
1483         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Add support
1484         for pid caching in nptl.
1486 2004-10-18  Maciej W. Rozycki  <macro@mips.com>
1488         * sysdeps/unix/sysv/linux/mips/bits/socket.h (__cmsg_nxthdr): Use
1489         __NTH instead of __THROW in the inline definition.
1490         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise.
1492         * sysdeps/mips/bits/dlfcn.h (RTLD_DEEPBIND): New macro.
1494         * sysdeps/unix/sysv/linux/mips/bits/mman.h
1495         (PROT_GROWSDOWN, PROT_GROWSUP): New macros.
1497 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
1499         * sysdeps/powerpc/powerpc64/ppc-mcount.S (PROF): Don't undef.
1500         * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S: Invoke CALL_MOUNT.
1501         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Likewise.
1502         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
1503         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
1504         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
1505         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Likewise.
1506         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
1507         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: Likewise.
1509 2004-10-19  Wolfram Gloger  <wg@malloc.de>
1511         * malloc/hooks.c (mem2chunk_check, top_check): Handle
1512         non-contiguous arena.  Reported by Michael Dalton
1513         <mwdalton@stanford.edu> [BZ #457].  Add further checks for top chunk.
1515 2004-12-14  Jakub Jelinek  <jakub@redhat.com>
1517         * sysdeps/posix/sysconf.c (__sysconf_check_spec): Remove leading
1518         underscore from GETCONF_DIR filenames.
1520 2004-12-13  Ulrich Drepper  <drepper@redhat.com>
1522         * po/de.po: Update from translation team.
1524         * nss/getnssent.c (__nss_getent): Double buffer size each round to
1525         avoid problems with delays for some people's huge entries.
1526         * nss/getXXbyYY.c (FUNCTION_NAME): Likewise.
1528 2004-12-13  Jakub Jelinek  <jakub@redhat.com>
1530         * posix/getconf.c (main): Prepend just $GETCONF_DIR/ instead of
1531         $GETCONF_DIR/_ to spec.
1532         * posix/confstr.c (confstr): Remove leading underscores for
1533         _CS_POSIX_V6_WIDTH_RESTRICTED_ENVS.
1535 2004-12-12  Ulrich Drepper  <drepper@redhat.com>
1537         * elf/dl-load.c (_dl_map_object_from_fd): Fix computation of
1538         mapping start.  It must take the actual pagesize into account, not
1539         the alignment in the file.
1541 2004-12-11  Ulrich Drepper  <drepper@redhat.com>
1543         * malloc/malloc.c (_int_realloc): Add checks for corrupted memory.
1544         (_int_free): Make clear message are result of free() calls.
1546         * malloc/malloc.c (_int_realloc): Remove unnecessary tests for
1547         oldmem and size == 0.
1549 2004-12-10  Ulrich Drepper  <drepper@redhat.com>
1551         * malloc/arena.c (arena_get2): Prevent endless loop if arenas and
1552         list lock are taken.
1554 2004-12-08  Thorsten Kukuk  <kukuk@suse.de>
1556         * nis/nss_nisplus/nisplus-netgrp.c (_nss_nisplus_getnetgrent_r):
1557         Add check if the value is not an empty string.  [BZ #597]
1559 2004-11-29  Jakub Jelinek  <jakub@redhat.com>
1561         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): If densize > 2
1562         and numsize < densize, always shift num up by empty + 1 limbs.
1564 2004-12-07  Paolo Bonzini  <bonzini@gnu.org>
1566         * posix/regexec.c (proceed_next_node): Simplify treatment of epsilon
1567         nodes.  Pass the pushed node to push_fail_stack.
1568         (push_fail_stack): Accept a single node rather than an array
1569         of two epsilon destinations.
1570         (build_sifted_states): Only walk non-epsilon nodes.
1571         (check_arrival): Don't pass epsilon nodes to
1572         check_arrival_add_next_nodes.
1573         (check_arrival_add_next_nodes) [DEBUG]: Abort if an epsilon node is
1574         found.
1575         (check_node_accept): Do expensive checks later.
1576         (add_epsilon_src_nodes): Cache result of merging the inveclosures.
1577         * posix/regex_internal.h (re_dfastate_t): Add non_eps_nodes and
1578         inveclosure.
1579         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at,
1580         re_string_context_at, re_string_peek_byte_case,
1581         re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
1582         Declare as pure.
1583         * posix/regex_internal.c (create_newstate_common): Remove.
1584         (register_state): Move part of it here.  Initialize non_eps_nodes.
1585         (free_state): Free inveclosure and non_eps_nodes.
1586         (create_cd_newstate, create_ci_newstate): Allocate the new
1587         re_dfastate_t here.
1589 2004-12-09  Ulrich Drepper  <drepper@redhat.com>
1591         * malloc/malloc.c (public_rEALLOc): Add parameter checks.
1592         (_int_free): Provide better error message for invalid pointers.
1594 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
1596         * posix/tst-regex.c: Use defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
1597         conditionals instead of defined _POSIX_CPUTIME.
1598         (main): If _POSIX_CPUTIME == 0, call sysconf to see if CPUTIME
1599         option is available.
1600         * posix/tst-regex.c2: Use defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
1601         conditionals instead of defined _POSIX_CPUTIME.
1602         (do_test): If _POSIX_CPUTIME == 0, call sysconf to see if CPUTIME
1603         option is available.
1604         * sysdeps/posix/sysconf.c (__sysconf): If _POSIX_CPUTIME resp.
1605         _POSIX_THREAD_CPUTIME is defined to 0, return -1 for the corresponding
1606         _SC_ argument.
1608 2004-12-08  Jakub Jelinek  <jakub@redhat.com>
1610         * elf/ldd.bash.in: When set -o pipefail is available, use that for
1611         piping to cat; when not, don't use the pipe at all.
1612         Pipe to cat in all cases of running the executable.
1613         When direct running exits with code 5, retry running via ${RTLD}.
1614         * elf/rtld.c (process_envvars): If __libc_enable_secure and
1615         mode != normal, exit with exitcode 5.
1617 2004-12-07  Jakub Jelinek  <jakub@redhat.com>
1619         * sysdeps/posix/sysconf.c (__sysconf_check_spec): Only define
1620         if it will be actually used.
1622 2004-12-07  Roland McGrath  <roland@redhat.com>
1624         * rt/tst-timer5.c (setup_test): New function.
1625         (TEST_CLOCK_MISSING): Use it to punt test if timer_create does not
1626         support CLOCK_MONOTONIC.
1628 2004-12-07  Jakub Jelinek  <jakub@redhat.com>
1630         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Add support for
1631         NPTL where the PID is stored at userlevel and needs to be reset when
1632         CLONE_THREAD is not used.  Restore gp before calling _exit.
1634 2004-12-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1636         * sysdeps/unix/sysv/linux/sh/clone.S: Clear the frame pointer when
1637         starting a new thread.  Add support for NPTL where the PID is stored
1638         at userlevel and needs to be reset when CLONE_THREAD is not used.
1640 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
1642         * elf/rtld.c (process_envvars): Don't consider LD_SHOW_AUXV
1643         and LD_DYNAMIC_WEAK if __libc_enable_secure.
1644         If __libc_enable_secure, /etc/suid-debug doesn't exist and
1645         program will be actually run, turn off all debugging.
1646         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add LD_DEBUG,
1647         LD_DYNAMIC_WEAK and LD_SHOW_AUXV.
1649 2004-12-06  Jakub Jelinek  <jakub@redhat.com>
1651         * time/tzset.c (tzset_internal): If + or - is seen,
1652         but no offset after it, reset offset to 0.  [BZ #601]
1654 2004-12-06  Ulrich Drepper  <drepper@redhat.com>
1656         * libio/ioseekpos.c (_IO_seekpos_unlocked): Call _IO_SEEKOFF not
1657         _IO_SEEKPOS, saving one indirect jump.
1659         * libio/fileops.c (_IO_new_file_seekoff): Fix optimization of in-buffer
1660         seek.  Remove dead code.
1662 2004-12-02  Jakub Jelinek  <jakub@redhat.com>
1664         * libio/Makefile (tests): Add bug-ungetc4.
1665         * libio/bug-ungetc4.c: New test.
1667 2004-12-06  Roland McGrath  <roland@redhat.com>
1669         * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): Diagnose EINVAL
1670         for CLOCK_THREAD_CPUTIME_ID, not ENOTSUP.
1671         Use SYSDEP_NANOSLEEP handler before validating CLOCK_ID value.
1673         * rt/tst-timer4.c (TEST_CLOCK, TEST_CLOCK_NANOSLEEP): New macros.
1674         Use them throughout in place of CLOCK_REALTIME and nanosleep.
1675         (do_test) [TEST_CLOCK_MISSING]: Call this macro and if it returns
1676         non-null, punt the test with a message using the string returned.
1677         * rt/tst-timer5.c: New file.
1678         * rt/Makefile (tests): Add it.
1680 2004-12-01  Paolo Bonzini  <bonzini@gnu.org>
1682         * posix/regcomp.c (free_dfa_content, init_dfa): Remove
1683         references to re_dfa_t's subexps field.
1684         (parse_sub_exp, parse_expression): Do not use it.  Use
1685         completed_bkref_map instead.
1686         (create_initial_state, peek_token): Store a backreference \N
1687         with opr.idx = N-1.
1688         * posix/regexec.c (proceed_next_node, check_dst_limits, get_subexp):
1689         Likewise.
1690         (check_subexp_limits): Remove useless condition.
1691         * posix/regex_internal.h (re_subexp_t): Remove.
1692         (re_dfa_t): Remove subexps and subexps_alloc field, add
1693         completed_bkref_map.
1695 2004-12-05  Roland McGrath  <roland@frob.com>
1697         * Makeconfig: Comment typo fix.
1699 2004-11-30  Andreas Schwab  <schwab@suse.de>
1701         * nis/ypclnt.c (ypprot_err): Remove unused entries.
1703 2004-11-30  Paolo Bonzini  <bonzini@gnu.org>
1705         * posix/regexec.c (check_dst_limits_calc_pos_1): Check for
1706         bkref_idx == -1, and don't recurse in that case.
1708 2004-11-30  GOTO Masanori  <gotom@debian.or.jp>
1710         * posix/confstr.c: Enclose #error message with double quote
1711         for gcc-3.3 and lower.
1713 2004-12-04  Ulrich Drepper  <drepper@redhat.com>
1715         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for NPTL where
1716         the PID is stored at userlevel and needs to be reset when CLONE_THREAD
1717         is not used.
1718         * sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.
1720 2004-11-18  Daniel Jacobowitz  <dan@codesourcery.com>
1722         * sysdeps/arm/sysdep.h: Define __USE_BX__ if bx is available.
1723         Use it instead of __THUMB_INTERWORK__.  Make RETINSTR take
1724         only a condition and a register.
1725         * sysdeps/arm/dl-machine.h: Use __USE_BX__ instead of
1726         __THUMB_INTERWORK__.
1727         (_dl_start_user): Use BX.
1728         * sysdeps/arm/strlen.S: Use DO_RET.
1729         * sysdeps/unix/arm/brk.S: Likewise.
1730         * sysdeps/unix/arm/fork.S: Likewise.
1731         * sysdeps/unix/arm/sysdep.S: Likewise.
1732         * sysdeps/unix/arm/sysdep.h: Likewise.
1733         * sysdeps/unix/sysv/linux/arm/clone.S: Update uses of RETINSTR.
1734         * sysdeps/unix/sysv/linux/arm/mmap.S: Likewise.
1735         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise.
1736         * sysdeps/unix/sysv/linux/arm/socket.S: Likewise.
1737         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
1738         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
1740 2004-12-02  Roland McGrath  <roland@redhat.com>
1742         * extra-lib.mk (object-suffixes-$(lib)): Add .oS when
1743         $(lib)-static-only-routines is nonempty.
1744         (extra-objs, o-iterator.mk rule): Filter out .oS from generators.
1745         Add a special rule for .oS objects -> _nonshared.a library.
1747 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
1749         * time/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
1750         convert T2, not T.
1751         * time/Makefile (tests): Add tst-mktime3.
1752         * time/tst-mktime3.c: New test.
1754 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
1756         * stdlib/stdlib.h (realpath): Remove nonnull attribute.
1758         * posix/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
1759         normal_bracket label.
1761         * time/tst-mktime2.c (bigtime_test): Initialize tm.tm_isdst to -1.
1763 2004-12-01  Roland McGrath  <roland@redhat.com>
1765         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c):
1766         Do $(make-target-directory).
1768 2004-11-29  Roland McGrath  <roland@redhat.com>
1770         * posix/confstr.c: Avoid punctuation in #error text.
1772 2004-11-27  Ulrich Drepper  <drepper@redhat.com>
1774         * posix/Makefile (tests): Add tst-sysconf.
1775         * posix/tst-sysconf.c: New file.
1777         * posix/getconf.c (vars): Add support for _SC_IPV6 and
1778         _SC_RAW_SOCKETS.
1779         * sysdeps/posix/sysconf.c (__sysconf): Add support for _SC_IPV6
1780         and _SC_RAW_SOCKETS.
1781         * sysdeps/generic/bits/confname.h: Define _SC_IPV6 and
1782         _SC_RAW_SOCKETS.
1784 2004-11-26  Jakub Jelinek  <jakub@redhat.com>
1786         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add GETCONF_DIR.
1788 2004-11-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1790         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
1791         NO_SGIDEFS_H isn't defined.  Don't include sgidefs.h twice.
1792         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
1793         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
1794         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
1796 2004-11-27  Ulrich Drepper  <drepper@redhat.com>
1798         * include/dlfcn.h (__libc_dlopen): Add __RTLD_DLOPEN to the mode
1799         parameter.  Reported by VY Newsum <newsum@fel.tno.nl>.
1801 2004-11-10  Daniel Jacobowitz  <dan@debian.org>
1803         * libio/iolibio.h (_IO_fclose, _IO_new_fclose, _IO_old_fclose,
1804         _IO_fflush, _IO_fgetpos, _IO_fgetpos64, _IO_fgets, _IO_fopen,
1805         _IO_old_fopen, _IO_new_fopen, _IO_fopen64, __fopen_internal,
1806         _IO_fprintf, _IO_fputs, _IO_fsetpos, _IO_fsetpos64, _IO_ftell,
1807         _IO_fread, _IO_fwrite, _IO_gets, _IO_printf, _IO_puts, _IO_scanf,
1808         _IO_fflush_internal, _IO_ftell_internal, _IO_fputs_internal)
1809         _IO_fwrite_internal): Remove incorrect __THROW.
1810         * libio/libioP.h (_IO_default_xsputn, _IO_wdefault_xsputn,
1811         _IO_default_xsgetn, _IO_wdefault_xsgetn, _IO_default_write,
1812         _IO_default_read, _IO_getline, _IO_getline_info, _IO_getwline,
1813         _IO_getwline_info, _IO_file_read_internal, _IO_sgetn_internal,
1814         _IO_wdo_write_internal, _IO_do_write_internal,
1815         _IO_getline_info_internal, _IO_getline_internal,
1816         _IO_vfprintf_internal, _IO_putc_internal, _IO_read, _IO_write,
1817         _IO_close): Likewise.
1819 2004-11-26  Jakub Jelinek  <jakub@redhat.com>
1821         * posix/Makefile (install-others): Add $(inst_libexecdir)/getconf.
1822         (CFLAGS-sysconf.c): Add -D_GETCONF_DIR.
1823         (CFLAGS-getconf.c): New.
1824         ($(inst_libexecdir)/getconf): New.
1825         * posix/confstr.c (confstr): Use __sysconf to query specifications
1826         that don't have _POSIX_V6_* macros defined.  Use __*_{C,LD}FLAGS
1827         macros defined in bits/environments.h.
1828         * sysdeps/posix/sysconf.c: Include stdlib.h, string.h and
1829         sys/stat.h.
1830         (__sysconf_check_spec): New routine.
1831         (__sysconf): Use it.
1832         * posix/getconf.c (specs): Change into structure array.
1833         (main): If -v is not given, try to get default from
1834         $(libexecdir)/getconf/default.  If specification is not
1835         supported by this getconf, try to execute
1836         $(libexecdir)/getconf/$(specification).
1837         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/environments.h: New file.
1838         * sysdeps/unix/sysv/linux/s390/bits/environments.h: New file.
1839         * sysdeps/unix/sysv/linux/powerpc/bits/environments.h: New file.
1840         * sysdeps/unix/sysv/linux/sparc/bits/environments.h: New file.
1841         * sysdeps/unix/sysv/linux/i386/bits/environments.h: New file.
1842         * sysdeps/unix/sysv/linux/x86_64/bits/environments.h: New file.
1843         * sysdeps/generic/bits/environments.h (__ILP32_OFFBIG_CFLAGS):
1844         Define.
1846         * stdlib/stdlib.h (setenv): Use nonnull only for second argument.
1847         (unsetenv): Remove.
1849 2004-11-23  Paolo Bonzini  <bonzini@gnu.org>
1851         * posix/regcomp.c (analyze_tree): Always call calc_epsdest.
1852         (calc_inveclosure): Use re_node_set_insert_last.
1853         (parse_dup_op): Lower X{1,5} to (X(X(X(XX?)?)?)?)?
1854         rather than X?X?X?X?X?.
1855         * posix/regex_internal.h (re_node_set_insert_last): New declaration.
1856         * posix/regex_internal.c (re_node_set_insert_last): New function.
1857         * posix/PCRE.tests: Add testcases.
1859 2004-11-25  Ulrich Drepper  <drepper@redhat.com>
1861         * dlfcn/dlfcn.h: Remove nonnull attribute from dlopen.
1863         * posix/confstr.c (confstr): Return appropriate strings for
1864         _CS_LFS_LINTFLAGS, _CS_LFS64_CFLAGS, and _CS_LFS64_LINTFLAGS.
1866 2004-11-05  Maciej W. Rozycki  <macro@mips.com>
1868         * sysdeps/mips/dl-machine.h: Include <sgidefs.h>.  Use _ABIO32,
1869         _ABIN32 and _ABI64 for ABI selection throughout.
1870         * sysdeps/mips/elf/start.S: Likewise.
1871         * sysdeps/mips/mips64/__longjmp.c: Likewise.
1872         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
1873         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
1874         * sysdeps/mips/mips64/setjmp.S: Likewise.
1875         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
1876         * sysdeps/mips/sys/regdef.h: Likewise.
1877         * sysdeps/mips/sys/ucontext.h: Likewise.
1878         * sysdeps/unix/mips/sysdep.h: Likewise.
1879         * sysdeps/unix/sysv/linux/kernel-features.h: Likewise.
1880         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
1881         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
1882         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
1883         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
1884         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
1885         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
1886         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
1887         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
1889         * sysdeps/mips/atomicity.h: Use _ABIO32, _ABIN32 and _ABI64 for
1890         ABI selection throughout.
1891         * sysdeps/mips/bits/setjmp.h: Likewise.
1892         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
1893         * sysdeps/mips/machine-gmon.h: Likewise.
1894         * sysdeps/mips/sys/asm.h: Likewise.
1895         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
1896         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
1897         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
1898         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
1899         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
1900         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
1901         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
1902         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
1904         * sysdeps/mips/sgidefs.h: Prevent <asm/sgidefs.h> from being
1905         included by kernel headers and undo its settings if already
1906         included.  Define _ABIO32, _ABIN32 and _ABI64 if missing and use
1907         them to define _MIPS_SIM_ABI32, _MIPS_SIM_NABI32 and
1908         _MIPS_SIM_ABI64 for compatibility.
1909         * sysdeps/unix/sysv/linux/mips/Makefile: Use _ABIO32, _ABIN32 and
1910         _ABI64 for ABI selection in generated syscall-list.h
1911         * sysdeps/unix/sysv/linux/mips/configure.in: Use _ABIO32, _ABIN32
1912         and _ABI64 for ABI selection in generated asm-unistd.h.
1913         * sysdeps/unix/sysv/linux/mips/configure: Regenerate.
1915         * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Correct
1916         an inverted _MIPS_SIM conditional.
1918 2004-11-23  Alexandre Oliva  <aoliva@redhat.com>
1920         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Use free
1921         range even if it doesn't match exactly.
1923 2004-11-23  Jakub Jelinek  <jakub@redhat.com>
1925         * nss/nss_files/files-XXX.c (internal_getent): If parse_line returned
1926         -1, also do H_ERRNO_SET (NETDB_INTERNAL).
1928 2004-11-22  Ulrich Drepper  <drepper@redhat.com>
1930         * sysdeps/i386/fpu_control.h: Add volatile to the asms.
1931         Patch by Alexander Stohr.
1933 2004-11-22  Jakub Jelinek  <jakub@redhat.com>
1935         * nscd/nscd_getai (__nscd_getai): Avoid memory and file descriptor
1936         leaks.
1937         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free air.
1939 2004-11-15  Maciej W. Rozycki  <macro@mips.com>
1941         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h (__SI_MAX_SIZE):
1942         Define appropriately based on __WORDSIZE.
1943         [struct siginfo] (__pad0): Add for explicit padding.
1945         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Formatting fixes
1946         throughout.
1948 2004-11-22  Ulrich Drepper  <drepper@redhat.com>
1950         * dirent/dirent.h: Add nonnull attributes.
1951         * dlfcn/dlfcn.h: Likewise.
1953 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
1955         * sysdeps/ieee754/k_standard.c: Document code 50.
1956         (__kernel_standard) <case 50>: Avoid raising div-by-zero
1957         exception again.
1959 2004-11-19  H.J. Lu  <hongjiu.lu@intel.com>
1961         [BZ #552]
1962         * math/libm-test.inc (tgamma_test): Update tgamma (0) and
1963         tgamma (-0).
1964         * sysdeps/generic/w_tgamma.c (__tgamma): Properly handle |x| == 0.
1965         * sysdeps/generic/w_tgammaf.c (__tgammaf): Likewise.
1966         * sysdeps/generic/w_tgammal.c (__tgammal): Likewise.
1967         * sysdeps/ieee754/dbl-64/e_gamma_r.c (__ieee754_gamma_r): Likewise.
1968         * sysdeps/ieee754/flt-32/e_gammaf_r.c: Likewise.
1969         * sysdeps/ieee754/ldbl-128/e_gammal_r.c: Likewise.
1970         * sysdeps/ieee754/ldbl-96/e_gammal_r.c: Likewise.
1971         * sysdeps/ieee754/k_standard.c (__kernel_standard): Handle
1972         tgamma (0) and tgamma (-0).
1974 2004-11-20  Ulrich Drepper  <drepper@redhat.com>
1976         * time/tzfile.c (__tzfile_read): Avoid open for checking whether
1977         the file we already use changed.
1979         * misc/syslog.c: Remove !USE_IN_LIBIO code.
1981 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
1983         * signal/signal.h (__sysv_signal, sysv_signal, signal, bsd_signal,
1984         ssignal): Remove __nonnull attribute.
1986 2004-11-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1988         * sysdeps/unix/sysv/linux/sh/sys/procfs.h: New file.
1990 2004-11-20  Ulrich Drepper  <drepper@redhat.com>
1992         * signal/signal.h: Add nonnull attributes.
1994         * signal/signal.h: Add deprecated attributes to sigstack,
1995         sigpause, sigblock, sigsetmask, siggetmask.
1997 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
1999         * sysdeps/unix/sysv/linux/bits/socket.h (SCM_RIGHTS): Avoid
2000         comma at the end of enum if __USE_BSD is not defined.
2002 2004-11-19  Ulrich Drepper  <drepper@redhat.com>
2004         * malloc/malloc.c (_int_malloc): Check for corruption of chunk
2005         which is about to be returned.
2007         * malloc/malloc.c (_int_free): Add a few more cheap tests for
2008         corruption.
2010 2004-11-17  Randolph Chung  <tausq@debian.org>
2012         * sysdeps/hppa/dl-machine.h (TRAMPOLINE_TEMPLATE): Add unwind
2013         annotations.
2015 2004-11-18  Jakub Jelinek  <jakub@redhat.com>
2017         [BZ #544]
2018         * posix/regex.h (RE_NO_SUB): New define.
2019         * posix/regex_internal.h (OP_DELETED_SUBEXP): New.
2020         (re_dfa_t): Add subexp_map.
2021         * posix/regcomp.c (struct subexp_optimize): New type.
2022         (optimize_subexps): New routine.
2023         (re_compile_internal): Call it.
2024         (re_compile_pattern): Set preg->no_sub to 1 if RE_NO_SUB.
2025         (free_dfa_content): Free subexp_map.
2026         (calc_inveclosure, calc_eclosure): Skip OP_DELETED_SUBEXP nodes.
2027         * posix/regexec.c (re_search_internal): If subexp_map
2028         is not NULL, duplicate registers as needed.
2029         * posix/Makefile: Add rules to build and run tst-regex2.
2030         * posix/tst-regex2.c: New test.
2031         * posix/rxspencer/tests: Fix last two tests (\0 -> \1).
2032         Add some new tests for nested subexpressions.
2034 2004-11-18  Ulrich Drepper  <drepper@redhat.com>
2036         * libio/libio.h (_IO_FLAGS2_FORTIFY): Renamed from
2037         _IO_FLAGS2_CHECK_PERCENT_N.
2038         * debug/fprintf_chk.c: Adjust all users.
2039         * debug/printf_chk.c: Likewise.
2040         * debug/vfprintf_chk.c: Likewise.
2041         * debug/vprintf_chk.c: Likewise.
2042         * debug/vsnprintf_chk.c: Likewise.
2043         * debug/vsprintf_chk.c: Likewise.
2044         * stdio-common/vfprintf.c: Likewise.  Detect missing %N$ formats.
2045         * debug/tst-chk1.c: Test detection of missing %N$ formats.
2047 2004-11-15  Jakub Jelinek  <jakub@redhat.com>
2049         * posix/bug-regex24.c: Include string.h.
2051         * nis/nis_clone_obj.c (nis_clone_object): Rename out3 label to out2
2052         and out2 to out.  Remove out label.  Formatting.
2054 2004-11-15  Ulrich Drepper  <drepper@redhat.com>
2056         * include/stdio.h: Do not mark __libc_message as noreturn.
2057         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Add loop to
2058         fool gcc.  Include <stdbool.h>.
2059         * sysdeps/posix/libc_fatal.c (__libc_fatal): Add loop to fool gcc.
2060         (__libc_message): Fix typo.
2062 2004-11-13  Ulrich Drepper  <drepper@redhat.com>
2064         * malloc/malloc.c (malloc_state): stat_lock_* elements need only
2065         be defined if THREAD_STATS is defined.  Remove pad0_ since it does
2066         not align with cache line sizes in general anyway.
2068 2004-11-13  Jakub Jelinek  <jakub@redhat.com>
2070         * elf/rtld.c (print_statistics): Avoid segfaults if not all namespaces
2071         are used.  Fix computation of num_relative_relocations on RELA
2072         architectures other than IA-64 and Alpha.
2074 2004-11-13  Ulrich Drepper  <drepper@redhat.com>
2076         * malloc/malloc.c (_int_free): Use munmap_chunk for handling
2077         mmaped memory.
2079 2004-11-12  Ulrich Drepper  <drepper@redhat.com>
2081         * malloc/malloc.c (_int_free): Remove test for NULL parameter.
2082         (_int_realloc): Call _int_free only if memory parameter is not NULL.
2084         * sysdeps/unix/sysv/linux/libc_fatal.c: Add new function __libc_message
2085         which performs the printing and simple format string handling.  The
2086         string is written to tty, stderr, syslog in this order, stopping after
2087         the first successful output.
2088         (__libc_fatal): Call __libc_message.
2089         * include/stdio.h: Declare __libc_message.
2090         * malloc/malloc.c (malloc_printerr): Use __libc_message.
2091         * debug/chk_fail.c: Also print message with __libc_message.
2092         * debug/test-strcpy_chk.c: Ensure that debug messages are not printed
2093         to the terminal or stderr.
2094         * debug/tst-chk1.c: Likewise.
2096         * posix/Makefile: Remove gpl2lgpl variable.
2098 2004-11-12  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2100         * elf/elf.h: Add 20 bit relocations R_390_*20.
2102 2004-11-12  Jakub Jelinek  <jakub@redhat.com>
2104         * sysdeps/unix/sysv/linux/i386/setuid.c: Include linux/posix_types.h.
2105         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
2106         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
2107         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
2108         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
2109         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
2111 2004-11-12  Andreas Schwab  <schwab@suse.de>
2113         * nis/ypclnt.c (ypprot_err): Fix "minor optimizations".
2115 2004-11-12  Ulrich Drepper  <drepper@redhat.com>
2117         * posix/Makefile (tests): Add bug-regex24.
2118         * posix/bug-regex24.c: New file.
2120 2004-11-12  Paolo Bonzini  <bonzini@gnu.org>
2122         * posix/regexec.c (check_dst_limits_calc_pos_1): Use the map to
2123         cut recursive paths.  Make exit condition more precise.
2124         (match_ctx_add_entry): Initialize the map.
2125         * posix/regex_internal.h (struct re_backref_cache_entry): Add a map of
2126         reachable subexpression nodes from each backreference cache entry.
2128 2004-11-10  Jakub Jelinek  <jakub@redhat.com>
2130         * sysdeps/unix/sysv/linux/setreuid.c: Remove sys/syscall.h,
2131         sys/types.h, linux/posix_types.h, sysdep.h and pthread-functions.h
2132         includes.  Include setxid.h.  Use INLINE_SETXID_SYSCALL macro
2133         instead of INLINE_SYSCALL, kill the HAVE_PTR__NPTL_SETXID guarded
2134         snippets.
2135         * sysdeps/unix/sysv/linux/setegid.c: Likewise.
2136         * sysdeps/unix/sysv/linux/setuid.c: Likewise.
2137         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
2138         * sysdeps/unix/sysv/linux/setgid.c: Likewise.
2139         * sysdeps/unix/sysv/linux/setresuid.c: Likewise.
2140         * sysdeps/unix/sysv/linux/setresgid.c: Likewise.
2141         * sysdeps/unix/sysv/linux/setregid.c: Likewise.
2142         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
2143         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
2144         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
2145         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
2146         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
2147         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
2148         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
2149         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
2150         * sysdeps/unix/sysv/linux/alpha/setreuid.c: Likewise.
2151         Formatting.  Change signed int into int.
2152         * sysdeps/unix/sysv/linux/alpha/setresuid.c: Likewise.
2153         * sysdeps/unix/sysv/linux/alpha/setresgid.c: Likewise.
2154         * sysdeps/unix/sysv/linux/alpha/setregid.c: Likewise.
2155         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
2156         Remove.
2157         * sysdeps/unix/setxid.h: New file.
2159         * Rules (binaries-static): Add xtests-static.
2160         * Makeconfig (run-program-prefix): Filter also xtests-static.
2162 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu.
2164         [BZ #535]
2165         * time/difftime.c: Fix a double-rounding bug on hosts with
2166         64-bit time_t and long double being IEEE double.  Also, port
2167         to more valid C99 hosts, even those that have padding bits.
2168         Don't include <values.h> since it is marked as an obsolescent
2169         interface.  Include <limits.h>, <float.h>, and <stdint.h> instead.
2170         (TYPE_BITS, TYPE_FLOATING, TYPE_SIGNED): New macros.
2171         (subtract): New static function, that works correctly without
2172         double-rounding, even on hosts with 64-bit time_t.  Also cater
2173         to hosts with padding bits.
2174         (__difftime): Use it.  Use DBL_MANT_DIG and LDBL_MANT_DIG to
2175         determine whether floating types are wide enough: the old
2176         test (which used sizeof) could in theory report the wrong results
2177         on hosts with padding bits in floating-point values.
2179 2004-11-11  Simon Josefsson  <jas@extundo.com>
2181         [BZ #542]
2182         * sysdeps/generic/strtok_r.c [HAVE_CONFIG_H]: Include config.h.
2183         [!_LIBC]: Include strtok_r.h (in gnulib), map __strtok_r to
2184         strtok_r and __rawmemchr to strch.
2185         (__strtok_r): Use C89 prototype.
2186         [weak_alias]: Move calls to libc_hidden_def and weak_alias into
2187         this #ifdef.
2189 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
2191         [BZ #541]
2192         * time/mktime.c (SHR): New macro, which is a portable
2193         substitute for >> that should work even on Crays.
2194         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
2195         Problem reported by Mark D. Baushke in
2196         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
2198 2004-11-09  Paolo Bonzini  <bonzini@gnu.org>
2200         * posix/regexec.c (match_ctx_free_subtops): Remove, merge into...
2201         (match_ctx_clean): ... this function.
2202         (match_ctx_free): Call match_ctx_clean.
2204         * posix/regexec.c (transit_state): Remove the check for
2205         out-of-bounds buffers.
2206         (check_matching): Check here for out-of-bounds buffers.
2207         (re_search_internal): Store into match_kind a set of bits
2208         indicating which incantation of fastmap scanning must be
2209         used.  Use a switch statement instead of multiple ifs.
2210         Exit the final "for (;;)" with goto free_return unless
2211         the match succeeded, thus simplifying some conditionals.
2213         * posix/regex_internal.c (re_string_reconstruct,
2214         re_string_context_at): Add several branch predictions for
2215         case-sensitive matching and no transition table being used.
2217 2004-11-10  Ulrich Drepper  <drepper@redhat.com>
2219         * posix/tst-waitid.c: Don't use error to print error message, they
2220         won't end up in the .out file.
2222 2004-11-09  Ulrich Drepper  <drepper@redhat.com>
2224         * nscd/nscd-client.h (libc_locked_map_ptr): Add new first
2225         parameter, used as class for definition.
2226         * nscd/nscd_getpw_r.c: Adjust for libc_locked_map_ptr change.
2227         (pw_map_free): Ensure no crash after memory is freed.
2228         * nscd/nscd_getgr_r.c: Likewise.  Make map externally visible.
2229         * nscd/nscd_gethst_r.c: Likewise.
2230         * nscd/nscd_getai.c: Use map from nscd_gethost.c.
2231         * nscd/nscd_initgroups.c: Use map from nscd_getgr.c.
2233         * nscd/nscd_getai.c: Add some checks to detect corrupt databases.
2234         * nscd/nscd_getgr_r.c: Likewise
2235         * nscd/nscd_gethst_r.c: Likewise.
2236         * nscd/nscd_getpw_r.c: Likewise
2238 2004-11-09  Jakub Jelinek  <jakub@redhat.com>
2240         * posix/regcomp.c (calc_eclosure_iter): Don't access
2241         dfa->edests[node].elems[0] if dfa->edests[node].nelem == 0.
2242         * posix/rxspencer/tests: Add 5 new tests.
2244 2004-11-09  Ulrich Drepper  <drepper@redhat.com>
2246         * sysdeps/unix/sysv/linux/ifaddrs.c: Determine sin6_scope_id field
2247         value correctly.  Patch by Mitsuru Kanda <mk@karaba.org>.
2249 2004-11-04  Jakub Jelinek  <jakub@redhat.com>
2251         * libio/fileops.c (_IO_new_file_seekoff): If mode is 0 and
2252         fp->_offset == _IO_pos_BAD, just call _IO_SYSSEEK (fp, 0, dir)
2253         and if successful set fp->_offset.
2254         * libio/Makefile (tests): Add bug-ungetc3.
2255         * libio/bug-ungetc3.c: New test.
2257 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
2259         * sysdeps/gnu/_G_config.h (_G_HAVE_MREMAP): Define symbol.
2260         * sysdeps/mach/hurd/_G_config.h: New file.
2261         * libio/fileops.c (mmap_remap_check) [__linux__]: Replaced with
2262         [_G_HAVE_MREMAP].
2264 2004-11-08  Ulrich Drepper  <drepper@redhat.com>
2266         * posix/regcomp.c (utf8_sb_map): Define.
2267         (free_dfa_content): Don't free dfa->sb_char if it's a pointer to
2268         utf8_sb_map.
2269         (init_dfa): Use utf8_sb_map instead of initializing memory when the
2270         encoding is UTF-8.
2272 2004-11-03  Paolo Bonzini  <bonzini@gnu.org>
2274         * posix/regcomp.c (init_dfa): Get the codeset name outside glibc as
2275         well.  Check if it is spelled UTF8 as well as UTF-8, and check
2276         case-insensitively.  Set dfa->map_notascii manually when outside
2277         glibc.
2278         * posix/regex_internal.c (build_wcs_upper_buffer) [!_LIBC]: Enable
2279         optimizations based on map_notascii.
2280         * posix/regex_internal.h [HAVE_LANGINFO_H || HAVE_LANGINFO_CODESET
2281         || _LIBC]: Include langinfo.h.
2283         * posix/regex_internal.h (struct re_backref_cache_entry): Add "more"
2284         field.
2285         * posix/regexec.c (check_dst_limits): Hoist computation of the source
2286         and destination bkref_idx out of the loop.  Pass it to
2287         check_dst_limits_calc_pos.
2288         (check_dst_limits_calc_pos_1): New function, containing the recursive
2289         loop of check_dst_limits_calc_pos; uses the "more" field of
2290         struct re_backref_cache to control the loop.
2291         (check_dst_limits_calc_pos): Store into "boundaries" the position
2292         relative to lim's start and end positions.  Do not accept eclosures,
2293         accept bkref_idx instead.  Call check_dst_limits_calc_pos_1 to do the
2294         work.
2295         (sift_states_bkref): Use the "more" field of struct re_backref_cache
2296         to control the loop.  A big "if" was turned into a continue and the
2297         function was reindented.
2298         (get_subexp): Use the "more" field of struct re_backref_cache
2299         to control the loop.
2300         (match_ctx_add_entry): Initialize the bkref_ents' "more" field.
2301         (search_cur_bkref_entry): Return -1 if out of bounds.
2303         * posix/regexec.c (empty_set): Remove.
2304         (sift_states_backward): Remove cur_src variable.  Move inner loop
2305         to build_sifted_states.
2306         (build_sifted_states): Extract from sift_states_backward.  Do not
2307         use empty_set.
2308         (update_cur_sifted_state): Do not use empty_set.  Special case
2309         dest_nodes->nelem == 0.
2311         * posix/regex_internal.h (struct re_backref_cache_entry): Remove flag
2312         field.
2313         (struct re_sift_context_t): Remove cur_bkref, cls_subexp_idx,
2314         check_subexp fields.  Move limits last.
2315         * posix/regexec.c (match_ctx_clear_flag): Remove.
2316         (sift_ctx_init): Remove check_subexp parameter.  Do not set removed
2317         fields.  Callers adjusted.
2318         (expand_bkref_cache): Remove last_str parameter.  Callers adjusted.
2319         (re_search_internal): Remove fast_translate variable.
2320         (update_cur_sifted_state): Pass candidates as the final parameter
2321         to sift_states_bkref.
2322         (sift_states_bkref): Change last unused parameter to be "candidates",
2323         do not fetch candidates into a local variable.
2324         Remove dead test for "node == sctx->bkref", and the cur_bkref_idx
2325         variable.
2326         Remove loops that set/reset the flag field of backref cache entries.
2327         (check_arrival_add_next_nodes): Use a signed int to hold the return
2328         value of re_node_set_insert.
2329         (group_nodes_into_DFAstates): Likewise.
2330         (match_ctx_add_entry): Do not set the flag field of the new entry.
2332 2004-11-05  Roland McGrath  <roland@redhat.com>
2334         * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Define
2335         _dl_sysinfo_dso under [NEED_DL_SYSINFO_DSO] as well.
2336         * elf/rtld.c (dl_main): Set up GLRO(dl_sysinfo_dso) under
2337         [NEED_DL_SYSINFO_DSO] as well.
2338         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Always include
2339         AT_SYSINFO and AT_SYSINFO_EHDR in name table.
2340         (_dl_sysdep_start) [NEED_DL_SYSINFO_DSO]: Match AT_SYSINFO_EHDR.
2341         * elf/dl-support.c (_dl_sysinfo_dso): Define also under
2342         [NEED_DL_SYSINFO_DSO].
2343         (_dl_aux_init) [NEED_DL_SYSINFO || NEED_DL_SYSINFO_DSO]:
2344         Match AT_SYSINFO_EHDR and set GL(dl_sysinfo_dso).
2346 2004-11-05  Roland McGrath  <roland@redhat.com>
2348         * manual/errno.texi (Error Codes): Revert last change for now.
2349         * sysdeps/gnu/errlist.c: Regenerated.
2351 2004-11-04  Roland McGrath  <roland@frob.com>
2353         * Makeconfig (link-libc, rpath-dirs): Remove AIX cruft definitions.
2354         (LDFLAGS-rpath-ORIGIN, LDFLAGS-soname-fname): Likewise.
2355         (LDFLAGS-rdynamic, LDFLAGS-Bsymbolic): Likewise.
2356         ($(common-objpfx)gnu/lib-names.stmp): Likewise.
2358 2004-11-01  Jakub Jelinek  <jakub@redhat.com>
2360         * sysdeps/unix/sysv/linux/x86_64/sys/procfs.h [__WORDSIZE == 32]
2361         (elf_fpxregset_t): New type.
2362         (struct elf_prpsinfo): If __WORDSIZE == 32, change pr_[ug]id type
2363         to unsigned short int.
2364         * sysdeps/unix/sysv/linux/x86_64/sys/user.h
2365         (struct user_fpregs_struct): Fix comment.
2366         * sysdeps/i386/fpu/bits/mathdef.h (float_t, double_t): If
2367         __FLOAT_EVAL_METHOD__ is defined and 0, typedef to float resp. double.
2368         * sysdeps/x86_64/fpu/bits/mathdef.h: Include bits/wordsize.h.
2369         (float_t, double_t): If -m32 and not -mfpmath=sse, typedef to
2370         long double.
2371         * sysdeps/x86_64/fpu/bits/fenv.h: Include bits/wordsize.h.
2372         (fenv_t): Remove __mxcsr field for -m32.
2374 2004-11-04  Jakub Jelinek  <jakub@redhat.com>
2376         * libio/ftello.c (ftello): Don't subtract save_end - save_base
2377         if pos is _IO_pos_BAD.
2378         * libio/ftello64.c (ftello64): Likewise.
2379         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
2380         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
2381         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
2382         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
2383         * libio/ioftell.c (_IO_ftell): Likewise.
2384         Cast to long int instead of off_t when checking for overflow.
2386 2004-11-04  Richard Henderson  <rth@redhat.com>
2388         * sysdeps/unix/sysv/linux/alpha/register-dump.h (regnames): Align.
2389         (linefeed): Remove.
2390         (register_dump): Rewrite to generate into a flat buffer instead
2391         of into iovecs.
2393 2004-11-02  Jakub Jelinek  <jakub@redhat.com>
2395         * debug/tst-chk1.c (ret): New volatile variable.
2396         (CHK_FAIL_END): Remove redundant ret setting.
2397         (do_test): Remote ret variable.
2399 2004-01-03  Paolo Bonzini  <bonzini@gnu.org>
2401         * posix/regex_internal.h (__regfree) [!_LIBC]: Define to regfree.
2403 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
2405         * sysdeps/generic/utime.c: Include <stddef.h>.
2407         * sysdeps/generic/sysconf.c: Include <grp.h> and <pwd.h>.
2409         * sysdeps/generic/tempname.c (__path_search): Add missing argument
2410         TRY_TMPDIR.
2412 2004-10-31  Mariusz Mazur <mmazur@kernel.pl>
2414         * sysdeps/unix/sysv/linux/alpha/setregid.c: New file.
2415         * sysdeps/unix/sysv/linux/alpha/setresgid.c: New file.
2416         * sysdeps/unix/sysv/linux/alpha/setresuid.c: New file.
2417         * sysdeps/unix/sysv/linux/alpha/setreuid.c: New file.
2419 2004-10-27  Derek R. Price  <derek@ximbiot.com>
2421         [BZ #487] This change is imported from gnulib.
2422         * time/mktime.c (not_equal_tm) [DEBUG]: Remove redundant check.
2424 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
2426         [BZ #473]
2427         * time/tst-mktime.c (main): Don't assume that mktime fails
2428         when given time stamps before 1970.  It returns negative
2429         time_t values instead, for compatibility with BSD.
2431         * time/tst-mktime2.c: New file.
2432         * time/Makefile (tests): Add it.
2434         [BZ #473] Import from gnulib.  Revamp to avoid several problems near
2435         time_t extrema, and on hosts with 64-bit time_t and 32-bit int.
2436         This fixes Debian bug 177940.
2437         * time/mktime.c (TIME_T_MIDPOINT): New macro.
2438         (ydhms_diff): Renamed from ydhms_tm_diff, with a new signature,
2439         which avoids overflow problems on hosts with 64-bit time_t and
2440         32-bit int.  All callers changed.  Now an inline function.
2441         Verify at compile-time that long int is wide enough to avoid
2442         these overflow problems.
2443         (guess_time_tm): New function.
2444         (__mktime_internal): Use it.  Avoid overflow when computing yday on
2445         hosts with 64-bit long and 32-bit int.  Remove tests for 69;
2446         no longer needed.  Use if rather than #ifdef for LEAP_SECONDS_POSSIBLE
2447         so that the code is checked by more compilers.
2448         Do not rely on floating point to probe: stick to integer arithmetic,
2449         to avoid potential porting problems.
2450         Repair potential overflow correctly in the Southern Hemisphere.
2451         (localtime_offset): Add a FIXME for the case where time_t is unsigned.
2453 2004-10-30  Andreas Schwab  <schwab@suse.de>
2455         * sysdeps/m68k/dl-machine.h (elf_machine_rela)
2456         (elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
2457         instead of static.
2459 2004-10-30  Andreas Schwab  <schwab@suse.de>
2461         * sysdeps/unix/sysv/linux/waitid.c: Include <stddef.h> for NULL.
2463 2004-10-30  Ulrich Drepper  <drepper@redhat.com>
2465         * malloc/malloc.c (_int_free): Use unique comments for the error
2466         cases.
2468 2004-10-28  Roland McGrath  <roland@frob.com>
2470         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_fork): Use i386_thread_state
2471         instead of machine_thread_state.
2473 2004-10-28  Roland McGrath  <roland@redhat.com>
2475         * sysdeps/unix/sysv/linux/syscalls.list: Remove setaltroot.
2477 2004-10-28  Ulrich Drepper  <drepper@redhat.com>
2479         * elf/dl-open.c (dl_open_worker): Remove reference to glibcbug script.
2481 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
2483         * elf/dl-load.c (_dl_map_object): Use cache_rpath to check for
2484         existing rpath in main executable, not explicit test.
2486 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
2488         * include/resolv.h (_res_opcodes): New extern.
2489         Add libresolv_hidden_proto.
2490         * resolv/res_debug.c (_res_opcodes): Remove.
2491         (__p_class_syms, __p_type_syms): Add libresolv_hidden_proto
2492         and libresolv_hidden_data_def.  Remove attribute_hidden.
2493         * resolv/res_mkquery (_res_opcodes): Remove.
2494         * resolv/res_data.c (_res_opcodes): Remove attribute_hidden.
2495         Add libresolv_hidden_data_def.
2497 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
2499         * elf/dl-open.c (_dl_open): Don't allow explicitly opening a DSO
2500         into an empty namespace.
2502         * elf/dl-fini.c (_dl_fini): Fix search for map in maps array.
2503         Reverse order of namespaces.
2504         * elf/Makefile: Add rules to build and run tst-dlmopen3.
2505         * elf/tst-dlmopen3.c: New file.
2506         * elf/tst-dlmopen1mod.c: Add check whether constructor runs.
2508 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
2510         * sysdeps/generic/glob.c (globfree): Clear gl_pathv after freeing it.
2511         * posix/Makefile: Add rules to build and run bug-glob2 test.
2512         * posix/bug-glob2.c: New test.
2514 2004-10-27  Roland McGrath  <roland@frob.com>
2516         * sysdeps/mach/hurd/i386/tls.h (HURD_TLS_DESC_DECL): New macro.
2517         (_hurd_tls_init): Use it.
2518         (_hurd_tls_fork): New function.
2519         * sysdeps/mach/hurd/fork.c (__fork) [USE_TLS]: Call it.
2521 2004-10-26  Roland McGrath  <roland@frob.com>
2523         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Initialize TCB->tcb.
2525 2004-10-26  Jakub Jelinek  <jakub@redhat.com>
2527         * sysdeps/gnu/netinet/udp.h (struct udphdr): Use u_int16_t
2528         type instead of uint16_t.  Formatting.
2530 2004-10-25  Roland McGrath  <roland@redhat.com>
2532         * login/openpty.c (openpty): Add libutil_hidden_def.
2534         * nss/nss_files/files-parse.c (nss_files_parse_hidden_def): Define to
2535         either libc_hidden_def or libnss_files_hidden_def, not hidden_def.
2536         This file is also compiled into libnss_hesiod by #include.
2538 2004-10-25  Roland McGrath  <roland@frob.com>
2540         * sysdeps/unix/bsd/hp: Directory and all files removed.
2541         These are now in the ports repository.
2542         * sysdeps/unix/bsd/osf: Likewise.
2543         * sysdeps/unix/bsd/sequent: Likewise.
2544         * sysdeps/unix/bsd/sony: Likewise.
2545         * sysdeps/unix/bsd/ultrix4: Likewise.
2546         * sysdeps/unix/sysv/aix: Likewise.
2547         * sysdeps/unix/sysv/hpux: Likewise.
2548         * sysdeps/unix/sysv/irix4: Likewise.
2549         * sysdeps/unix/sysv/isc2.2: Likewise.
2550         * sysdeps/unix/sysv/minix: Likewise.
2551         * sysdeps/unix/sysv/sco3.2.4: Likewise.
2552         * sysdeps/unix/sysv/sco3.2: Likewise.
2553         * sysdeps/unix/sysv/sysv4: Likewise.
2555         * configure.in (ASM_LINE_SEP): Move this setting to ...
2556         * sysdeps/hppa/configure.in: ... here, new file.
2557         * sysdeps/hppa/configure: New generated file.
2558         * configure: Regenerated.
2560 2004-10-25  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2562         * sysdeps/sh/dl-machine.h: Include sysdep.h.
2563         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add CFI directives.
2564         (elf_machine_runtime_setup): Add always_inline attribute.
2565         (_dl_start_user): Pass the correct environ.
2566         (elf_machine_rela): Replace static inline by auto inline, add
2567         always_inline attribute.
2568         (elf_machine_rela_relative): Likewise.
2569         (elf_machine_lazy_rel): Likewise.
2571 2004-10-24  Ulrich Drepper  <drepper@redhat.com>
2573         * nis/nis_call.c: Pretty printing.  Minor cleanups.
2574         * nis/nis_addmember.c (nis_addmember): Add assert to check buffer
2575         bounds.
2577         * resolv/nss_dns/dns-host.c: Avoid using PLTs.
2578         * include/libc-symbols.h: Define hidden attribute macros for
2579         libnss_nisplus and libutil.
2580         * include/utmp.h: Add libutil_hidden_proto for login_tty.
2581         * login/login_tty.c: Add libutil_hidden_def.
2582         * nis/nisplus-parser.h: Add libnss_nisplus_hidden_proto for parsers.
2583         * nis/nss_nisplus/nisplus-parser.c: Add libnss_nisplus_hidden_def.
2584         * include/pty.h: New file.
2585         * include/rpcsvc/yp.h: New file.
2586         * include/rpcsvc/ypclnt.h: New file.
2587         * include/rpcsvc/ypupd.h: New file.
2588         * include/libc-symbols.h: Define hidden attribute macros for libnsl.
2589         * include/rpcsvc/nislib.h: Use libnsl_hidden_proto for various
2590         functions.
2591         * nis/nis_add.c: Add libnsl_hidden_def.  Minor optimizations.
2592         * nis/nis_call.c: Likewise.
2593         * nis/nis_clone_obj.c: Likewise.
2594         * nis/nis_defaults.c: Likewise.
2595         * nis/nis_domain_of_r.c: Likewise.
2596         * nis/nis_error.c: Likewise.
2597         * nis/nis_file.c: Likewise.
2598         * nis/nis_free.c: Likewise.
2599         * nis/nis_local_names.c: Likewise.
2600         * nis/nis_lookup.c: Likewise.
2601         * nis/nis_modify.c: Likewise.
2602         * nis/nis_print.c: Likewise.
2603         * nis/nis_remove.c: Likewise.
2604         * nis/nis_subr.c: Likewise.
2605         * nis/nis_table.c: Likewise.
2606         * nis/nis_util.c: Likewise.
2607         * nis/yp_xdr.c: Likewise.
2608         * nis/ypclnt.c: Likewise.
2609         * nis/ypupdate_xdr.c: Likewise.
2611         * resolv/res_send.c (send_dg): Cope with failures.
2613         * include/libc-symbols.h: Define hidden attribute macros for
2614         libnss_files.
2615         * include/netdb.h: Use libnss_files_hidden_proto for the parsers
2616         defined in libnss_files, not libc_hidden_proto.
2617         * include/netinet/ether.h: Likewise.
2618         * include/rpc/netdb.h: Likewise.
2619         * nss/nss_files/files-parse.c: Use hidden_def in parser definitions
2620         instead of libc_hidden_def.
2621         * nss/nss_files/files-netgrp.c: Add libnss_files_hidden_def to
2622         _nss_netgroup_parseline definition.
2624 2004-10-23  Roland McGrath  <roland@frob.com>
2626         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Don't return early
2627         after an RPC succeeds.
2629         * sysdeps/vax, sysdeps/unix/bsd/vax: Directories and all files removed.
2630         These are now in the ports repository.
2631         * sysdeps/tahoe, sysdeps/unix/bsd/tahoe: Likewise.
2632         * sysdeps/cris, sysdeps/unix/sysv/linux/cris: Likewise.
2633         * sysdeps/am29k, sysdeps/i860, sysdeps/i960, sysdeps/m88k: Likewise.
2634         * sysdeps/standalone, sysdeps/z8000: Likewise.
2636 2004-10-23  Ulrich Drepper  <drepper@redhat.com>
2638         * resolv/res_send.c (send_dg): Combine write and read to socket
2639         into one loop.
2641 2004-10-22  Roland McGrath  <roland@frob.com>
2643         * Makefile (%.bz2, %.gz): Move these pattern rules ...
2644         * Makerules: ... to here.
2646 2001-10-31  Alexandre Oliva  <aoliva@redhat.com>
2648         * elf/elf.h: Add R_MN10300_* relocation numbers.
2650 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
2652         [BZ #471] Fix imported from gnulib.
2653         * time/mktime.c (leapyear, ydms_tm_diff): Year is of type
2654         long int, not int, to avoid problems when tm_year == INT_MAX
2655         and tm_mon > 12.
2656         (__mktime_intenral): Compute year using long int arithmetic,
2657         not int arithmetic, to avoid problems on hosts where time_t
2658         and long are 64 bits but int is 32.
2660         [BZ #468] Import a fix from gnulib.
2661         * time/mktime.c [! DEBUG]: Do not include <string.h>.
2662         It's needed only if DEBUG is nonzero.
2664         [BZ #470] Import fix from gnulib.
2665         * time/mktime.c [!_LIBC] (__mktime_internal): Define to
2666         mktime_internal, to avoid clashes with any __mktime_internal
2667         function defined in the standard library.
2669         [BZ #469] Imported from gnulib.
2670         * time/mktime.c (__isleap): Remove; all uses replaced by:
2671         (leapyear): New function, which avoids overflow by not adding
2672         1900 to year before testing whether it is a leap year.
2674         [BZ #472] Imported from gnulib.
2675         * time/mktime.c (Local Variables): Remove -DHAVE_TIME_R_POSIX;
2676         no longer used.
2678 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
2680         * resolv/res_send.c: Remove compatibility code which is unused in
2681         glibc and probably bitrotten.
2683         * debug/execinfo.h: Remove __THROW from backtrace prototype.
2685 2004-10-22  Jakub Jelinek  <jakub@redhat.com>
2687         * sysdeps/i386/Makefile (CFLAGS-backtrace.c): Add -fexceptions.
2688         * sysdeps/i386/backtrace.c: Include <bits/libc-lock.h>, <dlfcn.h>,
2689         <stdlib.h> and <unwind.h>.  Remove <bp-checks.h> include.
2690         (struct trace_arg): New type.
2691         (unwind_backtrace, unwind_getip, unwind_getcfa, unwind_getgr): New
2692         fn pointers resp. macros.
2693         (init, backtrace_helper): New functions.
2694         (__backtrace): Rewritten to use _Unwind_Backtrace first and fall
2695         back to frame pointer walking.
2697 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
2699         * sysdeps/unix/sysv/linux/Versions: Things are still in flux, it
2700         seems.  Undo last additions.
2702 2004-10-21  Ulrich Drepper  <drepper@redhat.com>
2704         * posix/execvp.c (execvp): Also ignore ENODEV and ETIMEDOUT errno
2705         values.
2707 2004-10-20  Roland McGrath  <roland@redhat.com>
2709         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Check also
2710         $(config-sysdirs) for shlib-versions files.
2712         * Makeconfig ($(common-objpfx)soversions.i): Replace shell loop with
2713         use of ...
2714         * scripts/soversions.awk: ... this new file.  Collect lib info and
2715         match any DEFAULT line before emitting anything, so DEFAULT can come
2716         later in the concatenation of shlib-versions files.
2718         * manual/errno.texi (Error Codes): Add ENOKEY, EKEYEXPIRED,
2719         EKEYREVOKED, EKEYREJECTED.
2720         * sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.3.4): New errlist.
2721         * sysdeps/gnu/errlist.c: Regenerated
2723         * sysdeps/gnu/errlist-compat.awk: Don't bail if Versions gives a count
2724         higher than ERR_MAX reports.  Instead, emit a #define ERR_MAX.
2725         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.h): New target.
2726         (generated): Add errlist-compat.h.
2727         * sysdeps/gnu/errlist.awk: Make output #include <errlist-compat.h> to
2728         define ERR_MAX and use that for table size.
2730 2004-10-20  Ulrich Drepper  <drepper@redhat.com>
2732         * sysdeps/unix/sysv/linux/syscalls.list: Add entries for setaltroot,
2733         key_add, key_request, and keyctl syscalls.
2734         * sysdeps/unix/sysv/linux/Versions: Export them.
2736 2004-10-19  Roland McGrath  <roland@frob.com>
2738         * sysdeps/mach/readonly-area.c: New file.
2740 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
2742         * elf/Versions [ld, GLIBC_PRIVATE]: Add _dl_debug_state.
2743         * elf/dl-debug.c (_dl_debug_state): Add rtld_hidden_def.
2744         * sysdeps/generic/ldsodefs.h (_dl_debug_state): Don't mark as
2745         hidden but use rtld_hidden_proto.
2747 2004-10-19  Alfred M. Szmidt  <ams@gnu.org>
2749         * sysdeps/generic/readonly-area.c (__readonly_str): Renamed to ...
2750         (__readonly_area): ... this.
2752 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
2754         * sysdeps/generic/strcpy_chk.c (__strcpy_chk): Speed up by checking
2755         destlen only every 4 bytes.
2757 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
2759         * nss/getent.c (hosts_keys): Let inet_pton decide whether the
2760         string is an address or not.
2762 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
2764         * elf/dl-addr.c (_dl_addr): Don't look at STT_TLS symbols.
2765         Use DL_SYMBOL_ADDRESS to set dli_saddr.
2767         * debug/Makefile (catchsegv): Prefix $LIB with a backslash.
2769 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
2771         * debug/Makefile ($(objpfx)catchsegv): To support multilib
2772         platforms, use $LIB in path to slibdir.
2774 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
2776         * debug/catchsegv.sh: Update copyright year.
2777         Use mktemp to create segv_output file.
2779 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
2781         * elf/dl-libc.c (__libc_dlsym_private, __libc_register_dl_open_hook):
2782         New functions.
2783         (__libc_dlopen_mode): Call __libc_register_dl_open_hook and
2784         __libc_register_dlfcn_hook.
2785         * dlfcn/Makefile (routines, elide-routines.os): Set.
2786         Add rules to build and test tststatic2.
2787         * dlfcn/tststatic2.c: New test.
2788         * dlfcn/modstatic2.c: New test module.
2789         * dlfcn/dladdr.c: Call _dlfcn_hook from libdl.so if not NULL.
2790         Define __ prefixed routine in libc.a and in libdl.a just call it.
2791         * dlfcn/dladdr1.c: Likewise.
2792         * dlfcn/dlclose.c: Likewise.
2793         * dlfcn/dlerror.c: Likewise.
2794         * dlfcn/dlinfo.c: Likewise.
2795         * dlfcn/dlmopen.c: Likewise.
2796         * dlfcn/dlopen.c: Likewise.
2797         * dlfcn/dlopenold.c: Likewise.
2798         * dlfcn/dlsym.c: Likewise.
2799         * dlfcn/dlvsym.c: Likewise.
2800         * dlfcn/sdladdr.c: New file.
2801         * dlfcn/sdladdr1.c: New file.
2802         * dlfcn/sdlclose.c: New file.
2803         * dlfcn/sdlerror.c: New file.
2804         * dlfcn/sdlinfo.c: New file.
2805         * dlfcn/sdlopen.c: New file.
2806         * dlfcn/sdlsym.c: New file.
2807         * dlfcn/sdlvsym.c: New file.
2808         * dlfcn/Versions (libdl): Export _dlfcn_hook@GLIBC_PRIVATE.
2809         * include/dlfcn.h (DL_CALLER_DECL, DL_CALLER RETURN_ADDRESS): Define.
2810         (struct dlfcn_hook): New type.
2811         (_dlfcn_hook): New extern decl.
2812         (__dlopen, __dlclose, __dlsym, __dlerror, __dladdr, __dladdr1,
2813         __dlinfo, __dlmopen, __libc_dlsym_private,
2814         __libc_register_dl_open_hook, __libc_register_dlfcn_hook): New
2815         prototypes.
2816         (__dlvsym): Use DL_CALLER_DECL.
2817         * include/libc-symbols.h: Define libdl_hidden_proto and friends.
2819         * malloc/arena.c (_dl_open_hook): Extern decl.
2820         (ptmalloc_init): Don't call _dl_addr when dlopened from statically
2821         linked programs but don't use brk for them either.
2823 2004-10-18  Roland McGrath  <roland@redhat.com>
2825         * dlfcn/bug-dlsym1.c (main): Remove bogus setenv call.
2827 2004-10-18  Ulrich Drepper  <drepper@redhat.com>
2829         * elf/dl-open.c (dl_open_worker): Avoid dereferencing map in
2830         statically linked code if there might none be found.
2832 2004-10-06  Maciej W. Rozycki  <macro@mips.com>
2834         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
2835         (__SYSCALL_CLOBBERS): Add "memory".
2836         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h
2837         (__SYSCALL_CLOBBERS): Likewise.
2838         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h
2839         (__SYSCALL_CLOBBERS): Likewise.
2841 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
2843         * include/libc-symbols.h: Define libresolv_hidden_proto and friends.
2844         * include/resolv.h: Add libresolv_hidden_proto for symbols defined,
2845         used, and exported in libresolv.
2846         * resolv/base64.c: Add libresolv_hidden_def.
2847         * resolv/gethnamaddr.c: Likewise.
2848         * resolv/ns_name.c: Likewise.
2849         * resolv/ns_netint.c: Likewise.
2850         * resolv/res_comp.c: Likewise.
2851         * resolv/res_data.c: Likewise.
2852         * resolv/res_debug.c: Likewise.
2853         * resolv/res_mkquery.c: Likewise.
2854         * resolv/res_query.c: Likewise.
2855         * resolv/res_send.c: Likewise.
2857 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
2859         * elf/dl-minimal.c (__chk_fail): New.  Add rtld_hidden_def.
2860         * sysdeps/unix/sysv/linux/readonly-area.c: New file.
2861         * sysdeps/i386/i686/memmove.S (__memmove_chk): Add checking
2862         routine.
2863         * sysdeps/i386/i686/memcpy.S (__memcpy_chk): Likewise.
2864         * sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
2865         * sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
2866         * sysdeps/i386/i686/memmove-chk.S: New file.
2867         * sysdeps/i386/i686/memcpy-chk.S: Likewise.
2868         * sysdeps/i386/i686/mempcpy-chk.S: Likewise.
2869         * sysdeps/i386/i686/memset-chk.S: Likewise.
2870         * sysdeps/generic/strcat-chk.c (__strcat_chk): Don't __chk_fail
2871         if exactly fitting into buffer.
2872         * sysdeps/generic/strncat-chk.c (__strncat_chk): Likewise.
2873         * sysdeps/generic/readonly-area.c: New file.
2874         * sysdeps/generic/strncpy-chk.c (__strncpy_chk): Only test
2875         destlen once.
2876         * sysdeps/x86_64/memset.S (__memset_chk): Add checking routine.
2877         * sysdeps/x86_64/memcpy.S (__memcpy_chk): Likewise.
2878         * sysdeps/x86_64/mempcpy.S (__memcpy_chk): Define to __mempcpy_chk.
2879         * sysdeps/x86_64/memcpy-chk.S: New file.
2880         * sysdeps/x86_64/mempcpy-chk.S: Likewise.
2881         * sysdeps/x86_64/memset-chk.S: Likewise.
2882         * sysdeps/x86_64/strcpy-chk.S: Likewise.
2883         * sysdeps/x86_64/stpcpy-chk.S: Likewise.
2884         * argp/argp-xinl.c (__OPTIMIZE__): Define to 1 instead of nothing.
2885         * argp/argp-fs-xinl.c (__OPTIMIZE__): Likewise.
2886         * debug/tst-chk1.c: New test.
2887         * debug/tst-chk2.c: Likewise.
2888         * debug/tst-chk3.c: Likewise.
2889         * debug/test-strcpy_chk.c: Likewise.
2890         * debug/test-stpcpy_chk.c: Likewise.
2891         * debug/vsprintf_chk.c (__vsprintf_chk): If flags > 0, request
2892         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
2893         * debug/Makefile (routines): Add printf_chk, fprintf_chk, vprintf_chk,
2894         vfprintf_chk, gets_chk and readonly-area.
2895         (CFLAGS-*_chk.c): Set.
2896         (tests): Add tst-chk1, tst-chk2, tst-chk3, test-strcpy_chk and
2897         test-stpcpy_chk.
2898         * debug/vprintf_chk.c: New file.
2899         * debug/printf_chk.c: Likewise.
2900         * debug/vfprintf_chk.c: Likewise.
2901         * debug/fprintf_chk.c: Likewise.
2902         * debug/gets_chk.c: Likewise.
2903         * debug/chk_fail.c (__chk_fail): Add libc_hidden_def.
2904         * debug/snprintf_chk.c (__snprintf_chk): Fix order of arguments
2905         passed to __vsnprintf_chk.
2906         * debug/Versions (libc): Export __printf_chk, __fprintf_chk,
2907         __vprintf_chk, __vfprintf_chk and __gets_chk @GLIBC_2.3.4.
2908         * debug/vsnprintf_chk.c (__vsnprintf_chk): Don't call
2909         __vsnprintf, instead create a temporary file with
2910         _IO_strn_jumps jumptable.  If flags > 0, request
2911         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
2912         * libio/Makefile (headers): Add bits/stdio2.h.
2913         * libio/stdio.h: Include <bits/stdio2.h> if __USE_FORTIFY_LEVEL.
2914         (sprintf, snprintf, vsprintf, vsnprintf): Remove defines.
2915         * libio/strfile.h (_IO_strnfile): New type.
2916         (_IO_strn_jumps): New extern.
2917         * libio/vsnprintf.c (_IO_strnfile): Remove.
2918         (_IO_strn_jumps): Remove static.
2919         * libio/bits/stdio2.h: New file.
2920         * libio/vswprintf.c (_IO_strnfile): Rename type to...
2921         (_IO_wstrnfile): ...this.  Adjust all uses.
2922         * libio/libio.h (_IO_FLAGS2_CHECK_PERCENT_N): Define.
2923         * stdio-common/vfprintf.c (STR_LEN): Define.
2924         (vfprintf): Add readonly_format variable.
2925         Handle _IO_FLAGS2_CHECK_PERCENT_N.
2926         (buffered_vfprintf): Copy _flags2.
2927         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
2928         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
2929         __vfprintf_chk): New prototypes.
2930         (__vsprintf_chk, __vsnprintf_chk): Add libc_hidden_proto.
2931         * include/string.h (__memcpy_chk, __memmove_chk, __mempcpy_chk,
2932         __memset_chk, __strcpy_chk, __stpcpy_chk, __strncpy_chk, __strcat_chk,
2933         __strncat_chk): New prototypes.
2934         * include/bits/string3.h: New file.
2935         * include/sys/cdefs.h (__chk_fail): Add libc_hidden_proto
2936         and rtld_hidden_proto.
2937         * string/Makefile (headers): Add bits/string3.h.
2938         * string/bits/string3.h (bcopy, bzero): New defines.
2939         (memset, memcpy, memmove, strcpy, strncpy, strcat, strncat): Change
2940         macros so that inlines are used only if unknown destination size
2941         or side-effects in destination argument.
2942         (mempcpy, stpcpy): Likewise.  Protect with #ifdef __USE_GNU.
2944 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
2946         * debug/Makefile (routines): Add *_chk.
2947         * debug/Versions (libc): Export __chk_fail, __memcpy_chk,
2948         __memmove_chk, __mempcpy_chk, __memset_chk, __stpcpy_chk,
2949         __strcat_chk, __strcpy_chk, __strncat_chk, __strncpy_chk,
2950         __sprintf_chk, __vsprintf_chk, __snprintf_chk, __vsnprintf_chk
2951         @GLIBC_2.3.4.
2952         * debug/chk_fail.c: New file.
2953         * debug/snprintf_chk.c: Likewise.
2954         * debug/sprintf_chk.c: Likewise.
2955         * debug/vsnprintf_chk.c: Likewise.
2956         * debug/vsprintf_chk.c: Likewise.
2957         * include/features.h (_FORTIFY_SOURCE): Document, handle.
2958         (__USE_FORTIFY_LEVEL): Define.
2959         (__GNUC_PREREQ): Move to earlier location.
2960         * include/sys/cdefs.h (__chk_fail): New prototype.
2961         * libio/bits/stdio.h (sprintf, vsprintf, snprintf, vsnprintf):
2962         Define if __USE_FORTIFY_LEVEL.
2963         * misc/sys/cdefs.h (__bos, __bos0): Define.
2964         * string/string.h: Include <bits/string3.h> if __USE_FORTIFY_LEVEL.
2965         * bits/string/string3.h: New header.
2966         * sysdeps/generic/memcpy_chk.c: New file.
2967         * sysdeps/generic/memmove_chk.c: Likewise.
2968         * sysdeps/generic/mempcpy_chk.c: Likewise.
2969         * sysdeps/generic/memset_chk.c: Likewise.
2970         * sysdeps/generic/stpcpy_chk.c: Likewise.
2971         * sysdeps/generic/strcat_chk.c: Likewise.
2972         * sysdeps/generic/strcpy_chk.c: Likewise.
2973         * sysdeps/generic/strncat_chk.c: Likewise.
2974         * sysdeps/generic/strncpy_chk.c: Likewise.
2976 2004-10-17  Roland McGrath  <roland@frob.com>
2978         * manual/memory.texi (Page Lock Functions): Typo fix.
2979         Reported by Carlos Maziero <maziero@ppgia.pucpr.br>
2981 2004-10-16  Alfred M. Szmidt  <ams@kemisten.nu>
2983         * sysdeps/mach/hurd/Makefile (link-libc-static): Use
2984         `$(static-gnulib') instead of `$(gnulib)'.
2986 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
2988         * sunrpc/rpc_clntout.c: Avoid including rcsid into binary.
2989         * sunrpc/rpc_cout.c: Likewise.
2990         * sunrpc/rpc_hout.c: Likewise.
2991         * sunrpc/rpc_main.c: Likewise.
2992         * sunrpc/rpc_parse.c: Likewise.
2993         * sunrpc/rpc_sample.c: Likewise.
2994         * sunrpc/rpc_scan.c: Likewise.
2995         * sunrpc/rpc_svcout.c: Likewise.
2996         * sunrpc/rpc_tblout.c: Likewise.
2997         * sunrpc/rpc_util.c: Likewise.
2999 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
3001         * sysdeps/unix/sysv/linux/i386/sysdep.h (PUSHARGS_6, DOARGS_6,
3002         POPARGS_6, _PUSHARGS_6, _DOARGS_6, _POPARGS_6): Define.
3003         * sysdeps/unix/sysv/linux/i386/syscall.S (syscall): Handle 6 argument
3004         syscalls.
3006 2004-10-15  Ulrich Drepper  <drepper@redhat.com>
3008         * nscd/nscd.h (_PATH_NSCD_PASSWD_DB): Move to /var/db.
3009         (_PATH_NSCD_GROUP_DB): Likewise.
3010         (_PATH_NSCD_HOSTS_DB): Likewise.
3011         (_PATH_NSCD_XYZ_DB_TMP): New #define, point to /var/run.
3012         * nscd/connections.c (nscd_init): Non-persistent database files
3013         are created with the _PATH_NSCD_XYZ_DB_TMP path.
3014         * nscd/nscd.init: Create /var/db/nscd if necessary.
3016 2004-10-15  Richard Henderson  <rth@redhat.com>
3018         * sysdeps/unix/sysv/linux/alpha/register-dump.h: New file.
3019         * sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h (SIGCONTEXT): Add
3020         _code argument, pass sigcontext by pointer.
3021         (SIGCONTEXT_EXTRA_ARGS): Likewise.
3022         (GET_PC, GET_FRAME, GET_STACK): Expect ctx as pointer.
3024 2004-10-14  Richard Henderson  <rth@redhat.com>
3026         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
3027         elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
3028         instead of static.
3030         * sysdeps/unix/sysv/linux/adjtime.c (ADJTIME): Use prototype
3031         style definition.
3032         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): If
3033         __ASSUME_TIMEVAL64, define __adjtime directly rather than
3034         via strong_alias.
3036 2004-10-14  Ulrich Drepper  <drepper@redhat.com>
3038         * nscd/Makefile: When using compilers without -fpie support, also
3039         link with -lselinux if necessary.
3040         Patch by Arkadiusz Miskiewicz <arekm@pld-linux.org>.
3042         * nscd/connections.c (nscd_init): Remove file if not persistent
3043         and not shared.  Patch by Jerome Borsboom <j.borsboom@erasmusmc.nl>.
3045 2004-10-14  Jakub Jelinek  <jakub@redhat.com>
3047         * sysdeps/unix/sysv/linux/i386/setresuid.c: Handle
3048         defined __NR_setresuid32 && !defined __NR_setresuid.
3049         * sysdeps/unix/sysv/linux/i386/setresgid.c: Handle
3050         defined __NR_setresgid32 && !defined __NR_setresgid.
3052         * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit,
3053         __signbitl, sqrtf, sqrt, sqrtl, fdim, fdimf): Use __NTH macro.
3055         * sysdeps/generic/errno-loc.c: Don't undef #errno
3056         if RTLD_PRIVATE_ERRNO.
3057         * include/errno.h (__errno_location): If RTLD_PRIVATE_ERRNO,
3058         add attribute_hidden.
3060         * dlfcn/dlinfo.c (dlinfo_doit): Replace iteration over GL(dl_loaded)
3061         chain with iteration over all namespaces' _ns_loaded chains.
3062         * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_preferred_address):
3063         Likewise.
3064         * sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Likewise.
3066         * elf/rtld.c (_dl_start): Fix one last dl_loaded.
3067         * elf/dl-load.c (_dl_map_object_from_fd): Avoid definition of
3068         label when it is not needed.
3069         * elf/dl-close.c (_dl_close): Typo: & -> &&.
3071 2004-10-12  Jakub Jelinek  <jakub@redhat.com>
3073         * sysdeps/generic/segfault.c: Include alloca.h and stdint.h.
3074         Don't include frame.h.
3075         (CURRENT_STACK_FRAME, INNER_THAN, ADVANCE_STACK_FRAME): Remove.
3076         (catch_segfault): Use backtrace function.
3078         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Fix comment.
3079         * sysdeps/unix/sysv/linux/ia64/register-dump.h: New file.
3080         * sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h (GET_PC): Return sc_ip
3081         field.
3083 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
3085         Add support for namespaces in the dynamic linker.
3086         * dlfcn/Makefile (libdl-routines): Add dlmopen.
3087         * dlfcn/Versions [libdl, GLIBC_2.3.4]: Add dlmopen.
3088         * dlfcn/dlfcn.h: Define Lmid_t, LM_ID_BASE, and LM_ID_NEWLM.
3089         Declare dlmopen.  Document RTLD_DI_LMID.
3090         * dlfcn/dlinfo.c: Handle RTLD_DI_LMID.
3091         * dlfcn/dlmopen.c: New file.
3092         * dlfcn/dlopen.c: Pass new parameter to _dl_open.
3093         * dlfcn/dlopenold.c: Likewise.
3094         * elf/dl-addr.c: Adjust for removal of GL(dl_loaded).
3095         * elf/dl-caller.c: Likewise.
3096         * elf/dl-close.c: Likewise.
3097         * elf/dl-conflict.c: Likewise.
3098         * elf/dl-debug.c: Likewise.
3099         * elf/dl-lookup.c: Likewise.
3100         * elf/dl-sym.c: Likewise.
3101         * elf/dl-version.c: Likewise.
3102         * elf/do-lookup.h: Likewise.
3103         * elf/rtld.c: Likewise.
3104         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
3105         * elf/dl-depsc: Likewise.  Add new parameter to _dl_map_object.
3106         * elf/dl-fini.c: Call destructors in all namespaces.
3107         * elf/dl-iteratephdr.c: Compute total nloaded.  Adjust for removal of
3108         GL(dl_loaded).
3109         * elf/dl-libc.c: Pass new parameter to _dl_open.  Adjust for removal
3110         of GL(dl_loaded).
3111         * elf/dl-load.c (_dl_map_object_from_fd): Don't load ld.so a second
3112         time.  Reuse the one from the main namespace in all others.
3113         Pass new parameter to _dl_new_object.
3114         Adjust for removal of GL(dl_loaded).
3115         * elf/dl-object.c: Take new parameter.  Use it to initialize l_ns.
3116         Adjust for removal of GL(dl_loaded).
3117         * elf/dl-open.c (_dl_open): Take new parameter.
3118         Adjust for removal of GL(dl_loaded).
3119         * elf/dl-support.c: Replace global _dl_loaded etc variables with
3120         _dl_ns variable.
3121         * include/dlfcn.h: Adjust prototype of _dl_open.
3122         Define __LM_ID_CALLER.
3123         * include/link.h: Add l_real, l_ns, and l_direct_opencount elements.
3124         * sysdeps/generic/dl-tls.c: Bump TLS_STATIC_SURPLUS.  Since libc is
3125         using TLS we need memory appropriate to the number of namespaces.
3126         * sysdeps/generic/ldsodefs.h (struct rtld_global): Replace _dl_loaded,
3127         _dl_nloaded, _dl_global_scope, _dl_main_searchlist, and
3128         _dl_global_scope_alloc with _dl_ns element.  Define DL_NNS.
3129         Adjust prototypes of _dl_map_object and member in rtld_global_ro.
3130         * malloc/malloc.c: Include <dlfcn.h>.
3131         * malloc/arena.c (ptmalloc_init): If libc is not in primary namespace,
3132         never use brk.
3133         * elf/Makefile: Add rules to build and run tst-dlmopen1 and
3134         tst-dlmopen2.
3135         * elf/tst-dlmopen1.c: New file.
3136         * elf/tst-dlmopen1mod.c: New file.
3137         * elf/tst-dlmopen2.c: New file.
3139         * elf/dl-close.c: Improve reference counting by tracking direct loads.
3140         * elf/dl-lookup.c (add_dependency): Likewise.
3141         * elf/dl-open.c (dl_open_worker): Likewise.
3142         * elf/rtld.c (dl_main): Likewise.
3144 2004-09-09  GOTO Masanori  <gotom@debian.or.jp>
3146         [BZ #77]
3147         * elf/dl-close.c: Count down l_opencount to check not only for
3148         l_reldeps, but also l_initfini.
3150 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
3152         * elf/dl-close.c (_dl_close): Update bug reporting instructions.
3154 2004-10-11  Ulrich Drepper  <drepper@redhat.com>
3156         * timezone/asia: Update from tzdata2004e.
3157         * timezone/southamerica: Likewise.
3158         * timezone/private.h: Update from tzcode2004e.
3159         * timezone/zdump.c: Likewise.
3161         * stdio-common/vfscanf.c: Add support for reading localized
3162         digits.  Patch mainly by Hamed Malek <hamed@bamdad.org>.
3164         * resolv/res_init.c (res_thread_freeres): Reset _res.options.
3165         [BZ #434]
3167         * resolv/res_send.c (send_dg): Use nonblocking sockets.  Add
3168         appropriate poll/select calls and restart operation if necessary.
3169         Also handle EINTR.
3171         * elf/tst-dlopenrpath.c (do_test): Enable code which was disabled
3172         for debugging.
3174         * elf/dl-sym.c (do_sym): Avoid using global variable.
3176         * elf/dl-addr.c (_dl_addr): Really use match everywhere.
3178 2004-10-09  Andreas Schwab  <schwab@suse.de>
3180         * sysdeps/m68k/memcopy.h (WORD_COPY_BWD): Remove use of cast as
3181         lvalue.
3183         * sysdeps/m68k/fpu/bits/mathinline.h: Remove __THROW from inline
3184         definitions.
3186 2004-10-07  Andreas Schwab  <schwab@suse.de>
3188         * misc/sys/uio.h: Change __vector to __iovec to avoid clash with
3189         altivec.
3191 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
3193         * gmon/Makefile (CFLAGS-mcount.c): Move before inclusion of "Rules".
3194         * sysdeps/powerpc/powerpc64/Makefile (CFLAGS-mcount.c): Add
3195         -msoft-float.
3196         * sysdeps/powerpc/powerpc64/sysdep.h (SAVE_ARG, REST_ARG): New macros.
3197         (CALL_MCOUNT): Replace with a gas macro implementation.
3198         (EALIGN): Delete PROF version.
3199         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Invoke CALL_MCOUNT.
3200         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Likewise.
3201         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
3202         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
3203         * sysdeps/powerpc/powerpc64/memcpy.S: Likewise.
3204         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
3205         * sysdeps/powerpc/powerpc64/stpcpy.S: Likewise.
3206         * sysdeps/powerpc/powerpc64/strchr.S: Likewise.
3207         * sysdeps/powerpc/powerpc64/strcmp.S: Likewise.
3208         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
3209         * sysdeps/powerpc/powerpc64/strlen.S: Likewise.
3210         * sysdeps/powerpc/powerpc64/strncmp.S: Likewise.
3211         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Likewise.
3212         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Likewise.
3213         * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Likewise.
3214         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Likewise.
3215         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Likewise.
3216         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: Likewise.
3217         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: Likewise.
3218         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: Likewise.
3219         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: Likewise.
3220         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Likewise.
3221         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Likewise.
3222         * sysdeps/powerpc/powerpc64/fpu/s_round.S: Likewise.
3223         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Likewise.
3224         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Likewise.
3225         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Likewise.
3227         * sysdeps/powerpc/powerpc64/setjmp-common.S: Add extra entry point
3228         past _mcount call.
3229         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Use it.
3230         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
3232 2004-10-06  Ulrich Drepper  <drepper@redhat.com>
3234         * resolv/res_mkquery.c (res_nmkquery): Reject randombits value if
3235         low 16 bits are zero.
3237 2004-10-06  Jakub Jelinek  <jakub@redhat.com>
3239         * posix/tst-getaddrinfo2.c: Include stdlib.h and string.h.
3240         (do_test): Use %p instead of 0x%08X to print a pointer.
3242         * malloc/malloc.c: Include stdio-common/_itoa.h.
3244 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
3246         * elf/rtld.c (dl_main): Use _dl_debug_printf instead of _dl_printf
3247         for prelink message.
3249 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
3251         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Include dl-sysdep.h.
3252         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
3254 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
3256         * grp/initgroups.c: Remove duplicate group IDs.
3257         * grp/compat-initgroups.c: Likewise.
3258         * nscd/initgrcache.c: Likewise.
3260 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
3262         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (__sysconf): Return 200112L
3263         for _SC_CPUTIME or _SC_THREAD_CPUTIME.
3265         * nscd/Makefile (nscd-cflags): Set to -DIS_IN_nscd=1, plus
3266         -fpie if building PIE.
3267         (CFLAGS-*.c): Use it.
3269         * nscd/Makefile (relro-LDFLAGS): Add -Wl,-z,now if have-z-relro.
3270         ($(objpfx)nscd): Add $(relro-LDFLAGS).
3272         * sysdeps/unix/sysv/linux/i386/sysconf.c: Include hp-timing.h.
3273         (__sysconf): Return -1 for _SC_CPUTIME or _SC_THREAD_CPUTIME if
3274         !HP_TIMING_AVAIL.
3276 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
3278         * nscd/Makefile (distribute): Remove TODO.
3279         * nscd/TODO: Removed.
3281 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
3283         * nscd/gai.c: Define __no_netlink_support if NEED_NETLINK is
3284         defined and __ASSUME_NETLINK_SUPPORT is zero.
3285         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gai.c): Add
3286         -DNEED_NETLINK.
3288         * malloc/mtrace.pl: Avoid calling location unless it is needed for
3289         output.  Patch by Edward Bishop <binutils@gmail.com>.
3291         * nscd/Makefile (CFLAGS-gai.c): Add -fpie.
3293 2004-10-04  H.J. Lu  <hongjiu.lu@intel.com>
3295         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c
3296         (clock_getcpuclockid): Add missing retval.
3298         * sysdeps/unix/sysv/linux/ia64/sysconf.c (linux_sysconf): Fix a typo.
3300 2004-10-04  Roland McGrath  <roland@redhat.com>
3302         * include/errno.h [RTLD_PRIVATE_ERRNO] (errno): Rename the real symbol
3303         to rtld_errno.
3304         * sysdeps/generic/errno.c [RTLD_PRIVATE_ERRNO] (rtld_errno): Define it,
3305         and don't define any other errno names.
3306         * sysdeps/unix/alpha/sysdep.h [RTLD_PRIVATE_ERRNO]: Use rtld_errno in
3307         place of errno.
3308         * sysdeps/unix/i386/sysdep.S: Likewise.
3309         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
3310         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
3311         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
3312         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
3313         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
3314         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
3315         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
3316         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
3317         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
3318         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
3319         * sysdeps/unix/x86_64/sysdep.S: Likewise.
3321         * sysdeps/generic/errno.c [! USE___THREAD] (errno): Use `nocommon'
3322         attribute instead of `section'.
3324 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
3326         * sysdeps/unix/sysv/linux/ia64/sysconf.c: New file.
3327         * sysdeps/unix/sysv/linux/ia64/Dist: Add has_cpuclock.c.
3328         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: Move actual
3329         testing code to...
3330         * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c: ...here.  New file.
3331         * sysdeps/unix/sysv/linux/i386/sysconf.c: Add dynamic check for
3332         _SC_CPUTIME and _SC_THREAD_CPUTIME.
3334         * nscd/connections.c (start_threads): Use sysconf in case
3335         _POSIX_CLOCK_SELECTION or _POSIX_MONOTONIC_CLOCK is not greater zero.
3337         * nscd/Makefile (nscd-modules): Add gai.
3338         * nscd/gai.c: New file.
3339         * nscd/nscd.c: Remove getaddrinfo stub definition.
3341         * assert/assert.h: Give up on using __builtin_expect.
3343         * elf/rtld.c (dl_main): Only skip => output in ldd mode if both
3344         strings are identical.
3346 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
3348         * malloc/arena.c (aligned_heap_area): New variable.
3349         (new_heap): If aligned_heap_area != NULL, attempt to use that
3350         first.  If HEAP_MAX_SIZE << 1 area is already HEAP_MAX_SIZE bytes
3351         aligned, remember the second half in aligned_heap_area.
3352         (delete_heap): Clear aligned_heap_area if deleting the area right
3353         before aligned_heap_area.
3355 2004-10-03  Juerg Billeter  <j@bitron.ch>
3357         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Return -1 if nscd
3358         can't be used.  [BZ #424]
3360 2004-10-03  Ulrich Drepper  <drepper@redhat.com>
3362         Dynamically create new threads if necessary.
3363         * nscd/connections.c (fd_ready): If no thread available for processing
3364         the request, create a new one unless the limit is reached.
3365         (start_threads): Check errors from pthread_create.
3366         * nscd/nscd.h: Declare max_nthreads.
3367         * nscd/nscd_conf.c: Parse max-nthreads entry.
3368         * nscd/nscd.conf: Add max-threads entry.
3369         * nscd/nscd_stat.c: Print current and maximum number of threads.
3371         Implement paranoia mode.
3372         * nscd/connections.c (nscd_init): Mark database and socket descriptors
3373         as close on exec.
3374         (restart): New function.
3375         (restart_p): New function.
3376         (nscd_run): Add missing descrement of nready in case readylist is
3377         empty.
3378         (main_loop_poll): Call restart_p and restart.
3379         (main_loop_epoll): Likewise.
3380         (begin_drop_privileges): Save original UID and GID.
3381         * nscd/nscd.c: Define new variables paranoia, restart_time,
3382         restart_interval, oldcwd, old_gid, old_uid.
3383         (main): Disable paranoia mode if we are not forking.
3384         (check_pid): When re-execing, the PID file contains the same PID as
3385         the current process.  Do not fail in this case.
3386         * nscd/nscd.conf: Add paranoia and restart-interval entries.
3387         * nscd/nscd.h: Define RESTART_INTERVAL.  Declare new variables.
3388         * nscd/nscd_conf.c: Parse paranoia and restart-internal configurations.
3389         * nscd/nscd_stat.c: Print paranoia and restart-internal values.
3391         * nscd/connections.c: Implement alternative loop for main thread
3392         which uses epoll.
3393         * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]
3394         (CFLAGS-connections.c): Add -DHAVE_EPOLL.
3396 2004-10-02  Ulrich Drepper  <drepper@redhat.com>
3398         * nscd/Makefile (CFLAGS-initgrcache.c): Add to CFLAGS-* variables,
3399         don't replace old content.
3401         * nscd/connections.c: Rewrite handling of incoming connections.  All
3402         are handled by one thread which then hands off the descriptors for the
3403         real work to the worker threads.
3404         * nscd/Makefile: Link nscd with librt.
3406         * nscd/selinux.c: Pretty printing.
3408         * nscd/dbg_log.c (dbg_log): Don't add unnecessary newline to
3409         output.  Let syslog do the formatting if debug_level == 0.
3411         * nscd/nscd_helper.c (get_mapping): No need to check timestamp if
3412         nscd_certainly_running is nonzero.
3414 2004-10-02  Simon Josefsson  <jas@extundo.com>
3416         [BZ #420]
3417         * sysdeps/generic/memmem.c [!_LIBC]: Define __builtin_expect, to
3418         make the file usable inside gnulib.
3420 2004-10-01  Ulrich Drepper  <drepper@redhat.com>
3422         * malloc/malloc.c (public_vALLOc): Add missing use of hooks.
3423         (public_pVALLOc): Likewise.
3425         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Always add the
3426         group the caller provided unless there is a real problem.
3428         * posix/bug-glob1.c (prepare): Fix creation of symlink.
3430 2004-09-30  Ulrich Drepper  <drepper@redhat.com>
3432         * posix/Makefile: Add rules to build and run bug-glob1.
3433         * posix/bug-glob1.c: New file.
3435         * iconv/iconv_prog.c (main): Print progress information to stderr.
3437         * nscd/nscd.c (termination_handler): Reset timestamp so that
3438         clients immediately stop using the database.
3440         * nscd/nscd-client.h (__nscd_get_map_ref): Drop volatile from last
3441         parameter.
3442         (__nscd_drop_map_ref): Change second parameter to be a reference to
3443         a variable.  Update variable when cycle count changed.
3444         * nscd/nscd_helper.c (__nscd_get_map_ref): Remove volatile here, too.
3445         * nscd/nscd_getai.c: Correctly use __nscd_drop_map_ref.  Reinitialize
3446         all variables and avoid memory leak in case of retries.
3447         * nscd/nscd_getgr_r.c: Likewise.
3448         * nscd/nscd_gethst_r.c: Likewise.
3449         * nscd/nscd_getpw_r.c: Likewise.
3450         * nscd/nscd_initgroups.c: Likewise.
3452         * nscd/nscd.h: Add declaration of addinitgroups and
3453         readdinitgroups.
3455 2004-09-30  Andreas Jaeger  <aj@suse.de>
3457         * nscd/Makefile (CFLAGS-nscd_initgroups.c): Set to -fpie.
3458         (CFLAGS-initgrcache.c): Set to -fexceptions.
3460 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
3462         * sysdeps/generic/glob.c (glob_in_dir): Don't blindly trust
3463         readdir results; for symlinks or files of unknown type check using
3464         stat whether the file exists.
3466         * posix/tst-gnuglob.c (find_file): Handle leading "./".  Fix
3467         recognition of files.
3469 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
3471         * time/tzfile.c (tzfile_mtime): New variable.
3472         (__tzfile_read): Reread the file if mtime is different.
3474 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
3476         * sysdeps/alpha/fpu/bits/mathinline.h (__fdimf, __fdim, fdimf, fdim):
3477         Handle +inf/+inf.
3478         * sysdeps/powerpc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
3479         * sysdeps/sparc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
3481 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
3483         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use correct constant for
3484         testing result of __nscd_get_map_ref.
3486 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
3488         * sysdeps/i386/fpu/s_fdim.S (__fdim): Handle +inf/+inf.
3489         * sysdeps/i386/fpu/s_fdimf.S (__fdimf): Likewise.
3490         * sysdeps/i386/fpu/s_fdiml.S (__fdiml): Likewise.
3492 004-09-29  Ulrich Drepper  <drepper@redhat.com>
3494         * grp/initgroups.c: Move compat_call implementation...
3495         * grp/compat-initgroups.c: ...to here.  New file.
3496         * grp/Makefile (distribute): Add compat-initgroups.c.
3497         (CFLAGS-initgroups.c): Add -DUSE_NSCD=1.
3498         * mscd/initgrcache.c: New file.
3499         * nscd/nscd_initgroups.c: New file.
3500         * nscd/Makefile (routines): Add nscd_initgroups.
3501         (nscd-modules): Add initgrcache.
3502         * nscd/cache.c (prune_cache): Add support for INITGROUPS entries.
3503         * nscd/connections.c: Handle INITGROUPS requests.
3504         * nscd/nscd-client.h: Define INITGROUPS, initgr_response_header.
3505         Add initgrdata element to struct datahead.  Fix typo in comment.
3506         * nscd/nscd_proto.h: Declare __nscd_getgrouplist.  Fix parameter
3507         type in __nscd_getgrgrid_r.
3508         * nscd/selinux.c (perms): Add INITGROUPS entry.
3510         * nscd/nscd_getai.c: No need to include <sys/mman.h>.
3512         * sunrpc/get_myaddr.c (get_myaddress): Account for interfaces without
3513         assigned addresses.
3514         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
3515         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
3516         * sunrpc/clnt_udp.c (is_network_up): Likewise.
3518         * nscd/nscd.c: Define getaddrinfo hidden so that it is never found
3519         outside.
3521         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_segvflags):
3522         Renamed from si_flags due to conflict with si_flags from <elf.h>.
3524 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
3526         * nscd/nscd_getai.c: Use NO_MAPPING instead of MAP_FAILED for test
3527         of failing __nscd_get_map_ref.  Fix a few typos.
3529         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Make sure
3530         SIGSETXID is not blocked.
3531         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Likewise.
3532         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
3533         * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise.
3534         * sysdeps/generic/sigfillset.c (sigfillset): Don't set SIGSETXID.
3536         * sunrpc/get_myaddr.c (get_myaddress): Fix test for failing
3537         getifaddrs call.
3538         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
3539         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
3540         * sunrpc/Makefile (xtests): Add tst-getmyaddr.
3541         * sunrpc/tst-getmyaddr.c: New file.
3543         * malloc/arena.c (ptmalloc_init): Allow MALLOC_CHECK_==0 to
3544         disable all checking.
3546         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_flags): Add
3547         support to get this value.
3549 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
3551         * io/utime.h (utime): Allow second argument to be NULL.
3553 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
3555         * sysdeps/posix/getaddrinfo.c (gaih_inet): If NAME is a numerical IP
3556         address and AI_CANONNAME is set, return copy of NAME as ai_canonname.
3558 2004-09-27  Andreas Jaeger  <aj@suse.de>
3560         * sysdeps/i386/dl-machine.h (elf_machine_rela_relative): Replace
3561         static inline by auto inline, add always_inline attribute.
3562         (elf_machine_rel): Likewise.
3563         (elf_machine_rela): Likewise.
3564         (elf_machine_lazy_rel): Likewise.
3565         (elf_machine_lazy_rela): Likewise.
3566         (elf_machine_rel_relative): Likewise.
3568 2004-09-27  Ulrich Drepper  <drepper@redhat.com>
3570         * sunrpc/xdr_intXX_t.c: Add xdr_quad_t and xdr_u_quad_t aliases.
3571         * sunrpc/rpc/xdr.h: Declare xdr_quad_t and xdr_u_quad_t.
3572         * sunrpc/rpc_parse.c (get_type): Use "quad_t" for TOK_HYPER.
3573         Otherwise isvectordef will loop infinitely if typedef hyper int64_t
3574         is seen.
3575         (unsigned_dec): Use "u_quad_t" for similar reasons.
3576         * sunrpc/Versions: Export xdr_quad_t and xdr_u_quad_t.
3578 2004-09-27  Roland McGrath  <roland@redhat.com>
3580         * sysdeps/generic/bits/waitstatus.h (__WIFSIGNALED): Simplify bit
3581         twiddling in last change.
3583         * posix/tst-waitid.c (do_test): Add tests for waitpid with WCONTINUED.
3585         [BZ #409]
3586         * posix/sys/wait.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
3587         * stdlib/stdlib.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
3588         * sysdeps/generic/bits/waitstatus.h (__W_CONTINUED): New macro.
3589         [WCONTINUED] (__WIFCONTINUED): New macro.
3590         (__WIFSIGNALED): Rewritten to exclude __W_CONTINUED value, and have no
3591         branches.
3593         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Add fifth argument to
3594         all three syscall uses, not just one!
3596 2004-09-26  Richard Henderson  <rth@redhat.com>
3598         * sysdeps/alpha/alphaev6/memcpy.S: Mark .prologue.
3599         * sysdeps/unix/alpha/sysdep.h (LEAF, ENTRY): Align entry points
3600         to 16 byte boundaries.
3602 2004-09-26  Ulrich Drepper  <drepper@redhat.com>
3604         * elf/readlib.c (process_file): Before complaining about too-short
3605         file, check that it potentially be an ELF file.  Also complain about
3606         empty files.  [BZ #151].
3608         * scripts/test-installation.pl: Fix ld.so recognition for new
3609         LD_TRACE_LOADED_OBJECTS output format.
3610         Patch by <jsberg04+computing.glibc@ftml.net>  [BZ #407].
3612         * elf/dl-support.c (_dl_non_dynamic_init): Fix cleaning of
3613         environment.  [BZ #384]
3615         * sunrpc/clnt_udp.c (is_network_up): Use getifaddrs instead of ioctl.
3616         * sunrpc/get_myaddr.c (get_myaddress): Likewise.
3617         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
3618         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.  Change interface
3619         to avoid buffer overrun and remove now useless parameters.
3620         (clnt_broadcast): Adjust caller.  [BZ #381].
3622         * sysdeps/generic/s_fdim.c: Handle +inf/+inf
3623         * sysdeps/generic/s_fdimf.c: Likewise.
3624         * sysdeps/generic/s_fdiml.c: Likewise.
3625         * sysdeps/i386/i686/fpu/s_fdim.S: Likewise.
3626         * sysdeps/i386/i686/fpu/s_fdimf.S: Likewise.
3627         * sysdeps/i386/i686/fpu/s_fdiml.S: Likewise.
3628         * sysdeps/powerpc/fpu/s_fdim.c: Likewise.
3629         * sysdeps/powerpc/fpu/s_fdimf.c: Likewise.
3630         * sysdeps/x86_64/fpu/s_fdiml.S: Likewise.
3631         * math/libm-test.inc (fdim_test): Add test case.  [BZ #376].
3633         * sysdeps/generic/bits/types.h: Fix __SQUAD_TYPE and __UQUAD_TYPE
3634         for compilers without __GLIBC_HAVE_LONG_LONG.  [BZ #362]
3636         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Remove incorrect
3637         requirement on socktype and protocol.
3638         (gaih_inet): If numeric port number is given, return records for all
3639         possible socket types.
3640         * posix/tst-getaddrinfo2.c: New file.
3641         * posix/Makefile (tests): Add tst-getaddrinfo2.  [BZ #358]
3643 2004-09-25  Ulrich Drepper  <drepper@redhat.com>
3645         * locale/loadlocale.c (_nl_intern_locale_data): Recognize LC_CTYPE
3646         data where _nl_value_type_LC_CTYPE does not contain the type
3647         information.  Add range checks.
3648         Reported by John Lumby <johnlumby@hotmail.com> [BZ #356].
3650         * libio/vasprintf.c (_IO_vasprintf): Fix condition to decide
3651         whether to realloc or not.
3652         Reported by Pavel Kankovsky <peak@argo.troja.mff.cuni.cz> [BZ #346].
3654         * intl/dcigettext.c (DCIGETTEXT): Protect tfind/tsearch calls.
3655         * intl/dcigettext.c (_nl_find_msg): Call _nl_load_domain also if
3656         decided < 0.
3657         * intl/finddomain.c (_nl_find_domain): Likewise.
3658         * intl/loadmsgcat.c (_nl_load_domain): Set decided to 1 only once we
3659         are done.  First set to -1 to signal initialization is ongoing.
3660         Protect against concurrent callers with recursive lock.
3661         * intl/finddomain.c (_nl_find_domain): Protect calls to
3662         _nl_make_l10nflist.  [BZ #322]
3664         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If determinination of
3665         source address fails, initialized source_addr_len field so that
3666         duplicate address recognition does not copy junk.
3668 2004-09-25  Jakub Jelinek  <jakub@redhat.com>
3670         * sysdeps/unix/sysv/linux/i386/setuid.c (__setuid): Remove second
3671         result declaration.
3673 2004-09-22  Andreas Schwab  <schwab@suse.de>
3675         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Adjust whitespace.
3677 2004-09-24  Ulrich Drepper  <drepper@redhat.com>
3679         * misc/daemon.c (daemon): Don't succeed if /dev/null cannot be
3680         opened.
3682         * nis/ypclnt.c (do_ypcall): Add one missing unlock.  Simplify the
3683         code a bit.
3685         * misc/daemon.c (daemon): Define errno in case /dev/null is not
3686         the correct device.
3688         * nis/ypclnt.c (yp_bind_file): Optimize a bit.  Minimal cleanups.
3690 2004-09-23  Andreas Jaeger  <aj@suse.de>
3692         * locale/weight.h (findidx): Remove static, it's not supported
3693         anymore with GCC 4.0 in a block scope.
3694         * locale/weightwc.h (findidx): Likewise.
3695         * posix/regcomp.c (seek_collating_symbol_entry): Likewise.
3696         (lookup_collation_sequence_value): Likewise.
3697         (build_range_exp): Likewise.
3698         (build_collating_symbol): Likewise.
3699         * iconv/iconvconfig.c (write_output): Likewise.
3700         * elf/do-rel.h (elf_dynamic_do_rel): Likewise.
3702         * sysdeps/x86_64/dl-machine.h (elf_machine_rela_relative): Remove
3703         static, add always_inline attribute.
3704         (elf_machine_rela): Likewise.
3705         (elf_machine_lazy_rel): Likewise.
3707         * elf/dynamic-link.h (elf_get_dynamic_info): Make static dependend
3708         on !RESOLVE so that it's not defined in local scope.
3710 2004-09-23  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3712         * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL_NCS): Define.
3714 2004-09-23  Thorsten Kukuk  <kukuk@suse.de>
3716         * sysdeps/unix/sysv/linux/sys/mount.h: Sync MS_RMT_MASK flag
3717         and BLK* ioctls with linux kernel headers.
3719 2004-09-23  Ulrich Drepper  <drepper@redhat.com>
3721         * sysdeps/generic/bits/dlfcn.h: Add RTLD_DEEPBIND.
3722         * elf/dl-object.c (_dl_new_object): Add new parameter mode.  If mode
3723         has RTLD_DEEPBIND set add local searchlist before global scope.
3724         * sysdeps/generic/ldsodefs.h (_dl_new_object): Adjust prototype.
3725         * elf/rtld.c: Adjust callers of _dl_new_object.
3726         * elf/dl-load.c: Likewise.
3727         (_dl_map_object_from_fd): If RTLD_DEEPBIND is used, don't do anything
3728         for DF_SYMBOLIC.
3729         * elf/dl-open.c (dl_open_writer): Pass RTLD_DEEPBIND flag on to
3730         _dl_map_object_deps.
3731         * elf/tst-deep1.c: New file.
3732         * elf/tst-deep1mod1.c: New file.
3733         * elf/tst-deep1mod2.c: New file.
3734         * elf/tst-deep1mod3.c: New file.
3735         * elf/Makefile: Add rules to build and run new tests.
3737         * elf/dl-deps.c: Pretty printing.
3739 2004-09-23  Jakub Jelinek  <jakub@redhat.com>
3741         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
3742         argument to numbers from syscall names.
3743         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
3744         (INTERNAL_SYSCALL_NCS): Renamed from...
3745         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
3746         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
3747         (INTERNAL_SYSCALL_NCS): Define.
3748         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
3749         (INTERNAL_SYSCALL_NCS): Likewise.
3750         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
3751         Change name argument to numbers from syscall names.
3752         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
3753         (INTERNAL_SYSCALL_NCS): Define.
3755 2004-09-22  Ulrich Drepper  <drepper@redhat.com>
3757         * malloc/malloc.c (malloc_printerr): Use syslog if writev failed.
3759         * string/string.h: Add __nonnull annotations.
3760         * stdlib/stdlib.h: Likewise.
3762 2004-09-20  H.J. Lu  <hongjiu.lu@intel.com>
3764         * sysdeps/unix/sysv/linux/ia64/sysdep.h (DO_INLINE_SYSCALL):
3765         Renamed to ...
3766         (DO_INLINE_SYSCALL_NCS): This.
3767         (DO_INLINE_SYSCALL): New.
3768         (INLINE_SYSCALL): Updated.
3769         (INTERNAL_SYSCALL_NCS): Updated.
3771 2004-09-21  Ulrich Drepper  <drepper@redhat.com>
3773         * elf/sprof.c (load_shobj): Add support for reading symbol table
3774         from debuginfo file.
3776         * elf/ldd.bash.in: Fix syntax errors.
3778 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
3780         * sysdeps/unix/sysv/linux/dl-execstack.c
3781         (_dl_make_stack_executable): Remove some duplication.
3783         * nscd/nscd.c (options): Mark S option as hidden.
3784         (parse_opt): When S option is used, print warning message.
3785         * nscd/grpcache.c (adgrptbyX): Don't handle secure mode.
3786         * nscd/hstcache.c (addhstbyX): Don't handle secure mode.
3787         * nscd/aicache.c (addhstaiX): Don't handle secure mode.
3788         * nscd/pwdcache.c (addpwbyX): Don't handle secure mode.
3790 2004-09-20  Roland McGrath  <roland@frob.com>
3792         * elf/dl-load.c (__stack_prot): Only use PROT_GROWSUP/PROT_GROWSDOWN
3793         in initializer #if defined.
3795 2004-09-18  Paul Eggert  <eggert@cs.ucla.edu>
3797         [BZ #391]
3798         * stdlib/getsubopt.c: Merge fixes from gnulib.
3799         (__strchrnul) [!_LIBC]: Define and include "strchrnul.c".
3800         (getsubopt): Use prototypes, not K&R style.
3801         Fix bug: memcmp(A,B,N) was being invoked on a memory block B
3802         whose size might be smaller than N.  Use strncmp to avoid the bug.
3804 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
3806         * configure.in: If selinux has not explictly been requested, don't
3807         comment on it missing.
3809         * elf/dl-load.c: Define __stack_prot.
3810         * sysdeps/unix/sysv/linux/dl-execstack.c: Don't define
3811         __stack_prot here, just declare it.
3813 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
3815         * configure.in (libc_cv_z_relro): Only set to yes if linker script
3816         contains DATA_SEGMENT_RELRO_END.
3818 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
3820         * elf/dl-load.c (_dl_map_object_from_fd): Add some error checking.
3821         Reorder code slightly.
3822         * elf/rtld.c (dl_main): No need to check whether l_info[DT_HASH]
3823         is non-null, _dl_setup_hash will do that.
3825 2004-09-19  Ulrich Drepper  <drepper@redhat.com>
3827         * sysdeps/unix/sysv/linux/setegid.c [HAVE_PTR__NPTL_SETXID]: Call
3828         callback to set IDs in all other threads as well.
3829         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
3830         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
3831         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
3832         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
3833         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
3834         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
3835         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
3836         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
3837         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
3838         * sysdeps/unix/sysv/linux/setuid.c: New file.
3839         * sysdeps/unix/sysv/linux/setgid.c: New file.
3840         * sysdeps/unix/sysv/linux/setreuid.c: New file.
3841         * sysdeps/unix/sysv/linux/setregid.c: New file.
3842         * sysdeps/unix/sysv/linux/setresuid.c: New file.
3843         * sysdeps/unix/sysv/linux/setresgid.c: New file.
3844         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NCS.
3845         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
3846         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
3847         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
3848         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
3849         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c: Use x86 version.
3850         * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c: Likewise.
3851         * sysdeps/unix/sysv/linux/sparc/sparc32/setresgid.c: New file.
3852         * sysdeps/unix/sysv/linux/sparc/sparc32/setresuid.c: New file.
3853         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove setresgid
3854         and setresuid.
3855         * nscd/aicache.c: Use pthread_seteuid_np instead of seteuid.
3856         * nscd/grpcache.c: Likewise.
3857         * nscd/hstcache.c: Likewise.
3858         * nscd/pwdcache.c: Likewise.
3860         * resolv/res_mkquery.c (res_nmkquery): Fix typo.
3862 2004-09-18  Ulrich Drepper  <drepper@redhat.com>
3864         * sysdeps/unisx/sysv/linux/dl-execstack.c: Get protection flag
3865         from memory.
3866         * elf/dl-load.c (_dl_map_object_from_fd): Add PROT_EXEC flag to
3867         __stack_flags.
3869         * sysdeps/posix/getaddrinfo.c (gaih_inet): Do not use
3870         gethostbyname3_r if we are not looking for the canonical name.
3872         * resolv/res_mkquery.c (res_nmkquery): Randomize request ID every
3873         time.
3875 2004-09-18  Roland McGrath  <roland@redhat.com>
3877         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Pass fifth argument to
3878         system call.
3880 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
3882         * include/link.h (struct link_map): Add l_used element.
3883         * sysdeps/generic/ldsodefs.h: Define DL_DEBUG_UNUSED.
3884         * elf/rtld.c (process_dl_debug): Recognize unused.
3885         (dl_main): When unused debug flag is set check for unused direct
3886         dependencies.
3887         When printing dependencies and SONAME starts with /, omit the SONAME =>
3888         part.
3889         * elf/dl-lookup.c (_dl_lookup_symbol_x): Mark object in which the
3890         symbol has been found as used.
3891         * elf/ldd.bash.in: Add -u option.
3893 2004-09-18  Jakub Jelinek  <jakub@redhat.com>
3895         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
3896         Do nothing if __NR_set_tid_address is not defined.  [BZ #390]
3898 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
3900         * sysdeps/posix/getaddrinfo.c: Use gethostbyname3_r NSS function
3901         in case it is available.
3903 2004-09-17  Jakub Jelinek  <jakub@redhat.com>
3905         * nscd/nscd.c (parse_opt): Write arg string instead of (void *)
3906         key to the socket.
3908 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
3910         * misc/sys/cdefs.h: Define __nonnull using nonnull function attribute
3911         for gcc 3.3 and higher.
3912         * io/fcntl.h: Add __nonnull where appropriate.
3913         * io/ftw.h: Likewise.
3914         * io/utime.h: Likewise.
3915         * io/sys/poll.h: Likewise.
3916         * io/sys/sendfile.h: Likewise.
3917         * io/sys/stat.h: Likewise.
3918         * io/sys/statfs.h: Likewise.
3919         * io/sys/statvfs.h: Likewise.
3920         * posix/unistd.h: Likewise.
3921         * catgets/nl_types.h: Likewise.
3922         * crypt/crypt.h: Likewise.
3923         * debug/execinfo.h: Likewise.
3925 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
3927         * posix/glob.h: Remove cruft to make header usable outside glibc.
3928         The maintenance headache is too big.
3930         * configure.in: Add test for required SELinux features.
3931         * config.make.in: Add have-selinux entry.
3932         * config.h.in: Add HAVE_SELINUX entry.
3933         * nscd/Makefile (nscd-modules): Add selinux.
3934         (CFLAGS-selinux.c): Add -fpie.
3935         Define selinux-LIBS and use in link line.
3936         * nscd/connections.c (handle_request): Check access SELinux permissions
3937         before processing request.
3938         * nscd/nscd.c (main): Initialize selinux_enabled and stop avc thread.
3939         * nscd/nscd_stat.c: Transmit and print AVC statistics.
3940         * nscd/selinux.c: New file.
3941         * nscd/selinux.h: New file.
3942         Patch mostly by Matthew Rickard <mjricka@epoch.ncsc.mil>.
3944 2004-09-16  Jakub Jelinek  <jakub@redhat.com>
3946         * nscd/nscd_helper.c (__nscd_unmap, get_mapping): Use __munmap
3947         instead of munmap.
3949         * nscd/Makefile (CFLAGS-aicache.c): Set to -fpie.
3951 2004-09-16  Thorsten Kukuk  <kukuk@suse.de>
3953         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check
3954         __nss_not_use_nscd_hosts variable if nscd should be used or not.
3956 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
3958         * nscd/nscd_proto.h: Define NSS_NSCD_RETRY.
3959         Add __nscd_getai prototype.
3960         * nss/getXXbyYY_r.c: Remode definition of NSS_NSCD_RETRY.
3961         * nscd/nscd-client.h: Remove __nscd_getai prototype.
3962         * nscd/nscd_getai.c: Include nscd_proto.h.
3964         * elf/ldd.bash.in: Add support for SELinux environments.
3965         Patch by Stephen Smalley <sds@epoch.ncsc.mil>.
3967 2004-09-16  Roland McGrath  <roland@redhat.com>
3969         * configure.in (--with-headers): Let argument contain a : separated
3970         list of directories to use, not just one.
3971         * configure: Regenerated.
3973 2004-09-15  Richard Henderson  <rth@redhat.com>
3975         * sysdeps/alpha/fpu/libm-test-ulps: Update.
3976         * scripts/data/c++-types-alpha-linux-gnu.data: New file.
3978 2004-09-15  Ulrich Drepper  <drepper@redhat.com>
3980         * nscd/aicache.c: Prefer using gethostbyname3_r NSS callback to also
3981         get ttl and canonical name.  Use these two values.
3982         * resolv/Versions: Export _nss_dns_gethostbyname3_r from libnss_dns.
3983         * resolv/nss_dns/dns-host.c (getanswer_r): Take two new parameters.
3984         If nonnull fill with TTL and pointer to canonical name respectively.
3985         (_nss_dns_gethostbyaddr_r): Pass NULL in new parameters of getanswer_r.
3986         (_nss_dns_gethostbyname2_r): Just wrapper around
3987         _nss_dns_gethostbyname3_r.
3988         (_nss_dns_gethostbyname3_r): Renamed from _nss_dns_gethostbyname2_r.
3989         Take two new parameters which as passed to getanswer_r.
3991         * nscd/Makefile (rountines): Add nscd_getai.
3992         (nscd-modules): Add aicache.
3993         * nscd/aicache.c: New file.
3994         * nscd/nscd_getai.c: New file.
3995         * nscd/cache.c (prune_cache): Handle GETAI request type.
3996         * nscd/connections.c: Add GETAI support in request handling.
3997         * nscd/nscd-client.h (request_type): Add GETAI.
3998         Define ai_response_header and struct nscd_ai_result types.
3999         (struct datahead): Add aidata field.
4000         Declare __nscd_getai.
4001         * nscd/nscd.c: Add getaddrinfo definition to catch problems.
4002         * nscd/nscd.h: Declare addhstai and readdhstai.
4004         * sysdeps/posix/getaddrinfo.c: Add support for using cached results.
4005         * posix/Makefile (CFLAGS-getaddrinfo.c): Add -DUSE_NSCD.
4007         * nscd/nscd-client.h  (struct datahead): Use uint8_t instead of bool.
4009 2004-09-14  Ulrich Drepper  <drepper@redhat.com>
4011         * misc/sys/cdefs.h: Remove debugging text from __P and __PMT.
4013 2004-09-13  Ulrich Drepper  <drepper@redhat.com>
4015         * misc/sys/cdefs.h: Restore old definition of __P.
4016         * csu/munch.awk: Remove uses of __P and __PMT.
4017         * gmon/gmon.c: Likewise.
4018         * hesiod/hesiod.h: Likewise.
4019         * include/stdio.h: Likewise.
4020         * io/fts.c: Likewise.
4021         * libio/genops.c: Likewise.
4022         * libio/libioP.h: Likewise.
4023         * libio/fileops.c: Likewise.
4024         * libio/iolibio.h: Likewise.
4025         * libio/libio.h: Likewise.
4026         * libio/memstream.c: Likewise.
4027         * libio/oldfileops.c: Likewise.
4028         * libio/oldstdfiles.c: Likewise.
4029         * libio/iopopen.c: Likewise.
4030         * libio/vsnprintf.c: Likewise.
4031         * libio/vswprintf.c: Likewise.
4032         * libio/wgenops.c: Likewise.
4033         * libio/oldiopopen.c: Likewise.
4034         * locale/programs/xmalloc.c: Likewise.
4035         * locale/programs/xstrdup.c: Likewise.
4036         * malloc/mtrace.c: Likewise.
4037         * misc/getttyent.c: Likewise.
4038         * misc/getusershell.c: Likewise.
4039         * nis/rpcsvc/ypupd.h: Likewise.
4040         * posix/fnmatch.h: Likewise.
4041         * posix/glob.h: Likewise.
4042         * resolv/arpa/nameser.h: Likewise.
4043         * resolv/gethnamaddr.c: Likewise.
4044         * resolv/resolv.h: Likewise.
4045         * resolv/inet_net_ntop.c: Likewise.
4046         * resolv/inet_net_pton.c: Likewise.
4047         * resolv/res_init.c: Likewise.
4048         * resolv/nss_dns/dns-network.c: Likewise.
4049         * stdio-common/vfprintf.c: Likewise.
4050         * stdio-common/reg-printf.c: Likewise.
4051         * sysdeps/generic/chflags.c: Likewise.
4052         * sysdeps/generic/fchflags.c: Likewise.
4053         * sysdeps/generic/glob.c: Likewise.
4054         * sysdeps/generic/printf_fphex.c: Likewise.
4055         * sysdeps/generic/memcmp.c: Likewise.
4056         * sysdeps/generic/memcopy.h: Likewise.
4057         * sysdeps/generic/morecore.c: Likewise.
4058         * sysdeps/generic/sstk.c: Likewise.
4059         * sysdeps/posix/sigvec.c: Likewise.
4060         * sysdeps/posix/ttyname_r.c: Likewise.
4061         * sysdeps/standalone/arm/bits/errno.h: Likewise.
4062         * sysdeps/standalone/standalone.h: Likewise.
4063         * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise.
4064         * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
4065         * sysdeps/unix/arm/start.c: Likewise.
4066         * sysdeps/unix/bsd/sigaction.c: Likewise.
4067         * sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise.
4068         * sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise.
4069         * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise.
4070         * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise.
4071         * sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise.
4072         * sysdeps/unix/sparc/start.c: Likewise.
4073         * sysdeps/unix/sysv/getdents.c: Likewise.
4074         * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise.
4075         * sysdeps/unix/sysv/irix4/getgroups.c: Likewise.
4076         * sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
4077         * sysdeps/unix/sysv/irix4/getrusage.c: Likewise.
4078         * sysdeps/unix/sysv/irix4/pathconf.c: Likewise.
4079         * sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
4080         * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise.
4081         * sysdeps/unix/sysv/irix4/start.c: Likewise.
4082         * sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
4083         * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise.
4084         * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise.
4085         * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
4086         * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise.
4087         * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
4088         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
4089         * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise.
4090         * sysdeps/unix/sysv/sysv4/setsid.c: Likewise.
4091         * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
4092         * sysdeps/unix/sysv/sysv4/waitpid.c: Likewise.
4093         * sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise.
4094         * time/tzset.c: Likewise.
4095         * time/strftime_l.c: Likewise.
4096         * time/strptime_l.c: Likewise.
4097         * crypt/md5.h: Likewise.
4099 2004-09-13  Andreas Jaeger  <aj@suse.de>
4101         * configure.in: Support GCC 4.x.
4102         * configure: Regenerated.
4104 2004-09-13  Thorsten Kukuk  <kukuk@suse.de>
4106         * nscd/nscd_stat.c: Don't access dbs[cnt].head for disabled services.
4108         * nscd/nscd.init: Fix path to socket.
4110 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
4112         * nscd/nscd_helper.c (get_mapping): Correctly check cmsg length.
4113         Avoid file descriptor leak in case of size mismatch.
4115         * nscd/nscd-client.h: Fix database structure layout for biarch.
4116         * nscd/mem.c (gc): Add casts to avoid warnings.
4118         * nss/getent.c: Don't preconstruct help message.  Do it only when
4119         needed.
4121         * locale/programs/locale.c: Simplify help message printing.
4123 2004-09-12  Roland McGrath  <roland@frob.com>
4125         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]: Add decls
4126         missing in last change.
4128 2004-09-11  Thorsten Kukuk  <kukuk@suse.de>
4130         * nis/nss_compat/compat-grp.c: Check that buflen is greater zero
4131         before writing data into the buffer with negative offset.
4132         * nis/nss_compat/compat-initgroups.c: Likewise.
4133         * nis/nss_compat/compat-pwd.c: Likewise.
4134         * nis/nss_compat/compat-spwd.c Likewise.
4136 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
4138         * misc/syslog.c (vsyslog): Fix copying of PID in case of
4139         out-of-memory situation.  [BZ #365].
4141         * sysdeps/alpha/fpu/bits/mathinline.h: Use __NTH instead of
4142         __THROW in inline function definitions.
4144         * posix/spawn.h [__USE_GNU]: Define POSIX_SPAWN_USEVFORK.
4145         * posix/spawnattr_setflags.c: Check whether any unknown bit is set
4146         in FLAGS parameter and fail if this is the case.
4147         * sysdeps/posix/spawni.c: Use vfork if POSIX_SPAWN_USEVFORK flag is
4148         set.
4150         * nscd/pwdcache.c (cache_addpw): Sync also negative results to disk.
4151         * nscd/grpcache.c (cache_addgr): Likewise.
4152         * nscd/hstcache.c (cache_addhst): Likewise.
4154 2004-09-11  Roland McGrath  <roland@frob.com>
4156         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]:
4157         Set _dl_phdr and _dl_phnum.
4158         (init1): When bootstrap task, bail early and never examine *D.
4160 2004-09-11  Alfred M. Szmidt  <ams@kemisten.nu>
4162         * sysdeps/mach/hurd/i386/tls.h (__i386_set_gdt) [!HAVE_I386_SET_GDT]:
4163         Cast THR, SEL and DESC to `void'.
4165 2004-09-11  Ulrich Drepper  <drepper@redhat.com>
4167         * nscd/connections.c (nscd_run): Call setup_thread only for enabled
4168         databases.
4170         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Use __NTH for __cmsg_nxthdr.
4172 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
4174         * nscd/nscd.c (pagesize_m1): New variable.
4175         (main): Initialize it.
4176         * nscd/nscd.h: Declare pagesize_m1.
4177         * nscd/hstcache.c: Pass correctly aligned address to msync.
4178         * nscd/grpcache.c: Likewise.
4179         * nscd/pwdcache.c: Likewise.
4181 2004-09-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4183         * sysdeps/unix/sysv/linux/sh/pthread_cond_wait.S: Decrement
4184         __nwaiters.  If pthread_cond_destroy has been called and this is
4185         the last waiter, signal pthread_cond_destroy caller and avoid
4186         using the pthread_cond_t structure after unlock.
4187         * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise.
4189 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
4191         * sysdeps/unix/sysv/linux/kernel-features.h: Don't define
4192         __ASSUME_CLONE_STOPPED.
4194 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
4196         * misc/sys/cdefs.h (__REDIRECT_NTH): Change order of __THROW and
4197         __asm__ for C++.  [BZ #377]
4199 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
4201         * nscd/nscd_stat.c: Improve output by also printing .shared and
4202         .persistent.
4204         * nscd/connections.c: Allow cache sharing to be really disabled.
4206 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
4208         * malloc/malloc.c (_int_free): Only do arena boundary check for
4209         contiguous arenas.
4211 2004-09-10  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
4213         * stdlib/longlong.h [__M32R__] (add_ssaaaa, sub_ddmmss): Fix broken
4214         instruct operands.
4215         * elf/elf.h: Add R_M32R_* relocs.
4217 2004-09-09  Ulrich Drepper  <drepper@redhat.com>
4219         * misc/sys/cdefs.h: Despite what the gcc manual says, gcc 3.2
4220         seems not to support the nothrow attribute.  Use it only for gcc
4221         3.3 and higher.
4223         * malloc/hooks.c (top_check): Print top chunk corruption as normal
4224         error message.
4226         * malloc/malloc.c (malloc_printerr): Don't make informational
4227         message look like error message.
4229 2004-09-09  Andreas Jaeger  <aj@suse.de>
4231         * nscd/Makefile (CFLAGS-nscd_setup_thread.c): Set to -fpie.
4233 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
4235         * sysdeps/unix/sysv/linux/bits/socket.h (__SCM_CONNECT): Removed.
4237         * malloc/malloc.c (_int_free): Add inexpensive double free and
4238         memory corruption tests.
4239         (malloc_printf_nc): Renamed to malloc_printerr.  Second parameter
4240         is no format string anymore.  Don't use stdio.  Adjust all callers.
4241         * malloc/hooks.c: Adjust malloc_printf_nc callers.
4243 2004-09-08  Roland McGrath  <roland@redhat.com>
4245         * malloc/mcheck.c: Don't use __P.
4246         Use prototypes definitions for static functions.
4248 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
4250         * sysdeps/ia64/fpu/bits/mathinline.h: Use __NTH instead of __THROW.
4252 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
4253             Jakub Jelinek  <jakub@redhat.com>
4255         * nscd/nscd-client.h: Add a few #includes.
4257         * nscd/Makefile (nscd-modules): Add nscd_setup_thread.
4258         * nscd/connections.c (nscd_run): Call setup_thread for maintenance
4259         threads.
4260         * nscd/nscd-client.h (struct database_pers_head): Add
4261         nscd_certainly_running field.
4262         * nscd/nscd.h: Declare setup_thread.
4263         * nscd/nscd_helper.c (__nscd_get_map_ref): Avoid the time test if
4264         nscd_certainly_running is nonzero.
4265         * sysdeps/generic/nscd_setup_thread.c: New file.
4266         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: New file.
4268 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
4270         * nscd/connections.c: Implement r/o sharing of nscd's cache with client
4271         processes via shared memory.
4272         * nscd/nscd-client.h: Likewise.
4273         * nscd/nscd.h: Likewise.
4274         * nscd/nscd_conf.c: Likewise.
4275         * nscd/nscd_getgr_r.c: Likewise.
4276         * nscd/nscd_getpw_r.c: Likewise.
4277         * nscd/nscd_gethst_r.c: Likewise.
4278         * nscd/nscd.conf: Add new config parameters.
4279         * nscd/Makefile (aux): Add nscd_helper.
4280         * nscd/nscd_helper.c: New file.
4281         * nscd/mem.c (gc): Indicate beginning and end of the gc cycle.
4283         * nscd/hstcache.c: Simplify a lot.  We cache only the request itself,
4284         no derived information.
4285         * connections.c (nscd_init): Fix bug in testing size of the persistent.
4287         * nis/Makefile (aux): Add nis_hash.
4288         * nis/nis_hash.c: New file.  Split out from nis_util.c.
4289         * nis/nis_util.c: Move __nis_hash code in separate file.
4291         * csu/tst-atomic.c: Improve atomic_increment_val test which would
4292         not have found a ppc bug.
4294         * sysdeps/s390/fpu/bits/mathinline.h: Remove unnecessary includes.
4296         * malloc/arena.c: Remove __MALLOC_P uses.
4297         * malloc/malloc.c: Likewise.
4299         * malloc/mtrace.c: Remove __P uses.
4300         * malloc/mcheck-init.c: Likewise.
4302 2004-09-07  Jakub Jelinek  <jakub@redhat.com>
4304         * sysdeps/powerpc/powerpc64/configure.in: New file.
4305         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
4306         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
4307         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
4308         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
4309         BODY_PREFIX): Define.
4310         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
4311         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
4312         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
4313         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
4314         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
4316 2004-09-07  Ulrich Drepper  <drepper@redhat.com>
4318         * malloc/malloc.h: Don't define __THROW if it is already defined.
4320         * sysdeps/powerpc/bits/atomic.h (atomic_increment): Define.
4321         (atomic_decrement): Define.
4323         * sysdeps/powerpc/bits/atomic.h: Implement atomic_increment_val and
4324         atomic_decrement_val.
4325         * sysdeps/powerpc/powerpc32/bits/atomic.h: Likewise.
4326         * sysdeps/powerpc/powerpc64/bits/atomic.h: Likewise.
4328         * csu/tst-atomic.c (do_test): Add tests of atomic_increment_val
4329         and atomic_decrement_val.
4331         * include/atomic.h: Define atomic_increment_val, atomic_decrement_val,
4332         and atomic_delay is not already defined.
4333         * sysdeps/i386/i486/bits/atomic.h: Define atomic_delay.
4334         * sysdeps/x86_64/bits/atomic.h: Likewise.
4336         * miscd/sys/cdefs.h (__NTH): New macro.
4337         (__THROW): Define using nothrow attribute for C code and gcc >= 3.2.
4338         (__REDIRECT_NTH): New macro.
4339         * argp/argp.h: Use __NTH and __REDIRECT_NTH where necessary.
4340         * ctype/ctype.h: Likewise.
4341         * dirent/dirent.h: Likewise.
4342         * io/fcntl.h: Likewise.
4343         * io/sys/sendfile.h: Likewise.
4344         * io/sys/stat.h: Likewise.
4345         * io/sys/statfs.h: Likewise.
4346         * io/sys/statvfs.h: Likewise.
4347         * libio/bits/stdio.h: Likewise.
4348         * misc/sys/mman.h: Likewise.
4349         * posix/unistd.h: Likewise.
4350         * resource/sys/resource.h: Likewise.
4351         * rt/aio.h: Likewise.
4352         * signal/signal.h: Likewise.
4353         * stdlib/stdlib.h: Likewise.
4354         * string/argz.h: Likewise.
4355         * string/string.h: Likewise.
4356         * sysdeps/generic/inttypes.h: Likewise.
4357         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
4358         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
4359         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
4360         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
4361         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
4362         * sysdeps/unix/sysv/linux/bits/sys/sysmacros.h: Likewise.
4363         * wcsmbs/wchar.h: Likewise.
4365         * sysdeps/generic/glob.c: Use __PMT isntead of __P where appropriate.
4367         * resolv/gethnamaddr.c (getanswer): Remove __P use in variable
4368         definition.
4370         * io/sys/poll.h: Remove __THROW from poll prototype, it's a
4371         cancellation point.
4373         * io/fts.c (fts_open): Remove uses of __P.
4375         * include/stdlib.h: No need to use __THROW in this header.
4377 2004-09-06  Roland McGrath  <roland@frob.com>
4379         * sysdeps/mach/hurd/dl-sysdep.c (__writev): Does use assert on FD
4380         validity, since __assert_fail gets to here anyway.  Just fail.
4382 2004-09-06  Ulrich Drepper  <drepper@redhat.com>
4384         * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix problem with
4385         AF_UNSPEC lookup with AI_CANONNAME of name which has only IPv6
4386         addresses.
4388 2004-09-05  Richard Henderson  <rth@redhat.com>
4390         * sysdeps/alpha/fpu/fraiseexcpt.c: Remove file.
4391         * sysdeps/unix/sysv/linux/kernel-features.h
4392         (__ASSUME_IEEE_RAISE_EXCEPTION): New.
4393         * sysdeps/unix/sysv/linux/alpha/fraiseexcpt.c: New file.
4394         * sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h: New file.
4395         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use it.
4396         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
4398 2004-09-05  Richard Henderson  <rth@redhat.com>
4400         * sysdeps/alpha/div.S: Save and restore FPCR around fp operations.
4401         * sysdeps/alpha/divl.S, sysdeps/alpha/divq.S, sysdeps/alpha/divqu.S,
4402         sysdeps/alpha/ldiv.S, sysdeps/alpha/reml.S, sysdeps/alpha/remq.S,
4403         sysdeps/alpha/remqu.S: Likewise.
4404         * sysdeps/alpha/div_libc.h (FRAME): Increase to 64.
4406 2004-09-05  Ulrich Drepper  <drepper@redhat.com>
4408         * nscd/cache.c (cache_add): Correctly log GETHOSTBYADDR and
4409         GETHOSTBYADDRv6 requests.
4411 2004-09-04  Ulrich Drepper  <drepper@redhat.com>
4413         * nscd/pwdcache.c (cache_addpw): Use correct key length in
4414         cache_add calls.
4415         * nscd/grpcache.c (cache_addgr): Likewise.
4417 2004-09-03  Alfred M. Szmidt  <ams@kemisten.nu>
4419         * sysdeps/mach/hurd/i386/tls.h (THREAD_DTV): Changed type of _DTV
4420         to `dtv_t *'.
4422 2004-09-03  Ulrich Drepper  <drepper@redhat.com>
4424         * nscd/nscd.c (parse_opt): Use writev instead of two write for
4425         invalidate command.
4427 2004-09-02  Ulrich Drepper  <drepper@redhat.com>
4429         * nscd/connections.c (nscd_run): Check early for invalid request types.
4431 2004-09-02  Roland McGrath  <roland@frob.com>
4433         * sysdeps/mach/hurd/i386/tls.h (TLS_INIT_TP_EXPENSIVE): New macro.
4434         (INSTALL_NEW_DTV, THREAD_DTV): Rewritten to fetch the right word.
4435         (THREAD_SELF): New macro.
4437 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
4439         [BZ #357]
4440         * stdlib/tst-setcontext.c (test_stack): Added test for stack clobber.
4441         (main): Call test_stack.
4442         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
4443         (__getcontext): Push stack frame then save parms in local frame.
4444         Improve instruction scheduling.
4445         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
4446         (__swapcontext): Likewise.
4448 2004-09-01  Andreas Schwab  <schwab@suse.de>
4450         * sysdeps/unix/sysv/linux/ia64/sys/ucontext.h [g++ >= 3.5]: Use
4451         __builtin_offsetof.
4453 2004-09-01  Jakub Jelinek  <jakub@redhat.com>
4455         [BZ #361]
4456         * posix/fnmatch_loop.c (FCT): For backslash between brackets, branch
4457         to normal_bracket after fetching the next character.
4458         * posix/tst-fnmatch.input: Add 25 new tests.
4459         Reported by Markus Oberhumer <markus@oberhumer.com>.
4461 2004-09-01  Ulrich Drepper  <drepper@redhat.com>
4463         * elf/rtld.c (dl_main): First check existence of ld.so.preload
4464         with access.
4466 2004-09-01  Roland McGrath  <roland@redhat.com>
4468         * sysdeps/unix/sysv/linux/bits/waitflags.h
4469         (WSTOPPED, WEXITED, WCONTINUED, WNOWAIT): New macros.
4470         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_WAITID_SYSCALL):
4471         New macro.
4472         * sysdeps/unix/sysv/linux/waitid.c: New file.  Use new syscall when
4473         available, or fall back to the waitpid-based generic code.
4475 2004-08-14  Alfred M. Szmidt  <ams@kemisten.nu>
4477         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Let gcc
4478         clobber the `ebp' register.
4479         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Removed.
4480         Reverts change from 2004-05-07 by Jeroen Dekkers.
4482         * sysdeps/mach/hurd/i386/init-first.c (init): Changed the type of
4483         NEWSP from `void *' to `int *'.  Changed all casts accordingly.
4485 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
4487         * wcsmbs/wcsmbsload.c (__wcsmbs_getfct): Move attribute_hidden
4488         before return type.
4489         * locale/localename.c (__current_locale_name): Likewise.
4491 2004-08-30  Roland McGrath  <roland@frob.com>
4493         * scripts/extract-abilist.awk: If `lastversion' variable defined, omit
4494         later sets from output.
4495         * Makerules (check-abi): Pass option to set that with value of
4496         LIB-abi-frozen variable if one is set.
4498         * abilist/libcidn.abilist: New file (empty).
4500 2004-08-30  Jakub Jelinek  <jakub@redhat.com>
4502         * posix/bits/posix1_lim.h (_POSIX_CHILD_MAX, _POSIX_OPEN_MAX): If
4503         not __USE_XOPEN2K, use the Unix98 mandated values.
4505 2004-08-27  Roland McGrath  <roland@redhat.com>
4507         * configure.in (usetls): Default to yes.
4508         * configure: Regenerated.
4510 2004-08-26  Roland McGrath  <roland@redhat.com>
4512         * configure.in (add_ons_automatic): New variable, set to yes or no
4513         indicating --enable-add-ons with no explicit list.
4514         (running add-on fragments): Allow a fragment to modify $libc_add_on
4515         and have that affect its place in the list of add-ons to use.
4516         * configure: Regenerated.
4518 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
4520         * nscd/cache.c: Major rewrite.  The data is now optionally kept in
4521         a mmaped memory region which is automatically mirrored on disk.
4522         This implements persistent data storage.  The Memory handled
4523         needed to be completely revamped, it now uses a garbage collection
4524         mechanism instead of malloc.
4525         * nscd/connections.c: Likewise.
4526         * nscd/nscd.c: Likewise.
4527         * nscd/nscd.h: Likewise.
4528         * nscd/nscd_conf.c: Likewise.
4529         * nscd/nscd_stat.c: Likewise.
4530         * nscd/grpcache.c: Likewise.
4531         * nscd/hstcache.c:: Likewise.
4532         * nscd/pwdcache.c:: Likewise.
4533         * nscd/Makefile: Add rules to build mem.c.
4534         * nscd/mem.c: New file.
4535         * nscd/nscd.conf: Describe new configuration options.
4537 2004-08-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4539         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
4540         NO_SGIDEFS_H isn't defined.
4541         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
4542         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
4544         * sysdeps/unix/sysv/linux/sh/pread.c: Define NO_SGIDEFS_H and
4545         _MIPS_SIM.
4546         * sysdeps/unix/sysv/linux/sh/pwrite.c: Likewise.
4547         * sysdeps/unix/sysv/linux/sh/pread64.c: Likewise.
4548         * sysdeps/unix/sysv/linux/sh/pwrite64.c: Likewise.
4550 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
4552         * nscd/connections.c (nscd_run): atomic_increment was not missing.
4554         * sysdeps/gnu/Makefile (libdl-sysdep_routines): Don't add eval.
4555         Patch by Greg Schafer.
4557 2004-08-25  Richard Henderson  <rth@redhat.com>
4559         * sysdeps/alpha/elf/start.S (_start): Use $15 as frame unwind
4560         instead of $31.  Zero $15.
4561         * sysdeps/unix/sysv/linux/alpha/clone.S (thread_start): Likewise.
4563 2004-08-25  Ulrich Drepper  <drepper@redhat.com>
4565         * sysdeps/powerpc/powerpc64/bits/atomic.h
4566         (__arch_compare_and_exchange_bool_32_acq): Fix case where oldval
4567         is negative.
4568         (__arch_compare_and_exchange_bool_32_rel): Likewise.
4570         * nscd/connections.c: Make socket nonblocking so that threads
4571         don't get stuck on accept.  Fix locking.
4573         * nscd/grpcache.c (cache_addgr): Use copy of original key in hash
4574         entry with alternative key.
4575         * nscd/pwdcache.c (cache_addpw): Likewise.
4577 2004-08-25  Richard Sandiford  <rsandifo@redhat.com>
4579         * sysdeps/mips/dl-machine.h (_dl_start_user): Don't set
4580         __libc_stack_end.
4582 2004-08-23  Ulrich Drepper  <drepper@redhat.com>
4584         * sysdeps/gnu/netinet/udp.h: Cosmetic changes.  Remove unnecessary
4585         __BEGIN_DECLS/__END_DECLS.
4587 2004-08-23  Andreas Jaeger  <aj@suse.de>
4589         [BZ #341]
4590         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_NOATIME): Define.
4591         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (O_NOATIME): Likewise.
4592         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (O_NOATIME): Likewise.
4593         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (O_NOATIME): Likewise.
4594         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (O_NOATIME): Likewise.
4595         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_NOATIME): Likewise.
4596         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (O_NOATIME): Likewise.
4597         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (O_NOATIME): Likewise.
4598         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_NOATIME): Likewise.
4599         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (O_NOATIME): Likewise.
4600         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (O_NOATIME): Likewise.
4601         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_NOATIME): Likewise.
4602         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (O_NOATIME): Likewise.
4604 2004-08-21  Ulrich Drepper  <drepper@redhat.com>
4606         * malloc/hooks.c (DEFAULT_CHECK_ACTION): Moved to malloc.c.
4607         (check_action): Likewise.
4608         When printing error messages, use malloc_printf_nc now instead of
4609         fiddling with the streams cancellation flag in every place.
4610         * malloc/malloc.c (DEFAULT_CHECK_ACTION): New definition.  Change
4611         default to 3.
4612         (check_action): New variable.
4613         (unlink): Print error message and eventually terminate in case list
4614         is corrupted.
4615         (malloc_printf_nc): New function.  Use it in _int_free.
4616         Change proposed by Arjan van de Ven.
4618         * dlfcn/Makefile: Don't build eval.c anymore.
4620 2004-08-20  Roland McGrath  <roland@frob.com>
4622         * csu/Makefile ($(objpfx)version-info.h): Use printf in place
4623         of echo -e for POSIX.2 portability.
4624         Reported by Paul Jarc <prj@po.cwru.edu>.
4626 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
4628         * sysdeps/posix/getaddrinfo.c (gaih_inet): Minor optimizations in
4629         list generation.
4631         * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't use
4632         getcanonname_r function if AI_CANONNAME flag is not set in
4633         request.
4635         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss):
4636         Initialize mysize with limits only if latter is >= 0.  Use mysize
4637         in malloc call.
4639 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
4641         * sysdeps/posix/getaddrinfo.c (gaih_inet): Cast canon to (char *)
4642         to avoid warning.
4644         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Initialize
4645         status to NSS_STATUS_UNAVAIL.
4647 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
4649         * sysdeps/posix/getaddrinfo.c (gaih_inet): Use h->h_name in the
4650         cannoname lookup since it has the FQDN even if the original NAME
4651         value has not.
4653 2004-08-18  Ulrich Drepper  <drepper@redhat.com>
4655         * sysdeps/posix/getaddrinfo.c (gaih_inet): Store NAME parameter
4656         pointer in new variable ORIG_NAME and use this pointer when
4657         determination of canonical name failed, not the possibly IDN
4658         translated value of NAME.
4660 2004-08-17  Ulrich Drepper  <drepper@redhat.com>
4662         * resolv/resolv.h (RES_DEFAULT): Add RES_NOIP6DOTINT.
4663         * resolv/res_init.c (res_setoptions): Recognize ip6-dotint option.
4664         Reset RES_NOIP6DOTINT flag in this case..
4666         * sysdeps/posix/getaddrinfo.c: Fix memory handling of
4667         ai_canonname.
4669 2004-08-16  Ulrich Drepper  <drepper@redhat.com>
4671         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Don't use
4672         CNAME records, we better follow the chain of CNAME records which
4673         can be accomplished with A/AAAA lookups.
4675 2004-08-15  Roland McGrath  <roland@redhat.com>
4677         * sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who):
4678         Remove __RUSAGE_BOTH constant and RUSAGE_BOTH macro.
4679         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
4680         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
4681         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
4683 2004-08-15  Roland McGrath  <roland@frob.com>
4685         * sysdeps/i386/i686/Makefile (elide-routines.os): Append hp-timing to
4686         this, not ...
4687         (static-only-routines): ... this.
4688         * sysdeps/ia64/Makefile: Likewise.
4689         * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
4690         * sysdeps/sparc/sparc64/Makefile: Likewise.
4691         * sysdeps/x86_64/Makefile: Likewise.
4692         * sysdeps/i386/i686/hp-timing.c: Revert copyright terms change.
4693         * sysdeps/ia64/hp-timing.c: Likewise.
4694         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
4695         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
4697         * csu/elf-init.c: Update copyright terms including special exception
4698         for these trivial files, which are statically linked into executables
4699         that use dynamic linking for the significant library code.
4700         * io/fstat.c: Likewise.
4701         * io/fstat64.c: Likewise.
4702         * io/lstat.c: Likewise.
4703         * io/lstat64.c: Likewise.
4704         * io/stat.c: Likewise.
4705         * io/stat64.c: Likewise.
4706         * stdlib/atexit.c: Likewise.
4707         * sysdeps/alpha/elf/initfini.c: Likewise.
4708         * sysdeps/alpha/elf/start.S: Likewise.
4709         * sysdeps/arm/elf/start.S: Likewise.
4710         * sysdeps/cris/elf/start.S: Likewise.
4711         * sysdeps/generic/initfini.c: Likewise.
4712         * sysdeps/generic/mknod.c: Likewise.
4713         * sysdeps/hppa/elf/initfini.c: Likewise.
4714         * sysdeps/hppa/elf/start.S: Likewise.
4715         * sysdeps/i386/elf/start.S: Likewise.
4716         * sysdeps/i386/i686/hp-timing.c: Likewise.
4717         * sysdeps/ia64/elf/initfini.c: Likewise.
4718         * sysdeps/ia64/elf/start.S: Likewise.
4719         * sysdeps/ia64/hp-timing.c: Likewise.
4720         * sysdeps/m68k/elf/start.S: Likewise.
4721         * sysdeps/mach/start.c: Likewise.
4722         * sysdeps/mips/elf/start.S: Likewise.
4723         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
4724         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
4725         * sysdeps/s390/s390-32/elf/start.S: Likewise.
4726         * sysdeps/s390/s390-32/initfini.c: Likewise.
4727         * sysdeps/s390/s390-64/elf/start.S: Likewise.
4728         * sysdeps/s390/s390-64/initfini.c: Likewise.
4729         * sysdeps/sh/elf/initfini.c: Likewise.
4730         * sysdeps/sh/elf/start.S: Likewise.
4731         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
4732         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
4733         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
4734         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
4735         * sysdeps/standalone/i386/start.S: Likewise.
4736         * sysdeps/standalone/i960/start.S: Likewise.
4737         * sysdeps/standalone/m68k/m68020/start.S: Likewise.
4738         * sysdeps/unix/arm/start.c: Likewise.
4739         * sysdeps/unix/bsd/osf/alpha/start.S: Likewise.
4740         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
4741         * sysdeps/unix/sparc/start.c: Likewise.
4742         * sysdeps/unix/start.c: Likewise.
4743         * sysdeps/unix/sysv/aix/start.s: Likewise.
4744         * sysdeps/unix/sysv/irix4/start.c: Likewise.
4745         * sysdeps/x86_64/elf/initfini.c: Likewise.
4746         * sysdeps/x86_64/elf/start.S: Likewise.
4748 2004-08-15  Roland McGrath  <roland@redhat.com>
4750         [BZ #227]
4751         * sysdeps/unix/sysv/linux/kernel-features.h
4752         (__ASSUME_BRK_PAGE_ROUNDED): New macro.
4753         * sysdeps/unix/sysv/linux/dl-sysdep.c (frob_brk)
4754         [! __ASSUME_BRK_PAGE_ROUNDED]: Adjust the break up if it falls within
4755         the partial page after the dynamic linker's own data segment.
4757 2004-08-15  Ulrich Drepper  <drepper@redhat.com>
4759         * sysdeps/posix/getaddrinfo.c (gaih_inet): Optimize generation of
4760         v4-mapped addresses a bit.
4761         (gethosts): Move alloca out of macro, so that it is done only once.
4763         * sysdeps/posix/getaddrinfo.c (gaih_addrtuple): Change type of
4764         addr to avoid casts.
4765         (gethosts): Removed.
4766         (gethosts2): Renamed to gethosts.  Make it usable for family !=
4767         AF_UNSPEC.  Fix AI_V4MAPPED.
4768         (gaih_inet): Remove use of old gethosts.  Always use what used to be
4769         gethosts2.  If entry is found, try to use the same NSS module's
4770         getcanonname_r function.  Use gethostbyaddr for AI_CANONNAME only
4771         if getcanonname_r was not available.  Fix filtering of AI_V4MAPPED
4772         addresses.  Numerous cleanups.
4773         * resolv/nss_dns/dns-canon.c: New file.
4774         * resolv/Makefile (libnss_dns-routines): Add dns-canon.
4775         * resolv/Versions (libnss_dns): Add _nss_dns_getcanonname_r.
4777         * elf/Makefile: Add rules to build and run tst-dlopenrpath.
4778         * elf/tst-dlopenrpath.c: New file.
4779         * elf/tst-dlopenrpathmod.c: New file.
4781         * intl/tst-gettext.sh: Adjust for change of de.po file to UTF-8.
4782         * intl/tst-gettext.c: Likewise.
4784         * nss/getent.c (ahosts_keys_int): Correctly print IPv6 addresses.
4786         * nss/getent.c: Allow queries for getaddrinfo with AF_INET and
4787         AF_INET6.
4789 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
4791         * po/de.po: Update from translation team.
4793 2004-08-14  Roland McGrath  <roland@frob.com>
4795         * sysdeps/mach/configure: Regenerated.
4796         * sysdeps/mach/hurd/configure: Regenerated.
4798 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
4800         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If RFC3484 sorting is
4801         performed, make sure it is still the first entry after sorting
4802         that has the ai_canonname information.
4804         * sysdeps/posix/getaddrinfo.c (gaih_inet): Really set ai_canonname
4805         only in one entry.
4807 2004-08-13  Daniel Jacobowitz  <dan@debian.org>
4809         * scripts/output-format.sed: Handle default case of three-argument
4810         OUTPUT_FORMAT.
4812         * sysdeps/arm/machine-gmon.h (mcount_internal): Mark as
4813         __attribute_used__.
4815 2004-08-13  Ulrich Drepper  <drepper@redhat.com>
4817         * nss/getent.c (ahosts_keys): ai_canonname is NULL for all but the
4818         first returned entry.  Print name only if not NULL.
4820         * nis/nss_nis/nis-netgrp.c: Remove locking by using data in struct
4821         __netgrent object passed in instead of global variables.
4822         Optimize.
4823         * nis/nss_nisplus/nisplus-netgrp.c: Remove locking by using data
4824         in struct __netgrent object passed in instead of global variables.
4825         * inet/netgroup.h (struct __netgrent): Add service_user field.
4826         Move cursor in anonymous union, add new field location to that
4827         union.
4828         * inet/getnetgrent_r.c: Extensive rewrite to really enable
4829         concurrent uset of set/get/endnetgrent and innetgr.
4830         Reported by Chuck Simmons.
4832         * inet/netgroup.h (struct name_list): Replace name pointer with
4833         zero-sized array.
4834         * inet/getnetgrent_r.c: Adjust code for change in name_list
4835         layout.  Numerous strdup and free calls removed.
4837         * elf/sprof.c (read_symbols): When comparing aliases, prefer
4838         non-hidden over hidden symbols and strong over weak symbols
4839         if both don't start with '_'.
4841         * malloc/malloc.c: Use strong_alias instead of weak_alias wherever
4842         possible.
4844 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
4846         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
4847         RUSAGE_ enums as __RUSAGE_ and adjust macros accordingly.
4848         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
4849         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
4850         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
4851         Define non-standard RLIMIT_ enums as __RLIMIT_ and adjust macros
4852         accordingly.
4854 2004-08-11  Andreas Schwab  <schwab@suse.de>
4856         * resolv/res_libc.c: Move definition of __res_initstamp ...
4857         * resolv/res_init.c: ... here.
4859 2004-08-10  GOTO Masanori  <gotom@debian.or.jp>
4861         * locale/C-time.c: Change default ERA value from NULL to "".
4862         * locale/tst-C-locale.c: Add test case for ERA keywords.
4864 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
4866         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
4867         RLIMIT__ enums as __RLIMIT_ and adjust macros accordingly.
4868         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
4869         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
4871 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
4873         * sysdeps/unix/sysv/linux/bits/resource.h (RLIMIT_SIGPENDING,
4874         RLIMIT_MSGQUEUE): Add.
4875         (RLIMIT_NLIMITS, RLIM_NLIMITS): Adjust.
4876         * sysdeps/unix/sysv/linux/alpha/bits/resource.h (RLIMIT_SIGPENDING,
4877         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
4878         (RLIM_NLIMITS): Adjust.
4879         * sysdeps/unix/sysv/linux/sparc/bits/resource.h (RLIMIT_SIGPENDING,
4880         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
4881         (RLIM_NLIMITS): Adjust.
4882         * sysdeps/unix/sysv/linux/mips/bits/resource.h (RLIMIT_SIGPENDING,
4883         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
4884         (RLIM_NLIMITS): Adjust.
4886 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
4888         * resolv/res_query.c (__libc_res_nsearch): Protect the debugging
4889         printf with #ifdef DEBUG and RES_DEBUG check.
4891         * sysdeps/unix/sysv/linux/bits/shm.h: Move __END_DECLS after
4892         __USE_MISC #endif.
4893         * sysdeps/generic/bits/shm.h: Add __BEGIN_DECLS for __getpagesize
4894         declaration.
4895         * sysdeps/gnu/bits/shm.h: Likewise.
4896         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
4897         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
4898         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
4899         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
4900         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
4902 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
4904         * po/ca.po: Update from translation team.
4906 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
4908         * sysdeps/unix/sysv/linux/bits/shm.h: Add __BEGIN_DECLS for
4909         __getpagesize declaration.
4911 2004-08-11  Roland McGrath  <roland@redhat.com>
4913         * configure.in (libc_cv_cpp_asm_debuginfo): Add missing braces around
4914         commands inside &&.
4915         Reported by Andreas Schwab <schwab@suse.de>.
4916         * configure: Regenerated.
4918         * posix/tst-waitid.c (do_test): Ignore SIGCHLD before cleanup SIGKILL.
4920 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
4922         * time/tzset.c (tzset_internal): Add new parameter which is
4923         nonzero if called through tzset.  Use TZDEFAULT name including
4924         name comparison if the new parameter is zero.  This means implicit
4925         tzset calls will not cause files to be opened and read by tzfile.c
4926         all the time.
4928 2004-08-11  Jakub Jelinek  <jakub@redhat.com>
4930         * rt/tst-timer2.c (do_test): If timer_create fails, just continue.
4931         * rt/tst-timer4.c (do_test): If one of the timer_create calls fails,
4932         return 1 immediately.
4934         * time/tzfile.c (__tzfile_read): Free transitions only if it will
4935         not be reused.
4937         * sysdeps/ieee754/dbl-64/mpa.c: Include <sys/param.h>.
4938         * sysdeps/ieee754/dbl-64/mpa.h (MAX, MIN): Macros removed.
4940         * stdio-common/tst-popen.c: Include <string.h>.
4942         * resolv/res_send.c (__libc_res_nsend): Only define TMPBUF #if DEBUG.
4944         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Remove noreturn
4945         attribute.  Return NULL instead of calling pthread_exit at the end.
4947 2004-08-11  Roland McGrath  <roland@redhat.com>
4949         * iconvdata/testdata/ISO-2022-JP-3: Regenerated.
4951 2004-08-10  Alfred M. Szmidt  <ams@kemisten.nu>
4953         * sysdeps/generic/bits/in.h (struct ip_mreq): Remove definition.
4955 2004-08-10  Jakub Jelinek  <jakub@redhat.com>
4957         * libio/bits/stdio.h (fread_unlocked): Cast 0 to (size_t).
4958         (fwrite_unlocked): When checking if size * n is <= 8, cast each
4959         argument to size_t individually.  Cast n to (void) instead of
4960         (size_t), surround with (), return (size_t) 0 if one of n or size
4961         is 0.  [BZ #316]
4962         * stdio-common/Makefile (tests): Add tst-unlockedio.
4963         * stdio-common/tst-unlockedio.c: New test.
4965 2004-08-09  Roland McGrath  <roland@frob.com>
4967         * manual/install.texi (Supported Configurations): Replace bug-glibc
4968         mention with web URL.
4969         * INSTALL: Regenerated.
4970         * locale/iso-3166.def: Likewise, in comment.
4971         * locale/iso-4217.def: Likewise.
4972         * locale/iso-639.def: Likewise.
4973         * posix/cpio.h: Remove bug reporting comment.
4975 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
4977         * libio/bits/stdio.h (fread_unlocked): Add a couple of (size_t)
4978         casts to handle funny calls with floating point argument values
4979         and signed values correctly and without warning.
4980         (fwrite_unlocked): Likewise.  [BZ #309]
4982         * malloc/memusage.c (me): Use creat64, not creat.
4983         * malloc/memusagestat.c: Fix handling of very large sizes.  [BZ #285]
4984         Patch by Guy Maor <guymaor@yahoo.com>.
4986         * elf/ldconfig.c (options): Mark parameter option names as
4987         translatable.  [BZ #253]  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
4989         * iconv/gconv_charset.h (strip): Also allow comma which is what is
4990         used to separate options.  [BZ #194]
4992 2004-08-09  Roland McGrath  <roland@redhat.com>
4994         * FAQ.in: Refer to web pages instead of bug-glibc.
4995         * FAQ: Regenerated.
4997         * time/strptime_l.c: #include <stdbool.h>, `bool' used in last change.
4999 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
5001         * time/tzset.c (tzset_internal): If TZ is not set do not compare
5002         old and new tz value since it might be /etc/localtime in both
5003         cases although the file changed.  [BZ #154]
5004         Patch by Christian Franke <franke@computer.org>.
5006         * time/tzfile.c (__tzfile_read): Determine dev/ino of file.
5007         Compare with values of previously opened file.  Don't do anything
5008         is they match.
5010 2004-08-08  Ulrich Drepper  <drepper@redhat.com>
5012         * elf/dl-load.c (_dl_map_object): If __RTLD_CALLMAP flag is set,
5013         reset loader before the actual loading.
5014         * elf/dl-open.c (dl_open_worker): If file name contains no path
5015         element determine map of caller.  Pass caller map in this case to
5016         _dl_map_object.  Set __RTLD_CALLMAP in mode.
5017         * include/dlfcn.h (__RTLD_CALLMAP): Define.  [BZ #116]
5018         Patch by Greg Wolodkin <greg@mathworks.com>.
5020         * misc/syslog.c (openlog_internal): Always try both UDP and TCP.
5021         [BZ #108]  Patch mainly by Bjorn Andersson <bjorn@iki.fi>.
5023         * configure.in: Also recognize i786. [BZ #106]
5024         Patch by <pluto@pld-linux.org>.
5026         * resolv/res_query.c (__libc_res_nsearch): Correctly test whether
5027         name contains any dots. [BZ #95]
5029         * resolv/res_send.c: Compiling with DEBUG defined works again.
5030         * resolv/gethnamaddr.c (dprintf): Renamed to Dprintf.  Adjust all
5031         callers.
5033         * resolv/tst-leaks.c (TIMEOUT): Define so that if no server is
5034         available the process is not killed. [BZ #41]
5036         * intl/tst-gettext.c (main): Improve some messages. [BZ #33]
5038         * time/strptime_l.c (__strptime_internal): Fix handling of %Ey.
5039         [BZ #28]
5041         * po/sv.po: Update from translation team.
5043 2004-08-07  Ulrich Drepper  <drepper@redhat.com>
5045         * inet/netinet/in.h: Add more const to the setipv4soucefilter,
5046         getsourcefilter, and setsourcefilter parameter list.
5047         * sysdeps/generic/setipv4sourcefilter.c: Likewise.
5048         * sysdeps/generic/getsourcefilter.c: Likewise.
5049         * sysdeps/generic/setsourcefilter.c: Likewise.
5050         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: Likewise.
5051         * sysdeps/unix/sysv/linux/getsourcefilter.c: Likewise.
5052         * sysdeps/unix/sysv/linux/setsourcefilter.c: Likewise.
5054         * po/tr.po: Update from translation team.
5056 2004-08-06  Ulrich Drepper  <drepper@redhat.com>
5058         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): Fix typo.
5059         Reported by Paolo Bonzini.
5061 2004-08-06  Jakub Jelinek  <jakub@redhat.com>
5063         * sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add
5064         always_inline.
5065         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_runtime_setup,
5066         elf_machine_fixup_plt, elf_machine_plt_conflict): Likewise.
5068         * sysdeps/unix/sysv/linux/netatalk/at.h: Include bits/sockaddr.h
5069         before including linux/atalk.h.
5071         * resolv/res_libc.c: Include atomic.h.
5073         * intl/finddomain.c (free_mem): Rename to...
5074         (_nl_finddomain_subfreeres): ... this.  Add
5075         __libc_freeres_fn_section.
5076         * intl/loadmsgcat.c (_nl_unload_domain): Add
5077         __libc_freeres_fn_section.
5078         * intl/gettextP.h (_nl_unload_domain): Move into #ifdef _LIBC.
5079         Add attribute_hidden.
5080         (_nl_findomain_subfreeres): New prototype.
5081         * iconv/gconv_db.c (free_mem): Call _nl_findomain_subfreeres.
5083 2004-07-30  Guido Guenther  <agx@sigxcpu.org>
5085         * nss/getent.c (passwd_keys): Use strtoul instead of isdigit to
5086         test if the key is numeric or not.
5087         (group_keys): Likewise.
5089 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
5091         * inet/netinet/in.h: Define struct ip_msfilter, IP_MSFILTER_SIZE,
5092         struct group_filter, and GROUP_FILTER_SIZE.
5093         * include/sys/socket.h: Declare __getsockopt.
5094         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: New file.
5095         * sysdeps/unix/sysv/linux/getipv4sourcefilter.c: New file.
5096         * sysdeps/unix/sysv/linux/setsourcefilter.c: New file.
5097         * sysdeps/unix/sysv/linux/getsourcefilter.c: New file. [BZ #211]
5099         * po/ko.po: Update from translation team.
5101 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
5103         * hesiod/hesiod.c (__hesiod_res_get): Use calloc instead of malloc +
5104         memset.
5105         (__hesiod_res_set): Free nsaddrs.
5107         * include/resolv.h (__res_maybe_init): Add prototype.
5108         * resolv/resolv.h (struct __res_state): Add _u._ext.initstamp field.
5109         * resolv/Versions (libc): Add __res_maybe_init@@GLIBC_PRIVATE.
5110         * resolv/res_libc.c (__res_initstamp, lock): New variables.
5111         (res_init): Increase __res_initstamp.
5112         (__res_maybe_init): New function.
5113         * resolv/res_init.c (__res_vinit): Initialize _u._ext.initstamp.
5114         * hesiod/hesiod.c (__hesiod_res_get): Use __res_maybe_init instead
5115         of RES_INIT check and {res_ninit,__res_ninit,res_init} call.
5116         * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise.
5117         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
5118         _nss_dns_gethostbyaddr_r): Likewise.
5119         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
5120         _nss_dns_getnetbyaddr_r): Likewise.
5121         * resolv/gethnamaddr.c (gethostbyname, gethostbyname2,
5122         gethostbyaddr): Likewise.
5123         * resolv/res_data.c (fp_nquery, res_mkquery, res_mkupdate,
5124         res_isourserver, res_sendsigned, res_update, res_search,
5125         res_querydomain): Likewise.
5126         * nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)): Likewise.
5127         * nss/digits_dots.c (__nss_hostname_digits_dots): Likewise.
5128         * nss/getnssent_r.c (__nss_setent, __nss_endent, __nss_getent_r):
5129         Likewise.
5131 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
5133         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set ai_family for
5134         V4-mapped IPv6 addresses and req->ai_family==AF_INET.
5135         Reported by A. Guru <a.guru@sympatico.ca>.
5137         * po/sv.po: Update from translation team.
5138         * po/sk.po: Likewise.
5139         * po/pl.po: Likewise.
5141 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
5142             Ulrich Drepper  <drepper@redhat.com>
5144         * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Don't read more input
5145         characters than necessary.
5147 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
5149         * wcsmbs/Makefile (tests): Add tst-mbsrtowcs.
5150         * wcsmbs/tst-mbsrtowcs.c: New file.
5152         * po/fr.po: Update from translation team.
5154 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
5156         * resolv/inet_pton.c (inet_pton4): Disallow octal numbers.  Reported
5157         by A. Guru <a.guru@sympatico.ca>.  [BZ #295]
5159 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
5161         * po/nl.po: Update from translation team.
5163         * sysdeps/posix/getaddrinfo.c (gaih_inet): Recognize all the IPv4
5164         numeric address formats inet_addr knows.
5165         (getaddrinfo): Allow AI_NUMERICSERV flag.
5166         If neither IPv4 nor IPv6 interface is present we cannot make any
5167         decision for AI_ADDRCONFIG.  Fail if AI_NUMERICSERV is set and the
5168         string is not just a number.  Remove useless freeaddrinfo call.
5169         * resolv/netdb.h (AI_NUMERICSERV): Define.
5170         Based on a patch by a.guru@sympatico.ca.
5172 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
5174         * stdlib/strfmon_l.c (__vstrfmon_l): Memset whole info structure
5175         instead of trying to initialize some, but not all, fields one by
5176         one.
5177         * stdio-common/printf_size.c (printf_size): Initialize fb_info
5178         structure with *info instead of trying to initialize some, but not
5179         all, fields from it.
5181         * nscd/connections.c (handle_request): Check if req->type is in
5182         LASTDBREQ .. LASTREQ range instead of req.
5184         * locale/programs/linereader.c (lr_create): Initialize
5185         lr->return_widestr to 0.
5187         * elf/dl-close.c (free_slotinfo): Add __libc_freeres_fn_section.
5188         (free_mem): Call free_slotinfo just once.
5190         * stdio-common/tst-fmemopen.c (main): Check for MAP_FAILED instead
5191         of NULL.
5193         * locale/localeinfo.h (_nl_locale_subfreeres): New prototype.
5194         * locale/setlocale.c (free_category): Add __libc_freeres_fn_section.
5195         (free_mem): Rename to _nl_locale_subfreeres.
5196         * iconv/gconv_db.c: Include locale/localeinfo.h.
5197         (free_derivation, free_modules_db): Add __libc_freeres_fn_section.
5198         (free_mem): Call _nl_locale_subfreeres.
5199         * iconv/gconv_dl.c (do_release_all): Add __libc_freeres_fn_section.
5201 2004-08-04  Roland McGrath  <roland@frob.com>
5203         * Makeconfig ($(common-objpfx)config.status):
5204         Fix typo: $(add_ons) -> $(add-ons).
5205         (Makeconfig-add-on): New variable.  When doing $(sysdep-makeconfigs)
5206         include, use black magic to get it set to an add-on's name during the
5207         include of the add-on's Makeconfig.
5209         * configure.in: Use variable name `libc_add_on' when sourcing add-on
5210         configure fragments, so they can refer to this.
5211         * configure: Regenerated.
5213 2004-08-04  Roland McGrath  <roland@redhat.com>
5215         * posix/tst-waitid.c (test_child): Sleep a second before stopping.
5216         (do_test): Bump sleep to three seconds.
5217         (sigchld, check_sigchld): New functions.
5218         (do_test): Handle SIGCHLD and check for getting the right details.
5220         * posix/tst-waitid.c (do_test): Kill the child process when bailing
5221         out early on some failure.
5222         [WCONTINUED]: Test WCONTINUED functionality.
5224 2004-08-03  Ulrich Drepper  <drepper@redhat.com>
5226         * nscd/connections.c (handle_request): Print more descriptive
5227         message for invalid request types.
5229 2004-08-02  Jakub Jelinek  <jakub@redhat.com>
5231         * iconvdata/ibm932.c (BODY): Avoid binary search for ch >= 0xffff.
5232         Always treat high as highest number in range + 1.
5233         * iconvdata/ibm943.c (BODY): Likewise.
5235 2004-07-31  Bruno Haible  <bruno@clisp.org>
5237         * iconvdata/JISX0213.TXT: Updated to JISX0213 plane 1 version 2004.
5238         * iconvdata/jisx0213.c (__jisx0213_to_ucs_main,
5239         __jisx0213_to_ucs_pagestart, __jisx0213_from_ucs_level1,
5240         __jisx0213_from_ucs_level2): Regenerated.
5241         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): New function.
5242         * iconvdata/iso-2022-jp-3.c (JISX0213_1_2000_set): Renamed from
5243         JISX0213_1_set.
5244         (JISX0213_1_2004_set): New enum value.
5245         (BODY for FROM_LOOP): Treat ESC $ ( Q like ESC $ ( O.
5246         (BODY for TO_LOOP): For JISX 0213 plane 1 characters, emit ESC $ ( O
5247         when possible, ESC $ ( Q when needed.
5248         * iconvdata/testdata/EUC-JISX0213: Add the 10 new characters.
5249         * iconvdata/testdata/EUC-JISX0213..UTF8: Update.
5250         * iconvdata/testdata/SHIFT_JISX0213: Add the 10 new characters.
5251         * iconvdata/testdata/SHIFT_JISX0213..UTF8: Update.
5252         * iconvdata/testdata/ISO-2022-JP-3: Add the 10 new JISX0213 characters.
5253         * iconvdata/testdata/ISO-2022-JP-3..UTF8: Update.
5255 2004-07-22  Bruno Haible  <bruno@clisp.org>
5257         * iconvdata/gconv-modules (ISO-8859-7): Add alias ISO_8859-7:2003.
5259 2004-07-29  David S. Miller  <davem@redhat.com>
5261         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy): Optimize
5262         better for smaller than 256 byte copies.  Also, use only one
5263         unrolled loop instead of two for the large copy case.
5265 2004-07-30  Richard Henderson  <rth@redhat.com>
5267         * sysdeps/alpha/divq.S: Save t3 before it gets clobbered.
5268         * sysdeps/alpha/remq.S: Likewise.
5269         * sysdeps/alpha/div.S, sysdeps/alpha/ldiv.S: Rewrite with the
5270         new division algorithms in divl.S and divq.S respectively.
5272 2004-07-28  GOTO Masanori  <gotom@debian.or.jp>
5274         * timezone/asia: Update from tzdata2004b.
5275         * timezone/backward: Likewise.
5276         * timezone/europe: Likewise.
5277         * timezone/iso3166.tab: Likewise.
5278         * timezone/leapseconds: Likewise.
5279         * timezone/northamerica: Likewise.
5280         * timezone/southamerica: Likewise.
5281         * timezone/zone.tab: Likewise.
5283         * timezone/private.h: Update from tzcode2004b.
5284         * timezone/zic.c: Likewise.
5286 2004-07-27  Ulrich Drepper  <drepper@redhat.com>
5288         * nscd/grpcache.c (cache_addgr): If necessary, add entry also
5289         under the name the user provided.
5290         * nscd/pwdcache.c (cache_addpw): Likewise.
5292 2004-07-26  Roland McGrath  <roland@redhat.com>
5294         * sysdeps/posix/waitid.c [WEXITED]: Clear WEXITED bit in OPTIONS for
5295         call to __waitpid.
5297 2004-07-26  Ulrich Drepper  <drepper@redhat.com>
5299         * nscd/hstcache.c (cache_addhst): Fix two scenarios which lead to
5300         memory leaks.
5302         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Assign pointer for
5303         new buffer at the right time.
5304         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
5306 2004-07-25  Ulrich Drepper  <drepper@redhat.com>
5308         * inet/Versions [libc, GLIBC_2.3.4]: Add getipv4sourcefilter,
5309         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
5310         * inet/Makefile (routines): Likewise.
5311         * inet/netinet/in.h: Add prototypes for getipv4sourcefilter,
5312         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
5313         * sysdeps/generic/getipv4sourcefilter.c: New file.
5314         * sysdeps/generic/setipv4sourcefilter.c: New file.
5315         * sysdeps/generic/getsourcefilter.c: New file.
5316         * sysdeps/generic/setsourcefilter.c: New file.
5318 2004-07-17  Steven Munroe  <sjmunroe@us.ibm.com>
5320         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
5321         for POWER4 machines.
5323 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
5325         [BZ #274]
5326         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): Fix used >=
5327         BITS_PER_MP_LIMB shifting up.
5328         * stdlib/tst-strtod.c (main): Add new tests.
5330 2004-07-23  Jakub Jelinek  <jakub@redhat.com>
5332         [BZ #282]
5333         * libio/iopopen.c (_IO_new_popen): Use _IO_init instead of
5334         _IO_no_init.  Remove wd from struct locked_FILE.
5335         (_IO_wproc_jumps): Remove.
5336         Reported by Andrew Josey <a.josey@opengroup.org>.
5337         * stdio-common/Makefile (tests): Add tst-popen.
5338         * stdio-common/tst-popen.c: New test.
5340 2004-07-23  Ulrich Drepper  <drepper@redhat.com>
5342         * posix/bits/posix1_lim.h: Fix values for _POSIX_CHILD_MAX and
5343         _POSIX_OPEN_MAX.  Add _POSIX_HOST_NAME_MAX, _POSIX_SYMLINK_MAX,
5344         _POSIX_SYMLOOP_MAX, and _POSIX_RE_DUP_MAX.
5345         Reported by Andrew Josey.
5347         * include/features.h: Document _POSIX_C_SOURCE == 200112L.
5349         * grp/grp.h: Define gid_t if __USE_XOPEN2K is defined.
5350         * pwd/pwd.h: Define uid_t and gid_t if __USE_XOPEN2K is defined.
5351         * io/sys/stat.h: Define dev_t, gid_t, ino_t, mode_t, nlink_t,
5352         off_t, time_t, and uid_t if __USE_XOPEN2K is defined.
5353         * signal/signal.h: Define pid_t if __USE_XOPEN2K is defined.
5354         * posix/unistd.h: Define gid_t, off_t, pid_t, uid_t, and
5355         useconds_t if __USE_XOPEN2K is defined.
5356         * io/utime.h: Define time_t if __USE_XOPEN2K is defined.
5357         * libio/stdio.h: Declare fseeko and ftello if __USE_XOPEN2K is defined.
5359 2004-07-19  Thorsten Kukuk  <kukuk@suse.de>
5361         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
5362         allocate memory for large temporary variables with alloca.
5364 2004-07-22  Ulrich Drepper  <drepper@redhat.com>
5366         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Compatibility
5367         code must have version GLIBC_2.0.  Patch by Dwayne McConnell.
5369         * nscd/nscd_getgr_r.c (nscd_getgr_r): Avoid read call with NULL
5370         pointer and zero length.
5372 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
5374         * nscd/cache.c (prune_cache): Print correct list when debugging.
5376 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
5378         * resolv/res_libc.c (res_init): If RES_INIT is set and
5379         _res.nscount > 0, call __res_nclose and free nsaddrs.
5380         * resolv/Makefile: Add rules to build and run tst-leaks2.
5381         * resolv/tst-leaks2.c: New test.
5383 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
5385         * intl/libintl.h: Don't define macros for C++.
5386         Patch by Goto Masanori.
5388 2004-07-22  GOTO Masanori  <gotom@debian.or.jp>
5390         [BZ #276]
5391         * include/arpa/inet.h: Change inet_aton type from in_addr_t to int.
5392         * inet/arpa/inet.h: Likewise.
5393         * resolv/inet_addr.c: Likewise.
5395 2004-07-21  Alexandre Oliva  <aoliva@redhat.com>
5397         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: Add semtimedop.
5399 2004-07-20  Roland McGrath  <roland@redhat.com>
5401         * configure.in (add_ons): Substitute this.  Move $add_ons handling
5402         after AC_CANONICAL_HOST and default setting of $machine et al.
5403         Don't set $subdirs from $add_ons.
5404         Instead, source add-on/configure fragments early on.
5405         (base_machine): If it's already set, don't set it based on $machine.
5406         (libc_config_ok): New variable, set to no.  If an add-on fragment sets
5407         it to yes, skip the  tuple sanity check as if --enable-hacker-mode.
5408         (sysnames): Try appending add-on names after machine as well.
5409         * config.make.in (add-ons): Set from @add_ons@ instead of @subdirs@.
5410         * Makeconfig ($(common-objpfx)config.status): Also depend on configure
5411         files in $(add_ons) dirs.
5413         * sysdeps/unix/sysv/linux/bits/in.h (struct ip_mreq): Remove
5414         definition, now in netinet/in.h proper.
5416 2004-07-20  Alexandre Oliva  <aoliva@redhat.com>
5418         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
5419         Sort by syscalls.  Make sure we get headers such as sgidefs.h from
5420         the build tree before just-installed ones.
5422         * sysdeps/mips/atomicity.h: Use standard names for ABI macros,
5423         include sgidefs.h where appropriate.
5424         * sysdeps/mips/dl-machine.h: Likewise.
5425         * sysdeps/mips/machine-gmon.h: Likewise.
5426         * sysdeps/mips/bits/setjmp.h: Likewise.
5427         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
5428         * sysdeps/mips/mips64/__longjmp.c: Likewise.
5429         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
5430         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
5431         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
5432         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
5433         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
5434         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
5435         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
5436         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
5437         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
5438         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
5439         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
5440         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
5441         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
5442         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
5443         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
5444         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
5445         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
5446         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
5447         Likewise.
5448         * sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h):
5449         Likewise.
5451         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Update to use
5452         _dl_lookup_symbol_x.
5453         (elf_machine_runtime_link_map): Don't INTUSE _dl_signal_error.
5455 2004-07-20  Ulrich Drepper  <drepper@redhat.com>
5457         * inet/netinet/in.h: Define struct ip_mreq and struct
5458         ip_mreq_source.
5459         Define struct group_req and struct group_source_req.
5460         * sysdeps/unix/sysv/linux/bits/in.h: Define IP_UNBLOCK_SOURCE,
5461         IP_BLOCK_SOURCE, IP_ADD_SOURCE_MEMBERSHIP,
5462         IP_DROP_SOURCE_MEMBERSHIP, IP_MSFILTER, MCAST_JOIN_GROUP,
5463         MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, MCAST_LEAVE_GROUP,
5464         MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP, and
5465         MCAST_MSFILTER.
5466         Define MCAST_INCLUDE and MCAST_EXCLUDE.
5468         * iconvdata/gconv-modules: Add alias for IBM874 [BZ #244].
5470 2004-07-19  Jakub Jelinek  <jakub@redhat.com>
5472         [BZ #258]
5473         * math/libm-test.inc (max_value, min_value): New variables.
5474         (initialize): Initialize them.
5475         (pow_test): Add a couple of new tests.
5476         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Don't generate invalid
5477         exception if |y| >= 1U<<31.
5478         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Don't generate invalid
5479         exception if |y| >= 1L<<63.
5480         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
5481         If y*log2(x) overflows to +-inf, return still +inf/+0 instead of NaN.
5482         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
5484 2004-07-18  Ulrich Drepper  <drepper@redhat.com>
5486         * nscd/pwdcache.c (cache_addpw): Optimize case of unsuccessful
5487         lookup a bit.
5488         * nscd/grpcache.c (cache_addgr): Likewise.
5489         * nscd/hstcache.c (cache_addhst): Likewise.
5491 2004-07-10  GOTO Masanori  <gotom@debian.or.jp>
5493         * sysdeps/s390/s390-32/elf/start.S: Remove symbol _fp_hw.
5494         * sysdeps/s390/s390-64/elf/start.S: Likewise.
5496 2004-04-16  Andreas Schwab  <schwab@suse.de>
5498         * sysdeps/ia64/bits/atomic.h: Cast first argument of
5499         __sync_bool_compare_and_swap_si correct to void*.
5501 2004-07-17  Ulrich Drepper  <drepper@redhat.com>
5503         * iconv/iconv_prog.c (print_known_names): Make machine-readable
5504         output even less cluttered.
5506 2004-07-16  Steven Munroe  <sjmunroe@us.ibm.com>
5508         [BZ #269]
5509         * setjmp/Makefile (tests): Add bug269-setjmp.
5510         * setjmp/bug269-setjmp.c: New file.
5511         * sysdeps/powerpc/powerpc64/__longjmp-common.S [SHARED && !IS_IN_rtld]:
5512         Store R2 from jmpbuf in callers TOC save area.
5513         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [SHARED && !IS_IN_rtld]:
5514         Store R2 in TOC save area.
5515         * sysdeps/powerpc/powerpc64/setjmp-common.S [SHARED && !IS_IN_rtld]:
5516         Copy TOC save area from previous frame as R2 (TOC) in jmpbuf.
5518 2004-07-16  Jakub Jelinek  <jakub@redhat.com>
5520         * locale/newlocale.c: Include bits/libc-lock.h.
5521         (__libc_setlocale_lock): Extern decl.
5522         (__newlocale): Use it.
5523         Reported by Ulrich Weigand <Ulrich.Weigand@de.ibm.com>.
5525 2004-07-15  Jakub Jelinek  <jakub@redhat.com>
5527         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Remove
5528         static inline __attribute ((always_inline)).  Don't define if
5529         NO_CANCELLATION.
5530         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
5531         __fcntl_nocancel.
5532         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c (__fcntl_nocancel):
5533         Remove static inline __attribute ((always_inline)).  Don't define
5534         if NO_CANCELLATION.
5535         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
5536         __fcntl_nocancel.
5537         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Define to
5538         __libc_fcntl if NO_CANCELLATION and __ASSUME_FCNTL64 == 0.
5539         Don't define at all if NO_CANCELLATION and __ASSUME_FCNTL64 > 0.
5540         (__libc_fcntl): Don't define if __fcntl_nocancel is a macro.
5542         [BZ #262]
5543         * sysdeps/i386/elf/start.S (_start): Use @GOT instead of @GOTOFF
5544         for main.
5545         * elf/Makefile: Add rules to build and run tst-pie1.
5546         * elf/tst-pie1.c: New test.
5547         * elf/tst-piemod1.c: New file.
5549 2004-07-14  Jakub Jelinek  <jakub@redhat.com>
5551         [BZ #266]
5552         * manual/string.texi (l64a): Note that the static buffer is 7 bytes
5553         long.  Rewrite example code so that it takes into account l64a output
5554         shorter than 6 characters.
5555         Reported by Julian Graham <julian.graham@aya.yale.edu>.
5557 2004-07-14  Kaz  Kojima  <kkojima@rr.iij4u.or.jp>
5559         * sysdeps/sh/dl-machine.h: Don't reset _dl_starting_up here.
5560         (elf_machine_rela_relative): Remove unused valiable.
5562 2004-07-12  Paul Eggert  <eggert@cs.ucla.edu>
5564         [BZ #263]
5565         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Don't store
5566         outside the buffer if the read returns 0.  __strtod_l can't set
5567         endp to NULL, so remove a test for that case.
5569 2004-07-12  Roland McGrath  <roland@redhat.com>
5571         * manual/signal.texi (Interrupted Primitives): Make clear that
5572         TEMP_FAILURE_RETRY evaluates its expression as long int and compares
5573         it to -1 to define "failure".
5575 2004-07-10  Ulrich Drepper  <drepper@redhat.com>
5577         * elf/ldconfig.c: Define PROCINFO_CLASS as static before including
5578         ldsodefs.h.
5579         * sysdeps/generic/ldsodefs.h: Only define PROCINFO_CLASS if it is not
5580         already defined.
5581         * sysdeps/i386/dl-procinfo.c: Define PROCINFO_CALLS only if not
5582         already defined.
5584         * elf/rtld.c (print_statistics): Mark with noinline attribute.
5585         * sysdeps/i386/dl-machine.h (elf_machine_rel): Mark with always_inline
5586         attribute.
5587         (elf_machine_rel_relative): Likewise.
5589         * include/string.h: Add libc_hidden_proto for __strtok_r and
5590         __strsep_g.
5591         * sysdeps/generic/strsep.c: Add libc_hidden_def.
5592         * sysdeps/generic/strtok_r.c: Likewise.
5593         * sysdeps/i386/strtok_r.S: Add alias for internal symbol.
5594         * sysdeps/i386/i686/strtok_r.S: Likewise.
5595         * sysdeps/x86_64/strtok_r.S: Likewise.
5597 2004-07-09  Alexandre Oliva  <aoliva@redhat.com>
5599         * inet/getnetgrent_r.c (internal_setnetgrent): Make it hidden
5600         instead of internal-linkage, such that we can alias to it.
5601         (internal_endnetgrent, internal_getnetgrent_r): Likewise.
5603 2004-07-09  Ulrich Drepper  <drepper@redhat.com>
5605         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Move attribute
5606         to the front for gcc 3.5+.
5607         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
5608         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
5609         * include/fcntl.h: Don't declare __fcntl_nocancel here if
5610         NO_CANCELLATION is defined.
5612 2004-07-07  Jakub Jelinek  <jakub@redhat.com>
5614         * elf/dl-fini.c (_dl_fini): Add nloaded variable, load
5615         GL(dl_nloaded) into it while still in critical section.
5617 2004-07-06  Thorsten Kukuk  <kukuk@suse.de>
5619         * nss/getent.c (print_group, print_passwd): Use %lu format for
5620         `unsigned long int' values.
5622         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Fix syntax
5623         error typos in goto statements.
5625 2004-07-07  Roland McGrath  <roland@frob.com>
5627         * Makefile (dist-separate): New variable.
5628         (glibc-%.tar rule): Make separate tar files for add-ons listed there.
5629         Depend on their configure files.
5630         (dist-do-separate-dirs): New canned sequence to do that.
5631         (dist-separate-libidn, dist-separate-linuxthreads): New variables.
5632         (dist): Depend on add-on tar files based on $(dist-separate).
5633         (dist-version): New variable, default to $(version).
5634         (tag-for-dist, dist): Use that in place of $(version) in deps.
5636 2004-07-07  Ulrich Drepper  <drepper@redhat.com>
5638         * elf/dl-fini.c (_dl_fini): Move the unlock of the ld.so lock
5639         before the loop running the destructors.
5641 2004-05-18  Andreas Schwab  <schwab@suse.de>
5643         * elf/dl-load.c (_dl_map_object_from_fd): Use the end address of
5644         the first segment for mprotect, not l_text_end.
5646 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
5648         * elf/dl-profile.c (_dl_start_profile): Compact error handling.
5649         Remove hashfraction variable.  Make kcount and kcountsize local
5650         variables.
5652         * elf/dl-init.c: Don't define and use _dl_starting_up if
5653         HAVE_INLINED_SYSCALLS is defined and the variable is not used.
5654         * elf/dl-support.c: Likewise.
5655         * elf/rtld.c: Likewise.
5656         * elf/dl-misc.c (_dl_debug_vdprintf): Use writev syscall directly
5657         if HAVE_INLINED_SYSCALLS is defined.
5658         * sysdeps/powerpc/powerpc64/dl-machine.h: Don't reset _dl_starting_up
5659         here.
5660         * sysdeps/powerpc/powerpc32/dl-start.S: Likewise.
5661         * sysdeps/unix/sysv/linux/configure.in: Define HAVE_INLINED_SYSCALLS.
5662         * config.h.in: Add entry for HAVE_INLINED_SYSCALLS.
5664         * sysdeps/posix/profil.c: If compiled for ld.so, omit code which
5665         is needed to stop profiling.
5666         * elf/dl-open.c (dl_open_worker): If a newly opened object is to be
5667         profile make sure it cannot be unloaded.
5669         * sysdeps/unix/sysv/linux/dl-origin.c: Inline readlink syscall.
5671         * sysdeps/unix/sysv/linux/fcntl.c: If compiled without cancellation
5672         support, make sure the helper function is inlined.
5673         * sysdeps/unix/sysv/linux/pread.c: Likewise.
5674         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
5675         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
5676         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
5678 2004-07-05  Jakub Jelinek  <jakub@redhat.com>
5680         * include/string.h (ffs): Add libc_hidden_builtin_proto.
5681         * sysdeps/rs6000/ffs.c (ffs): Add libc_hidden_builtin_def.
5682         * sysdeps/alpha/alphaev67/ffs.S (ffs): Likewise.
5683         * sysdeps/alpha/ffs.S (ffs): Likewise.
5684         * sysdeps/s390/ffs.c (ffs): Likewise.
5685         * sysdeps/powerpc/ffs.c (ffs): Likewise.
5686         * sysdeps/i386/ffs.c (ffs): Likewise.
5687         * sysdeps/i386/i686/ffs.c (ffs): Likewise.
5688         * sysdeps/m68k/ffs.c (ffs): Likewise.
5689         * sysdeps/generic/ffs.c (ffs): Likewise.
5690         * sysdeps/m88k/ffs.c (ffs): Likewise.
5691         * sysdeps/am29k/ffs.c (ffs): Likewise.
5692         * sysdeps/i960/ffs.c (ffs): Likewise.
5693         * sysdeps/x86_64/ffs.c (ffs): Likewise.
5695         * Makerules (check-abi): Use diff -p -U 0 instead of diff -pu0.
5697         * sysdeps/powerpc/novmx-longjmp.c (__libc_longjmp,
5698         __libc_siglongjmp): Remove symbol_version.
5699         * sysdeps/powerpc/longjmp.c (__libc_longjmp, __libc_siglongjmp):
5700         Export @@GLIBC_PRIVATE, not @@GLIBC_2.3.4.
5701         * sysdeps/powerpc/sigjmp.c (__sigjmp_save): Use strong_alias
5702         unconditionally.
5703         * sysdeps/powerpc/novmx-sigjmp.c (__sigjmp_save): Remove.
5704         * sysdeps/powerpc/powerpc32/__longjmp.S (__longjmp): Use
5705         strong_alias instead of default_symbol_version, remove
5706         symbol_version.
5707         * sysdeps/powerpc/powerpc64/__longjmp.S (__longjmp): Likewise.
5708         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__novmx__setjmp): Change
5709         into strong_alias to __novmxsetjmp.
5710         (__vmx__setjmp): Similarly with __vmxsetjmp.
5711         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
5712         default_symbol_version and symbol_version.
5713         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__novmx__setjmp): Change
5714         into strong_alias to __novmxsetjmp.
5715         (__vmx__setjmp): Similarly with __vmxsetjmp.
5716         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
5717         default_symbol_version and symbol_version.
5719         * nscd/nscd_getgr_r.c: Include stdio-common/_itoa.h.
5721 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
5723         * elf/rtld.c (dl_main): Mark dyn_temp with attribute_relro.
5725 2004-07-04  Matthew Reppert  <arashi@kai.vm.bytemark.co.uk>
5727         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Use libc_hidden_ver
5728         instead of libc_hidden_def.
5730 2004-07-01  Roland McGrath  <roland@redhat.com>
5732         * aclocal.m4: Add provide for AC_CONFIG_AUX_DIR_DEFAULT.
5734         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Move top-level
5735         $(..)shlib-versions file to last in deps list.  This lets add-ons give
5736         more-specific matches that override defaults in the top-level file.
5738         * sysdeps/unix/sysv/linux/configure.in: If arch_minimum_kernel was
5739         already set, don't set it or libc_cv_gcc_unwind_find_fde.
5740         * sysdeps/unix/sysv/linux/configure: Regenerated.
5742 2004-07-01  Martin Schwidefsky  <schwidefsky@de.ibm.com>
5744         * sysdeps/s390/fpu/bits/mathinline.h [__LIBC_INTERNAL_MATH_INLINES]
5745         (__ieee754_sqrt): Define as __MATH_INLINE using sqdbr instruction.
5746         (__ieee754_sqrtf): Define as __MATH_INLINE using sqebr instruction.
5747         * sysdeps/s390/fpu/e_sqrt.c: New file.
5748         * sysdeps/s390/fpu/e_sqrtf.c: New file.
5749         * sysdeps/s390/Implies: New file.
5750         * sysdeps/s390/s390-32/Implies: Remove ieee754, move
5751         ieee754/dbl-64 and ieee754/flt-32 to s390/Implies.
5752         * sysdeps/s390/s390-64/Implies: Likewise.
5754 2004-06-30  Jakub Jelinek  <jakub@redhat.com>
5756         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Include tls.h.
5757         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
5759         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (thread_start):
5760         DO_CALL (exit, 1) instead of branching to _exit.
5761         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (thread_start):
5762         Likewise.
5764         * sysdeps/s390/fpu/bits/mathinline.h: New file.
5766         * include/glob.h (glob64): Add libc_hidden_proto.
5767         * sysdeps/generic/glob64.c (glob64): Add libc_hidden_def.
5768         * sysdeps/gnu/glob64.c (glob64): Likewise.
5769         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Likewise.
5771 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
5773         * sysdeps/i386/fpu/libm-test-ulps: Update for GCC 3.4.
5774         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
5776 2004-06-11  Dwayne Grant McConnell  <dgm69@us.ibm.com>
5778         * sysdeps/powerpc/fpu/s_lround.c: Removed.
5779         * sysdeps/powerpc/fpu/s_lroundf.c: Removed.
5780         * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: New file.
5781         * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: New file.
5782         * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: New file.
5783         * sysdeps/powerpc/powerpc32/fpu/s_floor.S: New file.
5784         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: Removed.
5785         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: New file.
5786         * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: New file.
5787         * sysdeps/powerpc/powerpc32/fpu/s_lround.S: New file.
5788         * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: New file.
5789         * sysdeps/powerpc/powerpc32/fpu/s_rint.S: New file.
5790         * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: New file.
5791         * sysdeps/powerpc/powerpc32/fpu/s_round.S: New file.
5792         * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: New file.
5793         * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: New file.
5795 2004-06-30  Ulrich Drepper  <drepper@redhat.com>
5797         * include/net/if.h: Handle if_nameindex and if_freenameindex with
5798         libc_proto_hidden.
5799         * sysdeps/unix/sysv/linux/netlinkaccess.h: New file.
5800         * sysdeps/unix/sysv/linux/ifaddrs.c: Export netlink handling functions.
5801         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Implement using
5802         netlink if possible.  Fall back on ioctl method if necessary.
5803         * sysdeps/unix/sysv/linux/Dist: Add netlinkaccess.h.
5805         * include/unistd.h: Declare __truncate.
5806         * sysdeps/generic/truncate.c: Also define __truncate.
5807         * sysdeps/mach/hurd/truncate.c: Likewise.
5808         * sysdeps/unix/common/syscalls.list: Likewise.
5809         * sysdeps/unix/sysv/linux/truncate64.c: Use __truncate, not truncate.
5811 2004-06-29  Ulrich Drepper  <drepper@redhat.com>
5813         * stdio-common/printf-parsemb.c (__parse_one_specmb): Initialize
5814         info.extra.  Patch by Marcus Meissner.
5816 2004-06-29  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
5818         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
5819         Fix branch offset for a PLT entry.
5821 2004-06-20  Jim Meyering  <jim@meyering.net>
5823         * malloc/obstack.h (obstack_base): Cast to `void *', to align with
5824         documentation.
5826 2004-06-28  Ulrich Drepper  <drepper@redhat.com>
5828         * inet/bug-if1.c (do_test): Simply use 0 as invalid index.
5829         Workaround for [BZ #232].
5831         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Use extend_alloca.
5833 2004-06-28  GOTO Masanori  <gotom@debian.or.jp>
5835         * iconv/gconv_simple.c: Use get16/put16 for user given buffer
5836         in ucs2/ucs2reverse when unaligned memory access is attempted.
5837         * iconv/tst-iconv5.c: New file.
5838         * iconv/Makefile (tests): Add tst-iconv5.
5840 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
5842         * inet/bug-if1.c: Include <string.h>.
5844 2004-06-19  Roland McGrath  <roland@redhat.com>
5846         * sysdeps/posix/waitid.c (do_waitid) [DO_WAITID]: Define function
5847         under this macro name instead.
5848         [NO_DO_WAITID]: Don't define it at all.
5849         (do_waitid) [WNOWAIT, WEXITED]: If these POSIX.1 waitid flag bits are
5850         defined, then return ENOTSUP for combinations of selection bits other
5851         than WEXITED and WEXITED|WSTOPPED, which this version cannot support.
5853         * posix/tst-waitid.c: New file.
5854         * posix/Makefile (tests): Add it.
5856 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
5858         * sysdeps/unix/alpha/sysdep.h (inline_syscall6): Fix a typo.
5860         [BZ #231]
5861         * sysdeps/unix/alpha/sysdep.S (__syscall_error): Avoid !samegp
5862         relocation in librt.so.
5864         [BZ #230]
5865         * sysdeps/alpha/dl-machine.h (_dl_start_user): Use ldah/ldl to load
5866         _dl_skip_args.  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
5868 2004-06-27  Ulrich Drepper  <drepper@redhat.com>
5870         * elf/ldconfig.c (add_dir): Take chroot into account.
5871         Based on changes by HJ Lu and Hideki Iwamoto.
5873         * nscd/connections.c (invalidate_cache): If the host cache has to
5874         be invalidated, re-read resolv.conf.
5876         * resolv/resolv.h (RES_NOIP6DOTINT): Define.
5877         * resolv/res_init.c (res_setoptions): Handle no-ip6-dotint option.
5878         * resolv/gethnamaddr.c (gethostbyaddr): Don't lookup with .ip6.int
5879         if RES_NOIP6DOTINT flag is set.
5880         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
5882 2004-06-25  Jakub Jelinek  <jakub@redhat.com>
5884         * sysdeps/unix/sysv/linux/powerpc/fcntl.c: Move to...
5885         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fcntl.c: ... here.
5886         * sysdeps/unix/sysv/linux/powerpc/lockf64.c: Move to...
5887         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lockf64.c: ... here.
5888         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: New file.
5890         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_GETLK, F_SETLK,
5891         F_SETLKW): Fix values for -m32 -D_FILE_OFFSET_BITS=64.
5893 2004-06-21  Jakub Jelinek  <jakub@redhat.com>
5895         [BZ #231]
5896         * sysdeps/unix/alpha/Makefile: New file.
5897         * sysdeps/unix/alpha/rt-sysdep.S: New file.
5898         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
5900 2004-06-18  Ulrich Drepper  <drepper@redhat.com>
5902         * sysdeps/posix/getaddrinfo.c (gaih_inet): For AI_CANONNAME,
5903         determine the canonical name only for the first returned entry.
5905         * inet/bug-if1.c: New file.
5906         * inet/Makefile (tests): Add bug-if1.
5908 2004-06-18  Roland McGrath  <roland@frob.com>
5910         * Makerules (compile-mkdep-flags): Add -MT $@.
5912         * Makefile (dist, tag-for-dist): New targets.
5913         (files-for-dist, tag-of-stem): New variables.
5914         (glibc-%.tar glibc-linuxthreads-%.tar): New pattern rule.
5915         Make tar files using cvs export.
5916         (%.bz2, %.gz, tag-%): New pattern rules.
5917         (distribute): Variable removed.
5918         (+subdir_targets): Remove distinfo targets.
5919         (echo_subdirs, echo-distinfo, parent_echo-distinfo): Targets removed.
5920         (rpm/%): Pattern rule removed.
5921         * rpm/Makefile, rpm/rpmrc, rpm/template: Ancient cruft files removed.
5922         * Rules (subdir_echo-headers, subdir_echo-distinfo, subdir_dist):
5923         Targets removed.
5924         * Makerules (dist, subdir_distinfo): Targets removed.
5925         ($(objpfx)distinfo): Depend on $(distribute).
5926         * Make-dist: File removed.
5928         * NEWS: Fix a typo.  Update bug-reporting instructions.
5930 2004-06-17  Thorsten Kukuk  <kukuk@suse.de>
5932         * sysdeps/unix/sysv/linux/sched_setaffinity.c
5933         (__sched_setaffinity_new): Set errno to EINVAL and return -1 if
5934         cpuset is wrongly set.
5936 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
5938         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
5939         for POWER4 machines.
5941 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
5943         [BZ #218]
5944         * sunrpc/pmap_prot2.c (xdr_pmaplist): When freeing, remember pml_next
5945         in a local variable, point rp to that local variable afterwards.
5947 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
5949         * sysdeps/ieee754/dbl-64/e_sqrt.c (__ieee754_sqrt): Handle special
5950         cases properly.
5952 2004-06-17  Ulrich Drepper  <drepper@redhat.com>
5954         * sysdeps/unix/sysv/linux/if_index.c (if_indextoname): Correct
5955         error value for unknown interface. [BZ #198]
5957 2004-06-13  Jakub Jelinek  <jakub@redhat.com>
5959         * sysdeps/i386/bits/string.h (memcpy): Add () around arguments.
5960         (memchr, __memrchr, strlen, strcmp, strncmp, __strchr_g, __strchr_c,
5961         __strchrnul_g, __strchrnul_c, strspn, strcspn, strpbrk): Add memory
5962         the asm uses as its input, either of size __n where __n is known or
5963         0xfffffff.
5964         (strstr): Add "memory" clobber.
5966 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
5968         [BZ #219]
5969         * nss/nsswitch.c (free_mem): Don't try to close a library handle
5970         if the handle is invalid.  Patch by David Kimdon <kimdon@esrf.fr>.
5972 2004-06-11  Dmitry V. Levin  <ldv@altlinux.org>
5974         [BZ #217]
5975         * debug/xtrace.sh: Fix typo in error diagnostics.
5977 2004-06-14  Andreas Schwab  <schwab@suse.de>
5979         * stdio-common/psignal.c (psignal): Don't use BUF when asprintf
5980         failed.
5982 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
5984         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Fix pasto
5985         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
5986         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Fix pasto
5987         that clobbers r19.
5988         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Fix pasto
5989         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
5990         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S:
5991         Fix setting of sigcontext.v_regs.  Fix pasto that clobbers r19.
5992         Fix pasto that overflowed sigcontext.v_reserve.
5993         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S:
5994         Fix pasto that clobbers r19.
5995         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Fix setting
5996         of sigcontext.v_regs.  Fix pasto that clobbers r19.  Fix pasto that
5997         overflowed sigcontext.v_reserve.
5999 2004-05-04  H.J. Lu  <hongjiu.lu@intel.com>
6001         [BZ #150]
6002         * sysdeps/generic/strtol_l.c (DEF): Use ".gnu.linkonce.r."
6003         instead of ".gnu.linkonce.ro." as the prefix for linkonce
6004         read-only section name.
6006 2004-06-14  Richard Henderson  <rth@redhat.com>
6008         * sysdeps/alpha/div_libc.h (_ITOFS): Use "sp" not "$sp".
6009         (_ITOFT, _FTOIT, _ITOFT2): Likewise.
6011 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
6013         * sysdeps/s390/s390-32/backtrace.c (init): Guard with #ifdef SHARED.
6014         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
6015         (__backtrace): Don't call init #ifndef SHARED.
6016         * sysdeps/s390/s390-64/backtrace.c (init): Guard with #ifdef SHARED.
6017         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
6018         (__backtrace): Don't call init #ifndef SHARED.
6019         * sysdeps/ia64/backtrace.c (init): Guard with #ifdef SHARED.
6020         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
6021         (__backtrace): Don't call init #ifndef SHARED.
6023 2004-06-11  Roland McGrath  <roland@redhat.com>
6025         * sysdeps/arm/strlen.S [__ARMEB__]: Compute correctly for big-endian.
6026         From Krzysztof Halasa <khc@pm.waw.pl>.
6028 2004-06-10  Jakub Jelinek  <jakub@redhat.com>
6030         * elf/tls-macros.h [__s390x__] (TLS_LD, TLS_GD): Clobber also r14.
6032 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
6034         [BZ #199]
6035         * crypt/md5-crypt.c (__md5_crypt): Only update buflen if realloc
6036         succeeds.  Reported by Miles Ohlrich <miles@cray.com>.
6038         * elf/chroot_canon.c (chroot_canon): Avoid segfault if first malloc
6039         fails.  Avoid memory leak if realloc fails.
6041 2004-06-09  Jakub Jelinek  <jakub@redhat.com>
6043         * sysdeps/generic/setenv.c (setenv): Return -1/EINVAL if name is
6044         NULL, "" or contains '=' character in it.  Reported by
6045         Michael T Kerrisk <mtk-lists@gmx.net>.
6046         * stdlib/tst-environ.c: Include errno.h.
6047         (main): Add tests for these arguments to setenv/unsetenv.
6049 2004-06-07  Roland McGrath  <roland@frob.com>
6051         * NEWS: Update bug reporting instructions.  Fix some typos.
6053 2004-06-05  Ulrich Drepper  <drepper@redhat.com>
6055         * stdio-common/_itoa.h: Don't expand _itoa inline for libc.
6056         * stdio-common/_itoa.c: Add _itoa implementation.
6058         * nscd/nscd_gethst_r.c (__nscd_open_socket): Change implementation
6059         to also send request.  Add parameter to allow this.
6060         Change callers.
6061         * nscd/nscd_getgr_r.c: Change __nscd_open_socket caller.
6062         * nscd/nscd_getpw_r.c: Likewise.
6063         * nscd/nscd-client.h: Change __nscd_open_socket prototype.
6065 2004-06-05  Andreas Jaeger  <aj@suse.de>
6067         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
6068         Handle more than 6 args correctly.  Based on a patch by Masahide
6069         Washizawa <washi@jp.ibm.com>.
6071 2004-06-04  Ulrich Drepper  <drepper@redhat.com>
6073         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use __nss_not_use_nscd_hosts
6074         in all places, not __nss_not_use_nscd_group.
6075         Reported by Philippe Gregoire.
6077 2004-06-03  Ulrich Drepper  <drepper@redhat.com>
6079         * sysdeps/i386/i486/bits/atomic.h: Optimize a bit.
6081 2004-05-07  Dmitry V. Levin  <ldv@altlinux.org>
6083         * argp/argp-help.c (__argp_error, __argp_failure): Check result
6084         of __asprintf call and don't use string if it failed.
6085         * stdio-common/psignal.c (psignal): Likewise.
6086         * locale/programs/localedef.c (more_help): Likewise.
6087         * resolv/res_hconf.c (arg_service_list, arg_trimdomain_list,
6088         arg_bool, parse_line): Check result of __asprintf calls and
6089         don't use string if they failed.
6090         * sunrpc/svc_simple.c (registerrpc, universal): Likewise.
6091         * elf/ldconfig.c (parse_conf_include): Check result of __asprintf
6092         call and exit if it failed.
6094 2004-05-10  Jakub Jelinek  <jakub@redhat.com>
6096         * sysdeps/posix/sysconf.c (__sysconf) <cases _SC_REALTIME_SIGNALS,
6097         _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
6098         _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES,
6099         _SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION,
6100         _SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS,
6101         _SC_THREADS, _SC_THREAD_SAFE_FUNCTIONS, _SC_THREAD_ATTR_STACKADDR,
6102         _SC_THREAD_ATTR_STACKSIZE, _SC_THREAD_PRIORITY_SCHEDULING,
6103         _SC_THREAD_PRIO_INHERIT, _SC_THREAD_PRIO_PROTECT,
6104         _SC_THREAD_PROCESS_SHARED>: Return _POSIX_* value instead of 1.
6105         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf)
6106         <case _SC_MONOTONIC_CLOCK>: Return _POSIX_VERSION instead of 1.
6108 2004-05-07  Jeroen Dekkers  <jeroen@dekkers.cx>
6110         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Add
6111         -momit-leaf-frame-pointer.
6113         * inet/test-ifaddrs.c (addr_string): Surround AF_PACKET case with
6114         #ifdef AF_PACKET.
6116         * sysdeps/mach/hurd/getcwd.c
6117         (_hurd_canonicalize_directory_name_intern): Only realloc when
6118         size is <= 0.
6120         * sysdeps/mach/hurd/mmap.c (__mmap): Fail when addr or offset
6121         isn't page aligned.
6123         * sysdeps/mach/hurd/spawni.c (EXPAND_DTABLE): Set dtablesize to
6124         new size.
6126         * sysdeps/mach/hurd/Versions (GLIBC_PRIVATE): Add __libc_read,
6127         __libc_write and __libc_lseek64.
6129 2004-05-29  Roland McGrath  <roland@redhat.com>
6131         * elf/Makefile (shared-only-routines): Add dl-caller.
6133 2004-05-28  Ulrich Drepper  <drepper@redhat.com>
6135         * sysdeps/powerpc/configure.in: New file.
6137 2004-05-28  Steven Munroe  <sjmunroe@us.ibm.com>
6139         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Add .machine
6140         "altivec" to enable VMX instructions.
6141         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
6142         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
6143         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
6144         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
6145         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
6146         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
6147         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
6148         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
6149         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
6151 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
6153         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Define using
6154         __builtin_expm1l for GCC 3.5+.
6155         (__expl): Define using __builtin_expl for GCC 3.4+.
6156         (exp, expf, expl): Don't define for GCC 3.4+.
6157         (tan, tanf, tanl): Don't define for GCC 3.5+.
6158         (__atan2l): Define using __builtin_atan2l for GCC 3.4+.
6159         (atan2, atan2f, atan2l): Don't define for GCC 3.4+ or !__FAST_MATH__.
6160         (fmod, fmodf, fmodl): Don't define for GCC 3.5+ or !__FAST_MATH__.
6161         (fabsf, fabsl): Only provide if __USE_MISC or __USE_ISOC99.
6162         (sin, sinf, sinl, cos, cosf, cosl, log, logf, logl): Don't define
6163         for GCC 3.4+.
6164         (log10, log10f, log10l, asin, asinf, asinl, acos, acosf, acosl):
6165         Don't define for GCC 3.5+.
6166         (atan, atanf, atanl): Don't define for GCC 3.4+ or !__FAST_MATH__.
6167         (log1p, log1pf, log1pl, logb, logbf, logbl, log2, log2f, log2l): Don't
6168         define for GCC 3.5+.
6169         (drem, dremf, dreml): Don't define for GCC 3.5+ or !__FAST_MATH__.
6170         * sysdeps/sparc/fpu/bits/mathinline.h (sqrt, sqrtf, sqrtl): Don't
6171         define for GCC 3.2+.
6173 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
6175         * string/bits/string2.h (__bzero): Define even for GCC 3.0+.
6176         * sysdeps/alpha/stpcpy.S (stpcpy): Add libc_hidden_builtin_def.
6177         * sysdeps/alpha/alphaev67/stpcpy.S (stpcpy): Likewise.
6178         * sysdeps/powerpc/powerpc32/stpcpy.S (stpcpy): Likewise.
6179         * sysdeps/powerpc/powerpc64/stpcpy.S (stpcpy): Likewise.
6180         * sysdeps/sparc/sparc32/stpcpy.S (stpcpy): Likewise.
6181         * sysdeps/sparc/sparc64/stpcpy.S (stpcpy): Likewise.
6182         * sysdeps/i386/stpcpy.S (stpcpy): Likewise.
6183         * sysdeps/i386/i586/stpcpy.S (stpcpy): Likewise.
6184         * sysdeps/generic/stpcpy.c (stpcpy): Likewise.
6185         * sysdeps/x86_64/stpcpy.S (stpcpy): Likewise.
6186         * sysdeps/i386/i586/memcpy.S (memcpy): Remove
6187         libc_hidden_builtin_def if MEMPCPY_P.
6188         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
6189         * sysdeps/i386/i686/mempcpy.S (mempcpy): Add libc_hidden_builtin_def.
6190         * sysdeps/i386/i586/mempcpy.S (mempcpy): Likewise.
6191         * sysdeps/generic/mempcpy.c (mempcpy): Likewise.
6192         * sysdeps/x86_64/mempcpy.S (mempcpy): Likewise.
6194 2004-05-26  Roland McGrath  <roland@frob.com>
6196         * sysdeps/generic/bits/in.h
6197         (IMPLINK_IP, IMPLINK_LOWEXPER, IMPLINK_HIGHEXPER): Macros removed.
6198         These are long obsolete in BSD systems where they originated.
6199         * conform/data/netinet/in.h-data: Remove `allow IMPLINK_*'
6201 2004-05-26  Jakub Jelinek  <jakub@redhat.com>
6203         * include/string.h (mempcpy, stpcpy): Add libc_hidden_builtin_proto.
6204         * string/bits/string2.h (memset): Disable macro for GCC 3.0+.
6205         (__mempcpy): Use __builtin_mempcpy for GCC 3.4+.
6206         (strchr): For GCC 3.2+, only use __rawmemchr if second argument is
6207         constant '\0' and first argument is not constant.
6208         (__stpcpy): Use __builtin_stpcpy for GCC 3.4+.
6209         (strncpy): Remove #ifdef _USE_STRING_ARCH_mempcpy variant.
6210         For GCC 3.2+ use __builtin_strncpy.
6211         (strncat): For GCC 3.2+ use __builtin_strncat.
6212         (strcmp): For GCC 3.2+ use __builtin_strcmp if both arguments are
6213         constant.
6214         (strcspn, strspn, strpbrk): For GCC 3.2+, use builtin function
6215         if both arguments are constant.
6217 2004-05-26  Ulrich Drepper  <drepper@redhat.com>
6219         * nss/nss_files/files-hosts.c: Fix condition for looking up IPv4
6220         mapped addresses in gethostbyaddr.
6222 2004-05-25  Ulrich Drepper  <drepper@redhat.com>
6224         * nss/digits_dots.c (__nss_hostname_digits_dots): Remove typep and
6225         flags parameter, convert afp to simple int parameter.  Adjust code.
6226         typep was never != NULL and flags therefore also unused.  *afp is
6227         never modified.
6228         * nss/nsswitch.h: Adjust __nss_hostname_digits_dots prototype.
6229         * nss/getXXbyYY.c: Remove HAVE_TYPE handling.  Adjust af parameter
6230         handling for __nss_hostname_digits_dots calls.
6231         * nss/getXXbyYY_r.c: Likewise.
6233         * elf/dl-load.c (_dl_map_object_from_fd): Map DSOs with MAP_DENYWRITE.
6235 2004-05-25  Steven Munroe  <sjmunroe@us.ibm.com>
6237         * sysdeps/powerpc/fpu/Makefile: Make ld.so a dependency of libm.so.
6238         * sysdeps/powerpc/fpu/bits/mathinline.h [__LIBC_INERNAL_MATH_INLINES]
6239         (__ieee754_sqrt): Define as __MATH_INLINE using fsqrt instruction.
6240         (__ieee754_sqrtf): Define as __MATH_INLINE using fsqrts instruction.
6241         * sysdeps/powerpc/fpu/e_sqrt.c (__slow_ieee754_sqrt): Moved
6242         implementation from w_sqrt.c.
6243         * sysdeps/powerpc/fpu/e_sqrtf.c (__slow_ieee754_sqrtf): Moved
6244         implementation from w_sqrtf.c.
6245         * sysdeps/powerpc/fpu/w_sqrt.c (__sqrt): Wrapper implementation
6246         using inline __ieee754_sqrt().
6247         * sysdeps/powerpc/fpu/w_sqrtf.c (__sqrtf): Wrapper implementation
6248         using inline __ieee754_sqrtf().
6249         * sysdeps/powerpc/powerpc32/sysdep.h [__ASSEMBLER__]: Include
6250         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
6251         * sysdeps/powerpc/sysdep.h [__ASSEMBLER__] (PPC_FEATURE_*): Define
6252         PPC_FEATURE_*  independent of __ASSEMBLER__.
6254 2004-05-25  Jakub Jelinek  <jakub@redhat.com>
6256         * sysdeps/pthread/aio_notify.c: Use <> instead of "" for aio_misc.h
6257         include.
6258         (aio_start_notify_thread): Define if not defined.
6259         (notify_func_wrapper): Use it.
6260         * sysdeps/pthread/aio_misc.c: Use <> instead of "" for aio_misc.h
6261         include.
6262         (aio_create_helper_thread): Define if not defined.
6263         (__aio_create_helper_thread): New function.
6264         (__aio_enqueue_request): Use aio_create_helper_thread.
6266         * nis/ypclnt.c (ypall_data, ypall_foreach): Remove.
6267         (struct ypresp_all_data): New type.
6268         (__xdr_ypresp_all): Change second argument to
6269         struct ypresp_all_data *.  Replace ypall_foreach and
6270         ypall_data with objp->foreach and objp->data.
6271         (yp_all): Remove status variable, add data.  Replace
6272         all uses of status with data.status.  Initialize data.foreach
6273         and data.data instead of ypall_foreach and ypall_data.
6275 2004-05-24  Jakub Jelinek  <jakub@redhat.com>
6277         * elf/dl-lookup.c (add_dependency): Set DF_1_NODELETE bit
6278         in l_flags_1, not in l_flags.
6280 2004-04-10  Robert Millan  <robertmh@gnu.org>
6282         * sysdeps/unix/sysv/linux/bits/in.h: Cosmetic fixes to get in sync
6283         with sysdeps/generic/bits/in.h.
6285 2004-05-25  Roland McGrath  <roland@frob.com>
6287         * sysdeps/generic/unwind-dw2-fde-glibc.c: Change copyright terms from
6288         GCC GPL to standard glibc LGPL.
6290 2004-05-24  Ulrich Drepper  <drepper@redhat.com>
6292         * manual/string.texi (Copying and Concatenation): Fixed second
6293         concat example.
6294         Reported by Fabian Pietsch <fabian@zzznowman.dyndns.org>.
6296 2004-05-23  Ulrich Drepper  <drepper@redhat.com>
6298         * malloc/obstack.c: Don't allow linking with _obstack.
6300 2004-05-23  Andreas Schwab  <schwab@suse.de>
6302         * sysdeps/m68k/m68020/bits/atomic.h: Use "+m" constraint instead
6303         of separate "m" constraints.
6305 2004-05-15  Chris Demetriou  <cgd@broadcom.com>
6307         * sysdeps/mips/dl-machine.h (ELF_DL_FRAME_SIZE)
6308         (ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS): For the N32
6309         and 64 ABIs, save and restore regs $10 and $11 (a6 and a7).
6311 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
6313         * malloc/obstack.c (_obstack) [!defined _LIBC]: Remove; not used.
6314         Add comment explaining why libc still defines it.
6316 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
6318         * malloc/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
6319         obstack_alignment_mask, obstack_alloc, obstack_base,
6320         obstack_blank, obstack_blank_fast, obstack_chunk_size,
6321         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
6322         obstack_grow0, obstack_init, obstack_int_grow,
6323         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
6324         obstack_next_free, obstack_object_size, obstack_ptr_grow,
6325         obstack_ptr_grow_fast, obstack_room): Remove declarations of
6326         nonexistent functions.
6328 2004-05-18  Steven Munroe  <sjmunroe@us.ibm.com>
6330         * sysdeps/powerpc/powerpc64/sysdep.h [__ASSEMBLER__]: Include
6331         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
6332         [PIC]: Redundent for powerpc64, removed.
6333         (ENTRY): Generate size and alignment for opd entry.
6334         (EALIGN): Generate size and alignment for opd entry.
6335         (END): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
6336         (END_GEN_TB): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
6338 2004-05-19  Ulrich Drepper  <drepper@redhat.com>
6340         * misc/regexp.h: Say the functions have been withdrawn.
6342         * wcsmbs/tst-wcpncpy.c: Add more tests.
6344 2004-05-18  Roland McGrath  <roland@frob.com>
6346         * sysdeps/generic/unwind.h: Change copyright terms from GCC GPL to
6347         standard glibc LGPL.
6348         * sysdeps/generic/unwind-dw2.c: Likewise.
6349         * sysdeps/generic/unwind-dw2-fde.c: Likewise.
6350         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
6351         * sysdeps/generic/unwind-pe.h: Likewise.
6353 2004-05-15  Petter Reinholdtsen  <pere@hungry.com>
6355         * locale/iso-3166.def: Remove YUGOSLAVIA and insert "SERBIA AND
6356         MONTENEGRO" which have taken over the code 819.  Patch from
6357         Danilo Segan. [BZ #40]
6359 2004-05-15  Jakub Jelinek  <jakub@redhat.com>
6361         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
6362         (SYSCALL_ERROR_HANDLER): Rename __sparc.get_pic.l7 to
6363         __sparc_get_pic_l7.
6365 2004-05-15  Joseph S. Myers  <jsm@polyomino.org.uk>
6367         * catgets/gencat.c: Update bug reporting instructions.
6368         * csu/version.c: Likewise.
6369         * debug/catchsegv.sh: Likewise.
6370         * debug/pcprofiledump.c: Likewise.
6371         * debug/xtrace.sh: Likewise.
6372         * elf/ldd.bash.in: Likewise.
6373         * iconv/iconv_prog.c: Likewise.
6374         * iconv/iconvconfig.c: Likewise.
6375         * locale/programs/locale.c: Likewise.
6376         * locale/programs/localedef.c: Likewise.
6377         * login/programs/pt_chown.c: Likewise.
6378         * malloc/memusage.sh: Likewise.
6379         * malloc/memusagestat.c: Likewise.
6380         * malloc/mtrace.pl: Likewise.
6381         * manual/crypt.texi: Likewise.
6382         * manual/install.texi: Likewise.
6383         * nss/makedb.c: Likewise.
6385 2004-05-14  Jakub Jelinek  <jakub@redhat.com>
6387         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Only
6388         CHECK_STATIC_TLS if sym != NULL.
6389         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
6390         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
6392 2004-05-12  Andreas Schwab  <schwab@suse.de>
6394         * posix/regex_internal.c (build_wcs_buffer): Also set pstr->mbs
6395         when translating.
6397 2004-05-13  H.J. Lu  <hongjiu.lu@intel.com>
6399         * Rules (xtests): Depend on tests.
6401 2004-05-13  Jakub Jelinek  <jakub@redhat.com>
6403         * libio/genops.c (_IO_default_xsputn): Avoid one overflow per char if
6404         count is negative, yet write_ptr < write_end.
6405         (_IO_default_xsgetn): Avoid one underflow per char if count is
6406         negative, yet read_ptr < read_end.
6408 2004-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
6410         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h (XTABS): Define XTABS
6411         equal to TAB3.
6413 2004-05-12  Ulrich Drepper  <drepper@redhat.com>
6415         * elf/dl-lookup.c (_dl_lookup_symbol_x): Correct _dl_signal_cerror
6416         call.
6418 2004-05-10  Roland McGrath  <roland@frob.com>
6420         * hurd/hurdlookup.c (__hurd_file_name_split): Return ENOENT for "".
6421         (__hurd_directory_name_split): Likewise.
6423 2004-05-10  Ulrich Drepper  <drepper@redhat.com>
6425         * po/fr.po: Update from translation team.
6427 2004-05-10  Andreas Jaeger  <aj@suse.de>
6429         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
6430         Correctly compute alignment.
6431         Patch by Michael Matz <matz@suse.de>.
6433 2004-05-09  Ulrich Drepper  <drepper@redhat.com>
6435         * sysdeps/generic/sigpause.c: Prevent sigpause prototype.
6436         * sysdeps/posix/sigpause.c: Likewise.
6437         * signal/signal.h: Don't define sigpause macro unless needed.
6439 2004-05-08  Jakub Jelinek  <jakub@redhat.com>
6441         * configure.in (libc_cv_libgcc_s_suffix): New check.
6442         (libc_cv_as_needed): Use -lgcc_s$libc_cv_libgcc_s_suffix.
6443         * config.make.in (libgcc_s_suffix): Set.
6444         * Makeconfig (libgcc_eh): Use -lgcc_s$(libgcc_s_suffix).
6446 2004-05-08  Ulrich Drepper  <drepper@redhat.com>
6448         * signal/signal.h: Use BSD sigpause only if BSD behavior is preferred.
6450 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
6452         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_1,
6453         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
6454         Load argument values into temporary variables.
6455         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_1,
6456         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
6457         Likewise.
6459 2004-05-07  Ulrich Drepper  <drepper@redhat.com>
6461         * sysdeps/unix/sysv/linux/Makefile: mq_send.c and mq_receive.c
6462         need to be compiled with exceptions.
6464 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
6466         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Fix memory handling.
6467         * sysdeps/generic/ifreq.c (__ifreq): Fix memory handling.
6469         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Make clear that
6470         realloc cannot fail.
6472         * nss/nss_files/files-netgrp.c (EXPAND): Free buffer which cannot
6473         be expanded.
6475         * nis/nis_table.c: Clean up memory handling.
6476         * nis/nis_subr.c (nis_getnames): Clean up memory handling.
6477         * nis/nis_removemember.c (nis_removemember): Add comment
6478         explaining use of realloc.
6480         * math/tgmath.h (fabs): Use __TGMATH_UNARY_REAL_IMAG_RET_REAL.
6481         (carg): Likewise.
6482         Patch by Lev S Bishop <lev.bishop@yale.edu>.
6484         * math/bug-tgmath1.c (main): Test fabs and carg as well.
6486 2004-05-06  Richard Henderson  <rth@redhat.com>
6488         * elf/elf.h (AT_L1I_CACHESHAPE, AT_L1D_CACHESHAPE,
6489         AT_L2_CACHESHAPE, AT_L3_CACHESHAPE): New.
6490         * sysdeps/unix/sysv/linux/alpha/Versions: Export
6491         __libc_alpha_cache_shape as a private symbol.
6492         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c: New file.
6493         * sysdeps/unix/sysv/linux/alpha/sysconf.c: New file.
6495 2004-05-06  Richard Henderson  <rth@redhat.com>
6497         * sysdeps/alpha/div_libc.h (_ITOFS, _ITOFT, _FTOIT, _ITOFT2): New.
6498         * sysdeps/alpha/divl.S: Use them.
6499         * sysdeps/alpha/divq.S: Likewise.
6500         * sysdeps/alpha/divqu.S: Likewise.
6501         * sysdeps/alpha/reml.S: Likewise.
6502         * sysdeps/alpha/remq.S: Likewise.
6503         * sysdeps/alpha/remqu.S: Likewise.
6505 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
6507         * math/tgmath.h (__TGMATH_UNARY_REAL_IMAG_RET_REAL):Define.
6508         (cimag): Use it.
6509         (creal): Likewise.
6510         * math/Makefile (tests): Add bug-tgmath1.
6511         * math/bug-tgmath1.c: New file.
6513 2004-05-05  Jakub Jelinek  <jakub@redhat.com>
6515         * sysdeps/alpha/atomicity.h: Remove.
6516         * sysdeps/generic/atomicity.h: Remove.
6518 2004-05-05  H.J. Lu  <hongjiu.lu@intel.com>
6520         * sysdeps/i386/i486/bits/string.h (strpbrk): Cast return to
6521         char *.
6523 2004-04-22  David Mosberger  <davidm@hpl.hp.com>
6525         * sysdeps/unix/sysv/linux/ia64/Makefile (librt-routines): Mention
6526           rt-sysdep.
6527         * sysdeps/unix/sysv/linux/ia64/rt-sysdep.S: New file.
6529         * sysdeps/ia64/strcat.c: New file.
6530         * sysdeps/ia64/strcat.S: Delete.
6532 2004-05-04  Jakub Jelinek  <jakub@redhat.com>
6534         * sysdeps/unix/sysv/linux/ia64/sysdep.S (USE___THREAD): Remove
6535         defined.
6537 2004-04-23  Jakub Jelinek  <jakub@redhat.com>
6539         * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Add
6540         libc_hidden_proto.  Define to __GI___libm_error_support for
6541         assembly going into libc.so.
6542         * sysdeps/ia64/fpu/libc_libm_error.c (__libm_error_support): Add
6543         libc_hidden_def.
6545         * include/libc-symbols.h (HIDDEN_BUILTIN_JUMPTARGET): Define.
6546         * sysdeps/ia64/bcopy.S (bcopy): Use it for jump to memmove.
6548         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Access
6549         gprel errno if RTLD_PRIVATE_ERRNO or __thread __libc_errno/errno
6550         if USE___THREAD.
6552 2004-05-03  Jakub Jelinek  <jakub@redhat.com>
6554         * sysdeps/unix/bsd/bits/fcntl.h (F_SETOWN, F_GETOWN): Define if
6555         __USE_BSD or __USE_UNIX98.
6556         * sysdeps/unix/bsd/ultrix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
6557         * sysdeps/unix/bsd/bsd4.4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
6558         * sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h (F_SETOWN, F_GETOWN):
6559         Likewise.
6560         * sysdeps/unix/common/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
6561         * sysdeps/unix/sysv/aix/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
6562         * sysdeps/unix/sysv/irix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
6563         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (F_SETOWN, F_GETOWN):
6564         Likewise.
6565         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_SETOWN, F_GETOWN):
6566         Likewise.
6567         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (F_SETOWN, F_GETOWN):
6568         Likewise.
6569         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (F_SETOWN, F_GETOWN):
6570         Likewise.
6571         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (F_SETOWN, F_GETOWN):
6572         Likewise.
6573         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (F_SETOWN, F_GETOWN):
6574         Likewise.
6575         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (F_SETOWN, F_GETOWN):
6576         Likewise.
6577         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (F_SETOWN, F_GETOWN):
6578         Likewise.
6579         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (F_SETOWN, F_GETOWN):
6580         Likewise.
6581         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (F_SETOWN, F_GETOWN):
6582         Likewise.
6583         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (F_SETOWN, F_GETOWN):
6584         Likewise.
6585         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (F_SETOWN, F_GETOWN):
6586         Likewise.
6587         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_SETOWN, F_GETOWN):
6588         Likewise.
6589         * sysdeps/generic/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
6590         * sysdeps/mach/hurd/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
6591         * io/sys/stat.h (S_ISSOCK, S_IFSOCK): Likewise.
6593 2004-05-01  Jakub Jelinek  <jakub@redhat.com>
6595         * posix/Versions (libc): Remove __libc_wait, __libc_waitpid,
6596         __libc_pause, __libc_nanosleep, __libc_pread, __libc_pread64,
6597         __libc_pwrite64, __waitid and __pselect @@GLIBC_PRIVATE.
6598         * stdlib/Versions (libc): Remove __on_exit@@GLIBC_PRIVATE.
6599         * sysdeps/unix/sysv/linux/Versions (libc): Remove
6600         __libc_sigaction@@GLIBC_PRIVATE.
6601         * sysdeps/unix/sysv/linux/x86_64/Versions (libc): Remove
6602         __modify_ldt@@GLIBC_PRIVATE.
6603         * socket/Versions (libc): Remove __libc_accept, __libc_send,
6604         __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv,
6605         __libc_sendto and __libc_connect @@GLIBC_PRIVATE.
6606         * stdio-common/Versions (libc): Remove
6607         _itoa_upper_digits@@GLIBC_PRIVATE.
6608         * resolv/Versions (libresolv): Remove __ns_samename@@GLIBC_PRIVATE.
6609         * misc/Versions (libc): Remove __libc_fsync, __libc_msync,
6610         __libc_readv and __libc_writev @@GLIBC_PRIVATE.
6611         * termios/Versions (libc): Remove __libc_tcdrain@@GLIBC_PRIVATE.
6612         * io/Versions (libc): Remove __libc_open, __libc_close, __libc_read,
6613         __libc_write, __libc_lseek, __libc_fcntl, __libc_open64 and
6614         __libc_lseek64 @@GLIBC_PRIVATE.
6616 2004-04-30  Jakub Jelinek  <jakub@redhat.com>
6618         * elf/dl-load.c (open_verify): Move e_phentsize check after e_type
6619         check.
6621 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
6623         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: New file.
6624         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: New file.
6625         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: New file.
6626         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: New file.
6627         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: Removed.
6628         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: New file.
6629         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: Removed.
6630         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: New file.
6631         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: New file.
6632         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: New file.
6633         * sysdeps/powerpc/powerpc64/fpu/s_lround.S: New file.
6634         * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: New file.
6635         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: New file.
6636         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: New file.
6637         * sysdeps/powerpc/powerpc64/fpu/s_round.S: New file.
6638         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: New file.
6639         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: New file.
6640         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: New file.
6642         * math/test-misc.c [LDBL_MANT_DIG == 106](main): Correct LDBL_MAX
6643         mantissa for AIX long double format.
6644         * misc/qefgcvt.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Define for AIX
6645         long double format.
6646         * misc/qefgcvt_r.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Likewise.
6647         * stdlib/fpioconst.c [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
6648         (_fpioconst_pow10): AIX long double format has same exponent range as
6649         double.
6650         * stdlib/fpioconst.h [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
6651         (LDBL_MAX_10_EXP_LOG): AIX long double format has same exponent range
6652         as double.
6654 2004-04-23  Art Haas  <ahaas@airmail.net>
6656         * sysdeps/unix/sysv/linux/kernel-features.h: Add 'defined'.
6658 2004-04-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
6660         * sysdeps/unix/sysv/linux/mq_getattr.c: Include <stddef.h>.
6661         * sysdeps/unix/sysv/linux/mq_notify.c: Likewise.
6662         * sysdeps/unix/sysv/linux/mq_open.c: Likewise.
6663         * sysdeps/unix/sysv/linux/mq_receive.c: Likewise.
6664         * sysdeps/unix/sysv/linux/mq_send.c: Likewise.
6666 2004-04-29  Philip Blundell  <pb@nexus.co.uk>
6668         * sysdeps/arm/dl-machine.h (RTLD_START): Avoid unnecessary GOT
6669         entries.
6671 2004-04-29  Jakub Jelinek  <jakub@redhat.com>
6673         * manual/resource.texi (sched_setaffinity, sched_getaffinity): Fix
6674         prototypes and description [BZ #131].
6676         * string/bits/string2.h (strpbrk): Cast NULL to char * [BZ #130].
6677         Patch by Ed Catmur <ed@catmur.co.uk>.
6678         * string/tst-inlcall.c (main): Add test for strpbrk.
6680         [BZ #140]
6681         * sysdeps/unix/sysv/linux/sys/sysctl.h: Remove linux/compiler.h
6682         include.
6683         (_LINUX_KERNEL_H, _LINUX_TYPES_H, _LINUX_LIST_H): Only define if not
6684         yet defined, #undef back after including linux/sysctl.h if defined
6685         here.
6686         (__LINUX_COMPILER_H, __user): Define if not yet defined, #undef
6687         back after including linux/sysctl.h if defined here.
6689         * sysdeps/sparc/sparc64/soft-fp/qp_qtoi.c (_Qp_qtoi): Use %f31
6690         for single precision register, add it to __asm clobbers [BZ #139].
6691         * sysdeps/sparc/sparc64/soft-fp/qp_qtoui.c (_Qp_qtoui): Use %f31
6692         for single precision register, add it to __asm clobbers.
6693         * sysdeps/sparc/sparc64/soft-fp/qp_qtoux.c (_Qp_qtoux): Use fqtox
6694         instead of fqtoi in QP_HANDLE_EXCEPTIONS.
6695         * sysdeps/sparc/sparc64/soft-fp/qp_qtox.c (_Qp_qtox): Likewise.
6696         Reported by M. H. VanLeeuwen <vanl@megsinet.net>.
6698 2004-04-23  Andreas Schwab  <schwab@suse.de>
6700         * sysdeps/unix/sysv/linux/m68k/register-dump.h: Use
6701         __attribute_used__.
6703 2004-04-22  Philip Blundell  <philb@gnu.org>
6705         * sysdeps/arm/dl-machine.h (elf_machine_rela): Don't use INTUSE
6706         when calling _dl_signal_error.
6707         (elf_machine_rel): Likewise.
6709 2004-04-21  Ulrich Drepper  <drepper@redhat.com>
6711         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Define _GI___sigsetjmp
6712         and use it internally instead of __sigsetjmp.
6713         * sysdeps/ia64/fpu/s_frexpf.c (frexpf): Use _GI___libm_frexp_4f.
6714         * sysdeps/ia64/fpu/s_frexpl.c (frexpl): Use _GI___libm_frexp_4l.
6715         * sysdeps/ia64/fpu/libm_frexp4.S: Define _GI___libm_frexp_4.
6716         * sysdeps/ia64/fpu/libm_frexp4f.S: Define _GI___libm_frexp_4f.
6717         * sysdeps/ia64/fpu/libm_frexp4l.S: Define _GI___libm_frexp_4l.
6718         * sysdeps/ia64/fpu/s_frexp.c (frexp): Use _GI___libm_frexp_4.
6719         * sysdeps/ia64/fpu/libm_support.h: Declare _GI___libm_frexp_4,
6720         _GI___libm_frexp_4f, _GI___libm_frexp_4l.
6721         * sysdeps/ia64/fpu/bits/mathinline.h: New file.
6722         * sysdeps/unix/sysv/linux/ia64/__start_context.S: Use
6723         HIDDEN_JUMPTARGET for exit call.
6724         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use HIDDEN_JUMPTARGET for
6725         _exit call.
6726         * sysdeps/ia64/bcopy.S: Use HIDDEN_JUMPTARGET for memmove call.
6727         * sysdeps/ia64/strcat.S: Use HIDDEN_JUMPTARGET for strlen and
6728         strcpy calls.
6730 2004-04-21  Jakub Jelinek  <jakub@redhat.com>
6732         * posix/tst-chmod.c (do_test): Fix a typo.
6734         * elf/lateglobal.c (main): Fix error checks.
6735         Patch by Stephen Clarke <stephen.clarke@st.com>.
6737         * manual/ctype.texi (isblank, iswblank): Mark as ISO functions,
6738         mention they have been added in ISO C99.
6739         Reported by Ben Pfaff <blp@cs.stanford.edu>.
6741 2004-03-31  H.J. Lu  <hongjiu.lu@intel.com>
6743         * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: Fix typo.
6745 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
6747         * sysdeps/unix/sysv/linux/shm_open.c (shm_unlink): Change EPERM into
6748         EACCES.
6750 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
6752         * stdio-common/vfscanf.c (_IO_vfscanf): Revert last %% whitespace
6753         handling change.
6754         * stdio-common/tst-sscanf.c (int_tests): Adjust.
6756         * nis/nss-nis.c: Include stdlib.h.
6758         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Shut up a
6759         warning.
6760         * sysdeps/sparc/sparc64/memcmp.S (memcmp): Remove BP_SYM () from
6761         libc_hidden_builtin_def.
6763 2004-04-20  Jim Meyering  <jim@meyering.net>
6765         * misc/error.c (error_tail): Don't leak upon realloc failure.
6767 2004-04-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
6769         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
6770         Use RETURN_ADDRESS instead of __builtin_return_address.
6772 2004-04-19  Ulrich Drepper  <drepper@redhat.com>
6774         * sysdeps/unix/sysv/linux/mq_unlink.c: Rewrite to produce more
6775         compact code.
6777 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
6779         * stdio-common/vfscanf.c (_IO_vfscanf): When skipping whitespace,
6780         do input_error () instead of conv_error () and don't look at errno.
6781         Don't eat any whitespace before %% if skip_space == 0.
6782         * stdio-common/tst-sscanf.c (int_tests): New array.
6783         (main): Run int_tests.
6786 See ChangeLog.14 for earlier changes.