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