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