[BZ #677]
[glibc.git] / ChangeLog
blob5b62762f24d284db94be902cc67ecb6ab6e1c2e2
1 2005-02-07  Jakub Jelinek  <jakub@redhat.com>
3         * nscd/nscd.c (termination_handler): Avoid segfault if some database
4         is not enabled.
6         * nscd/nscd_getai.c (__nscd_getai): If ai_resp->found == -1, set
7         __nss_not_use_nscd_hosts and return -1.
8         * nscd/nscd_initgroups.c (__nscd_getgrouplist): If
9         initgr_resp->found == -1, set __nss_not_use_nscd_group and return -1.
10         Avoid leaking sockets.
12 2005-01-28  Andreas Schwab  <schwab@suse.de>
13             H.J. Lu  <hongjiu.lu@intel.com>
15         [BZ #677]
16         * elf/dl-runtime.c (fixup): Change return type to
17         DL_FIXUP_VALUE_TYPE. Use DL_FIXUP_VALUE_TYPE,
18         DL_FIXUP_MAKE_VALUE and DL_FIXUP_VALUE_CODE_ADDR for relocation
19         values. Use DL_FIXUP_VALUE_ADDR and DL_FIXUP_ADDR_VALUE to
20         store and retrieve relocation values.
21         (profile_fixup): Likewise.
22         * include/link.h (link_map): Use DL_FIXUP_VALUE_TYPE for
23         l_reloc_result.
24         * sysdeps/generic/dl-fptr.h (link_map): Forward declaration.
25         * sysdeps/generic/dl-lookupcfg.h (DL_FIXUP_VALUE_TYPE): New.
26         (DL_FIXUP_MAKE_VALUE): Likewise.
27         (DL_FIXUP_VALUE_CODE_ADDR): Likewise.
28         (DL_FIXUP_VALUE_ADDR): Likewise.
29         (DL_FIXUP_ADDR_VALUE): Likewise.
30         * sysdeps/ia64/dl-lookupcfg.h: Include <dl-fptr.h> for "struct fdesc".
31         (DL_FIXUP_VALUE_TYPE): New.
32         (DL_FIXUP_MAKE_VALUE): Likewise.
33         (DL_FIXUP_VALUE_CODE_ADDR): Likewise.
34         (DL_FIXUP_VALUE_ADDR): Likewise.
35         (DL_FIXUP_ADDR_VALUE): Likewise.
36         * sysdeps/ia64/dl-machine.h (elf_machine_profile_fixup_plt): Removed.
37         (elf_machine_profile_plt): Removed.
38         (elf_machine_fixup_plt): Change return type and type of value
39         parameter to struct fdesc.
40         (elf_machine_plt_value): Likewise.
41         (elf_machine_rela): Use DL_FIXUP_MAKE_VALUE to construct
42         argument for elf_machine_fixup_plt.
44 2005-02-07  Jakub Jelinek  <jakub@redhat.com>
46         * nscd/nscd.init (reload): Print Reloading nscd: before and a newline
47         after the status string printed by killproc.
49 2004-11-18  Alexandre Oliva  <aoliva@redhat.com>
51         * manual/.cvsignore: Add dir-add.texi.
53 2005-02-06  Richard Henderson  <rth@redhat.com>
55         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Use RESOLVE_MAP
56         all the time.
58 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
60         * configure.in (sysnames): Append sysdeps/generic for each add-on.
61         * configure: Regenerated.
63 2005-02-02  Alfred M. Szmidt  <ams@gnu.org>
65         * sysdeps/mach/hurd/tls.h: Include <stdbool.h>
66         (dtv_t): Change pointer type to be a struct which also contains
67         information whether the memory pointed to is static TLS or not.
69         * sysdeps/generic/syslog.c (send_flags) [!send_flags]: Define it.
71         * shadow/sgetspent_r.c (FALSE): Macro renamed to ...
72         (FALSEP): ... this.  Updated all references.
74         * libio/fmemopen.c: Include <stdint.h>.
76 2005-01-30  Ulrich Drepper  <drepper@redhat.com>
78         * nscd/nscd_helper.c (get_mapping): Use MSG_NOSIGNAL if available.
79         * nscd/connections.c (send_ro_fd): Likewise.
81 2005-01-28  H.J. Lu  <hongjiu.lu@intel.com>
83         * elf/tst-auditmod1.c: Add ia64 entries.
84         * sysdeps/generic/ldsodefs.h (La_ia64_regs): New.
85         (La_ia64_retval): New.
86         (audit_ifaces): Add ia64 entries.
87         * sysdeps/ia64/bits/link.h: New file.
88         * sysdeps/ia64/dl-machine.h (elf_machine_runtime_setup): Test
89         for dl_profile non-null.
90         (ARCH_LA_PLTENTER): New.
91         (ARCH_LA_PLTEXIT): New.
92         * sysdeps/ia64/dl-trampoline.S (_dl_runtime_resolve): Allocate
93         only 2 output registers. Allocate stack to save/restore
94         8 incoming fp registers. Call _dl_fixup instead of fixup.
95         (_dl_runtime_profile): Rewrite.
97 2005-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
99         * sysdeps/s390/bits/link.h: New file.
100         * sysdeps/s390/s390-32/dl-trampoline.S: New file.
101         * sysdeps/s390/s390-64/dl-trampoline.S: New file.
102         * sysdeps/s390/s390-32/dl-machine.h: Move PLT trampolines to
103         dl-trampoline.S. Use RESOLVE_MAP instead of RESOLVE to protect
104         relocation code.
105         (elf_machine_runtime_setup): Test for dl_profile non-null.
106         (elf_machine_rela): Remove code using RESOLVE.
107         (ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): New.
108         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
109         * sysdeps/generic/ldsodefs.h (La_s390_32_regs, La_s390_32_retval,
110         La_s390_64_regs, La_s390_64_retval): New.
111         * elf/tst-auditmod1.c: Add s390 entries.
113         * sysdeps/s390/bits/string.h (strlen, strncpy, strcat, strncat,
114         strncat, memchr, strcmp): Add missing memory clobber.
116 2005-01-27  Ulrich Drepper  <drepper@redhat.com>
118         * sysdeps/unix/sysv/linux/alpha/oldglob.c (__old_globfree): Also
119         copy gl_offs.  Patch by Sergey Tikhonov <tsv@solvo.ru>.
121 2005-01-27  Paolo Bonzini  <bonzini@gnu.org>
123         [BZ #558]
124         * posix/regcomp.c (calc_inveclosure): Return reg_errcode_t.
125         Initialize the node sets in dfa->inveclosures.
126         (analyze): Initialize inveclosures only if it is needed.
127         Check errors from calc_inveclosure.
128         * posix/regex_internal.c (re_dfa_add_node): Do not initialize
129         the inveclosure node set.
130         * posix/regexec.c (re_search_internal): If nmatch includes unused
131         subexpressions, reset them to { rm_so: -1, rm_eo: -1 } here.
133         * posix/regcomp.c (parse_bracket_exp) [!RE_ENABLE_I18N]:
134         Do build a SIMPLE_BRACKET token.
136         * posix/regexec.c (transit_state_mb): Do not examine nodes
137         where ACCEPT_MB is not set.
139 2005-01-27  Jakub Jelinek  <jakub@redhat.com>
141         * stdlib/tst-fmtmsg.c: Include stdlib.h.
142         * stdio-common/tst-fmemopen2.c: Include string.h.
143         * posix/execvp.c: Include stdbool.h.
145 2004-12-13  Paolo Bonzini  <bonzini@gnu.org>
147         Separate parsing and creation of the NFA.  Avoided recursion on
148         the (very unbalanced) parse tree.
149         [BZ #611]
150         * posix/regcomp.c (struct subexp_optimize, analyze_tree, calc_epsdest,
151         re_dfa_add_tree_node, mark_opt_subexp_iter): Removed.
152         (optimize_subexps, duplicate_tree, calc_first, calc_next,
153         mark_opt_subexp): Rewritten.
154         (preorder, postorder, lower_subexps, lower_subexp, link_nfa_nodes,
155         create_token_tree, free_tree, free_token): New.
156         (analyze): Accept a regex_t *.  Invoke the passes via the preorder and
157         postorder generic visitors.  Do not initialize the fields in the
158         re_dfa_t that represent the transitions.
159         (free_dfa_content): Use free_token.
160         (re_compile_internal): Analyze before UTF-8 optimizations.  Do not
161         include optimization of subexpressions.
162         (create_initial_state): Fetch the DFA node index from the first node's
163         bin_tree_t *.
164         (optimize_utf8): Abort on unexpected nodes, including OP_DUP_QUESTION.
165         Return on COMPLEX_BRACKET.
166         (duplicate_node_closure): Fix comment.
167         (duplicate_node): Do not initialize the fields in the
168         re_dfa_t that represent the transitions.
169         (calc_eclosure, calc_inveclosure): Do not handle OP_DELETED_SUBEXP.
170         (create_tree): Remove final argument.  All callers adjusted.  Rewritten
171         to use create_token_tree.
172         (parse_reg_exp, parse_branch, parse_expression, parse_bracket_exp,
173         build_charclass_op): Use create_tree or create_token_tree instead
174         of re_dfa_add_tree_node.
175         (parse_dup_op): Likewise.  Also free the tree using free_tree for
176         "<re>{0}", and lower OP_DUP_QUESTION to OP_ALT: "a?" is equivalent
177         to "a|".  Adjust invocation of mark_opt_subexp.
178         (parse_sub_exp): Create a single SUBEXP node.
179         * posix/regex_internal.c (re_dfa_add_node): Remove last parameter,
180         always perform as if it was 1.  Do not initialize OPT_SUBEXP and
181         DUPLICATED, and initialize the DFA fields representing the transitions.
182         * posix/regex_internal.h (re_dfa_add_node): Adjust prototype.
183         (re_token_type_t): Move OP_DUP_PLUS and OP_DUP_QUESTION to the tokens
184         section.  Add a tree-only code SUBEXP.  Remove OP_DELETED_SUBEXP.
185         (bin_tree_t): Include a full re_token_t for TOKEN.  Turn FIRST and
186         NEXT into pointers to trees.  Remove ECLOSURE.
188 2004-12-28  Paolo Bonzini  <bonzini@gnu.org >
190         [BZ #605]
191         * posix/regcomp.c (parse_bracket_exp): Do not modify DFA nodes
192         that were already created.
193         * posix/regex_internal.c (re_dfa_add_node): Set accept_mb field
194         in the token if needed.
195         (create_ci_newstate, create_cd_newstate): Set accept_mb field
196         from the tokens' field.
197         * posix/regex_internal.h (re_token_t): Add accept_mb field.
198         (ACCEPT_MB_NODE): Removed.
199         * posix/regexec.c (proceed_next_node, transit_states_mb,
200         build_sifted_states, check_arrival_add_next_nodes): Use
201         accept_mb instead of ACCEPT_MB_NODE.
203 2005-01-26  Ulrich Drepper  <drepper@redhat.com>
205         * debug/chk_fail.c (__chk_fail): Print program name in final message.
207         * sysdeps/unix/sysv/linux/kernel-features.h: Found reference to
208         MSG_NOSIGNAL being in 2.2 kernels.
210 2005-01-26  Jakub Jelinek  <jakub@redhat.com>
212         * sysdeps/unix/sysv/linux/i386/sysdep.h
213         (SYSCALL_ERROR_HANDLER_TLS_STORE): Remove unnecessary 0 imm.
215         [BZ #693]
216         * posix/regex_internal.h (DUMMY_CONSTRAINT): Rename to...
217         (WORD_DELIM_CONSTRAINT): ...this.
218         (NOT_WORD_DELIM_CONSTRAINT): Define.
219         (re_context_type): Add INSIDE_NOTWORD and NOT_WORD_DELIM,
220         change WORD_DELIM to use WORD_DELIM_CONSTRAINT.
221         * posix/regcomp.c (peek_token): For \B create NOT_WORD_DELIM
222         anchor instead of INSIDE_WORD.
223         (parse_expression): Handle NOT_WORD_DELIM constraint.
224         * posix/bug-regex19.c (tests): Adjust tests that relied on \B
225         being inside word instead of not word delim.
226         * posix/tst-rxspencer.c (mb_frob_pattern): Don't frob escaped
227         characters.
228         * posix/rxspencer/tests: Add some new tests.
230 2005-01-14  GOTO Masanori  <gotom@debian.or.jp>
232         * sunrpc/rpc_main.c (s_output): Generate #include <rpc/pmap_clnt.h>
233         irrespective of Cflag.
235         * manual/memory.texi (sbrk): Fix definition.
236         * manual/string.texi (strcasestr): Fix example typo.
238 2005-01-25  Roland McGrath  <roland@redhat.com>
240         * sysdeps/generic/syslog.c [NO_SIGPIPE]: Protect sigpipe_handler decl.
242 2005-01-23  Roland McGrath  <roland@redhat.com>
244         * sysdeps/i386/Makefile (defines): If -mno-tls-direct-seg-refs appears
245         in $(CFLAGS), add -DNO_TLS_DIRECT_SEG_REFS.
246         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]
247         (SYSCALL_ERROR_HANDLER) [NO_TLS_DIRECT_SEG_REFS]: Load thread pointer
248         from %gs:0 and add to that value, rather that direct %gs:OFFSET access.
249         * sysdeps/unix/i386/sysdep.S [NO_TLS_DIRECT_SEG_REFS]: Likewise.
251 2005-01-25  Jakub Jelinek  <jakub@redhat.com>
253         * stdlib/fmtmsg.c (addseverity): Remove new_string variable.
254         (free_mem): Don't free string.
255         * stdlib/tst-fmtmsg.c: Include string.h.
256         (main): Add some more tests.
258 2005-01-25  Andreas Schwab  <schwab@suse.de>
260         * timezone/asia: Update from tzdata2005c.
261         * timezone/backward: Likewise.
262         * timezone/leapseconds: Likewise.
263         * timezone/northamerica: Likewise.
264         * timezone/southamerica: Likewise.
266         * timezone/private.h: Update from tzcode2005c.
267         * timezone/tzfile.h: Likewise.
268         * timezone/zdump.c: Likewise.
269         * timezone/zic.c: Likewise.
271 2005-01-25  Ulrich Drepper  <drepper@redhat.com>
273         * sysdeps/i386/dl-machine.h (elf_machine_rel): Remove code using
274         RESOLVE.
275         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Remove code
276         using RESOLVE.
277         * elf/rtld.c (_dl_start): Remove RESOLVE definition.
279 2005-01-25  Alan Modra  <amodra@bigpond.net.au>
281         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Test
282         sym_map, not sym, against zero.
284 2005-01-24  Ulrich Drepper  <drepper@redhat.com>
286         * misc/syslog.c: Moved to...
287         * sysdeps/generic/syslog.c: ...here.
288         [NO_SIGIPE]: Don't install SIGPIPE handler.
289         * sysdeps/unix/sysv/linux/syslog.c: New file.
290         * sysdeps/unix/sysv/linux/kernel-features.h: Define
291         __ASSUME_MSG_NOSIGNAL.
293 2005-01-22  Richard Henderson  <rth@redhat.com>
295         * sysdeps/alpha/dl-trampoline.S: New file.
296         * sysdeps/alpha/dl-machine.h: Move PLT trampolines there.
297         Use RESOLVE_MAP instead of RESOLVE to protect relocation code.
298         (elf_machine_runtime_setup): Test for dl_profile non-null.
299         (ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): New.
300         * sysdeps/alpha/bits/link.h: New file.
301         * sysdeps/generic/ldsodefs.h (La_alpha_regs, La_alpha_retval): New.
302         (struct audit_ifaces): Add alpha entries.
303         * elf/tst-auditmod1.c: Add alpha entries.
305 2005-01-22  Ulrich Drepper  <drepper@redhat.com>
307         * sysdeps/ia64/dl-machine.h: Remove PLT trampolines here.
308         * sysdeps/ia64/dl-trampoline.S: New file.
310         * sysdeps/x86_64/bits/link.h: Use namespace-safe identifiers in
311         La_x86_64_xmm definition.
313         * posix/Makefile: Use CFLAGS-*.os instead of CFLAGS-*.c for frame
314         pointer option.
315         * stdlib/Makefile (CFLAGS-system.os): Use this instead of
316         CFLAGS-system.c for frame pointer option.
318 2005-01-21  Roland McGrath  <roland@redhat.com>
320         * elf/dl-runtime.c (_dl_profile_fixup): Remove const from REGS.
321         * sysdeps/i386/dl-machine.h: Update decl.
323 2005-01-21  Jakub Jelinek  <jakub@redhat.com>
325         * elf/Makefile: Add rules to build and run tst-align2.
326         * elf/tst-align2.c: New test.
327         * elf/tst-alignmod2.c: New file.
328         * sysdeps/powerpc/tst-stack-align.h: New file.
329         * sysdeps/i386/dl-machine.h (RTLD_START): Align stack and clear frame
330         pointer before calling _dl_init.
331         * sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
333 2005-01-20  Ulrich Drepper  <drepper@redhat.com>
335         * posix/execl.c: Do not allocate potentially large buffers on the
336         stack.
337         * posix/execle.c: Likewise.
338         * posix/execlp.c: Likewise.
339         * posix/execlp.c: Likewise.
340         (script_execute): Removed.
341         (allocate_scripts_argv): New function.  Called at most once to
342         allocate memory, not every time a script is run.  Adjust caller.
344         * sysdeps/generic/wordexp.c (exec_comm): Add a few
345         TEMP_FAILURE_RETRY.  Reorganize code to avoid multiple calls to
346         exec_comm_child.
347         (exec_comm_child): Can now be inlined.
349         * posix/Makefile: Add -fomit-frame-pointer for a few more files.
350         * stdlib/Makefile: Likewise.
352 2005-01-19  Roland McGrath  <roland@redhat.com>
354         [BZ #681]
355         * sunrpc/openchild.c (_openchild): Use NULL instead of 0 for trailing
356         argument to execlp.
357         Reported by Marcus Meissner <meissner@suse.de>.
359 2005-01-19  Jakub Jelinek  <jakub@redhat.com>
361         * hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Fix a typo
362         in assert.
363         * iconv/strtab.c (strtabfinalize): Likewise.
365         * libio/iofopncook.c (_IO_cookie_seekoff): Add prototype.
367 2005-01-17  Roland McGrath  <roland@redhat.com>
369         * nscd/Makefile (LDLIBS-nscd): New variable.
370         ($(objpfx)nscd): Use that instead of selinux-LIBS.
372         * Makeconfig (link-extra-libs): Define just as $(LDLIBS-$(@F)).
373         (link-extra-libs-static): Define to $(link-extra-libs).
374         (link-extra-libs-bounded): Likewise.
376 2005-01-17  Ulrich Drepper  <drepper@redhat.com>
378         * include/link.h: Remove stray definition of pltenter.
380 2005-01-16  GOTO Masanori  <gotom@debian.or.jp>
382         * sysdeps/unix/rewinddir.c: Reset filepos.
383         * dirent/tst-seekdir.c: Check telldir value after calling rewinddir.
385 2005-01-15  Ulrich Drepper  <drepper@redhat.com>
387         * elf/tst-auditmod1.c: Reduce duplication.
389 2005-01-16  Andreas Schwab  <schwab@suse.de>
391         * sysdeps/m68k/dl-machine.h: Remove trampoline code.  Define
392         ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.
393         (elf_machine_runtime_setup): If profile != 0 does not anymore mean
394         GLRO(dl_profile) != NULL.
395         * sysdeps/m68k/dl-trampoline.S: New file.
396         * sysdeps/m68k/bits/link.h: New file.
397         * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add m68k
398         variants.
399         * elf/tst-auditmod1.c: Add m68k support.
401 2005-01-14  Ulrich Drepper  <drepper@redhat.com>
403         * posix/regcomp.c [!_LIBC] (init_dfa): Fix determining of relevant
404         LC_* variable.  Patch by Aharon Robbins <arnold@skeeve.com>.
406         * stdlib/fmtmsg.c (internal_addseverity): Remove incorrect free call.
407         * stdlib/tst-fmtmsg.c (main): Add another addseverity test.
409 2005-01-12  Ulrich Drepper  <drepper@redhat.com>
411         * elf/dl-load.c (_dl_map_object_from_fd): We don't have to allow
412         callers from libc anymore.
414         * elf/dl-open.c (dl_open_worker): Pass __RTLD_AUDIT flag from caller
415         to _dl_map_object_deps.
416         * elf/dl-load.c (_dl_map_object_from_fd): Don't change memory
417         protections when loading auditing modules.
419         * dlfcn/dlopen.c (dlopen_doit): Catch invalid mode arguments and fail.
421         * posix/getconf.c: Update copyright year.
422         * nss/getent.c: Likewise.
423         * nscd/nscd_nischeck.c: Likewise.
424         * iconv/iconvconfig.c: Likewise.
425         * iconv/iconv_prog.c: Likewise.
426         * elf/ldconfig.c: Likewise.
427         * catgets/gencat.c: Likewise.
428         * csu/version.c: Likewise.
429         * elf/ldd.bash.in: Likewise.
430         * elf/sprof.c (print_version): Likewise.
431         * locale/programs/locale.c: Likewise.
432         * locale/programs/localedef.c: Likewise.
433         * nscd/nscd.c (print_version): Likewise.
434         * debug/xtrace.sh: Likewise.
435         * malloc/memusage.sh: Likewise.
436         * malloc/mtrace.pl: Likewise.
437         * debug/catchsegv.sh: Likewise.
439 2005-01-11  Thorsten Kukuk  <kukuk@suse.de>
441         * sunrpc/svc_tcp.c (svctcp_create): Call listen with SOMAXCONN
442         as backlog.
443         * sunrpc/svc_unix.c (svcunix_create): Likewise.
445         * grp/putgrent.c (putgrent): Don't write 0 as group
446         ID if groupname starts with + or -.
447         * pwd/putpwent.c (putpwent): Don't write 0 as user or
448         group ID if user name starts with + or -.
450 2005-01-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
452         * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add sh variants.
453         * sysdeps/elf/tst-auditmod1.c: Add sh support.
454         * sysdeps/sh/bits/link.h: New.
455         * sysdeps/sh/dl-machine.h: Remove trampoline code here.  Define
456         ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.  Remove obsolete comments.
457         (RTLD_START): Define __fpscr_values.
458         * sysdeps/sh/dl-trampoline.S: New file.
459         * sysdeps/sh/sh4/dl-trampoline.S: New file.
460         * sysdeps/sh/sh4/Versions [ld]: Add __fpscr_values.
461         * sysdeps/sh/sh4/dl-machine.h: Remove.
463 2005-01-10  Jakub Jelinek  <jakub@redhat.com>
465         * time/tst-strptime.c (day_tests): Add 2 new tests.
466         (test_tm, main): Issue an error instead of segfaulting if
467         strptime returns NULL.
469 2005-01-10  H.J. Lu  <hongjiu.lu@intel.com>
471         * sysdeps/alpha/libc-tls.c (__tls_get_addr): Updated for dtv_t union.
472         * sysdeps/ia64/libc-tls.c (__tls_get_addr): Likewise.
474 2005-01-11  Ulrich Drepper  <drepper@redhat.com>
476         * malloc/malloc.h: Remove no-glibc support.
478 2005-01-12  GOTO Masanori  <gotom@debian.or.jp>
480         [BZ #650]
481         * malloc/malloc.h: Always include features.h.
483 2005-01-10  Roland McGrath  <roland@redhat.com>
485         * sysdeps/ia64/fpu/e_logl.c: File removed.
487         * dlfcn/dlfcn.c (init): Fix typo in attribute decl.
489 2005-01-10  Ulrich Drepper  <drepper@redhat.com>
491         * sysdeps/generic/dl-tls.c (_dl_next_tls_modid): Fix assertion and
492         recognition of last entry.
494 2005-01-09  Ulrich Drepper  <drepper@redhat.com>
496         * elf/dl-runtime.c: Include <sys/param.h>.
498         * elf/Makefile (headers): Add bits/link.h.
500 2005-01-09  Andreas Schwab  <schwab@suse.de>
502         * elf/rtld.c (dl_main): Create main_map with __RTLD_OPENEXEC.
504 2005-01-09  Andreas Jaeger  <aj@suse.de>
506         * time/strptime_l.c (__strptime_internal): Add braces to avoid
507         warning.
509         * sysdeps/x86_64/bits/link.h: Use vector_size for GCC 4.0.
511         * elf/rtld.c (dl_main): Call _dl_add_to_slotinfo only if USE_TLS.
513 2005-01-08  Jakub Jelinek  <jakub@redhat.com>
515         * elf/Makefile (generated): Add tst-pie1{,.out,.o}.
517 2005-01-09  Ulrich Drepper  <drepper@redhat.com>
519         * elf/dl-fini.c (_dl_fini): Call destructors of audit DSOs after
520         those of all the regular objects.
522         * elf/dl-debug.c (_dl_debug_initialize): Take extra parameter and
523         use it to select the r_debug structure for that namespace.
524         * elf/dl-close.c (_dl_close): Adjust call to _dl_debug_initialize.
525         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
526         * elf/dl-open.c (_dl_open): Likewise.
527         * elf/rtld.c (dl_main): Likewise.
528         * sysdeps/generic/ldsodefs.h (struct link_namespaces): Add _ns_debug
529         member.
530         (_dl_debug_initialize): Add new parameter in declaration.
532         * elf/dl-close.c (_dl_close): Make sure auditing callbacks are not
533         called for the auditing objects themselves.
534         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
536 2005-01-07  Ulrich Drepper  <drepper@redhat.com>
538         * sysdeps/powerpc/powerpc64/dl-machine.h
539         (elf_machine_runtime_setup): If profile != 0 does not anymore mean
540         GLRO(dl_profile) != NULL.
541         * sysdeps/powerpc/powerpc64/bits/link.h (struct la_ppc64_regs): Add
542         padding.
543         * sysdeps/powerpc/powerpc64/dl-trampoline.S: (_dl_profile_resolve):
544         Extend _dl_prof_resolve to add pass extra parameters to
545         _dl_profile_fixup and set up structure with register content.
547         * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_machine_runtime_setup):
548         If profile != 0 does not anymore mean GLRO(dl_profile) != NULL.
549         * sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_prof_resolve):
550         Extend _dl_prof_resolve to add pass extra parameters to
551         _dl_profile_fixup and set up structure with register content.
552         * sysdeps/powerpc/powerpc32/bits/link.h: Fix types of some fields in
553         the register and result structures.
554         * sysdeps/powerpc/powerpc64/bits/link.h: Fix types of some fields
555         in the 32-bit register and result structures.
557         * sysdeps/powerpc/powerpc64/dl-trampoline.S: Use register names.
559         * sysdeps/powerpc/powerpc32/dl-trampoline.S: New file.
560         * sysdeps/powerpc/powerpc32/dl-machine.h: Remove trampoline code here.
561         Define ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.
562         * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add ppc32 variants.
563         * elf/tst-auditmod1.c: Add ppc32 support.
564         * sysdeps/powerpc/powerpc32/bits/link.h: New file.
565         * sysdeps/powerpc/powerpc64/bits/link.h: Add ppc32 definitions.
567         * malloc/malloc.c (malloc_printerr): Print program name as part of
568         error message.
570         * misc/sys/cdefs.h (__attribute_warn_unused_result__): Define.
571         * stdlib/stdlib.h: Make realloc with
572         __attribute_warn_unused_result__ instead of __wur.
573         * malloc/malloc.h: Add __wur and __attribute_warn_unused_result__
574         markers as in <stdlib.h>.
576         * libio/stdio.h: Remove __wur from rename and remove.
577         * posix/unistd.h: Remove __wur from dup2.
579 2005-01-03  Andreas Jaeger  <aj@suse.de>
581         * elf/Makefile (tests): Revert patch from 2005-01-03.
583 2005-01-07  Ulrich Drepper  <drepper@redhat.com>
585         * sysdeps/unix/sysv/linux/init-first.c (__libc_init_first): Don't
586         make __libc_init_first hidden.
588         * elf/rtld.c [!DONT_USE_BOOTSTRAP_MAP] (_dl_start_final): Initialize
589         l_relocated of rtld map.
590         * sysdeps/powerpc/powerpc64/dl-trampoline.S: New file.
591         * sysdeps/powerpc/powerpc64/dl-machine.h: Remove trampoline code here.
592         Define ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.
593         * sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add ppc64 variants.
594         * elf/tst-auditmod1.c: Add ppc64 support.
595         * sysdeps/powerpc/powerpc64/bits/link.h: New file.
597 2005-01-06  Roland McGrath  <roland@redhat.com>
599         [BZ #633]
600         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Catch errno values
601         indicating file-name lookup errors, and return ENOSYS or EBADF instead.
603 2005-01-06  Ulrich Drepper  <drepper@redhat.com>
605         * csu/elf-init.c (__libc_csu_fini): Don't do anything here.
606         * sysdeps/generic/libc-start.c: Don't register program destructor here.
608         * dlfcn/Makefile: Add rules to build dlfcn.c.
609         (LDFLAGS-dl.so): Removed.
610         * dlfcn/dlclose.c: _dl_close is now in ld.so, use function pointer
611         table.
612         * dlfcn/dlmopen.c: Likewise for _dl_open.
613         * dlfcn/dlopen.c: Likewise.
614         * dlfcn/dlopenold.c: Likewise.
615         * elf/dl-libc.c: Likewise for _dl_open and _dl_close.
616         * elf/Makefile (routines): Remove dl-open and dl-close.
617         (dl-routines): Add dl-open, dl-close, and dl-trampoline.
618         Add rules to build and run tst-audit1.
619         * elf/tst-audit1.c: New file.
620         * elf/tst-auditmod1.c: New file.
621         * elf/Versions [libc]: Remove _dl_open and _dl_close.
622         * elf/dl-close.c: Change for use inside ld.so instead of libc.so.
623         * elf/dl-open.c: Likewise.
624         * elf/dl-debug.c (_dl_debug_initialize): Allow reinitialization,
625         signaled by nonzero parameter.
626         * elf/dl-init.c: Fix use of r_state.
627         * elf/dl-load.c: Likewise.
629         * elf/dl-close.c: Add auditing checkpoints.
630         * elf/dl-open.c: Likewise.
631         * elf/dl-fini.c: Likewise.
632         * elf/dl-load.c: Likewise.
633         * elf/dl-sym.c: Likewise.
634         * sysdeps/generic/libc-start.c: Likewise.
635         * elf/dl-object.c: Allocate memory for auditing information.
636         * elf/dl-reloc.c: Remove RESOLV.  We now always need the map.
637         Correctly initialize slotinfo.
638         * elf/dynamic-link.h: Adjust after removal of RESOLV.
639         * sysdeps/hppa/dl-lookupcfg.h: Likewise.
640         * sysdeps/ia64/dl-lookupcfg.h: Likewise.
641         * sysdeps/powerpc/powerpc64/dl-lookupcfg.h: Removed.
642         * elf/dl-runtime.c (_dl_fixup): Little cleanup.
643         (_dl_profile_fixup): New parameters to point to register struct and
644         variable for frame size.
645         Add auditing checkpoints.
646         (_dl_call_pltexit): New function.
647         Don't define trampoline code here.
648         * elf/rtld.c: Recognize LD_AUDIT.  Load modules on startup.
649         Remove all the functions from _rtld_global_ro which only _dl_open
650         and _dl_close needed.
651         Add auditing checkpoints.
652         * elf/link.h: Define symbols for auditing interfaces.
653         * include/link.h: Likewise.
654         * include/dlfcn.h: Define __RTLD_AUDIT.
655         Remove prototypes for _dl_open and _dl_close.
656         Adjust access to argc and argv in libdl.
657         * dlfcn/dlfcn.c: New file.
658         * sysdeps/generic/dl-lookupcfg.h: Remove all content now that RESOLVE
659         is gone.
660         * sysdeps/generic/ldsodefs.h: Add definitions for auditing interfaces.
661         * sysdeps/generic/unsecvars.h: Add LD_AUDIT.
662         * sysdeps/i386/dl-machine.h: Remove trampoline code here.
663         Adjust for removal of RESOLVE.
664         * sysdeps/x86_64/dl-machine.h: Likewise.
665         * sysdeps/generic/dl-trampoline.c: New file.
666         * sysdeps/i386/dl-trampoline.c: New file.
667         * sysdeps/x86_64/dl-trampoline.c: New file.
669         * sysdeps/generic/dl-tls.c: Cleanups.  Fixup for dtv_t change.
670         Fix updating of DTV.
671         * sysdeps/generic/libc-tls.c: Likewise.
673         * sysdeps/arm/bits/link.h: Renamed to ...
674         * sysdeps/arm/bits/linkmap.h: ...this.
675         * sysdeps/generic/bits/link.h: Renamed to...
676         * sysdeps/generic/bits/linkmap.h: ...this.
677         * sysdeps/hppa/bits/link.h: Renamed to...
678         * sysdeps/hppa/bits/linkmap.h: ...this.
679         * sysdeps/i386/bits/link.h: Renamed to...
680         * sysdeps/i386/bits/linkmap.h: ...this.
681         * sysdeps/ia64/bits/link.h: Renamed to...
682         * sysdeps/ia64/bits/linkmap.h: ...this.
683         * sysdeps/s390/bits/link.h: Renamed to...
684         * sysdeps/s390/bits/linkmap.h: ...this.
685         * sysdeps/sh/bits/link.h: Renamed to...
686         * sysdeps/sh/bits/linkmap.h: ...this.
687         * sysdeps/x86_64/bits/link.h: Renamed to...
688         * sysdeps/x86_64/bits/linkmap.h: ...this.
690         * posix/unistd.h: Declare ftruncate for POSIX 2003.  [BZ #640]
692 2004-12-22  Steven Munroe  <sjmunroe@us.ibm.com>
694         * math/libm-test.inc (rint_test_tonearest): New test.
695         (rint_test_towardzero): New test.
696         (rint_test_downward): New test.
697         (rint_test_upward): New test.
698         * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: Fix -0.0 case.
699         Remove redundant const values.
700         * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: Fix -0.0 case.
701         Remove redundant const values.  Use float const.
702         * sysdeps/powerpc/powerpc32/fpu/s_floor.S: Fix -0.0 case.
703         * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: Fix -0.0 case.
704         Use float const.
705         * sysdeps/powerpc/powerpc32/fpu/s_rint.S: Fix -0.0 case.
706         * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: Fix -0.0 case.
707         Use float const.
708         * sysdeps/powerpc/powerpc32/fpu/s_round.S: Fix -0.0 case.
709         Remove redundant const values.
710         * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: Fix -0.0 case.
711         Remove redundant const values.  Use float const.
712         * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: Fix -0.0 case.
713         Remove redundant const values.
714         * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: Fix -0.0 case.
715         Remove redundant const values.  Use float const.
716         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Use EALIGN for Quadword
717         alignment.  Fix -0.0 case.  Remove redundant const values.
718         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Use EALIGN for Quadword
719         alignment.  Fix -0.0 case.  Remove redundant const values.
720         Use float const.
721         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Use EALIGN for Quadword
722         alignment.  Fix -0.0 case.
723         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Use EALIGN for Quadword
724         alignment.  Fix -0.0 case.  Use float const.
725         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Use EALIGN for Quadword
726         alignment.  Fix -0.0 case.
727         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Use EALIGN for Quadword
728         alignment.  Fix -0.0 case.  Use float const.
729         * sysdeps/powerpc/powerpc64/fpu/s_round.S: Use EALIGN for Quadword
730         alignment.  Fix -0.0 case.  Remove redundant const values.
731         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Use EALIGN for Quadword
732         alignment.  Fix -0.0 case.  Remove redundant const values.
733         Use float const.
734         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Use EALIGN for Quadword
735         alignment.  Fix -0.0 case.
736         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Use EALIGN for Quadword
737         alignment.  Fix -0.0 case.  Remove redundant const values.
738         Use float const.
740 2005-01-06  Ulrich Drepper  <drepper@redhat.com>
742         * misc/sys/cdefs.h: Define __wur.
743         * libio/stdio.h: Use __wur for a number of interfaces.
744         * posix/unistd.h: Likewise.
745         * stdlib/stdlib.h: Likewise.
747 2004-12-29  Jakub Jelinek  <jakub@redhat.com>
749         * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Use
750         libc_hidden_proto instead of HIDDEN_PROTO.
751         * sysdeps/ia64/fpu/libm-symbols.h (HIDDEN_PROTO): Remove.
752         (__libm_error_support): If ASSEMBLER and in libc, define to
753         HIDDEN_JUMPTARGET(__libm_error_support).
755 2004-12-28  David Mosberger  <davidm@hpl.hp.com>
757         * sysdeps/ia64/fpu/Makefile (duplicated-routines): New macro.
758         (sysdep_routines): Replace libm_ldexp{,f,l} and libm_scalbn{,f,l}
759         with $(duplicated-routines).
760         (libm-sysdep_routines): Likewise, but substitute "s_" prefix for
761         "m_" prefix.
763 2004-12-27  David Mosberger  <davidm@hpl.hp.com>
765         * sysdeps/ia64/fpu/libm-symbols.h: Add include of <sysdep.h> and
766         undefine "ret" macro.  Add __libm_error_support hidden definitions.
768         * sysdeps/ia64/fpu/e_lgamma_r.c: Remove CVS-id comment.  Add
769         missing portion of copyright statement.
770         * sysdeps/ia64/fpu/e_lgammaf_r.c: Likewise.
771         * sysdeps/ia64/fpu/e_lgammal_r.c: Likewise.
773         * sysdeps/ia64/fpu/w_lgamma.c: Remove CVS-id comment.  Add
774         missing portion of copyright statement.
775         (__ieee754_lgamma): Rename from lgamma().  Make lgamma() a weak alias.
776         (__ieee754_gamma): Likewise.
777         * sysdeps/ia64/fpu/w_lgammaf.c: Likewise.
778         * sysdeps/ia64/fpu/w_lgammal.c: Likewise.
780 2004-12-09  H. J. Lu <hjl@lucon.org>
782         * sysdeps/ia64/fpu/s_nextafterl.c: Remove.
783         * sysdeps/ia64/fpu/s_nexttoward.c: Likewise.
784         * sysdeps/ia64/fpu/s_nexttowardf.c: Likewise.
785         * sysdeps/ia64/fpu/e_atan2l.S: Remove (duplicate of e_atan2l.c).
786         * sysdeps/ia64/fpu/e_expl.S: Likewise.
787         * sysdeps/ia64/fpu/e_logl.c: Remove (conflicts with e_logl.S).
789 2004-11-18  David Mosberger  <davidm@hpl.hp.com>
791         * sysdeps/ia64/fpu/README: New file.
792         * sysdeps/ia64/fpu/gen_import_file_list: New file.
793         * sysdeps/ia64/fpu/import_check: Likewise.
794         * sysdeps/ia64/fpu/import_diffs: Likewise.
795         * sysdeps/ia64/fpu/import_file.awk: Likewise.
796         * sysdeps/ia64/fpu/import_intel_libm: Likewise.
797         * sysdeps/ia64/fpu/libm-symbols.h: Likewise.
799         * sysdeps/ia64/fpu/e_acos.S: Update from Intel libm v2.1+.
800         * sysdeps/ia64/fpu/e_acosf.S: Likewise.
801         * sysdeps/ia64/fpu/e_acosl.S: Likewise.
802         * sysdeps/ia64/fpu/e_asin.S: Likewise.
803         * sysdeps/ia64/fpu/e_asinf.S: Likewise.
804         * sysdeps/ia64/fpu/e_asinl.S: Likewise.
805         * sysdeps/ia64/fpu/e_atan2.S: Likewise.
806         * sysdeps/ia64/fpu/e_atan2f.S: Likewise.
807         * sysdeps/ia64/fpu/e_cosh.S: Likewise.
808         * sysdeps/ia64/fpu/e_coshf.S: Likewise.
809         * sysdeps/ia64/fpu/e_coshl.S: Likewise.
810         * sysdeps/ia64/fpu/e_exp.S: Likewise.
811         * sysdeps/ia64/fpu/e_expf.S: Likewise.
812         * sysdeps/ia64/fpu/e_fmod.S: Likewise.
813         * sysdeps/ia64/fpu/e_fmodf.S: Likewise.
814         * sysdeps/ia64/fpu/e_fmodl.S: Likewise.
815         * sysdeps/ia64/fpu/e_hypot.S: Likewise.
816         * sysdeps/ia64/fpu/e_hypotf.S: Likewise.
817         * sysdeps/ia64/fpu/e_hypotl.S: Likewise.
818         * sysdeps/ia64/fpu/e_log.S: Likewise.
819         * sysdeps/ia64/fpu/e_log2.S: Likewise.
820         * sysdeps/ia64/fpu/e_log2f.S: Likewise.
821         * sysdeps/ia64/fpu/e_log2l.S: Likewise.
822         * sysdeps/ia64/fpu/e_logf.S: Likewise.
823         * sysdeps/ia64/fpu/e_pow.S: Likewise.
824         * sysdeps/ia64/fpu/e_powf.S: Likewise.
825         * sysdeps/ia64/fpu/e_powl.S: Likewise.
826         * sysdeps/ia64/fpu/e_remainder.S: Likewise.
827         * sysdeps/ia64/fpu/e_remainderf.S: Likewise.
828         * sysdeps/ia64/fpu/e_remainderl.S: Likewise.
829         * sysdeps/ia64/fpu/e_scalb.S: Likewise.
830         * sysdeps/ia64/fpu/e_scalbf.S: Likewise.
831         * sysdeps/ia64/fpu/e_scalbl.S: Likewise.
832         * sysdeps/ia64/fpu/e_sinh.S: Likewise.
833         * sysdeps/ia64/fpu/e_sinhf.S: Likewise.
834         * sysdeps/ia64/fpu/e_sinhl.S: Likewise.
835         * sysdeps/ia64/fpu/e_sqrt.S: Likewise.
836         * sysdeps/ia64/fpu/e_sqrtf.S: Likewise.
837         * sysdeps/ia64/fpu/e_sqrtl.S: Likewise.
838         * sysdeps/ia64/fpu/libm_error.c: Likewise.
839         * sysdeps/ia64/fpu/libm_reduce.c: Likewise.
840         * sysdeps/ia64/fpu/libm_support.h: Likewise.
841         * sysdeps/ia64/fpu/s_atan.S: Likewise.
842         * sysdeps/ia64/fpu/s_atanf.S: Likewise.
843         * sysdeps/ia64/fpu/s_atanl.S: Likewise.
844         * sysdeps/ia64/fpu/s_cbrt.S: Likewise.
845         * sysdeps/ia64/fpu/s_cbrtf.S: Likewise.
846         * sysdeps/ia64/fpu/s_cbrtl.S: Likewise.
847         * sysdeps/ia64/fpu/s_ceil.S: Likewise.
848         * sysdeps/ia64/fpu/s_ceilf.S: Likewise.
849         * sysdeps/ia64/fpu/s_ceill.S: Likewise.
850         * sysdeps/ia64/fpu/s_cos.S: Likewise.
851         * sysdeps/ia64/fpu/s_cosf.S: Likewise.
852         * sysdeps/ia64/fpu/s_cosl.S: Likewise.
853         * sysdeps/ia64/fpu/s_expm1.S: Likewise.
854         * sysdeps/ia64/fpu/s_expm1f.S: Likewise.
855         * sysdeps/ia64/fpu/s_expm1l.S: Likewise.
856         * sysdeps/ia64/fpu/s_fabs.S: Likewise.
857         * sysdeps/ia64/fpu/s_fabsf.S: Likewise.
858         * sysdeps/ia64/fpu/s_fabsl.S: Likewise.
859         * sysdeps/ia64/fpu/s_floor.S: Likewise.
860         * sysdeps/ia64/fpu/s_floorf.S: Likewise.
861         * sysdeps/ia64/fpu/s_floorl.S: Likewise.
862         * sysdeps/ia64/fpu/s_frexp.c: Likewise.
863         * sysdeps/ia64/fpu/s_frexpf.c: Likewise.
864         * sysdeps/ia64/fpu/s_frexpl.c: Likewise.
865         * sysdeps/ia64/fpu/s_ilogb.S: Likewise.
866         * sysdeps/ia64/fpu/s_ilogbf.S: Likewise.
867         * sysdeps/ia64/fpu/s_ilogbl.S: Likewise.
868         * sysdeps/ia64/fpu/s_log1p.S: Likewise.
869         * sysdeps/ia64/fpu/s_log1pf.S: Likewise.
870         * sysdeps/ia64/fpu/s_log1pl.S: Likewise.
871         * sysdeps/ia64/fpu/s_logb.S: Likewise.
872         * sysdeps/ia64/fpu/s_logbf.S: Likewise.
873         * sysdeps/ia64/fpu/s_logbl.S: Likewise.
874         * sysdeps/ia64/fpu/s_modf.S: Likewise.
875         * sysdeps/ia64/fpu/s_modff.S: Likewise.
876         * sysdeps/ia64/fpu/s_modfl.S: Likewise.
877         * sysdeps/ia64/fpu/s_nearbyint.S: Likewise.
878         * sysdeps/ia64/fpu/s_nearbyintf.S: Likewise.
879         * sysdeps/ia64/fpu/s_nearbyintl.S: Likewise.
880         * sysdeps/ia64/fpu/s_rint.S: Likewise.
881         * sysdeps/ia64/fpu/s_rintf.S: Likewise.
882         * sysdeps/ia64/fpu/s_rintl.S: Likewise.
883         * sysdeps/ia64/fpu/s_round.S: Likewise.
884         * sysdeps/ia64/fpu/s_roundf.S: Likewise.
885         * sysdeps/ia64/fpu/s_roundl.S: Likewise.
886         * sysdeps/ia64/fpu/s_significand.S: Likewise.
887         * sysdeps/ia64/fpu/s_significandf.S: Likewise.
888         * sysdeps/ia64/fpu/s_significandl.S: Likewise.
889         * sysdeps/ia64/fpu/s_tan.S: Likewise.
890         * sysdeps/ia64/fpu/s_tanf.S: Likewise.
891         * sysdeps/ia64/fpu/s_tanl.S: Likewise.
892         * sysdeps/ia64/fpu/s_trunc.S: Likewise.
893         * sysdeps/ia64/fpu/s_truncf.S: Likewise.
894         * sysdeps/ia64/fpu/s_truncl.S: Likewise.
896         * sysdeps/ia64/fpu/e_acosh.S: New file from Intel libm v2.1+.
897         * sysdeps/ia64/fpu/e_acoshf.S: Likewise.
898         * sysdeps/ia64/fpu/e_acoshl.S: Likewise.
899         * sysdeps/ia64/fpu/e_atanh.S: Likewise.
900         * sysdeps/ia64/fpu/e_atanhf.S: Likewise.
901         * sysdeps/ia64/fpu/e_atanhl.S: Likewise.
902         * sysdeps/ia64/fpu/e_exp10.S: Likewise.
903         * sysdeps/ia64/fpu/e_exp10f.S: Likewise.
904         * sysdeps/ia64/fpu/e_exp10l.S: Likewise.
905         * sysdeps/ia64/fpu/e_exp2.S: Likewise.
906         * sysdeps/ia64/fpu/e_exp2f.S: Likewise.
907         * sysdeps/ia64/fpu/e_exp2l.S: Likewise.
908         * sysdeps/ia64/fpu/e_lgamma_r.S: Likewise.
909         * sysdeps/ia64/fpu/e_lgammaf_r.S: Likewise.
910         * sysdeps/ia64/fpu/e_lgammal_r.S: Likewise.
911         * sysdeps/ia64/fpu/e_logl.S: Likewise.
912         * sysdeps/ia64/fpu/libm_frexp.S: Likewise.
913         * sysdeps/ia64/fpu/libm_frexpf.S: Likewise.
914         * sysdeps/ia64/fpu/libm_frexpl.S: Likewise.
915         * sysdeps/ia64/fpu/s_libm_ldexp.S: Likewise.
916         * sysdeps/ia64/fpu/s_libm_ldexpf.S: Likewise.
917         * sysdeps/ia64/fpu/s_libm_ldexpl.S: Likewise.
918         * sysdeps/ia64/fpu/s_libm_scalbn.S: Likewise.
919         * sysdeps/ia64/fpu/s_libm_scalbnf.S: Likewise.
920         * sysdeps/ia64/fpu/s_libm_scalbnl.S: Likewise.
921         * sysdeps/ia64/fpu/libm_lgamma.S: Likewise.
922         * sysdeps/ia64/fpu/libm_lgammaf.S: Likewise.
923         * sysdeps/ia64/fpu/libm_lgammal.S: Likewise.
924         * sysdeps/ia64/fpu/libm_sincos.S: Likewise.
925         * sysdeps/ia64/fpu/libm_sincos_large.S: Likewise.
926         * sysdeps/ia64/fpu/libm_sincosf.S: Likewise.
927         * sysdeps/ia64/fpu/libm_sincosl.S: Likewise.
928         * sysdeps/ia64/fpu/libm_scalblnf.S: Likewise.
929         * sysdeps/ia64/fpu/s_asinh.S: Likewise.
930         * sysdeps/ia64/fpu/s_asinhf.S: Likewise.
931         * sysdeps/ia64/fpu/s_asinhl.S: Likewise.
932         * sysdeps/ia64/fpu/s_erf.S: Likewise.
933         * sysdeps/ia64/fpu/s_erfc.S: Likewise.
934         * sysdeps/ia64/fpu/s_erfcf.S: Likewise.
935         * sysdeps/ia64/fpu/s_erfcl.S: Likewise.
936         * sysdeps/ia64/fpu/s_erff.S: Likewise.
937         * sysdeps/ia64/fpu/s_erfl.S: Likewise.
938         * sysdeps/ia64/fpu/s_fdim.S: Likewise.
939         * sysdeps/ia64/fpu/s_fdimf.S: Likewise.
940         * sysdeps/ia64/fpu/s_fdiml.S: Likewise.
941         * sysdeps/ia64/fpu/s_fma.S: Likewise.
942         * sysdeps/ia64/fpu/s_fmaf.S: Likewise.
943         * sysdeps/ia64/fpu/s_fmal.S: Likewise.
944         * sysdeps/ia64/fpu/s_fmax.S: Likewise.
945         * sysdeps/ia64/fpu/s_fmaxf.S: Likewise.
946         * sysdeps/ia64/fpu/s_fmaxl.S: Likewise.
947         * sysdeps/ia64/fpu/s_ldexp.c: Likewise.
948         * sysdeps/ia64/fpu/s_ldexpf.c: Likewise.
949         * sysdeps/ia64/fpu/s_ldexpl.c: Likewise.
950         * sysdeps/ia64/fpu/s_nextafter.S: Likewise.
951         * sysdeps/ia64/fpu/s_nextafterf.S: Likewise.
952         * sysdeps/ia64/fpu/s_nextafterl.S: Likewise.
953         * sysdeps/ia64/fpu/s_nexttoward.S: Likewise.
954         * sysdeps/ia64/fpu/s_nexttowardf.S: Likewise.
955         * sysdeps/ia64/fpu/s_nexttowardl.S: Likewise.
956         * sysdeps/ia64/fpu/s_tanh.S: Likewise.
957         * sysdeps/ia64/fpu/s_tanhf.S: Likewise.
958         * sysdeps/ia64/fpu/s_tanhl.S: Likewise.
959         * sysdeps/ia64/fpu/s_scalblnf.c: Likewise.
960         * sysdeps/ia64/fpu/w_lgamma.c: Likewise.
961         * sysdeps/ia64/fpu/w_lgammaf.c: Likewise.
962         * sysdeps/ia64/fpu/w_lgammal.c: Likewise.
963         * sysdeps/ia64/fpu/w_tgamma.S: Likewise.
964         * sysdeps/ia64/fpu/w_tgammaf.S: Likewise.
965         * sysdeps/ia64/fpu/w_tgammal.S: Likewise.
967         * sysdeps/ia64/fpu/e_gamma_r.c: New empty dummy-file.
968         * sysdeps/ia64/fpu/e_gammaf_r.c: Likewise.
969         * sysdeps/ia64/fpu/e_gammal_r.c: Likewise.
970         * sysdeps/ia64/fpu/w_acosh.c: Likewise.
971         * sysdeps/ia64/fpu/w_acoshf.c: Likewise.
972         * sysdeps/ia64/fpu/w_acoshl.c: Likewise.
973         * sysdeps/ia64/fpu/w_atanh.c: Likewise.
974         * sysdeps/ia64/fpu/w_atanhf.c: Likewise.
975         * sysdeps/ia64/fpu/w_atanhl.c: Likewise.
976         * sysdeps/ia64/fpu/w_exp10.c: Likewise.
977         * sysdeps/ia64/fpu/w_exp10f.c: Likewise.
978         * sysdeps/ia64/fpu/w_exp10l.c: Likewise.
979         * sysdeps/ia64/fpu/w_exp2.c: Likewise.
980         * sysdeps/ia64/fpu/w_exp2f.c: Likewise.
981         * sysdeps/ia64/fpu/w_exp2l.c: Likewise.
982         * sysdeps/ia64/fpu/w_expl.c: Likewise.
983         * sysdeps/ia64/fpu/e_expl.S: Likewise.
984         * sysdeps/ia64/fpu/w_lgamma_r.c: Likewise.
985         * sysdeps/ia64/fpu/w_lgammaf_r.c: Likewise.
986         * sysdeps/ia64/fpu/w_lgammal_r.c: Likewise.
987         * sysdeps/ia64/fpu/w_log2.c: Likewise.
988         * sysdeps/ia64/fpu/w_log2f.c: Likewise.
989         * sysdeps/ia64/fpu/w_log2l.c: Likewise.
990         * sysdeps/ia64/fpu/w_sinh.c: Likewise.
991         * sysdeps/ia64/fpu/w_sinhf.c: Likewise.
992         * sysdeps/ia64/fpu/w_sinhl.c: Likewise.
994         * sysdeps/ia64/fpu/libm_atan2_reg.S: Remove.
995         * sysdeps/ia64/fpu/s_ldexp.S: Likewise.
996         * sysdeps/ia64/fpu/s_ldexpf.S: Likewise.
997         * sysdeps/ia64/fpu/s_ldexpl.S: Likewise.
998         * sysdeps/ia64/fpu/s_scalbn.S: Likewise.
999         * sysdeps/ia64/fpu/s_scalbnf.S: Likewise.
1000         * sysdeps/ia64/fpu/s_scalbnl.S: Likewise.
1002         * sysdeps/ia64/fpu/s_sincos.c: Make it an empty dummy-file.
1003         * sysdeps/ia64/fpu/s_sincosf.c: Likewise.
1004         * sysdeps/ia64/fpu/s_sincosl.c: Likewise.
1006         * sysdeps/ia64/fpu/e_atan2l.S: Add "Not needed" comment.
1008         * sysdeps/ia64/fpu/s_copysign.S: Add __libm_copysign{,f,l}
1009         alias for use by libm_error.c
1011         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove
1012         libm_atan2_reg, libm_tan, libm_frexp4{f,l}.
1013         Mention s_erfc{,f,l}, libm_frexp{,f,l}, libm_ldexp{,f,l},
1014         libm_sincos{,f,l}, libm_sincos_large, libm_lgamma{,f,l},
1015         libm_scalbn{,f,l}, libm_scalblnf.
1016         (sysdep_routines): Remove libm_frexp4{,f,l}.
1017         Mention libm_frexp{,f,l}, libm_ldexp{,f,l}, and libm_scalbn{,f,l}.
1018         (sysdep-CPPFLAGS): Add -include libm-symbols.h, -D__POSIX__,
1019         _D_LIB_VERSIONIMF=_LIB_VERSION, -DSIZE_LONG_INT_64, and
1020         -DSIZE_LONG_LONG_INT_64.
1022 2005-01-05  Steven Munroe  <sjmunroe@us.ibm.com>
1024         * elf/rtld.c (dl_main) [NEED_DL_SYSINFO_DSO]: Insure l_map_end and
1025         l_text_end are set for a VDSO with a single PT_LOAD entry.
1027 2005-01-05  Ulrich Drepper  <drepper@redhat.com>
1029         * libio/iofopncook.c (_IO_cookie_seekoff): Define.  Mark offset as
1030         invalid to disable optimizations in fileops which won't work here.
1031         (_IO_cookie_jumps): Use it.
1032         (_IO_old_cookie_jumps): Likewise.
1033         * libio/fmemopen.c (fmemopen_seek): Result must be returned in *P,
1034         not the return value.
1035         * stdio-common/Makefile (tests): Add tst-fmemopen2.
1036         * stdio-common/tst-fmemopen2.c: New file.
1038         * sysdeps/unix/sysv/linux/bits/waitflags.h: Define __WNOTHREAD.
1040 2005-01-05  Roland McGrath  <roland@redhat.com>
1042         * configure.in (libc_cv_cpp_asm_debuginfo): Checked moved ...
1043         * sysdeps/i386/configure.in: ... here.  New file.
1045 2005-01-03  Ulrich Drepper  <drepper@redhat.com>
1047         * sysdeps/generic/libc-start.c [SHARED] (__libc_start_main): Don't
1048         initialize __environ again.
1049         * stdlib/Makefile: Add rules to build and run tst-putenv.
1050         * stdlib/tst-putenv.c: New file.
1051         * stdlib/tst-putenvmod.c: New file.
1053         * sysdeps/unix/sysv/linux/init-first.c: Clean file up.  Don't
1054         define unnecessary wrappers or aliases of static functions.
1056 2005-01-03  Andreas Jaeger  <aj@suse.de>
1058         * csu/Makefile (generated): Add start.os and start.ob.
1060         * elf/Makefile (tests): Change rule for tst-pie1 so that make
1061         clean works.
1063 2004-12-29  Roland McGrath  <roland@redhat.com>
1065         [BZ #626]
1066         * sysdeps/unix/alarm.c (alarm): Round return value to nearest rather
1067         than always up; when nearest is zero, round up to one.
1069 2004-12-28  Ulrich Drepper  <drepper@redhat.com>
1071         * po/es.po: Update from translation team.
1073         * sysdeps/generic/dl-tls.c (__tls_get_addr): Fix typo.
1075 2004-12-27  Ulrich Drepper  <drepper@redhat.com>
1077         * include/signal.h: Define __sigemptyset.
1079 2004-04-27  Paolo Bonzini  <bonzini@gnu.org>
1081         * posix/regex_internal.h (struct re_dfastate_t): Make
1082         word_trtable a pointer to the 512-item transition table.
1083         * posix/regexec.c (build_trtable): Fill in either state->trtable
1084         or state->word_trtable.  Return a boolean indicating success.
1085         (transit_state): Expect state->trtable to be a 256-item
1086         transition table.  Reorganize code to have less tests in
1087         the common case, and to save an indentation level.
1088         * posix/regex_internal.c (free_state): Free word_trtable.
1090 2004-12-21  Jakub Jelinek  <jakub@redhat.com>
1092         * sysdeps/unix/sysv/linux/i386/clone.S (__clone): Make sure %esp when
1093         calling fn is 16 byte aligned.
1094         * sysdeps/i386/tst-stack-align.h: New file.
1096         * misc/efgcvt_r.c (FLOAT_MIN_10_EXP, FLOAT_MIN_10_NORM): Define.
1097         (ecvt_r): Special case denormals.
1098         * misc/qefgcvt_r.c (FLOAT_MIN_10_EXP, FLOAT_MIN_10_NORM): Define.
1099         * misc/tst-efgcvt.c: Include float.h.
1100         (ecvt_tests): Add 2 new tests.
1102 2004-12-20  Roland McGrath  <roland@frob.com>
1104         * version.h (RELEASE, VERSION): development, 2.3.90
1105         * include/features.h (__GLIBC_MINOR__): Now 4.
1107 2004-12-20  Jakub Jelinek  <jakub@redhat.com>,
1108             Jim Gifford  <giffordj@linkline.com>
1110         [BZ #562]
1111         * sysdeps/mips/Makefile (librt-sysdep_routines): Add.
1112         * sysdeps/unix/mips/rt-sysdep.S: New file.
1114 2004-12-19  Roland McGrath  <roland@redhat.com>
1116         * iconv/Makefile (test-iconvconfig): New target.
1117         [$(cross-compiling) != yes] (xtests): Depend on it.
1119         * iconv/iconvconfig.c (nostdlib, output_file, output_file_len):
1120         New variables.
1121         (options, parse_opt, main): Take new options --nostdlib and
1122         --output/-o to set them.  Under --nostdlib, skip GCONV_PATH dirs.
1123         (write_output): If output_file is set, write the output there.
1125 2004-12-19  Andreas Jaeger  <aj@suse.de>
1127         [BZ #560]
1128         * inet/netinet/in.h: Use __interface_addr instead of __interface.
1130         [BZ #573]
1131         * sunrpc/xcrypt.c (passwd2des_internal): Make it hidden instead of
1132         internal linkage.
1134 2004-12-19  Roland McGrath  <roland@frob.com>
1136         * version.h (VERSION): 2.3.4.
1137         * README.template: Various updates.
1138         * README: Regenerated.
1139         * NEWS: Mention ports.
1140         * README-alpha: File removed.
1142         [BZ #416]
1143         * locale/langinfo.h: Comment fixes.
1145 2004-12-17  Ulrich Drepper  <drepper@redhat.com>
1147         * po/ja.po: Update from translation team.
1149 2004-12-17  Richard Henderson  <rth@redhat.com>
1151         * sysdeps/unix/sysv/linux/alpha/clone.S (__clone): Add support
1152         for NPTL where the PID is stored at userlevel and needs to be
1153         reset when CLONE_THREAD is not used.
1155 2004-12-17  Jakub Jelinek  <jakub@redhat.com>
1157         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
1159 2004-12-17  Andreas Jaeger  <aj@suse.de>
1161         * math/libm-test.inc (atan2_test): Compute value with 36 digits.
1162         * sysdeps/alpha/fpu/libm-test-ulps: Adjust for changed result.
1163         * sysdeps/powerpc/fpu/libm-test-ulps: Likewise.
1164         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
1165         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Likewise.
1166         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Likewise.
1167         * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
1169 2004-12-16  Ulrich Drepper  <drepper@redhat.com>
1171         * stdlib/tst-setcontext.c: Enlarge st1 and st2 arrays.
1173 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
1175         [BZ #610]
1176         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
1177         (__novec_getcontext): Fix typo in store of fp29.
1178         (__getcontext): Fix typo in store of fp29.
1179         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
1180         (__novec_swapcontext): Fix typo in store of fp29.
1181         (__swapcontext): Fix typo in store of fp29.
1183 2004-12-17  GOTO Masanori  <gotom@debian.or.jp>
1185         * sysdeps/unix/sysv/linux/dl-osinfo.h (DL_SYSDEP_OSCHECK): Fix
1186         vague message.
1188 2004-12-16  Roland McGrath  <roland@redhat.com>
1190         * nscd/Makefile ($(objpfx)nscd): Don't depend on $(selinux-LIBS),
1191         which is usually a -lselinux that make will resolve wrongly.
1193 2004-12-16  Andreas Jaeger  <aj@suse.de>
1195         * math/math.h: Use #if defined to not receive warnings about
1196         undefined symbols.
1198 2004-12-16  Jakub Jelinek  <jakub@redhat.com>
1200         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Add support
1201         for NPTL where the PID is stored at userlevel and needs to be reset
1202         when CLONE_THREAD is not used.
1204         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
1205         (SYSCALL_ERROR_HANDLER): If RTLD_PRIVATE_ERRNO, use rtld_errno
1206         instead of errno.
1207         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S: Include
1208         sysdep-cancel.h instead of sysdep.h.  Handle cancellation.
1209         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerate.
1211         * sysdeps/ieee754/ldbl-128/e_expl.c: Include stdlib.h.
1213 2004-12-15  Jakub Jelinek  <jakub@redhat.com>
1215         * sysdeps/unix/sysv/linux/gethostid.c: Make bi-arch safe.
1217 2004-12-15  Steven Munroe  <sjmunroe@us.ibm.com>
1219         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Correct stack
1220         alignment.  Clean up flag bit tests.
1221         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Correct stack
1222         alignment.  Clean up flag bit tests.  Remove redundent SP assignment.
1223         Add TOC register save/restore around function call.
1225         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Make no_vmx symbol
1226         local.
1227         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Make no_vmx symbol
1228         local.
1229         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Make no_vmx symbol
1230         local.
1231         * sysdeps/powerpc/powerpc64/setjmp-common.S: Make no_vmx and
1232         aligned_save_vmx symbol local.
1234 2004-12-15  Ulrich Drepper  <drepper@redhat.com>
1236         * sysdeps/i386/i486/bits/string.h (__strncat_g): Fix i686
1237         implementation.
1239 2004-09-08  H.J. Lu  <hongjiu.lu@intel.com>
1241         * Makeconfig (libunwind): New.
1242         (libgcc_eh): Add $(libunwind).
1243         (gnulib): Always set to -lgcc $(libgcc_eh).
1244         (static-gnulib): Always set to -lgcc -lgcc_eh $(libunwind).
1245         (libc.so-gnulib): New.
1246         * Makerules (LDLIBS-c.so): Use $(libc.so-gnulib) instead of
1247         $(static-gnulib).
1248         * configure.in (libc_cv_cc_with_libunwind): Set to yes if gcc
1249         uses -lunwind for static binaries.
1251 2004-06-05  Joseph S. Myers  <jsm@polyomino.org.uk>
1253         * malloc/Makefile (install-bin): Remove memusage.
1254         (install-bin-script): Add memusage.
1256 2004-12-15  Jakub Jelinek  <jakub@redhat.com>
1258         * nis/nis_domain_of_r.c (nis_domain_of_r): Use libnsl_hidden_def,
1259         not libnsl_hidden_proto.
1261         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add support
1262         for NPTL where the PID is stored at userlevel and needs to be reset
1263         when CLONE_THREAD is not used.
1264         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
1266         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S (__clone): Save
1267         and restore r2 around call to fn.
1269 2004-12-15  Andreas Jaeger  <aj@suse.de>
1271         * sysdeps/ia64/dl-machine.h (elf_machine_rela): Mark auto instead
1272         of static, add always_inline attribute.
1273         (elf_machine_rela_relative): Likewise.
1274         (elf_machine_lazy_rel): Likewise.
1276 2004-12-15  Ulrich Drepper  <drepper@redhat.com>
1278         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Add support
1279         for pid caching in nptl.
1281 2004-12-14  Ulrich Drepper  <drepper@redhat.com>
1283         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Add support
1284         for pid caching in nptl.
1286 2004-10-18  Maciej W. Rozycki  <macro@mips.com>
1288         * sysdeps/unix/sysv/linux/mips/bits/socket.h (__cmsg_nxthdr): Use
1289         __NTH instead of __THROW in the inline definition.
1290         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise.
1292         * sysdeps/mips/bits/dlfcn.h (RTLD_DEEPBIND): New macro.
1294         * sysdeps/unix/sysv/linux/mips/bits/mman.h
1295         (PROT_GROWSDOWN, PROT_GROWSUP): New macros.
1297 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
1299         * sysdeps/powerpc/powerpc64/ppc-mcount.S (PROF): Don't undef.
1300         * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S: Invoke CALL_MOUNT.
1301         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Likewise.
1302         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
1303         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
1304         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
1305         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Likewise.
1306         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
1307         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: Likewise.
1309 2004-10-19  Wolfram Gloger  <wg@malloc.de>
1311         * malloc/hooks.c (mem2chunk_check, top_check): Handle
1312         non-contiguous arena.  Reported by Michael Dalton
1313         <mwdalton@stanford.edu> [BZ #457].  Add further checks for top chunk.
1315 2004-12-14  Jakub Jelinek  <jakub@redhat.com>
1317         * sysdeps/posix/sysconf.c (__sysconf_check_spec): Remove leading
1318         underscore from GETCONF_DIR filenames.
1320 2004-12-13  Ulrich Drepper  <drepper@redhat.com>
1322         * po/de.po: Update from translation team.
1324         * nss/getnssent.c (__nss_getent): Double buffer size each round to
1325         avoid problems with delays for some people's huge entries.
1326         * nss/getXXbyYY.c (FUNCTION_NAME): Likewise.
1328 2004-12-13  Jakub Jelinek  <jakub@redhat.com>
1330         * posix/getconf.c (main): Prepend just $GETCONF_DIR/ instead of
1331         $GETCONF_DIR/_ to spec.
1332         * posix/confstr.c (confstr): Remove leading underscores for
1333         _CS_POSIX_V6_WIDTH_RESTRICTED_ENVS.
1335 2004-12-12  Ulrich Drepper  <drepper@redhat.com>
1337         * elf/dl-load.c (_dl_map_object_from_fd): Fix computation of
1338         mapping start.  It must take the actual pagesize into account, not
1339         the alignment in the file.
1341 2004-12-11  Ulrich Drepper  <drepper@redhat.com>
1343         * malloc/malloc.c (_int_realloc): Add checks for corrupted memory.
1344         (_int_free): Make clear message are result of free() calls.
1346         * malloc/malloc.c (_int_realloc): Remove unnecessary tests for
1347         oldmem and size == 0.
1349 2004-12-10  Ulrich Drepper  <drepper@redhat.com>
1351         * malloc/arena.c (arena_get2): Prevent endless loop if arenas and
1352         list lock are taken.
1354 2004-12-08  Thorsten Kukuk  <kukuk@suse.de>
1356         * nis/nss_nisplus/nisplus-netgrp.c (_nss_nisplus_getnetgrent_r):
1357         Add check if the value is not an empty string.  [BZ #597]
1359 2004-11-29  Jakub Jelinek  <jakub@redhat.com>
1361         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): If densize > 2
1362         and numsize < densize, always shift num up by empty + 1 limbs.
1364 2004-12-07  Paolo Bonzini  <bonzini@gnu.org>
1366         * posix/regexec.c (proceed_next_node): Simplify treatment of epsilon
1367         nodes.  Pass the pushed node to push_fail_stack.
1368         (push_fail_stack): Accept a single node rather than an array
1369         of two epsilon destinations.
1370         (build_sifted_states): Only walk non-epsilon nodes.
1371         (check_arrival): Don't pass epsilon nodes to
1372         check_arrival_add_next_nodes.
1373         (check_arrival_add_next_nodes) [DEBUG]: Abort if an epsilon node is
1374         found.
1375         (check_node_accept): Do expensive checks later.
1376         (add_epsilon_src_nodes): Cache result of merging the inveclosures.
1377         * posix/regex_internal.h (re_dfastate_t): Add non_eps_nodes and
1378         inveclosure.
1379         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at,
1380         re_string_context_at, re_string_peek_byte_case,
1381         re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
1382         Declare as pure.
1383         * posix/regex_internal.c (create_newstate_common): Remove.
1384         (register_state): Move part of it here.  Initialize non_eps_nodes.
1385         (free_state): Free inveclosure and non_eps_nodes.
1386         (create_cd_newstate, create_ci_newstate): Allocate the new
1387         re_dfastate_t here.
1389 2004-12-09  Ulrich Drepper  <drepper@redhat.com>
1391         * malloc/malloc.c (public_rEALLOc): Add parameter checks.
1392         (_int_free): Provide better error message for invalid pointers.
1394 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
1396         * posix/tst-regex.c: Use defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
1397         conditionals instead of defined _POSIX_CPUTIME.
1398         (main): If _POSIX_CPUTIME == 0, call sysconf to see if CPUTIME
1399         option is available.
1400         * posix/tst-regex.c2: Use defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
1401         conditionals instead of defined _POSIX_CPUTIME.
1402         (do_test): If _POSIX_CPUTIME == 0, call sysconf to see if CPUTIME
1403         option is available.
1404         * sysdeps/posix/sysconf.c (__sysconf): If _POSIX_CPUTIME resp.
1405         _POSIX_THREAD_CPUTIME is defined to 0, return -1 for the corresponding
1406         _SC_ argument.
1408 2004-12-08  Jakub Jelinek  <jakub@redhat.com>
1410         * elf/ldd.bash.in: When set -o pipefail is available, use that for
1411         piping to cat; when not, don't use the pipe at all.
1412         Pipe to cat in all cases of running the executable.
1413         When direct running exits with code 5, retry running via ${RTLD}.
1414         * elf/rtld.c (process_envvars): If __libc_enable_secure and
1415         mode != normal, exit with exitcode 5.
1417 2004-12-07  Jakub Jelinek  <jakub@redhat.com>
1419         * sysdeps/posix/sysconf.c (__sysconf_check_spec): Only define
1420         if it will be actually used.
1422 2004-12-07  Roland McGrath  <roland@redhat.com>
1424         * rt/tst-timer5.c (setup_test): New function.
1425         (TEST_CLOCK_MISSING): Use it to punt test if timer_create does not
1426         support CLOCK_MONOTONIC.
1428 2004-12-07  Jakub Jelinek  <jakub@redhat.com>
1430         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Add support for
1431         NPTL where the PID is stored at userlevel and needs to be reset when
1432         CLONE_THREAD is not used.  Restore gp before calling _exit.
1434 2004-12-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1436         * sysdeps/unix/sysv/linux/sh/clone.S: Clear the frame pointer when
1437         starting a new thread.  Add support for NPTL where the PID is stored
1438         at userlevel and needs to be reset when CLONE_THREAD is not used.
1440 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
1442         * elf/rtld.c (process_envvars): Don't consider LD_SHOW_AUXV
1443         and LD_DYNAMIC_WEAK if __libc_enable_secure.
1444         If __libc_enable_secure, /etc/suid-debug doesn't exist and
1445         program will be actually run, turn off all debugging.
1446         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add LD_DEBUG,
1447         LD_DYNAMIC_WEAK and LD_SHOW_AUXV.
1449 2004-12-06  Jakub Jelinek  <jakub@redhat.com>
1451         * time/tzset.c (tzset_internal): If + or - is seen,
1452         but no offset after it, reset offset to 0.  [BZ #601]
1454 2004-12-06  Ulrich Drepper  <drepper@redhat.com>
1456         * libio/ioseekpos.c (_IO_seekpos_unlocked): Call _IO_SEEKOFF not
1457         _IO_SEEKPOS, saving one indirect jump.
1459         * libio/fileops.c (_IO_new_file_seekoff): Fix optimization of in-buffer
1460         seek.  Remove dead code.
1462 2004-12-02  Jakub Jelinek  <jakub@redhat.com>
1464         * libio/Makefile (tests): Add bug-ungetc4.
1465         * libio/bug-ungetc4.c: New test.
1467 2004-12-06  Roland McGrath  <roland@redhat.com>
1469         * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): Diagnose EINVAL
1470         for CLOCK_THREAD_CPUTIME_ID, not ENOTSUP.
1471         Use SYSDEP_NANOSLEEP handler before validating CLOCK_ID value.
1473         * rt/tst-timer4.c (TEST_CLOCK, TEST_CLOCK_NANOSLEEP): New macros.
1474         Use them throughout in place of CLOCK_REALTIME and nanosleep.
1475         (do_test) [TEST_CLOCK_MISSING]: Call this macro and if it returns
1476         non-null, punt the test with a message using the string returned.
1477         * rt/tst-timer5.c: New file.
1478         * rt/Makefile (tests): Add it.
1480 2004-12-01  Paolo Bonzini  <bonzini@gnu.org>
1482         * posix/regcomp.c (free_dfa_content, init_dfa): Remove
1483         references to re_dfa_t's subexps field.
1484         (parse_sub_exp, parse_expression): Do not use it.  Use
1485         completed_bkref_map instead.
1486         (create_initial_state, peek_token): Store a backreference \N
1487         with opr.idx = N-1.
1488         * posix/regexec.c (proceed_next_node, check_dst_limits, get_subexp):
1489         Likewise.
1490         (check_subexp_limits): Remove useless condition.
1491         * posix/regex_internal.h (re_subexp_t): Remove.
1492         (re_dfa_t): Remove subexps and subexps_alloc field, add
1493         completed_bkref_map.
1495 2004-12-05  Roland McGrath  <roland@frob.com>
1497         * Makeconfig: Comment typo fix.
1499 2004-11-30  Andreas Schwab  <schwab@suse.de>
1501         * nis/ypclnt.c (ypprot_err): Remove unused entries.
1503 2004-11-30  Paolo Bonzini  <bonzini@gnu.org>
1505         * posix/regexec.c (check_dst_limits_calc_pos_1): Check for
1506         bkref_idx == -1, and don't recurse in that case.
1508 2004-11-30  GOTO Masanori  <gotom@debian.or.jp>
1510         * posix/confstr.c: Enclose #error message with double quote
1511         for gcc-3.3 and lower.
1513 2004-12-04  Ulrich Drepper  <drepper@redhat.com>
1515         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for NPTL where
1516         the PID is stored at userlevel and needs to be reset when CLONE_THREAD
1517         is not used.
1518         * sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.
1520 2004-11-18  Daniel Jacobowitz  <dan@codesourcery.com>
1522         * sysdeps/arm/sysdep.h: Define __USE_BX__ if bx is available.
1523         Use it instead of __THUMB_INTERWORK__.  Make RETINSTR take
1524         only a condition and a register.
1525         * sysdeps/arm/dl-machine.h: Use __USE_BX__ instead of
1526         __THUMB_INTERWORK__.
1527         (_dl_start_user): Use BX.
1528         * sysdeps/arm/strlen.S: Use DO_RET.
1529         * sysdeps/unix/arm/brk.S: Likewise.
1530         * sysdeps/unix/arm/fork.S: Likewise.
1531         * sysdeps/unix/arm/sysdep.S: Likewise.
1532         * sysdeps/unix/arm/sysdep.h: Likewise.
1533         * sysdeps/unix/sysv/linux/arm/clone.S: Update uses of RETINSTR.
1534         * sysdeps/unix/sysv/linux/arm/mmap.S: Likewise.
1535         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise.
1536         * sysdeps/unix/sysv/linux/arm/socket.S: Likewise.
1537         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
1538         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
1540 2004-12-02  Roland McGrath  <roland@redhat.com>
1542         * extra-lib.mk (object-suffixes-$(lib)): Add .oS when
1543         $(lib)-static-only-routines is nonempty.
1544         (extra-objs, o-iterator.mk rule): Filter out .oS from generators.
1545         Add a special rule for .oS objects -> _nonshared.a library.
1547 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
1549         * time/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
1550         convert T2, not T.
1551         * time/Makefile (tests): Add tst-mktime3.
1552         * time/tst-mktime3.c: New test.
1554 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
1556         * stdlib/stdlib.h (realpath): Remove nonnull attribute.
1558         * posix/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
1559         normal_bracket label.
1561         * time/tst-mktime2.c (bigtime_test): Initialize tm.tm_isdst to -1.
1563 2004-12-01  Roland McGrath  <roland@redhat.com>
1565         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c):
1566         Do $(make-target-directory).
1568 2004-11-29  Roland McGrath  <roland@redhat.com>
1570         * posix/confstr.c: Avoid punctuation in #error text.
1572 2004-11-27  Ulrich Drepper  <drepper@redhat.com>
1574         * posix/Makefile (tests): Add tst-sysconf.
1575         * posix/tst-sysconf.c: New file.
1577         * posix/getconf.c (vars): Add support for _SC_IPV6 and
1578         _SC_RAW_SOCKETS.
1579         * sysdeps/posix/sysconf.c (__sysconf): Add support for _SC_IPV6
1580         and _SC_RAW_SOCKETS.
1581         * sysdeps/generic/bits/confname.h: Define _SC_IPV6 and
1582         _SC_RAW_SOCKETS.
1584 2004-11-26  Jakub Jelinek  <jakub@redhat.com>
1586         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add GETCONF_DIR.
1588 2004-11-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1590         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
1591         NO_SGIDEFS_H isn't defined.  Don't include sgidefs.h twice.
1592         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
1593         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
1594         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
1596 2004-11-27  Ulrich Drepper  <drepper@redhat.com>
1598         * include/dlfcn.h (__libc_dlopen): Add __RTLD_DLOPEN to the mode
1599         parameter.  Reported by VY Newsum <newsum@fel.tno.nl>.
1601 2004-11-10  Daniel Jacobowitz  <dan@debian.org>
1603         * libio/iolibio.h (_IO_fclose, _IO_new_fclose, _IO_old_fclose,
1604         _IO_fflush, _IO_fgetpos, _IO_fgetpos64, _IO_fgets, _IO_fopen,
1605         _IO_old_fopen, _IO_new_fopen, _IO_fopen64, __fopen_internal,
1606         _IO_fprintf, _IO_fputs, _IO_fsetpos, _IO_fsetpos64, _IO_ftell,
1607         _IO_fread, _IO_fwrite, _IO_gets, _IO_printf, _IO_puts, _IO_scanf,
1608         _IO_fflush_internal, _IO_ftell_internal, _IO_fputs_internal)
1609         _IO_fwrite_internal): Remove incorrect __THROW.
1610         * libio/libioP.h (_IO_default_xsputn, _IO_wdefault_xsputn,
1611         _IO_default_xsgetn, _IO_wdefault_xsgetn, _IO_default_write,
1612         _IO_default_read, _IO_getline, _IO_getline_info, _IO_getwline,
1613         _IO_getwline_info, _IO_file_read_internal, _IO_sgetn_internal,
1614         _IO_wdo_write_internal, _IO_do_write_internal,
1615         _IO_getline_info_internal, _IO_getline_internal,
1616         _IO_vfprintf_internal, _IO_putc_internal, _IO_read, _IO_write,
1617         _IO_close): Likewise.
1619 2004-11-26  Jakub Jelinek  <jakub@redhat.com>
1621         * posix/Makefile (install-others): Add $(inst_libexecdir)/getconf.
1622         (CFLAGS-sysconf.c): Add -D_GETCONF_DIR.
1623         (CFLAGS-getconf.c): New.
1624         ($(inst_libexecdir)/getconf): New.
1625         * posix/confstr.c (confstr): Use __sysconf to query specifications
1626         that don't have _POSIX_V6_* macros defined.  Use __*_{C,LD}FLAGS
1627         macros defined in bits/environments.h.
1628         * sysdeps/posix/sysconf.c: Include stdlib.h, string.h and
1629         sys/stat.h.
1630         (__sysconf_check_spec): New routine.
1631         (__sysconf): Use it.
1632         * posix/getconf.c (specs): Change into structure array.
1633         (main): If -v is not given, try to get default from
1634         $(libexecdir)/getconf/default.  If specification is not
1635         supported by this getconf, try to execute
1636         $(libexecdir)/getconf/$(specification).
1637         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/environments.h: New file.
1638         * sysdeps/unix/sysv/linux/s390/bits/environments.h: New file.
1639         * sysdeps/unix/sysv/linux/powerpc/bits/environments.h: New file.
1640         * sysdeps/unix/sysv/linux/sparc/bits/environments.h: New file.
1641         * sysdeps/unix/sysv/linux/i386/bits/environments.h: New file.
1642         * sysdeps/unix/sysv/linux/x86_64/bits/environments.h: New file.
1643         * sysdeps/generic/bits/environments.h (__ILP32_OFFBIG_CFLAGS):
1644         Define.
1646         * stdlib/stdlib.h (setenv): Use nonnull only for second argument.
1647         (unsetenv): Remove.
1649 2004-11-23  Paolo Bonzini  <bonzini@gnu.org>
1651         * posix/regcomp.c (analyze_tree): Always call calc_epsdest.
1652         (calc_inveclosure): Use re_node_set_insert_last.
1653         (parse_dup_op): Lower X{1,5} to (X(X(X(XX?)?)?)?)?
1654         rather than X?X?X?X?X?.
1655         * posix/regex_internal.h (re_node_set_insert_last): New declaration.
1656         * posix/regex_internal.c (re_node_set_insert_last): New function.
1657         * posix/PCRE.tests: Add testcases.
1659 2004-11-25  Ulrich Drepper  <drepper@redhat.com>
1661         * dlfcn/dlfcn.h: Remove nonnull attribute from dlopen.
1663         * posix/confstr.c (confstr): Return appropriate strings for
1664         _CS_LFS_LINTFLAGS, _CS_LFS64_CFLAGS, and _CS_LFS64_LINTFLAGS.
1666 2004-11-05  Maciej W. Rozycki  <macro@mips.com>
1668         * sysdeps/mips/dl-machine.h: Include <sgidefs.h>.  Use _ABIO32,
1669         _ABIN32 and _ABI64 for ABI selection throughout.
1670         * sysdeps/mips/elf/start.S: Likewise.
1671         * sysdeps/mips/mips64/__longjmp.c: Likewise.
1672         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
1673         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
1674         * sysdeps/mips/mips64/setjmp.S: Likewise.
1675         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
1676         * sysdeps/mips/sys/regdef.h: Likewise.
1677         * sysdeps/mips/sys/ucontext.h: Likewise.
1678         * sysdeps/unix/mips/sysdep.h: Likewise.
1679         * sysdeps/unix/sysv/linux/kernel-features.h: Likewise.
1680         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
1681         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
1682         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
1683         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
1684         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
1685         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
1686         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
1687         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
1689         * sysdeps/mips/atomicity.h: Use _ABIO32, _ABIN32 and _ABI64 for
1690         ABI selection throughout.
1691         * sysdeps/mips/bits/setjmp.h: Likewise.
1692         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
1693         * sysdeps/mips/machine-gmon.h: Likewise.
1694         * sysdeps/mips/sys/asm.h: Likewise.
1695         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
1696         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
1697         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
1698         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
1699         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
1700         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
1701         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
1702         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
1704         * sysdeps/mips/sgidefs.h: Prevent <asm/sgidefs.h> from being
1705         included by kernel headers and undo its settings if already
1706         included.  Define _ABIO32, _ABIN32 and _ABI64 if missing and use
1707         them to define _MIPS_SIM_ABI32, _MIPS_SIM_NABI32 and
1708         _MIPS_SIM_ABI64 for compatibility.
1709         * sysdeps/unix/sysv/linux/mips/Makefile: Use _ABIO32, _ABIN32 and
1710         _ABI64 for ABI selection in generated syscall-list.h
1711         * sysdeps/unix/sysv/linux/mips/configure.in: Use _ABIO32, _ABIN32
1712         and _ABI64 for ABI selection in generated asm-unistd.h.
1713         * sysdeps/unix/sysv/linux/mips/configure: Regenerate.
1715         * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Correct
1716         an inverted _MIPS_SIM conditional.
1718 2004-11-23  Alexandre Oliva  <aoliva@redhat.com>
1720         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Use free
1721         range even if it doesn't match exactly.
1723 2004-11-23  Jakub Jelinek  <jakub@redhat.com>
1725         * nss/nss_files/files-XXX.c (internal_getent): If parse_line returned
1726         -1, also do H_ERRNO_SET (NETDB_INTERNAL).
1728 2004-11-22  Ulrich Drepper  <drepper@redhat.com>
1730         * sysdeps/i386/fpu_control.h: Add volatile to the asms.
1731         Patch by Alexander Stohr.
1733 2004-11-22  Jakub Jelinek  <jakub@redhat.com>
1735         * nscd/nscd_getai (__nscd_getai): Avoid memory and file descriptor
1736         leaks.
1737         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free air.
1739 2004-11-15  Maciej W. Rozycki  <macro@mips.com>
1741         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h (__SI_MAX_SIZE):
1742         Define appropriately based on __WORDSIZE.
1743         [struct siginfo] (__pad0): Add for explicit padding.
1745         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Formatting fixes
1746         throughout.
1748 2004-11-22  Ulrich Drepper  <drepper@redhat.com>
1750         * dirent/dirent.h: Add nonnull attributes.
1751         * dlfcn/dlfcn.h: Likewise.
1753 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
1755         * sysdeps/ieee754/k_standard.c: Document code 50.
1756         (__kernel_standard) <case 50>: Avoid raising div-by-zero
1757         exception again.
1759 2004-11-19  H.J. Lu  <hongjiu.lu@intel.com>
1761         [BZ #552]
1762         * math/libm-test.inc (tgamma_test): Update tgamma (0) and
1763         tgamma (-0).
1764         * sysdeps/generic/w_tgamma.c (__tgamma): Properly handle |x| == 0.
1765         * sysdeps/generic/w_tgammaf.c (__tgammaf): Likewise.
1766         * sysdeps/generic/w_tgammal.c (__tgammal): Likewise.
1767         * sysdeps/ieee754/dbl-64/e_gamma_r.c (__ieee754_gamma_r): Likewise.
1768         * sysdeps/ieee754/flt-32/e_gammaf_r.c: Likewise.
1769         * sysdeps/ieee754/ldbl-128/e_gammal_r.c: Likewise.
1770         * sysdeps/ieee754/ldbl-96/e_gammal_r.c: Likewise.
1771         * sysdeps/ieee754/k_standard.c (__kernel_standard): Handle
1772         tgamma (0) and tgamma (-0).
1774 2004-11-20  Ulrich Drepper  <drepper@redhat.com>
1776         * time/tzfile.c (__tzfile_read): Avoid open for checking whether
1777         the file we already use changed.
1779         * misc/syslog.c: Remove !USE_IN_LIBIO code.
1781 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
1783         * signal/signal.h (__sysv_signal, sysv_signal, signal, bsd_signal,
1784         ssignal): Remove __nonnull attribute.
1786 2004-11-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1788         * sysdeps/unix/sysv/linux/sh/sys/procfs.h: New file.
1790 2004-11-20  Ulrich Drepper  <drepper@redhat.com>
1792         * signal/signal.h: Add nonnull attributes.
1794         * signal/signal.h: Add deprecated attributes to sigstack,
1795         sigpause, sigblock, sigsetmask, siggetmask.
1797 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
1799         * sysdeps/unix/sysv/linux/bits/socket.h (SCM_RIGHTS): Avoid
1800         comma at the end of enum if __USE_BSD is not defined.
1802 2004-11-19  Ulrich Drepper  <drepper@redhat.com>
1804         * malloc/malloc.c (_int_malloc): Check for corruption of chunk
1805         which is about to be returned.
1807         * malloc/malloc.c (_int_free): Add a few more cheap tests for
1808         corruption.
1810 2004-11-17  Randolph Chung  <tausq@debian.org>
1812         * sysdeps/hppa/dl-machine.h (TRAMPOLINE_TEMPLATE): Add unwind
1813         annotations.
1815 2004-11-18  Jakub Jelinek  <jakub@redhat.com>
1817         [BZ #544]
1818         * posix/regex.h (RE_NO_SUB): New define.
1819         * posix/regex_internal.h (OP_DELETED_SUBEXP): New.
1820         (re_dfa_t): Add subexp_map.
1821         * posix/regcomp.c (struct subexp_optimize): New type.
1822         (optimize_subexps): New routine.
1823         (re_compile_internal): Call it.
1824         (re_compile_pattern): Set preg->no_sub to 1 if RE_NO_SUB.
1825         (free_dfa_content): Free subexp_map.
1826         (calc_inveclosure, calc_eclosure): Skip OP_DELETED_SUBEXP nodes.
1827         * posix/regexec.c (re_search_internal): If subexp_map
1828         is not NULL, duplicate registers as needed.
1829         * posix/Makefile: Add rules to build and run tst-regex2.
1830         * posix/tst-regex2.c: New test.
1831         * posix/rxspencer/tests: Fix last two tests (\0 -> \1).
1832         Add some new tests for nested subexpressions.
1834 2004-11-18  Ulrich Drepper  <drepper@redhat.com>
1836         * libio/libio.h (_IO_FLAGS2_FORTIFY): Renamed from
1837         _IO_FLAGS2_CHECK_PERCENT_N.
1838         * debug/fprintf_chk.c: Adjust all users.
1839         * debug/printf_chk.c: Likewise.
1840         * debug/vfprintf_chk.c: Likewise.
1841         * debug/vprintf_chk.c: Likewise.
1842         * debug/vsnprintf_chk.c: Likewise.
1843         * debug/vsprintf_chk.c: Likewise.
1844         * stdio-common/vfprintf.c: Likewise.  Detect missing %N$ formats.
1845         * debug/tst-chk1.c: Test detection of missing %N$ formats.
1847 2004-11-15  Jakub Jelinek  <jakub@redhat.com>
1849         * posix/bug-regex24.c: Include string.h.
1851         * nis/nis_clone_obj.c (nis_clone_object): Rename out3 label to out2
1852         and out2 to out.  Remove out label.  Formatting.
1854 2004-11-15  Ulrich Drepper  <drepper@redhat.com>
1856         * include/stdio.h: Do not mark __libc_message as noreturn.
1857         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Add loop to
1858         fool gcc.  Include <stdbool.h>.
1859         * sysdeps/posix/libc_fatal.c (__libc_fatal): Add loop to fool gcc.
1860         (__libc_message): Fix typo.
1862 2004-11-13  Ulrich Drepper  <drepper@redhat.com>
1864         * malloc/malloc.c (malloc_state): stat_lock_* elements need only
1865         be defined if THREAD_STATS is defined.  Remove pad0_ since it does
1866         not align with cache line sizes in general anyway.
1868 2004-11-13  Jakub Jelinek  <jakub@redhat.com>
1870         * elf/rtld.c (print_statistics): Avoid segfaults if not all namespaces
1871         are used.  Fix computation of num_relative_relocations on RELA
1872         architectures other than IA-64 and Alpha.
1874 2004-11-13  Ulrich Drepper  <drepper@redhat.com>
1876         * malloc/malloc.c (_int_free): Use munmap_chunk for handling
1877         mmaped memory.
1879 2004-11-12  Ulrich Drepper  <drepper@redhat.com>
1881         * malloc/malloc.c (_int_free): Remove test for NULL parameter.
1882         (_int_realloc): Call _int_free only if memory parameter is not NULL.
1884         * sysdeps/unix/sysv/linux/libc_fatal.c: Add new function __libc_message
1885         which performs the printing and simple format string handling.  The
1886         string is written to tty, stderr, syslog in this order, stopping after
1887         the first successful output.
1888         (__libc_fatal): Call __libc_message.
1889         * include/stdio.h: Declare __libc_message.
1890         * malloc/malloc.c (malloc_printerr): Use __libc_message.
1891         * debug/chk_fail.c: Also print message with __libc_message.
1892         * debug/test-strcpy_chk.c: Ensure that debug messages are not printed
1893         to the terminal or stderr.
1894         * debug/tst-chk1.c: Likewise.
1896         * posix/Makefile: Remove gpl2lgpl variable.
1898 2004-11-12  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1900         * elf/elf.h: Add 20 bit relocations R_390_*20.
1902 2004-11-12  Jakub Jelinek  <jakub@redhat.com>
1904         * sysdeps/unix/sysv/linux/i386/setuid.c: Include linux/posix_types.h.
1905         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
1906         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1907         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
1908         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1909         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
1911 2004-11-12  Andreas Schwab  <schwab@suse.de>
1913         * nis/ypclnt.c (ypprot_err): Fix "minor optimizations".
1915 2004-11-12  Ulrich Drepper  <drepper@redhat.com>
1917         * posix/Makefile (tests): Add bug-regex24.
1918         * posix/bug-regex24.c: New file.
1920 2004-11-12  Paolo Bonzini  <bonzini@gnu.org>
1922         * posix/regexec.c (check_dst_limits_calc_pos_1): Use the map to
1923         cut recursive paths.  Make exit condition more precise.
1924         (match_ctx_add_entry): Initialize the map.
1925         * posix/regex_internal.h (struct re_backref_cache_entry): Add a map of
1926         reachable subexpression nodes from each backreference cache entry.
1928 2004-11-10  Jakub Jelinek  <jakub@redhat.com>
1930         * sysdeps/unix/sysv/linux/setreuid.c: Remove sys/syscall.h,
1931         sys/types.h, linux/posix_types.h, sysdep.h and pthread-functions.h
1932         includes.  Include setxid.h.  Use INLINE_SETXID_SYSCALL macro
1933         instead of INLINE_SYSCALL, kill the HAVE_PTR__NPTL_SETXID guarded
1934         snippets.
1935         * sysdeps/unix/sysv/linux/setegid.c: Likewise.
1936         * sysdeps/unix/sysv/linux/setuid.c: Likewise.
1937         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
1938         * sysdeps/unix/sysv/linux/setgid.c: Likewise.
1939         * sysdeps/unix/sysv/linux/setresuid.c: Likewise.
1940         * sysdeps/unix/sysv/linux/setresgid.c: Likewise.
1941         * sysdeps/unix/sysv/linux/setregid.c: Likewise.
1942         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
1943         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1944         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
1945         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
1946         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
1947         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1948         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
1949         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
1950         * sysdeps/unix/sysv/linux/alpha/setreuid.c: Likewise.
1951         Formatting.  Change signed int into int.
1952         * sysdeps/unix/sysv/linux/alpha/setresuid.c: Likewise.
1953         * sysdeps/unix/sysv/linux/alpha/setresgid.c: Likewise.
1954         * sysdeps/unix/sysv/linux/alpha/setregid.c: Likewise.
1955         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
1956         Remove.
1957         * sysdeps/unix/setxid.h: New file.
1959         * Rules (binaries-static): Add xtests-static.
1960         * Makeconfig (run-program-prefix): Filter also xtests-static.
1962 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu.
1964         [BZ #535]
1965         * time/difftime.c: Fix a double-rounding bug on hosts with
1966         64-bit time_t and long double being IEEE double.  Also, port
1967         to more valid C99 hosts, even those that have padding bits.
1968         Don't include <values.h> since it is marked as an obsolescent
1969         interface.  Include <limits.h>, <float.h>, and <stdint.h> instead.
1970         (TYPE_BITS, TYPE_FLOATING, TYPE_SIGNED): New macros.
1971         (subtract): New static function, that works correctly without
1972         double-rounding, even on hosts with 64-bit time_t.  Also cater
1973         to hosts with padding bits.
1974         (__difftime): Use it.  Use DBL_MANT_DIG and LDBL_MANT_DIG to
1975         determine whether floating types are wide enough: the old
1976         test (which used sizeof) could in theory report the wrong results
1977         on hosts with padding bits in floating-point values.
1979 2004-11-11  Simon Josefsson  <jas@extundo.com>
1981         [BZ #542]
1982         * sysdeps/generic/strtok_r.c [HAVE_CONFIG_H]: Include config.h.
1983         [!_LIBC]: Include strtok_r.h (in gnulib), map __strtok_r to
1984         strtok_r and __rawmemchr to strch.
1985         (__strtok_r): Use C89 prototype.
1986         [weak_alias]: Move calls to libc_hidden_def and weak_alias into
1987         this #ifdef.
1989 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
1991         [BZ #541]
1992         * time/mktime.c (SHR): New macro, which is a portable
1993         substitute for >> that should work even on Crays.
1994         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
1995         Problem reported by Mark D. Baushke in
1996         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
1998 2004-11-09  Paolo Bonzini  <bonzini@gnu.org>
2000         * posix/regexec.c (match_ctx_free_subtops): Remove, merge into...
2001         (match_ctx_clean): ... this function.
2002         (match_ctx_free): Call match_ctx_clean.
2004         * posix/regexec.c (transit_state): Remove the check for
2005         out-of-bounds buffers.
2006         (check_matching): Check here for out-of-bounds buffers.
2007         (re_search_internal): Store into match_kind a set of bits
2008         indicating which incantation of fastmap scanning must be
2009         used.  Use a switch statement instead of multiple ifs.
2010         Exit the final "for (;;)" with goto free_return unless
2011         the match succeeded, thus simplifying some conditionals.
2013         * posix/regex_internal.c (re_string_reconstruct,
2014         re_string_context_at): Add several branch predictions for
2015         case-sensitive matching and no transition table being used.
2017 2004-11-10  Ulrich Drepper  <drepper@redhat.com>
2019         * posix/tst-waitid.c: Don't use error to print error message, they
2020         won't end up in the .out file.
2022 2004-11-09  Ulrich Drepper  <drepper@redhat.com>
2024         * nscd/nscd-client.h (libc_locked_map_ptr): Add new first
2025         parameter, used as class for definition.
2026         * nscd/nscd_getpw_r.c: Adjust for libc_locked_map_ptr change.
2027         (pw_map_free): Ensure no crash after memory is freed.
2028         * nscd/nscd_getgr_r.c: Likewise.  Make map externally visible.
2029         * nscd/nscd_gethst_r.c: Likewise.
2030         * nscd/nscd_getai.c: Use map from nscd_gethost.c.
2031         * nscd/nscd_initgroups.c: Use map from nscd_getgr.c.
2033         * nscd/nscd_getai.c: Add some checks to detect corrupt databases.
2034         * nscd/nscd_getgr_r.c: Likewise
2035         * nscd/nscd_gethst_r.c: Likewise.
2036         * nscd/nscd_getpw_r.c: Likewise
2038 2004-11-09  Jakub Jelinek  <jakub@redhat.com>
2040         * posix/regcomp.c (calc_eclosure_iter): Don't access
2041         dfa->edests[node].elems[0] if dfa->edests[node].nelem == 0.
2042         * posix/rxspencer/tests: Add 5 new tests.
2044 2004-11-09  Ulrich Drepper  <drepper@redhat.com>
2046         * sysdeps/unix/sysv/linux/ifaddrs.c: Determine sin6_scope_id field
2047         value correctly.  Patch by Mitsuru Kanda <mk@karaba.org>.
2049 2004-11-04  Jakub Jelinek  <jakub@redhat.com>
2051         * libio/fileops.c (_IO_new_file_seekoff): If mode is 0 and
2052         fp->_offset == _IO_pos_BAD, just call _IO_SYSSEEK (fp, 0, dir)
2053         and if successful set fp->_offset.
2054         * libio/Makefile (tests): Add bug-ungetc3.
2055         * libio/bug-ungetc3.c: New test.
2057 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
2059         * sysdeps/gnu/_G_config.h (_G_HAVE_MREMAP): Define symbol.
2060         * sysdeps/mach/hurd/_G_config.h: New file.
2061         * libio/fileops.c (mmap_remap_check) [__linux__]: Replaced with
2062         [_G_HAVE_MREMAP].
2064 2004-11-08  Ulrich Drepper  <drepper@redhat.com>
2066         * posix/regcomp.c (utf8_sb_map): Define.
2067         (free_dfa_content): Don't free dfa->sb_char if it's a pointer to
2068         utf8_sb_map.
2069         (init_dfa): Use utf8_sb_map instead of initializing memory when the
2070         encoding is UTF-8.
2072 2004-11-03  Paolo Bonzini  <bonzini@gnu.org>
2074         * posix/regcomp.c (init_dfa): Get the codeset name outside glibc as
2075         well.  Check if it is spelled UTF8 as well as UTF-8, and check
2076         case-insensitively.  Set dfa->map_notascii manually when outside
2077         glibc.
2078         * posix/regex_internal.c (build_wcs_upper_buffer) [!_LIBC]: Enable
2079         optimizations based on map_notascii.
2080         * posix/regex_internal.h [HAVE_LANGINFO_H || HAVE_LANGINFO_CODESET
2081         || _LIBC]: Include langinfo.h.
2083         * posix/regex_internal.h (struct re_backref_cache_entry): Add "more"
2084         field.
2085         * posix/regexec.c (check_dst_limits): Hoist computation of the source
2086         and destination bkref_idx out of the loop.  Pass it to
2087         check_dst_limits_calc_pos.
2088         (check_dst_limits_calc_pos_1): New function, containing the recursive
2089         loop of check_dst_limits_calc_pos; uses the "more" field of
2090         struct re_backref_cache to control the loop.
2091         (check_dst_limits_calc_pos): Store into "boundaries" the position
2092         relative to lim's start and end positions.  Do not accept eclosures,
2093         accept bkref_idx instead.  Call check_dst_limits_calc_pos_1 to do the
2094         work.
2095         (sift_states_bkref): Use the "more" field of struct re_backref_cache
2096         to control the loop.  A big "if" was turned into a continue and the
2097         function was reindented.
2098         (get_subexp): Use the "more" field of struct re_backref_cache
2099         to control the loop.
2100         (match_ctx_add_entry): Initialize the bkref_ents' "more" field.
2101         (search_cur_bkref_entry): Return -1 if out of bounds.
2103         * posix/regexec.c (empty_set): Remove.
2104         (sift_states_backward): Remove cur_src variable.  Move inner loop
2105         to build_sifted_states.
2106         (build_sifted_states): Extract from sift_states_backward.  Do not
2107         use empty_set.
2108         (update_cur_sifted_state): Do not use empty_set.  Special case
2109         dest_nodes->nelem == 0.
2111         * posix/regex_internal.h (struct re_backref_cache_entry): Remove flag
2112         field.
2113         (struct re_sift_context_t): Remove cur_bkref, cls_subexp_idx,
2114         check_subexp fields.  Move limits last.
2115         * posix/regexec.c (match_ctx_clear_flag): Remove.
2116         (sift_ctx_init): Remove check_subexp parameter.  Do not set removed
2117         fields.  Callers adjusted.
2118         (expand_bkref_cache): Remove last_str parameter.  Callers adjusted.
2119         (re_search_internal): Remove fast_translate variable.
2120         (update_cur_sifted_state): Pass candidates as the final parameter
2121         to sift_states_bkref.
2122         (sift_states_bkref): Change last unused parameter to be "candidates",
2123         do not fetch candidates into a local variable.
2124         Remove dead test for "node == sctx->bkref", and the cur_bkref_idx
2125         variable.
2126         Remove loops that set/reset the flag field of backref cache entries.
2127         (check_arrival_add_next_nodes): Use a signed int to hold the return
2128         value of re_node_set_insert.
2129         (group_nodes_into_DFAstates): Likewise.
2130         (match_ctx_add_entry): Do not set the flag field of the new entry.
2132 2004-11-05  Roland McGrath  <roland@redhat.com>
2134         * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Define
2135         _dl_sysinfo_dso under [NEED_DL_SYSINFO_DSO] as well.
2136         * elf/rtld.c (dl_main): Set up GLRO(dl_sysinfo_dso) under
2137         [NEED_DL_SYSINFO_DSO] as well.
2138         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Always include
2139         AT_SYSINFO and AT_SYSINFO_EHDR in name table.
2140         (_dl_sysdep_start) [NEED_DL_SYSINFO_DSO]: Match AT_SYSINFO_EHDR.
2141         * elf/dl-support.c (_dl_sysinfo_dso): Define also under
2142         [NEED_DL_SYSINFO_DSO].
2143         (_dl_aux_init) [NEED_DL_SYSINFO || NEED_DL_SYSINFO_DSO]:
2144         Match AT_SYSINFO_EHDR and set GL(dl_sysinfo_dso).
2146 2004-11-05  Roland McGrath  <roland@redhat.com>
2148         * manual/errno.texi (Error Codes): Revert last change for now.
2149         * sysdeps/gnu/errlist.c: Regenerated.
2151 2004-11-04  Roland McGrath  <roland@frob.com>
2153         * Makeconfig (link-libc, rpath-dirs): Remove AIX cruft definitions.
2154         (LDFLAGS-rpath-ORIGIN, LDFLAGS-soname-fname): Likewise.
2155         (LDFLAGS-rdynamic, LDFLAGS-Bsymbolic): Likewise.
2156         ($(common-objpfx)gnu/lib-names.stmp): Likewise.
2158 2004-11-01  Jakub Jelinek  <jakub@redhat.com>
2160         * sysdeps/unix/sysv/linux/x86_64/sys/procfs.h [__WORDSIZE == 32]
2161         (elf_fpxregset_t): New type.
2162         (struct elf_prpsinfo): If __WORDSIZE == 32, change pr_[ug]id type
2163         to unsigned short int.
2164         * sysdeps/unix/sysv/linux/x86_64/sys/user.h
2165         (struct user_fpregs_struct): Fix comment.
2166         * sysdeps/i386/fpu/bits/mathdef.h (float_t, double_t): If
2167         __FLOAT_EVAL_METHOD__ is defined and 0, typedef to float resp. double.
2168         * sysdeps/x86_64/fpu/bits/mathdef.h: Include bits/wordsize.h.
2169         (float_t, double_t): If -m32 and not -mfpmath=sse, typedef to
2170         long double.
2171         * sysdeps/x86_64/fpu/bits/fenv.h: Include bits/wordsize.h.
2172         (fenv_t): Remove __mxcsr field for -m32.
2174 2004-11-04  Jakub Jelinek  <jakub@redhat.com>
2176         * libio/ftello.c (ftello): Don't subtract save_end - save_base
2177         if pos is _IO_pos_BAD.
2178         * libio/ftello64.c (ftello64): Likewise.
2179         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
2180         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
2181         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
2182         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
2183         * libio/ioftell.c (_IO_ftell): Likewise.
2184         Cast to long int instead of off_t when checking for overflow.
2186 2004-11-04  Richard Henderson  <rth@redhat.com>
2188         * sysdeps/unix/sysv/linux/alpha/register-dump.h (regnames): Align.
2189         (linefeed): Remove.
2190         (register_dump): Rewrite to generate into a flat buffer instead
2191         of into iovecs.
2193 2004-11-02  Jakub Jelinek  <jakub@redhat.com>
2195         * debug/tst-chk1.c (ret): New volatile variable.
2196         (CHK_FAIL_END): Remove redundant ret setting.
2197         (do_test): Remote ret variable.
2199 2004-01-03  Paolo Bonzini  <bonzini@gnu.org>
2201         * posix/regex_internal.h (__regfree) [!_LIBC]: Define to regfree.
2203 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
2205         * sysdeps/generic/utime.c: Include <stddef.h>.
2207         * sysdeps/generic/sysconf.c: Include <grp.h> and <pwd.h>.
2209         * sysdeps/generic/tempname.c (__path_search): Add missing argument
2210         TRY_TMPDIR.
2212 2004-10-31  Mariusz Mazur <mmazur@kernel.pl>
2214         * sysdeps/unix/sysv/linux/alpha/setregid.c: New file.
2215         * sysdeps/unix/sysv/linux/alpha/setresgid.c: New file.
2216         * sysdeps/unix/sysv/linux/alpha/setresuid.c: New file.
2217         * sysdeps/unix/sysv/linux/alpha/setreuid.c: New file.
2219 2004-10-27  Derek R. Price  <derek@ximbiot.com>
2221         [BZ #487] This change is imported from gnulib.
2222         * time/mktime.c (not_equal_tm) [DEBUG]: Remove redundant check.
2224 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
2226         [BZ #473]
2227         * time/tst-mktime.c (main): Don't assume that mktime fails
2228         when given time stamps before 1970.  It returns negative
2229         time_t values instead, for compatibility with BSD.
2231         * time/tst-mktime2.c: New file.
2232         * time/Makefile (tests): Add it.
2234         [BZ #473] Import from gnulib.  Revamp to avoid several problems near
2235         time_t extrema, and on hosts with 64-bit time_t and 32-bit int.
2236         This fixes Debian bug 177940.
2237         * time/mktime.c (TIME_T_MIDPOINT): New macro.
2238         (ydhms_diff): Renamed from ydhms_tm_diff, with a new signature,
2239         which avoids overflow problems on hosts with 64-bit time_t and
2240         32-bit int.  All callers changed.  Now an inline function.
2241         Verify at compile-time that long int is wide enough to avoid
2242         these overflow problems.
2243         (guess_time_tm): New function.
2244         (__mktime_internal): Use it.  Avoid overflow when computing yday on
2245         hosts with 64-bit long and 32-bit int.  Remove tests for 69;
2246         no longer needed.  Use if rather than #ifdef for LEAP_SECONDS_POSSIBLE
2247         so that the code is checked by more compilers.
2248         Do not rely on floating point to probe: stick to integer arithmetic,
2249         to avoid potential porting problems.
2250         Repair potential overflow correctly in the Southern Hemisphere.
2251         (localtime_offset): Add a FIXME for the case where time_t is unsigned.
2253 2004-10-30  Andreas Schwab  <schwab@suse.de>
2255         * sysdeps/m68k/dl-machine.h (elf_machine_rela)
2256         (elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
2257         instead of static.
2259 2004-10-30  Andreas Schwab  <schwab@suse.de>
2261         * sysdeps/unix/sysv/linux/waitid.c: Include <stddef.h> for NULL.
2263 2004-10-30  Ulrich Drepper  <drepper@redhat.com>
2265         * malloc/malloc.c (_int_free): Use unique comments for the error
2266         cases.
2268 2004-10-28  Roland McGrath  <roland@frob.com>
2270         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_fork): Use i386_thread_state
2271         instead of machine_thread_state.
2273 2004-10-28  Roland McGrath  <roland@redhat.com>
2275         * sysdeps/unix/sysv/linux/syscalls.list: Remove setaltroot.
2277 2004-10-28  Ulrich Drepper  <drepper@redhat.com>
2279         * elf/dl-open.c (dl_open_worker): Remove reference to glibcbug script.
2281 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
2283         * elf/dl-load.c (_dl_map_object): Use cache_rpath to check for
2284         existing rpath in main executable, not explicit test.
2286 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
2288         * include/resolv.h (_res_opcodes): New extern.
2289         Add libresolv_hidden_proto.
2290         * resolv/res_debug.c (_res_opcodes): Remove.
2291         (__p_class_syms, __p_type_syms): Add libresolv_hidden_proto
2292         and libresolv_hidden_data_def.  Remove attribute_hidden.
2293         * resolv/res_mkquery (_res_opcodes): Remove.
2294         * resolv/res_data.c (_res_opcodes): Remove attribute_hidden.
2295         Add libresolv_hidden_data_def.
2297 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
2299         * elf/dl-open.c (_dl_open): Don't allow explicitly opening a DSO
2300         into an empty namespace.
2302         * elf/dl-fini.c (_dl_fini): Fix search for map in maps array.
2303         Reverse order of namespaces.
2304         * elf/Makefile: Add rules to build and run tst-dlmopen3.
2305         * elf/tst-dlmopen3.c: New file.
2306         * elf/tst-dlmopen1mod.c: Add check whether constructor runs.
2308 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
2310         * sysdeps/generic/glob.c (globfree): Clear gl_pathv after freeing it.
2311         * posix/Makefile: Add rules to build and run bug-glob2 test.
2312         * posix/bug-glob2.c: New test.
2314 2004-10-27  Roland McGrath  <roland@frob.com>
2316         * sysdeps/mach/hurd/i386/tls.h (HURD_TLS_DESC_DECL): New macro.
2317         (_hurd_tls_init): Use it.
2318         (_hurd_tls_fork): New function.
2319         * sysdeps/mach/hurd/fork.c (__fork) [USE_TLS]: Call it.
2321 2004-10-26  Roland McGrath  <roland@frob.com>
2323         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Initialize TCB->tcb.
2325 2004-10-26  Jakub Jelinek  <jakub@redhat.com>
2327         * sysdeps/gnu/netinet/udp.h (struct udphdr): Use u_int16_t
2328         type instead of uint16_t.  Formatting.
2330 2004-10-25  Roland McGrath  <roland@redhat.com>
2332         * login/openpty.c (openpty): Add libutil_hidden_def.
2334         * nss/nss_files/files-parse.c (nss_files_parse_hidden_def): Define to
2335         either libc_hidden_def or libnss_files_hidden_def, not hidden_def.
2336         This file is also compiled into libnss_hesiod by #include.
2338 2004-10-25  Roland McGrath  <roland@frob.com>
2340         * sysdeps/unix/bsd/hp: Directory and all files removed.
2341         These are now in the ports repository.
2342         * sysdeps/unix/bsd/osf: Likewise.
2343         * sysdeps/unix/bsd/sequent: Likewise.
2344         * sysdeps/unix/bsd/sony: Likewise.
2345         * sysdeps/unix/bsd/ultrix4: Likewise.
2346         * sysdeps/unix/sysv/aix: Likewise.
2347         * sysdeps/unix/sysv/hpux: Likewise.
2348         * sysdeps/unix/sysv/irix4: Likewise.
2349         * sysdeps/unix/sysv/isc2.2: Likewise.
2350         * sysdeps/unix/sysv/minix: Likewise.
2351         * sysdeps/unix/sysv/sco3.2.4: Likewise.
2352         * sysdeps/unix/sysv/sco3.2: Likewise.
2353         * sysdeps/unix/sysv/sysv4: Likewise.
2355         * configure.in (ASM_LINE_SEP): Move this setting to ...
2356         * sysdeps/hppa/configure.in: ... here, new file.
2357         * sysdeps/hppa/configure: New generated file.
2358         * configure: Regenerated.
2360 2004-10-25  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2362         * sysdeps/sh/dl-machine.h: Include sysdep.h.
2363         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add CFI directives.
2364         (elf_machine_runtime_setup): Add always_inline attribute.
2365         (_dl_start_user): Pass the correct environ.
2366         (elf_machine_rela): Replace static inline by auto inline, add
2367         always_inline attribute.
2368         (elf_machine_rela_relative): Likewise.
2369         (elf_machine_lazy_rel): Likewise.
2371 2004-10-24  Ulrich Drepper  <drepper@redhat.com>
2373         * nis/nis_call.c: Pretty printing.  Minor cleanups.
2374         * nis/nis_addmember.c (nis_addmember): Add assert to check buffer
2375         bounds.
2377         * resolv/nss_dns/dns-host.c: Avoid using PLTs.
2378         * include/libc-symbols.h: Define hidden attribute macros for
2379         libnss_nisplus and libutil.
2380         * include/utmp.h: Add libutil_hidden_proto for login_tty.
2381         * login/login_tty.c: Add libutil_hidden_def.
2382         * nis/nisplus-parser.h: Add libnss_nisplus_hidden_proto for parsers.
2383         * nis/nss_nisplus/nisplus-parser.c: Add libnss_nisplus_hidden_def.
2384         * include/pty.h: New file.
2385         * include/rpcsvc/yp.h: New file.
2386         * include/rpcsvc/ypclnt.h: New file.
2387         * include/rpcsvc/ypupd.h: New file.
2388         * include/libc-symbols.h: Define hidden attribute macros for libnsl.
2389         * include/rpcsvc/nislib.h: Use libnsl_hidden_proto for various
2390         functions.
2391         * nis/nis_add.c: Add libnsl_hidden_def.  Minor optimizations.
2392         * nis/nis_call.c: Likewise.
2393         * nis/nis_clone_obj.c: Likewise.
2394         * nis/nis_defaults.c: Likewise.
2395         * nis/nis_domain_of_r.c: Likewise.
2396         * nis/nis_error.c: Likewise.
2397         * nis/nis_file.c: Likewise.
2398         * nis/nis_free.c: Likewise.
2399         * nis/nis_local_names.c: Likewise.
2400         * nis/nis_lookup.c: Likewise.
2401         * nis/nis_modify.c: Likewise.
2402         * nis/nis_print.c: Likewise.
2403         * nis/nis_remove.c: Likewise.
2404         * nis/nis_subr.c: Likewise.
2405         * nis/nis_table.c: Likewise.
2406         * nis/nis_util.c: Likewise.
2407         * nis/yp_xdr.c: Likewise.
2408         * nis/ypclnt.c: Likewise.
2409         * nis/ypupdate_xdr.c: Likewise.
2411         * resolv/res_send.c (send_dg): Cope with failures.
2413         * include/libc-symbols.h: Define hidden attribute macros for
2414         libnss_files.
2415         * include/netdb.h: Use libnss_files_hidden_proto for the parsers
2416         defined in libnss_files, not libc_hidden_proto.
2417         * include/netinet/ether.h: Likewise.
2418         * include/rpc/netdb.h: Likewise.
2419         * nss/nss_files/files-parse.c: Use hidden_def in parser definitions
2420         instead of libc_hidden_def.
2421         * nss/nss_files/files-netgrp.c: Add libnss_files_hidden_def to
2422         _nss_netgroup_parseline definition.
2424 2004-10-23  Roland McGrath  <roland@frob.com>
2426         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Don't return early
2427         after an RPC succeeds.
2429         * sysdeps/vax, sysdeps/unix/bsd/vax: Directories and all files removed.
2430         These are now in the ports repository.
2431         * sysdeps/tahoe, sysdeps/unix/bsd/tahoe: Likewise.
2432         * sysdeps/cris, sysdeps/unix/sysv/linux/cris: Likewise.
2433         * sysdeps/am29k, sysdeps/i860, sysdeps/i960, sysdeps/m88k: Likewise.
2434         * sysdeps/standalone, sysdeps/z8000: Likewise.
2436 2004-10-23  Ulrich Drepper  <drepper@redhat.com>
2438         * resolv/res_send.c (send_dg): Combine write and read to socket
2439         into one loop.
2441 2004-10-22  Roland McGrath  <roland@frob.com>
2443         * Makefile (%.bz2, %.gz): Move these pattern rules ...
2444         * Makerules: ... to here.
2446 2001-10-31  Alexandre Oliva  <aoliva@redhat.com>
2448         * elf/elf.h: Add R_MN10300_* relocation numbers.
2450 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
2452         [BZ #471] Fix imported from gnulib.
2453         * time/mktime.c (leapyear, ydms_tm_diff): Year is of type
2454         long int, not int, to avoid problems when tm_year == INT_MAX
2455         and tm_mon > 12.
2456         (__mktime_intenral): Compute year using long int arithmetic,
2457         not int arithmetic, to avoid problems on hosts where time_t
2458         and long are 64 bits but int is 32.
2460         [BZ #468] Import a fix from gnulib.
2461         * time/mktime.c [! DEBUG]: Do not include <string.h>.
2462         It's needed only if DEBUG is nonzero.
2464         [BZ #470] Import fix from gnulib.
2465         * time/mktime.c [!_LIBC] (__mktime_internal): Define to
2466         mktime_internal, to avoid clashes with any __mktime_internal
2467         function defined in the standard library.
2469         [BZ #469] Imported from gnulib.
2470         * time/mktime.c (__isleap): Remove; all uses replaced by:
2471         (leapyear): New function, which avoids overflow by not adding
2472         1900 to year before testing whether it is a leap year.
2474         [BZ #472] Imported from gnulib.
2475         * time/mktime.c (Local Variables): Remove -DHAVE_TIME_R_POSIX;
2476         no longer used.
2478 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
2480         * resolv/res_send.c: Remove compatibility code which is unused in
2481         glibc and probably bitrotten.
2483         * debug/execinfo.h: Remove __THROW from backtrace prototype.
2485 2004-10-22  Jakub Jelinek  <jakub@redhat.com>
2487         * sysdeps/i386/Makefile (CFLAGS-backtrace.c): Add -fexceptions.
2488         * sysdeps/i386/backtrace.c: Include <bits/libc-lock.h>, <dlfcn.h>,
2489         <stdlib.h> and <unwind.h>.  Remove <bp-checks.h> include.
2490         (struct trace_arg): New type.
2491         (unwind_backtrace, unwind_getip, unwind_getcfa, unwind_getgr): New
2492         fn pointers resp. macros.
2493         (init, backtrace_helper): New functions.
2494         (__backtrace): Rewritten to use _Unwind_Backtrace first and fall
2495         back to frame pointer walking.
2497 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
2499         * sysdeps/unix/sysv/linux/Versions: Things are still in flux, it
2500         seems.  Undo last additions.
2502 2004-10-21  Ulrich Drepper  <drepper@redhat.com>
2504         * posix/execvp.c (execvp): Also ignore ENODEV and ETIMEDOUT errno
2505         values.
2507 2004-10-20  Roland McGrath  <roland@redhat.com>
2509         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Check also
2510         $(config-sysdirs) for shlib-versions files.
2512         * Makeconfig ($(common-objpfx)soversions.i): Replace shell loop with
2513         use of ...
2514         * scripts/soversions.awk: ... this new file.  Collect lib info and
2515         match any DEFAULT line before emitting anything, so DEFAULT can come
2516         later in the concatenation of shlib-versions files.
2518         * manual/errno.texi (Error Codes): Add ENOKEY, EKEYEXPIRED,
2519         EKEYREVOKED, EKEYREJECTED.
2520         * sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.3.4): New errlist.
2521         * sysdeps/gnu/errlist.c: Regenerated
2523         * sysdeps/gnu/errlist-compat.awk: Don't bail if Versions gives a count
2524         higher than ERR_MAX reports.  Instead, emit a #define ERR_MAX.
2525         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.h): New target.
2526         (generated): Add errlist-compat.h.
2527         * sysdeps/gnu/errlist.awk: Make output #include <errlist-compat.h> to
2528         define ERR_MAX and use that for table size.
2530 2004-10-20  Ulrich Drepper  <drepper@redhat.com>
2532         * sysdeps/unix/sysv/linux/syscalls.list: Add entries for setaltroot,
2533         key_add, key_request, and keyctl syscalls.
2534         * sysdeps/unix/sysv/linux/Versions: Export them.
2536 2004-10-19  Roland McGrath  <roland@frob.com>
2538         * sysdeps/mach/readonly-area.c: New file.
2540 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
2542         * elf/Versions [ld, GLIBC_PRIVATE]: Add _dl_debug_state.
2543         * elf/dl-debug.c (_dl_debug_state): Add rtld_hidden_def.
2544         * sysdeps/generic/ldsodefs.h (_dl_debug_state): Don't mark as
2545         hidden but use rtld_hidden_proto.
2547 2004-10-19  Alfred M. Szmidt  <ams@gnu.org>
2549         * sysdeps/generic/readonly-area.c (__readonly_str): Renamed to ...
2550         (__readonly_area): ... this.
2552 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
2554         * sysdeps/generic/strcpy_chk.c (__strcpy_chk): Speed up by checking
2555         destlen only every 4 bytes.
2557 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
2559         * nss/getent.c (hosts_keys): Let inet_pton decide whether the
2560         string is an address or not.
2562 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
2564         * elf/dl-addr.c (_dl_addr): Don't look at STT_TLS symbols.
2565         Use DL_SYMBOL_ADDRESS to set dli_saddr.
2567         * debug/Makefile (catchsegv): Prefix $LIB with a backslash.
2569 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
2571         * debug/Makefile ($(objpfx)catchsegv): To support multilib
2572         platforms, use $LIB in path to slibdir.
2574 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
2576         * debug/catchsegv.sh: Update copyright year.
2577         Use mktemp to create segv_output file.
2579 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
2581         * elf/dl-libc.c (__libc_dlsym_private, __libc_register_dl_open_hook):
2582         New functions.
2583         (__libc_dlopen_mode): Call __libc_register_dl_open_hook and
2584         __libc_register_dlfcn_hook.
2585         * dlfcn/Makefile (routines, elide-routines.os): Set.
2586         Add rules to build and test tststatic2.
2587         * dlfcn/tststatic2.c: New test.
2588         * dlfcn/modstatic2.c: New test module.
2589         * dlfcn/dladdr.c: Call _dlfcn_hook from libdl.so if not NULL.
2590         Define __ prefixed routine in libc.a and in libdl.a just call it.
2591         * dlfcn/dladdr1.c: Likewise.
2592         * dlfcn/dlclose.c: Likewise.
2593         * dlfcn/dlerror.c: Likewise.
2594         * dlfcn/dlinfo.c: Likewise.
2595         * dlfcn/dlmopen.c: Likewise.
2596         * dlfcn/dlopen.c: Likewise.
2597         * dlfcn/dlopenold.c: Likewise.
2598         * dlfcn/dlsym.c: Likewise.
2599         * dlfcn/dlvsym.c: Likewise.
2600         * dlfcn/sdladdr.c: New file.
2601         * dlfcn/sdladdr1.c: New file.
2602         * dlfcn/sdlclose.c: New file.
2603         * dlfcn/sdlerror.c: New file.
2604         * dlfcn/sdlinfo.c: New file.
2605         * dlfcn/sdlopen.c: New file.
2606         * dlfcn/sdlsym.c: New file.
2607         * dlfcn/sdlvsym.c: New file.
2608         * dlfcn/Versions (libdl): Export _dlfcn_hook@GLIBC_PRIVATE.
2609         * include/dlfcn.h (DL_CALLER_DECL, DL_CALLER RETURN_ADDRESS): Define.
2610         (struct dlfcn_hook): New type.
2611         (_dlfcn_hook): New extern decl.
2612         (__dlopen, __dlclose, __dlsym, __dlerror, __dladdr, __dladdr1,
2613         __dlinfo, __dlmopen, __libc_dlsym_private,
2614         __libc_register_dl_open_hook, __libc_register_dlfcn_hook): New
2615         prototypes.
2616         (__dlvsym): Use DL_CALLER_DECL.
2617         * include/libc-symbols.h: Define libdl_hidden_proto and friends.
2619         * malloc/arena.c (_dl_open_hook): Extern decl.
2620         (ptmalloc_init): Don't call _dl_addr when dlopened from statically
2621         linked programs but don't use brk for them either.
2623 2004-10-18  Roland McGrath  <roland@redhat.com>
2625         * dlfcn/bug-dlsym1.c (main): Remove bogus setenv call.
2627 2004-10-18  Ulrich Drepper  <drepper@redhat.com>
2629         * elf/dl-open.c (dl_open_worker): Avoid dereferencing map in
2630         statically linked code if there might none be found.
2632 2004-10-06  Maciej W. Rozycki  <macro@mips.com>
2634         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
2635         (__SYSCALL_CLOBBERS): Add "memory".
2636         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h
2637         (__SYSCALL_CLOBBERS): Likewise.
2638         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h
2639         (__SYSCALL_CLOBBERS): Likewise.
2641 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
2643         * include/libc-symbols.h: Define libresolv_hidden_proto and friends.
2644         * include/resolv.h: Add libresolv_hidden_proto for symbols defined,
2645         used, and exported in libresolv.
2646         * resolv/base64.c: Add libresolv_hidden_def.
2647         * resolv/gethnamaddr.c: Likewise.
2648         * resolv/ns_name.c: Likewise.
2649         * resolv/ns_netint.c: Likewise.
2650         * resolv/res_comp.c: Likewise.
2651         * resolv/res_data.c: Likewise.
2652         * resolv/res_debug.c: Likewise.
2653         * resolv/res_mkquery.c: Likewise.
2654         * resolv/res_query.c: Likewise.
2655         * resolv/res_send.c: Likewise.
2657 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
2659         * elf/dl-minimal.c (__chk_fail): New.  Add rtld_hidden_def.
2660         * sysdeps/unix/sysv/linux/readonly-area.c: New file.
2661         * sysdeps/i386/i686/memmove.S (__memmove_chk): Add checking
2662         routine.
2663         * sysdeps/i386/i686/memcpy.S (__memcpy_chk): Likewise.
2664         * sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
2665         * sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
2666         * sysdeps/i386/i686/memmove-chk.S: New file.
2667         * sysdeps/i386/i686/memcpy-chk.S: Likewise.
2668         * sysdeps/i386/i686/mempcpy-chk.S: Likewise.
2669         * sysdeps/i386/i686/memset-chk.S: Likewise.
2670         * sysdeps/generic/strcat-chk.c (__strcat_chk): Don't __chk_fail
2671         if exactly fitting into buffer.
2672         * sysdeps/generic/strncat-chk.c (__strncat_chk): Likewise.
2673         * sysdeps/generic/readonly-area.c: New file.
2674         * sysdeps/generic/strncpy-chk.c (__strncpy_chk): Only test
2675         destlen once.
2676         * sysdeps/x86_64/memset.S (__memset_chk): Add checking routine.
2677         * sysdeps/x86_64/memcpy.S (__memcpy_chk): Likewise.
2678         * sysdeps/x86_64/mempcpy.S (__memcpy_chk): Define to __mempcpy_chk.
2679         * sysdeps/x86_64/memcpy-chk.S: New file.
2680         * sysdeps/x86_64/mempcpy-chk.S: Likewise.
2681         * sysdeps/x86_64/memset-chk.S: Likewise.
2682         * sysdeps/x86_64/strcpy-chk.S: Likewise.
2683         * sysdeps/x86_64/stpcpy-chk.S: Likewise.
2684         * argp/argp-xinl.c (__OPTIMIZE__): Define to 1 instead of nothing.
2685         * argp/argp-fs-xinl.c (__OPTIMIZE__): Likewise.
2686         * debug/tst-chk1.c: New test.
2687         * debug/tst-chk2.c: Likewise.
2688         * debug/tst-chk3.c: Likewise.
2689         * debug/test-strcpy_chk.c: Likewise.
2690         * debug/test-stpcpy_chk.c: Likewise.
2691         * debug/vsprintf_chk.c (__vsprintf_chk): If flags > 0, request
2692         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
2693         * debug/Makefile (routines): Add printf_chk, fprintf_chk, vprintf_chk,
2694         vfprintf_chk, gets_chk and readonly-area.
2695         (CFLAGS-*_chk.c): Set.
2696         (tests): Add tst-chk1, tst-chk2, tst-chk3, test-strcpy_chk and
2697         test-stpcpy_chk.
2698         * debug/vprintf_chk.c: New file.
2699         * debug/printf_chk.c: Likewise.
2700         * debug/vfprintf_chk.c: Likewise.
2701         * debug/fprintf_chk.c: Likewise.
2702         * debug/gets_chk.c: Likewise.
2703         * debug/chk_fail.c (__chk_fail): Add libc_hidden_def.
2704         * debug/snprintf_chk.c (__snprintf_chk): Fix order of arguments
2705         passed to __vsnprintf_chk.
2706         * debug/Versions (libc): Export __printf_chk, __fprintf_chk,
2707         __vprintf_chk, __vfprintf_chk and __gets_chk @GLIBC_2.3.4.
2708         * debug/vsnprintf_chk.c (__vsnprintf_chk): Don't call
2709         __vsnprintf, instead create a temporary file with
2710         _IO_strn_jumps jumptable.  If flags > 0, request
2711         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
2712         * libio/Makefile (headers): Add bits/stdio2.h.
2713         * libio/stdio.h: Include <bits/stdio2.h> if __USE_FORTIFY_LEVEL.
2714         (sprintf, snprintf, vsprintf, vsnprintf): Remove defines.
2715         * libio/strfile.h (_IO_strnfile): New type.
2716         (_IO_strn_jumps): New extern.
2717         * libio/vsnprintf.c (_IO_strnfile): Remove.
2718         (_IO_strn_jumps): Remove static.
2719         * libio/bits/stdio2.h: New file.
2720         * libio/vswprintf.c (_IO_strnfile): Rename type to...
2721         (_IO_wstrnfile): ...this.  Adjust all uses.
2722         * libio/libio.h (_IO_FLAGS2_CHECK_PERCENT_N): Define.
2723         * stdio-common/vfprintf.c (STR_LEN): Define.
2724         (vfprintf): Add readonly_format variable.
2725         Handle _IO_FLAGS2_CHECK_PERCENT_N.
2726         (buffered_vfprintf): Copy _flags2.
2727         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
2728         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
2729         __vfprintf_chk): New prototypes.
2730         (__vsprintf_chk, __vsnprintf_chk): Add libc_hidden_proto.
2731         * include/string.h (__memcpy_chk, __memmove_chk, __mempcpy_chk,
2732         __memset_chk, __strcpy_chk, __stpcpy_chk, __strncpy_chk, __strcat_chk,
2733         __strncat_chk): New prototypes.
2734         * include/bits/string3.h: New file.
2735         * include/sys/cdefs.h (__chk_fail): Add libc_hidden_proto
2736         and rtld_hidden_proto.
2737         * string/Makefile (headers): Add bits/string3.h.
2738         * string/bits/string3.h (bcopy, bzero): New defines.
2739         (memset, memcpy, memmove, strcpy, strncpy, strcat, strncat): Change
2740         macros so that inlines are used only if unknown destination size
2741         or side-effects in destination argument.
2742         (mempcpy, stpcpy): Likewise.  Protect with #ifdef __USE_GNU.
2744 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
2746         * debug/Makefile (routines): Add *_chk.
2747         * debug/Versions (libc): Export __chk_fail, __memcpy_chk,
2748         __memmove_chk, __mempcpy_chk, __memset_chk, __stpcpy_chk,
2749         __strcat_chk, __strcpy_chk, __strncat_chk, __strncpy_chk,
2750         __sprintf_chk, __vsprintf_chk, __snprintf_chk, __vsnprintf_chk
2751         @GLIBC_2.3.4.
2752         * debug/chk_fail.c: New file.
2753         * debug/snprintf_chk.c: Likewise.
2754         * debug/sprintf_chk.c: Likewise.
2755         * debug/vsnprintf_chk.c: Likewise.
2756         * debug/vsprintf_chk.c: Likewise.
2757         * include/features.h (_FORTIFY_SOURCE): Document, handle.
2758         (__USE_FORTIFY_LEVEL): Define.
2759         (__GNUC_PREREQ): Move to earlier location.
2760         * include/sys/cdefs.h (__chk_fail): New prototype.
2761         * libio/bits/stdio.h (sprintf, vsprintf, snprintf, vsnprintf):
2762         Define if __USE_FORTIFY_LEVEL.
2763         * misc/sys/cdefs.h (__bos, __bos0): Define.
2764         * string/string.h: Include <bits/string3.h> if __USE_FORTIFY_LEVEL.
2765         * bits/string/string3.h: New header.
2766         * sysdeps/generic/memcpy_chk.c: New file.
2767         * sysdeps/generic/memmove_chk.c: Likewise.
2768         * sysdeps/generic/mempcpy_chk.c: Likewise.
2769         * sysdeps/generic/memset_chk.c: Likewise.
2770         * sysdeps/generic/stpcpy_chk.c: Likewise.
2771         * sysdeps/generic/strcat_chk.c: Likewise.
2772         * sysdeps/generic/strcpy_chk.c: Likewise.
2773         * sysdeps/generic/strncat_chk.c: Likewise.
2774         * sysdeps/generic/strncpy_chk.c: Likewise.
2776 2004-10-17  Roland McGrath  <roland@frob.com>
2778         * manual/memory.texi (Page Lock Functions): Typo fix.
2779         Reported by Carlos Maziero <maziero@ppgia.pucpr.br>
2781 2004-10-16  Alfred M. Szmidt  <ams@kemisten.nu>
2783         * sysdeps/mach/hurd/Makefile (link-libc-static): Use
2784         `$(static-gnulib') instead of `$(gnulib)'.
2786 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
2788         * sunrpc/rpc_clntout.c: Avoid including rcsid into binary.
2789         * sunrpc/rpc_cout.c: Likewise.
2790         * sunrpc/rpc_hout.c: Likewise.
2791         * sunrpc/rpc_main.c: Likewise.
2792         * sunrpc/rpc_parse.c: Likewise.
2793         * sunrpc/rpc_sample.c: Likewise.
2794         * sunrpc/rpc_scan.c: Likewise.
2795         * sunrpc/rpc_svcout.c: Likewise.
2796         * sunrpc/rpc_tblout.c: Likewise.
2797         * sunrpc/rpc_util.c: Likewise.
2799 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
2801         * sysdeps/unix/sysv/linux/i386/sysdep.h (PUSHARGS_6, DOARGS_6,
2802         POPARGS_6, _PUSHARGS_6, _DOARGS_6, _POPARGS_6): Define.
2803         * sysdeps/unix/sysv/linux/i386/syscall.S (syscall): Handle 6 argument
2804         syscalls.
2806 2004-10-15  Ulrich Drepper  <drepper@redhat.com>
2808         * nscd/nscd.h (_PATH_NSCD_PASSWD_DB): Move to /var/db.
2809         (_PATH_NSCD_GROUP_DB): Likewise.
2810         (_PATH_NSCD_HOSTS_DB): Likewise.
2811         (_PATH_NSCD_XYZ_DB_TMP): New #define, point to /var/run.
2812         * nscd/connections.c (nscd_init): Non-persistent database files
2813         are created with the _PATH_NSCD_XYZ_DB_TMP path.
2814         * nscd/nscd.init: Create /var/db/nscd if necessary.
2816 2004-10-15  Richard Henderson  <rth@redhat.com>
2818         * sysdeps/unix/sysv/linux/alpha/register-dump.h: New file.
2819         * sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h (SIGCONTEXT): Add
2820         _code argument, pass sigcontext by pointer.
2821         (SIGCONTEXT_EXTRA_ARGS): Likewise.
2822         (GET_PC, GET_FRAME, GET_STACK): Expect ctx as pointer.
2824 2004-10-14  Richard Henderson  <rth@redhat.com>
2826         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
2827         elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
2828         instead of static.
2830         * sysdeps/unix/sysv/linux/adjtime.c (ADJTIME): Use prototype
2831         style definition.
2832         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): If
2833         __ASSUME_TIMEVAL64, define __adjtime directly rather than
2834         via strong_alias.
2836 2004-10-14  Ulrich Drepper  <drepper@redhat.com>
2838         * nscd/Makefile: When using compilers without -fpie support, also
2839         link with -lselinux if necessary.
2840         Patch by Arkadiusz Miskiewicz <arekm@pld-linux.org>.
2842         * nscd/connections.c (nscd_init): Remove file if not persistent
2843         and not shared.  Patch by Jerome Borsboom <j.borsboom@erasmusmc.nl>.
2845 2004-10-14  Jakub Jelinek  <jakub@redhat.com>
2847         * sysdeps/unix/sysv/linux/i386/setresuid.c: Handle
2848         defined __NR_setresuid32 && !defined __NR_setresuid.
2849         * sysdeps/unix/sysv/linux/i386/setresgid.c: Handle
2850         defined __NR_setresgid32 && !defined __NR_setresgid.
2852         * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit,
2853         __signbitl, sqrtf, sqrt, sqrtl, fdim, fdimf): Use __NTH macro.
2855         * sysdeps/generic/errno-loc.c: Don't undef #errno
2856         if RTLD_PRIVATE_ERRNO.
2857         * include/errno.h (__errno_location): If RTLD_PRIVATE_ERRNO,
2858         add attribute_hidden.
2860         * dlfcn/dlinfo.c (dlinfo_doit): Replace iteration over GL(dl_loaded)
2861         chain with iteration over all namespaces' _ns_loaded chains.
2862         * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_preferred_address):
2863         Likewise.
2864         * sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Likewise.
2866         * elf/rtld.c (_dl_start): Fix one last dl_loaded.
2867         * elf/dl-load.c (_dl_map_object_from_fd): Avoid definition of
2868         label when it is not needed.
2869         * elf/dl-close.c (_dl_close): Typo: & -> &&.
2871 2004-10-12  Jakub Jelinek  <jakub@redhat.com>
2873         * sysdeps/generic/segfault.c: Include alloca.h and stdint.h.
2874         Don't include frame.h.
2875         (CURRENT_STACK_FRAME, INNER_THAN, ADVANCE_STACK_FRAME): Remove.
2876         (catch_segfault): Use backtrace function.
2878         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Fix comment.
2879         * sysdeps/unix/sysv/linux/ia64/register-dump.h: New file.
2880         * sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h (GET_PC): Return sc_ip
2881         field.
2883 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
2885         Add support for namespaces in the dynamic linker.
2886         * dlfcn/Makefile (libdl-routines): Add dlmopen.
2887         * dlfcn/Versions [libdl, GLIBC_2.3.4]: Add dlmopen.
2888         * dlfcn/dlfcn.h: Define Lmid_t, LM_ID_BASE, and LM_ID_NEWLM.
2889         Declare dlmopen.  Document RTLD_DI_LMID.
2890         * dlfcn/dlinfo.c: Handle RTLD_DI_LMID.
2891         * dlfcn/dlmopen.c: New file.
2892         * dlfcn/dlopen.c: Pass new parameter to _dl_open.
2893         * dlfcn/dlopenold.c: Likewise.
2894         * elf/dl-addr.c: Adjust for removal of GL(dl_loaded).
2895         * elf/dl-caller.c: Likewise.
2896         * elf/dl-close.c: Likewise.
2897         * elf/dl-conflict.c: Likewise.
2898         * elf/dl-debug.c: Likewise.
2899         * elf/dl-lookup.c: Likewise.
2900         * elf/dl-sym.c: Likewise.
2901         * elf/dl-version.c: Likewise.
2902         * elf/do-lookup.h: Likewise.
2903         * elf/rtld.c: Likewise.
2904         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
2905         * elf/dl-depsc: Likewise.  Add new parameter to _dl_map_object.
2906         * elf/dl-fini.c: Call destructors in all namespaces.
2907         * elf/dl-iteratephdr.c: Compute total nloaded.  Adjust for removal of
2908         GL(dl_loaded).
2909         * elf/dl-libc.c: Pass new parameter to _dl_open.  Adjust for removal
2910         of GL(dl_loaded).
2911         * elf/dl-load.c (_dl_map_object_from_fd): Don't load ld.so a second
2912         time.  Reuse the one from the main namespace in all others.
2913         Pass new parameter to _dl_new_object.
2914         Adjust for removal of GL(dl_loaded).
2915         * elf/dl-object.c: Take new parameter.  Use it to initialize l_ns.
2916         Adjust for removal of GL(dl_loaded).
2917         * elf/dl-open.c (_dl_open): Take new parameter.
2918         Adjust for removal of GL(dl_loaded).
2919         * elf/dl-support.c: Replace global _dl_loaded etc variables with
2920         _dl_ns variable.
2921         * include/dlfcn.h: Adjust prototype of _dl_open.
2922         Define __LM_ID_CALLER.
2923         * include/link.h: Add l_real, l_ns, and l_direct_opencount elements.
2924         * sysdeps/generic/dl-tls.c: Bump TLS_STATIC_SURPLUS.  Since libc is
2925         using TLS we need memory appropriate to the number of namespaces.
2926         * sysdeps/generic/ldsodefs.h (struct rtld_global): Replace _dl_loaded,
2927         _dl_nloaded, _dl_global_scope, _dl_main_searchlist, and
2928         _dl_global_scope_alloc with _dl_ns element.  Define DL_NNS.
2929         Adjust prototypes of _dl_map_object and member in rtld_global_ro.
2930         * malloc/malloc.c: Include <dlfcn.h>.
2931         * malloc/arena.c (ptmalloc_init): If libc is not in primary namespace,
2932         never use brk.
2933         * elf/Makefile: Add rules to build and run tst-dlmopen1 and
2934         tst-dlmopen2.
2935         * elf/tst-dlmopen1.c: New file.
2936         * elf/tst-dlmopen1mod.c: New file.
2937         * elf/tst-dlmopen2.c: New file.
2939         * elf/dl-close.c: Improve reference counting by tracking direct loads.
2940         * elf/dl-lookup.c (add_dependency): Likewise.
2941         * elf/dl-open.c (dl_open_worker): Likewise.
2942         * elf/rtld.c (dl_main): Likewise.
2944 2004-09-09  GOTO Masanori  <gotom@debian.or.jp>
2946         [BZ #77]
2947         * elf/dl-close.c: Count down l_opencount to check not only for
2948         l_reldeps, but also l_initfini.
2950 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
2952         * elf/dl-close.c (_dl_close): Update bug reporting instructions.
2954 2004-10-11  Ulrich Drepper  <drepper@redhat.com>
2956         * timezone/asia: Update from tzdata2004e.
2957         * timezone/southamerica: Likewise.
2958         * timezone/private.h: Update from tzcode2004e.
2959         * timezone/zdump.c: Likewise.
2961         * stdio-common/vfscanf.c: Add support for reading localized
2962         digits.  Patch mainly by Hamed Malek <hamed@bamdad.org>.
2964         * resolv/res_init.c (res_thread_freeres): Reset _res.options.
2965         [BZ #434]
2967         * resolv/res_send.c (send_dg): Use nonblocking sockets.  Add
2968         appropriate poll/select calls and restart operation if necessary.
2969         Also handle EINTR.
2971         * elf/tst-dlopenrpath.c (do_test): Enable code which was disabled
2972         for debugging.
2974         * elf/dl-sym.c (do_sym): Avoid using global variable.
2976         * elf/dl-addr.c (_dl_addr): Really use match everywhere.
2978 2004-10-09  Andreas Schwab  <schwab@suse.de>
2980         * sysdeps/m68k/memcopy.h (WORD_COPY_BWD): Remove use of cast as
2981         lvalue.
2983         * sysdeps/m68k/fpu/bits/mathinline.h: Remove __THROW from inline
2984         definitions.
2986 2004-10-07  Andreas Schwab  <schwab@suse.de>
2988         * misc/sys/uio.h: Change __vector to __iovec to avoid clash with
2989         altivec.
2991 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
2993         * gmon/Makefile (CFLAGS-mcount.c): Move before inclusion of "Rules".
2994         * sysdeps/powerpc/powerpc64/Makefile (CFLAGS-mcount.c): Add
2995         -msoft-float.
2996         * sysdeps/powerpc/powerpc64/sysdep.h (SAVE_ARG, REST_ARG): New macros.
2997         (CALL_MCOUNT): Replace with a gas macro implementation.
2998         (EALIGN): Delete PROF version.
2999         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Invoke CALL_MCOUNT.
3000         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Likewise.
3001         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
3002         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
3003         * sysdeps/powerpc/powerpc64/memcpy.S: Likewise.
3004         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
3005         * sysdeps/powerpc/powerpc64/stpcpy.S: Likewise.
3006         * sysdeps/powerpc/powerpc64/strchr.S: Likewise.
3007         * sysdeps/powerpc/powerpc64/strcmp.S: Likewise.
3008         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
3009         * sysdeps/powerpc/powerpc64/strlen.S: Likewise.
3010         * sysdeps/powerpc/powerpc64/strncmp.S: Likewise.
3011         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Likewise.
3012         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Likewise.
3013         * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Likewise.
3014         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Likewise.
3015         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Likewise.
3016         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: Likewise.
3017         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: Likewise.
3018         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: Likewise.
3019         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: Likewise.
3020         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Likewise.
3021         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Likewise.
3022         * sysdeps/powerpc/powerpc64/fpu/s_round.S: Likewise.
3023         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Likewise.
3024         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Likewise.
3025         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Likewise.
3027         * sysdeps/powerpc/powerpc64/setjmp-common.S: Add extra entry point
3028         past _mcount call.
3029         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Use it.
3030         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
3032 2004-10-06  Ulrich Drepper  <drepper@redhat.com>
3034         * resolv/res_mkquery.c (res_nmkquery): Reject randombits value if
3035         low 16 bits are zero.
3037 2004-10-06  Jakub Jelinek  <jakub@redhat.com>
3039         * posix/tst-getaddrinfo2.c: Include stdlib.h and string.h.
3040         (do_test): Use %p instead of 0x%08X to print a pointer.
3042         * malloc/malloc.c: Include stdio-common/_itoa.h.
3044 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
3046         * elf/rtld.c (dl_main): Use _dl_debug_printf instead of _dl_printf
3047         for prelink message.
3049 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
3051         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Include dl-sysdep.h.
3052         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
3054 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
3056         * grp/initgroups.c: Remove duplicate group IDs.
3057         * grp/compat-initgroups.c: Likewise.
3058         * nscd/initgrcache.c: Likewise.
3060 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
3062         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (__sysconf): Return 200112L
3063         for _SC_CPUTIME or _SC_THREAD_CPUTIME.
3065         * nscd/Makefile (nscd-cflags): Set to -DIS_IN_nscd=1, plus
3066         -fpie if building PIE.
3067         (CFLAGS-*.c): Use it.
3069         * nscd/Makefile (relro-LDFLAGS): Add -Wl,-z,now if have-z-relro.
3070         ($(objpfx)nscd): Add $(relro-LDFLAGS).
3072         * sysdeps/unix/sysv/linux/i386/sysconf.c: Include hp-timing.h.
3073         (__sysconf): Return -1 for _SC_CPUTIME or _SC_THREAD_CPUTIME if
3074         !HP_TIMING_AVAIL.
3076 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
3078         * nscd/Makefile (distribute): Remove TODO.
3079         * nscd/TODO: Removed.
3081 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
3083         * nscd/gai.c: Define __no_netlink_support if NEED_NETLINK is
3084         defined and __ASSUME_NETLINK_SUPPORT is zero.
3085         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gai.c): Add
3086         -DNEED_NETLINK.
3088         * malloc/mtrace.pl: Avoid calling location unless it is needed for
3089         output.  Patch by Edward Bishop <binutils@gmail.com>.
3091         * nscd/Makefile (CFLAGS-gai.c): Add -fpie.
3093 2004-10-04  H.J. Lu  <hongjiu.lu@intel.com>
3095         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c
3096         (clock_getcpuclockid): Add missing retval.
3098         * sysdeps/unix/sysv/linux/ia64/sysconf.c (linux_sysconf): Fix a typo.
3100 2004-10-04  Roland McGrath  <roland@redhat.com>
3102         * include/errno.h [RTLD_PRIVATE_ERRNO] (errno): Rename the real symbol
3103         to rtld_errno.
3104         * sysdeps/generic/errno.c [RTLD_PRIVATE_ERRNO] (rtld_errno): Define it,
3105         and don't define any other errno names.
3106         * sysdeps/unix/alpha/sysdep.h [RTLD_PRIVATE_ERRNO]: Use rtld_errno in
3107         place of errno.
3108         * sysdeps/unix/i386/sysdep.S: Likewise.
3109         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
3110         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
3111         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
3112         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
3113         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
3114         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
3115         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
3116         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
3117         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
3118         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
3119         * sysdeps/unix/x86_64/sysdep.S: Likewise.
3121         * sysdeps/generic/errno.c [! USE___THREAD] (errno): Use `nocommon'
3122         attribute instead of `section'.
3124 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
3126         * sysdeps/unix/sysv/linux/ia64/sysconf.c: New file.
3127         * sysdeps/unix/sysv/linux/ia64/Dist: Add has_cpuclock.c.
3128         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: Move actual
3129         testing code to...
3130         * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c: ...here.  New file.
3131         * sysdeps/unix/sysv/linux/i386/sysconf.c: Add dynamic check for
3132         _SC_CPUTIME and _SC_THREAD_CPUTIME.
3134         * nscd/connections.c (start_threads): Use sysconf in case
3135         _POSIX_CLOCK_SELECTION or _POSIX_MONOTONIC_CLOCK is not greater zero.
3137         * nscd/Makefile (nscd-modules): Add gai.
3138         * nscd/gai.c: New file.
3139         * nscd/nscd.c: Remove getaddrinfo stub definition.
3141         * assert/assert.h: Give up on using __builtin_expect.
3143         * elf/rtld.c (dl_main): Only skip => output in ldd mode if both
3144         strings are identical.
3146 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
3148         * malloc/arena.c (aligned_heap_area): New variable.
3149         (new_heap): If aligned_heap_area != NULL, attempt to use that
3150         first.  If HEAP_MAX_SIZE << 1 area is already HEAP_MAX_SIZE bytes
3151         aligned, remember the second half in aligned_heap_area.
3152         (delete_heap): Clear aligned_heap_area if deleting the area right
3153         before aligned_heap_area.
3155 2004-10-03  Juerg Billeter  <j@bitron.ch>
3157         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Return -1 if nscd
3158         can't be used.  [BZ #424]
3160 2004-10-03  Ulrich Drepper  <drepper@redhat.com>
3162         Dynamically create new threads if necessary.
3163         * nscd/connections.c (fd_ready): If no thread available for processing
3164         the request, create a new one unless the limit is reached.
3165         (start_threads): Check errors from pthread_create.
3166         * nscd/nscd.h: Declare max_nthreads.
3167         * nscd/nscd_conf.c: Parse max-nthreads entry.
3168         * nscd/nscd.conf: Add max-threads entry.
3169         * nscd/nscd_stat.c: Print current and maximum number of threads.
3171         Implement paranoia mode.
3172         * nscd/connections.c (nscd_init): Mark database and socket descriptors
3173         as close on exec.
3174         (restart): New function.
3175         (restart_p): New function.
3176         (nscd_run): Add missing descrement of nready in case readylist is
3177         empty.
3178         (main_loop_poll): Call restart_p and restart.
3179         (main_loop_epoll): Likewise.
3180         (begin_drop_privileges): Save original UID and GID.
3181         * nscd/nscd.c: Define new variables paranoia, restart_time,
3182         restart_interval, oldcwd, old_gid, old_uid.
3183         (main): Disable paranoia mode if we are not forking.
3184         (check_pid): When re-execing, the PID file contains the same PID as
3185         the current process.  Do not fail in this case.
3186         * nscd/nscd.conf: Add paranoia and restart-interval entries.
3187         * nscd/nscd.h: Define RESTART_INTERVAL.  Declare new variables.
3188         * nscd/nscd_conf.c: Parse paranoia and restart-internal configurations.
3189         * nscd/nscd_stat.c: Print paranoia and restart-internal values.
3191         * nscd/connections.c: Implement alternative loop for main thread
3192         which uses epoll.
3193         * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]
3194         (CFLAGS-connections.c): Add -DHAVE_EPOLL.
3196 2004-10-02  Ulrich Drepper  <drepper@redhat.com>
3198         * nscd/Makefile (CFLAGS-initgrcache.c): Add to CFLAGS-* variables,
3199         don't replace old content.
3201         * nscd/connections.c: Rewrite handling of incoming connections.  All
3202         are handled by one thread which then hands off the descriptors for the
3203         real work to the worker threads.
3204         * nscd/Makefile: Link nscd with librt.
3206         * nscd/selinux.c: Pretty printing.
3208         * nscd/dbg_log.c (dbg_log): Don't add unnecessary newline to
3209         output.  Let syslog do the formatting if debug_level == 0.
3211         * nscd/nscd_helper.c (get_mapping): No need to check timestamp if
3212         nscd_certainly_running is nonzero.
3214 2004-10-02  Simon Josefsson  <jas@extundo.com>
3216         [BZ #420]
3217         * sysdeps/generic/memmem.c [!_LIBC]: Define __builtin_expect, to
3218         make the file usable inside gnulib.
3220 2004-10-01  Ulrich Drepper  <drepper@redhat.com>
3222         * malloc/malloc.c (public_vALLOc): Add missing use of hooks.
3223         (public_pVALLOc): Likewise.
3225         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Always add the
3226         group the caller provided unless there is a real problem.
3228         * posix/bug-glob1.c (prepare): Fix creation of symlink.
3230 2004-09-30  Ulrich Drepper  <drepper@redhat.com>
3232         * posix/Makefile: Add rules to build and run bug-glob1.
3233         * posix/bug-glob1.c: New file.
3235         * iconv/iconv_prog.c (main): Print progress information to stderr.
3237         * nscd/nscd.c (termination_handler): Reset timestamp so that
3238         clients immediately stop using the database.
3240         * nscd/nscd-client.h (__nscd_get_map_ref): Drop volatile from last
3241         parameter.
3242         (__nscd_drop_map_ref): Change second parameter to be a reference to
3243         a variable.  Update variable when cycle count changed.
3244         * nscd/nscd_helper.c (__nscd_get_map_ref): Remove volatile here, too.
3245         * nscd/nscd_getai.c: Correctly use __nscd_drop_map_ref.  Reinitialize
3246         all variables and avoid memory leak in case of retries.
3247         * nscd/nscd_getgr_r.c: Likewise.
3248         * nscd/nscd_gethst_r.c: Likewise.
3249         * nscd/nscd_getpw_r.c: Likewise.
3250         * nscd/nscd_initgroups.c: Likewise.
3252         * nscd/nscd.h: Add declaration of addinitgroups and
3253         readdinitgroups.
3255 2004-09-30  Andreas Jaeger  <aj@suse.de>
3257         * nscd/Makefile (CFLAGS-nscd_initgroups.c): Set to -fpie.
3258         (CFLAGS-initgrcache.c): Set to -fexceptions.
3260 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
3262         * sysdeps/generic/glob.c (glob_in_dir): Don't blindly trust
3263         readdir results; for symlinks or files of unknown type check using
3264         stat whether the file exists.
3266         * posix/tst-gnuglob.c (find_file): Handle leading "./".  Fix
3267         recognition of files.
3269 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
3271         * time/tzfile.c (tzfile_mtime): New variable.
3272         (__tzfile_read): Reread the file if mtime is different.
3274 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
3276         * sysdeps/alpha/fpu/bits/mathinline.h (__fdimf, __fdim, fdimf, fdim):
3277         Handle +inf/+inf.
3278         * sysdeps/powerpc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
3279         * sysdeps/sparc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
3281 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
3283         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use correct constant for
3284         testing result of __nscd_get_map_ref.
3286 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
3288         * sysdeps/i386/fpu/s_fdim.S (__fdim): Handle +inf/+inf.
3289         * sysdeps/i386/fpu/s_fdimf.S (__fdimf): Likewise.
3290         * sysdeps/i386/fpu/s_fdiml.S (__fdiml): Likewise.
3292 004-09-29  Ulrich Drepper  <drepper@redhat.com>
3294         * grp/initgroups.c: Move compat_call implementation...
3295         * grp/compat-initgroups.c: ...to here.  New file.
3296         * grp/Makefile (distribute): Add compat-initgroups.c.
3297         (CFLAGS-initgroups.c): Add -DUSE_NSCD=1.
3298         * mscd/initgrcache.c: New file.
3299         * nscd/nscd_initgroups.c: New file.
3300         * nscd/Makefile (routines): Add nscd_initgroups.
3301         (nscd-modules): Add initgrcache.
3302         * nscd/cache.c (prune_cache): Add support for INITGROUPS entries.
3303         * nscd/connections.c: Handle INITGROUPS requests.
3304         * nscd/nscd-client.h: Define INITGROUPS, initgr_response_header.
3305         Add initgrdata element to struct datahead.  Fix typo in comment.
3306         * nscd/nscd_proto.h: Declare __nscd_getgrouplist.  Fix parameter
3307         type in __nscd_getgrgrid_r.
3308         * nscd/selinux.c (perms): Add INITGROUPS entry.
3310         * nscd/nscd_getai.c: No need to include <sys/mman.h>.
3312         * sunrpc/get_myaddr.c (get_myaddress): Account for interfaces without
3313         assigned addresses.
3314         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
3315         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
3316         * sunrpc/clnt_udp.c (is_network_up): Likewise.
3318         * nscd/nscd.c: Define getaddrinfo hidden so that it is never found
3319         outside.
3321         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_segvflags):
3322         Renamed from si_flags due to conflict with si_flags from <elf.h>.
3324 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
3326         * nscd/nscd_getai.c: Use NO_MAPPING instead of MAP_FAILED for test
3327         of failing __nscd_get_map_ref.  Fix a few typos.
3329         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Make sure
3330         SIGSETXID is not blocked.
3331         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Likewise.
3332         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
3333         * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise.
3334         * sysdeps/generic/sigfillset.c (sigfillset): Don't set SIGSETXID.
3336         * sunrpc/get_myaddr.c (get_myaddress): Fix test for failing
3337         getifaddrs call.
3338         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
3339         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
3340         * sunrpc/Makefile (xtests): Add tst-getmyaddr.
3341         * sunrpc/tst-getmyaddr.c: New file.
3343         * malloc/arena.c (ptmalloc_init): Allow MALLOC_CHECK_==0 to
3344         disable all checking.
3346         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_flags): Add
3347         support to get this value.
3349 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
3351         * io/utime.h (utime): Allow second argument to be NULL.
3353 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
3355         * sysdeps/posix/getaddrinfo.c (gaih_inet): If NAME is a numerical IP
3356         address and AI_CANONNAME is set, return copy of NAME as ai_canonname.
3358 2004-09-27  Andreas Jaeger  <aj@suse.de>
3360         * sysdeps/i386/dl-machine.h (elf_machine_rela_relative): Replace
3361         static inline by auto inline, add always_inline attribute.
3362         (elf_machine_rel): Likewise.
3363         (elf_machine_rela): Likewise.
3364         (elf_machine_lazy_rel): Likewise.
3365         (elf_machine_lazy_rela): Likewise.
3366         (elf_machine_rel_relative): Likewise.
3368 2004-09-27  Ulrich Drepper  <drepper@redhat.com>
3370         * sunrpc/xdr_intXX_t.c: Add xdr_quad_t and xdr_u_quad_t aliases.
3371         * sunrpc/rpc/xdr.h: Declare xdr_quad_t and xdr_u_quad_t.
3372         * sunrpc/rpc_parse.c (get_type): Use "quad_t" for TOK_HYPER.
3373         Otherwise isvectordef will loop infinitely if typedef hyper int64_t
3374         is seen.
3375         (unsigned_dec): Use "u_quad_t" for similar reasons.
3376         * sunrpc/Versions: Export xdr_quad_t and xdr_u_quad_t.
3378 2004-09-27  Roland McGrath  <roland@redhat.com>
3380         * sysdeps/generic/bits/waitstatus.h (__WIFSIGNALED): Simplify bit
3381         twiddling in last change.
3383         * posix/tst-waitid.c (do_test): Add tests for waitpid with WCONTINUED.
3385         [BZ #409]
3386         * posix/sys/wait.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
3387         * stdlib/stdlib.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
3388         * sysdeps/generic/bits/waitstatus.h (__W_CONTINUED): New macro.
3389         [WCONTINUED] (__WIFCONTINUED): New macro.
3390         (__WIFSIGNALED): Rewritten to exclude __W_CONTINUED value, and have no
3391         branches.
3393         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Add fifth argument to
3394         all three syscall uses, not just one!
3396 2004-09-26  Richard Henderson  <rth@redhat.com>
3398         * sysdeps/alpha/alphaev6/memcpy.S: Mark .prologue.
3399         * sysdeps/unix/alpha/sysdep.h (LEAF, ENTRY): Align entry points
3400         to 16 byte boundaries.
3402 2004-09-26  Ulrich Drepper  <drepper@redhat.com>
3404         * elf/readlib.c (process_file): Before complaining about too-short
3405         file, check that it potentially be an ELF file.  Also complain about
3406         empty files.  [BZ #151].
3408         * scripts/test-installation.pl: Fix ld.so recognition for new
3409         LD_TRACE_LOADED_OBJECTS output format.
3410         Patch by <jsberg04+computing.glibc@ftml.net>  [BZ #407].
3412         * elf/dl-support.c (_dl_non_dynamic_init): Fix cleaning of
3413         environment.  [BZ #384]
3415         * sunrpc/clnt_udp.c (is_network_up): Use getifaddrs instead of ioctl.
3416         * sunrpc/get_myaddr.c (get_myaddress): Likewise.
3417         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
3418         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.  Change interface
3419         to avoid buffer overrun and remove now useless parameters.
3420         (clnt_broadcast): Adjust caller.  [BZ #381].
3422         * sysdeps/generic/s_fdim.c: Handle +inf/+inf
3423         * sysdeps/generic/s_fdimf.c: Likewise.
3424         * sysdeps/generic/s_fdiml.c: Likewise.
3425         * sysdeps/i386/i686/fpu/s_fdim.S: Likewise.
3426         * sysdeps/i386/i686/fpu/s_fdimf.S: Likewise.
3427         * sysdeps/i386/i686/fpu/s_fdiml.S: Likewise.
3428         * sysdeps/powerpc/fpu/s_fdim.c: Likewise.
3429         * sysdeps/powerpc/fpu/s_fdimf.c: Likewise.
3430         * sysdeps/x86_64/fpu/s_fdiml.S: Likewise.
3431         * math/libm-test.inc (fdim_test): Add test case.  [BZ #376].
3433         * sysdeps/generic/bits/types.h: Fix __SQUAD_TYPE and __UQUAD_TYPE
3434         for compilers without __GLIBC_HAVE_LONG_LONG.  [BZ #362]
3436         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Remove incorrect
3437         requirement on socktype and protocol.
3438         (gaih_inet): If numeric port number is given, return records for all
3439         possible socket types.
3440         * posix/tst-getaddrinfo2.c: New file.
3441         * posix/Makefile (tests): Add tst-getaddrinfo2.  [BZ #358]
3443 2004-09-25  Ulrich Drepper  <drepper@redhat.com>
3445         * locale/loadlocale.c (_nl_intern_locale_data): Recognize LC_CTYPE
3446         data where _nl_value_type_LC_CTYPE does not contain the type
3447         information.  Add range checks.
3448         Reported by John Lumby <johnlumby@hotmail.com> [BZ #356].
3450         * libio/vasprintf.c (_IO_vasprintf): Fix condition to decide
3451         whether to realloc or not.
3452         Reported by Pavel Kankovsky <peak@argo.troja.mff.cuni.cz> [BZ #346].
3454         * intl/dcigettext.c (DCIGETTEXT): Protect tfind/tsearch calls.
3455         * intl/dcigettext.c (_nl_find_msg): Call _nl_load_domain also if
3456         decided < 0.
3457         * intl/finddomain.c (_nl_find_domain): Likewise.
3458         * intl/loadmsgcat.c (_nl_load_domain): Set decided to 1 only once we
3459         are done.  First set to -1 to signal initialization is ongoing.
3460         Protect against concurrent callers with recursive lock.
3461         * intl/finddomain.c (_nl_find_domain): Protect calls to
3462         _nl_make_l10nflist.  [BZ #322]
3464         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If determinination of
3465         source address fails, initialized source_addr_len field so that
3466         duplicate address recognition does not copy junk.
3468 2004-09-25  Jakub Jelinek  <jakub@redhat.com>
3470         * sysdeps/unix/sysv/linux/i386/setuid.c (__setuid): Remove second
3471         result declaration.
3473 2004-09-22  Andreas Schwab  <schwab@suse.de>
3475         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Adjust whitespace.
3477 2004-09-24  Ulrich Drepper  <drepper@redhat.com>
3479         * misc/daemon.c (daemon): Don't succeed if /dev/null cannot be
3480         opened.
3482         * nis/ypclnt.c (do_ypcall): Add one missing unlock.  Simplify the
3483         code a bit.
3485         * misc/daemon.c (daemon): Define errno in case /dev/null is not
3486         the correct device.
3488         * nis/ypclnt.c (yp_bind_file): Optimize a bit.  Minimal cleanups.
3490 2004-09-23  Andreas Jaeger  <aj@suse.de>
3492         * locale/weight.h (findidx): Remove static, it's not supported
3493         anymore with GCC 4.0 in a block scope.
3494         * locale/weightwc.h (findidx): Likewise.
3495         * posix/regcomp.c (seek_collating_symbol_entry): Likewise.
3496         (lookup_collation_sequence_value): Likewise.
3497         (build_range_exp): Likewise.
3498         (build_collating_symbol): Likewise.
3499         * iconv/iconvconfig.c (write_output): Likewise.
3500         * elf/do-rel.h (elf_dynamic_do_rel): Likewise.
3502         * sysdeps/x86_64/dl-machine.h (elf_machine_rela_relative): Remove
3503         static, add always_inline attribute.
3504         (elf_machine_rela): Likewise.
3505         (elf_machine_lazy_rel): Likewise.
3507         * elf/dynamic-link.h (elf_get_dynamic_info): Make static dependend
3508         on !RESOLVE so that it's not defined in local scope.
3510 2004-09-23  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3512         * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL_NCS): Define.
3514 2004-09-23  Thorsten Kukuk  <kukuk@suse.de>
3516         * sysdeps/unix/sysv/linux/sys/mount.h: Sync MS_RMT_MASK flag
3517         and BLK* ioctls with linux kernel headers.
3519 2004-09-23  Ulrich Drepper  <drepper@redhat.com>
3521         * sysdeps/generic/bits/dlfcn.h: Add RTLD_DEEPBIND.
3522         * elf/dl-object.c (_dl_new_object): Add new parameter mode.  If mode
3523         has RTLD_DEEPBIND set add local searchlist before global scope.
3524         * sysdeps/generic/ldsodefs.h (_dl_new_object): Adjust prototype.
3525         * elf/rtld.c: Adjust callers of _dl_new_object.
3526         * elf/dl-load.c: Likewise.
3527         (_dl_map_object_from_fd): If RTLD_DEEPBIND is used, don't do anything
3528         for DF_SYMBOLIC.
3529         * elf/dl-open.c (dl_open_writer): Pass RTLD_DEEPBIND flag on to
3530         _dl_map_object_deps.
3531         * elf/tst-deep1.c: New file.
3532         * elf/tst-deep1mod1.c: New file.
3533         * elf/tst-deep1mod2.c: New file.
3534         * elf/tst-deep1mod3.c: New file.
3535         * elf/Makefile: Add rules to build and run new tests.
3537         * elf/dl-deps.c: Pretty printing.
3539 2004-09-23  Jakub Jelinek  <jakub@redhat.com>
3541         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
3542         argument to numbers from syscall names.
3543         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
3544         (INTERNAL_SYSCALL_NCS): Renamed from...
3545         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
3546         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
3547         (INTERNAL_SYSCALL_NCS): Define.
3548         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
3549         (INTERNAL_SYSCALL_NCS): Likewise.
3550         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
3551         Change name argument to numbers from syscall names.
3552         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
3553         (INTERNAL_SYSCALL_NCS): Define.
3555 2004-09-22  Ulrich Drepper  <drepper@redhat.com>
3557         * malloc/malloc.c (malloc_printerr): Use syslog if writev failed.
3559         * string/string.h: Add __nonnull annotations.
3560         * stdlib/stdlib.h: Likewise.
3562 2004-09-20  H.J. Lu  <hongjiu.lu@intel.com>
3564         * sysdeps/unix/sysv/linux/ia64/sysdep.h (DO_INLINE_SYSCALL):
3565         Renamed to ...
3566         (DO_INLINE_SYSCALL_NCS): This.
3567         (DO_INLINE_SYSCALL): New.
3568         (INLINE_SYSCALL): Updated.
3569         (INTERNAL_SYSCALL_NCS): Updated.
3571 2004-09-21  Ulrich Drepper  <drepper@redhat.com>
3573         * elf/sprof.c (load_shobj): Add support for reading symbol table
3574         from debuginfo file.
3576         * elf/ldd.bash.in: Fix syntax errors.
3578 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
3580         * sysdeps/unix/sysv/linux/dl-execstack.c
3581         (_dl_make_stack_executable): Remove some duplication.
3583         * nscd/nscd.c (options): Mark S option as hidden.
3584         (parse_opt): When S option is used, print warning message.
3585         * nscd/grpcache.c (adgrptbyX): Don't handle secure mode.
3586         * nscd/hstcache.c (addhstbyX): Don't handle secure mode.
3587         * nscd/aicache.c (addhstaiX): Don't handle secure mode.
3588         * nscd/pwdcache.c (addpwbyX): Don't handle secure mode.
3590 2004-09-20  Roland McGrath  <roland@frob.com>
3592         * elf/dl-load.c (__stack_prot): Only use PROT_GROWSUP/PROT_GROWSDOWN
3593         in initializer #if defined.
3595 2004-09-18  Paul Eggert  <eggert@cs.ucla.edu>
3597         [BZ #391]
3598         * stdlib/getsubopt.c: Merge fixes from gnulib.
3599         (__strchrnul) [!_LIBC]: Define and include "strchrnul.c".
3600         (getsubopt): Use prototypes, not K&R style.
3601         Fix bug: memcmp(A,B,N) was being invoked on a memory block B
3602         whose size might be smaller than N.  Use strncmp to avoid the bug.
3604 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
3606         * configure.in: If selinux has not explictly been requested, don't
3607         comment on it missing.
3609         * elf/dl-load.c: Define __stack_prot.
3610         * sysdeps/unix/sysv/linux/dl-execstack.c: Don't define
3611         __stack_prot here, just declare it.
3613 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
3615         * configure.in (libc_cv_z_relro): Only set to yes if linker script
3616         contains DATA_SEGMENT_RELRO_END.
3618 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
3620         * elf/dl-load.c (_dl_map_object_from_fd): Add some error checking.
3621         Reorder code slightly.
3622         * elf/rtld.c (dl_main): No need to check whether l_info[DT_HASH]
3623         is non-null, _dl_setup_hash will do that.
3625 2004-09-19  Ulrich Drepper  <drepper@redhat.com>
3627         * sysdeps/unix/sysv/linux/setegid.c [HAVE_PTR__NPTL_SETXID]: Call
3628         callback to set IDs in all other threads as well.
3629         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
3630         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
3631         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
3632         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
3633         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
3634         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
3635         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
3636         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
3637         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
3638         * sysdeps/unix/sysv/linux/setuid.c: New file.
3639         * sysdeps/unix/sysv/linux/setgid.c: New file.
3640         * sysdeps/unix/sysv/linux/setreuid.c: New file.
3641         * sysdeps/unix/sysv/linux/setregid.c: New file.
3642         * sysdeps/unix/sysv/linux/setresuid.c: New file.
3643         * sysdeps/unix/sysv/linux/setresgid.c: New file.
3644         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NCS.
3645         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
3646         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
3647         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
3648         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
3649         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c: Use x86 version.
3650         * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c: Likewise.
3651         * sysdeps/unix/sysv/linux/sparc/sparc32/setresgid.c: New file.
3652         * sysdeps/unix/sysv/linux/sparc/sparc32/setresuid.c: New file.
3653         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove setresgid
3654         and setresuid.
3655         * nscd/aicache.c: Use pthread_seteuid_np instead of seteuid.
3656         * nscd/grpcache.c: Likewise.
3657         * nscd/hstcache.c: Likewise.
3658         * nscd/pwdcache.c: Likewise.
3660         * resolv/res_mkquery.c (res_nmkquery): Fix typo.
3662 2004-09-18  Ulrich Drepper  <drepper@redhat.com>
3664         * sysdeps/unisx/sysv/linux/dl-execstack.c: Get protection flag
3665         from memory.
3666         * elf/dl-load.c (_dl_map_object_from_fd): Add PROT_EXEC flag to
3667         __stack_flags.
3669         * sysdeps/posix/getaddrinfo.c (gaih_inet): Do not use
3670         gethostbyname3_r if we are not looking for the canonical name.
3672         * resolv/res_mkquery.c (res_nmkquery): Randomize request ID every
3673         time.
3675 2004-09-18  Roland McGrath  <roland@redhat.com>
3677         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Pass fifth argument to
3678         system call.
3680 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
3682         * include/link.h (struct link_map): Add l_used element.
3683         * sysdeps/generic/ldsodefs.h: Define DL_DEBUG_UNUSED.
3684         * elf/rtld.c (process_dl_debug): Recognize unused.
3685         (dl_main): When unused debug flag is set check for unused direct
3686         dependencies.
3687         When printing dependencies and SONAME starts with /, omit the SONAME =>
3688         part.
3689         * elf/dl-lookup.c (_dl_lookup_symbol_x): Mark object in which the
3690         symbol has been found as used.
3691         * elf/ldd.bash.in: Add -u option.
3693 2004-09-18  Jakub Jelinek  <jakub@redhat.com>
3695         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
3696         Do nothing if __NR_set_tid_address is not defined.  [BZ #390]
3698 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
3700         * sysdeps/posix/getaddrinfo.c: Use gethostbyname3_r NSS function
3701         in case it is available.
3703 2004-09-17  Jakub Jelinek  <jakub@redhat.com>
3705         * nscd/nscd.c (parse_opt): Write arg string instead of (void *)
3706         key to the socket.
3708 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
3710         * misc/sys/cdefs.h: Define __nonnull using nonnull function attribute
3711         for gcc 3.3 and higher.
3712         * io/fcntl.h: Add __nonnull where appropriate.
3713         * io/ftw.h: Likewise.
3714         * io/utime.h: Likewise.
3715         * io/sys/poll.h: Likewise.
3716         * io/sys/sendfile.h: Likewise.
3717         * io/sys/stat.h: Likewise.
3718         * io/sys/statfs.h: Likewise.
3719         * io/sys/statvfs.h: Likewise.
3720         * posix/unistd.h: Likewise.
3721         * catgets/nl_types.h: Likewise.
3722         * crypt/crypt.h: Likewise.
3723         * debug/execinfo.h: Likewise.
3725 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
3727         * posix/glob.h: Remove cruft to make header usable outside glibc.
3728         The maintenance headache is too big.
3730         * configure.in: Add test for required SELinux features.
3731         * config.make.in: Add have-selinux entry.
3732         * config.h.in: Add HAVE_SELINUX entry.
3733         * nscd/Makefile (nscd-modules): Add selinux.
3734         (CFLAGS-selinux.c): Add -fpie.
3735         Define selinux-LIBS and use in link line.
3736         * nscd/connections.c (handle_request): Check access SELinux permissions
3737         before processing request.
3738         * nscd/nscd.c (main): Initialize selinux_enabled and stop avc thread.
3739         * nscd/nscd_stat.c: Transmit and print AVC statistics.
3740         * nscd/selinux.c: New file.
3741         * nscd/selinux.h: New file.
3742         Patch mostly by Matthew Rickard <mjricka@epoch.ncsc.mil>.
3744 2004-09-16  Jakub Jelinek  <jakub@redhat.com>
3746         * nscd/nscd_helper.c (__nscd_unmap, get_mapping): Use __munmap
3747         instead of munmap.
3749         * nscd/Makefile (CFLAGS-aicache.c): Set to -fpie.
3751 2004-09-16  Thorsten Kukuk  <kukuk@suse.de>
3753         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check
3754         __nss_not_use_nscd_hosts variable if nscd should be used or not.
3756 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
3758         * nscd/nscd_proto.h: Define NSS_NSCD_RETRY.
3759         Add __nscd_getai prototype.
3760         * nss/getXXbyYY_r.c: Remode definition of NSS_NSCD_RETRY.
3761         * nscd/nscd-client.h: Remove __nscd_getai prototype.
3762         * nscd/nscd_getai.c: Include nscd_proto.h.
3764         * elf/ldd.bash.in: Add support for SELinux environments.
3765         Patch by Stephen Smalley <sds@epoch.ncsc.mil>.
3767 2004-09-16  Roland McGrath  <roland@redhat.com>
3769         * configure.in (--with-headers): Let argument contain a : separated
3770         list of directories to use, not just one.
3771         * configure: Regenerated.
3773 2004-09-15  Richard Henderson  <rth@redhat.com>
3775         * sysdeps/alpha/fpu/libm-test-ulps: Update.
3776         * scripts/data/c++-types-alpha-linux-gnu.data: New file.
3778 2004-09-15  Ulrich Drepper  <drepper@redhat.com>
3780         * nscd/aicache.c: Prefer using gethostbyname3_r NSS callback to also
3781         get ttl and canonical name.  Use these two values.
3782         * resolv/Versions: Export _nss_dns_gethostbyname3_r from libnss_dns.
3783         * resolv/nss_dns/dns-host.c (getanswer_r): Take two new parameters.
3784         If nonnull fill with TTL and pointer to canonical name respectively.
3785         (_nss_dns_gethostbyaddr_r): Pass NULL in new parameters of getanswer_r.
3786         (_nss_dns_gethostbyname2_r): Just wrapper around
3787         _nss_dns_gethostbyname3_r.
3788         (_nss_dns_gethostbyname3_r): Renamed from _nss_dns_gethostbyname2_r.
3789         Take two new parameters which as passed to getanswer_r.
3791         * nscd/Makefile (rountines): Add nscd_getai.
3792         (nscd-modules): Add aicache.
3793         * nscd/aicache.c: New file.
3794         * nscd/nscd_getai.c: New file.
3795         * nscd/cache.c (prune_cache): Handle GETAI request type.
3796         * nscd/connections.c: Add GETAI support in request handling.
3797         * nscd/nscd-client.h (request_type): Add GETAI.
3798         Define ai_response_header and struct nscd_ai_result types.
3799         (struct datahead): Add aidata field.
3800         Declare __nscd_getai.
3801         * nscd/nscd.c: Add getaddrinfo definition to catch problems.
3802         * nscd/nscd.h: Declare addhstai and readdhstai.
3804         * sysdeps/posix/getaddrinfo.c: Add support for using cached results.
3805         * posix/Makefile (CFLAGS-getaddrinfo.c): Add -DUSE_NSCD.
3807         * nscd/nscd-client.h  (struct datahead): Use uint8_t instead of bool.
3809 2004-09-14  Ulrich Drepper  <drepper@redhat.com>
3811         * misc/sys/cdefs.h: Remove debugging text from __P and __PMT.
3813 2004-09-13  Ulrich Drepper  <drepper@redhat.com>
3815         * misc/sys/cdefs.h: Restore old definition of __P.
3816         * csu/munch.awk: Remove uses of __P and __PMT.
3817         * gmon/gmon.c: Likewise.
3818         * hesiod/hesiod.h: Likewise.
3819         * include/stdio.h: Likewise.
3820         * io/fts.c: Likewise.
3821         * libio/genops.c: Likewise.
3822         * libio/libioP.h: Likewise.
3823         * libio/fileops.c: Likewise.
3824         * libio/iolibio.h: Likewise.
3825         * libio/libio.h: Likewise.
3826         * libio/memstream.c: Likewise.
3827         * libio/oldfileops.c: Likewise.
3828         * libio/oldstdfiles.c: Likewise.
3829         * libio/iopopen.c: Likewise.
3830         * libio/vsnprintf.c: Likewise.
3831         * libio/vswprintf.c: Likewise.
3832         * libio/wgenops.c: Likewise.
3833         * libio/oldiopopen.c: Likewise.
3834         * locale/programs/xmalloc.c: Likewise.
3835         * locale/programs/xstrdup.c: Likewise.
3836         * malloc/mtrace.c: Likewise.
3837         * misc/getttyent.c: Likewise.
3838         * misc/getusershell.c: Likewise.
3839         * nis/rpcsvc/ypupd.h: Likewise.
3840         * posix/fnmatch.h: Likewise.
3841         * posix/glob.h: Likewise.
3842         * resolv/arpa/nameser.h: Likewise.
3843         * resolv/gethnamaddr.c: Likewise.
3844         * resolv/resolv.h: Likewise.
3845         * resolv/inet_net_ntop.c: Likewise.
3846         * resolv/inet_net_pton.c: Likewise.
3847         * resolv/res_init.c: Likewise.
3848         * resolv/nss_dns/dns-network.c: Likewise.
3849         * stdio-common/vfprintf.c: Likewise.
3850         * stdio-common/reg-printf.c: Likewise.
3851         * sysdeps/generic/chflags.c: Likewise.
3852         * sysdeps/generic/fchflags.c: Likewise.
3853         * sysdeps/generic/glob.c: Likewise.
3854         * sysdeps/generic/printf_fphex.c: Likewise.
3855         * sysdeps/generic/memcmp.c: Likewise.
3856         * sysdeps/generic/memcopy.h: Likewise.
3857         * sysdeps/generic/morecore.c: Likewise.
3858         * sysdeps/generic/sstk.c: Likewise.
3859         * sysdeps/posix/sigvec.c: Likewise.
3860         * sysdeps/posix/ttyname_r.c: Likewise.
3861         * sysdeps/standalone/arm/bits/errno.h: Likewise.
3862         * sysdeps/standalone/standalone.h: Likewise.
3863         * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise.
3864         * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
3865         * sysdeps/unix/arm/start.c: Likewise.
3866         * sysdeps/unix/bsd/sigaction.c: Likewise.
3867         * sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise.
3868         * sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise.
3869         * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise.
3870         * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise.
3871         * sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise.
3872         * sysdeps/unix/sparc/start.c: Likewise.
3873         * sysdeps/unix/sysv/getdents.c: Likewise.
3874         * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise.
3875         * sysdeps/unix/sysv/irix4/getgroups.c: Likewise.
3876         * sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
3877         * sysdeps/unix/sysv/irix4/getrusage.c: Likewise.
3878         * sysdeps/unix/sysv/irix4/pathconf.c: Likewise.
3879         * sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
3880         * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise.
3881         * sysdeps/unix/sysv/irix4/start.c: Likewise.
3882         * sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
3883         * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise.
3884         * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise.
3885         * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
3886         * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise.
3887         * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
3888         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
3889         * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise.
3890         * sysdeps/unix/sysv/sysv4/setsid.c: Likewise.
3891         * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
3892         * sysdeps/unix/sysv/sysv4/waitpid.c: Likewise.
3893         * sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise.
3894         * time/tzset.c: Likewise.
3895         * time/strftime_l.c: Likewise.
3896         * time/strptime_l.c: Likewise.
3897         * crypt/md5.h: Likewise.
3899 2004-09-13  Andreas Jaeger  <aj@suse.de>
3901         * configure.in: Support GCC 4.x.
3902         * configure: Regenerated.
3904 2004-09-13  Thorsten Kukuk  <kukuk@suse.de>
3906         * nscd/nscd_stat.c: Don't access dbs[cnt].head for disabled services.
3908         * nscd/nscd.init: Fix path to socket.
3910 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
3912         * nscd/nscd_helper.c (get_mapping): Correctly check cmsg length.
3913         Avoid file descriptor leak in case of size mismatch.
3915         * nscd/nscd-client.h: Fix database structure layout for biarch.
3916         * nscd/mem.c (gc): Add casts to avoid warnings.
3918         * nss/getent.c: Don't preconstruct help message.  Do it only when
3919         needed.
3921         * locale/programs/locale.c: Simplify help message printing.
3923 2004-09-12  Roland McGrath  <roland@frob.com>
3925         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]: Add decls
3926         missing in last change.
3928 2004-09-11  Thorsten Kukuk  <kukuk@suse.de>
3930         * nis/nss_compat/compat-grp.c: Check that buflen is greater zero
3931         before writing data into the buffer with negative offset.
3932         * nis/nss_compat/compat-initgroups.c: Likewise.
3933         * nis/nss_compat/compat-pwd.c: Likewise.
3934         * nis/nss_compat/compat-spwd.c Likewise.
3936 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
3938         * misc/syslog.c (vsyslog): Fix copying of PID in case of
3939         out-of-memory situation.  [BZ #365].
3941         * sysdeps/alpha/fpu/bits/mathinline.h: Use __NTH instead of
3942         __THROW in inline function definitions.
3944         * posix/spawn.h [__USE_GNU]: Define POSIX_SPAWN_USEVFORK.
3945         * posix/spawnattr_setflags.c: Check whether any unknown bit is set
3946         in FLAGS parameter and fail if this is the case.
3947         * sysdeps/posix/spawni.c: Use vfork if POSIX_SPAWN_USEVFORK flag is
3948         set.
3950         * nscd/pwdcache.c (cache_addpw): Sync also negative results to disk.
3951         * nscd/grpcache.c (cache_addgr): Likewise.
3952         * nscd/hstcache.c (cache_addhst): Likewise.
3954 2004-09-11  Roland McGrath  <roland@frob.com>
3956         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]:
3957         Set _dl_phdr and _dl_phnum.
3958         (init1): When bootstrap task, bail early and never examine *D.
3960 2004-09-11  Alfred M. Szmidt  <ams@kemisten.nu>
3962         * sysdeps/mach/hurd/i386/tls.h (__i386_set_gdt) [!HAVE_I386_SET_GDT]:
3963         Cast THR, SEL and DESC to `void'.
3965 2004-09-11  Ulrich Drepper  <drepper@redhat.com>
3967         * nscd/connections.c (nscd_run): Call setup_thread only for enabled
3968         databases.
3970         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Use __NTH for __cmsg_nxthdr.
3972 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
3974         * nscd/nscd.c (pagesize_m1): New variable.
3975         (main): Initialize it.
3976         * nscd/nscd.h: Declare pagesize_m1.
3977         * nscd/hstcache.c: Pass correctly aligned address to msync.
3978         * nscd/grpcache.c: Likewise.
3979         * nscd/pwdcache.c: Likewise.
3981 2004-09-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3983         * sysdeps/unix/sysv/linux/sh/pthread_cond_wait.S: Decrement
3984         __nwaiters.  If pthread_cond_destroy has been called and this is
3985         the last waiter, signal pthread_cond_destroy caller and avoid
3986         using the pthread_cond_t structure after unlock.
3987         * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise.
3989 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
3991         * sysdeps/unix/sysv/linux/kernel-features.h: Don't define
3992         __ASSUME_CLONE_STOPPED.
3994 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
3996         * misc/sys/cdefs.h (__REDIRECT_NTH): Change order of __THROW and
3997         __asm__ for C++.  [BZ #377]
3999 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
4001         * nscd/nscd_stat.c: Improve output by also printing .shared and
4002         .persistent.
4004         * nscd/connections.c: Allow cache sharing to be really disabled.
4006 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
4008         * malloc/malloc.c (_int_free): Only do arena boundary check for
4009         contiguous arenas.
4011 2004-09-10  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
4013         * stdlib/longlong.h [__M32R__] (add_ssaaaa, sub_ddmmss): Fix broken
4014         instruct operands.
4015         * elf/elf.h: Add R_M32R_* relocs.
4017 2004-09-09  Ulrich Drepper  <drepper@redhat.com>
4019         * misc/sys/cdefs.h: Despite what the gcc manual says, gcc 3.2
4020         seems not to support the nothrow attribute.  Use it only for gcc
4021         3.3 and higher.
4023         * malloc/hooks.c (top_check): Print top chunk corruption as normal
4024         error message.
4026         * malloc/malloc.c (malloc_printerr): Don't make informational
4027         message look like error message.
4029 2004-09-09  Andreas Jaeger  <aj@suse.de>
4031         * nscd/Makefile (CFLAGS-nscd_setup_thread.c): Set to -fpie.
4033 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
4035         * sysdeps/unix/sysv/linux/bits/socket.h (__SCM_CONNECT): Removed.
4037         * malloc/malloc.c (_int_free): Add inexpensive double free and
4038         memory corruption tests.
4039         (malloc_printf_nc): Renamed to malloc_printerr.  Second parameter
4040         is no format string anymore.  Don't use stdio.  Adjust all callers.
4041         * malloc/hooks.c: Adjust malloc_printf_nc callers.
4043 2004-09-08  Roland McGrath  <roland@redhat.com>
4045         * malloc/mcheck.c: Don't use __P.
4046         Use prototypes definitions for static functions.
4048 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
4050         * sysdeps/ia64/fpu/bits/mathinline.h: Use __NTH instead of __THROW.
4052 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
4053             Jakub Jelinek  <jakub@redhat.com>
4055         * nscd/nscd-client.h: Add a few #includes.
4057         * nscd/Makefile (nscd-modules): Add nscd_setup_thread.
4058         * nscd/connections.c (nscd_run): Call setup_thread for maintenance
4059         threads.
4060         * nscd/nscd-client.h (struct database_pers_head): Add
4061         nscd_certainly_running field.
4062         * nscd/nscd.h: Declare setup_thread.
4063         * nscd/nscd_helper.c (__nscd_get_map_ref): Avoid the time test if
4064         nscd_certainly_running is nonzero.
4065         * sysdeps/generic/nscd_setup_thread.c: New file.
4066         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: New file.
4068 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
4070         * nscd/connections.c: Implement r/o sharing of nscd's cache with client
4071         processes via shared memory.
4072         * nscd/nscd-client.h: Likewise.
4073         * nscd/nscd.h: Likewise.
4074         * nscd/nscd_conf.c: Likewise.
4075         * nscd/nscd_getgr_r.c: Likewise.
4076         * nscd/nscd_getpw_r.c: Likewise.
4077         * nscd/nscd_gethst_r.c: Likewise.
4078         * nscd/nscd.conf: Add new config parameters.
4079         * nscd/Makefile (aux): Add nscd_helper.
4080         * nscd/nscd_helper.c: New file.
4081         * nscd/mem.c (gc): Indicate beginning and end of the gc cycle.
4083         * nscd/hstcache.c: Simplify a lot.  We cache only the request itself,
4084         no derived information.
4085         * connections.c (nscd_init): Fix bug in testing size of the persistent.
4087         * nis/Makefile (aux): Add nis_hash.
4088         * nis/nis_hash.c: New file.  Split out from nis_util.c.
4089         * nis/nis_util.c: Move __nis_hash code in separate file.
4091         * csu/tst-atomic.c: Improve atomic_increment_val test which would
4092         not have found a ppc bug.
4094         * sysdeps/s390/fpu/bits/mathinline.h: Remove unnecessary includes.
4096         * malloc/arena.c: Remove __MALLOC_P uses.
4097         * malloc/malloc.c: Likewise.
4099         * malloc/mtrace.c: Remove __P uses.
4100         * malloc/mcheck-init.c: Likewise.
4102 2004-09-07  Jakub Jelinek  <jakub@redhat.com>
4104         * sysdeps/powerpc/powerpc64/configure.in: New file.
4105         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
4106         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
4107         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
4108         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
4109         BODY_PREFIX): Define.
4110         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
4111         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
4112         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
4113         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
4114         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
4116 2004-09-07  Ulrich Drepper  <drepper@redhat.com>
4118         * malloc/malloc.h: Don't define __THROW if it is already defined.
4120         * sysdeps/powerpc/bits/atomic.h (atomic_increment): Define.
4121         (atomic_decrement): Define.
4123         * sysdeps/powerpc/bits/atomic.h: Implement atomic_increment_val and
4124         atomic_decrement_val.
4125         * sysdeps/powerpc/powerpc32/bits/atomic.h: Likewise.
4126         * sysdeps/powerpc/powerpc64/bits/atomic.h: Likewise.
4128         * csu/tst-atomic.c (do_test): Add tests of atomic_increment_val
4129         and atomic_decrement_val.
4131         * include/atomic.h: Define atomic_increment_val, atomic_decrement_val,
4132         and atomic_delay is not already defined.
4133         * sysdeps/i386/i486/bits/atomic.h: Define atomic_delay.
4134         * sysdeps/x86_64/bits/atomic.h: Likewise.
4136         * miscd/sys/cdefs.h (__NTH): New macro.
4137         (__THROW): Define using nothrow attribute for C code and gcc >= 3.2.
4138         (__REDIRECT_NTH): New macro.
4139         * argp/argp.h: Use __NTH and __REDIRECT_NTH where necessary.
4140         * ctype/ctype.h: Likewise.
4141         * dirent/dirent.h: Likewise.
4142         * io/fcntl.h: Likewise.
4143         * io/sys/sendfile.h: Likewise.
4144         * io/sys/stat.h: Likewise.
4145         * io/sys/statfs.h: Likewise.
4146         * io/sys/statvfs.h: Likewise.
4147         * libio/bits/stdio.h: Likewise.
4148         * misc/sys/mman.h: Likewise.
4149         * posix/unistd.h: Likewise.
4150         * resource/sys/resource.h: Likewise.
4151         * rt/aio.h: Likewise.
4152         * signal/signal.h: Likewise.
4153         * stdlib/stdlib.h: Likewise.
4154         * string/argz.h: Likewise.
4155         * string/string.h: Likewise.
4156         * sysdeps/generic/inttypes.h: Likewise.
4157         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
4158         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
4159         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
4160         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
4161         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
4162         * sysdeps/unix/sysv/linux/bits/sys/sysmacros.h: Likewise.
4163         * wcsmbs/wchar.h: Likewise.
4165         * sysdeps/generic/glob.c: Use __PMT isntead of __P where appropriate.
4167         * resolv/gethnamaddr.c (getanswer): Remove __P use in variable
4168         definition.
4170         * io/sys/poll.h: Remove __THROW from poll prototype, it's a
4171         cancellation point.
4173         * io/fts.c (fts_open): Remove uses of __P.
4175         * include/stdlib.h: No need to use __THROW in this header.
4177 2004-09-06  Roland McGrath  <roland@frob.com>
4179         * sysdeps/mach/hurd/dl-sysdep.c (__writev): Does use assert on FD
4180         validity, since __assert_fail gets to here anyway.  Just fail.
4182 2004-09-06  Ulrich Drepper  <drepper@redhat.com>
4184         * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix problem with
4185         AF_UNSPEC lookup with AI_CANONNAME of name which has only IPv6
4186         addresses.
4188 2004-09-05  Richard Henderson  <rth@redhat.com>
4190         * sysdeps/alpha/fpu/fraiseexcpt.c: Remove file.
4191         * sysdeps/unix/sysv/linux/kernel-features.h
4192         (__ASSUME_IEEE_RAISE_EXCEPTION): New.
4193         * sysdeps/unix/sysv/linux/alpha/fraiseexcpt.c: New file.
4194         * sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h: New file.
4195         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use it.
4196         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
4198 2004-09-05  Richard Henderson  <rth@redhat.com>
4200         * sysdeps/alpha/div.S: Save and restore FPCR around fp operations.
4201         * sysdeps/alpha/divl.S, sysdeps/alpha/divq.S, sysdeps/alpha/divqu.S,
4202         sysdeps/alpha/ldiv.S, sysdeps/alpha/reml.S, sysdeps/alpha/remq.S,
4203         sysdeps/alpha/remqu.S: Likewise.
4204         * sysdeps/alpha/div_libc.h (FRAME): Increase to 64.
4206 2004-09-05  Ulrich Drepper  <drepper@redhat.com>
4208         * nscd/cache.c (cache_add): Correctly log GETHOSTBYADDR and
4209         GETHOSTBYADDRv6 requests.
4211 2004-09-04  Ulrich Drepper  <drepper@redhat.com>
4213         * nscd/pwdcache.c (cache_addpw): Use correct key length in
4214         cache_add calls.
4215         * nscd/grpcache.c (cache_addgr): Likewise.
4217 2004-09-03  Alfred M. Szmidt  <ams@kemisten.nu>
4219         * sysdeps/mach/hurd/i386/tls.h (THREAD_DTV): Changed type of _DTV
4220         to `dtv_t *'.
4222 2004-09-03  Ulrich Drepper  <drepper@redhat.com>
4224         * nscd/nscd.c (parse_opt): Use writev instead of two write for
4225         invalidate command.
4227 2004-09-02  Ulrich Drepper  <drepper@redhat.com>
4229         * nscd/connections.c (nscd_run): Check early for invalid request types.
4231 2004-09-02  Roland McGrath  <roland@frob.com>
4233         * sysdeps/mach/hurd/i386/tls.h (TLS_INIT_TP_EXPENSIVE): New macro.
4234         (INSTALL_NEW_DTV, THREAD_DTV): Rewritten to fetch the right word.
4235         (THREAD_SELF): New macro.
4237 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
4239         [BZ #357]
4240         * stdlib/tst-setcontext.c (test_stack): Added test for stack clobber.
4241         (main): Call test_stack.
4242         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
4243         (__getcontext): Push stack frame then save parms in local frame.
4244         Improve instruction scheduling.
4245         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
4246         (__swapcontext): Likewise.
4248 2004-09-01  Andreas Schwab  <schwab@suse.de>
4250         * sysdeps/unix/sysv/linux/ia64/sys/ucontext.h [g++ >= 3.5]: Use
4251         __builtin_offsetof.
4253 2004-09-01  Jakub Jelinek  <jakub@redhat.com>
4255         [BZ #361]
4256         * posix/fnmatch_loop.c (FCT): For backslash between brackets, branch
4257         to normal_bracket after fetching the next character.
4258         * posix/tst-fnmatch.input: Add 25 new tests.
4259         Reported by Markus Oberhumer <markus@oberhumer.com>.
4261 2004-09-01  Ulrich Drepper  <drepper@redhat.com>
4263         * elf/rtld.c (dl_main): First check existence of ld.so.preload
4264         with access.
4266 2004-09-01  Roland McGrath  <roland@redhat.com>
4268         * sysdeps/unix/sysv/linux/bits/waitflags.h
4269         (WSTOPPED, WEXITED, WCONTINUED, WNOWAIT): New macros.
4270         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_WAITID_SYSCALL):
4271         New macro.
4272         * sysdeps/unix/sysv/linux/waitid.c: New file.  Use new syscall when
4273         available, or fall back to the waitpid-based generic code.
4275 2004-08-14  Alfred M. Szmidt  <ams@kemisten.nu>
4277         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Let gcc
4278         clobber the `ebp' register.
4279         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Removed.
4280         Reverts change from 2004-05-07 by Jeroen Dekkers.
4282         * sysdeps/mach/hurd/i386/init-first.c (init): Changed the type of
4283         NEWSP from `void *' to `int *'.  Changed all casts accordingly.
4285 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
4287         * wcsmbs/wcsmbsload.c (__wcsmbs_getfct): Move attribute_hidden
4288         before return type.
4289         * locale/localename.c (__current_locale_name): Likewise.
4291 2004-08-30  Roland McGrath  <roland@frob.com>
4293         * scripts/extract-abilist.awk: If `lastversion' variable defined, omit
4294         later sets from output.
4295         * Makerules (check-abi): Pass option to set that with value of
4296         LIB-abi-frozen variable if one is set.
4298         * abilist/libcidn.abilist: New file (empty).
4300 2004-08-30  Jakub Jelinek  <jakub@redhat.com>
4302         * posix/bits/posix1_lim.h (_POSIX_CHILD_MAX, _POSIX_OPEN_MAX): If
4303         not __USE_XOPEN2K, use the Unix98 mandated values.
4305 2004-08-27  Roland McGrath  <roland@redhat.com>
4307         * configure.in (usetls): Default to yes.
4308         * configure: Regenerated.
4310 2004-08-26  Roland McGrath  <roland@redhat.com>
4312         * configure.in (add_ons_automatic): New variable, set to yes or no
4313         indicating --enable-add-ons with no explicit list.
4314         (running add-on fragments): Allow a fragment to modify $libc_add_on
4315         and have that affect its place in the list of add-ons to use.
4316         * configure: Regenerated.
4318 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
4320         * nscd/cache.c: Major rewrite.  The data is now optionally kept in
4321         a mmaped memory region which is automatically mirrored on disk.
4322         This implements persistent data storage.  The Memory handled
4323         needed to be completely revamped, it now uses a garbage collection
4324         mechanism instead of malloc.
4325         * nscd/connections.c: Likewise.
4326         * nscd/nscd.c: Likewise.
4327         * nscd/nscd.h: Likewise.
4328         * nscd/nscd_conf.c: Likewise.
4329         * nscd/nscd_stat.c: Likewise.
4330         * nscd/grpcache.c: Likewise.
4331         * nscd/hstcache.c:: Likewise.
4332         * nscd/pwdcache.c:: Likewise.
4333         * nscd/Makefile: Add rules to build mem.c.
4334         * nscd/mem.c: New file.
4335         * nscd/nscd.conf: Describe new configuration options.
4337 2004-08-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4339         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
4340         NO_SGIDEFS_H isn't defined.
4341         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
4342         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
4344         * sysdeps/unix/sysv/linux/sh/pread.c: Define NO_SGIDEFS_H and
4345         _MIPS_SIM.
4346         * sysdeps/unix/sysv/linux/sh/pwrite.c: Likewise.
4347         * sysdeps/unix/sysv/linux/sh/pread64.c: Likewise.
4348         * sysdeps/unix/sysv/linux/sh/pwrite64.c: Likewise.
4350 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
4352         * nscd/connections.c (nscd_run): atomic_increment was not missing.
4354         * sysdeps/gnu/Makefile (libdl-sysdep_routines): Don't add eval.
4355         Patch by Greg Schafer.
4357 2004-08-25  Richard Henderson  <rth@redhat.com>
4359         * sysdeps/alpha/elf/start.S (_start): Use $15 as frame unwind
4360         instead of $31.  Zero $15.
4361         * sysdeps/unix/sysv/linux/alpha/clone.S (thread_start): Likewise.
4363 2004-08-25  Ulrich Drepper  <drepper@redhat.com>
4365         * sysdeps/powerpc/powerpc64/bits/atomic.h
4366         (__arch_compare_and_exchange_bool_32_acq): Fix case where oldval
4367         is negative.
4368         (__arch_compare_and_exchange_bool_32_rel): Likewise.
4370         * nscd/connections.c: Make socket nonblocking so that threads
4371         don't get stuck on accept.  Fix locking.
4373         * nscd/grpcache.c (cache_addgr): Use copy of original key in hash
4374         entry with alternative key.
4375         * nscd/pwdcache.c (cache_addpw): Likewise.
4377 2004-08-25  Richard Sandiford  <rsandifo@redhat.com>
4379         * sysdeps/mips/dl-machine.h (_dl_start_user): Don't set
4380         __libc_stack_end.
4382 2004-08-23  Ulrich Drepper  <drepper@redhat.com>
4384         * sysdeps/gnu/netinet/udp.h: Cosmetic changes.  Remove unnecessary
4385         __BEGIN_DECLS/__END_DECLS.
4387 2004-08-23  Andreas Jaeger  <aj@suse.de>
4389         [BZ #341]
4390         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_NOATIME): Define.
4391         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (O_NOATIME): Likewise.
4392         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (O_NOATIME): Likewise.
4393         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (O_NOATIME): Likewise.
4394         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (O_NOATIME): Likewise.
4395         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_NOATIME): Likewise.
4396         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (O_NOATIME): Likewise.
4397         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (O_NOATIME): Likewise.
4398         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_NOATIME): Likewise.
4399         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (O_NOATIME): Likewise.
4400         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (O_NOATIME): Likewise.
4401         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_NOATIME): Likewise.
4402         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (O_NOATIME): Likewise.
4404 2004-08-21  Ulrich Drepper  <drepper@redhat.com>
4406         * malloc/hooks.c (DEFAULT_CHECK_ACTION): Moved to malloc.c.
4407         (check_action): Likewise.
4408         When printing error messages, use malloc_printf_nc now instead of
4409         fiddling with the streams cancellation flag in every place.
4410         * malloc/malloc.c (DEFAULT_CHECK_ACTION): New definition.  Change
4411         default to 3.
4412         (check_action): New variable.
4413         (unlink): Print error message and eventually terminate in case list
4414         is corrupted.
4415         (malloc_printf_nc): New function.  Use it in _int_free.
4416         Change proposed by Arjan van de Ven.
4418         * dlfcn/Makefile: Don't build eval.c anymore.
4420 2004-08-20  Roland McGrath  <roland@frob.com>
4422         * csu/Makefile ($(objpfx)version-info.h): Use printf in place
4423         of echo -e for POSIX.2 portability.
4424         Reported by Paul Jarc <prj@po.cwru.edu>.
4426 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
4428         * sysdeps/posix/getaddrinfo.c (gaih_inet): Minor optimizations in
4429         list generation.
4431         * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't use
4432         getcanonname_r function if AI_CANONNAME flag is not set in
4433         request.
4435         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss):
4436         Initialize mysize with limits only if latter is >= 0.  Use mysize
4437         in malloc call.
4439 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
4441         * sysdeps/posix/getaddrinfo.c (gaih_inet): Cast canon to (char *)
4442         to avoid warning.
4444         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Initialize
4445         status to NSS_STATUS_UNAVAIL.
4447 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
4449         * sysdeps/posix/getaddrinfo.c (gaih_inet): Use h->h_name in the
4450         cannoname lookup since it has the FQDN even if the original NAME
4451         value has not.
4453 2004-08-18  Ulrich Drepper  <drepper@redhat.com>
4455         * sysdeps/posix/getaddrinfo.c (gaih_inet): Store NAME parameter
4456         pointer in new variable ORIG_NAME and use this pointer when
4457         determination of canonical name failed, not the possibly IDN
4458         translated value of NAME.
4460 2004-08-17  Ulrich Drepper  <drepper@redhat.com>
4462         * resolv/resolv.h (RES_DEFAULT): Add RES_NOIP6DOTINT.
4463         * resolv/res_init.c (res_setoptions): Recognize ip6-dotint option.
4464         Reset RES_NOIP6DOTINT flag in this case..
4466         * sysdeps/posix/getaddrinfo.c: Fix memory handling of
4467         ai_canonname.
4469 2004-08-16  Ulrich Drepper  <drepper@redhat.com>
4471         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Don't use
4472         CNAME records, we better follow the chain of CNAME records which
4473         can be accomplished with A/AAAA lookups.
4475 2004-08-15  Roland McGrath  <roland@redhat.com>
4477         * sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who):
4478         Remove __RUSAGE_BOTH constant and RUSAGE_BOTH macro.
4479         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
4480         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
4481         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
4483 2004-08-15  Roland McGrath  <roland@frob.com>
4485         * sysdeps/i386/i686/Makefile (elide-routines.os): Append hp-timing to
4486         this, not ...
4487         (static-only-routines): ... this.
4488         * sysdeps/ia64/Makefile: Likewise.
4489         * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
4490         * sysdeps/sparc/sparc64/Makefile: Likewise.
4491         * sysdeps/x86_64/Makefile: Likewise.
4492         * sysdeps/i386/i686/hp-timing.c: Revert copyright terms change.
4493         * sysdeps/ia64/hp-timing.c: Likewise.
4494         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
4495         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
4497         * csu/elf-init.c: Update copyright terms including special exception
4498         for these trivial files, which are statically linked into executables
4499         that use dynamic linking for the significant library code.
4500         * io/fstat.c: Likewise.
4501         * io/fstat64.c: Likewise.
4502         * io/lstat.c: Likewise.
4503         * io/lstat64.c: Likewise.
4504         * io/stat.c: Likewise.
4505         * io/stat64.c: Likewise.
4506         * stdlib/atexit.c: Likewise.
4507         * sysdeps/alpha/elf/initfini.c: Likewise.
4508         * sysdeps/alpha/elf/start.S: Likewise.
4509         * sysdeps/arm/elf/start.S: Likewise.
4510         * sysdeps/cris/elf/start.S: Likewise.
4511         * sysdeps/generic/initfini.c: Likewise.
4512         * sysdeps/generic/mknod.c: Likewise.
4513         * sysdeps/hppa/elf/initfini.c: Likewise.
4514         * sysdeps/hppa/elf/start.S: Likewise.
4515         * sysdeps/i386/elf/start.S: Likewise.
4516         * sysdeps/i386/i686/hp-timing.c: Likewise.
4517         * sysdeps/ia64/elf/initfini.c: Likewise.
4518         * sysdeps/ia64/elf/start.S: Likewise.
4519         * sysdeps/ia64/hp-timing.c: Likewise.
4520         * sysdeps/m68k/elf/start.S: Likewise.
4521         * sysdeps/mach/start.c: Likewise.
4522         * sysdeps/mips/elf/start.S: Likewise.
4523         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
4524         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
4525         * sysdeps/s390/s390-32/elf/start.S: Likewise.
4526         * sysdeps/s390/s390-32/initfini.c: Likewise.
4527         * sysdeps/s390/s390-64/elf/start.S: Likewise.
4528         * sysdeps/s390/s390-64/initfini.c: Likewise.
4529         * sysdeps/sh/elf/initfini.c: Likewise.
4530         * sysdeps/sh/elf/start.S: Likewise.
4531         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
4532         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
4533         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
4534         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
4535         * sysdeps/standalone/i386/start.S: Likewise.
4536         * sysdeps/standalone/i960/start.S: Likewise.
4537         * sysdeps/standalone/m68k/m68020/start.S: Likewise.
4538         * sysdeps/unix/arm/start.c: Likewise.
4539         * sysdeps/unix/bsd/osf/alpha/start.S: Likewise.
4540         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
4541         * sysdeps/unix/sparc/start.c: Likewise.
4542         * sysdeps/unix/start.c: Likewise.
4543         * sysdeps/unix/sysv/aix/start.s: Likewise.
4544         * sysdeps/unix/sysv/irix4/start.c: Likewise.
4545         * sysdeps/x86_64/elf/initfini.c: Likewise.
4546         * sysdeps/x86_64/elf/start.S: Likewise.
4548 2004-08-15  Roland McGrath  <roland@redhat.com>
4550         [BZ #227]
4551         * sysdeps/unix/sysv/linux/kernel-features.h
4552         (__ASSUME_BRK_PAGE_ROUNDED): New macro.
4553         * sysdeps/unix/sysv/linux/dl-sysdep.c (frob_brk)
4554         [! __ASSUME_BRK_PAGE_ROUNDED]: Adjust the break up if it falls within
4555         the partial page after the dynamic linker's own data segment.
4557 2004-08-15  Ulrich Drepper  <drepper@redhat.com>
4559         * sysdeps/posix/getaddrinfo.c (gaih_inet): Optimize generation of
4560         v4-mapped addresses a bit.
4561         (gethosts): Move alloca out of macro, so that it is done only once.
4563         * sysdeps/posix/getaddrinfo.c (gaih_addrtuple): Change type of
4564         addr to avoid casts.
4565         (gethosts): Removed.
4566         (gethosts2): Renamed to gethosts.  Make it usable for family !=
4567         AF_UNSPEC.  Fix AI_V4MAPPED.
4568         (gaih_inet): Remove use of old gethosts.  Always use what used to be
4569         gethosts2.  If entry is found, try to use the same NSS module's
4570         getcanonname_r function.  Use gethostbyaddr for AI_CANONNAME only
4571         if getcanonname_r was not available.  Fix filtering of AI_V4MAPPED
4572         addresses.  Numerous cleanups.
4573         * resolv/nss_dns/dns-canon.c: New file.
4574         * resolv/Makefile (libnss_dns-routines): Add dns-canon.
4575         * resolv/Versions (libnss_dns): Add _nss_dns_getcanonname_r.
4577         * elf/Makefile: Add rules to build and run tst-dlopenrpath.
4578         * elf/tst-dlopenrpath.c: New file.
4579         * elf/tst-dlopenrpathmod.c: New file.
4581         * intl/tst-gettext.sh: Adjust for change of de.po file to UTF-8.
4582         * intl/tst-gettext.c: Likewise.
4584         * nss/getent.c (ahosts_keys_int): Correctly print IPv6 addresses.
4586         * nss/getent.c: Allow queries for getaddrinfo with AF_INET and
4587         AF_INET6.
4589 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
4591         * po/de.po: Update from translation team.
4593 2004-08-14  Roland McGrath  <roland@frob.com>
4595         * sysdeps/mach/configure: Regenerated.
4596         * sysdeps/mach/hurd/configure: Regenerated.
4598 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
4600         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If RFC3484 sorting is
4601         performed, make sure it is still the first entry after sorting
4602         that has the ai_canonname information.
4604         * sysdeps/posix/getaddrinfo.c (gaih_inet): Really set ai_canonname
4605         only in one entry.
4607 2004-08-13  Daniel Jacobowitz  <dan@debian.org>
4609         * scripts/output-format.sed: Handle default case of three-argument
4610         OUTPUT_FORMAT.
4612         * sysdeps/arm/machine-gmon.h (mcount_internal): Mark as
4613         __attribute_used__.
4615 2004-08-13  Ulrich Drepper  <drepper@redhat.com>
4617         * nss/getent.c (ahosts_keys): ai_canonname is NULL for all but the
4618         first returned entry.  Print name only if not NULL.
4620         * nis/nss_nis/nis-netgrp.c: Remove locking by using data in struct
4621         __netgrent object passed in instead of global variables.
4622         Optimize.
4623         * nis/nss_nisplus/nisplus-netgrp.c: Remove locking by using data
4624         in struct __netgrent object passed in instead of global variables.
4625         * inet/netgroup.h (struct __netgrent): Add service_user field.
4626         Move cursor in anonymous union, add new field location to that
4627         union.
4628         * inet/getnetgrent_r.c: Extensive rewrite to really enable
4629         concurrent uset of set/get/endnetgrent and innetgr.
4630         Reported by Chuck Simmons.
4632         * inet/netgroup.h (struct name_list): Replace name pointer with
4633         zero-sized array.
4634         * inet/getnetgrent_r.c: Adjust code for change in name_list
4635         layout.  Numerous strdup and free calls removed.
4637         * elf/sprof.c (read_symbols): When comparing aliases, prefer
4638         non-hidden over hidden symbols and strong over weak symbols
4639         if both don't start with '_'.
4641         * malloc/malloc.c: Use strong_alias instead of weak_alias wherever
4642         possible.
4644 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
4646         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
4647         RUSAGE_ enums as __RUSAGE_ and adjust macros accordingly.
4648         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
4649         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
4650         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
4651         Define non-standard RLIMIT_ enums as __RLIMIT_ and adjust macros
4652         accordingly.
4654 2004-08-11  Andreas Schwab  <schwab@suse.de>
4656         * resolv/res_libc.c: Move definition of __res_initstamp ...
4657         * resolv/res_init.c: ... here.
4659 2004-08-10  GOTO Masanori  <gotom@debian.or.jp>
4661         * locale/C-time.c: Change default ERA value from NULL to "".
4662         * locale/tst-C-locale.c: Add test case for ERA keywords.
4664 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
4666         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
4667         RLIMIT__ enums as __RLIMIT_ and adjust macros accordingly.
4668         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
4669         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
4671 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
4673         * sysdeps/unix/sysv/linux/bits/resource.h (RLIMIT_SIGPENDING,
4674         RLIMIT_MSGQUEUE): Add.
4675         (RLIMIT_NLIMITS, RLIM_NLIMITS): Adjust.
4676         * sysdeps/unix/sysv/linux/alpha/bits/resource.h (RLIMIT_SIGPENDING,
4677         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
4678         (RLIM_NLIMITS): Adjust.
4679         * sysdeps/unix/sysv/linux/sparc/bits/resource.h (RLIMIT_SIGPENDING,
4680         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
4681         (RLIM_NLIMITS): Adjust.
4682         * sysdeps/unix/sysv/linux/mips/bits/resource.h (RLIMIT_SIGPENDING,
4683         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
4684         (RLIM_NLIMITS): Adjust.
4686 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
4688         * resolv/res_query.c (__libc_res_nsearch): Protect the debugging
4689         printf with #ifdef DEBUG and RES_DEBUG check.
4691         * sysdeps/unix/sysv/linux/bits/shm.h: Move __END_DECLS after
4692         __USE_MISC #endif.
4693         * sysdeps/generic/bits/shm.h: Add __BEGIN_DECLS for __getpagesize
4694         declaration.
4695         * sysdeps/gnu/bits/shm.h: Likewise.
4696         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
4697         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
4698         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
4699         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
4700         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
4702 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
4704         * po/ca.po: Update from translation team.
4706 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
4708         * sysdeps/unix/sysv/linux/bits/shm.h: Add __BEGIN_DECLS for
4709         __getpagesize declaration.
4711 2004-08-11  Roland McGrath  <roland@redhat.com>
4713         * configure.in (libc_cv_cpp_asm_debuginfo): Add missing braces around
4714         commands inside &&.
4715         Reported by Andreas Schwab <schwab@suse.de>.
4716         * configure: Regenerated.
4718         * posix/tst-waitid.c (do_test): Ignore SIGCHLD before cleanup SIGKILL.
4720 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
4722         * time/tzset.c (tzset_internal): Add new parameter which is
4723         nonzero if called through tzset.  Use TZDEFAULT name including
4724         name comparison if the new parameter is zero.  This means implicit
4725         tzset calls will not cause files to be opened and read by tzfile.c
4726         all the time.
4728 2004-08-11  Jakub Jelinek  <jakub@redhat.com>
4730         * rt/tst-timer2.c (do_test): If timer_create fails, just continue.
4731         * rt/tst-timer4.c (do_test): If one of the timer_create calls fails,
4732         return 1 immediately.
4734         * time/tzfile.c (__tzfile_read): Free transitions only if it will
4735         not be reused.
4737         * sysdeps/ieee754/dbl-64/mpa.c: Include <sys/param.h>.
4738         * sysdeps/ieee754/dbl-64/mpa.h (MAX, MIN): Macros removed.
4740         * stdio-common/tst-popen.c: Include <string.h>.
4742         * resolv/res_send.c (__libc_res_nsend): Only define TMPBUF #if DEBUG.
4744         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Remove noreturn
4745         attribute.  Return NULL instead of calling pthread_exit at the end.
4747 2004-08-11  Roland McGrath  <roland@redhat.com>
4749         * iconvdata/testdata/ISO-2022-JP-3: Regenerated.
4751 2004-08-10  Alfred M. Szmidt  <ams@kemisten.nu>
4753         * sysdeps/generic/bits/in.h (struct ip_mreq): Remove definition.
4755 2004-08-10  Jakub Jelinek  <jakub@redhat.com>
4757         * libio/bits/stdio.h (fread_unlocked): Cast 0 to (size_t).
4758         (fwrite_unlocked): When checking if size * n is <= 8, cast each
4759         argument to size_t individually.  Cast n to (void) instead of
4760         (size_t), surround with (), return (size_t) 0 if one of n or size
4761         is 0.  [BZ #316]
4762         * stdio-common/Makefile (tests): Add tst-unlockedio.
4763         * stdio-common/tst-unlockedio.c: New test.
4765 2004-08-09  Roland McGrath  <roland@frob.com>
4767         * manual/install.texi (Supported Configurations): Replace bug-glibc
4768         mention with web URL.
4769         * INSTALL: Regenerated.
4770         * locale/iso-3166.def: Likewise, in comment.
4771         * locale/iso-4217.def: Likewise.
4772         * locale/iso-639.def: Likewise.
4773         * posix/cpio.h: Remove bug reporting comment.
4775 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
4777         * libio/bits/stdio.h (fread_unlocked): Add a couple of (size_t)
4778         casts to handle funny calls with floating point argument values
4779         and signed values correctly and without warning.
4780         (fwrite_unlocked): Likewise.  [BZ #309]
4782         * malloc/memusage.c (me): Use creat64, not creat.
4783         * malloc/memusagestat.c: Fix handling of very large sizes.  [BZ #285]
4784         Patch by Guy Maor <guymaor@yahoo.com>.
4786         * elf/ldconfig.c (options): Mark parameter option names as
4787         translatable.  [BZ #253]  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
4789         * iconv/gconv_charset.h (strip): Also allow comma which is what is
4790         used to separate options.  [BZ #194]
4792 2004-08-09  Roland McGrath  <roland@redhat.com>
4794         * FAQ.in: Refer to web pages instead of bug-glibc.
4795         * FAQ: Regenerated.
4797         * time/strptime_l.c: #include <stdbool.h>, `bool' used in last change.
4799 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
4801         * time/tzset.c (tzset_internal): If TZ is not set do not compare
4802         old and new tz value since it might be /etc/localtime in both
4803         cases although the file changed.  [BZ #154]
4804         Patch by Christian Franke <franke@computer.org>.
4806         * time/tzfile.c (__tzfile_read): Determine dev/ino of file.
4807         Compare with values of previously opened file.  Don't do anything
4808         is they match.
4810 2004-08-08  Ulrich Drepper  <drepper@redhat.com>
4812         * elf/dl-load.c (_dl_map_object): If __RTLD_CALLMAP flag is set,
4813         reset loader before the actual loading.
4814         * elf/dl-open.c (dl_open_worker): If file name contains no path
4815         element determine map of caller.  Pass caller map in this case to
4816         _dl_map_object.  Set __RTLD_CALLMAP in mode.
4817         * include/dlfcn.h (__RTLD_CALLMAP): Define.  [BZ #116]
4818         Patch by Greg Wolodkin <greg@mathworks.com>.
4820         * misc/syslog.c (openlog_internal): Always try both UDP and TCP.
4821         [BZ #108]  Patch mainly by Bjorn Andersson <bjorn@iki.fi>.
4823         * configure.in: Also recognize i786. [BZ #106]
4824         Patch by <pluto@pld-linux.org>.
4826         * resolv/res_query.c (__libc_res_nsearch): Correctly test whether
4827         name contains any dots. [BZ #95]
4829         * resolv/res_send.c: Compiling with DEBUG defined works again.
4830         * resolv/gethnamaddr.c (dprintf): Renamed to Dprintf.  Adjust all
4831         callers.
4833         * resolv/tst-leaks.c (TIMEOUT): Define so that if no server is
4834         available the process is not killed. [BZ #41]
4836         * intl/tst-gettext.c (main): Improve some messages. [BZ #33]
4838         * time/strptime_l.c (__strptime_internal): Fix handling of %Ey.
4839         [BZ #28]
4841         * po/sv.po: Update from translation team.
4843 2004-08-07  Ulrich Drepper  <drepper@redhat.com>
4845         * inet/netinet/in.h: Add more const to the setipv4soucefilter,
4846         getsourcefilter, and setsourcefilter parameter list.
4847         * sysdeps/generic/setipv4sourcefilter.c: Likewise.
4848         * sysdeps/generic/getsourcefilter.c: Likewise.
4849         * sysdeps/generic/setsourcefilter.c: Likewise.
4850         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: Likewise.
4851         * sysdeps/unix/sysv/linux/getsourcefilter.c: Likewise.
4852         * sysdeps/unix/sysv/linux/setsourcefilter.c: Likewise.
4854         * po/tr.po: Update from translation team.
4856 2004-08-06  Ulrich Drepper  <drepper@redhat.com>
4858         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): Fix typo.
4859         Reported by Paolo Bonzini.
4861 2004-08-06  Jakub Jelinek  <jakub@redhat.com>
4863         * sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add
4864         always_inline.
4865         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_runtime_setup,
4866         elf_machine_fixup_plt, elf_machine_plt_conflict): Likewise.
4868         * sysdeps/unix/sysv/linux/netatalk/at.h: Include bits/sockaddr.h
4869         before including linux/atalk.h.
4871         * resolv/res_libc.c: Include atomic.h.
4873         * intl/finddomain.c (free_mem): Rename to...
4874         (_nl_finddomain_subfreeres): ... this.  Add
4875         __libc_freeres_fn_section.
4876         * intl/loadmsgcat.c (_nl_unload_domain): Add
4877         __libc_freeres_fn_section.
4878         * intl/gettextP.h (_nl_unload_domain): Move into #ifdef _LIBC.
4879         Add attribute_hidden.
4880         (_nl_findomain_subfreeres): New prototype.
4881         * iconv/gconv_db.c (free_mem): Call _nl_findomain_subfreeres.
4883 2004-07-30  Guido Guenther  <agx@sigxcpu.org>
4885         * nss/getent.c (passwd_keys): Use strtoul instead of isdigit to
4886         test if the key is numeric or not.
4887         (group_keys): Likewise.
4889 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
4891         * inet/netinet/in.h: Define struct ip_msfilter, IP_MSFILTER_SIZE,
4892         struct group_filter, and GROUP_FILTER_SIZE.
4893         * include/sys/socket.h: Declare __getsockopt.
4894         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: New file.
4895         * sysdeps/unix/sysv/linux/getipv4sourcefilter.c: New file.
4896         * sysdeps/unix/sysv/linux/setsourcefilter.c: New file.
4897         * sysdeps/unix/sysv/linux/getsourcefilter.c: New file. [BZ #211]
4899         * po/ko.po: Update from translation team.
4901 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
4903         * hesiod/hesiod.c (__hesiod_res_get): Use calloc instead of malloc +
4904         memset.
4905         (__hesiod_res_set): Free nsaddrs.
4907         * include/resolv.h (__res_maybe_init): Add prototype.
4908         * resolv/resolv.h (struct __res_state): Add _u._ext.initstamp field.
4909         * resolv/Versions (libc): Add __res_maybe_init@@GLIBC_PRIVATE.
4910         * resolv/res_libc.c (__res_initstamp, lock): New variables.
4911         (res_init): Increase __res_initstamp.
4912         (__res_maybe_init): New function.
4913         * resolv/res_init.c (__res_vinit): Initialize _u._ext.initstamp.
4914         * hesiod/hesiod.c (__hesiod_res_get): Use __res_maybe_init instead
4915         of RES_INIT check and {res_ninit,__res_ninit,res_init} call.
4916         * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise.
4917         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
4918         _nss_dns_gethostbyaddr_r): Likewise.
4919         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
4920         _nss_dns_getnetbyaddr_r): Likewise.
4921         * resolv/gethnamaddr.c (gethostbyname, gethostbyname2,
4922         gethostbyaddr): Likewise.
4923         * resolv/res_data.c (fp_nquery, res_mkquery, res_mkupdate,
4924         res_isourserver, res_sendsigned, res_update, res_search,
4925         res_querydomain): Likewise.
4926         * nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)): Likewise.
4927         * nss/digits_dots.c (__nss_hostname_digits_dots): Likewise.
4928         * nss/getnssent_r.c (__nss_setent, __nss_endent, __nss_getent_r):
4929         Likewise.
4931 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
4933         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set ai_family for
4934         V4-mapped IPv6 addresses and req->ai_family==AF_INET.
4935         Reported by A. Guru <a.guru@sympatico.ca>.
4937         * po/sv.po: Update from translation team.
4938         * po/sk.po: Likewise.
4939         * po/pl.po: Likewise.
4941 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
4942             Ulrich Drepper  <drepper@redhat.com>
4944         * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Don't read more input
4945         characters than necessary.
4947 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
4949         * wcsmbs/Makefile (tests): Add tst-mbsrtowcs.
4950         * wcsmbs/tst-mbsrtowcs.c: New file.
4952         * po/fr.po: Update from translation team.
4954 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
4956         * resolv/inet_pton.c (inet_pton4): Disallow octal numbers.  Reported
4957         by A. Guru <a.guru@sympatico.ca>.  [BZ #295]
4959 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
4961         * po/nl.po: Update from translation team.
4963         * sysdeps/posix/getaddrinfo.c (gaih_inet): Recognize all the IPv4
4964         numeric address formats inet_addr knows.
4965         (getaddrinfo): Allow AI_NUMERICSERV flag.
4966         If neither IPv4 nor IPv6 interface is present we cannot make any
4967         decision for AI_ADDRCONFIG.  Fail if AI_NUMERICSERV is set and the
4968         string is not just a number.  Remove useless freeaddrinfo call.
4969         * resolv/netdb.h (AI_NUMERICSERV): Define.
4970         Based on a patch by a.guru@sympatico.ca.
4972 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
4974         * stdlib/strfmon_l.c (__vstrfmon_l): Memset whole info structure
4975         instead of trying to initialize some, but not all, fields one by
4976         one.
4977         * stdio-common/printf_size.c (printf_size): Initialize fb_info
4978         structure with *info instead of trying to initialize some, but not
4979         all, fields from it.
4981         * nscd/connections.c (handle_request): Check if req->type is in
4982         LASTDBREQ .. LASTREQ range instead of req.
4984         * locale/programs/linereader.c (lr_create): Initialize
4985         lr->return_widestr to 0.
4987         * elf/dl-close.c (free_slotinfo): Add __libc_freeres_fn_section.
4988         (free_mem): Call free_slotinfo just once.
4990         * stdio-common/tst-fmemopen.c (main): Check for MAP_FAILED instead
4991         of NULL.
4993         * locale/localeinfo.h (_nl_locale_subfreeres): New prototype.
4994         * locale/setlocale.c (free_category): Add __libc_freeres_fn_section.
4995         (free_mem): Rename to _nl_locale_subfreeres.
4996         * iconv/gconv_db.c: Include locale/localeinfo.h.
4997         (free_derivation, free_modules_db): Add __libc_freeres_fn_section.
4998         (free_mem): Call _nl_locale_subfreeres.
4999         * iconv/gconv_dl.c (do_release_all): Add __libc_freeres_fn_section.
5001 2004-08-04  Roland McGrath  <roland@frob.com>
5003         * Makeconfig ($(common-objpfx)config.status):
5004         Fix typo: $(add_ons) -> $(add-ons).
5005         (Makeconfig-add-on): New variable.  When doing $(sysdep-makeconfigs)
5006         include, use black magic to get it set to an add-on's name during the
5007         include of the add-on's Makeconfig.
5009         * configure.in: Use variable name `libc_add_on' when sourcing add-on
5010         configure fragments, so they can refer to this.
5011         * configure: Regenerated.
5013 2004-08-04  Roland McGrath  <roland@redhat.com>
5015         * posix/tst-waitid.c (test_child): Sleep a second before stopping.
5016         (do_test): Bump sleep to three seconds.
5017         (sigchld, check_sigchld): New functions.
5018         (do_test): Handle SIGCHLD and check for getting the right details.
5020         * posix/tst-waitid.c (do_test): Kill the child process when bailing
5021         out early on some failure.
5022         [WCONTINUED]: Test WCONTINUED functionality.
5024 2004-08-03  Ulrich Drepper  <drepper@redhat.com>
5026         * nscd/connections.c (handle_request): Print more descriptive
5027         message for invalid request types.
5029 2004-08-02  Jakub Jelinek  <jakub@redhat.com>
5031         * iconvdata/ibm932.c (BODY): Avoid binary search for ch >= 0xffff.
5032         Always treat high as highest number in range + 1.
5033         * iconvdata/ibm943.c (BODY): Likewise.
5035 2004-07-31  Bruno Haible  <bruno@clisp.org>
5037         * iconvdata/JISX0213.TXT: Updated to JISX0213 plane 1 version 2004.
5038         * iconvdata/jisx0213.c (__jisx0213_to_ucs_main,
5039         __jisx0213_to_ucs_pagestart, __jisx0213_from_ucs_level1,
5040         __jisx0213_from_ucs_level2): Regenerated.
5041         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): New function.
5042         * iconvdata/iso-2022-jp-3.c (JISX0213_1_2000_set): Renamed from
5043         JISX0213_1_set.
5044         (JISX0213_1_2004_set): New enum value.
5045         (BODY for FROM_LOOP): Treat ESC $ ( Q like ESC $ ( O.
5046         (BODY for TO_LOOP): For JISX 0213 plane 1 characters, emit ESC $ ( O
5047         when possible, ESC $ ( Q when needed.
5048         * iconvdata/testdata/EUC-JISX0213: Add the 10 new characters.
5049         * iconvdata/testdata/EUC-JISX0213..UTF8: Update.
5050         * iconvdata/testdata/SHIFT_JISX0213: Add the 10 new characters.
5051         * iconvdata/testdata/SHIFT_JISX0213..UTF8: Update.
5052         * iconvdata/testdata/ISO-2022-JP-3: Add the 10 new JISX0213 characters.
5053         * iconvdata/testdata/ISO-2022-JP-3..UTF8: Update.
5055 2004-07-22  Bruno Haible  <bruno@clisp.org>
5057         * iconvdata/gconv-modules (ISO-8859-7): Add alias ISO_8859-7:2003.
5059 2004-07-29  David S. Miller  <davem@redhat.com>
5061         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy): Optimize
5062         better for smaller than 256 byte copies.  Also, use only one
5063         unrolled loop instead of two for the large copy case.
5065 2004-07-30  Richard Henderson  <rth@redhat.com>
5067         * sysdeps/alpha/divq.S: Save t3 before it gets clobbered.
5068         * sysdeps/alpha/remq.S: Likewise.
5069         * sysdeps/alpha/div.S, sysdeps/alpha/ldiv.S: Rewrite with the
5070         new division algorithms in divl.S and divq.S respectively.
5072 2004-07-28  GOTO Masanori  <gotom@debian.or.jp>
5074         * timezone/asia: Update from tzdata2004b.
5075         * timezone/backward: Likewise.
5076         * timezone/europe: Likewise.
5077         * timezone/iso3166.tab: Likewise.
5078         * timezone/leapseconds: Likewise.
5079         * timezone/northamerica: Likewise.
5080         * timezone/southamerica: Likewise.
5081         * timezone/zone.tab: Likewise.
5083         * timezone/private.h: Update from tzcode2004b.
5084         * timezone/zic.c: Likewise.
5086 2004-07-27  Ulrich Drepper  <drepper@redhat.com>
5088         * nscd/grpcache.c (cache_addgr): If necessary, add entry also
5089         under the name the user provided.
5090         * nscd/pwdcache.c (cache_addpw): Likewise.
5092 2004-07-26  Roland McGrath  <roland@redhat.com>
5094         * sysdeps/posix/waitid.c [WEXITED]: Clear WEXITED bit in OPTIONS for
5095         call to __waitpid.
5097 2004-07-26  Ulrich Drepper  <drepper@redhat.com>
5099         * nscd/hstcache.c (cache_addhst): Fix two scenarios which lead to
5100         memory leaks.
5102         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Assign pointer for
5103         new buffer at the right time.
5104         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
5106 2004-07-25  Ulrich Drepper  <drepper@redhat.com>
5108         * inet/Versions [libc, GLIBC_2.3.4]: Add getipv4sourcefilter,
5109         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
5110         * inet/Makefile (routines): Likewise.
5111         * inet/netinet/in.h: Add prototypes for getipv4sourcefilter,
5112         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
5113         * sysdeps/generic/getipv4sourcefilter.c: New file.
5114         * sysdeps/generic/setipv4sourcefilter.c: New file.
5115         * sysdeps/generic/getsourcefilter.c: New file.
5116         * sysdeps/generic/setsourcefilter.c: New file.
5118 2004-07-17  Steven Munroe  <sjmunroe@us.ibm.com>
5120         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
5121         for POWER4 machines.
5123 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
5125         [BZ #274]
5126         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): Fix used >=
5127         BITS_PER_MP_LIMB shifting up.
5128         * stdlib/tst-strtod.c (main): Add new tests.
5130 2004-07-23  Jakub Jelinek  <jakub@redhat.com>
5132         [BZ #282]
5133         * libio/iopopen.c (_IO_new_popen): Use _IO_init instead of
5134         _IO_no_init.  Remove wd from struct locked_FILE.
5135         (_IO_wproc_jumps): Remove.
5136         Reported by Andrew Josey <a.josey@opengroup.org>.
5137         * stdio-common/Makefile (tests): Add tst-popen.
5138         * stdio-common/tst-popen.c: New test.
5140 2004-07-23  Ulrich Drepper  <drepper@redhat.com>
5142         * posix/bits/posix1_lim.h: Fix values for _POSIX_CHILD_MAX and
5143         _POSIX_OPEN_MAX.  Add _POSIX_HOST_NAME_MAX, _POSIX_SYMLINK_MAX,
5144         _POSIX_SYMLOOP_MAX, and _POSIX_RE_DUP_MAX.
5145         Reported by Andrew Josey.
5147         * include/features.h: Document _POSIX_C_SOURCE == 200112L.
5149         * grp/grp.h: Define gid_t if __USE_XOPEN2K is defined.
5150         * pwd/pwd.h: Define uid_t and gid_t if __USE_XOPEN2K is defined.
5151         * io/sys/stat.h: Define dev_t, gid_t, ino_t, mode_t, nlink_t,
5152         off_t, time_t, and uid_t if __USE_XOPEN2K is defined.
5153         * signal/signal.h: Define pid_t if __USE_XOPEN2K is defined.
5154         * posix/unistd.h: Define gid_t, off_t, pid_t, uid_t, and
5155         useconds_t if __USE_XOPEN2K is defined.
5156         * io/utime.h: Define time_t if __USE_XOPEN2K is defined.
5157         * libio/stdio.h: Declare fseeko and ftello if __USE_XOPEN2K is defined.
5159 2004-07-19  Thorsten Kukuk  <kukuk@suse.de>
5161         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
5162         allocate memory for large temporary variables with alloca.
5164 2004-07-22  Ulrich Drepper  <drepper@redhat.com>
5166         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Compatibility
5167         code must have version GLIBC_2.0.  Patch by Dwayne McConnell.
5169         * nscd/nscd_getgr_r.c (nscd_getgr_r): Avoid read call with NULL
5170         pointer and zero length.
5172 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
5174         * nscd/cache.c (prune_cache): Print correct list when debugging.
5176 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
5178         * resolv/res_libc.c (res_init): If RES_INIT is set and
5179         _res.nscount > 0, call __res_nclose and free nsaddrs.
5180         * resolv/Makefile: Add rules to build and run tst-leaks2.
5181         * resolv/tst-leaks2.c: New test.
5183 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
5185         * intl/libintl.h: Don't define macros for C++.
5186         Patch by Goto Masanori.
5188 2004-07-22  GOTO Masanori  <gotom@debian.or.jp>
5190         [BZ #276]
5191         * include/arpa/inet.h: Change inet_aton type from in_addr_t to int.
5192         * inet/arpa/inet.h: Likewise.
5193         * resolv/inet_addr.c: Likewise.
5195 2004-07-21  Alexandre Oliva  <aoliva@redhat.com>
5197         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: Add semtimedop.
5199 2004-07-20  Roland McGrath  <roland@redhat.com>
5201         * configure.in (add_ons): Substitute this.  Move $add_ons handling
5202         after AC_CANONICAL_HOST and default setting of $machine et al.
5203         Don't set $subdirs from $add_ons.
5204         Instead, source add-on/configure fragments early on.
5205         (base_machine): If it's already set, don't set it based on $machine.
5206         (libc_config_ok): New variable, set to no.  If an add-on fragment sets
5207         it to yes, skip the  tuple sanity check as if --enable-hacker-mode.
5208         (sysnames): Try appending add-on names after machine as well.
5209         * config.make.in (add-ons): Set from @add_ons@ instead of @subdirs@.
5210         * Makeconfig ($(common-objpfx)config.status): Also depend on configure
5211         files in $(add_ons) dirs.
5213         * sysdeps/unix/sysv/linux/bits/in.h (struct ip_mreq): Remove
5214         definition, now in netinet/in.h proper.
5216 2004-07-20  Alexandre Oliva  <aoliva@redhat.com>
5218         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
5219         Sort by syscalls.  Make sure we get headers such as sgidefs.h from
5220         the build tree before just-installed ones.
5222         * sysdeps/mips/atomicity.h: Use standard names for ABI macros,
5223         include sgidefs.h where appropriate.
5224         * sysdeps/mips/dl-machine.h: Likewise.
5225         * sysdeps/mips/machine-gmon.h: Likewise.
5226         * sysdeps/mips/bits/setjmp.h: Likewise.
5227         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
5228         * sysdeps/mips/mips64/__longjmp.c: Likewise.
5229         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
5230         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
5231         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
5232         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
5233         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
5234         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
5235         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
5236         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
5237         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
5238         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
5239         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
5240         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
5241         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
5242         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
5243         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
5244         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
5245         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
5246         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
5247         Likewise.
5248         * sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h):
5249         Likewise.
5251         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Update to use
5252         _dl_lookup_symbol_x.
5253         (elf_machine_runtime_link_map): Don't INTUSE _dl_signal_error.
5255 2004-07-20  Ulrich Drepper  <drepper@redhat.com>
5257         * inet/netinet/in.h: Define struct ip_mreq and struct
5258         ip_mreq_source.
5259         Define struct group_req and struct group_source_req.
5260         * sysdeps/unix/sysv/linux/bits/in.h: Define IP_UNBLOCK_SOURCE,
5261         IP_BLOCK_SOURCE, IP_ADD_SOURCE_MEMBERSHIP,
5262         IP_DROP_SOURCE_MEMBERSHIP, IP_MSFILTER, MCAST_JOIN_GROUP,
5263         MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, MCAST_LEAVE_GROUP,
5264         MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP, and
5265         MCAST_MSFILTER.
5266         Define MCAST_INCLUDE and MCAST_EXCLUDE.
5268         * iconvdata/gconv-modules: Add alias for IBM874 [BZ #244].
5270 2004-07-19  Jakub Jelinek  <jakub@redhat.com>
5272         [BZ #258]
5273         * math/libm-test.inc (max_value, min_value): New variables.
5274         (initialize): Initialize them.
5275         (pow_test): Add a couple of new tests.
5276         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Don't generate invalid
5277         exception if |y| >= 1U<<31.
5278         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Don't generate invalid
5279         exception if |y| >= 1L<<63.
5280         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
5281         If y*log2(x) overflows to +-inf, return still +inf/+0 instead of NaN.
5282         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
5284 2004-07-18  Ulrich Drepper  <drepper@redhat.com>
5286         * nscd/pwdcache.c (cache_addpw): Optimize case of unsuccessful
5287         lookup a bit.
5288         * nscd/grpcache.c (cache_addgr): Likewise.
5289         * nscd/hstcache.c (cache_addhst): Likewise.
5291 2004-07-10  GOTO Masanori  <gotom@debian.or.jp>
5293         * sysdeps/s390/s390-32/elf/start.S: Remove symbol _fp_hw.
5294         * sysdeps/s390/s390-64/elf/start.S: Likewise.
5296 2004-04-16  Andreas Schwab  <schwab@suse.de>
5298         * sysdeps/ia64/bits/atomic.h: Cast first argument of
5299         __sync_bool_compare_and_swap_si correct to void*.
5301 2004-07-17  Ulrich Drepper  <drepper@redhat.com>
5303         * iconv/iconv_prog.c (print_known_names): Make machine-readable
5304         output even less cluttered.
5306 2004-07-16  Steven Munroe  <sjmunroe@us.ibm.com>
5308         [BZ #269]
5309         * setjmp/Makefile (tests): Add bug269-setjmp.
5310         * setjmp/bug269-setjmp.c: New file.
5311         * sysdeps/powerpc/powerpc64/__longjmp-common.S [SHARED && !IS_IN_rtld]:
5312         Store R2 from jmpbuf in callers TOC save area.
5313         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [SHARED && !IS_IN_rtld]:
5314         Store R2 in TOC save area.
5315         * sysdeps/powerpc/powerpc64/setjmp-common.S [SHARED && !IS_IN_rtld]:
5316         Copy TOC save area from previous frame as R2 (TOC) in jmpbuf.
5318 2004-07-16  Jakub Jelinek  <jakub@redhat.com>
5320         * locale/newlocale.c: Include bits/libc-lock.h.
5321         (__libc_setlocale_lock): Extern decl.
5322         (__newlocale): Use it.
5323         Reported by Ulrich Weigand <Ulrich.Weigand@de.ibm.com>.
5325 2004-07-15  Jakub Jelinek  <jakub@redhat.com>
5327         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Remove
5328         static inline __attribute ((always_inline)).  Don't define if
5329         NO_CANCELLATION.
5330         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
5331         __fcntl_nocancel.
5332         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c (__fcntl_nocancel):
5333         Remove static inline __attribute ((always_inline)).  Don't define
5334         if NO_CANCELLATION.
5335         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
5336         __fcntl_nocancel.
5337         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Define to
5338         __libc_fcntl if NO_CANCELLATION and __ASSUME_FCNTL64 == 0.
5339         Don't define at all if NO_CANCELLATION and __ASSUME_FCNTL64 > 0.
5340         (__libc_fcntl): Don't define if __fcntl_nocancel is a macro.
5342         [BZ #262]
5343         * sysdeps/i386/elf/start.S (_start): Use @GOT instead of @GOTOFF
5344         for main.
5345         * elf/Makefile: Add rules to build and run tst-pie1.
5346         * elf/tst-pie1.c: New test.
5347         * elf/tst-piemod1.c: New file.
5349 2004-07-14  Jakub Jelinek  <jakub@redhat.com>
5351         [BZ #266]
5352         * manual/string.texi (l64a): Note that the static buffer is 7 bytes
5353         long.  Rewrite example code so that it takes into account l64a output
5354         shorter than 6 characters.
5355         Reported by Julian Graham <julian.graham@aya.yale.edu>.
5357 2004-07-14  Kaz  Kojima  <kkojima@rr.iij4u.or.jp>
5359         * sysdeps/sh/dl-machine.h: Don't reset _dl_starting_up here.
5360         (elf_machine_rela_relative): Remove unused valiable.
5362 2004-07-12  Paul Eggert  <eggert@cs.ucla.edu>
5364         [BZ #263]
5365         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Don't store
5366         outside the buffer if the read returns 0.  __strtod_l can't set
5367         endp to NULL, so remove a test for that case.
5369 2004-07-12  Roland McGrath  <roland@redhat.com>
5371         * manual/signal.texi (Interrupted Primitives): Make clear that
5372         TEMP_FAILURE_RETRY evaluates its expression as long int and compares
5373         it to -1 to define "failure".
5375 2004-07-10  Ulrich Drepper  <drepper@redhat.com>
5377         * elf/ldconfig.c: Define PROCINFO_CLASS as static before including
5378         ldsodefs.h.
5379         * sysdeps/generic/ldsodefs.h: Only define PROCINFO_CLASS if it is not
5380         already defined.
5381         * sysdeps/i386/dl-procinfo.c: Define PROCINFO_CALLS only if not
5382         already defined.
5384         * elf/rtld.c (print_statistics): Mark with noinline attribute.
5385         * sysdeps/i386/dl-machine.h (elf_machine_rel): Mark with always_inline
5386         attribute.
5387         (elf_machine_rel_relative): Likewise.
5389         * include/string.h: Add libc_hidden_proto for __strtok_r and
5390         __strsep_g.
5391         * sysdeps/generic/strsep.c: Add libc_hidden_def.
5392         * sysdeps/generic/strtok_r.c: Likewise.
5393         * sysdeps/i386/strtok_r.S: Add alias for internal symbol.
5394         * sysdeps/i386/i686/strtok_r.S: Likewise.
5395         * sysdeps/x86_64/strtok_r.S: Likewise.
5397 2004-07-09  Alexandre Oliva  <aoliva@redhat.com>
5399         * inet/getnetgrent_r.c (internal_setnetgrent): Make it hidden
5400         instead of internal-linkage, such that we can alias to it.
5401         (internal_endnetgrent, internal_getnetgrent_r): Likewise.
5403 2004-07-09  Ulrich Drepper  <drepper@redhat.com>
5405         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Move attribute
5406         to the front for gcc 3.5+.
5407         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
5408         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
5409         * include/fcntl.h: Don't declare __fcntl_nocancel here if
5410         NO_CANCELLATION is defined.
5412 2004-07-07  Jakub Jelinek  <jakub@redhat.com>
5414         * elf/dl-fini.c (_dl_fini): Add nloaded variable, load
5415         GL(dl_nloaded) into it while still in critical section.
5417 2004-07-06  Thorsten Kukuk  <kukuk@suse.de>
5419         * nss/getent.c (print_group, print_passwd): Use %lu format for
5420         `unsigned long int' values.
5422         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Fix syntax
5423         error typos in goto statements.
5425 2004-07-07  Roland McGrath  <roland@frob.com>
5427         * Makefile (dist-separate): New variable.
5428         (glibc-%.tar rule): Make separate tar files for add-ons listed there.
5429         Depend on their configure files.
5430         (dist-do-separate-dirs): New canned sequence to do that.
5431         (dist-separate-libidn, dist-separate-linuxthreads): New variables.
5432         (dist): Depend on add-on tar files based on $(dist-separate).
5433         (dist-version): New variable, default to $(version).
5434         (tag-for-dist, dist): Use that in place of $(version) in deps.
5436 2004-07-07  Ulrich Drepper  <drepper@redhat.com>
5438         * elf/dl-fini.c (_dl_fini): Move the unlock of the ld.so lock
5439         before the loop running the destructors.
5441 2004-05-18  Andreas Schwab  <schwab@suse.de>
5443         * elf/dl-load.c (_dl_map_object_from_fd): Use the end address of
5444         the first segment for mprotect, not l_text_end.
5446 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
5448         * elf/dl-profile.c (_dl_start_profile): Compact error handling.
5449         Remove hashfraction variable.  Make kcount and kcountsize local
5450         variables.
5452         * elf/dl-init.c: Don't define and use _dl_starting_up if
5453         HAVE_INLINED_SYSCALLS is defined and the variable is not used.
5454         * elf/dl-support.c: Likewise.
5455         * elf/rtld.c: Likewise.
5456         * elf/dl-misc.c (_dl_debug_vdprintf): Use writev syscall directly
5457         if HAVE_INLINED_SYSCALLS is defined.
5458         * sysdeps/powerpc/powerpc64/dl-machine.h: Don't reset _dl_starting_up
5459         here.
5460         * sysdeps/powerpc/powerpc32/dl-start.S: Likewise.
5461         * sysdeps/unix/sysv/linux/configure.in: Define HAVE_INLINED_SYSCALLS.
5462         * config.h.in: Add entry for HAVE_INLINED_SYSCALLS.
5464         * sysdeps/posix/profil.c: If compiled for ld.so, omit code which
5465         is needed to stop profiling.
5466         * elf/dl-open.c (dl_open_worker): If a newly opened object is to be
5467         profile make sure it cannot be unloaded.
5469         * sysdeps/unix/sysv/linux/dl-origin.c: Inline readlink syscall.
5471         * sysdeps/unix/sysv/linux/fcntl.c: If compiled without cancellation
5472         support, make sure the helper function is inlined.
5473         * sysdeps/unix/sysv/linux/pread.c: Likewise.
5474         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
5475         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
5476         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
5478 2004-07-05  Jakub Jelinek  <jakub@redhat.com>
5480         * include/string.h (ffs): Add libc_hidden_builtin_proto.
5481         * sysdeps/rs6000/ffs.c (ffs): Add libc_hidden_builtin_def.
5482         * sysdeps/alpha/alphaev67/ffs.S (ffs): Likewise.
5483         * sysdeps/alpha/ffs.S (ffs): Likewise.
5484         * sysdeps/s390/ffs.c (ffs): Likewise.
5485         * sysdeps/powerpc/ffs.c (ffs): Likewise.
5486         * sysdeps/i386/ffs.c (ffs): Likewise.
5487         * sysdeps/i386/i686/ffs.c (ffs): Likewise.
5488         * sysdeps/m68k/ffs.c (ffs): Likewise.
5489         * sysdeps/generic/ffs.c (ffs): Likewise.
5490         * sysdeps/m88k/ffs.c (ffs): Likewise.
5491         * sysdeps/am29k/ffs.c (ffs): Likewise.
5492         * sysdeps/i960/ffs.c (ffs): Likewise.
5493         * sysdeps/x86_64/ffs.c (ffs): Likewise.
5495         * Makerules (check-abi): Use diff -p -U 0 instead of diff -pu0.
5497         * sysdeps/powerpc/novmx-longjmp.c (__libc_longjmp,
5498         __libc_siglongjmp): Remove symbol_version.
5499         * sysdeps/powerpc/longjmp.c (__libc_longjmp, __libc_siglongjmp):
5500         Export @@GLIBC_PRIVATE, not @@GLIBC_2.3.4.
5501         * sysdeps/powerpc/sigjmp.c (__sigjmp_save): Use strong_alias
5502         unconditionally.
5503         * sysdeps/powerpc/novmx-sigjmp.c (__sigjmp_save): Remove.
5504         * sysdeps/powerpc/powerpc32/__longjmp.S (__longjmp): Use
5505         strong_alias instead of default_symbol_version, remove
5506         symbol_version.
5507         * sysdeps/powerpc/powerpc64/__longjmp.S (__longjmp): Likewise.
5508         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__novmx__setjmp): Change
5509         into strong_alias to __novmxsetjmp.
5510         (__vmx__setjmp): Similarly with __vmxsetjmp.
5511         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
5512         default_symbol_version and symbol_version.
5513         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__novmx__setjmp): Change
5514         into strong_alias to __novmxsetjmp.
5515         (__vmx__setjmp): Similarly with __vmxsetjmp.
5516         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
5517         default_symbol_version and symbol_version.
5519         * nscd/nscd_getgr_r.c: Include stdio-common/_itoa.h.
5521 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
5523         * elf/rtld.c (dl_main): Mark dyn_temp with attribute_relro.
5525 2004-07-04  Matthew Reppert  <arashi@kai.vm.bytemark.co.uk>
5527         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Use libc_hidden_ver
5528         instead of libc_hidden_def.
5530 2004-07-01  Roland McGrath  <roland@redhat.com>
5532         * aclocal.m4: Add provide for AC_CONFIG_AUX_DIR_DEFAULT.
5534         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Move top-level
5535         $(..)shlib-versions file to last in deps list.  This lets add-ons give
5536         more-specific matches that override defaults in the top-level file.
5538         * sysdeps/unix/sysv/linux/configure.in: If arch_minimum_kernel was
5539         already set, don't set it or libc_cv_gcc_unwind_find_fde.
5540         * sysdeps/unix/sysv/linux/configure: Regenerated.
5542 2004-07-01  Martin Schwidefsky  <schwidefsky@de.ibm.com>
5544         * sysdeps/s390/fpu/bits/mathinline.h [__LIBC_INTERNAL_MATH_INLINES]
5545         (__ieee754_sqrt): Define as __MATH_INLINE using sqdbr instruction.
5546         (__ieee754_sqrtf): Define as __MATH_INLINE using sqebr instruction.
5547         * sysdeps/s390/fpu/e_sqrt.c: New file.
5548         * sysdeps/s390/fpu/e_sqrtf.c: New file.
5549         * sysdeps/s390/Implies: New file.
5550         * sysdeps/s390/s390-32/Implies: Remove ieee754, move
5551         ieee754/dbl-64 and ieee754/flt-32 to s390/Implies.
5552         * sysdeps/s390/s390-64/Implies: Likewise.
5554 2004-06-30  Jakub Jelinek  <jakub@redhat.com>
5556         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Include tls.h.
5557         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
5559         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (thread_start):
5560         DO_CALL (exit, 1) instead of branching to _exit.
5561         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (thread_start):
5562         Likewise.
5564         * sysdeps/s390/fpu/bits/mathinline.h: New file.
5566         * include/glob.h (glob64): Add libc_hidden_proto.
5567         * sysdeps/generic/glob64.c (glob64): Add libc_hidden_def.
5568         * sysdeps/gnu/glob64.c (glob64): Likewise.
5569         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Likewise.
5571 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
5573         * sysdeps/i386/fpu/libm-test-ulps: Update for GCC 3.4.
5574         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
5576 2004-06-11  Dwayne Grant McConnell  <dgm69@us.ibm.com>
5578         * sysdeps/powerpc/fpu/s_lround.c: Removed.
5579         * sysdeps/powerpc/fpu/s_lroundf.c: Removed.
5580         * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: New file.
5581         * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: New file.
5582         * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: New file.
5583         * sysdeps/powerpc/powerpc32/fpu/s_floor.S: New file.
5584         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: Removed.
5585         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: New file.
5586         * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: New file.
5587         * sysdeps/powerpc/powerpc32/fpu/s_lround.S: New file.
5588         * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: New file.
5589         * sysdeps/powerpc/powerpc32/fpu/s_rint.S: New file.
5590         * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: New file.
5591         * sysdeps/powerpc/powerpc32/fpu/s_round.S: New file.
5592         * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: New file.
5593         * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: New file.
5595 2004-06-30  Ulrich Drepper  <drepper@redhat.com>
5597         * include/net/if.h: Handle if_nameindex and if_freenameindex with
5598         libc_proto_hidden.
5599         * sysdeps/unix/sysv/linux/netlinkaccess.h: New file.
5600         * sysdeps/unix/sysv/linux/ifaddrs.c: Export netlink handling functions.
5601         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Implement using
5602         netlink if possible.  Fall back on ioctl method if necessary.
5603         * sysdeps/unix/sysv/linux/Dist: Add netlinkaccess.h.
5605         * include/unistd.h: Declare __truncate.
5606         * sysdeps/generic/truncate.c: Also define __truncate.
5607         * sysdeps/mach/hurd/truncate.c: Likewise.
5608         * sysdeps/unix/common/syscalls.list: Likewise.
5609         * sysdeps/unix/sysv/linux/truncate64.c: Use __truncate, not truncate.
5611 2004-06-29  Ulrich Drepper  <drepper@redhat.com>
5613         * stdio-common/printf-parsemb.c (__parse_one_specmb): Initialize
5614         info.extra.  Patch by Marcus Meissner.
5616 2004-06-29  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
5618         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
5619         Fix branch offset for a PLT entry.
5621 2004-06-20  Jim Meyering  <jim@meyering.net>
5623         * malloc/obstack.h (obstack_base): Cast to `void *', to align with
5624         documentation.
5626 2004-06-28  Ulrich Drepper  <drepper@redhat.com>
5628         * inet/bug-if1.c (do_test): Simply use 0 as invalid index.
5629         Workaround for [BZ #232].
5631         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Use extend_alloca.
5633 2004-06-28  GOTO Masanori  <gotom@debian.or.jp>
5635         * iconv/gconv_simple.c: Use get16/put16 for user given buffer
5636         in ucs2/ucs2reverse when unaligned memory access is attempted.
5637         * iconv/tst-iconv5.c: New file.
5638         * iconv/Makefile (tests): Add tst-iconv5.
5640 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
5642         * inet/bug-if1.c: Include <string.h>.
5644 2004-06-19  Roland McGrath  <roland@redhat.com>
5646         * sysdeps/posix/waitid.c (do_waitid) [DO_WAITID]: Define function
5647         under this macro name instead.
5648         [NO_DO_WAITID]: Don't define it at all.
5649         (do_waitid) [WNOWAIT, WEXITED]: If these POSIX.1 waitid flag bits are
5650         defined, then return ENOTSUP for combinations of selection bits other
5651         than WEXITED and WEXITED|WSTOPPED, which this version cannot support.
5653         * posix/tst-waitid.c: New file.
5654         * posix/Makefile (tests): Add it.
5656 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
5658         * sysdeps/unix/alpha/sysdep.h (inline_syscall6): Fix a typo.
5660         [BZ #231]
5661         * sysdeps/unix/alpha/sysdep.S (__syscall_error): Avoid !samegp
5662         relocation in librt.so.
5664         [BZ #230]
5665         * sysdeps/alpha/dl-machine.h (_dl_start_user): Use ldah/ldl to load
5666         _dl_skip_args.  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
5668 2004-06-27  Ulrich Drepper  <drepper@redhat.com>
5670         * elf/ldconfig.c (add_dir): Take chroot into account.
5671         Based on changes by HJ Lu and Hideki Iwamoto.
5673         * nscd/connections.c (invalidate_cache): If the host cache has to
5674         be invalidated, re-read resolv.conf.
5676         * resolv/resolv.h (RES_NOIP6DOTINT): Define.
5677         * resolv/res_init.c (res_setoptions): Handle no-ip6-dotint option.
5678         * resolv/gethnamaddr.c (gethostbyaddr): Don't lookup with .ip6.int
5679         if RES_NOIP6DOTINT flag is set.
5680         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
5682 2004-06-25  Jakub Jelinek  <jakub@redhat.com>
5684         * sysdeps/unix/sysv/linux/powerpc/fcntl.c: Move to...
5685         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fcntl.c: ... here.
5686         * sysdeps/unix/sysv/linux/powerpc/lockf64.c: Move to...
5687         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lockf64.c: ... here.
5688         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: New file.
5690         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_GETLK, F_SETLK,
5691         F_SETLKW): Fix values for -m32 -D_FILE_OFFSET_BITS=64.
5693 2004-06-21  Jakub Jelinek  <jakub@redhat.com>
5695         [BZ #231]
5696         * sysdeps/unix/alpha/Makefile: New file.
5697         * sysdeps/unix/alpha/rt-sysdep.S: New file.
5698         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
5700 2004-06-18  Ulrich Drepper  <drepper@redhat.com>
5702         * sysdeps/posix/getaddrinfo.c (gaih_inet): For AI_CANONNAME,
5703         determine the canonical name only for the first returned entry.
5705         * inet/bug-if1.c: New file.
5706         * inet/Makefile (tests): Add bug-if1.
5708 2004-06-18  Roland McGrath  <roland@frob.com>
5710         * Makerules (compile-mkdep-flags): Add -MT $@.
5712         * Makefile (dist, tag-for-dist): New targets.
5713         (files-for-dist, tag-of-stem): New variables.
5714         (glibc-%.tar glibc-linuxthreads-%.tar): New pattern rule.
5715         Make tar files using cvs export.
5716         (%.bz2, %.gz, tag-%): New pattern rules.
5717         (distribute): Variable removed.
5718         (+subdir_targets): Remove distinfo targets.
5719         (echo_subdirs, echo-distinfo, parent_echo-distinfo): Targets removed.
5720         (rpm/%): Pattern rule removed.
5721         * rpm/Makefile, rpm/rpmrc, rpm/template: Ancient cruft files removed.
5722         * Rules (subdir_echo-headers, subdir_echo-distinfo, subdir_dist):
5723         Targets removed.
5724         * Makerules (dist, subdir_distinfo): Targets removed.
5725         ($(objpfx)distinfo): Depend on $(distribute).
5726         * Make-dist: File removed.
5728         * NEWS: Fix a typo.  Update bug-reporting instructions.
5730 2004-06-17  Thorsten Kukuk  <kukuk@suse.de>
5732         * sysdeps/unix/sysv/linux/sched_setaffinity.c
5733         (__sched_setaffinity_new): Set errno to EINVAL and return -1 if
5734         cpuset is wrongly set.
5736 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
5738         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
5739         for POWER4 machines.
5741 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
5743         [BZ #218]
5744         * sunrpc/pmap_prot2.c (xdr_pmaplist): When freeing, remember pml_next
5745         in a local variable, point rp to that local variable afterwards.
5747 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
5749         * sysdeps/ieee754/dbl-64/e_sqrt.c (__ieee754_sqrt): Handle special
5750         cases properly.
5752 2004-06-17  Ulrich Drepper  <drepper@redhat.com>
5754         * sysdeps/unix/sysv/linux/if_index.c (if_indextoname): Correct
5755         error value for unknown interface. [BZ #198]
5757 2004-06-13  Jakub Jelinek  <jakub@redhat.com>
5759         * sysdeps/i386/bits/string.h (memcpy): Add () around arguments.
5760         (memchr, __memrchr, strlen, strcmp, strncmp, __strchr_g, __strchr_c,
5761         __strchrnul_g, __strchrnul_c, strspn, strcspn, strpbrk): Add memory
5762         the asm uses as its input, either of size __n where __n is known or
5763         0xfffffff.
5764         (strstr): Add "memory" clobber.
5766 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
5768         [BZ #219]
5769         * nss/nsswitch.c (free_mem): Don't try to close a library handle
5770         if the handle is invalid.  Patch by David Kimdon <kimdon@esrf.fr>.
5772 2004-06-11  Dmitry V. Levin  <ldv@altlinux.org>
5774         [BZ #217]
5775         * debug/xtrace.sh: Fix typo in error diagnostics.
5777 2004-06-14  Andreas Schwab  <schwab@suse.de>
5779         * stdio-common/psignal.c (psignal): Don't use BUF when asprintf
5780         failed.
5782 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
5784         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Fix pasto
5785         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
5786         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Fix pasto
5787         that clobbers r19.
5788         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Fix pasto
5789         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
5790         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S:
5791         Fix setting of sigcontext.v_regs.  Fix pasto that clobbers r19.
5792         Fix pasto that overflowed sigcontext.v_reserve.
5793         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S:
5794         Fix pasto that clobbers r19.
5795         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Fix setting
5796         of sigcontext.v_regs.  Fix pasto that clobbers r19.  Fix pasto that
5797         overflowed sigcontext.v_reserve.
5799 2004-05-04  H.J. Lu  <hongjiu.lu@intel.com>
5801         [BZ #150]
5802         * sysdeps/generic/strtol_l.c (DEF): Use ".gnu.linkonce.r."
5803         instead of ".gnu.linkonce.ro." as the prefix for linkonce
5804         read-only section name.
5806 2004-06-14  Richard Henderson  <rth@redhat.com>
5808         * sysdeps/alpha/div_libc.h (_ITOFS): Use "sp" not "$sp".
5809         (_ITOFT, _FTOIT, _ITOFT2): Likewise.
5811 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
5813         * sysdeps/s390/s390-32/backtrace.c (init): Guard with #ifdef SHARED.
5814         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
5815         (__backtrace): Don't call init #ifndef SHARED.
5816         * sysdeps/s390/s390-64/backtrace.c (init): Guard with #ifdef SHARED.
5817         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
5818         (__backtrace): Don't call init #ifndef SHARED.
5819         * sysdeps/ia64/backtrace.c (init): Guard with #ifdef SHARED.
5820         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
5821         (__backtrace): Don't call init #ifndef SHARED.
5823 2004-06-11  Roland McGrath  <roland@redhat.com>
5825         * sysdeps/arm/strlen.S [__ARMEB__]: Compute correctly for big-endian.
5826         From Krzysztof Halasa <khc@pm.waw.pl>.
5828 2004-06-10  Jakub Jelinek  <jakub@redhat.com>
5830         * elf/tls-macros.h [__s390x__] (TLS_LD, TLS_GD): Clobber also r14.
5832 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
5834         [BZ #199]
5835         * crypt/md5-crypt.c (__md5_crypt): Only update buflen if realloc
5836         succeeds.  Reported by Miles Ohlrich <miles@cray.com>.
5838         * elf/chroot_canon.c (chroot_canon): Avoid segfault if first malloc
5839         fails.  Avoid memory leak if realloc fails.
5841 2004-06-09  Jakub Jelinek  <jakub@redhat.com>
5843         * sysdeps/generic/setenv.c (setenv): Return -1/EINVAL if name is
5844         NULL, "" or contains '=' character in it.  Reported by
5845         Michael T Kerrisk <mtk-lists@gmx.net>.
5846         * stdlib/tst-environ.c: Include errno.h.
5847         (main): Add tests for these arguments to setenv/unsetenv.
5849 2004-06-07  Roland McGrath  <roland@frob.com>
5851         * NEWS: Update bug reporting instructions.  Fix some typos.
5853 2004-06-05  Ulrich Drepper  <drepper@redhat.com>
5855         * stdio-common/_itoa.h: Don't expand _itoa inline for libc.
5856         * stdio-common/_itoa.c: Add _itoa implementation.
5858         * nscd/nscd_gethst_r.c (__nscd_open_socket): Change implementation
5859         to also send request.  Add parameter to allow this.
5860         Change callers.
5861         * nscd/nscd_getgr_r.c: Change __nscd_open_socket caller.
5862         * nscd/nscd_getpw_r.c: Likewise.
5863         * nscd/nscd-client.h: Change __nscd_open_socket prototype.
5865 2004-06-05  Andreas Jaeger  <aj@suse.de>
5867         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
5868         Handle more than 6 args correctly.  Based on a patch by Masahide
5869         Washizawa <washi@jp.ibm.com>.
5871 2004-06-04  Ulrich Drepper  <drepper@redhat.com>
5873         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use __nss_not_use_nscd_hosts
5874         in all places, not __nss_not_use_nscd_group.
5875         Reported by Philippe Gregoire.
5877 2004-06-03  Ulrich Drepper  <drepper@redhat.com>
5879         * sysdeps/i386/i486/bits/atomic.h: Optimize a bit.
5881 2004-05-07  Dmitry V. Levin  <ldv@altlinux.org>
5883         * argp/argp-help.c (__argp_error, __argp_failure): Check result
5884         of __asprintf call and don't use string if it failed.
5885         * stdio-common/psignal.c (psignal): Likewise.
5886         * locale/programs/localedef.c (more_help): Likewise.
5887         * resolv/res_hconf.c (arg_service_list, arg_trimdomain_list,
5888         arg_bool, parse_line): Check result of __asprintf calls and
5889         don't use string if they failed.
5890         * sunrpc/svc_simple.c (registerrpc, universal): Likewise.
5891         * elf/ldconfig.c (parse_conf_include): Check result of __asprintf
5892         call and exit if it failed.
5894 2004-05-10  Jakub Jelinek  <jakub@redhat.com>
5896         * sysdeps/posix/sysconf.c (__sysconf) <cases _SC_REALTIME_SIGNALS,
5897         _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
5898         _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES,
5899         _SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION,
5900         _SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS,
5901         _SC_THREADS, _SC_THREAD_SAFE_FUNCTIONS, _SC_THREAD_ATTR_STACKADDR,
5902         _SC_THREAD_ATTR_STACKSIZE, _SC_THREAD_PRIORITY_SCHEDULING,
5903         _SC_THREAD_PRIO_INHERIT, _SC_THREAD_PRIO_PROTECT,
5904         _SC_THREAD_PROCESS_SHARED>: Return _POSIX_* value instead of 1.
5905         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf)
5906         <case _SC_MONOTONIC_CLOCK>: Return _POSIX_VERSION instead of 1.
5908 2004-05-07  Jeroen Dekkers  <jeroen@dekkers.cx>
5910         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Add
5911         -momit-leaf-frame-pointer.
5913         * inet/test-ifaddrs.c (addr_string): Surround AF_PACKET case with
5914         #ifdef AF_PACKET.
5916         * sysdeps/mach/hurd/getcwd.c
5917         (_hurd_canonicalize_directory_name_intern): Only realloc when
5918         size is <= 0.
5920         * sysdeps/mach/hurd/mmap.c (__mmap): Fail when addr or offset
5921         isn't page aligned.
5923         * sysdeps/mach/hurd/spawni.c (EXPAND_DTABLE): Set dtablesize to
5924         new size.
5926         * sysdeps/mach/hurd/Versions (GLIBC_PRIVATE): Add __libc_read,
5927         __libc_write and __libc_lseek64.
5929 2004-05-29  Roland McGrath  <roland@redhat.com>
5931         * elf/Makefile (shared-only-routines): Add dl-caller.
5933 2004-05-28  Ulrich Drepper  <drepper@redhat.com>
5935         * sysdeps/powerpc/configure.in: New file.
5937 2004-05-28  Steven Munroe  <sjmunroe@us.ibm.com>
5939         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Add .machine
5940         "altivec" to enable VMX instructions.
5941         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
5942         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
5943         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
5944         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
5945         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
5946         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
5947         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
5948         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
5949         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
5951 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
5953         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Define using
5954         __builtin_expm1l for GCC 3.5+.
5955         (__expl): Define using __builtin_expl for GCC 3.4+.
5956         (exp, expf, expl): Don't define for GCC 3.4+.
5957         (tan, tanf, tanl): Don't define for GCC 3.5+.
5958         (__atan2l): Define using __builtin_atan2l for GCC 3.4+.
5959         (atan2, atan2f, atan2l): Don't define for GCC 3.4+ or !__FAST_MATH__.
5960         (fmod, fmodf, fmodl): Don't define for GCC 3.5+ or !__FAST_MATH__.
5961         (fabsf, fabsl): Only provide if __USE_MISC or __USE_ISOC99.
5962         (sin, sinf, sinl, cos, cosf, cosl, log, logf, logl): Don't define
5963         for GCC 3.4+.
5964         (log10, log10f, log10l, asin, asinf, asinl, acos, acosf, acosl):
5965         Don't define for GCC 3.5+.
5966         (atan, atanf, atanl): Don't define for GCC 3.4+ or !__FAST_MATH__.
5967         (log1p, log1pf, log1pl, logb, logbf, logbl, log2, log2f, log2l): Don't
5968         define for GCC 3.5+.
5969         (drem, dremf, dreml): Don't define for GCC 3.5+ or !__FAST_MATH__.
5970         * sysdeps/sparc/fpu/bits/mathinline.h (sqrt, sqrtf, sqrtl): Don't
5971         define for GCC 3.2+.
5973 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
5975         * string/bits/string2.h (__bzero): Define even for GCC 3.0+.
5976         * sysdeps/alpha/stpcpy.S (stpcpy): Add libc_hidden_builtin_def.
5977         * sysdeps/alpha/alphaev67/stpcpy.S (stpcpy): Likewise.
5978         * sysdeps/powerpc/powerpc32/stpcpy.S (stpcpy): Likewise.
5979         * sysdeps/powerpc/powerpc64/stpcpy.S (stpcpy): Likewise.
5980         * sysdeps/sparc/sparc32/stpcpy.S (stpcpy): Likewise.
5981         * sysdeps/sparc/sparc64/stpcpy.S (stpcpy): Likewise.
5982         * sysdeps/i386/stpcpy.S (stpcpy): Likewise.
5983         * sysdeps/i386/i586/stpcpy.S (stpcpy): Likewise.
5984         * sysdeps/generic/stpcpy.c (stpcpy): Likewise.
5985         * sysdeps/x86_64/stpcpy.S (stpcpy): Likewise.
5986         * sysdeps/i386/i586/memcpy.S (memcpy): Remove
5987         libc_hidden_builtin_def if MEMPCPY_P.
5988         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
5989         * sysdeps/i386/i686/mempcpy.S (mempcpy): Add libc_hidden_builtin_def.
5990         * sysdeps/i386/i586/mempcpy.S (mempcpy): Likewise.
5991         * sysdeps/generic/mempcpy.c (mempcpy): Likewise.
5992         * sysdeps/x86_64/mempcpy.S (mempcpy): Likewise.
5994 2004-05-26  Roland McGrath  <roland@frob.com>
5996         * sysdeps/generic/bits/in.h
5997         (IMPLINK_IP, IMPLINK_LOWEXPER, IMPLINK_HIGHEXPER): Macros removed.
5998         These are long obsolete in BSD systems where they originated.
5999         * conform/data/netinet/in.h-data: Remove `allow IMPLINK_*'
6001 2004-05-26  Jakub Jelinek  <jakub@redhat.com>
6003         * include/string.h (mempcpy, stpcpy): Add libc_hidden_builtin_proto.
6004         * string/bits/string2.h (memset): Disable macro for GCC 3.0+.
6005         (__mempcpy): Use __builtin_mempcpy for GCC 3.4+.
6006         (strchr): For GCC 3.2+, only use __rawmemchr if second argument is
6007         constant '\0' and first argument is not constant.
6008         (__stpcpy): Use __builtin_stpcpy for GCC 3.4+.
6009         (strncpy): Remove #ifdef _USE_STRING_ARCH_mempcpy variant.
6010         For GCC 3.2+ use __builtin_strncpy.
6011         (strncat): For GCC 3.2+ use __builtin_strncat.
6012         (strcmp): For GCC 3.2+ use __builtin_strcmp if both arguments are
6013         constant.
6014         (strcspn, strspn, strpbrk): For GCC 3.2+, use builtin function
6015         if both arguments are constant.
6017 2004-05-26  Ulrich Drepper  <drepper@redhat.com>
6019         * nss/nss_files/files-hosts.c: Fix condition for looking up IPv4
6020         mapped addresses in gethostbyaddr.
6022 2004-05-25  Ulrich Drepper  <drepper@redhat.com>
6024         * nss/digits_dots.c (__nss_hostname_digits_dots): Remove typep and
6025         flags parameter, convert afp to simple int parameter.  Adjust code.
6026         typep was never != NULL and flags therefore also unused.  *afp is
6027         never modified.
6028         * nss/nsswitch.h: Adjust __nss_hostname_digits_dots prototype.
6029         * nss/getXXbyYY.c: Remove HAVE_TYPE handling.  Adjust af parameter
6030         handling for __nss_hostname_digits_dots calls.
6031         * nss/getXXbyYY_r.c: Likewise.
6033         * elf/dl-load.c (_dl_map_object_from_fd): Map DSOs with MAP_DENYWRITE.
6035 2004-05-25  Steven Munroe  <sjmunroe@us.ibm.com>
6037         * sysdeps/powerpc/fpu/Makefile: Make ld.so a dependency of libm.so.
6038         * sysdeps/powerpc/fpu/bits/mathinline.h [__LIBC_INERNAL_MATH_INLINES]
6039         (__ieee754_sqrt): Define as __MATH_INLINE using fsqrt instruction.
6040         (__ieee754_sqrtf): Define as __MATH_INLINE using fsqrts instruction.
6041         * sysdeps/powerpc/fpu/e_sqrt.c (__slow_ieee754_sqrt): Moved
6042         implementation from w_sqrt.c.
6043         * sysdeps/powerpc/fpu/e_sqrtf.c (__slow_ieee754_sqrtf): Moved
6044         implementation from w_sqrtf.c.
6045         * sysdeps/powerpc/fpu/w_sqrt.c (__sqrt): Wrapper implementation
6046         using inline __ieee754_sqrt().
6047         * sysdeps/powerpc/fpu/w_sqrtf.c (__sqrtf): Wrapper implementation
6048         using inline __ieee754_sqrtf().
6049         * sysdeps/powerpc/powerpc32/sysdep.h [__ASSEMBLER__]: Include
6050         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
6051         * sysdeps/powerpc/sysdep.h [__ASSEMBLER__] (PPC_FEATURE_*): Define
6052         PPC_FEATURE_*  independent of __ASSEMBLER__.
6054 2004-05-25  Jakub Jelinek  <jakub@redhat.com>
6056         * sysdeps/pthread/aio_notify.c: Use <> instead of "" for aio_misc.h
6057         include.
6058         (aio_start_notify_thread): Define if not defined.
6059         (notify_func_wrapper): Use it.
6060         * sysdeps/pthread/aio_misc.c: Use <> instead of "" for aio_misc.h
6061         include.
6062         (aio_create_helper_thread): Define if not defined.
6063         (__aio_create_helper_thread): New function.
6064         (__aio_enqueue_request): Use aio_create_helper_thread.
6066         * nis/ypclnt.c (ypall_data, ypall_foreach): Remove.
6067         (struct ypresp_all_data): New type.
6068         (__xdr_ypresp_all): Change second argument to
6069         struct ypresp_all_data *.  Replace ypall_foreach and
6070         ypall_data with objp->foreach and objp->data.
6071         (yp_all): Remove status variable, add data.  Replace
6072         all uses of status with data.status.  Initialize data.foreach
6073         and data.data instead of ypall_foreach and ypall_data.
6075 2004-05-24  Jakub Jelinek  <jakub@redhat.com>
6077         * elf/dl-lookup.c (add_dependency): Set DF_1_NODELETE bit
6078         in l_flags_1, not in l_flags.
6080 2004-04-10  Robert Millan  <robertmh@gnu.org>
6082         * sysdeps/unix/sysv/linux/bits/in.h: Cosmetic fixes to get in sync
6083         with sysdeps/generic/bits/in.h.
6085 2004-05-25  Roland McGrath  <roland@frob.com>
6087         * sysdeps/generic/unwind-dw2-fde-glibc.c: Change copyright terms from
6088         GCC GPL to standard glibc LGPL.
6090 2004-05-24  Ulrich Drepper  <drepper@redhat.com>
6092         * manual/string.texi (Copying and Concatenation): Fixed second
6093         concat example.
6094         Reported by Fabian Pietsch <fabian@zzznowman.dyndns.org>.
6096 2004-05-23  Ulrich Drepper  <drepper@redhat.com>
6098         * malloc/obstack.c: Don't allow linking with _obstack.
6100 2004-05-23  Andreas Schwab  <schwab@suse.de>
6102         * sysdeps/m68k/m68020/bits/atomic.h: Use "+m" constraint instead
6103         of separate "m" constraints.
6105 2004-05-15  Chris Demetriou  <cgd@broadcom.com>
6107         * sysdeps/mips/dl-machine.h (ELF_DL_FRAME_SIZE)
6108         (ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS): For the N32
6109         and 64 ABIs, save and restore regs $10 and $11 (a6 and a7).
6111 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
6113         * malloc/obstack.c (_obstack) [!defined _LIBC]: Remove; not used.
6114         Add comment explaining why libc still defines it.
6116 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
6118         * malloc/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
6119         obstack_alignment_mask, obstack_alloc, obstack_base,
6120         obstack_blank, obstack_blank_fast, obstack_chunk_size,
6121         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
6122         obstack_grow0, obstack_init, obstack_int_grow,
6123         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
6124         obstack_next_free, obstack_object_size, obstack_ptr_grow,
6125         obstack_ptr_grow_fast, obstack_room): Remove declarations of
6126         nonexistent functions.
6128 2004-05-18  Steven Munroe  <sjmunroe@us.ibm.com>
6130         * sysdeps/powerpc/powerpc64/sysdep.h [__ASSEMBLER__]: Include
6131         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
6132         [PIC]: Redundent for powerpc64, removed.
6133         (ENTRY): Generate size and alignment for opd entry.
6134         (EALIGN): Generate size and alignment for opd entry.
6135         (END): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
6136         (END_GEN_TB): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
6138 2004-05-19  Ulrich Drepper  <drepper@redhat.com>
6140         * misc/regexp.h: Say the functions have been withdrawn.
6142         * wcsmbs/tst-wcpncpy.c: Add more tests.
6144 2004-05-18  Roland McGrath  <roland@frob.com>
6146         * sysdeps/generic/unwind.h: Change copyright terms from GCC GPL to
6147         standard glibc LGPL.
6148         * sysdeps/generic/unwind-dw2.c: Likewise.
6149         * sysdeps/generic/unwind-dw2-fde.c: Likewise.
6150         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
6151         * sysdeps/generic/unwind-pe.h: Likewise.
6153 2004-05-15  Petter Reinholdtsen  <pere@hungry.com>
6155         * locale/iso-3166.def: Remove YUGOSLAVIA and insert "SERBIA AND
6156         MONTENEGRO" which have taken over the code 819.  Patch from
6157         Danilo Segan. [BZ #40]
6159 2004-05-15  Jakub Jelinek  <jakub@redhat.com>
6161         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
6162         (SYSCALL_ERROR_HANDLER): Rename __sparc.get_pic.l7 to
6163         __sparc_get_pic_l7.
6165 2004-05-15  Joseph S. Myers  <jsm@polyomino.org.uk>
6167         * catgets/gencat.c: Update bug reporting instructions.
6168         * csu/version.c: Likewise.
6169         * debug/catchsegv.sh: Likewise.
6170         * debug/pcprofiledump.c: Likewise.
6171         * debug/xtrace.sh: Likewise.
6172         * elf/ldd.bash.in: Likewise.
6173         * iconv/iconv_prog.c: Likewise.
6174         * iconv/iconvconfig.c: Likewise.
6175         * locale/programs/locale.c: Likewise.
6176         * locale/programs/localedef.c: Likewise.
6177         * login/programs/pt_chown.c: Likewise.
6178         * malloc/memusage.sh: Likewise.
6179         * malloc/memusagestat.c: Likewise.
6180         * malloc/mtrace.pl: Likewise.
6181         * manual/crypt.texi: Likewise.
6182         * manual/install.texi: Likewise.
6183         * nss/makedb.c: Likewise.
6185 2004-05-14  Jakub Jelinek  <jakub@redhat.com>
6187         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Only
6188         CHECK_STATIC_TLS if sym != NULL.
6189         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
6190         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
6192 2004-05-12  Andreas Schwab  <schwab@suse.de>
6194         * posix/regex_internal.c (build_wcs_buffer): Also set pstr->mbs
6195         when translating.
6197 2004-05-13  H.J. Lu  <hongjiu.lu@intel.com>
6199         * Rules (xtests): Depend on tests.
6201 2004-05-13  Jakub Jelinek  <jakub@redhat.com>
6203         * libio/genops.c (_IO_default_xsputn): Avoid one overflow per char if
6204         count is negative, yet write_ptr < write_end.
6205         (_IO_default_xsgetn): Avoid one underflow per char if count is
6206         negative, yet read_ptr < read_end.
6208 2004-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
6210         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h (XTABS): Define XTABS
6211         equal to TAB3.
6213 2004-05-12  Ulrich Drepper  <drepper@redhat.com>
6215         * elf/dl-lookup.c (_dl_lookup_symbol_x): Correct _dl_signal_cerror
6216         call.
6218 2004-05-10  Roland McGrath  <roland@frob.com>
6220         * hurd/hurdlookup.c (__hurd_file_name_split): Return ENOENT for "".
6221         (__hurd_directory_name_split): Likewise.
6223 2004-05-10  Ulrich Drepper  <drepper@redhat.com>
6225         * po/fr.po: Update from translation team.
6227 2004-05-10  Andreas Jaeger  <aj@suse.de>
6229         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
6230         Correctly compute alignment.
6231         Patch by Michael Matz <matz@suse.de>.
6233 2004-05-09  Ulrich Drepper  <drepper@redhat.com>
6235         * sysdeps/generic/sigpause.c: Prevent sigpause prototype.
6236         * sysdeps/posix/sigpause.c: Likewise.
6237         * signal/signal.h: Don't define sigpause macro unless needed.
6239 2004-05-08  Jakub Jelinek  <jakub@redhat.com>
6241         * configure.in (libc_cv_libgcc_s_suffix): New check.
6242         (libc_cv_as_needed): Use -lgcc_s$libc_cv_libgcc_s_suffix.
6243         * config.make.in (libgcc_s_suffix): Set.
6244         * Makeconfig (libgcc_eh): Use -lgcc_s$(libgcc_s_suffix).
6246 2004-05-08  Ulrich Drepper  <drepper@redhat.com>
6248         * signal/signal.h: Use BSD sigpause only if BSD behavior is preferred.
6250 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
6252         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_1,
6253         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
6254         Load argument values into temporary variables.
6255         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_1,
6256         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
6257         Likewise.
6259 2004-05-07  Ulrich Drepper  <drepper@redhat.com>
6261         * sysdeps/unix/sysv/linux/Makefile: mq_send.c and mq_receive.c
6262         need to be compiled with exceptions.
6264 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
6266         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Fix memory handling.
6267         * sysdeps/generic/ifreq.c (__ifreq): Fix memory handling.
6269         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Make clear that
6270         realloc cannot fail.
6272         * nss/nss_files/files-netgrp.c (EXPAND): Free buffer which cannot
6273         be expanded.
6275         * nis/nis_table.c: Clean up memory handling.
6276         * nis/nis_subr.c (nis_getnames): Clean up memory handling.
6277         * nis/nis_removemember.c (nis_removemember): Add comment
6278         explaining use of realloc.
6280         * math/tgmath.h (fabs): Use __TGMATH_UNARY_REAL_IMAG_RET_REAL.
6281         (carg): Likewise.
6282         Patch by Lev S Bishop <lev.bishop@yale.edu>.
6284         * math/bug-tgmath1.c (main): Test fabs and carg as well.
6286 2004-05-06  Richard Henderson  <rth@redhat.com>
6288         * elf/elf.h (AT_L1I_CACHESHAPE, AT_L1D_CACHESHAPE,
6289         AT_L2_CACHESHAPE, AT_L3_CACHESHAPE): New.
6290         * sysdeps/unix/sysv/linux/alpha/Versions: Export
6291         __libc_alpha_cache_shape as a private symbol.
6292         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c: New file.
6293         * sysdeps/unix/sysv/linux/alpha/sysconf.c: New file.
6295 2004-05-06  Richard Henderson  <rth@redhat.com>
6297         * sysdeps/alpha/div_libc.h (_ITOFS, _ITOFT, _FTOIT, _ITOFT2): New.
6298         * sysdeps/alpha/divl.S: Use them.
6299         * sysdeps/alpha/divq.S: Likewise.
6300         * sysdeps/alpha/divqu.S: Likewise.
6301         * sysdeps/alpha/reml.S: Likewise.
6302         * sysdeps/alpha/remq.S: Likewise.
6303         * sysdeps/alpha/remqu.S: Likewise.
6305 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
6307         * math/tgmath.h (__TGMATH_UNARY_REAL_IMAG_RET_REAL):Define.
6308         (cimag): Use it.
6309         (creal): Likewise.
6310         * math/Makefile (tests): Add bug-tgmath1.
6311         * math/bug-tgmath1.c: New file.
6313 2004-05-05  Jakub Jelinek  <jakub@redhat.com>
6315         * sysdeps/alpha/atomicity.h: Remove.
6316         * sysdeps/generic/atomicity.h: Remove.
6318 2004-05-05  H.J. Lu  <hongjiu.lu@intel.com>
6320         * sysdeps/i386/i486/bits/string.h (strpbrk): Cast return to
6321         char *.
6323 2004-04-22  David Mosberger  <davidm@hpl.hp.com>
6325         * sysdeps/unix/sysv/linux/ia64/Makefile (librt-routines): Mention
6326           rt-sysdep.
6327         * sysdeps/unix/sysv/linux/ia64/rt-sysdep.S: New file.
6329         * sysdeps/ia64/strcat.c: New file.
6330         * sysdeps/ia64/strcat.S: Delete.
6332 2004-05-04  Jakub Jelinek  <jakub@redhat.com>
6334         * sysdeps/unix/sysv/linux/ia64/sysdep.S (USE___THREAD): Remove
6335         defined.
6337 2004-04-23  Jakub Jelinek  <jakub@redhat.com>
6339         * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Add
6340         libc_hidden_proto.  Define to __GI___libm_error_support for
6341         assembly going into libc.so.
6342         * sysdeps/ia64/fpu/libc_libm_error.c (__libm_error_support): Add
6343         libc_hidden_def.
6345         * include/libc-symbols.h (HIDDEN_BUILTIN_JUMPTARGET): Define.
6346         * sysdeps/ia64/bcopy.S (bcopy): Use it for jump to memmove.
6348         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Access
6349         gprel errno if RTLD_PRIVATE_ERRNO or __thread __libc_errno/errno
6350         if USE___THREAD.
6352 2004-05-03  Jakub Jelinek  <jakub@redhat.com>
6354         * sysdeps/unix/bsd/bits/fcntl.h (F_SETOWN, F_GETOWN): Define if
6355         __USE_BSD or __USE_UNIX98.
6356         * sysdeps/unix/bsd/ultrix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
6357         * sysdeps/unix/bsd/bsd4.4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
6358         * sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h (F_SETOWN, F_GETOWN):
6359         Likewise.
6360         * sysdeps/unix/common/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
6361         * sysdeps/unix/sysv/aix/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
6362         * sysdeps/unix/sysv/irix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
6363         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (F_SETOWN, F_GETOWN):
6364         Likewise.
6365         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_SETOWN, F_GETOWN):
6366         Likewise.
6367         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (F_SETOWN, F_GETOWN):
6368         Likewise.
6369         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (F_SETOWN, F_GETOWN):
6370         Likewise.
6371         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (F_SETOWN, F_GETOWN):
6372         Likewise.
6373         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (F_SETOWN, F_GETOWN):
6374         Likewise.
6375         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (F_SETOWN, F_GETOWN):
6376         Likewise.
6377         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (F_SETOWN, F_GETOWN):
6378         Likewise.
6379         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (F_SETOWN, F_GETOWN):
6380         Likewise.
6381         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (F_SETOWN, F_GETOWN):
6382         Likewise.
6383         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (F_SETOWN, F_GETOWN):
6384         Likewise.
6385         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (F_SETOWN, F_GETOWN):
6386         Likewise.
6387         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_SETOWN, F_GETOWN):
6388         Likewise.
6389         * sysdeps/generic/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
6390         * sysdeps/mach/hurd/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
6391         * io/sys/stat.h (S_ISSOCK, S_IFSOCK): Likewise.
6393 2004-05-01  Jakub Jelinek  <jakub@redhat.com>
6395         * posix/Versions (libc): Remove __libc_wait, __libc_waitpid,
6396         __libc_pause, __libc_nanosleep, __libc_pread, __libc_pread64,
6397         __libc_pwrite64, __waitid and __pselect @@GLIBC_PRIVATE.
6398         * stdlib/Versions (libc): Remove __on_exit@@GLIBC_PRIVATE.
6399         * sysdeps/unix/sysv/linux/Versions (libc): Remove
6400         __libc_sigaction@@GLIBC_PRIVATE.
6401         * sysdeps/unix/sysv/linux/x86_64/Versions (libc): Remove
6402         __modify_ldt@@GLIBC_PRIVATE.
6403         * socket/Versions (libc): Remove __libc_accept, __libc_send,
6404         __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv,
6405         __libc_sendto and __libc_connect @@GLIBC_PRIVATE.
6406         * stdio-common/Versions (libc): Remove
6407         _itoa_upper_digits@@GLIBC_PRIVATE.
6408         * resolv/Versions (libresolv): Remove __ns_samename@@GLIBC_PRIVATE.
6409         * misc/Versions (libc): Remove __libc_fsync, __libc_msync,
6410         __libc_readv and __libc_writev @@GLIBC_PRIVATE.
6411         * termios/Versions (libc): Remove __libc_tcdrain@@GLIBC_PRIVATE.
6412         * io/Versions (libc): Remove __libc_open, __libc_close, __libc_read,
6413         __libc_write, __libc_lseek, __libc_fcntl, __libc_open64 and
6414         __libc_lseek64 @@GLIBC_PRIVATE.
6416 2004-04-30  Jakub Jelinek  <jakub@redhat.com>
6418         * elf/dl-load.c (open_verify): Move e_phentsize check after e_type
6419         check.
6421 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
6423         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: New file.
6424         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: New file.
6425         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: New file.
6426         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: New file.
6427         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: Removed.
6428         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: New file.
6429         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: Removed.
6430         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: New file.
6431         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: New file.
6432         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: New file.
6433         * sysdeps/powerpc/powerpc64/fpu/s_lround.S: New file.
6434         * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: New file.
6435         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: New file.
6436         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: New file.
6437         * sysdeps/powerpc/powerpc64/fpu/s_round.S: New file.
6438         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: New file.
6439         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: New file.
6440         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: New file.
6442         * math/test-misc.c [LDBL_MANT_DIG == 106](main): Correct LDBL_MAX
6443         mantissa for AIX long double format.
6444         * misc/qefgcvt.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Define for AIX
6445         long double format.
6446         * misc/qefgcvt_r.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Likewise.
6447         * stdlib/fpioconst.c [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
6448         (_fpioconst_pow10): AIX long double format has same exponent range as
6449         double.
6450         * stdlib/fpioconst.h [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
6451         (LDBL_MAX_10_EXP_LOG): AIX long double format has same exponent range
6452         as double.
6454 2004-04-23  Art Haas  <ahaas@airmail.net>
6456         * sysdeps/unix/sysv/linux/kernel-features.h: Add 'defined'.
6458 2004-04-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
6460         * sysdeps/unix/sysv/linux/mq_getattr.c: Include <stddef.h>.
6461         * sysdeps/unix/sysv/linux/mq_notify.c: Likewise.
6462         * sysdeps/unix/sysv/linux/mq_open.c: Likewise.
6463         * sysdeps/unix/sysv/linux/mq_receive.c: Likewise.
6464         * sysdeps/unix/sysv/linux/mq_send.c: Likewise.
6466 2004-04-29  Philip Blundell  <pb@nexus.co.uk>
6468         * sysdeps/arm/dl-machine.h (RTLD_START): Avoid unnecessary GOT
6469         entries.
6471 2004-04-29  Jakub Jelinek  <jakub@redhat.com>
6473         * manual/resource.texi (sched_setaffinity, sched_getaffinity): Fix
6474         prototypes and description [BZ #131].
6476         * string/bits/string2.h (strpbrk): Cast NULL to char * [BZ #130].
6477         Patch by Ed Catmur <ed@catmur.co.uk>.
6478         * string/tst-inlcall.c (main): Add test for strpbrk.
6480         [BZ #140]
6481         * sysdeps/unix/sysv/linux/sys/sysctl.h: Remove linux/compiler.h
6482         include.
6483         (_LINUX_KERNEL_H, _LINUX_TYPES_H, _LINUX_LIST_H): Only define if not
6484         yet defined, #undef back after including linux/sysctl.h if defined
6485         here.
6486         (__LINUX_COMPILER_H, __user): Define if not yet defined, #undef
6487         back after including linux/sysctl.h if defined here.
6489         * sysdeps/sparc/sparc64/soft-fp/qp_qtoi.c (_Qp_qtoi): Use %f31
6490         for single precision register, add it to __asm clobbers [BZ #139].
6491         * sysdeps/sparc/sparc64/soft-fp/qp_qtoui.c (_Qp_qtoui): Use %f31
6492         for single precision register, add it to __asm clobbers.
6493         * sysdeps/sparc/sparc64/soft-fp/qp_qtoux.c (_Qp_qtoux): Use fqtox
6494         instead of fqtoi in QP_HANDLE_EXCEPTIONS.
6495         * sysdeps/sparc/sparc64/soft-fp/qp_qtox.c (_Qp_qtox): Likewise.
6496         Reported by M. H. VanLeeuwen <vanl@megsinet.net>.
6498 2004-04-23  Andreas Schwab  <schwab@suse.de>
6500         * sysdeps/unix/sysv/linux/m68k/register-dump.h: Use
6501         __attribute_used__.
6503 2004-04-22  Philip Blundell  <philb@gnu.org>
6505         * sysdeps/arm/dl-machine.h (elf_machine_rela): Don't use INTUSE
6506         when calling _dl_signal_error.
6507         (elf_machine_rel): Likewise.
6509 2004-04-21  Ulrich Drepper  <drepper@redhat.com>
6511         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Define _GI___sigsetjmp
6512         and use it internally instead of __sigsetjmp.
6513         * sysdeps/ia64/fpu/s_frexpf.c (frexpf): Use _GI___libm_frexp_4f.
6514         * sysdeps/ia64/fpu/s_frexpl.c (frexpl): Use _GI___libm_frexp_4l.
6515         * sysdeps/ia64/fpu/libm_frexp4.S: Define _GI___libm_frexp_4.
6516         * sysdeps/ia64/fpu/libm_frexp4f.S: Define _GI___libm_frexp_4f.
6517         * sysdeps/ia64/fpu/libm_frexp4l.S: Define _GI___libm_frexp_4l.
6518         * sysdeps/ia64/fpu/s_frexp.c (frexp): Use _GI___libm_frexp_4.
6519         * sysdeps/ia64/fpu/libm_support.h: Declare _GI___libm_frexp_4,
6520         _GI___libm_frexp_4f, _GI___libm_frexp_4l.
6521         * sysdeps/ia64/fpu/bits/mathinline.h: New file.
6522         * sysdeps/unix/sysv/linux/ia64/__start_context.S: Use
6523         HIDDEN_JUMPTARGET for exit call.
6524         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use HIDDEN_JUMPTARGET for
6525         _exit call.
6526         * sysdeps/ia64/bcopy.S: Use HIDDEN_JUMPTARGET for memmove call.
6527         * sysdeps/ia64/strcat.S: Use HIDDEN_JUMPTARGET for strlen and
6528         strcpy calls.
6530 2004-04-21  Jakub Jelinek  <jakub@redhat.com>
6532         * posix/tst-chmod.c (do_test): Fix a typo.
6534         * elf/lateglobal.c (main): Fix error checks.
6535         Patch by Stephen Clarke <stephen.clarke@st.com>.
6537         * manual/ctype.texi (isblank, iswblank): Mark as ISO functions,
6538         mention they have been added in ISO C99.
6539         Reported by Ben Pfaff <blp@cs.stanford.edu>.
6541 2004-03-31  H.J. Lu  <hongjiu.lu@intel.com>
6543         * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: Fix typo.
6545 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
6547         * sysdeps/unix/sysv/linux/shm_open.c (shm_unlink): Change EPERM into
6548         EACCES.
6550 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
6552         * stdio-common/vfscanf.c (_IO_vfscanf): Revert last %% whitespace
6553         handling change.
6554         * stdio-common/tst-sscanf.c (int_tests): Adjust.
6556         * nis/nss-nis.c: Include stdlib.h.
6558         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Shut up a
6559         warning.
6560         * sysdeps/sparc/sparc64/memcmp.S (memcmp): Remove BP_SYM () from
6561         libc_hidden_builtin_def.
6563 2004-04-20  Jim Meyering  <jim@meyering.net>
6565         * misc/error.c (error_tail): Don't leak upon realloc failure.
6567 2004-04-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
6569         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
6570         Use RETURN_ADDRESS instead of __builtin_return_address.
6572 2004-04-19  Ulrich Drepper  <drepper@redhat.com>
6574         * sysdeps/unix/sysv/linux/mq_unlink.c: Rewrite to produce more
6575         compact code.
6577 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
6579         * stdio-common/vfscanf.c (_IO_vfscanf): When skipping whitespace,
6580         do input_error () instead of conv_error () and don't look at errno.
6581         Don't eat any whitespace before %% if skip_space == 0.
6582         * stdio-common/tst-sscanf.c (int_tests): New array.
6583         (main): Run int_tests.
6586 See ChangeLog.14 for earlier changes.