Fix pthread_mutexattr_getrobust_np definition
[kopensolaris-gnu/glibc.git] / ChangeLog.15
1 2004-12-20  Jakub Jelinek  <jakub@redhat.com>,
2             Jim Gifford  <giffordj@linkline.com>
3
4         [BZ #562]
5         * sysdeps/mips/Makefile (librt-sysdep_routines): Add.
6         * sysdeps/unix/mips/rt-sysdep.S: New file.
7
8 2004-12-19  Roland McGrath  <roland@redhat.com>
9
10         * iconv/Makefile (test-iconvconfig): New target.
11         [$(cross-compiling) != yes] (xtests): Depend on it.
12
13         * iconv/iconvconfig.c (nostdlib, output_file, output_file_len):
14         New variables.
15         (options, parse_opt, main): Take new options --nostdlib and
16         --output/-o to set them.  Under --nostdlib, skip GCONV_PATH dirs.
17         (write_output): If output_file is set, write the output there.
18
19 2004-12-19  Andreas Jaeger  <aj@suse.de>
20
21         [BZ #560]
22         * inet/netinet/in.h: Use __interface_addr instead of __interface.
23
24         [BZ #573]
25         * sunrpc/xcrypt.c (passwd2des_internal): Make it hidden instead of
26         internal linkage.
27
28 2004-12-19  Roland McGrath  <roland@frob.com>
29
30         * version.h (VERSION): 2.3.4.
31         * README.template: Various updates.
32         * README: Regenerated.
33         * NEWS: Mention ports.
34         * README-alpha: File removed.
35
36         [BZ #416]
37         * locale/langinfo.h: Comment fixes.
38
39 2004-12-17  Ulrich Drepper  <drepper@redhat.com>
40
41         * po/ja.po: Update from translation team.
42
43 2004-12-17  Richard Henderson  <rth@redhat.com>
44
45         * sysdeps/unix/sysv/linux/alpha/clone.S (__clone): Add support
46         for NPTL where the PID is stored at userlevel and needs to be
47         reset when CLONE_THREAD is not used.
48
49 2004-12-17  Jakub Jelinek  <jakub@redhat.com>
50
51         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
52
53 2004-12-17  Andreas Jaeger  <aj@suse.de>
54
55         * math/libm-test.inc (atan2_test): Compute value with 36 digits.
56         * sysdeps/alpha/fpu/libm-test-ulps: Adjust for changed result.
57         * sysdeps/powerpc/fpu/libm-test-ulps: Likewise.
58         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
59         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Likewise.
60         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Likewise.
61         * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
62
63 2004-12-16  Ulrich Drepper  <drepper@redhat.com>
64
65         * stdlib/tst-setcontext.c: Enlarge st1 and st2 arrays.
66
67 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
68
69         [BZ #610]
70         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
71         (__novec_getcontext): Fix typo in store of fp29.
72         (__getcontext): Fix typo in store of fp29.
73         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
74         (__novec_swapcontext): Fix typo in store of fp29.
75         (__swapcontext): Fix typo in store of fp29.
76
77 2004-12-17  GOTO Masanori  <gotom@debian.or.jp>
78
79         * sysdeps/unix/sysv/linux/dl-osinfo.h (DL_SYSDEP_OSCHECK): Fix
80         vague message.
81
82 2004-12-16  Roland McGrath  <roland@redhat.com>
83
84         * nscd/Makefile ($(objpfx)nscd): Don't depend on $(selinux-LIBS),
85         which is usually a -lselinux that make will resolve wrongly.
86
87 2004-12-16  Andreas Jaeger  <aj@suse.de>
88
89         * math/math.h: Use #if defined to not receive warnings about
90         undefined symbols.
91
92 2004-12-16  Jakub Jelinek  <jakub@redhat.com>
93
94         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Add support
95         for NPTL where the PID is stored at userlevel and needs to be reset
96         when CLONE_THREAD is not used.
97
98         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
99         (SYSCALL_ERROR_HANDLER): If RTLD_PRIVATE_ERRNO, use rtld_errno
100         instead of errno.
101         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S: Include
102         sysdep-cancel.h instead of sysdep.h.  Handle cancellation.
103         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerate.
104
105         * sysdeps/ieee754/ldbl-128/e_expl.c: Include stdlib.h.
106
107 2004-12-15  Jakub Jelinek  <jakub@redhat.com>
108
109         * sysdeps/unix/sysv/linux/gethostid.c: Make bi-arch safe.
110
111 2004-12-15  Steven Munroe  <sjmunroe@us.ibm.com>
112
113         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Correct stack
114         alignment.  Clean up flag bit tests.
115         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Correct stack
116         alignment.  Clean up flag bit tests.  Remove redundent SP assignment.
117         Add TOC register save/restore around function call.
118
119         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Make no_vmx symbol
120         local.
121         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Make no_vmx symbol
122         local.
123         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Make no_vmx symbol
124         local.
125         * sysdeps/powerpc/powerpc64/setjmp-common.S: Make no_vmx and
126         aligned_save_vmx symbol local.
127
128 2004-12-15  Ulrich Drepper  <drepper@redhat.com>
129
130         * sysdeps/i386/i486/bits/string.h (__strncat_g): Fix i686
131         implementation.
132
133 2004-09-08  H.J. Lu  <hongjiu.lu@intel.com>
134
135         * Makeconfig (libunwind): New.
136         (libgcc_eh): Add $(libunwind).
137         (gnulib): Always set to -lgcc $(libgcc_eh).
138         (static-gnulib): Always set to -lgcc -lgcc_eh $(libunwind).
139         (libc.so-gnulib): New.
140         * Makerules (LDLIBS-c.so): Use $(libc.so-gnulib) instead of
141         $(static-gnulib).
142         * configure.in (libc_cv_cc_with_libunwind): Set to yes if gcc
143         uses -lunwind for static binaries.
144
145 2004-06-05  Joseph S. Myers  <jsm@polyomino.org.uk>
146
147         * malloc/Makefile (install-bin): Remove memusage.
148         (install-bin-script): Add memusage.
149
150 2004-12-15  Jakub Jelinek  <jakub@redhat.com>
151
152         * nis/nis_domain_of_r.c (nis_domain_of_r): Use libnsl_hidden_def,
153         not libnsl_hidden_proto.
154
155         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add support
156         for NPTL where the PID is stored at userlevel and needs to be reset
157         when CLONE_THREAD is not used.
158         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
159
160         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S (__clone): Save
161         and restore r2 around call to fn.
162
163 2004-12-15  Andreas Jaeger  <aj@suse.de>
164
165         * sysdeps/ia64/dl-machine.h (elf_machine_rela): Mark auto instead
166         of static, add always_inline attribute.
167         (elf_machine_rela_relative): Likewise.
168         (elf_machine_lazy_rel): Likewise.
169
170 2004-12-15  Ulrich Drepper  <drepper@redhat.com>
171
172         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Add support
173         for pid caching in nptl.
174
175 2004-12-14  Ulrich Drepper  <drepper@redhat.com>
176
177         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Add support
178         for pid caching in nptl.
179
180 2004-10-18  Maciej W. Rozycki  <macro@mips.com>
181
182         * sysdeps/unix/sysv/linux/mips/bits/socket.h (__cmsg_nxthdr): Use
183         __NTH instead of __THROW in the inline definition.
184         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise.
185
186         * sysdeps/mips/bits/dlfcn.h (RTLD_DEEPBIND): New macro.
187
188         * sysdeps/unix/sysv/linux/mips/bits/mman.h
189         (PROT_GROWSDOWN, PROT_GROWSUP): New macros.
190
191 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
192
193         * sysdeps/powerpc/powerpc64/ppc-mcount.S (PROF): Don't undef.
194         * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S: Invoke CALL_MOUNT.
195         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Likewise.
196         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
197         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
198         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
199         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Likewise.
200         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
201         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: Likewise.
202
203 2004-10-19  Wolfram Gloger  <wg@malloc.de>
204
205         * malloc/hooks.c (mem2chunk_check, top_check): Handle
206         non-contiguous arena.  Reported by Michael Dalton
207         <mwdalton@stanford.edu> [BZ #457].  Add further checks for top chunk.
208
209 2004-12-14  Jakub Jelinek  <jakub@redhat.com>
210
211         * sysdeps/posix/sysconf.c (__sysconf_check_spec): Remove leading
212         underscore from GETCONF_DIR filenames.
213
214 2004-12-13  Ulrich Drepper  <drepper@redhat.com>
215
216         * po/de.po: Update from translation team.
217
218         * nss/getnssent.c (__nss_getent): Double buffer size each round to
219         avoid problems with delays for some people's huge entries.
220         * nss/getXXbyYY.c (FUNCTION_NAME): Likewise.
221
222 2004-12-13  Jakub Jelinek  <jakub@redhat.com>
223
224         * posix/getconf.c (main): Prepend just $GETCONF_DIR/ instead of
225         $GETCONF_DIR/_ to spec.
226         * posix/confstr.c (confstr): Remove leading underscores for
227         _CS_POSIX_V6_WIDTH_RESTRICTED_ENVS.
228
229 2004-12-12  Ulrich Drepper  <drepper@redhat.com>
230
231         * elf/dl-load.c (_dl_map_object_from_fd): Fix computation of
232         mapping start.  It must take the actual pagesize into account, not
233         the alignment in the file.
234
235 2004-12-11  Ulrich Drepper  <drepper@redhat.com>
236
237         * malloc/malloc.c (_int_realloc): Add checks for corrupted memory.
238         (_int_free): Make clear message are result of free() calls.
239
240         * malloc/malloc.c (_int_realloc): Remove unnecessary tests for
241         oldmem and size == 0.
242
243 2004-12-10  Ulrich Drepper  <drepper@redhat.com>
244
245         * malloc/arena.c (arena_get2): Prevent endless loop if arenas and
246         list lock are taken.
247
248 2004-12-08  Thorsten Kukuk  <kukuk@suse.de>
249
250         * nis/nss_nisplus/nisplus-netgrp.c (_nss_nisplus_getnetgrent_r):
251         Add check if the value is not an empty string.  [BZ #597]
252
253 2004-11-29  Jakub Jelinek  <jakub@redhat.com>
254
255         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): If densize > 2
256         and numsize < densize, always shift num up by empty + 1 limbs.
257
258 2004-12-07  Paolo Bonzini  <bonzini@gnu.org>
259
260         * posix/regexec.c (proceed_next_node): Simplify treatment of epsilon
261         nodes.  Pass the pushed node to push_fail_stack.
262         (push_fail_stack): Accept a single node rather than an array
263         of two epsilon destinations.
264         (build_sifted_states): Only walk non-epsilon nodes.
265         (check_arrival): Don't pass epsilon nodes to
266         check_arrival_add_next_nodes.
267         (check_arrival_add_next_nodes) [DEBUG]: Abort if an epsilon node is
268         found.
269         (check_node_accept): Do expensive checks later.
270         (add_epsilon_src_nodes): Cache result of merging the inveclosures.
271         * posix/regex_internal.h (re_dfastate_t): Add non_eps_nodes and
272         inveclosure.
273         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at,
274         re_string_context_at, re_string_peek_byte_case,
275         re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
276         Declare as pure.
277         * posix/regex_internal.c (create_newstate_common): Remove.
278         (register_state): Move part of it here.  Initialize non_eps_nodes.
279         (free_state): Free inveclosure and non_eps_nodes.
280         (create_cd_newstate, create_ci_newstate): Allocate the new
281         re_dfastate_t here.
282
283 2004-12-09  Ulrich Drepper  <drepper@redhat.com>
284
285         * malloc/malloc.c (public_rEALLOc): Add parameter checks.
286         (_int_free): Provide better error message for invalid pointers.
287
288 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
289
290         * posix/tst-regex.c: Use defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
291         conditionals instead of defined _POSIX_CPUTIME.
292         (main): If _POSIX_CPUTIME == 0, call sysconf to see if CPUTIME
293         option is available.
294         * posix/tst-regex.c2: Use defined _POSIX_CPUTIME && _POSIX_CPUTIME >= 0
295         conditionals instead of defined _POSIX_CPUTIME.
296         (do_test): If _POSIX_CPUTIME == 0, call sysconf to see if CPUTIME
297         option is available.
298         * sysdeps/posix/sysconf.c (__sysconf): If _POSIX_CPUTIME resp.
299         _POSIX_THREAD_CPUTIME is defined to 0, return -1 for the corresponding
300         _SC_ argument.
301
302 2004-12-08  Jakub Jelinek  <jakub@redhat.com>
303
304         * elf/ldd.bash.in: When set -o pipefail is available, use that for
305         piping to cat; when not, don't use the pipe at all.
306         Pipe to cat in all cases of running the executable.
307         When direct running exits with code 5, retry running via ${RTLD}.
308         * elf/rtld.c (process_envvars): If __libc_enable_secure and
309         mode != normal, exit with exitcode 5.
310
311 2004-12-07  Jakub Jelinek  <jakub@redhat.com>
312
313         * sysdeps/posix/sysconf.c (__sysconf_check_spec): Only define
314         if it will be actually used.
315
316 2004-12-07  Roland McGrath  <roland@redhat.com>
317
318         * rt/tst-timer5.c (setup_test): New function.
319         (TEST_CLOCK_MISSING): Use it to punt test if timer_create does not
320         support CLOCK_MONOTONIC.
321
322 2004-12-07  Jakub Jelinek  <jakub@redhat.com>
323
324         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Add support for
325         NPTL where the PID is stored at userlevel and needs to be reset when
326         CLONE_THREAD is not used.  Restore gp before calling _exit.
327
328 2004-12-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
329
330         * sysdeps/unix/sysv/linux/sh/clone.S: Clear the frame pointer when
331         starting a new thread.  Add support for NPTL where the PID is stored
332         at userlevel and needs to be reset when CLONE_THREAD is not used.
333
334 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
335
336         * elf/rtld.c (process_envvars): Don't consider LD_SHOW_AUXV
337         and LD_DYNAMIC_WEAK if __libc_enable_secure.
338         If __libc_enable_secure, /etc/suid-debug doesn't exist and
339         program will be actually run, turn off all debugging.
340         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add LD_DEBUG,
341         LD_DYNAMIC_WEAK and LD_SHOW_AUXV.
342
343 2004-12-06  Jakub Jelinek  <jakub@redhat.com>
344
345         * time/tzset.c (tzset_internal): If + or - is seen,
346         but no offset after it, reset offset to 0.  [BZ #601]
347
348 2004-12-06  Ulrich Drepper  <drepper@redhat.com>
349
350         * libio/ioseekpos.c (_IO_seekpos_unlocked): Call _IO_SEEKOFF not
351         _IO_SEEKPOS, saving one indirect jump.
352
353         * libio/fileops.c (_IO_new_file_seekoff): Fix optimization of in-buffer
354         seek.  Remove dead code.
355
356 2004-12-02  Jakub Jelinek  <jakub@redhat.com>
357
358         * libio/Makefile (tests): Add bug-ungetc4.
359         * libio/bug-ungetc4.c: New test.
360
361 2004-12-06  Roland McGrath  <roland@redhat.com>
362
363         * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): Diagnose EINVAL
364         for CLOCK_THREAD_CPUTIME_ID, not ENOTSUP.
365         Use SYSDEP_NANOSLEEP handler before validating CLOCK_ID value.
366
367         * rt/tst-timer4.c (TEST_CLOCK, TEST_CLOCK_NANOSLEEP): New macros.
368         Use them throughout in place of CLOCK_REALTIME and nanosleep.
369         (do_test) [TEST_CLOCK_MISSING]: Call this macro and if it returns
370         non-null, punt the test with a message using the string returned.
371         * rt/tst-timer5.c: New file.
372         * rt/Makefile (tests): Add it.
373
374 2004-12-01  Paolo Bonzini  <bonzini@gnu.org>
375
376         * posix/regcomp.c (free_dfa_content, init_dfa): Remove
377         references to re_dfa_t's subexps field.
378         (parse_sub_exp, parse_expression): Do not use it.  Use
379         completed_bkref_map instead.
380         (create_initial_state, peek_token): Store a backreference \N
381         with opr.idx = N-1.
382         * posix/regexec.c (proceed_next_node, check_dst_limits, get_subexp):
383         Likewise.
384         (check_subexp_limits): Remove useless condition.
385         * posix/regex_internal.h (re_subexp_t): Remove.
386         (re_dfa_t): Remove subexps and subexps_alloc field, add
387         completed_bkref_map.
388
389 2004-12-05  Roland McGrath  <roland@frob.com>
390
391         * Makeconfig: Comment typo fix.
392
393 2004-11-30  Andreas Schwab  <schwab@suse.de>
394
395         * nis/ypclnt.c (ypprot_err): Remove unused entries.
396
397 2004-11-30  Paolo Bonzini  <bonzini@gnu.org>
398
399         * posix/regexec.c (check_dst_limits_calc_pos_1): Check for
400         bkref_idx == -1, and don't recurse in that case.
401
402 2004-11-30  GOTO Masanori  <gotom@debian.or.jp>
403
404         * posix/confstr.c: Enclose #error message with double quote
405         for gcc-3.3 and lower.
406
407 2004-12-04  Ulrich Drepper  <drepper@redhat.com>
408
409         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for NPTL where
410         the PID is stored at userlevel and needs to be reset when CLONE_THREAD
411         is not used.
412         * sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.
413
414 2004-11-18  Daniel Jacobowitz  <dan@codesourcery.com>
415
416         * sysdeps/arm/sysdep.h: Define __USE_BX__ if bx is available.
417         Use it instead of __THUMB_INTERWORK__.  Make RETINSTR take
418         only a condition and a register.
419         * sysdeps/arm/dl-machine.h: Use __USE_BX__ instead of
420         __THUMB_INTERWORK__.
421         (_dl_start_user): Use BX.
422         * sysdeps/arm/strlen.S: Use DO_RET.
423         * sysdeps/unix/arm/brk.S: Likewise.
424         * sysdeps/unix/arm/fork.S: Likewise.
425         * sysdeps/unix/arm/sysdep.S: Likewise.
426         * sysdeps/unix/arm/sysdep.h: Likewise.
427         * sysdeps/unix/sysv/linux/arm/clone.S: Update uses of RETINSTR.
428         * sysdeps/unix/sysv/linux/arm/mmap.S: Likewise.
429         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise.
430         * sysdeps/unix/sysv/linux/arm/socket.S: Likewise.
431         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
432         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
433
434 2004-12-02  Roland McGrath  <roland@redhat.com>
435
436         * extra-lib.mk (object-suffixes-$(lib)): Add .oS when
437         $(lib)-static-only-routines is nonempty.
438         (extra-objs, o-iterator.mk rule): Filter out .oS from generators.
439         Add a special rule for .oS objects -> _nonshared.a library.
440
441 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
442
443         * time/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
444         convert T2, not T.
445         * time/Makefile (tests): Add tst-mktime3.
446         * time/tst-mktime3.c: New test.
447
448 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
449
450         * stdlib/stdlib.h (realpath): Remove nonnull attribute.
451
452         * posix/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
453         normal_bracket label.
454
455         * time/tst-mktime2.c (bigtime_test): Initialize tm.tm_isdst to -1.
456
457 2004-12-01  Roland McGrath  <roland@redhat.com>
458
459         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c):
460         Do $(make-target-directory).
461
462 2004-11-29  Roland McGrath  <roland@redhat.com>
463
464         * posix/confstr.c: Avoid punctuation in #error text.
465
466 2004-11-27  Ulrich Drepper  <drepper@redhat.com>
467
468         * posix/Makefile (tests): Add tst-sysconf.
469         * posix/tst-sysconf.c: New file.
470
471         * posix/getconf.c (vars): Add support for _SC_IPV6 and
472         _SC_RAW_SOCKETS.
473         * sysdeps/posix/sysconf.c (__sysconf): Add support for _SC_IPV6
474         and _SC_RAW_SOCKETS.
475         * sysdeps/generic/bits/confname.h: Define _SC_IPV6 and
476         _SC_RAW_SOCKETS.
477
478 2004-11-26  Jakub Jelinek  <jakub@redhat.com>
479
480         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add GETCONF_DIR.
481
482 2004-11-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
483
484         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
485         NO_SGIDEFS_H isn't defined.  Don't include sgidefs.h twice.
486         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
487         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
488         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
489
490 2004-11-27  Ulrich Drepper  <drepper@redhat.com>
491
492         * include/dlfcn.h (__libc_dlopen): Add __RTLD_DLOPEN to the mode
493         parameter.  Reported by VY Newsum <newsum@fel.tno.nl>.
494
495 2004-11-10  Daniel Jacobowitz  <dan@debian.org>
496
497         * libio/iolibio.h (_IO_fclose, _IO_new_fclose, _IO_old_fclose,
498         _IO_fflush, _IO_fgetpos, _IO_fgetpos64, _IO_fgets, _IO_fopen,
499         _IO_old_fopen, _IO_new_fopen, _IO_fopen64, __fopen_internal,
500         _IO_fprintf, _IO_fputs, _IO_fsetpos, _IO_fsetpos64, _IO_ftell,
501         _IO_fread, _IO_fwrite, _IO_gets, _IO_printf, _IO_puts, _IO_scanf,
502         _IO_fflush_internal, _IO_ftell_internal, _IO_fputs_internal)
503         _IO_fwrite_internal): Remove incorrect __THROW.
504         * libio/libioP.h (_IO_default_xsputn, _IO_wdefault_xsputn,
505         _IO_default_xsgetn, _IO_wdefault_xsgetn, _IO_default_write,
506         _IO_default_read, _IO_getline, _IO_getline_info, _IO_getwline,
507         _IO_getwline_info, _IO_file_read_internal, _IO_sgetn_internal,
508         _IO_wdo_write_internal, _IO_do_write_internal,
509         _IO_getline_info_internal, _IO_getline_internal,
510         _IO_vfprintf_internal, _IO_putc_internal, _IO_read, _IO_write,
511         _IO_close): Likewise.
512
513 2004-11-26  Jakub Jelinek  <jakub@redhat.com>
514
515         * posix/Makefile (install-others): Add $(inst_libexecdir)/getconf.
516         (CFLAGS-sysconf.c): Add -D_GETCONF_DIR.
517         (CFLAGS-getconf.c): New.
518         ($(inst_libexecdir)/getconf): New.
519         * posix/confstr.c (confstr): Use __sysconf to query specifications
520         that don't have _POSIX_V6_* macros defined.  Use __*_{C,LD}FLAGS
521         macros defined in bits/environments.h.
522         * sysdeps/posix/sysconf.c: Include stdlib.h, string.h and
523         sys/stat.h.
524         (__sysconf_check_spec): New routine.
525         (__sysconf): Use it.
526         * posix/getconf.c (specs): Change into structure array.
527         (main): If -v is not given, try to get default from
528         $(libexecdir)/getconf/default.  If specification is not
529         supported by this getconf, try to execute
530         $(libexecdir)/getconf/$(specification).
531         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/environments.h: New file.
532         * sysdeps/unix/sysv/linux/s390/bits/environments.h: New file.
533         * sysdeps/unix/sysv/linux/powerpc/bits/environments.h: New file.
534         * sysdeps/unix/sysv/linux/sparc/bits/environments.h: New file.
535         * sysdeps/unix/sysv/linux/i386/bits/environments.h: New file.
536         * sysdeps/unix/sysv/linux/x86_64/bits/environments.h: New file.
537         * sysdeps/generic/bits/environments.h (__ILP32_OFFBIG_CFLAGS):
538         Define.
539
540         * stdlib/stdlib.h (setenv): Use nonnull only for second argument.
541         (unsetenv): Remove.
542
543 2004-11-23  Paolo Bonzini  <bonzini@gnu.org>
544
545         * posix/regcomp.c (analyze_tree): Always call calc_epsdest.
546         (calc_inveclosure): Use re_node_set_insert_last.
547         (parse_dup_op): Lower X{1,5} to (X(X(X(XX?)?)?)?)?
548         rather than X?X?X?X?X?.
549         * posix/regex_internal.h (re_node_set_insert_last): New declaration.
550         * posix/regex_internal.c (re_node_set_insert_last): New function.
551         * posix/PCRE.tests: Add testcases.
552
553 2004-11-25  Ulrich Drepper  <drepper@redhat.com>
554
555         * dlfcn/dlfcn.h: Remove nonnull attribute from dlopen.
556
557         * posix/confstr.c (confstr): Return appropriate strings for
558         _CS_LFS_LINTFLAGS, _CS_LFS64_CFLAGS, and _CS_LFS64_LINTFLAGS.
559
560 2004-11-05  Maciej W. Rozycki  <macro@mips.com>
561
562         * sysdeps/mips/dl-machine.h: Include <sgidefs.h>.  Use _ABIO32,
563         _ABIN32 and _ABI64 for ABI selection throughout.
564         * sysdeps/mips/elf/start.S: Likewise.
565         * sysdeps/mips/mips64/__longjmp.c: Likewise.
566         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
567         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
568         * sysdeps/mips/mips64/setjmp.S: Likewise.
569         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
570         * sysdeps/mips/sys/regdef.h: Likewise.
571         * sysdeps/mips/sys/ucontext.h: Likewise.
572         * sysdeps/unix/mips/sysdep.h: Likewise.
573         * sysdeps/unix/sysv/linux/kernel-features.h: Likewise.
574         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
575         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
576         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
577         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
578         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
579         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
580         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
581         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
582
583         * sysdeps/mips/atomicity.h: Use _ABIO32, _ABIN32 and _ABI64 for
584         ABI selection throughout.
585         * sysdeps/mips/bits/setjmp.h: Likewise.
586         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
587         * sysdeps/mips/machine-gmon.h: Likewise.
588         * sysdeps/mips/sys/asm.h: Likewise.
589         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
590         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
591         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
592         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
593         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
594         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
595         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
596         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
597
598         * sysdeps/mips/sgidefs.h: Prevent <asm/sgidefs.h> from being
599         included by kernel headers and undo its settings if already
600         included.  Define _ABIO32, _ABIN32 and _ABI64 if missing and use
601         them to define _MIPS_SIM_ABI32, _MIPS_SIM_NABI32 and
602         _MIPS_SIM_ABI64 for compatibility.
603         * sysdeps/unix/sysv/linux/mips/Makefile: Use _ABIO32, _ABIN32 and
604         _ABI64 for ABI selection in generated syscall-list.h
605         * sysdeps/unix/sysv/linux/mips/configure.in: Use _ABIO32, _ABIN32
606         and _ABI64 for ABI selection in generated asm-unistd.h.
607         * sysdeps/unix/sysv/linux/mips/configure: Regenerate.
608
609         * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Correct
610         an inverted _MIPS_SIM conditional.
611
612 2004-11-23  Alexandre Oliva  <aoliva@redhat.com>
613
614         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Use free
615         range even if it doesn't match exactly.
616
617 2004-11-23  Jakub Jelinek  <jakub@redhat.com>
618
619         * nss/nss_files/files-XXX.c (internal_getent): If parse_line returned
620         -1, also do H_ERRNO_SET (NETDB_INTERNAL).
621
622 2004-11-22  Ulrich Drepper  <drepper@redhat.com>
623
624         * sysdeps/i386/fpu_control.h: Add volatile to the asms.
625         Patch by Alexander Stohr.
626
627 2004-11-22  Jakub Jelinek  <jakub@redhat.com>
628
629         * nscd/nscd_getai (__nscd_getai): Avoid memory and file descriptor
630         leaks.
631         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free air.
632
633 2004-11-15  Maciej W. Rozycki  <macro@mips.com>
634
635         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h (__SI_MAX_SIZE):
636         Define appropriately based on __WORDSIZE.
637         [struct siginfo] (__pad0): Add for explicit padding.
638
639         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Formatting fixes
640         throughout.
641
642 2004-11-22  Ulrich Drepper  <drepper@redhat.com>
643
644         * dirent/dirent.h: Add nonnull attributes.
645         * dlfcn/dlfcn.h: Likewise.
646
647 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
648
649         * sysdeps/ieee754/k_standard.c: Document code 50.
650         (__kernel_standard) <case 50>: Avoid raising div-by-zero
651         exception again.
652
653 2004-11-19  H.J. Lu  <hongjiu.lu@intel.com>
654
655         [BZ #552]
656         * math/libm-test.inc (tgamma_test): Update tgamma (0) and
657         tgamma (-0).
658         * sysdeps/generic/w_tgamma.c (__tgamma): Properly handle |x| == 0.
659         * sysdeps/generic/w_tgammaf.c (__tgammaf): Likewise.
660         * sysdeps/generic/w_tgammal.c (__tgammal): Likewise.
661         * sysdeps/ieee754/dbl-64/e_gamma_r.c (__ieee754_gamma_r): Likewise.
662         * sysdeps/ieee754/flt-32/e_gammaf_r.c: Likewise.
663         * sysdeps/ieee754/ldbl-128/e_gammal_r.c: Likewise.
664         * sysdeps/ieee754/ldbl-96/e_gammal_r.c: Likewise.
665         * sysdeps/ieee754/k_standard.c (__kernel_standard): Handle
666         tgamma (0) and tgamma (-0).
667
668 2004-11-20  Ulrich Drepper  <drepper@redhat.com>
669
670         * time/tzfile.c (__tzfile_read): Avoid open for checking whether
671         the file we already use changed.
672
673         * misc/syslog.c: Remove !USE_IN_LIBIO code.
674
675 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
676
677         * signal/signal.h (__sysv_signal, sysv_signal, signal, bsd_signal,
678         ssignal): Remove __nonnull attribute.
679
680 2004-11-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
681
682         * sysdeps/unix/sysv/linux/sh/sys/procfs.h: New file.
683
684 2004-11-20  Ulrich Drepper  <drepper@redhat.com>
685
686         * signal/signal.h: Add nonnull attributes.
687
688         * signal/signal.h: Add deprecated attributes to sigstack,
689         sigpause, sigblock, sigsetmask, siggetmask.
690
691 2004-11-20  Jakub Jelinek  <jakub@redhat.com>
692
693         * sysdeps/unix/sysv/linux/bits/socket.h (SCM_RIGHTS): Avoid
694         comma at the end of enum if __USE_BSD is not defined.
695
696 2004-11-19  Ulrich Drepper  <drepper@redhat.com>
697
698         * malloc/malloc.c (_int_malloc): Check for corruption of chunk
699         which is about to be returned.
700
701         * malloc/malloc.c (_int_free): Add a few more cheap tests for
702         corruption.
703
704 2004-11-17  Randolph Chung  <tausq@debian.org>
705
706         * sysdeps/hppa/dl-machine.h (TRAMPOLINE_TEMPLATE): Add unwind
707         annotations.
708
709 2004-11-18  Jakub Jelinek  <jakub@redhat.com>
710
711         [BZ #544]
712         * posix/regex.h (RE_NO_SUB): New define.
713         * posix/regex_internal.h (OP_DELETED_SUBEXP): New.
714         (re_dfa_t): Add subexp_map.
715         * posix/regcomp.c (struct subexp_optimize): New type.
716         (optimize_subexps): New routine.
717         (re_compile_internal): Call it.
718         (re_compile_pattern): Set preg->no_sub to 1 if RE_NO_SUB.
719         (free_dfa_content): Free subexp_map.
720         (calc_inveclosure, calc_eclosure): Skip OP_DELETED_SUBEXP nodes.
721         * posix/regexec.c (re_search_internal): If subexp_map
722         is not NULL, duplicate registers as needed.
723         * posix/Makefile: Add rules to build and run tst-regex2.
724         * posix/tst-regex2.c: New test.
725         * posix/rxspencer/tests: Fix last two tests (\0 -> \1).
726         Add some new tests for nested subexpressions.
727
728 2004-11-18  Ulrich Drepper  <drepper@redhat.com>
729
730         * libio/libio.h (_IO_FLAGS2_FORTIFY): Renamed from
731         _IO_FLAGS2_CHECK_PERCENT_N.
732         * debug/fprintf_chk.c: Adjust all users.
733         * debug/printf_chk.c: Likewise.
734         * debug/vfprintf_chk.c: Likewise.
735         * debug/vprintf_chk.c: Likewise.
736         * debug/vsnprintf_chk.c: Likewise.
737         * debug/vsprintf_chk.c: Likewise.
738         * stdio-common/vfprintf.c: Likewise.  Detect missing %N$ formats.
739         * debug/tst-chk1.c: Test detection of missing %N$ formats.
740
741 2004-11-15  Jakub Jelinek  <jakub@redhat.com>
742
743         * posix/bug-regex24.c: Include string.h.
744
745         * nis/nis_clone_obj.c (nis_clone_object): Rename out3 label to out2
746         and out2 to out.  Remove out label.  Formatting.
747
748 2004-11-15  Ulrich Drepper  <drepper@redhat.com>
749
750         * include/stdio.h: Do not mark __libc_message as noreturn.
751         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Add loop to
752         fool gcc.  Include <stdbool.h>.
753         * sysdeps/posix/libc_fatal.c (__libc_fatal): Add loop to fool gcc.
754         (__libc_message): Fix typo.
755
756 2004-11-13  Ulrich Drepper  <drepper@redhat.com>
757
758         * malloc/malloc.c (malloc_state): stat_lock_* elements need only
759         be defined if THREAD_STATS is defined.  Remove pad0_ since it does
760         not align with cache line sizes in general anyway.
761
762 2004-11-13  Jakub Jelinek  <jakub@redhat.com>
763
764         * elf/rtld.c (print_statistics): Avoid segfaults if not all namespaces
765         are used.  Fix computation of num_relative_relocations on RELA
766         architectures other than IA-64 and Alpha.
767
768 2004-11-13  Ulrich Drepper  <drepper@redhat.com>
769
770         * malloc/malloc.c (_int_free): Use munmap_chunk for handling
771         mmaped memory.
772
773 2004-11-12  Ulrich Drepper  <drepper@redhat.com>
774
775         * malloc/malloc.c (_int_free): Remove test for NULL parameter.
776         (_int_realloc): Call _int_free only if memory parameter is not NULL.
777
778         * sysdeps/unix/sysv/linux/libc_fatal.c: Add new function __libc_message
779         which performs the printing and simple format string handling.  The
780         string is written to tty, stderr, syslog in this order, stopping after
781         the first successful output.
782         (__libc_fatal): Call __libc_message.
783         * include/stdio.h: Declare __libc_message.
784         * malloc/malloc.c (malloc_printerr): Use __libc_message.
785         * debug/chk_fail.c: Also print message with __libc_message.
786         * debug/test-strcpy_chk.c: Ensure that debug messages are not printed
787         to the terminal or stderr.
788         * debug/tst-chk1.c: Likewise.
789
790         * posix/Makefile: Remove gpl2lgpl variable.
791
792 2004-11-12  Martin Schwidefsky  <schwidefsky@de.ibm.com>
793
794         * elf/elf.h: Add 20 bit relocations R_390_*20.
795
796 2004-11-12  Jakub Jelinek  <jakub@redhat.com>
797
798         * sysdeps/unix/sysv/linux/i386/setuid.c: Include linux/posix_types.h.
799         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
800         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
801         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
802         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
803         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
804
805 2004-11-12  Andreas Schwab  <schwab@suse.de>
806
807         * nis/ypclnt.c (ypprot_err): Fix "minor optimizations".
808
809 2004-11-12  Ulrich Drepper  <drepper@redhat.com>
810
811         * posix/Makefile (tests): Add bug-regex24.
812         * posix/bug-regex24.c: New file.
813
814 2004-11-12  Paolo Bonzini  <bonzini@gnu.org>
815
816         * posix/regexec.c (check_dst_limits_calc_pos_1): Use the map to
817         cut recursive paths.  Make exit condition more precise.
818         (match_ctx_add_entry): Initialize the map.
819         * posix/regex_internal.h (struct re_backref_cache_entry): Add a map of
820         reachable subexpression nodes from each backreference cache entry.
821
822 2004-11-10  Jakub Jelinek  <jakub@redhat.com>
823
824         * sysdeps/unix/sysv/linux/setreuid.c: Remove sys/syscall.h,
825         sys/types.h, linux/posix_types.h, sysdep.h and pthread-functions.h
826         includes.  Include setxid.h.  Use INLINE_SETXID_SYSCALL macro
827         instead of INLINE_SYSCALL, kill the HAVE_PTR__NPTL_SETXID guarded
828         snippets.
829         * sysdeps/unix/sysv/linux/setegid.c: Likewise.
830         * sysdeps/unix/sysv/linux/setuid.c: Likewise.
831         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
832         * sysdeps/unix/sysv/linux/setgid.c: Likewise.
833         * sysdeps/unix/sysv/linux/setresuid.c: Likewise.
834         * sysdeps/unix/sysv/linux/setresgid.c: Likewise.
835         * sysdeps/unix/sysv/linux/setregid.c: Likewise.
836         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
837         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
838         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
839         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
840         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
841         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
842         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
843         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
844         * sysdeps/unix/sysv/linux/alpha/setreuid.c: Likewise.
845         Formatting.  Change signed int into int.
846         * sysdeps/unix/sysv/linux/alpha/setresuid.c: Likewise.
847         * sysdeps/unix/sysv/linux/alpha/setresgid.c: Likewise.
848         * sysdeps/unix/sysv/linux/alpha/setregid.c: Likewise.
849         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
850         Remove.
851         * sysdeps/unix/setxid.h: New file.
852
853         * Rules (binaries-static): Add xtests-static.
854         * Makeconfig (run-program-prefix): Filter also xtests-static.
855
856 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu.
857
858         [BZ #535]
859         * time/difftime.c: Fix a double-rounding bug on hosts with
860         64-bit time_t and long double being IEEE double.  Also, port
861         to more valid C99 hosts, even those that have padding bits.
862         Don't include <values.h> since it is marked as an obsolescent
863         interface.  Include <limits.h>, <float.h>, and <stdint.h> instead.
864         (TYPE_BITS, TYPE_FLOATING, TYPE_SIGNED): New macros.
865         (subtract): New static function, that works correctly without
866         double-rounding, even on hosts with 64-bit time_t.  Also cater
867         to hosts with padding bits.
868         (__difftime): Use it.  Use DBL_MANT_DIG and LDBL_MANT_DIG to
869         determine whether floating types are wide enough: the old
870         test (which used sizeof) could in theory report the wrong results
871         on hosts with padding bits in floating-point values.
872
873 2004-11-11  Simon Josefsson  <jas@extundo.com>
874
875         [BZ #542]
876         * sysdeps/generic/strtok_r.c [HAVE_CONFIG_H]: Include config.h.
877         [!_LIBC]: Include strtok_r.h (in gnulib), map __strtok_r to
878         strtok_r and __rawmemchr to strch.
879         (__strtok_r): Use C89 prototype.
880         [weak_alias]: Move calls to libc_hidden_def and weak_alias into
881         this #ifdef.
882
883 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
884
885         [BZ #541]
886         * time/mktime.c (SHR): New macro, which is a portable
887         substitute for >> that should work even on Crays.
888         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
889         Problem reported by Mark D. Baushke in
890         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
891
892 2004-11-09  Paolo Bonzini  <bonzini@gnu.org>
893
894         * posix/regexec.c (match_ctx_free_subtops): Remove, merge into...
895         (match_ctx_clean): ... this function.
896         (match_ctx_free): Call match_ctx_clean.
897
898         * posix/regexec.c (transit_state): Remove the check for
899         out-of-bounds buffers.
900         (check_matching): Check here for out-of-bounds buffers.
901         (re_search_internal): Store into match_kind a set of bits
902         indicating which incantation of fastmap scanning must be
903         used.  Use a switch statement instead of multiple ifs.
904         Exit the final "for (;;)" with goto free_return unless
905         the match succeeded, thus simplifying some conditionals.
906
907         * posix/regex_internal.c (re_string_reconstruct,
908         re_string_context_at): Add several branch predictions for
909         case-sensitive matching and no transition table being used.
910
911 2004-11-10  Ulrich Drepper  <drepper@redhat.com>
912
913         * posix/tst-waitid.c: Don't use error to print error message, they
914         won't end up in the .out file.
915
916 2004-11-09  Ulrich Drepper  <drepper@redhat.com>
917
918         * nscd/nscd-client.h (libc_locked_map_ptr): Add new first
919         parameter, used as class for definition.
920         * nscd/nscd_getpw_r.c: Adjust for libc_locked_map_ptr change.
921         (pw_map_free): Ensure no crash after memory is freed.
922         * nscd/nscd_getgr_r.c: Likewise.  Make map externally visible.
923         * nscd/nscd_gethst_r.c: Likewise.
924         * nscd/nscd_getai.c: Use map from nscd_gethost.c.
925         * nscd/nscd_initgroups.c: Use map from nscd_getgr.c.
926
927         * nscd/nscd_getai.c: Add some checks to detect corrupt databases.
928         * nscd/nscd_getgr_r.c: Likewise
929         * nscd/nscd_gethst_r.c: Likewise.
930         * nscd/nscd_getpw_r.c: Likewise
931
932 2004-11-09  Jakub Jelinek  <jakub@redhat.com>
933
934         * posix/regcomp.c (calc_eclosure_iter): Don't access
935         dfa->edests[node].elems[0] if dfa->edests[node].nelem == 0.
936         * posix/rxspencer/tests: Add 5 new tests.
937
938 2004-11-09  Ulrich Drepper  <drepper@redhat.com>
939
940         * sysdeps/unix/sysv/linux/ifaddrs.c: Determine sin6_scope_id field
941         value correctly.  Patch by Mitsuru Kanda <mk@karaba.org>.
942
943 2004-11-04  Jakub Jelinek  <jakub@redhat.com>
944
945         * libio/fileops.c (_IO_new_file_seekoff): If mode is 0 and
946         fp->_offset == _IO_pos_BAD, just call _IO_SYSSEEK (fp, 0, dir)
947         and if successful set fp->_offset.
948         * libio/Makefile (tests): Add bug-ungetc3.
949         * libio/bug-ungetc3.c: New test.
950
951 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
952
953         * sysdeps/gnu/_G_config.h (_G_HAVE_MREMAP): Define symbol.
954         * sysdeps/mach/hurd/_G_config.h: New file.
955         * libio/fileops.c (mmap_remap_check) [__linux__]: Replaced with
956         [_G_HAVE_MREMAP].
957
958 2004-11-08  Ulrich Drepper  <drepper@redhat.com>
959
960         * posix/regcomp.c (utf8_sb_map): Define.
961         (free_dfa_content): Don't free dfa->sb_char if it's a pointer to
962         utf8_sb_map.
963         (init_dfa): Use utf8_sb_map instead of initializing memory when the
964         encoding is UTF-8.
965
966 2004-11-03  Paolo Bonzini  <bonzini@gnu.org>
967
968         * posix/regcomp.c (init_dfa): Get the codeset name outside glibc as
969         well.  Check if it is spelled UTF8 as well as UTF-8, and check
970         case-insensitively.  Set dfa->map_notascii manually when outside
971         glibc.
972         * posix/regex_internal.c (build_wcs_upper_buffer) [!_LIBC]: Enable
973         optimizations based on map_notascii.
974         * posix/regex_internal.h [HAVE_LANGINFO_H || HAVE_LANGINFO_CODESET
975         || _LIBC]: Include langinfo.h.
976
977         * posix/regex_internal.h (struct re_backref_cache_entry): Add "more"
978         field.
979         * posix/regexec.c (check_dst_limits): Hoist computation of the source
980         and destination bkref_idx out of the loop.  Pass it to
981         check_dst_limits_calc_pos.
982         (check_dst_limits_calc_pos_1): New function, containing the recursive
983         loop of check_dst_limits_calc_pos; uses the "more" field of
984         struct re_backref_cache to control the loop.
985         (check_dst_limits_calc_pos): Store into "boundaries" the position
986         relative to lim's start and end positions.  Do not accept eclosures,
987         accept bkref_idx instead.  Call check_dst_limits_calc_pos_1 to do the
988         work.
989         (sift_states_bkref): Use the "more" field of struct re_backref_cache
990         to control the loop.  A big "if" was turned into a continue and the
991         function was reindented.
992         (get_subexp): Use the "more" field of struct re_backref_cache
993         to control the loop.
994         (match_ctx_add_entry): Initialize the bkref_ents' "more" field.
995         (search_cur_bkref_entry): Return -1 if out of bounds.
996
997         * posix/regexec.c (empty_set): Remove.
998         (sift_states_backward): Remove cur_src variable.  Move inner loop
999         to build_sifted_states.
1000         (build_sifted_states): Extract from sift_states_backward.  Do not
1001         use empty_set.
1002         (update_cur_sifted_state): Do not use empty_set.  Special case
1003         dest_nodes->nelem == 0.
1004
1005         * posix/regex_internal.h (struct re_backref_cache_entry): Remove flag
1006         field.
1007         (struct re_sift_context_t): Remove cur_bkref, cls_subexp_idx,
1008         check_subexp fields.  Move limits last.
1009         * posix/regexec.c (match_ctx_clear_flag): Remove.
1010         (sift_ctx_init): Remove check_subexp parameter.  Do not set removed
1011         fields.  Callers adjusted.
1012         (expand_bkref_cache): Remove last_str parameter.  Callers adjusted.
1013         (re_search_internal): Remove fast_translate variable.
1014         (update_cur_sifted_state): Pass candidates as the final parameter
1015         to sift_states_bkref.
1016         (sift_states_bkref): Change last unused parameter to be "candidates",
1017         do not fetch candidates into a local variable.
1018         Remove dead test for "node == sctx->bkref", and the cur_bkref_idx
1019         variable.
1020         Remove loops that set/reset the flag field of backref cache entries.
1021         (check_arrival_add_next_nodes): Use a signed int to hold the return
1022         value of re_node_set_insert.
1023         (group_nodes_into_DFAstates): Likewise.
1024         (match_ctx_add_entry): Do not set the flag field of the new entry.
1025
1026 2004-11-05  Roland McGrath  <roland@redhat.com>
1027
1028         * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Define
1029         _dl_sysinfo_dso under [NEED_DL_SYSINFO_DSO] as well.
1030         * elf/rtld.c (dl_main): Set up GLRO(dl_sysinfo_dso) under
1031         [NEED_DL_SYSINFO_DSO] as well.
1032         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Always include
1033         AT_SYSINFO and AT_SYSINFO_EHDR in name table.
1034         (_dl_sysdep_start) [NEED_DL_SYSINFO_DSO]: Match AT_SYSINFO_EHDR.
1035         * elf/dl-support.c (_dl_sysinfo_dso): Define also under
1036         [NEED_DL_SYSINFO_DSO].
1037         (_dl_aux_init) [NEED_DL_SYSINFO || NEED_DL_SYSINFO_DSO]:
1038         Match AT_SYSINFO_EHDR and set GL(dl_sysinfo_dso).
1039
1040 2004-11-05  Roland McGrath  <roland@redhat.com>
1041
1042         * manual/errno.texi (Error Codes): Revert last change for now.
1043         * sysdeps/gnu/errlist.c: Regenerated.
1044
1045 2004-11-04  Roland McGrath  <roland@frob.com>
1046
1047         * Makeconfig (link-libc, rpath-dirs): Remove AIX cruft definitions.
1048         (LDFLAGS-rpath-ORIGIN, LDFLAGS-soname-fname): Likewise.
1049         (LDFLAGS-rdynamic, LDFLAGS-Bsymbolic): Likewise.
1050         ($(common-objpfx)gnu/lib-names.stmp): Likewise.
1051
1052 2004-11-01  Jakub Jelinek  <jakub@redhat.com>
1053
1054         * sysdeps/unix/sysv/linux/x86_64/sys/procfs.h [__WORDSIZE == 32]
1055         (elf_fpxregset_t): New type.
1056         (struct elf_prpsinfo): If __WORDSIZE == 32, change pr_[ug]id type
1057         to unsigned short int.
1058         * sysdeps/unix/sysv/linux/x86_64/sys/user.h
1059         (struct user_fpregs_struct): Fix comment.
1060         * sysdeps/i386/fpu/bits/mathdef.h (float_t, double_t): If
1061         __FLOAT_EVAL_METHOD__ is defined and 0, typedef to float resp. double.
1062         * sysdeps/x86_64/fpu/bits/mathdef.h: Include bits/wordsize.h.
1063         (float_t, double_t): If -m32 and not -mfpmath=sse, typedef to
1064         long double.
1065         * sysdeps/x86_64/fpu/bits/fenv.h: Include bits/wordsize.h.
1066         (fenv_t): Remove __mxcsr field for -m32.
1067
1068 2004-11-04  Jakub Jelinek  <jakub@redhat.com>
1069
1070         * libio/ftello.c (ftello): Don't subtract save_end - save_base
1071         if pos is _IO_pos_BAD.
1072         * libio/ftello64.c (ftello64): Likewise.
1073         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
1074         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
1075         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
1076         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
1077         * libio/ioftell.c (_IO_ftell): Likewise.
1078         Cast to long int instead of off_t when checking for overflow.
1079
1080 2004-11-04  Richard Henderson  <rth@redhat.com>
1081
1082         * sysdeps/unix/sysv/linux/alpha/register-dump.h (regnames): Align.
1083         (linefeed): Remove.
1084         (register_dump): Rewrite to generate into a flat buffer instead
1085         of into iovecs.
1086
1087 2004-11-02  Jakub Jelinek  <jakub@redhat.com>
1088
1089         * debug/tst-chk1.c (ret): New volatile variable.
1090         (CHK_FAIL_END): Remove redundant ret setting.
1091         (do_test): Remote ret variable.
1092
1093 2004-01-03  Paolo Bonzini  <bonzini@gnu.org>
1094
1095         * posix/regex_internal.h (__regfree) [!_LIBC]: Define to regfree.
1096
1097 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
1098
1099         * sysdeps/generic/utime.c: Include <stddef.h>.
1100
1101         * sysdeps/generic/sysconf.c: Include <grp.h> and <pwd.h>.
1102
1103         * sysdeps/generic/tempname.c (__path_search): Add missing argument
1104         TRY_TMPDIR.
1105
1106 2004-10-31  Mariusz Mazur <mmazur@kernel.pl>
1107
1108         * sysdeps/unix/sysv/linux/alpha/setregid.c: New file.
1109         * sysdeps/unix/sysv/linux/alpha/setresgid.c: New file.
1110         * sysdeps/unix/sysv/linux/alpha/setresuid.c: New file.
1111         * sysdeps/unix/sysv/linux/alpha/setreuid.c: New file.
1112
1113 2004-10-27  Derek R. Price  <derek@ximbiot.com>
1114
1115         [BZ #487] This change is imported from gnulib.
1116         * time/mktime.c (not_equal_tm) [DEBUG]: Remove redundant check.
1117
1118 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
1119
1120         [BZ #473]
1121         * time/tst-mktime.c (main): Don't assume that mktime fails
1122         when given time stamps before 1970.  It returns negative
1123         time_t values instead, for compatibility with BSD.
1124
1125         * time/tst-mktime2.c: New file.
1126         * time/Makefile (tests): Add it.
1127
1128         [BZ #473] Import from gnulib.  Revamp to avoid several problems near
1129         time_t extrema, and on hosts with 64-bit time_t and 32-bit int.
1130         This fixes Debian bug 177940.
1131         * time/mktime.c (TIME_T_MIDPOINT): New macro.
1132         (ydhms_diff): Renamed from ydhms_tm_diff, with a new signature,
1133         which avoids overflow problems on hosts with 64-bit time_t and
1134         32-bit int.  All callers changed.  Now an inline function.
1135         Verify at compile-time that long int is wide enough to avoid
1136         these overflow problems.
1137         (guess_time_tm): New function.
1138         (__mktime_internal): Use it.  Avoid overflow when computing yday on
1139         hosts with 64-bit long and 32-bit int.  Remove tests for 69;
1140         no longer needed.  Use if rather than #ifdef for LEAP_SECONDS_POSSIBLE
1141         so that the code is checked by more compilers.
1142         Do not rely on floating point to probe: stick to integer arithmetic,
1143         to avoid potential porting problems.
1144         Repair potential overflow correctly in the Southern Hemisphere.
1145         (localtime_offset): Add a FIXME for the case where time_t is unsigned.
1146
1147 2004-10-30  Andreas Schwab  <schwab@suse.de>
1148
1149         * sysdeps/m68k/dl-machine.h (elf_machine_rela)
1150         (elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
1151         instead of static.
1152
1153 2004-10-30  Andreas Schwab  <schwab@suse.de>
1154
1155         * sysdeps/unix/sysv/linux/waitid.c: Include <stddef.h> for NULL.
1156
1157 2004-10-30  Ulrich Drepper  <drepper@redhat.com>
1158
1159         * malloc/malloc.c (_int_free): Use unique comments for the error
1160         cases.
1161
1162 2004-10-28  Roland McGrath  <roland@frob.com>
1163
1164         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_fork): Use i386_thread_state
1165         instead of machine_thread_state.
1166
1167 2004-10-28  Roland McGrath  <roland@redhat.com>
1168
1169         * sysdeps/unix/sysv/linux/syscalls.list: Remove setaltroot.
1170
1171 2004-10-28  Ulrich Drepper  <drepper@redhat.com>
1172
1173         * elf/dl-open.c (dl_open_worker): Remove reference to glibcbug script.
1174
1175 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
1176
1177         * elf/dl-load.c (_dl_map_object): Use cache_rpath to check for
1178         existing rpath in main executable, not explicit test.
1179
1180 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
1181
1182         * include/resolv.h (_res_opcodes): New extern.
1183         Add libresolv_hidden_proto.
1184         * resolv/res_debug.c (_res_opcodes): Remove.
1185         (__p_class_syms, __p_type_syms): Add libresolv_hidden_proto
1186         and libresolv_hidden_data_def.  Remove attribute_hidden.
1187         * resolv/res_mkquery (_res_opcodes): Remove.
1188         * resolv/res_data.c (_res_opcodes): Remove attribute_hidden.
1189         Add libresolv_hidden_data_def.
1190
1191 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
1192
1193         * elf/dl-open.c (_dl_open): Don't allow explicitly opening a DSO
1194         into an empty namespace.
1195
1196         * elf/dl-fini.c (_dl_fini): Fix search for map in maps array.
1197         Reverse order of namespaces.
1198         * elf/Makefile: Add rules to build and run tst-dlmopen3.
1199         * elf/tst-dlmopen3.c: New file.
1200         * elf/tst-dlmopen1mod.c: Add check whether constructor runs.
1201
1202 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
1203
1204         * sysdeps/generic/glob.c (globfree): Clear gl_pathv after freeing it.
1205         * posix/Makefile: Add rules to build and run bug-glob2 test.
1206         * posix/bug-glob2.c: New test.
1207
1208 2004-10-27  Roland McGrath  <roland@frob.com>
1209
1210         * sysdeps/mach/hurd/i386/tls.h (HURD_TLS_DESC_DECL): New macro.
1211         (_hurd_tls_init): Use it.
1212         (_hurd_tls_fork): New function.
1213         * sysdeps/mach/hurd/fork.c (__fork) [USE_TLS]: Call it.
1214
1215 2004-10-26  Roland McGrath  <roland@frob.com>
1216
1217         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Initialize TCB->tcb.
1218
1219 2004-10-26  Jakub Jelinek  <jakub@redhat.com>
1220
1221         * sysdeps/gnu/netinet/udp.h (struct udphdr): Use u_int16_t
1222         type instead of uint16_t.  Formatting.
1223
1224 2004-10-25  Roland McGrath  <roland@redhat.com>
1225
1226         * login/openpty.c (openpty): Add libutil_hidden_def.
1227
1228         * nss/nss_files/files-parse.c (nss_files_parse_hidden_def): Define to
1229         either libc_hidden_def or libnss_files_hidden_def, not hidden_def.
1230         This file is also compiled into libnss_hesiod by #include.
1231
1232 2004-10-25  Roland McGrath  <roland@frob.com>
1233
1234         * sysdeps/unix/bsd/hp: Directory and all files removed.
1235         These are now in the ports repository.
1236         * sysdeps/unix/bsd/osf: Likewise.
1237         * sysdeps/unix/bsd/sequent: Likewise.
1238         * sysdeps/unix/bsd/sony: Likewise.
1239         * sysdeps/unix/bsd/ultrix4: Likewise.
1240         * sysdeps/unix/sysv/aix: Likewise.
1241         * sysdeps/unix/sysv/hpux: Likewise.
1242         * sysdeps/unix/sysv/irix4: Likewise.
1243         * sysdeps/unix/sysv/isc2.2: Likewise.
1244         * sysdeps/unix/sysv/minix: Likewise.
1245         * sysdeps/unix/sysv/sco3.2.4: Likewise.
1246         * sysdeps/unix/sysv/sco3.2: Likewise.
1247         * sysdeps/unix/sysv/sysv4: Likewise.
1248
1249         * configure.in (ASM_LINE_SEP): Move this setting to ...
1250         * sysdeps/hppa/configure.in: ... here, new file.
1251         * sysdeps/hppa/configure: New generated file.
1252         * configure: Regenerated.
1253
1254 2004-10-25  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1255
1256         * sysdeps/sh/dl-machine.h: Include sysdep.h.
1257         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add CFI directives.
1258         (elf_machine_runtime_setup): Add always_inline attribute.
1259         (_dl_start_user): Pass the correct environ.
1260         (elf_machine_rela): Replace static inline by auto inline, add
1261         always_inline attribute.
1262         (elf_machine_rela_relative): Likewise.
1263         (elf_machine_lazy_rel): Likewise.
1264
1265 2004-10-24  Ulrich Drepper  <drepper@redhat.com>
1266
1267         * nis/nis_call.c: Pretty printing.  Minor cleanups.
1268         * nis/nis_addmember.c (nis_addmember): Add assert to check buffer
1269         bounds.
1270
1271         * resolv/nss_dns/dns-host.c: Avoid using PLTs.
1272         * include/libc-symbols.h: Define hidden attribute macros for
1273         libnss_nisplus and libutil.
1274         * include/utmp.h: Add libutil_hidden_proto for login_tty.
1275         * login/login_tty.c: Add libutil_hidden_def.
1276         * nis/nisplus-parser.h: Add libnss_nisplus_hidden_proto for parsers.
1277         * nis/nss_nisplus/nisplus-parser.c: Add libnss_nisplus_hidden_def.
1278         * include/pty.h: New file.
1279         * include/rpcsvc/yp.h: New file.
1280         * include/rpcsvc/ypclnt.h: New file.
1281         * include/rpcsvc/ypupd.h: New file.
1282         * include/libc-symbols.h: Define hidden attribute macros for libnsl.
1283         * include/rpcsvc/nislib.h: Use libnsl_hidden_proto for various
1284         functions.
1285         * nis/nis_add.c: Add libnsl_hidden_def.  Minor optimizations.
1286         * nis/nis_call.c: Likewise.
1287         * nis/nis_clone_obj.c: Likewise.
1288         * nis/nis_defaults.c: Likewise.
1289         * nis/nis_domain_of_r.c: Likewise.
1290         * nis/nis_error.c: Likewise.
1291         * nis/nis_file.c: Likewise.
1292         * nis/nis_free.c: Likewise.
1293         * nis/nis_local_names.c: Likewise.
1294         * nis/nis_lookup.c: Likewise.
1295         * nis/nis_modify.c: Likewise.
1296         * nis/nis_print.c: Likewise.
1297         * nis/nis_remove.c: Likewise.
1298         * nis/nis_subr.c: Likewise.
1299         * nis/nis_table.c: Likewise.
1300         * nis/nis_util.c: Likewise.
1301         * nis/yp_xdr.c: Likewise.
1302         * nis/ypclnt.c: Likewise.
1303         * nis/ypupdate_xdr.c: Likewise.
1304
1305         * resolv/res_send.c (send_dg): Cope with failures.
1306
1307         * include/libc-symbols.h: Define hidden attribute macros for
1308         libnss_files.
1309         * include/netdb.h: Use libnss_files_hidden_proto for the parsers
1310         defined in libnss_files, not libc_hidden_proto.
1311         * include/netinet/ether.h: Likewise.
1312         * include/rpc/netdb.h: Likewise.
1313         * nss/nss_files/files-parse.c: Use hidden_def in parser definitions
1314         instead of libc_hidden_def.
1315         * nss/nss_files/files-netgrp.c: Add libnss_files_hidden_def to
1316         _nss_netgroup_parseline definition.
1317
1318 2004-10-23  Roland McGrath  <roland@frob.com>
1319
1320         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Don't return early
1321         after an RPC succeeds.
1322
1323         * sysdeps/vax, sysdeps/unix/bsd/vax: Directories and all files removed.
1324         These are now in the ports repository.
1325         * sysdeps/tahoe, sysdeps/unix/bsd/tahoe: Likewise.
1326         * sysdeps/cris, sysdeps/unix/sysv/linux/cris: Likewise.
1327         * sysdeps/am29k, sysdeps/i860, sysdeps/i960, sysdeps/m88k: Likewise.
1328         * sysdeps/standalone, sysdeps/z8000: Likewise.
1329
1330 2004-10-23  Ulrich Drepper  <drepper@redhat.com>
1331
1332         * resolv/res_send.c (send_dg): Combine write and read to socket
1333         into one loop.
1334
1335 2004-10-22  Roland McGrath  <roland@frob.com>
1336
1337         * Makefile (%.bz2, %.gz): Move these pattern rules ...
1338         * Makerules: ... to here.
1339
1340 2001-10-31  Alexandre Oliva  <aoliva@redhat.com>
1341
1342         * elf/elf.h: Add R_MN10300_* relocation numbers.
1343
1344 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
1345
1346         [BZ #471] Fix imported from gnulib.
1347         * time/mktime.c (leapyear, ydms_tm_diff): Year is of type
1348         long int, not int, to avoid problems when tm_year == INT_MAX
1349         and tm_mon > 12.
1350         (__mktime_intenral): Compute year using long int arithmetic,
1351         not int arithmetic, to avoid problems on hosts where time_t
1352         and long are 64 bits but int is 32.
1353
1354         [BZ #468] Import a fix from gnulib.
1355         * time/mktime.c [! DEBUG]: Do not include <string.h>.
1356         It's needed only if DEBUG is nonzero.
1357
1358         [BZ #470] Import fix from gnulib.
1359         * time/mktime.c [!_LIBC] (__mktime_internal): Define to
1360         mktime_internal, to avoid clashes with any __mktime_internal
1361         function defined in the standard library.
1362
1363         [BZ #469] Imported from gnulib.
1364         * time/mktime.c (__isleap): Remove; all uses replaced by:
1365         (leapyear): New function, which avoids overflow by not adding
1366         1900 to year before testing whether it is a leap year.
1367
1368         [BZ #472] Imported from gnulib.
1369         * time/mktime.c (Local Variables): Remove -DHAVE_TIME_R_POSIX;
1370         no longer used.
1371
1372 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
1373
1374         * resolv/res_send.c: Remove compatibility code which is unused in
1375         glibc and probably bitrotten.
1376
1377         * debug/execinfo.h: Remove __THROW from backtrace prototype.
1378
1379 2004-10-22  Jakub Jelinek  <jakub@redhat.com>
1380
1381         * sysdeps/i386/Makefile (CFLAGS-backtrace.c): Add -fexceptions.
1382         * sysdeps/i386/backtrace.c: Include <bits/libc-lock.h>, <dlfcn.h>,
1383         <stdlib.h> and <unwind.h>.  Remove <bp-checks.h> include.
1384         (struct trace_arg): New type.
1385         (unwind_backtrace, unwind_getip, unwind_getcfa, unwind_getgr): New
1386         fn pointers resp. macros.
1387         (init, backtrace_helper): New functions.
1388         (__backtrace): Rewritten to use _Unwind_Backtrace first and fall
1389         back to frame pointer walking.
1390
1391 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
1392
1393         * sysdeps/unix/sysv/linux/Versions: Things are still in flux, it
1394         seems.  Undo last additions.
1395
1396 2004-10-21  Ulrich Drepper  <drepper@redhat.com>
1397
1398         * posix/execvp.c (execvp): Also ignore ENODEV and ETIMEDOUT errno
1399         values.
1400
1401 2004-10-20  Roland McGrath  <roland@redhat.com>
1402
1403         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Check also
1404         $(config-sysdirs) for shlib-versions files.
1405
1406         * Makeconfig ($(common-objpfx)soversions.i): Replace shell loop with
1407         use of ...
1408         * scripts/soversions.awk: ... this new file.  Collect lib info and
1409         match any DEFAULT line before emitting anything, so DEFAULT can come
1410         later in the concatenation of shlib-versions files.
1411
1412         * manual/errno.texi (Error Codes): Add ENOKEY, EKEYEXPIRED,
1413         EKEYREVOKED, EKEYREJECTED.
1414         * sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.3.4): New errlist.
1415         * sysdeps/gnu/errlist.c: Regenerated
1416
1417         * sysdeps/gnu/errlist-compat.awk: Don't bail if Versions gives a count
1418         higher than ERR_MAX reports.  Instead, emit a #define ERR_MAX.
1419         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.h): New target.
1420         (generated): Add errlist-compat.h.
1421         * sysdeps/gnu/errlist.awk: Make output #include <errlist-compat.h> to
1422         define ERR_MAX and use that for table size.
1423
1424 2004-10-20  Ulrich Drepper  <drepper@redhat.com>
1425
1426         * sysdeps/unix/sysv/linux/syscalls.list: Add entries for setaltroot,
1427         key_add, key_request, and keyctl syscalls.
1428         * sysdeps/unix/sysv/linux/Versions: Export them.
1429
1430 2004-10-19  Roland McGrath  <roland@frob.com>
1431
1432         * sysdeps/mach/readonly-area.c: New file.
1433
1434 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
1435
1436         * elf/Versions [ld, GLIBC_PRIVATE]: Add _dl_debug_state.
1437         * elf/dl-debug.c (_dl_debug_state): Add rtld_hidden_def.
1438         * sysdeps/generic/ldsodefs.h (_dl_debug_state): Don't mark as
1439         hidden but use rtld_hidden_proto.
1440
1441 2004-10-19  Alfred M. Szmidt  <ams@gnu.org>
1442
1443         * sysdeps/generic/readonly-area.c (__readonly_str): Renamed to ...
1444         (__readonly_area): ... this.
1445
1446 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
1447
1448         * sysdeps/generic/strcpy_chk.c (__strcpy_chk): Speed up by checking
1449         destlen only every 4 bytes.
1450
1451 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
1452
1453         * nss/getent.c (hosts_keys): Let inet_pton decide whether the
1454         string is an address or not.
1455
1456 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
1457
1458         * elf/dl-addr.c (_dl_addr): Don't look at STT_TLS symbols.
1459         Use DL_SYMBOL_ADDRESS to set dli_saddr.
1460
1461         * debug/Makefile (catchsegv): Prefix $LIB with a backslash.
1462
1463 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
1464
1465         * debug/Makefile ($(objpfx)catchsegv): To support multilib
1466         platforms, use $LIB in path to slibdir.
1467
1468 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
1469
1470         * debug/catchsegv.sh: Update copyright year.
1471         Use mktemp to create segv_output file.
1472
1473 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
1474
1475         * elf/dl-libc.c (__libc_dlsym_private, __libc_register_dl_open_hook):
1476         New functions.
1477         (__libc_dlopen_mode): Call __libc_register_dl_open_hook and
1478         __libc_register_dlfcn_hook.
1479         * dlfcn/Makefile (routines, elide-routines.os): Set.
1480         Add rules to build and test tststatic2.
1481         * dlfcn/tststatic2.c: New test.
1482         * dlfcn/modstatic2.c: New test module.
1483         * dlfcn/dladdr.c: Call _dlfcn_hook from libdl.so if not NULL.
1484         Define __ prefixed routine in libc.a and in libdl.a just call it.
1485         * dlfcn/dladdr1.c: Likewise.
1486         * dlfcn/dlclose.c: Likewise.
1487         * dlfcn/dlerror.c: Likewise.
1488         * dlfcn/dlinfo.c: Likewise.
1489         * dlfcn/dlmopen.c: Likewise.
1490         * dlfcn/dlopen.c: Likewise.
1491         * dlfcn/dlopenold.c: Likewise.
1492         * dlfcn/dlsym.c: Likewise.
1493         * dlfcn/dlvsym.c: Likewise.
1494         * dlfcn/sdladdr.c: New file.
1495         * dlfcn/sdladdr1.c: New file.
1496         * dlfcn/sdlclose.c: New file.
1497         * dlfcn/sdlerror.c: New file.
1498         * dlfcn/sdlinfo.c: New file.
1499         * dlfcn/sdlopen.c: New file.
1500         * dlfcn/sdlsym.c: New file.
1501         * dlfcn/sdlvsym.c: New file.
1502         * dlfcn/Versions (libdl): Export _dlfcn_hook@GLIBC_PRIVATE.
1503         * include/dlfcn.h (DL_CALLER_DECL, DL_CALLER RETURN_ADDRESS): Define.
1504         (struct dlfcn_hook): New type.
1505         (_dlfcn_hook): New extern decl.
1506         (__dlopen, __dlclose, __dlsym, __dlerror, __dladdr, __dladdr1,
1507         __dlinfo, __dlmopen, __libc_dlsym_private,
1508         __libc_register_dl_open_hook, __libc_register_dlfcn_hook): New
1509         prototypes.
1510         (__dlvsym): Use DL_CALLER_DECL.
1511         * include/libc-symbols.h: Define libdl_hidden_proto and friends.
1512
1513         * malloc/arena.c (_dl_open_hook): Extern decl.
1514         (ptmalloc_init): Don't call _dl_addr when dlopened from statically
1515         linked programs but don't use brk for them either.
1516
1517 2004-10-18  Roland McGrath  <roland@redhat.com>
1518
1519         * dlfcn/bug-dlsym1.c (main): Remove bogus setenv call.
1520
1521 2004-10-18  Ulrich Drepper  <drepper@redhat.com>
1522
1523         * elf/dl-open.c (dl_open_worker): Avoid dereferencing map in
1524         statically linked code if there might none be found.
1525
1526 2004-10-06  Maciej W. Rozycki  <macro@mips.com>
1527
1528         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
1529         (__SYSCALL_CLOBBERS): Add "memory".
1530         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h
1531         (__SYSCALL_CLOBBERS): Likewise.
1532         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h
1533         (__SYSCALL_CLOBBERS): Likewise.
1534
1535 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
1536
1537         * include/libc-symbols.h: Define libresolv_hidden_proto and friends.
1538         * include/resolv.h: Add libresolv_hidden_proto for symbols defined,
1539         used, and exported in libresolv.
1540         * resolv/base64.c: Add libresolv_hidden_def.
1541         * resolv/gethnamaddr.c: Likewise.
1542         * resolv/ns_name.c: Likewise.
1543         * resolv/ns_netint.c: Likewise.
1544         * resolv/res_comp.c: Likewise.
1545         * resolv/res_data.c: Likewise.
1546         * resolv/res_debug.c: Likewise.
1547         * resolv/res_mkquery.c: Likewise.
1548         * resolv/res_query.c: Likewise.
1549         * resolv/res_send.c: Likewise.
1550
1551 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
1552
1553         * elf/dl-minimal.c (__chk_fail): New.  Add rtld_hidden_def.
1554         * sysdeps/unix/sysv/linux/readonly-area.c: New file.
1555         * sysdeps/i386/i686/memmove.S (__memmove_chk): Add checking
1556         routine.
1557         * sysdeps/i386/i686/memcpy.S (__memcpy_chk): Likewise.
1558         * sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
1559         * sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
1560         * sysdeps/i386/i686/memmove-chk.S: New file.
1561         * sysdeps/i386/i686/memcpy-chk.S: Likewise.
1562         * sysdeps/i386/i686/mempcpy-chk.S: Likewise.
1563         * sysdeps/i386/i686/memset-chk.S: Likewise.
1564         * sysdeps/generic/strcat-chk.c (__strcat_chk): Don't __chk_fail
1565         if exactly fitting into buffer.
1566         * sysdeps/generic/strncat-chk.c (__strncat_chk): Likewise.
1567         * sysdeps/generic/readonly-area.c: New file.
1568         * sysdeps/generic/strncpy-chk.c (__strncpy_chk): Only test
1569         destlen once.
1570         * sysdeps/x86_64/memset.S (__memset_chk): Add checking routine.
1571         * sysdeps/x86_64/memcpy.S (__memcpy_chk): Likewise.
1572         * sysdeps/x86_64/mempcpy.S (__memcpy_chk): Define to __mempcpy_chk.
1573         * sysdeps/x86_64/memcpy-chk.S: New file.
1574         * sysdeps/x86_64/mempcpy-chk.S: Likewise.
1575         * sysdeps/x86_64/memset-chk.S: Likewise.
1576         * sysdeps/x86_64/strcpy-chk.S: Likewise.
1577         * sysdeps/x86_64/stpcpy-chk.S: Likewise.
1578         * argp/argp-xinl.c (__OPTIMIZE__): Define to 1 instead of nothing.
1579         * argp/argp-fs-xinl.c (__OPTIMIZE__): Likewise.
1580         * debug/tst-chk1.c: New test.
1581         * debug/tst-chk2.c: Likewise.
1582         * debug/tst-chk3.c: Likewise.
1583         * debug/test-strcpy_chk.c: Likewise.
1584         * debug/test-stpcpy_chk.c: Likewise.
1585         * debug/vsprintf_chk.c (__vsprintf_chk): If flags > 0, request
1586         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
1587         * debug/Makefile (routines): Add printf_chk, fprintf_chk, vprintf_chk,
1588         vfprintf_chk, gets_chk and readonly-area.
1589         (CFLAGS-*_chk.c): Set.
1590         (tests): Add tst-chk1, tst-chk2, tst-chk3, test-strcpy_chk and
1591         test-stpcpy_chk.
1592         * debug/vprintf_chk.c: New file.
1593         * debug/printf_chk.c: Likewise.
1594         * debug/vfprintf_chk.c: Likewise.
1595         * debug/fprintf_chk.c: Likewise.
1596         * debug/gets_chk.c: Likewise.
1597         * debug/chk_fail.c (__chk_fail): Add libc_hidden_def.
1598         * debug/snprintf_chk.c (__snprintf_chk): Fix order of arguments
1599         passed to __vsnprintf_chk.
1600         * debug/Versions (libc): Export __printf_chk, __fprintf_chk,
1601         __vprintf_chk, __vfprintf_chk and __gets_chk @GLIBC_2.3.4.
1602         * debug/vsnprintf_chk.c (__vsnprintf_chk): Don't call
1603         __vsnprintf, instead create a temporary file with
1604         _IO_strn_jumps jumptable.  If flags > 0, request
1605         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
1606         * libio/Makefile (headers): Add bits/stdio2.h.
1607         * libio/stdio.h: Include <bits/stdio2.h> if __USE_FORTIFY_LEVEL.
1608         (sprintf, snprintf, vsprintf, vsnprintf): Remove defines.
1609         * libio/strfile.h (_IO_strnfile): New type.
1610         (_IO_strn_jumps): New extern.
1611         * libio/vsnprintf.c (_IO_strnfile): Remove.
1612         (_IO_strn_jumps): Remove static.
1613         * libio/bits/stdio2.h: New file.
1614         * libio/vswprintf.c (_IO_strnfile): Rename type to...
1615         (_IO_wstrnfile): ...this.  Adjust all uses.
1616         * libio/libio.h (_IO_FLAGS2_CHECK_PERCENT_N): Define.
1617         * stdio-common/vfprintf.c (STR_LEN): Define.
1618         (vfprintf): Add readonly_format variable.
1619         Handle _IO_FLAGS2_CHECK_PERCENT_N.
1620         (buffered_vfprintf): Copy _flags2.
1621         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
1622         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
1623         __vfprintf_chk): New prototypes.
1624         (__vsprintf_chk, __vsnprintf_chk): Add libc_hidden_proto.
1625         * include/string.h (__memcpy_chk, __memmove_chk, __mempcpy_chk,
1626         __memset_chk, __strcpy_chk, __stpcpy_chk, __strncpy_chk, __strcat_chk,
1627         __strncat_chk): New prototypes.
1628         * include/bits/string3.h: New file.
1629         * include/sys/cdefs.h (__chk_fail): Add libc_hidden_proto
1630         and rtld_hidden_proto.
1631         * string/Makefile (headers): Add bits/string3.h.
1632         * string/bits/string3.h (bcopy, bzero): New defines.
1633         (memset, memcpy, memmove, strcpy, strncpy, strcat, strncat): Change
1634         macros so that inlines are used only if unknown destination size
1635         or side-effects in destination argument.
1636         (mempcpy, stpcpy): Likewise.  Protect with #ifdef __USE_GNU.
1637
1638 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
1639
1640         * debug/Makefile (routines): Add *_chk.
1641         * debug/Versions (libc): Export __chk_fail, __memcpy_chk,
1642         __memmove_chk, __mempcpy_chk, __memset_chk, __stpcpy_chk,
1643         __strcat_chk, __strcpy_chk, __strncat_chk, __strncpy_chk,
1644         __sprintf_chk, __vsprintf_chk, __snprintf_chk, __vsnprintf_chk
1645         @GLIBC_2.3.4.
1646         * debug/chk_fail.c: New file.
1647         * debug/snprintf_chk.c: Likewise.
1648         * debug/sprintf_chk.c: Likewise.
1649         * debug/vsnprintf_chk.c: Likewise.
1650         * debug/vsprintf_chk.c: Likewise.
1651         * include/features.h (_FORTIFY_SOURCE): Document, handle.
1652         (__USE_FORTIFY_LEVEL): Define.
1653         (__GNUC_PREREQ): Move to earlier location.
1654         * include/sys/cdefs.h (__chk_fail): New prototype.
1655         * libio/bits/stdio.h (sprintf, vsprintf, snprintf, vsnprintf):
1656         Define if __USE_FORTIFY_LEVEL.
1657         * misc/sys/cdefs.h (__bos, __bos0): Define.
1658         * string/string.h: Include <bits/string3.h> if __USE_FORTIFY_LEVEL.
1659         * bits/string/string3.h: New header.
1660         * sysdeps/generic/memcpy_chk.c: New file.
1661         * sysdeps/generic/memmove_chk.c: Likewise.
1662         * sysdeps/generic/mempcpy_chk.c: Likewise.
1663         * sysdeps/generic/memset_chk.c: Likewise.
1664         * sysdeps/generic/stpcpy_chk.c: Likewise.
1665         * sysdeps/generic/strcat_chk.c: Likewise.
1666         * sysdeps/generic/strcpy_chk.c: Likewise.
1667         * sysdeps/generic/strncat_chk.c: Likewise.
1668         * sysdeps/generic/strncpy_chk.c: Likewise.
1669
1670 2004-10-17  Roland McGrath  <roland@frob.com>
1671
1672         * manual/memory.texi (Page Lock Functions): Typo fix.
1673         Reported by Carlos Maziero <maziero@ppgia.pucpr.br>
1674
1675 2004-10-16  Alfred M. Szmidt  <ams@kemisten.nu>
1676
1677         * sysdeps/mach/hurd/Makefile (link-libc-static): Use
1678         `$(static-gnulib') instead of `$(gnulib)'.
1679
1680 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
1681
1682         * sunrpc/rpc_clntout.c: Avoid including rcsid into binary.
1683         * sunrpc/rpc_cout.c: Likewise.
1684         * sunrpc/rpc_hout.c: Likewise.
1685         * sunrpc/rpc_main.c: Likewise.
1686         * sunrpc/rpc_parse.c: Likewise.
1687         * sunrpc/rpc_sample.c: Likewise.
1688         * sunrpc/rpc_scan.c: Likewise.
1689         * sunrpc/rpc_svcout.c: Likewise.
1690         * sunrpc/rpc_tblout.c: Likewise.
1691         * sunrpc/rpc_util.c: Likewise.
1692
1693 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
1694
1695         * sysdeps/unix/sysv/linux/i386/sysdep.h (PUSHARGS_6, DOARGS_6,
1696         POPARGS_6, _PUSHARGS_6, _DOARGS_6, _POPARGS_6): Define.
1697         * sysdeps/unix/sysv/linux/i386/syscall.S (syscall): Handle 6 argument
1698         syscalls.
1699
1700 2004-10-15  Ulrich Drepper  <drepper@redhat.com>
1701
1702         * nscd/nscd.h (_PATH_NSCD_PASSWD_DB): Move to /var/db.
1703         (_PATH_NSCD_GROUP_DB): Likewise.
1704         (_PATH_NSCD_HOSTS_DB): Likewise.
1705         (_PATH_NSCD_XYZ_DB_TMP): New #define, point to /var/run.
1706         * nscd/connections.c (nscd_init): Non-persistent database files
1707         are created with the _PATH_NSCD_XYZ_DB_TMP path.
1708         * nscd/nscd.init: Create /var/db/nscd if necessary.
1709
1710 2004-10-15  Richard Henderson  <rth@redhat.com>
1711
1712         * sysdeps/unix/sysv/linux/alpha/register-dump.h: New file.
1713         * sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h (SIGCONTEXT): Add
1714         _code argument, pass sigcontext by pointer.
1715         (SIGCONTEXT_EXTRA_ARGS): Likewise.
1716         (GET_PC, GET_FRAME, GET_STACK): Expect ctx as pointer.
1717
1718 2004-10-14  Richard Henderson  <rth@redhat.com>
1719
1720         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
1721         elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
1722         instead of static.
1723
1724         * sysdeps/unix/sysv/linux/adjtime.c (ADJTIME): Use prototype
1725         style definition.
1726         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): If
1727         __ASSUME_TIMEVAL64, define __adjtime directly rather than
1728         via strong_alias.
1729
1730 2004-10-14  Ulrich Drepper  <drepper@redhat.com>
1731
1732         * nscd/Makefile: When using compilers without -fpie support, also
1733         link with -lselinux if necessary.
1734         Patch by Arkadiusz Miskiewicz <arekm@pld-linux.org>.
1735
1736         * nscd/connections.c (nscd_init): Remove file if not persistent
1737         and not shared.  Patch by Jerome Borsboom <j.borsboom@erasmusmc.nl>.
1738
1739 2004-10-14  Jakub Jelinek  <jakub@redhat.com>
1740
1741         * sysdeps/unix/sysv/linux/i386/setresuid.c: Handle
1742         defined __NR_setresuid32 && !defined __NR_setresuid.
1743         * sysdeps/unix/sysv/linux/i386/setresgid.c: Handle
1744         defined __NR_setresgid32 && !defined __NR_setresgid.
1745
1746         * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit,
1747         __signbitl, sqrtf, sqrt, sqrtl, fdim, fdimf): Use __NTH macro.
1748
1749         * sysdeps/generic/errno-loc.c: Don't undef #errno
1750         if RTLD_PRIVATE_ERRNO.
1751         * include/errno.h (__errno_location): If RTLD_PRIVATE_ERRNO,
1752         add attribute_hidden.
1753
1754         * dlfcn/dlinfo.c (dlinfo_doit): Replace iteration over GL(dl_loaded)
1755         chain with iteration over all namespaces' _ns_loaded chains.
1756         * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_preferred_address):
1757         Likewise.
1758         * sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Likewise.
1759
1760         * elf/rtld.c (_dl_start): Fix one last dl_loaded.
1761         * elf/dl-load.c (_dl_map_object_from_fd): Avoid definition of
1762         label when it is not needed.
1763         * elf/dl-close.c (_dl_close): Typo: & -> &&.
1764
1765 2004-10-12  Jakub Jelinek  <jakub@redhat.com>
1766
1767         * sysdeps/generic/segfault.c: Include alloca.h and stdint.h.
1768         Don't include frame.h.
1769         (CURRENT_STACK_FRAME, INNER_THAN, ADVANCE_STACK_FRAME): Remove.
1770         (catch_segfault): Use backtrace function.
1771
1772         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Fix comment.
1773         * sysdeps/unix/sysv/linux/ia64/register-dump.h: New file.
1774         * sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h (GET_PC): Return sc_ip
1775         field.
1776
1777 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
1778
1779         Add support for namespaces in the dynamic linker.
1780         * dlfcn/Makefile (libdl-routines): Add dlmopen.
1781         * dlfcn/Versions [libdl, GLIBC_2.3.4]: Add dlmopen.
1782         * dlfcn/dlfcn.h: Define Lmid_t, LM_ID_BASE, and LM_ID_NEWLM.
1783         Declare dlmopen.  Document RTLD_DI_LMID.
1784         * dlfcn/dlinfo.c: Handle RTLD_DI_LMID.
1785         * dlfcn/dlmopen.c: New file.
1786         * dlfcn/dlopen.c: Pass new parameter to _dl_open.
1787         * dlfcn/dlopenold.c: Likewise.
1788         * elf/dl-addr.c: Adjust for removal of GL(dl_loaded).
1789         * elf/dl-caller.c: Likewise.
1790         * elf/dl-close.c: Likewise.
1791         * elf/dl-conflict.c: Likewise.
1792         * elf/dl-debug.c: Likewise.
1793         * elf/dl-lookup.c: Likewise.
1794         * elf/dl-sym.c: Likewise.
1795         * elf/dl-version.c: Likewise.
1796         * elf/do-lookup.h: Likewise.
1797         * elf/rtld.c: Likewise.
1798         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
1799         * elf/dl-depsc: Likewise.  Add new parameter to _dl_map_object.
1800         * elf/dl-fini.c: Call destructors in all namespaces.
1801         * elf/dl-iteratephdr.c: Compute total nloaded.  Adjust for removal of
1802         GL(dl_loaded).
1803         * elf/dl-libc.c: Pass new parameter to _dl_open.  Adjust for removal
1804         of GL(dl_loaded).
1805         * elf/dl-load.c (_dl_map_object_from_fd): Don't load ld.so a second
1806         time.  Reuse the one from the main namespace in all others.
1807         Pass new parameter to _dl_new_object.
1808         Adjust for removal of GL(dl_loaded).
1809         * elf/dl-object.c: Take new parameter.  Use it to initialize l_ns.
1810         Adjust for removal of GL(dl_loaded).
1811         * elf/dl-open.c (_dl_open): Take new parameter.
1812         Adjust for removal of GL(dl_loaded).
1813         * elf/dl-support.c: Replace global _dl_loaded etc variables with
1814         _dl_ns variable.
1815         * include/dlfcn.h: Adjust prototype of _dl_open.
1816         Define __LM_ID_CALLER.
1817         * include/link.h: Add l_real, l_ns, and l_direct_opencount elements.
1818         * sysdeps/generic/dl-tls.c: Bump TLS_STATIC_SURPLUS.  Since libc is
1819         using TLS we need memory appropriate to the number of namespaces.
1820         * sysdeps/generic/ldsodefs.h (struct rtld_global): Replace _dl_loaded,
1821         _dl_nloaded, _dl_global_scope, _dl_main_searchlist, and
1822         _dl_global_scope_alloc with _dl_ns element.  Define DL_NNS.
1823         Adjust prototypes of _dl_map_object and member in rtld_global_ro.
1824         * malloc/malloc.c: Include <dlfcn.h>.
1825         * malloc/arena.c (ptmalloc_init): If libc is not in primary namespace,
1826         never use brk.
1827         * elf/Makefile: Add rules to build and run tst-dlmopen1 and
1828         tst-dlmopen2.
1829         * elf/tst-dlmopen1.c: New file.
1830         * elf/tst-dlmopen1mod.c: New file.
1831         * elf/tst-dlmopen2.c: New file.
1832
1833         * elf/dl-close.c: Improve reference counting by tracking direct loads.
1834         * elf/dl-lookup.c (add_dependency): Likewise.
1835         * elf/dl-open.c (dl_open_worker): Likewise.
1836         * elf/rtld.c (dl_main): Likewise.
1837
1838 2004-09-09  GOTO Masanori  <gotom@debian.or.jp>
1839
1840         [BZ #77]
1841         * elf/dl-close.c: Count down l_opencount to check not only for
1842         l_reldeps, but also l_initfini.
1843
1844 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
1845
1846         * elf/dl-close.c (_dl_close): Update bug reporting instructions.
1847
1848 2004-10-11  Ulrich Drepper  <drepper@redhat.com>
1849
1850         * timezone/asia: Update from tzdata2004e.
1851         * timezone/southamerica: Likewise.
1852         * timezone/private.h: Update from tzcode2004e.
1853         * timezone/zdump.c: Likewise.
1854
1855         * stdio-common/vfscanf.c: Add support for reading localized
1856         digits.  Patch mainly by Hamed Malek <hamed@bamdad.org>.
1857
1858         * resolv/res_init.c (res_thread_freeres): Reset _res.options.
1859         [BZ #434]
1860
1861         * resolv/res_send.c (send_dg): Use nonblocking sockets.  Add
1862         appropriate poll/select calls and restart operation if necessary.
1863         Also handle EINTR.
1864
1865         * elf/tst-dlopenrpath.c (do_test): Enable code which was disabled
1866         for debugging.
1867
1868         * elf/dl-sym.c (do_sym): Avoid using global variable.
1869
1870         * elf/dl-addr.c (_dl_addr): Really use match everywhere.
1871
1872 2004-10-09  Andreas Schwab  <schwab@suse.de>
1873
1874         * sysdeps/m68k/memcopy.h (WORD_COPY_BWD): Remove use of cast as
1875         lvalue.
1876
1877         * sysdeps/m68k/fpu/bits/mathinline.h: Remove __THROW from inline
1878         definitions.
1879
1880 2004-10-07  Andreas Schwab  <schwab@suse.de>
1881
1882         * misc/sys/uio.h: Change __vector to __iovec to avoid clash with
1883         altivec.
1884
1885 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
1886
1887         * gmon/Makefile (CFLAGS-mcount.c): Move before inclusion of "Rules".
1888         * sysdeps/powerpc/powerpc64/Makefile (CFLAGS-mcount.c): Add
1889         -msoft-float.
1890         * sysdeps/powerpc/powerpc64/sysdep.h (SAVE_ARG, REST_ARG): New macros.
1891         (CALL_MCOUNT): Replace with a gas macro implementation.
1892         (EALIGN): Delete PROF version.
1893         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Invoke CALL_MCOUNT.
1894         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Likewise.
1895         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
1896         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
1897         * sysdeps/powerpc/powerpc64/memcpy.S: Likewise.
1898         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
1899         * sysdeps/powerpc/powerpc64/stpcpy.S: Likewise.
1900         * sysdeps/powerpc/powerpc64/strchr.S: Likewise.
1901         * sysdeps/powerpc/powerpc64/strcmp.S: Likewise.
1902         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
1903         * sysdeps/powerpc/powerpc64/strlen.S: Likewise.
1904         * sysdeps/powerpc/powerpc64/strncmp.S: Likewise.
1905         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Likewise.
1906         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Likewise.
1907         * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Likewise.
1908         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Likewise.
1909         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Likewise.
1910         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: Likewise.
1911         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: Likewise.
1912         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: Likewise.
1913         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: Likewise.
1914         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Likewise.
1915         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Likewise.
1916         * sysdeps/powerpc/powerpc64/fpu/s_round.S: Likewise.
1917         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Likewise.
1918         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Likewise.
1919         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Likewise.
1920
1921         * sysdeps/powerpc/powerpc64/setjmp-common.S: Add extra entry point
1922         past _mcount call.
1923         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Use it.
1924         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
1925
1926 2004-10-06  Ulrich Drepper  <drepper@redhat.com>
1927
1928         * resolv/res_mkquery.c (res_nmkquery): Reject randombits value if
1929         low 16 bits are zero.
1930
1931 2004-10-06  Jakub Jelinek  <jakub@redhat.com>
1932
1933         * posix/tst-getaddrinfo2.c: Include stdlib.h and string.h.
1934         (do_test): Use %p instead of 0x%08X to print a pointer.
1935
1936         * malloc/malloc.c: Include stdio-common/_itoa.h.
1937
1938 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
1939
1940         * elf/rtld.c (dl_main): Use _dl_debug_printf instead of _dl_printf
1941         for prelink message.
1942
1943 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
1944
1945         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Include dl-sysdep.h.
1946         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
1947
1948 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
1949
1950         * grp/initgroups.c: Remove duplicate group IDs.
1951         * grp/compat-initgroups.c: Likewise.
1952         * nscd/initgrcache.c: Likewise.
1953
1954 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
1955
1956         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (__sysconf): Return 200112L
1957         for _SC_CPUTIME or _SC_THREAD_CPUTIME.
1958
1959         * nscd/Makefile (nscd-cflags): Set to -DIS_IN_nscd=1, plus
1960         -fpie if building PIE.
1961         (CFLAGS-*.c): Use it.
1962
1963         * nscd/Makefile (relro-LDFLAGS): Add -Wl,-z,now if have-z-relro.
1964         ($(objpfx)nscd): Add $(relro-LDFLAGS).
1965
1966         * sysdeps/unix/sysv/linux/i386/sysconf.c: Include hp-timing.h.
1967         (__sysconf): Return -1 for _SC_CPUTIME or _SC_THREAD_CPUTIME if
1968         !HP_TIMING_AVAIL.
1969
1970 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
1971
1972         * nscd/Makefile (distribute): Remove TODO.
1973         * nscd/TODO: Removed.
1974
1975 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
1976
1977         * nscd/gai.c: Define __no_netlink_support if NEED_NETLINK is
1978         defined and __ASSUME_NETLINK_SUPPORT is zero.
1979         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gai.c): Add
1980         -DNEED_NETLINK.
1981
1982         * malloc/mtrace.pl: Avoid calling location unless it is needed for
1983         output.  Patch by Edward Bishop <binutils@gmail.com>.
1984
1985         * nscd/Makefile (CFLAGS-gai.c): Add -fpie.
1986
1987 2004-10-04  H.J. Lu  <hongjiu.lu@intel.com>
1988
1989         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c
1990         (clock_getcpuclockid): Add missing retval.
1991
1992         * sysdeps/unix/sysv/linux/ia64/sysconf.c (linux_sysconf): Fix a typo.
1993
1994 2004-10-04  Roland McGrath  <roland@redhat.com>
1995
1996         * include/errno.h [RTLD_PRIVATE_ERRNO] (errno): Rename the real symbol
1997         to rtld_errno.
1998         * sysdeps/generic/errno.c [RTLD_PRIVATE_ERRNO] (rtld_errno): Define it,
1999         and don't define any other errno names.
2000         * sysdeps/unix/alpha/sysdep.h [RTLD_PRIVATE_ERRNO]: Use rtld_errno in
2001         place of errno.
2002         * sysdeps/unix/i386/sysdep.S: Likewise.
2003         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
2004         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
2005         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
2006         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
2007         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
2008         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
2009         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
2010         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
2011         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
2012         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
2013         * sysdeps/unix/x86_64/sysdep.S: Likewise.
2014
2015         * sysdeps/generic/errno.c [! USE___THREAD] (errno): Use `nocommon'
2016         attribute instead of `section'.
2017
2018 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
2019
2020         * sysdeps/unix/sysv/linux/ia64/sysconf.c: New file.
2021         * sysdeps/unix/sysv/linux/ia64/Dist: Add has_cpuclock.c.
2022         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: Move actual
2023         testing code to...
2024         * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c: ...here.  New file.
2025         * sysdeps/unix/sysv/linux/i386/sysconf.c: Add dynamic check for
2026         _SC_CPUTIME and _SC_THREAD_CPUTIME.
2027
2028         * nscd/connections.c (start_threads): Use sysconf in case
2029         _POSIX_CLOCK_SELECTION or _POSIX_MONOTONIC_CLOCK is not greater zero.
2030
2031         * nscd/Makefile (nscd-modules): Add gai.
2032         * nscd/gai.c: New file.
2033         * nscd/nscd.c: Remove getaddrinfo stub definition.
2034
2035         * assert/assert.h: Give up on using __builtin_expect.
2036
2037         * elf/rtld.c (dl_main): Only skip => output in ldd mode if both
2038         strings are identical.
2039
2040 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
2041
2042         * malloc/arena.c (aligned_heap_area): New variable.
2043         (new_heap): If aligned_heap_area != NULL, attempt to use that
2044         first.  If HEAP_MAX_SIZE << 1 area is already HEAP_MAX_SIZE bytes
2045         aligned, remember the second half in aligned_heap_area.
2046         (delete_heap): Clear aligned_heap_area if deleting the area right
2047         before aligned_heap_area.
2048
2049 2004-10-03  Juerg Billeter  <j@bitron.ch>
2050
2051         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Return -1 if nscd
2052         can't be used.  [BZ #424]
2053
2054 2004-10-03  Ulrich Drepper  <drepper@redhat.com>
2055
2056         Dynamically create new threads if necessary.
2057         * nscd/connections.c (fd_ready): If no thread available for processing
2058         the request, create a new one unless the limit is reached.
2059         (start_threads): Check errors from pthread_create.
2060         * nscd/nscd.h: Declare max_nthreads.
2061         * nscd/nscd_conf.c: Parse max-nthreads entry.
2062         * nscd/nscd.conf: Add max-threads entry.
2063         * nscd/nscd_stat.c: Print current and maximum number of threads.
2064
2065         Implement paranoia mode.
2066         * nscd/connections.c (nscd_init): Mark database and socket descriptors
2067         as close on exec.
2068         (restart): New function.
2069         (restart_p): New function.
2070         (nscd_run): Add missing descrement of nready in case readylist is
2071         empty.
2072         (main_loop_poll): Call restart_p and restart.
2073         (main_loop_epoll): Likewise.
2074         (begin_drop_privileges): Save original UID and GID.
2075         * nscd/nscd.c: Define new variables paranoia, restart_time,
2076         restart_interval, oldcwd, old_gid, old_uid.
2077         (main): Disable paranoia mode if we are not forking.
2078         (check_pid): When re-execing, the PID file contains the same PID as
2079         the current process.  Do not fail in this case.
2080         * nscd/nscd.conf: Add paranoia and restart-interval entries.
2081         * nscd/nscd.h: Define RESTART_INTERVAL.  Declare new variables.
2082         * nscd/nscd_conf.c: Parse paranoia and restart-internal configurations.
2083         * nscd/nscd_stat.c: Print paranoia and restart-internal values.
2084
2085         * nscd/connections.c: Implement alternative loop for main thread
2086         which uses epoll.
2087         * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]
2088         (CFLAGS-connections.c): Add -DHAVE_EPOLL.
2089
2090 2004-10-02  Ulrich Drepper  <drepper@redhat.com>
2091
2092         * nscd/Makefile (CFLAGS-initgrcache.c): Add to CFLAGS-* variables,
2093         don't replace old content.
2094
2095         * nscd/connections.c: Rewrite handling of incoming connections.  All
2096         are handled by one thread which then hands off the descriptors for the
2097         real work to the worker threads.
2098         * nscd/Makefile: Link nscd with librt.
2099
2100         * nscd/selinux.c: Pretty printing.
2101
2102         * nscd/dbg_log.c (dbg_log): Don't add unnecessary newline to
2103         output.  Let syslog do the formatting if debug_level == 0.
2104
2105         * nscd/nscd_helper.c (get_mapping): No need to check timestamp if
2106         nscd_certainly_running is nonzero.
2107
2108 2004-10-02  Simon Josefsson  <jas@extundo.com>
2109
2110         [BZ #420]
2111         * sysdeps/generic/memmem.c [!_LIBC]: Define __builtin_expect, to
2112         make the file usable inside gnulib.
2113
2114 2004-10-01  Ulrich Drepper  <drepper@redhat.com>
2115
2116         * malloc/malloc.c (public_vALLOc): Add missing use of hooks.
2117         (public_pVALLOc): Likewise.
2118
2119         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Always add the
2120         group the caller provided unless there is a real problem.
2121
2122         * posix/bug-glob1.c (prepare): Fix creation of symlink.
2123
2124 2004-09-30  Ulrich Drepper  <drepper@redhat.com>
2125
2126         * posix/Makefile: Add rules to build and run bug-glob1.
2127         * posix/bug-glob1.c: New file.
2128
2129         * iconv/iconv_prog.c (main): Print progress information to stderr.
2130
2131         * nscd/nscd.c (termination_handler): Reset timestamp so that
2132         clients immediately stop using the database.
2133
2134         * nscd/nscd-client.h (__nscd_get_map_ref): Drop volatile from last
2135         parameter.
2136         (__nscd_drop_map_ref): Change second parameter to be a reference to
2137         a variable.  Update variable when cycle count changed.
2138         * nscd/nscd_helper.c (__nscd_get_map_ref): Remove volatile here, too.
2139         * nscd/nscd_getai.c: Correctly use __nscd_drop_map_ref.  Reinitialize
2140         all variables and avoid memory leak in case of retries.
2141         * nscd/nscd_getgr_r.c: Likewise.
2142         * nscd/nscd_gethst_r.c: Likewise.
2143         * nscd/nscd_getpw_r.c: Likewise.
2144         * nscd/nscd_initgroups.c: Likewise.
2145
2146         * nscd/nscd.h: Add declaration of addinitgroups and
2147         readdinitgroups.
2148
2149 2004-09-30  Andreas Jaeger  <aj@suse.de>
2150
2151         * nscd/Makefile (CFLAGS-nscd_initgroups.c): Set to -fpie.
2152         (CFLAGS-initgrcache.c): Set to -fexceptions.
2153
2154 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
2155
2156         * sysdeps/generic/glob.c (glob_in_dir): Don't blindly trust
2157         readdir results; for symlinks or files of unknown type check using
2158         stat whether the file exists.
2159
2160         * posix/tst-gnuglob.c (find_file): Handle leading "./".  Fix
2161         recognition of files.
2162
2163 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
2164
2165         * time/tzfile.c (tzfile_mtime): New variable.
2166         (__tzfile_read): Reread the file if mtime is different.
2167
2168 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
2169
2170         * sysdeps/alpha/fpu/bits/mathinline.h (__fdimf, __fdim, fdimf, fdim):
2171         Handle +inf/+inf.
2172         * sysdeps/powerpc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
2173         * sysdeps/sparc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
2174
2175 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
2176
2177         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use correct constant for
2178         testing result of __nscd_get_map_ref.
2179
2180 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
2181
2182         * sysdeps/i386/fpu/s_fdim.S (__fdim): Handle +inf/+inf.
2183         * sysdeps/i386/fpu/s_fdimf.S (__fdimf): Likewise.
2184         * sysdeps/i386/fpu/s_fdiml.S (__fdiml): Likewise.
2185
2186 004-09-29  Ulrich Drepper  <drepper@redhat.com>
2187
2188         * grp/initgroups.c: Move compat_call implementation...
2189         * grp/compat-initgroups.c: ...to here.  New file.
2190         * grp/Makefile (distribute): Add compat-initgroups.c.
2191         (CFLAGS-initgroups.c): Add -DUSE_NSCD=1.
2192         * mscd/initgrcache.c: New file.
2193         * nscd/nscd_initgroups.c: New file.
2194         * nscd/Makefile (routines): Add nscd_initgroups.
2195         (nscd-modules): Add initgrcache.
2196         * nscd/cache.c (prune_cache): Add support for INITGROUPS entries.
2197         * nscd/connections.c: Handle INITGROUPS requests.
2198         * nscd/nscd-client.h: Define INITGROUPS, initgr_response_header.
2199         Add initgrdata element to struct datahead.  Fix typo in comment.
2200         * nscd/nscd_proto.h: Declare __nscd_getgrouplist.  Fix parameter
2201         type in __nscd_getgrgrid_r.
2202         * nscd/selinux.c (perms): Add INITGROUPS entry.
2203
2204         * nscd/nscd_getai.c: No need to include <sys/mman.h>.
2205
2206         * sunrpc/get_myaddr.c (get_myaddress): Account for interfaces without
2207         assigned addresses.
2208         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
2209         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
2210         * sunrpc/clnt_udp.c (is_network_up): Likewise.
2211
2212         * nscd/nscd.c: Define getaddrinfo hidden so that it is never found
2213         outside.
2214
2215         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_segvflags):
2216         Renamed from si_flags due to conflict with si_flags from <elf.h>.
2217
2218 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
2219
2220         * nscd/nscd_getai.c: Use NO_MAPPING instead of MAP_FAILED for test
2221         of failing __nscd_get_map_ref.  Fix a few typos.
2222
2223         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Make sure
2224         SIGSETXID is not blocked.
2225         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Likewise.
2226         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
2227         * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise.
2228         * sysdeps/generic/sigfillset.c (sigfillset): Don't set SIGSETXID.
2229
2230         * sunrpc/get_myaddr.c (get_myaddress): Fix test for failing
2231         getifaddrs call.
2232         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
2233         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
2234         * sunrpc/Makefile (xtests): Add tst-getmyaddr.
2235         * sunrpc/tst-getmyaddr.c: New file.
2236
2237         * malloc/arena.c (ptmalloc_init): Allow MALLOC_CHECK_==0 to
2238         disable all checking.
2239
2240         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_flags): Add
2241         support to get this value.
2242
2243 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
2244
2245         * io/utime.h (utime): Allow second argument to be NULL.
2246
2247 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
2248
2249         * sysdeps/posix/getaddrinfo.c (gaih_inet): If NAME is a numerical IP
2250         address and AI_CANONNAME is set, return copy of NAME as ai_canonname.
2251
2252 2004-09-27  Andreas Jaeger  <aj@suse.de>
2253
2254         * sysdeps/i386/dl-machine.h (elf_machine_rela_relative): Replace
2255         static inline by auto inline, add always_inline attribute.
2256         (elf_machine_rel): Likewise.
2257         (elf_machine_rela): Likewise.
2258         (elf_machine_lazy_rel): Likewise.
2259         (elf_machine_lazy_rela): Likewise.
2260         (elf_machine_rel_relative): Likewise.
2261
2262 2004-09-27  Ulrich Drepper  <drepper@redhat.com>
2263
2264         * sunrpc/xdr_intXX_t.c: Add xdr_quad_t and xdr_u_quad_t aliases.
2265         * sunrpc/rpc/xdr.h: Declare xdr_quad_t and xdr_u_quad_t.
2266         * sunrpc/rpc_parse.c (get_type): Use "quad_t" for TOK_HYPER.
2267         Otherwise isvectordef will loop infinitely if typedef hyper int64_t
2268         is seen.
2269         (unsigned_dec): Use "u_quad_t" for similar reasons.
2270         * sunrpc/Versions: Export xdr_quad_t and xdr_u_quad_t.
2271
2272 2004-09-27  Roland McGrath  <roland@redhat.com>
2273
2274         * sysdeps/generic/bits/waitstatus.h (__WIFSIGNALED): Simplify bit
2275         twiddling in last change.
2276
2277         * posix/tst-waitid.c (do_test): Add tests for waitpid with WCONTINUED.
2278
2279         [BZ #409]
2280         * posix/sys/wait.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
2281         * stdlib/stdlib.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
2282         * sysdeps/generic/bits/waitstatus.h (__W_CONTINUED): New macro.
2283         [WCONTINUED] (__WIFCONTINUED): New macro.
2284         (__WIFSIGNALED): Rewritten to exclude __W_CONTINUED value, and have no
2285         branches.
2286
2287         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Add fifth argument to
2288         all three syscall uses, not just one!
2289
2290 2004-09-26  Richard Henderson  <rth@redhat.com>
2291
2292         * sysdeps/alpha/alphaev6/memcpy.S: Mark .prologue.
2293         * sysdeps/unix/alpha/sysdep.h (LEAF, ENTRY): Align entry points
2294         to 16 byte boundaries.
2295
2296 2004-09-26  Ulrich Drepper  <drepper@redhat.com>
2297
2298         * elf/readlib.c (process_file): Before complaining about too-short
2299         file, check that it potentially be an ELF file.  Also complain about
2300         empty files.  [BZ #151].
2301
2302         * scripts/test-installation.pl: Fix ld.so recognition for new
2303         LD_TRACE_LOADED_OBJECTS output format.
2304         Patch by <jsberg04+computing.glibc@ftml.net>  [BZ #407].
2305
2306         * elf/dl-support.c (_dl_non_dynamic_init): Fix cleaning of
2307         environment.  [BZ #384]
2308
2309         * sunrpc/clnt_udp.c (is_network_up): Use getifaddrs instead of ioctl.
2310         * sunrpc/get_myaddr.c (get_myaddress): Likewise.
2311         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
2312         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.  Change interface
2313         to avoid buffer overrun and remove now useless parameters.
2314         (clnt_broadcast): Adjust caller.  [BZ #381].
2315
2316         * sysdeps/generic/s_fdim.c: Handle +inf/+inf
2317         * sysdeps/generic/s_fdimf.c: Likewise.
2318         * sysdeps/generic/s_fdiml.c: Likewise.
2319         * sysdeps/i386/i686/fpu/s_fdim.S: Likewise.
2320         * sysdeps/i386/i686/fpu/s_fdimf.S: Likewise.
2321         * sysdeps/i386/i686/fpu/s_fdiml.S: Likewise.
2322         * sysdeps/powerpc/fpu/s_fdim.c: Likewise.
2323         * sysdeps/powerpc/fpu/s_fdimf.c: Likewise.
2324         * sysdeps/x86_64/fpu/s_fdiml.S: Likewise.
2325         * math/libm-test.inc (fdim_test): Add test case.  [BZ #376].
2326
2327         * sysdeps/generic/bits/types.h: Fix __SQUAD_TYPE and __UQUAD_TYPE
2328         for compilers without __GLIBC_HAVE_LONG_LONG.  [BZ #362]
2329
2330         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Remove incorrect
2331         requirement on socktype and protocol.
2332         (gaih_inet): If numeric port number is given, return records for all
2333         possible socket types.
2334         * posix/tst-getaddrinfo2.c: New file.
2335         * posix/Makefile (tests): Add tst-getaddrinfo2.  [BZ #358]
2336
2337 2004-09-25  Ulrich Drepper  <drepper@redhat.com>
2338
2339         * locale/loadlocale.c (_nl_intern_locale_data): Recognize LC_CTYPE
2340         data where _nl_value_type_LC_CTYPE does not contain the type
2341         information.  Add range checks.
2342         Reported by John Lumby <johnlumby@hotmail.com> [BZ #356].
2343
2344         * libio/vasprintf.c (_IO_vasprintf): Fix condition to decide
2345         whether to realloc or not.
2346         Reported by Pavel Kankovsky <peak@argo.troja.mff.cuni.cz> [BZ #346].
2347
2348         * intl/dcigettext.c (DCIGETTEXT): Protect tfind/tsearch calls.
2349         * intl/dcigettext.c (_nl_find_msg): Call _nl_load_domain also if
2350         decided < 0.
2351         * intl/finddomain.c (_nl_find_domain): Likewise.
2352         * intl/loadmsgcat.c (_nl_load_domain): Set decided to 1 only once we
2353         are done.  First set to -1 to signal initialization is ongoing.
2354         Protect against concurrent callers with recursive lock.
2355         * intl/finddomain.c (_nl_find_domain): Protect calls to
2356         _nl_make_l10nflist.  [BZ #322]
2357
2358         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If determinination of
2359         source address fails, initialized source_addr_len field so that
2360         duplicate address recognition does not copy junk.
2361
2362 2004-09-25  Jakub Jelinek  <jakub@redhat.com>
2363
2364         * sysdeps/unix/sysv/linux/i386/setuid.c (__setuid): Remove second
2365         result declaration.
2366
2367 2004-09-22  Andreas Schwab  <schwab@suse.de>
2368
2369         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Adjust whitespace.
2370
2371 2004-09-24  Ulrich Drepper  <drepper@redhat.com>
2372
2373         * misc/daemon.c (daemon): Don't succeed if /dev/null cannot be
2374         opened.
2375
2376         * nis/ypclnt.c (do_ypcall): Add one missing unlock.  Simplify the
2377         code a bit.
2378
2379         * misc/daemon.c (daemon): Define errno in case /dev/null is not
2380         the correct device.
2381
2382         * nis/ypclnt.c (yp_bind_file): Optimize a bit.  Minimal cleanups.
2383
2384 2004-09-23  Andreas Jaeger  <aj@suse.de>
2385
2386         * locale/weight.h (findidx): Remove static, it's not supported
2387         anymore with GCC 4.0 in a block scope.
2388         * locale/weightwc.h (findidx): Likewise.
2389         * posix/regcomp.c (seek_collating_symbol_entry): Likewise.
2390         (lookup_collation_sequence_value): Likewise.
2391         (build_range_exp): Likewise.
2392         (build_collating_symbol): Likewise.
2393         * iconv/iconvconfig.c (write_output): Likewise.
2394         * elf/do-rel.h (elf_dynamic_do_rel): Likewise.
2395
2396         * sysdeps/x86_64/dl-machine.h (elf_machine_rela_relative): Remove
2397         static, add always_inline attribute.
2398         (elf_machine_rela): Likewise.
2399         (elf_machine_lazy_rel): Likewise.
2400
2401         * elf/dynamic-link.h (elf_get_dynamic_info): Make static dependend
2402         on !RESOLVE so that it's not defined in local scope.
2403
2404 2004-09-23  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2405
2406         * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL_NCS): Define.
2407
2408 2004-09-23  Thorsten Kukuk  <kukuk@suse.de>
2409
2410         * sysdeps/unix/sysv/linux/sys/mount.h: Sync MS_RMT_MASK flag
2411         and BLK* ioctls with linux kernel headers.
2412
2413 2004-09-23  Ulrich Drepper  <drepper@redhat.com>
2414
2415         * sysdeps/generic/bits/dlfcn.h: Add RTLD_DEEPBIND.
2416         * elf/dl-object.c (_dl_new_object): Add new parameter mode.  If mode
2417         has RTLD_DEEPBIND set add local searchlist before global scope.
2418         * sysdeps/generic/ldsodefs.h (_dl_new_object): Adjust prototype.
2419         * elf/rtld.c: Adjust callers of _dl_new_object.
2420         * elf/dl-load.c: Likewise.
2421         (_dl_map_object_from_fd): If RTLD_DEEPBIND is used, don't do anything
2422         for DF_SYMBOLIC.
2423         * elf/dl-open.c (dl_open_writer): Pass RTLD_DEEPBIND flag on to
2424         _dl_map_object_deps.
2425         * elf/tst-deep1.c: New file.
2426         * elf/tst-deep1mod1.c: New file.
2427         * elf/tst-deep1mod2.c: New file.
2428         * elf/tst-deep1mod3.c: New file.
2429         * elf/Makefile: Add rules to build and run new tests.
2430
2431         * elf/dl-deps.c: Pretty printing.
2432
2433 2004-09-23  Jakub Jelinek  <jakub@redhat.com>
2434
2435         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
2436         argument to numbers from syscall names.
2437         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
2438         (INTERNAL_SYSCALL_NCS): Renamed from...
2439         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
2440         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
2441         (INTERNAL_SYSCALL_NCS): Define.
2442         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
2443         (INTERNAL_SYSCALL_NCS): Likewise.
2444         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
2445         Change name argument to numbers from syscall names.
2446         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
2447         (INTERNAL_SYSCALL_NCS): Define.
2448
2449 2004-09-22  Ulrich Drepper  <drepper@redhat.com>
2450
2451         * malloc/malloc.c (malloc_printerr): Use syslog if writev failed.
2452
2453         * string/string.h: Add __nonnull annotations.
2454         * stdlib/stdlib.h: Likewise.
2455
2456 2004-09-20  H.J. Lu  <hongjiu.lu@intel.com>
2457
2458         * sysdeps/unix/sysv/linux/ia64/sysdep.h (DO_INLINE_SYSCALL):
2459         Renamed to ...
2460         (DO_INLINE_SYSCALL_NCS): This.
2461         (DO_INLINE_SYSCALL): New.
2462         (INLINE_SYSCALL): Updated.
2463         (INTERNAL_SYSCALL_NCS): Updated.
2464
2465 2004-09-21  Ulrich Drepper  <drepper@redhat.com>
2466
2467         * elf/sprof.c (load_shobj): Add support for reading symbol table
2468         from debuginfo file.
2469
2470         * elf/ldd.bash.in: Fix syntax errors.
2471
2472 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
2473
2474         * sysdeps/unix/sysv/linux/dl-execstack.c
2475         (_dl_make_stack_executable): Remove some duplication.
2476
2477         * nscd/nscd.c (options): Mark S option as hidden.
2478         (parse_opt): When S option is used, print warning message.
2479         * nscd/grpcache.c (adgrptbyX): Don't handle secure mode.
2480         * nscd/hstcache.c (addhstbyX): Don't handle secure mode.
2481         * nscd/aicache.c (addhstaiX): Don't handle secure mode.
2482         * nscd/pwdcache.c (addpwbyX): Don't handle secure mode.
2483
2484 2004-09-20  Roland McGrath  <roland@frob.com>
2485
2486         * elf/dl-load.c (__stack_prot): Only use PROT_GROWSUP/PROT_GROWSDOWN
2487         in initializer #if defined.
2488
2489 2004-09-18  Paul Eggert  <eggert@cs.ucla.edu>
2490
2491         [BZ #391]
2492         * stdlib/getsubopt.c: Merge fixes from gnulib.
2493         (__strchrnul) [!_LIBC]: Define and include "strchrnul.c".
2494         (getsubopt): Use prototypes, not K&R style.
2495         Fix bug: memcmp(A,B,N) was being invoked on a memory block B
2496         whose size might be smaller than N.  Use strncmp to avoid the bug.
2497
2498 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
2499
2500         * configure.in: If selinux has not explictly been requested, don't
2501         comment on it missing.
2502
2503         * elf/dl-load.c: Define __stack_prot.
2504         * sysdeps/unix/sysv/linux/dl-execstack.c: Don't define
2505         __stack_prot here, just declare it.
2506
2507 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
2508
2509         * configure.in (libc_cv_z_relro): Only set to yes if linker script
2510         contains DATA_SEGMENT_RELRO_END.
2511
2512 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
2513
2514         * elf/dl-load.c (_dl_map_object_from_fd): Add some error checking.
2515         Reorder code slightly.
2516         * elf/rtld.c (dl_main): No need to check whether l_info[DT_HASH]
2517         is non-null, _dl_setup_hash will do that.
2518
2519 2004-09-19  Ulrich Drepper  <drepper@redhat.com>
2520
2521         * sysdeps/unix/sysv/linux/setegid.c [HAVE_PTR__NPTL_SETXID]: Call
2522         callback to set IDs in all other threads as well.
2523         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
2524         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
2525         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
2526         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
2527         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
2528         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
2529         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
2530         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
2531         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
2532         * sysdeps/unix/sysv/linux/setuid.c: New file.
2533         * sysdeps/unix/sysv/linux/setgid.c: New file.
2534         * sysdeps/unix/sysv/linux/setreuid.c: New file.
2535         * sysdeps/unix/sysv/linux/setregid.c: New file.
2536         * sysdeps/unix/sysv/linux/setresuid.c: New file.
2537         * sysdeps/unix/sysv/linux/setresgid.c: New file.
2538         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NCS.
2539         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
2540         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
2541         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
2542         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
2543         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c: Use x86 version.
2544         * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c: Likewise.
2545         * sysdeps/unix/sysv/linux/sparc/sparc32/setresgid.c: New file.
2546         * sysdeps/unix/sysv/linux/sparc/sparc32/setresuid.c: New file.
2547         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove setresgid
2548         and setresuid.
2549         * nscd/aicache.c: Use pthread_seteuid_np instead of seteuid.
2550         * nscd/grpcache.c: Likewise.
2551         * nscd/hstcache.c: Likewise.
2552         * nscd/pwdcache.c: Likewise.
2553
2554         * resolv/res_mkquery.c (res_nmkquery): Fix typo.
2555
2556 2004-09-18  Ulrich Drepper  <drepper@redhat.com>
2557
2558         * sysdeps/unisx/sysv/linux/dl-execstack.c: Get protection flag
2559         from memory.
2560         * elf/dl-load.c (_dl_map_object_from_fd): Add PROT_EXEC flag to
2561         __stack_flags.
2562
2563         * sysdeps/posix/getaddrinfo.c (gaih_inet): Do not use
2564         gethostbyname3_r if we are not looking for the canonical name.
2565
2566         * resolv/res_mkquery.c (res_nmkquery): Randomize request ID every
2567         time.
2568
2569 2004-09-18  Roland McGrath  <roland@redhat.com>
2570
2571         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Pass fifth argument to
2572         system call.
2573
2574 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
2575
2576         * include/link.h (struct link_map): Add l_used element.
2577         * sysdeps/generic/ldsodefs.h: Define DL_DEBUG_UNUSED.
2578         * elf/rtld.c (process_dl_debug): Recognize unused.
2579         (dl_main): When unused debug flag is set check for unused direct
2580         dependencies.
2581         When printing dependencies and SONAME starts with /, omit the SONAME =>
2582         part.
2583         * elf/dl-lookup.c (_dl_lookup_symbol_x): Mark object in which the
2584         symbol has been found as used.
2585         * elf/ldd.bash.in: Add -u option.
2586
2587 2004-09-18  Jakub Jelinek  <jakub@redhat.com>
2588
2589         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
2590         Do nothing if __NR_set_tid_address is not defined.  [BZ #390]
2591
2592 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
2593
2594         * sysdeps/posix/getaddrinfo.c: Use gethostbyname3_r NSS function
2595         in case it is available.
2596
2597 2004-09-17  Jakub Jelinek  <jakub@redhat.com>
2598
2599         * nscd/nscd.c (parse_opt): Write arg string instead of (void *)
2600         key to the socket.
2601
2602 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
2603
2604         * misc/sys/cdefs.h: Define __nonnull using nonnull function attribute
2605         for gcc 3.3 and higher.
2606         * io/fcntl.h: Add __nonnull where appropriate.
2607         * io/ftw.h: Likewise.
2608         * io/utime.h: Likewise.
2609         * io/sys/poll.h: Likewise.
2610         * io/sys/sendfile.h: Likewise.
2611         * io/sys/stat.h: Likewise.
2612         * io/sys/statfs.h: Likewise.
2613         * io/sys/statvfs.h: Likewise.
2614         * posix/unistd.h: Likewise.
2615         * catgets/nl_types.h: Likewise.
2616         * crypt/crypt.h: Likewise.
2617         * debug/execinfo.h: Likewise.
2618
2619 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
2620
2621         * posix/glob.h: Remove cruft to make header usable outside glibc.
2622         The maintenance headache is too big.
2623
2624         * configure.in: Add test for required SELinux features.
2625         * config.make.in: Add have-selinux entry.
2626         * config.h.in: Add HAVE_SELINUX entry.
2627         * nscd/Makefile (nscd-modules): Add selinux.
2628         (CFLAGS-selinux.c): Add -fpie.
2629         Define selinux-LIBS and use in link line.
2630         * nscd/connections.c (handle_request): Check access SELinux permissions
2631         before processing request.
2632         * nscd/nscd.c (main): Initialize selinux_enabled and stop avc thread.
2633         * nscd/nscd_stat.c: Transmit and print AVC statistics.
2634         * nscd/selinux.c: New file.
2635         * nscd/selinux.h: New file.
2636         Patch mostly by Matthew Rickard <mjricka@epoch.ncsc.mil>.
2637
2638 2004-09-16  Jakub Jelinek  <jakub@redhat.com>
2639
2640         * nscd/nscd_helper.c (__nscd_unmap, get_mapping): Use __munmap
2641         instead of munmap.
2642
2643         * nscd/Makefile (CFLAGS-aicache.c): Set to -fpie.
2644
2645 2004-09-16  Thorsten Kukuk  <kukuk@suse.de>
2646
2647         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check
2648         __nss_not_use_nscd_hosts variable if nscd should be used or not.
2649
2650 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
2651
2652         * nscd/nscd_proto.h: Define NSS_NSCD_RETRY.
2653         Add __nscd_getai prototype.
2654         * nss/getXXbyYY_r.c: Remode definition of NSS_NSCD_RETRY.
2655         * nscd/nscd-client.h: Remove __nscd_getai prototype.
2656         * nscd/nscd_getai.c: Include nscd_proto.h.
2657
2658         * elf/ldd.bash.in: Add support for SELinux environments.
2659         Patch by Stephen Smalley <sds@epoch.ncsc.mil>.
2660
2661 2004-09-16  Roland McGrath  <roland@redhat.com>
2662
2663         * configure.in (--with-headers): Let argument contain a : separated
2664         list of directories to use, not just one.
2665         * configure: Regenerated.
2666
2667 2004-09-15  Richard Henderson  <rth@redhat.com>
2668
2669         * sysdeps/alpha/fpu/libm-test-ulps: Update.
2670         * scripts/data/c++-types-alpha-linux-gnu.data: New file.
2671
2672 2004-09-15  Ulrich Drepper  <drepper@redhat.com>
2673
2674         * nscd/aicache.c: Prefer using gethostbyname3_r NSS callback to also
2675         get ttl and canonical name.  Use these two values.
2676         * resolv/Versions: Export _nss_dns_gethostbyname3_r from libnss_dns.
2677         * resolv/nss_dns/dns-host.c (getanswer_r): Take two new parameters.
2678         If nonnull fill with TTL and pointer to canonical name respectively.
2679         (_nss_dns_gethostbyaddr_r): Pass NULL in new parameters of getanswer_r.
2680         (_nss_dns_gethostbyname2_r): Just wrapper around
2681         _nss_dns_gethostbyname3_r.
2682         (_nss_dns_gethostbyname3_r): Renamed from _nss_dns_gethostbyname2_r.
2683         Take two new parameters which as passed to getanswer_r.
2684
2685         * nscd/Makefile (rountines): Add nscd_getai.
2686         (nscd-modules): Add aicache.
2687         * nscd/aicache.c: New file.
2688         * nscd/nscd_getai.c: New file.
2689         * nscd/cache.c (prune_cache): Handle GETAI request type.
2690         * nscd/connections.c: Add GETAI support in request handling.
2691         * nscd/nscd-client.h (request_type): Add GETAI.
2692         Define ai_response_header and struct nscd_ai_result types.
2693         (struct datahead): Add aidata field.
2694         Declare __nscd_getai.
2695         * nscd/nscd.c: Add getaddrinfo definition to catch problems.
2696         * nscd/nscd.h: Declare addhstai and readdhstai.
2697
2698         * sysdeps/posix/getaddrinfo.c: Add support for using cached results.
2699         * posix/Makefile (CFLAGS-getaddrinfo.c): Add -DUSE_NSCD.
2700
2701         * nscd/nscd-client.h  (struct datahead): Use uint8_t instead of bool.
2702
2703 2004-09-14  Ulrich Drepper  <drepper@redhat.com>
2704
2705         * misc/sys/cdefs.h: Remove debugging text from __P and __PMT.
2706
2707 2004-09-13  Ulrich Drepper  <drepper@redhat.com>
2708
2709         * misc/sys/cdefs.h: Restore old definition of __P.
2710         * csu/munch.awk: Remove uses of __P and __PMT.
2711         * gmon/gmon.c: Likewise.
2712         * hesiod/hesiod.h: Likewise.
2713         * include/stdio.h: Likewise.
2714         * io/fts.c: Likewise.
2715         * libio/genops.c: Likewise.
2716         * libio/libioP.h: Likewise.
2717         * libio/fileops.c: Likewise.
2718         * libio/iolibio.h: Likewise.
2719         * libio/libio.h: Likewise.
2720         * libio/memstream.c: Likewise.
2721         * libio/oldfileops.c: Likewise.
2722         * libio/oldstdfiles.c: Likewise.
2723         * libio/iopopen.c: Likewise.
2724         * libio/vsnprintf.c: Likewise.
2725         * libio/vswprintf.c: Likewise.
2726         * libio/wgenops.c: Likewise.
2727         * libio/oldiopopen.c: Likewise.
2728         * locale/programs/xmalloc.c: Likewise.
2729         * locale/programs/xstrdup.c: Likewise.
2730         * malloc/mtrace.c: Likewise.
2731         * misc/getttyent.c: Likewise.
2732         * misc/getusershell.c: Likewise.
2733         * nis/rpcsvc/ypupd.h: Likewise.
2734         * posix/fnmatch.h: Likewise.
2735         * posix/glob.h: Likewise.
2736         * resolv/arpa/nameser.h: Likewise.
2737         * resolv/gethnamaddr.c: Likewise.
2738         * resolv/resolv.h: Likewise.
2739         * resolv/inet_net_ntop.c: Likewise.
2740         * resolv/inet_net_pton.c: Likewise.
2741         * resolv/res_init.c: Likewise.
2742         * resolv/nss_dns/dns-network.c: Likewise.
2743         * stdio-common/vfprintf.c: Likewise.
2744         * stdio-common/reg-printf.c: Likewise.
2745         * sysdeps/generic/chflags.c: Likewise.
2746         * sysdeps/generic/fchflags.c: Likewise.
2747         * sysdeps/generic/glob.c: Likewise.
2748         * sysdeps/generic/printf_fphex.c: Likewise.
2749         * sysdeps/generic/memcmp.c: Likewise.
2750         * sysdeps/generic/memcopy.h: Likewise.
2751         * sysdeps/generic/morecore.c: Likewise.
2752         * sysdeps/generic/sstk.c: Likewise.
2753         * sysdeps/posix/sigvec.c: Likewise.
2754         * sysdeps/posix/ttyname_r.c: Likewise.
2755         * sysdeps/standalone/arm/bits/errno.h: Likewise.
2756         * sysdeps/standalone/standalone.h: Likewise.
2757         * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise.
2758         * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
2759         * sysdeps/unix/arm/start.c: Likewise.
2760         * sysdeps/unix/bsd/sigaction.c: Likewise.
2761         * sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise.
2762         * sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise.
2763         * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise.
2764         * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise.
2765         * sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise.
2766         * sysdeps/unix/sparc/start.c: Likewise.
2767         * sysdeps/unix/sysv/getdents.c: Likewise.
2768         * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise.
2769         * sysdeps/unix/sysv/irix4/getgroups.c: Likewise.
2770         * sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
2771         * sysdeps/unix/sysv/irix4/getrusage.c: Likewise.
2772         * sysdeps/unix/sysv/irix4/pathconf.c: Likewise.
2773         * sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
2774         * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise.
2775         * sysdeps/unix/sysv/irix4/start.c: Likewise.
2776         * sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
2777         * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise.
2778         * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise.
2779         * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
2780         * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise.
2781         * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
2782         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
2783         * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise.
2784         * sysdeps/unix/sysv/sysv4/setsid.c: Likewise.
2785         * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
2786         * sysdeps/unix/sysv/sysv4/waitpid.c: Likewise.
2787         * sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise.
2788         * time/tzset.c: Likewise.
2789         * time/strftime_l.c: Likewise.
2790         * time/strptime_l.c: Likewise.
2791         * crypt/md5.h: Likewise.
2792
2793 2004-09-13  Andreas Jaeger  <aj@suse.de>
2794
2795         * configure.in: Support GCC 4.x.
2796         * configure: Regenerated.
2797
2798 2004-09-13  Thorsten Kukuk  <kukuk@suse.de>
2799
2800         * nscd/nscd_stat.c: Don't access dbs[cnt].head for disabled services.
2801
2802         * nscd/nscd.init: Fix path to socket.
2803
2804 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
2805
2806         * nscd/nscd_helper.c (get_mapping): Correctly check cmsg length.
2807         Avoid file descriptor leak in case of size mismatch.
2808
2809         * nscd/nscd-client.h: Fix database structure layout for biarch.
2810         * nscd/mem.c (gc): Add casts to avoid warnings.
2811
2812         * nss/getent.c: Don't preconstruct help message.  Do it only when
2813         needed.
2814
2815         * locale/programs/locale.c: Simplify help message printing.
2816
2817 2004-09-12  Roland McGrath  <roland@frob.com>
2818
2819         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]: Add decls
2820         missing in last change.
2821
2822 2004-09-11  Thorsten Kukuk  <kukuk@suse.de>
2823
2824         * nis/nss_compat/compat-grp.c: Check that buflen is greater zero
2825         before writing data into the buffer with negative offset.
2826         * nis/nss_compat/compat-initgroups.c: Likewise.
2827         * nis/nss_compat/compat-pwd.c: Likewise.
2828         * nis/nss_compat/compat-spwd.c Likewise.
2829
2830 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
2831
2832         * misc/syslog.c (vsyslog): Fix copying of PID in case of
2833         out-of-memory situation.  [BZ #365].
2834
2835         * sysdeps/alpha/fpu/bits/mathinline.h: Use __NTH instead of
2836         __THROW in inline function definitions.
2837
2838         * posix/spawn.h [__USE_GNU]: Define POSIX_SPAWN_USEVFORK.
2839         * posix/spawnattr_setflags.c: Check whether any unknown bit is set
2840         in FLAGS parameter and fail if this is the case.
2841         * sysdeps/posix/spawni.c: Use vfork if POSIX_SPAWN_USEVFORK flag is
2842         set.
2843
2844         * nscd/pwdcache.c (cache_addpw): Sync also negative results to disk.
2845         * nscd/grpcache.c (cache_addgr): Likewise.
2846         * nscd/hstcache.c (cache_addhst): Likewise.
2847
2848 2004-09-11  Roland McGrath  <roland@frob.com>
2849
2850         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]:
2851         Set _dl_phdr and _dl_phnum.
2852         (init1): When bootstrap task, bail early and never examine *D.
2853
2854 2004-09-11  Alfred M. Szmidt  <ams@kemisten.nu>
2855
2856         * sysdeps/mach/hurd/i386/tls.h (__i386_set_gdt) [!HAVE_I386_SET_GDT]:
2857         Cast THR, SEL and DESC to `void'.
2858
2859 2004-09-11  Ulrich Drepper  <drepper@redhat.com>
2860
2861         * nscd/connections.c (nscd_run): Call setup_thread only for enabled
2862         databases.
2863
2864         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Use __NTH for __cmsg_nxthdr.
2865
2866 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
2867
2868         * nscd/nscd.c (pagesize_m1): New variable.
2869         (main): Initialize it.
2870         * nscd/nscd.h: Declare pagesize_m1.
2871         * nscd/hstcache.c: Pass correctly aligned address to msync.
2872         * nscd/grpcache.c: Likewise.
2873         * nscd/pwdcache.c: Likewise.
2874
2875 2004-09-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2876
2877         * sysdeps/unix/sysv/linux/sh/pthread_cond_wait.S: Decrement
2878         __nwaiters.  If pthread_cond_destroy has been called and this is
2879         the last waiter, signal pthread_cond_destroy caller and avoid
2880         using the pthread_cond_t structure after unlock.
2881         * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise.
2882
2883 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
2884
2885         * sysdeps/unix/sysv/linux/kernel-features.h: Don't define
2886         __ASSUME_CLONE_STOPPED.
2887
2888 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
2889
2890         * misc/sys/cdefs.h (__REDIRECT_NTH): Change order of __THROW and
2891         __asm__ for C++.  [BZ #377]
2892
2893 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
2894
2895         * nscd/nscd_stat.c: Improve output by also printing .shared and
2896         .persistent.
2897
2898         * nscd/connections.c: Allow cache sharing to be really disabled.
2899
2900 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
2901
2902         * malloc/malloc.c (_int_free): Only do arena boundary check for
2903         contiguous arenas.
2904
2905 2004-09-10  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
2906
2907         * stdlib/longlong.h [__M32R__] (add_ssaaaa, sub_ddmmss): Fix broken
2908         instruct operands.
2909         * elf/elf.h: Add R_M32R_* relocs.
2910
2911 2004-09-09  Ulrich Drepper  <drepper@redhat.com>
2912
2913         * misc/sys/cdefs.h: Despite what the gcc manual says, gcc 3.2
2914         seems not to support the nothrow attribute.  Use it only for gcc
2915         3.3 and higher.
2916
2917         * malloc/hooks.c (top_check): Print top chunk corruption as normal
2918         error message.
2919
2920         * malloc/malloc.c (malloc_printerr): Don't make informational
2921         message look like error message.
2922
2923 2004-09-09  Andreas Jaeger  <aj@suse.de>
2924
2925         * nscd/Makefile (CFLAGS-nscd_setup_thread.c): Set to -fpie.
2926
2927 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
2928
2929         * sysdeps/unix/sysv/linux/bits/socket.h (__SCM_CONNECT): Removed.
2930
2931         * malloc/malloc.c (_int_free): Add inexpensive double free and
2932         memory corruption tests.
2933         (malloc_printf_nc): Renamed to malloc_printerr.  Second parameter
2934         is no format string anymore.  Don't use stdio.  Adjust all callers.
2935         * malloc/hooks.c: Adjust malloc_printf_nc callers.
2936
2937 2004-09-08  Roland McGrath  <roland@redhat.com>
2938
2939         * malloc/mcheck.c: Don't use __P.
2940         Use prototypes definitions for static functions.
2941
2942 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
2943
2944         * sysdeps/ia64/fpu/bits/mathinline.h: Use __NTH instead of __THROW.
2945
2946 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
2947             Jakub Jelinek  <jakub@redhat.com>
2948
2949         * nscd/nscd-client.h: Add a few #includes.
2950
2951         * nscd/Makefile (nscd-modules): Add nscd_setup_thread.
2952         * nscd/connections.c (nscd_run): Call setup_thread for maintenance
2953         threads.
2954         * nscd/nscd-client.h (struct database_pers_head): Add
2955         nscd_certainly_running field.
2956         * nscd/nscd.h: Declare setup_thread.
2957         * nscd/nscd_helper.c (__nscd_get_map_ref): Avoid the time test if
2958         nscd_certainly_running is nonzero.
2959         * sysdeps/generic/nscd_setup_thread.c: New file.
2960         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: New file.
2961
2962 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
2963
2964         * nscd/connections.c: Implement r/o sharing of nscd's cache with client
2965         processes via shared memory.
2966         * nscd/nscd-client.h: Likewise.
2967         * nscd/nscd.h: Likewise.
2968         * nscd/nscd_conf.c: Likewise.
2969         * nscd/nscd_getgr_r.c: Likewise.
2970         * nscd/nscd_getpw_r.c: Likewise.
2971         * nscd/nscd_gethst_r.c: Likewise.
2972         * nscd/nscd.conf: Add new config parameters.
2973         * nscd/Makefile (aux): Add nscd_helper.
2974         * nscd/nscd_helper.c: New file.
2975         * nscd/mem.c (gc): Indicate beginning and end of the gc cycle.
2976
2977         * nscd/hstcache.c: Simplify a lot.  We cache only the request itself,
2978         no derived information.
2979         * connections.c (nscd_init): Fix bug in testing size of the persistent.
2980
2981         * nis/Makefile (aux): Add nis_hash.
2982         * nis/nis_hash.c: New file.  Split out from nis_util.c.
2983         * nis/nis_util.c: Move __nis_hash code in separate file.
2984
2985         * csu/tst-atomic.c: Improve atomic_increment_val test which would
2986         not have found a ppc bug.
2987
2988         * sysdeps/s390/fpu/bits/mathinline.h: Remove unnecessary includes.
2989
2990         * malloc/arena.c: Remove __MALLOC_P uses.
2991         * malloc/malloc.c: Likewise.
2992
2993         * malloc/mtrace.c: Remove __P uses.
2994         * malloc/mcheck-init.c: Likewise.
2995
2996 2004-09-07  Jakub Jelinek  <jakub@redhat.com>
2997
2998         * sysdeps/powerpc/powerpc64/configure.in: New file.
2999         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
3000         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
3001         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
3002         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
3003         BODY_PREFIX): Define.
3004         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
3005         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
3006         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
3007         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
3008         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
3009
3010 2004-09-07  Ulrich Drepper  <drepper@redhat.com>
3011
3012         * malloc/malloc.h: Don't define __THROW if it is already defined.
3013
3014         * sysdeps/powerpc/bits/atomic.h (atomic_increment): Define.
3015         (atomic_decrement): Define.
3016
3017         * sysdeps/powerpc/bits/atomic.h: Implement atomic_increment_val and
3018         atomic_decrement_val.
3019         * sysdeps/powerpc/powerpc32/bits/atomic.h: Likewise.
3020         * sysdeps/powerpc/powerpc64/bits/atomic.h: Likewise.
3021
3022         * csu/tst-atomic.c (do_test): Add tests of atomic_increment_val
3023         and atomic_decrement_val.
3024
3025         * include/atomic.h: Define atomic_increment_val, atomic_decrement_val,
3026         and atomic_delay is not already defined.
3027         * sysdeps/i386/i486/bits/atomic.h: Define atomic_delay.
3028         * sysdeps/x86_64/bits/atomic.h: Likewise.
3029
3030         * miscd/sys/cdefs.h (__NTH): New macro.
3031         (__THROW): Define using nothrow attribute for C code and gcc >= 3.2.
3032         (__REDIRECT_NTH): New macro.
3033         * argp/argp.h: Use __NTH and __REDIRECT_NTH where necessary.
3034         * ctype/ctype.h: Likewise.
3035         * dirent/dirent.h: Likewise.
3036         * io/fcntl.h: Likewise.
3037         * io/sys/sendfile.h: Likewise.
3038         * io/sys/stat.h: Likewise.
3039         * io/sys/statfs.h: Likewise.
3040         * io/sys/statvfs.h: Likewise.
3041         * libio/bits/stdio.h: Likewise.
3042         * misc/sys/mman.h: Likewise.
3043         * posix/unistd.h: Likewise.
3044         * resource/sys/resource.h: Likewise.
3045         * rt/aio.h: Likewise.
3046         * signal/signal.h: Likewise.
3047         * stdlib/stdlib.h: Likewise.
3048         * string/argz.h: Likewise.
3049         * string/string.h: Likewise.
3050         * sysdeps/generic/inttypes.h: Likewise.
3051         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
3052         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
3053         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
3054         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
3055         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
3056         * sysdeps/unix/sysv/linux/bits/sys/sysmacros.h: Likewise.
3057         * wcsmbs/wchar.h: Likewise.
3058
3059         * sysdeps/generic/glob.c: Use __PMT isntead of __P where appropriate.
3060
3061         * resolv/gethnamaddr.c (getanswer): Remove __P use in variable
3062         definition.
3063
3064         * io/sys/poll.h: Remove __THROW from poll prototype, it's a
3065         cancellation point.
3066
3067         * io/fts.c (fts_open): Remove uses of __P.
3068
3069         * include/stdlib.h: No need to use __THROW in this header.
3070
3071 2004-09-06  Roland McGrath  <roland@frob.com>
3072
3073         * sysdeps/mach/hurd/dl-sysdep.c (__writev): Does use assert on FD
3074         validity, since __assert_fail gets to here anyway.  Just fail.
3075
3076 2004-09-06  Ulrich Drepper  <drepper@redhat.com>
3077
3078         * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix problem with
3079         AF_UNSPEC lookup with AI_CANONNAME of name which has only IPv6
3080         addresses.
3081
3082 2004-09-05  Richard Henderson  <rth@redhat.com>
3083
3084         * sysdeps/alpha/fpu/fraiseexcpt.c: Remove file.
3085         * sysdeps/unix/sysv/linux/kernel-features.h
3086         (__ASSUME_IEEE_RAISE_EXCEPTION): New.
3087         * sysdeps/unix/sysv/linux/alpha/fraiseexcpt.c: New file.
3088         * sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h: New file.
3089         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use it.
3090         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
3091
3092 2004-09-05  Richard Henderson  <rth@redhat.com>
3093
3094         * sysdeps/alpha/div.S: Save and restore FPCR around fp operations.
3095         * sysdeps/alpha/divl.S, sysdeps/alpha/divq.S, sysdeps/alpha/divqu.S,
3096         sysdeps/alpha/ldiv.S, sysdeps/alpha/reml.S, sysdeps/alpha/remq.S,
3097         sysdeps/alpha/remqu.S: Likewise.
3098         * sysdeps/alpha/div_libc.h (FRAME): Increase to 64.
3099
3100 2004-09-05  Ulrich Drepper  <drepper@redhat.com>
3101
3102         * nscd/cache.c (cache_add): Correctly log GETHOSTBYADDR and
3103         GETHOSTBYADDRv6 requests.
3104
3105 2004-09-04  Ulrich Drepper  <drepper@redhat.com>
3106
3107         * nscd/pwdcache.c (cache_addpw): Use correct key length in
3108         cache_add calls.
3109         * nscd/grpcache.c (cache_addgr): Likewise.
3110
3111 2004-09-03  Alfred M. Szmidt  <ams@kemisten.nu>
3112
3113         * sysdeps/mach/hurd/i386/tls.h (THREAD_DTV): Changed type of _DTV
3114         to `dtv_t *'.
3115
3116 2004-09-03  Ulrich Drepper  <drepper@redhat.com>
3117
3118         * nscd/nscd.c (parse_opt): Use writev instead of two write for
3119         invalidate command.
3120
3121 2004-09-02  Ulrich Drepper  <drepper@redhat.com>
3122
3123         * nscd/connections.c (nscd_run): Check early for invalid request types.
3124
3125 2004-09-02  Roland McGrath  <roland@frob.com>
3126
3127         * sysdeps/mach/hurd/i386/tls.h (TLS_INIT_TP_EXPENSIVE): New macro.
3128         (INSTALL_NEW_DTV, THREAD_DTV): Rewritten to fetch the right word.
3129         (THREAD_SELF): New macro.
3130
3131 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
3132
3133         [BZ #357]
3134         * stdlib/tst-setcontext.c (test_stack): Added test for stack clobber.
3135         (main): Call test_stack.
3136         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
3137         (__getcontext): Push stack frame then save parms in local frame.
3138         Improve instruction scheduling.
3139         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
3140         (__swapcontext): Likewise.
3141
3142 2004-09-01  Andreas Schwab  <schwab@suse.de>
3143
3144         * sysdeps/unix/sysv/linux/ia64/sys/ucontext.h [g++ >= 3.5]: Use
3145         __builtin_offsetof.
3146
3147 2004-09-01  Jakub Jelinek  <jakub@redhat.com>
3148
3149         [BZ #361]
3150         * posix/fnmatch_loop.c (FCT): For backslash between brackets, branch
3151         to normal_bracket after fetching the next character.
3152         * posix/tst-fnmatch.input: Add 25 new tests.
3153         Reported by Markus Oberhumer <markus@oberhumer.com>.
3154
3155 2004-09-01  Ulrich Drepper  <drepper@redhat.com>
3156
3157         * elf/rtld.c (dl_main): First check existence of ld.so.preload
3158         with access.
3159
3160 2004-09-01  Roland McGrath  <roland@redhat.com>
3161
3162         * sysdeps/unix/sysv/linux/bits/waitflags.h
3163         (WSTOPPED, WEXITED, WCONTINUED, WNOWAIT): New macros.
3164         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_WAITID_SYSCALL):
3165         New macro.
3166         * sysdeps/unix/sysv/linux/waitid.c: New file.  Use new syscall when
3167         available, or fall back to the waitpid-based generic code.
3168
3169 2004-08-14  Alfred M. Szmidt  <ams@kemisten.nu>
3170
3171         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Let gcc
3172         clobber the `ebp' register.
3173         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Removed.
3174         Reverts change from 2004-05-07 by Jeroen Dekkers.
3175
3176         * sysdeps/mach/hurd/i386/init-first.c (init): Changed the type of
3177         NEWSP from `void *' to `int *'.  Changed all casts accordingly.
3178
3179 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
3180
3181         * wcsmbs/wcsmbsload.c (__wcsmbs_getfct): Move attribute_hidden
3182         before return type.
3183         * locale/localename.c (__current_locale_name): Likewise.
3184
3185 2004-08-30  Roland McGrath  <roland@frob.com>
3186
3187         * scripts/extract-abilist.awk: If `lastversion' variable defined, omit
3188         later sets from output.
3189         * Makerules (check-abi): Pass option to set that with value of
3190         LIB-abi-frozen variable if one is set.
3191
3192         * abilist/libcidn.abilist: New file (empty).
3193
3194 2004-08-30  Jakub Jelinek  <jakub@redhat.com>
3195
3196         * posix/bits/posix1_lim.h (_POSIX_CHILD_MAX, _POSIX_OPEN_MAX): If
3197         not __USE_XOPEN2K, use the Unix98 mandated values.
3198
3199 2004-08-27  Roland McGrath  <roland@redhat.com>
3200
3201         * configure.in (usetls): Default to yes.
3202         * configure: Regenerated.
3203
3204 2004-08-26  Roland McGrath  <roland@redhat.com>
3205
3206         * configure.in (add_ons_automatic): New variable, set to yes or no
3207         indicating --enable-add-ons with no explicit list.
3208         (running add-on fragments): Allow a fragment to modify $libc_add_on
3209         and have that affect its place in the list of add-ons to use.
3210         * configure: Regenerated.
3211
3212 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
3213
3214         * nscd/cache.c: Major rewrite.  The data is now optionally kept in
3215         a mmaped memory region which is automatically mirrored on disk.
3216         This implements persistent data storage.  The Memory handled
3217         needed to be completely revamped, it now uses a garbage collection
3218         mechanism instead of malloc.
3219         * nscd/connections.c: Likewise.
3220         * nscd/nscd.c: Likewise.
3221         * nscd/nscd.h: Likewise.
3222         * nscd/nscd_conf.c: Likewise.
3223         * nscd/nscd_stat.c: Likewise.
3224         * nscd/grpcache.c: Likewise.
3225         * nscd/hstcache.c:: Likewise.
3226         * nscd/pwdcache.c:: Likewise.
3227         * nscd/Makefile: Add rules to build mem.c.
3228         * nscd/mem.c: New file.
3229         * nscd/nscd.conf: Describe new configuration options.
3230
3231 2004-08-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3232
3233         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
3234         NO_SGIDEFS_H isn't defined.
3235         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
3236         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
3237
3238         * sysdeps/unix/sysv/linux/sh/pread.c: Define NO_SGIDEFS_H and
3239         _MIPS_SIM.
3240         * sysdeps/unix/sysv/linux/sh/pwrite.c: Likewise.
3241         * sysdeps/unix/sysv/linux/sh/pread64.c: Likewise.
3242         * sysdeps/unix/sysv/linux/sh/pwrite64.c: Likewise.
3243
3244 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
3245
3246         * nscd/connections.c (nscd_run): atomic_increment was not missing.
3247
3248         * sysdeps/gnu/Makefile (libdl-sysdep_routines): Don't add eval.
3249         Patch by Greg Schafer.
3250
3251 2004-08-25  Richard Henderson  <rth@redhat.com>
3252
3253         * sysdeps/alpha/elf/start.S (_start): Use $15 as frame unwind
3254         instead of $31.  Zero $15.
3255         * sysdeps/unix/sysv/linux/alpha/clone.S (thread_start): Likewise.
3256
3257 2004-08-25  Ulrich Drepper  <drepper@redhat.com>
3258
3259         * sysdeps/powerpc/powerpc64/bits/atomic.h
3260         (__arch_compare_and_exchange_bool_32_acq): Fix case where oldval
3261         is negative.
3262         (__arch_compare_and_exchange_bool_32_rel): Likewise.
3263
3264         * nscd/connections.c: Make socket nonblocking so that threads
3265         don't get stuck on accept.  Fix locking.
3266
3267         * nscd/grpcache.c (cache_addgr): Use copy of original key in hash
3268         entry with alternative key.
3269         * nscd/pwdcache.c (cache_addpw): Likewise.
3270
3271 2004-08-25  Richard Sandiford  <rsandifo@redhat.com>
3272
3273         * sysdeps/mips/dl-machine.h (_dl_start_user): Don't set
3274         __libc_stack_end.
3275
3276 2004-08-23  Ulrich Drepper  <drepper@redhat.com>
3277
3278         * sysdeps/gnu/netinet/udp.h: Cosmetic changes.  Remove unnecessary
3279         __BEGIN_DECLS/__END_DECLS.
3280
3281 2004-08-23  Andreas Jaeger  <aj@suse.de>
3282
3283         [BZ #341]
3284         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_NOATIME): Define.
3285         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (O_NOATIME): Likewise.
3286         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (O_NOATIME): Likewise.
3287         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (O_NOATIME): Likewise.
3288         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (O_NOATIME): Likewise.
3289         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_NOATIME): Likewise.
3290         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (O_NOATIME): Likewise.
3291         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (O_NOATIME): Likewise.
3292         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_NOATIME): Likewise.
3293         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (O_NOATIME): Likewise.
3294         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (O_NOATIME): Likewise.
3295         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_NOATIME): Likewise.
3296         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (O_NOATIME): Likewise.
3297
3298 2004-08-21  Ulrich Drepper  <drepper@redhat.com>
3299
3300         * malloc/hooks.c (DEFAULT_CHECK_ACTION): Moved to malloc.c.
3301         (check_action): Likewise.
3302         When printing error messages, use malloc_printf_nc now instead of
3303         fiddling with the streams cancellation flag in every place.
3304         * malloc/malloc.c (DEFAULT_CHECK_ACTION): New definition.  Change
3305         default to 3.
3306         (check_action): New variable.
3307         (unlink): Print error message and eventually terminate in case list
3308         is corrupted.
3309         (malloc_printf_nc): New function.  Use it in _int_free.
3310         Change proposed by Arjan van de Ven.
3311
3312         * dlfcn/Makefile: Don't build eval.c anymore.
3313
3314 2004-08-20  Roland McGrath  <roland@frob.com>
3315
3316         * csu/Makefile ($(objpfx)version-info.h): Use printf in place
3317         of echo -e for POSIX.2 portability.
3318         Reported by Paul Jarc <prj@po.cwru.edu>.
3319
3320 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
3321
3322         * sysdeps/posix/getaddrinfo.c (gaih_inet): Minor optimizations in
3323         list generation.
3324
3325         * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't use
3326         getcanonname_r function if AI_CANONNAME flag is not set in
3327         request.
3328
3329         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss):
3330         Initialize mysize with limits only if latter is >= 0.  Use mysize
3331         in malloc call.
3332
3333 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
3334
3335         * sysdeps/posix/getaddrinfo.c (gaih_inet): Cast canon to (char *)
3336         to avoid warning.
3337
3338         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Initialize
3339         status to NSS_STATUS_UNAVAIL.
3340
3341 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
3342
3343         * sysdeps/posix/getaddrinfo.c (gaih_inet): Use h->h_name in the
3344         cannoname lookup since it has the FQDN even if the original NAME
3345         value has not.
3346
3347 2004-08-18  Ulrich Drepper  <drepper@redhat.com>
3348
3349         * sysdeps/posix/getaddrinfo.c (gaih_inet): Store NAME parameter
3350         pointer in new variable ORIG_NAME and use this pointer when
3351         determination of canonical name failed, not the possibly IDN
3352         translated value of NAME.
3353
3354 2004-08-17  Ulrich Drepper  <drepper@redhat.com>
3355
3356         * resolv/resolv.h (RES_DEFAULT): Add RES_NOIP6DOTINT.
3357         * resolv/res_init.c (res_setoptions): Recognize ip6-dotint option.
3358         Reset RES_NOIP6DOTINT flag in this case..
3359
3360         * sysdeps/posix/getaddrinfo.c: Fix memory handling of
3361         ai_canonname.
3362
3363 2004-08-16  Ulrich Drepper  <drepper@redhat.com>
3364
3365         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Don't use
3366         CNAME records, we better follow the chain of CNAME records which
3367         can be accomplished with A/AAAA lookups.
3368
3369 2004-08-15  Roland McGrath  <roland@redhat.com>
3370
3371         * sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who):
3372         Remove __RUSAGE_BOTH constant and RUSAGE_BOTH macro.
3373         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
3374         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
3375         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
3376
3377 2004-08-15  Roland McGrath  <roland@frob.com>
3378
3379         * sysdeps/i386/i686/Makefile (elide-routines.os): Append hp-timing to
3380         this, not ...
3381         (static-only-routines): ... this.
3382         * sysdeps/ia64/Makefile: Likewise.
3383         * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
3384         * sysdeps/sparc/sparc64/Makefile: Likewise.
3385         * sysdeps/x86_64/Makefile: Likewise.
3386         * sysdeps/i386/i686/hp-timing.c: Revert copyright terms change.
3387         * sysdeps/ia64/hp-timing.c: Likewise.
3388         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
3389         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
3390
3391         * csu/elf-init.c: Update copyright terms including special exception
3392         for these trivial files, which are statically linked into executables
3393         that use dynamic linking for the significant library code.
3394         * io/fstat.c: Likewise.
3395         * io/fstat64.c: Likewise.
3396         * io/lstat.c: Likewise.
3397         * io/lstat64.c: Likewise.
3398         * io/stat.c: Likewise.
3399         * io/stat64.c: Likewise.
3400         * stdlib/atexit.c: Likewise.
3401         * sysdeps/alpha/elf/initfini.c: Likewise.
3402         * sysdeps/alpha/elf/start.S: Likewise.
3403         * sysdeps/arm/elf/start.S: Likewise.
3404         * sysdeps/cris/elf/start.S: Likewise.
3405         * sysdeps/generic/initfini.c: Likewise.
3406         * sysdeps/generic/mknod.c: Likewise.
3407         * sysdeps/hppa/elf/initfini.c: Likewise.
3408         * sysdeps/hppa/elf/start.S: Likewise.
3409         * sysdeps/i386/elf/start.S: Likewise.
3410         * sysdeps/i386/i686/hp-timing.c: Likewise.
3411         * sysdeps/ia64/elf/initfini.c: Likewise.
3412         * sysdeps/ia64/elf/start.S: Likewise.
3413         * sysdeps/ia64/hp-timing.c: Likewise.
3414         * sysdeps/m68k/elf/start.S: Likewise.
3415         * sysdeps/mach/start.c: Likewise.
3416         * sysdeps/mips/elf/start.S: Likewise.
3417         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
3418         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
3419         * sysdeps/s390/s390-32/elf/start.S: Likewise.
3420         * sysdeps/s390/s390-32/initfini.c: Likewise.
3421         * sysdeps/s390/s390-64/elf/start.S: Likewise.
3422         * sysdeps/s390/s390-64/initfini.c: Likewise.
3423         * sysdeps/sh/elf/initfini.c: Likewise.
3424         * sysdeps/sh/elf/start.S: Likewise.
3425         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
3426         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
3427         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
3428         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
3429         * sysdeps/standalone/i386/start.S: Likewise.
3430         * sysdeps/standalone/i960/start.S: Likewise.
3431         * sysdeps/standalone/m68k/m68020/start.S: Likewise.
3432         * sysdeps/unix/arm/start.c: Likewise.
3433         * sysdeps/unix/bsd/osf/alpha/start.S: Likewise.
3434         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
3435         * sysdeps/unix/sparc/start.c: Likewise.
3436         * sysdeps/unix/start.c: Likewise.
3437         * sysdeps/unix/sysv/aix/start.s: Likewise.
3438         * sysdeps/unix/sysv/irix4/start.c: Likewise.
3439         * sysdeps/x86_64/elf/initfini.c: Likewise.
3440         * sysdeps/x86_64/elf/start.S: Likewise.
3441
3442 2004-08-15  Roland McGrath  <roland@redhat.com>
3443
3444         [BZ #227]
3445         * sysdeps/unix/sysv/linux/kernel-features.h
3446         (__ASSUME_BRK_PAGE_ROUNDED): New macro.
3447         * sysdeps/unix/sysv/linux/dl-sysdep.c (frob_brk)
3448         [! __ASSUME_BRK_PAGE_ROUNDED]: Adjust the break up if it falls within
3449         the partial page after the dynamic linker's own data segment.
3450
3451 2004-08-15  Ulrich Drepper  <drepper@redhat.com>
3452
3453         * sysdeps/posix/getaddrinfo.c (gaih_inet): Optimize generation of
3454         v4-mapped addresses a bit.
3455         (gethosts): Move alloca out of macro, so that it is done only once.
3456
3457         * sysdeps/posix/getaddrinfo.c (gaih_addrtuple): Change type of
3458         addr to avoid casts.
3459         (gethosts): Removed.
3460         (gethosts2): Renamed to gethosts.  Make it usable for family !=
3461         AF_UNSPEC.  Fix AI_V4MAPPED.
3462         (gaih_inet): Remove use of old gethosts.  Always use what used to be
3463         gethosts2.  If entry is found, try to use the same NSS module's
3464         getcanonname_r function.  Use gethostbyaddr for AI_CANONNAME only
3465         if getcanonname_r was not available.  Fix filtering of AI_V4MAPPED
3466         addresses.  Numerous cleanups.
3467         * resolv/nss_dns/dns-canon.c: New file.
3468         * resolv/Makefile (libnss_dns-routines): Add dns-canon.
3469         * resolv/Versions (libnss_dns): Add _nss_dns_getcanonname_r.
3470
3471         * elf/Makefile: Add rules to build and run tst-dlopenrpath.
3472         * elf/tst-dlopenrpath.c: New file.
3473         * elf/tst-dlopenrpathmod.c: New file.
3474
3475         * intl/tst-gettext.sh: Adjust for change of de.po file to UTF-8.
3476         * intl/tst-gettext.c: Likewise.
3477
3478         * nss/getent.c (ahosts_keys_int): Correctly print IPv6 addresses.
3479
3480         * nss/getent.c: Allow queries for getaddrinfo with AF_INET and
3481         AF_INET6.
3482
3483 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
3484
3485         * po/de.po: Update from translation team.
3486
3487 2004-08-14  Roland McGrath  <roland@frob.com>
3488
3489         * sysdeps/mach/configure: Regenerated.
3490         * sysdeps/mach/hurd/configure: Regenerated.
3491