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