Another version of the free checks.
[glibc.git] / ChangeLog
blob2fbe2f3a14ba6a9c867d2870a7452e8e2c7f13f4
1 2004-11-17  Randolph Chung  <tausq@debian.org>
3         * sysdeps/hppa/dl-machine.h (TRAMPOLINE_TEMPLATE): Add unwind
4         annotations.
6 2004-11-18  Jakub Jelinek  <jakub@redhat.com>
8         [BZ #544]
9         * posix/regex.h (RE_NO_SUB): New define.
10         * posix/regex_internal.h (OP_DELETED_SUBEXP): New.
11         (re_dfa_t): Add subexp_map.
12         * posix/regcomp.c (struct subexp_optimize): New type.
13         (optimize_subexps): New routine.
14         (re_compile_internal): Call it.
15         (re_compile_pattern): Set preg->no_sub to 1 if RE_NO_SUB.
16         (free_dfa_content): Free subexp_map.
17         (calc_inveclosure, calc_eclosure): Skip OP_DELETED_SUBEXP
18         nodes.
19         * posix/regexec.c (re_search_internal): If subexp_map
20         is not NULL, duplicate registers as needed.
21         * posix/Makefile: Add rules to build and run tst-regex2.
22         * posix/tst-regex2.c: New test.
23         * posix/rxspencer/tests: Fix last two tests (\0 -> \1).
24         Add some new tests for nested subexpressions.
26 2004-11-18  Ulrich Drepper  <drepper@redhat.com>
28         * libio/libio.h (_IO_FLAGS2_FORTIFY): Renamed from
29         _IO_FLAGS2_CHECK_PERCENT_N.
30         * debug/fprintff_chk.c: Adjust all users.
31         * debug/printf_chk.c: Likewise.
32         * debug/vfprintf_chk.c: Likewise.
33         * debug/vprintf_chk.c: Likewise.
34         * debug/vsnprintf_chk.c: Likewise.
35         * debug/vsprintf_chk.c: Likewise.
36         * stdio-common/vfprintf.c: Likewise.  Detect missing %N$ formats.
37         * debug/tst-chk1.c: Test detection of missing %N$ formats.
39 2004-11-15  Jakub Jelinek  <jakub@redhat.com>
41         * posix/bug-regex24.c: Include string.h.
43         * nis/nis_clone_obj.c (nis_clone_object): Rename out3 label to out2
44         and out2 to out.  Remove out label.  Formatting.
46 2004-11-15  Ulrich Drepper  <drepper@redhat.com>
48         * include/stdio.h: Do not mark __libc_message as noreturn.
49         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Add loop to
50         fool gcc.  Include <stdbool.h>.
51         * sysdeps/posix/libc_fatal.c (__libc_fatal): Add loop to fool gcc.
52         (__libc_message): Fix typo.
54 2004-11-13  Ulrich Drepper  <drepper@redhat.com>
56         * malloc/malloc.c (malloc_state): stat_lock_* elements need only
57         be defined if THREAD_STATS is defined.  Remove pad0_ since it does
58         not align with cache line sizes in general anyway.
60 2004-11-13  Jakub Jelinek  <jakub@redhat.com>
62         * elf/rtld.c (print_statistics): Avoid segfaults if not all namespaces
63         are used.  Fix computation of num_relative_relocations on RELA
64         architectures other than IA-64 and Alpha.
66 2004-11-13  Ulrich Drepper  <drepper@redhat.com>
68         * malloc/malloc.c (_int_free): Use munmap_chunk for handling
69         mmaped memory.
71 2004-11-12  Ulrich Drepper  <drepper@redhat.com>
73         * malloc/malloc.c (_int_free): Remove test for NULL parameter.
74         (_int_realloc): Call _int_free only if memory parameter is not NULL.
76         * sysdeps/unix/sysv/linux/libc_fatal.c: Add new function __libc_message
77         which performs the printing and simple format string handling.  The
78         string is written to tty, stderr, syslog in this order, stopping after
79         the first successful output.
80         (__libc_fatal): Call __libc_message.
81         * include/stdio.h: Declare __libc_message.
82         * malloc/malloc.c (malloc_printerr): Use __libc_message.
83         * debug/chk_fail.c: Also print message with __libc_message.
84         * debug/test-strcpy_chk.c: Ensure that debug messages are not printed
85         to the terminal or stderr.
86         * debug/tst-chk1.c: Likewise.
88         * posix/Makefile: Remove gpl2lgpl variable.
90 2004-11-12  Martin Schwidefsky  <schwidefsky@de.ibm.com>
92         * elf/elf.h: Add 20 bit relocations R_390_*20.
94 2004-11-12  Jakub Jelinek  <jakub@redhat.com>
96         * sysdeps/unix/sysv/linux/i386/setuid.c: Include linux/posix_types.h.
97         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
98         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
99         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
100         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
101         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
103 2004-11-12  Andreas Schwab  <schwab@suse.de>
105         * nis/ypclnt.c (ypprot_err): Fix "minor optimizations".
107 2004-11-12  Ulrich Drepper  <drepper@redhat.com>
109         * posix/Makefile (tests): Add bug-regex24.
110         * posix/bug-regex24.c: New file.
112 2004-11-12  Paolo Bonzini  <bonzini@gnu.org>
114         * posix/regexec.c (check_dst_limits_calc_pos_1): Use the map to
115         cut recursive paths.  Make exit condition more precise.
116         (match_ctx_add_entry): Initialize the map.
117         * posix/regex_internal.h (struct re_backref_cache_entry): Add a map of
118         reachable subexpression nodes from each backreference cache entry.
120 2004-11-10  Jakub Jelinek  <jakub@redhat.com>
122         * sysdeps/unix/sysv/linux/setreuid.c: Remove sys/syscall.h,
123         sys/types.h, linux/posix_types.h, sysdep.h and pthread-functions.h
124         includes.  Include setxid.h.  Use INLINE_SETXID_SYSCALL macro
125         instead of INLINE_SYSCALL, kill the HAVE_PTR__NPTL_SETXID guarded
126         snippets.
127         * sysdeps/unix/sysv/linux/setegid.c: Likewise.
128         * sysdeps/unix/sysv/linux/setuid.c: Likewise.
129         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
130         * sysdeps/unix/sysv/linux/setgid.c: Likewise.
131         * sysdeps/unix/sysv/linux/setresuid.c: Likewise.
132         * sysdeps/unix/sysv/linux/setresgid.c: Likewise.
133         * sysdeps/unix/sysv/linux/setregid.c: Likewise.
134         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
135         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
136         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
137         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
138         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
139         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
140         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
141         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
142         * sysdeps/unix/sysv/linux/alpha/setreuid.c: Likewise.
143         Formatting.  Change signed int into int.
144         * sysdeps/unix/sysv/linux/alpha/setresuid.c: Likewise.
145         * sysdeps/unix/sysv/linux/alpha/setresgid.c: Likewise.
146         * sysdeps/unix/sysv/linux/alpha/setregid.c: Likewise.
147         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
148         Remove.
149         * sysdeps/unix/setxid.h: New file.
151         * Rules (binaries-static): Add xtests-static.
152         * Makeconfig (run-program-prefix): Filter also xtests-static.
154 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu.
156         [BZ #535]
157         * time/difftime.c: Fix a double-rounding bug on hosts with
158         64-bit time_t and long double being IEEE double.  Also, port
159         to more valid C99 hosts, even those that have padding bits.
160         Don't include <values.h> since it is marked as an obsolescent
161         interface.  Include <limits.h>, <float.h>, and <stdint.h> instead.
162         (TYPE_BITS, TYPE_FLOATING, TYPE_SIGNED): New macros.
163         (subtract): New static function, that works correctly without
164         double-rounding, even on hosts with 64-bit time_t.  Also cater
165         to hosts with padding bits.
166         (__difftime): Use it.  Use DBL_MANT_DIG and LDBL_MANT_DIG to
167         determine whether floating types are wide enough: the old
168         test (which used sizeof) could in theory report the wrong results
169         on hosts with padding bits in floating-point values.
171 2004-11-11  Simon Josefsson  <jas@extundo.com>
173         [BZ #542]
174         * sysdeps/generic/strtok_r.c [HAVE_CONFIG_H]: Include config.h.
175         [!_LIBC]: Include strtok_r.h (in gnulib), map __strtok_r to
176         strtok_r and __rawmemchr to strch.
177         (__strtok_r): Use C89 prototype.
178         [weak_alias]: Move calls to libc_hidden_def and weak_alias into
179         this #ifdef.
181 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
183         [BZ #541]
184         * time/mktime.c (SHR): New macro, which is a portable
185         substitute for >> that should work even on Crays.
186         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
187         Problem reported by Mark D. Baushke in
188         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
190 2004-11-09  Paolo Bonzini  <bonzini@gnu.org>
192         * posix/regexec.c (match_ctx_free_subtops): Remove, merge into...
193         (match_ctx_clean): ... this function.
194         (match_ctx_free): Call match_ctx_clean.
196         * posix/regexec.c (transit_state): Remove the check for
197         out-of-bounds buffers.
198         (check_matching): Check here for out-of-bounds buffers.
199         (re_search_internal): Store into match_kind a set of bits
200         indicating which incantation of fastmap scanning must be
201         used.  Use a switch statement instead of multiple ifs.
202         Exit the final "for (;;)" with goto free_return unless
203         the match succeeded, thus simplifying some conditionals.
205         * posix/regex_internal.c (re_string_reconstruct,
206         re_string_context_at): Add several branch predictions for
207         case-sensitive matching and no transition table being used.
209 2004-11-10  Ulrich Drepper  <drepper@redhat.com>
211         * posix/tst-waitid.c: Don't use error to print error message, they
212         won't end up in the .out file.
214 2004-11-09  Ulrich Drepper  <drepper@redhat.com>
216         * nscd/nscd-client.h (libc_locked_map_ptr): Add new first
217         parameter, used as class for definition.
218         * nscd/nscd_getpw_r.c: Adjust for libc_locked_map_ptr change.
219         (pw_map_free): Ensure no crash after memory is freed.
220         * nscd/nscd_getgr_r.c: Likewise.  Make map externally visible.
221         * nscd/nscd_gethst_r.c: Likewise.
222         * nscd/nscd_getai.c: Use map from nscd_gethost.c.
223         * nscd/nscd_initgroups.c: Use map from nscd_getgr.c.
225         * nscd/nscd_getai.c: Add some checks to detect corrupt databases.
226         * nscd/nscd_getgr_r.c: Likewise
227         * nscd/nscd_gethst_r.c: Likewise.
228         * nscd/nscd_getpw_r.c: Likewise
230 2004-11-09  Jakub Jelinek  <jakub@redhat.com>
232         * posix/regcomp.c (calc_eclosure_iter): Don't access
233         dfa->edests[node].elems[0] if dfa->edests[node].nelem == 0.
234         * posix/rxspencer/tests: Add 5 new tests.
236 2004-11-09  Ulrich Drepper  <drepper@redhat.com>
238         * sysdeps/unix/sysv/linux/ifaddrs.c: Determine sin6_scope_id field
239         value correctly.  Patch by Mitsuru Kanda <mk@karaba.org>.
241 2004-11-04  Jakub Jelinek  <jakub@redhat.com>
243         * libio/fileops.c (_IO_new_file_seekoff): If mode is 0 and
244         fp->_offset == _IO_pos_BAD, just call _IO_SYSSEEK (fp, 0, dir)
245         and if successful set fp->_offset.
246         * libio/Makefile (tests): Add bug-ungetc3.
247         * libio/bug-ungetc3.c: New test.
249 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
251         * sysdeps/gnu/_G_config.h (_G_HAVE_MREMAP): Define symbol.
252         * sysdeps/mach/hurd/_G_config.h: New file.
253         * libio/fileops.c (mmap_remap_check) [__linux__]: Replaced with
254         [_G_HAVE_MREMAP].
256 2004-11-08  Ulrich Drepper  <drepper@redhat.com>
258         * posix/regcomp.c (utf8_sb_map): Define.
259         (free_dfa_content): Don't free dfa->sb_char if it's a pointer to
260         utf8_sb_map.
261         (init_dfa): Use utf8_sb_map instead of initializing memory when the
262         encoding is UTF-8.
264 2004-11-03  Paolo Bonzini  <bonzini@gnu.org>
266         * posix/regcomp.c (init_dfa): Get the codeset name outside glibc as
267         well.  Check if it is spelled UTF8 as well as UTF-8, and check
268         case-insensitively.  Set dfa->map_notascii manually when outside
269         glibc.
270         * posix/regex_internal.c (build_wcs_upper_buffer) [!_LIBC]: Enable
271         optimizations based on map_notascii.
272         * posix/regex_internal.h [HAVE_LANGINFO_H || HAVE_LANGINFO_CODESET
273         || _LIBC]: Include langinfo.h.
275         * posix/regex_internal.h (struct re_backref_cache_entry): Add "more"
276         field.
277         * posix/regexec.c (check_dst_limits): Hoist computation of the source
278         and destination bkref_idx out of the loop.  Pass it to
279         check_dst_limits_calc_pos.
280         (check_dst_limits_calc_pos_1): New function, containing the recursive
281         loop of check_dst_limits_calc_pos; uses the "more" field of
282         struct re_backref_cache to control the loop.
283         (check_dst_limits_calc_pos): Store into "boundaries" the position
284         relative to lim's start and end positions.  Do not accept eclosures,
285         accept bkref_idx instead.  Call check_dst_limits_calc_pos_1 to do the
286         work.
287         (sift_states_bkref): Use the "more" field of struct re_backref_cache
288         to control the loop.  A big "if" was turned into a continue and the
289         function was reindented.
290         (get_subexp): Use the "more" field of struct re_backref_cache
291         to control the loop.
292         (match_ctx_add_entry): Initialize the bkref_ents' "more" field.
293         (search_cur_bkref_entry): Return -1 if out of bounds.
295         * posix/regexec.c (empty_set): Remove.
296         (sift_states_backward): Remove cur_src variable.  Move inner loop
297         to build_sifted_states.
298         (build_sifted_states): Extract from sift_states_backward.  Do not
299         use empty_set.
300         (update_cur_sifted_state): Do not use empty_set.  Special case
301         dest_nodes->nelem == 0.
303         * posix/regex_internal.h (struct re_backref_cache_entry): Remove flag
304         field.
305         (struct re_sift_context_t): Remove cur_bkref, cls_subexp_idx,
306         check_subexp fields.  Move limits last.
307         * posix/regexec.c (match_ctx_clear_flag): Remove.
308         (sift_ctx_init): Remove check_subexp parameter.  Do not set removed
309         fields.  Callers adjusted.
310         (expand_bkref_cache): Remove last_str parameter.  Callers adjusted.
311         (re_search_internal): Remove fast_translate variable.
312         (update_cur_sifted_state): Pass candidates as the final parameter
313         to sift_states_bkref.
314         (sift_states_bkref): Change last unused parameter to be "candidates",
315         do not fetch candidates into a local variable.
316         Remove dead test for "node == sctx->bkref", and the cur_bkref_idx
317         variable.
318         Remove loops that set/reset the flag field of backref cache entries.
319         (check_arrival_add_next_nodes): Use a signed int to hold the return
320         value of re_node_set_insert.
321         (group_nodes_into_DFAstates): Likewise.
322         (match_ctx_add_entry): Do not set the flag field of the new entry.
324 2004-11-05  Roland McGrath  <roland@redhat.com>
326         * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Define
327         _dl_sysinfo_dso under [NEED_DL_SYSINFO_DSO] as well.
328         * elf/rtld.c (dl_main): Set up GLRO(dl_sysinfo_dso) under
329         [NEED_DL_SYSINFO_DSO] as well.
330         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Always include
331         AT_SYSINFO and AT_SYSINFO_EHDR in name table.
332         (_dl_sysdep_start) [NEED_DL_SYSINFO_DSO]: Match AT_SYSINFO_EHDR.
333         * elf/dl-support.c (_dl_sysinfo_dso): Define also under
334         [NEED_DL_SYSINFO_DSO].
335         (_dl_aux_init) [NEED_DL_SYSINFO || NEED_DL_SYSINFO_DSO]:
336         Match AT_SYSINFO_EHDR and set GL(dl_sysinfo_dso).
338 2004-11-05  Roland McGrath  <roland@redhat.com>
340         * manual/errno.texi (Error Codes): Revert last change for now.
341         * sysdeps/gnu/errlist.c: Regenerated.
343 2004-11-04  Roland McGrath  <roland@frob.com>
345         * Makeconfig (link-libc, rpath-dirs): Remove AIX cruft definitions.
346         (LDFLAGS-rpath-ORIGIN, LDFLAGS-soname-fname): Likewise.
347         (LDFLAGS-rdynamic, LDFLAGS-Bsymbolic): Likewise.
348         ($(common-objpfx)gnu/lib-names.stmp): Likewise.
350 2004-11-01  Jakub Jelinek  <jakub@redhat.com>
352         * sysdeps/unix/sysv/linux/x86_64/sys/procfs.h [__WORDSIZE == 32]
353         (elf_fpxregset_t): New type.
354         (struct elf_prpsinfo): If __WORDSIZE == 32, change pr_[ug]id type
355         to unsigned short int.
356         * sysdeps/unix/sysv/linux/x86_64/sys/user.h
357         (struct user_fpregs_struct): Fix comment.
358         * sysdeps/i386/fpu/bits/mathdef.h (float_t, double_t): If
359         __FLOAT_EVAL_METHOD__ is defined and 0, typedef to float resp. double.
360         * sysdeps/x86_64/fpu/bits/mathdef.h: Include bits/wordsize.h.
361         (float_t, double_t): If -m32 and not -mfpmath=sse, typedef to
362         long double.
363         * sysdeps/x86_64/fpu/bits/fenv.h: Include bits/wordsize.h.
364         (fenv_t): Remove __mxcsr field for -m32.
366 2004-11-04  Jakub Jelinek  <jakub@redhat.com>
368         * libio/ftello.c (ftello): Don't subtract save_end - save_base
369         if pos is _IO_pos_BAD.
370         * libio/ftello64.c (ftello64): Likewise.
371         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
372         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
373         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
374         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
375         * libio/ioftell.c (_IO_ftell): Likewise.
376         Cast to long int instead of off_t when checking for overflow.
378 2004-11-04  Richard Henderson  <rth@redhat.com>
380         * sysdeps/unix/sysv/linux/alpha/register-dump.h (regnames): Align.
381         (linefeed): Remove.
382         (register_dump): Rewrite to generate into a flat buffer instead
383         of into iovecs.
385 2004-11-02  Jakub Jelinek  <jakub@redhat.com>
387         * debug/tst-chk1.c (ret): New volatile variable.
388         (CHK_FAIL_END): Remove redundant ret setting.
389         (do_test): Remote ret variable.
391 2004-01-03  Paolo Bonzini  <bonzini@gnu.org>
393         * posix/regex_internal.h (__regfree) [!_LIBC]: Define to regfree.
395 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
397         * sysdeps/generic/utime.c: Include <stddef.h>.
399         * sysdeps/generic/sysconf.c: Include <grp.h> and <pwd.h>.
401         * sysdeps/generic/tempname.c (__path_search): Add missing argument
402         TRY_TMPDIR.
404 2004-11-02  Jakub Jelinek  <jakub@redhat.com>
406         * include/features.h (__USE_FORTIFY_LEVEL): Also set for Red Hat
407         GCC 3.4.x-RH >= 3.4.2-8.
408         * libio/bits/features.h (printf, fprintf, vprintf, vfprintf): For
409         GCC 3.4.x-RH use __builtin___{,v}{,f}printf_chk instead of
410         __{,v}{,f}printf_chk.
411         * debug/tst-chk1.c (do_test): Deal with GCC 3.4.x-RH not
412         being able to recognize subobjects.
414 2004-10-31  Mariusz Mazur <mmazur@kernel.pl>
416         * sysdeps/unix/sysv/linux/alpha/setregid.c: New file.
417         * sysdeps/unix/sysv/linux/alpha/setresgid.c: New file.
418         * sysdeps/unix/sysv/linux/alpha/setresuid.c: New file.
419         * sysdeps/unix/sysv/linux/alpha/setreuid.c: New file.
421 2004-10-27  Derek R. Price  <derek@ximbiot.com>
423         [BZ #487] This change is imported from gnulib.
424         * time/mktime.c (not_equal_tm) [DEBUG]: Remove redundant check.
426 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
428         [BZ #473]
429         * time/tst-mktime.c (main): Don't assume that mktime fails
430         when given time stamps before 1970.  It returns negative
431         time_t values instead, for compatibility with BSD.
433         * time/tst-mktime2.c: New file.
434         * time/Makefile (tests): Add it.
436         [BZ #473] Import from gnulib.  Revamp to avoid several problems near
437         time_t extrema, and on hosts with 64-bit time_t and 32-bit int.
438         This fixes Debian bug 177940.
439         * time/mktime.c (TIME_T_MIDPOINT): New macro.
440         (ydhms_diff): Renamed from ydhms_tm_diff, with a new signature,
441         which avoids overflow problems on hosts with 64-bit time_t and
442         32-bit int.  All callers changed.  Now an inline function.
443         Verify at compile-time that long int is wide enough to avoid
444         these overflow problems.
445         (guess_time_tm): New function.
446         (__mktime_internal): Use it.  Avoid overflow when computing yday on
447         hosts with 64-bit long and 32-bit int.  Remove tests for 69;
448         no longer needed.  Use if rather than #ifdef for LEAP_SECONDS_POSSIBLE
449         so that the code is checked by more compilers.
450         Do not rely on floating point to probe: stick to integer arithmetic,
451         to avoid potential porting problems.
452         Repair potential overflow correctly in the Southern Hemisphere.
453         (localtime_offset): Add a FIXME for the case where time_t is unsigned.
455 2004-10-30  Andreas Schwab  <schwab@suse.de>
457         * sysdeps/m68k/dl-machine.h (elf_machine_rela)
458         (elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
459         instead of static.
461 2004-10-30  Andreas Schwab  <schwab@suse.de>
463         * sysdeps/unix/sysv/linux/waitid.c: Include <stddef.h> for NULL.
465 2004-10-30  Ulrich Drepper  <drepper@redhat.com>
467         * malloc/malloc.c (_int_free): Use unique comments for the error
468         cases.
470 2004-10-28  Roland McGrath  <roland@frob.com>
472         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_fork): Use i386_thread_state
473         instead of machine_thread_state.
475 2004-10-28  Roland McGrath  <roland@redhat.com>
477         * sysdeps/unix/sysv/linux/syscalls.list: Remove setaltroot.
479 2004-10-28  Ulrich Drepper  <drepper@redhat.com>
481         * elf/dl-open.c (dl_open_worker): Remove reference to glibcbug script.
483 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
485         * elf/dl-load.c (_dl_map_object): Use cache_rpath to check for
486         existing rpath in main executable, not explicit test.
488 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
490         * include/resolv.h (_res_opcodes): New extern.
491         Add libresolv_hidden_proto.
492         * resolv/res_debug.c (_res_opcodes): Remove.
493         (__p_class_syms, __p_type_syms): Add libresolv_hidden_proto
494         and libresolv_hidden_data_def.  Remove attribute_hidden.
495         * resolv/res_mkquery (_res_opcodes): Remove.
496         * resolv/res_data.c (_res_opcodes): Remove attribute_hidden.
497         Add libresolv_hidden_data_def.
499 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
501         * elf/dl-open.c (_dl_open): Don't allow explicitly opening a DSO
502         into an empty namespace.
504         * elf/dl-fini.c (_dl_fini): Fix search for map in maps array.
505         Reverse order of namespaces.
506         * elf/Makefile: Add rules to build and run tst-dlmopen3.
507         * elf/tst-dlmopen3.c: New file.
508         * elf/tst-dlmopen1mod.c: Add check whether constructor runs.
510 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
512         * sysdeps/generic/glob.c (globfree): Clear gl_pathv after freeing it.
513         * posix/Makefile: Add rules to build and run bug-glob2 test.
514         * posix/bug-glob2.c: New test.
516 2004-10-27  Roland McGrath  <roland@frob.com>
518         * sysdeps/mach/hurd/i386/tls.h (HURD_TLS_DESC_DECL): New macro.
519         (_hurd_tls_init): Use it.
520         (_hurd_tls_fork): New function.
521         * sysdeps/mach/hurd/fork.c (__fork) [USE_TLS]: Call it.
523 2004-10-26  Roland McGrath  <roland@frob.com>
525         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Initialize TCB->tcb.
527 2004-10-26  Jakub Jelinek  <jakub@redhat.com>
529         * sysdeps/gnu/netinet/udp.h (struct udphdr): Use u_int16_t
530         type instead of uint16_t.  Formatting.
532 2004-10-25  Roland McGrath  <roland@redhat.com>
534         * login/openpty.c (openpty): Add libutil_hidden_def.
536         * nss/nss_files/files-parse.c (nss_files_parse_hidden_def): Define to
537         either libc_hidden_def or libnss_files_hidden_def, not hidden_def.
538         This file is also compiled into libnss_hesiod by #include.
540 2004-10-25  Roland McGrath  <roland@frob.com>
542         * sysdeps/unix/bsd/hp: Directory and all files removed.
543         These are now in the ports repository.
544         * sysdeps/unix/bsd/osf: Likewise.
545         * sysdeps/unix/bsd/sequent: Likewise.
546         * sysdeps/unix/bsd/sony: Likewise.
547         * sysdeps/unix/bsd/ultrix4: Likewise.
548         * sysdeps/unix/sysv/aix: Likewise.
549         * sysdeps/unix/sysv/hpux: Likewise.
550         * sysdeps/unix/sysv/irix4: Likewise.
551         * sysdeps/unix/sysv/isc2.2: Likewise.
552         * sysdeps/unix/sysv/minix: Likewise.
553         * sysdeps/unix/sysv/sco3.2.4: Likewise.
554         * sysdeps/unix/sysv/sco3.2: Likewise.
555         * sysdeps/unix/sysv/sysv4: Likewise.
557         * configure.in (ASM_LINE_SEP): Move this setting to ...
558         * sysdeps/hppa/configure.in: ... here, new file.
559         * sysdeps/hppa/configure: New generated file.
560         * configure: Regenerated.
562 2004-10-25  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
564         * sysdeps/sh/dl-machine.h: Include sysdep.h.
565         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add CFI directives.
566         (elf_machine_runtime_setup): Add always_inline attribute.
567         (_dl_start_user): Pass the correct environ.
568         (elf_machine_rela): Replace static inline by auto inline, add
569         always_inline attribute.
570         (elf_machine_rela_relative): Likewise.
571         (elf_machine_lazy_rel): Likewise.
573 2004-10-24  Ulrich Drepper  <drepper@redhat.com>
575         * nis/nis_call.c: Pretty printing.  Minor cleanups.
576         * nis/nis_addmember.c (nis_addmember): Add assert to check buffer
577         bounds.
579         * resolv/nss_dns/dns-host.c: Avoid using PLTs.
580         * include/libc-symbols.h: Define hidden attribute macros for
581         libnss_nisplus and libutil.
582         * include/utmp.h: Add libutil_hidden_proto for login_tty.
583         * login/login_tty.c: Add libutil_hidden_def.
584         * nis/nisplus-parser.h: Add libnss_nisplus_hidden_proto for parsers.
585         * nis/nss_nisplus/nisplus-parser.c: Add libnss_nisplus_hidden_def.
586         * include/pty.h: New file.
587         * include/rpcsvc/yp.h: New file.
588         * include/rpcsvc/ypclnt.h: New file.
589         * include/rpcsvc/ypupd.h: New file.
590         * include/libc-symbols.h: Define hidden attribute macros for libnsl.
591         * include/rpcsvc/nislib.h: Use libnsl_hidden_proto for various
592         functions.
593         * nis/nis_add.c: Add libnsl_hidden_def.  Minor optimizations.
594         * nis/nis_call.c: Likewise.
595         * nis/nis_clone_obj.c: Likewise.
596         * nis/nis_defaults.c: Likewise.
597         * nis/nis_domain_of_r.c: Likewise.
598         * nis/nis_error.c: Likewise.
599         * nis/nis_file.c: Likewise.
600         * nis/nis_free.c: Likewise.
601         * nis/nis_local_names.c: Likewise.
602         * nis/nis_lookup.c: Likewise.
603         * nis/nis_modify.c: Likewise.
604         * nis/nis_print.c: Likewise.
605         * nis/nis_remove.c: Likewise.
606         * nis/nis_subr.c: Likewise.
607         * nis/nis_table.c: Likewise.
608         * nis/nis_util.c: Likewise.
609         * nis/yp_xdr.c: Likewise.
610         * nis/ypclnt.c: Likewise.
611         * nis/ypupdate_xdr.c: Likewise.
613         * resolv/res_send.c (send_dg): Cope with failures.
615         * include/libc-symbols.h: Define hidden attribute macros for
616         libnss_files.
617         * include/netdb.h: Use libnss_files_hidden_proto for the parsers
618         defined in libnss_files, not libc_hidden_proto.
619         * include/netinet/ether.h: Likewise.
620         * include/rpc/netdb.h: Likewise.
621         * nss/nss_files/files-parse.c: Use hidden_def in parser definitions
622         instead of libc_hidden_def.
623         * nss/nss_files/files-netgrp.c: Add libnss_files_hidden_def to
624         _nss_netgroup_parseline definition.
626 2004-10-23  Roland McGrath  <roland@frob.com>
628         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Don't return early
629         after an RPC succeeds.
631         * sysdeps/vax, sysdeps/unix/bsd/vax: Directories and all files removed.
632         These are now in the ports repository.
633         * sysdeps/tahoe, sysdeps/unix/bsd/tahoe: Likewise.
634         * sysdeps/cris, sysdeps/unix/sysv/linux/cris: Likewise.
635         * sysdeps/am29k, sysdeps/i860, sysdeps/i960, sysdeps/m88k: Likewise.
636         * sysdeps/standalone, sysdeps/z8000: Likewise.
638 2004-10-23  Ulrich Drepper  <drepper@redhat.com>
640         * resolv/res_send.c (send_dg): Combine write and read to socket
641         into one loop.
643 2004-10-22  Roland McGrath  <roland@frob.com>
645         * Makefile (%.bz2, %.gz): Move these pattern rules ...
646         * Makerules: ... to here.
648 2001-10-31  Alexandre Oliva  <aoliva@redhat.com>
650         * elf/elf.h: Add R_MN10300_* relocation numbers.
652 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
654         [BZ #471] Fix imported from gnulib.
655         * time/mktime.c (leapyear, ydms_tm_diff): Year is of type
656         long int, not int, to avoid problems when tm_year == INT_MAX
657         and tm_mon > 12.
658         (__mktime_intenral): Compute year using long int arithmetic,
659         not int arithmetic, to avoid problems on hosts where time_t
660         and long are 64 bits but int is 32.
662         [BZ #468] Import a fix from gnulib.
663         * time/mktime.c [! DEBUG]: Do not include <string.h>.
664         It's needed only if DEBUG is nonzero.
666         [BZ #470] Import fix from gnulib.
667         * time/mktime.c [!_LIBC] (__mktime_internal): Define to
668         mktime_internal, to avoid clashes with any __mktime_internal
669         function defined in the standard library.
671         [BZ #469] Imported from gnulib.
672         * time/mktime.c (__isleap): Remove; all uses replaced by:
673         (leapyear): New function, which avoids overflow by not adding
674         1900 to year before testing whether it is a leap year.
676         [BZ #472] Imported from gnulib.
677         * time/mktime.c (Local Variables): Remove -DHAVE_TIME_R_POSIX;
678         no longer used.
680 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
682         * resolv/res_send.c: Remove compatibility code which is unused in
683         glibc and probably bitrotten.
685         * debug/execinfo.h: Remove __THROW from backtrace prototype.
687 2004-10-22  Jakub Jelinek  <jakub@redhat.com>
689         * sysdeps/i386/Makefile (CFLAGS-backtrace.c): Add -fexceptions.
690         * sysdeps/i386/backtrace.c: Include <bits/libc-lock.h>, <dlfcn.h>,
691         <stdlib.h> and <unwind.h>.  Remove <bp-checks.h> include.
692         (struct trace_arg): New type.
693         (unwind_backtrace, unwind_getip, unwind_getcfa, unwind_getgr): New
694         fn pointers resp. macros.
695         (init, backtrace_helper): New functions.
696         (__backtrace): Rewritten to use _Unwind_Backtrace first and fall
697         back to frame pointer walking.
699 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
701         * sysdeps/unix/sysv/linux/Versions: Things are still in flux, it
702         seems.  Undo last additions.
704 2004-10-21  Ulrich Drepper  <drepper@redhat.com>
706         * posix/execvp.c (execvp): Also ignore ENODEV and ETIMEDOUT errno
707         values.
709 2004-10-20  Jakub Jelinek  <jakub@redhat.com>
711         * sysdeps/unix/sysv/linux/readonly-area.c (__readonly_area): If /proc
712         is not mounted, return 1.
714 2004-10-20  Roland McGrath  <roland@redhat.com>
716         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Check also
717         $(config-sysdirs) for shlib-versions files.
719         * Makeconfig ($(common-objpfx)soversions.i): Replace shell loop with
720         use of ...
721         * scripts/soversions.awk: ... this new file.  Collect lib info and
722         match any DEFAULT line before emitting anything, so DEFAULT can come
723         later in the concatenation of shlib-versions files.
725         * manual/errno.texi (Error Codes): Add ENOKEY, EKEYEXPIRED,
726         EKEYREVOKED, EKEYREJECTED.
727         * sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.3.4): New errlist.
728         * sysdeps/gnu/errlist.c: Regenerated
730         * sysdeps/gnu/errlist-compat.awk: Don't bail if Versions gives a count
731         higher than ERR_MAX reports.  Instead, emit a #define ERR_MAX.
732         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.h): New target.
733         (generated): Add errlist-compat.h.
734         * sysdeps/gnu/errlist.awk: Make output #include <errlist-compat.h> to
735         define ERR_MAX and use that for table size.
737 2004-10-20  Ulrich Drepper  <drepper@redhat.com>
739         * sysdeps/unix/sysv/linux/syscalls.list: Add entries for setaltroot,
740         key_add, key_request, and keyctl syscalls.
741         * sysdeps/unix/sysv/linux/Versions: Export them.
743 2004-10-19  Roland McGrath  <roland@frob.com>
745         * sysdeps/mach/readonly-area.c: New file.
747 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
749         * elf/Versions [ld, GLIBC_PRIVATE]: Add _dl_debug_state.
750         * elf/dl-debug.c (_dl_debug_state): Add rtld_hidden_def.
751         * sysdeps/generic/ldsodefs.h (_dl_debug_state): Don't mark as
752         hidden but use rtld_hidden_proto.
754 2004-10-19  Alfred M. Szmidt  <ams@gnu.org>
756         * sysdeps/generic/readonly-area.c (__readonly_str): Renamed to ...
757         (__readonly_area): ... this.
759 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
761         * sysdeps/generic/strcpy_chk.c (__strcpy_chk): Speed up by checking
762         destlen only every 4 bytes.
764 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
766         * nss/getent.c (hosts_keys): Let inet_pton decide whether the
767         string is an address or not.
769 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
771         * elf/dl-addr.c (_dl_addr): Don't look at STT_TLS symbols.
772         Use DL_SYMBOL_ADDRESS to set dli_saddr.
774         * debug/Makefile (catchsegv): Prefix $LIB with a backslash.
776 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
778         * debug/Makefile ($(objpfx)catchsegv): To support multilib
779         platforms, use $LIB in path to slibdir.
781 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
783         * debug/catchsegv.sh: Update copyright year.
784         Use mktemp to create segv_output file.
786 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
788         * include/features.h (__USE_FORTIFY_LEVEL): Enable even with
789         Red Hat gcc4 4.0.0 and above.
791 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
793         * elf/dl-libc.c (__libc_dlsym_private, __libc_register_dl_open_hook):
794         New functions.
795         (__libc_dlopen_mode): Call __libc_register_dl_open_hook and
796         __libc_register_dlfcn_hook.
797         * dlfcn/Makefile (routines, elide-routines.os): Set.
798         Add rules to build and test tststatic2.
799         * dlfcn/tststatic2.c: New test.
800         * dlfcn/modstatic2.c: New test module.
801         * dlfcn/dladdr.c: Call _dlfcn_hook from libdl.so if not NULL.
802         Define __ prefixed routine in libc.a and in libdl.a just call it.
803         * dlfcn/dladdr1.c: Likewise.
804         * dlfcn/dlclose.c: Likewise.
805         * dlfcn/dlerror.c: Likewise.
806         * dlfcn/dlinfo.c: Likewise.
807         * dlfcn/dlmopen.c: Likewise.
808         * dlfcn/dlopen.c: Likewise.
809         * dlfcn/dlopenold.c: Likewise.
810         * dlfcn/dlsym.c: Likewise.
811         * dlfcn/dlvsym.c: Likewise.
812         * dlfcn/sdladdr.c: New file.
813         * dlfcn/sdladdr1.c: New file.
814         * dlfcn/sdlclose.c: New file.
815         * dlfcn/sdlerror.c: New file.
816         * dlfcn/sdlinfo.c: New file.
817         * dlfcn/sdlopen.c: New file.
818         * dlfcn/sdlsym.c: New file.
819         * dlfcn/sdlvsym.c: New file.
820         * dlfcn/Versions (libdl): Export _dlfcn_hook@GLIBC_PRIVATE.
821         * include/dlfcn.h (DL_CALLER_DECL, DL_CALLER RETURN_ADDRESS): Define.
822         (struct dlfcn_hook): New type.
823         (_dlfcn_hook): New extern decl.
824         (__dlopen, __dlclose, __dlsym, __dlerror, __dladdr, __dladdr1,
825         __dlinfo, __dlmopen, __libc_dlsym_private,
826         __libc_register_dl_open_hook, __libc_register_dlfcn_hook): New
827         prototypes.
828         (__dlvsym): Use DL_CALLER_DECL.
829         * include/libc-symbols.h: Define libdl_hidden_proto and friends.
831         * malloc/arena.c (_dl_open_hook): Extern decl.
832         (ptmalloc_init): Don't call _dl_addr when dlopened from statically
833         linked programs but don't use brk for them either.
835 2004-10-18  Roland McGrath  <roland@redhat.com>
837         * dlfcn/bug-dlsym1.c (main): Remove bogus setenv call.
839 2004-10-18  Ulrich Drepper  <drepper@redhat.com>
841         * elf/dl-open.c (dl_open_worker): Avoid dereferencing map in
842         statically linked code if there might none be found.
844 2004-10-06  Maciej W. Rozycki  <macro@mips.com>
846         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
847         (__SYSCALL_CLOBBERS): Add "memory".
848         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h
849         (__SYSCALL_CLOBBERS): Likewise.
850         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h
851         (__SYSCALL_CLOBBERS): Likewise.
853 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
855         * include/libc-symbols.h: Define libresolv_hidden_proto and friends.
856         * include/resolv.h: Add libresolv_hidden_proto for symbols defined,
857         used, and exported in libresolv.
858         * resolv/base64.c: Add libresolv_hidden_def.
859         * resolv/gethnamaddr.c: Likewise.
860         * resolv/ns_name.c: Likewise.
861         * resolv/ns_netint.c: Likewise.
862         * resolv/res_comp.c: Likewise.
863         * resolv/res_data.c: Likewise.
864         * resolv/res_debug.c: Likewise.
865         * resolv/res_mkquery.c: Likewise.
866         * resolv/res_query.c: Likewise.
867         * resolv/res_send.c: Likewise.
869 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
871         * elf/dl-minimal.c (__chk_fail): New.  Add rtld_hidden_def.
872         * sysdeps/unix/sysv/linux/readonly-area.c: New file.
873         * sysdeps/i386/i686/memmove.S (__memmove_chk): Add checking
874         routine.
875         * sysdeps/i386/i686/memcpy.S (__memcpy_chk): Likewise.
876         * sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
877         * sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
878         * sysdeps/i386/i686/memmove-chk.S: New file.
879         * sysdeps/i386/i686/memcpy-chk.S: Likewise.
880         * sysdeps/i386/i686/mempcpy-chk.S: Likewise.
881         * sysdeps/i386/i686/memset-chk.S: Likewise.
882         * sysdeps/generic/strcat-chk.c (__strcat_chk): Don't __chk_fail
883         if exactly fitting into buffer.
884         * sysdeps/generic/strncat-chk.c (__strncat_chk): Likewise.
885         * sysdeps/generic/readonly-area.c: New file.
886         * sysdeps/generic/strncpy-chk.c (__strncpy_chk): Only test
887         destlen once.
888         * sysdeps/x86_64/memset.S (__memset_chk): Add checking routine.
889         * sysdeps/x86_64/memcpy.S (__memcpy_chk): Likewise.
890         * sysdeps/x86_64/mempcpy.S (__memcpy_chk): Define to __mempcpy_chk.
891         * sysdeps/x86_64/memcpy-chk.S: New file.
892         * sysdeps/x86_64/mempcpy-chk.S: Likewise.
893         * sysdeps/x86_64/memset-chk.S: Likewise.
894         * sysdeps/x86_64/strcpy-chk.S: Likewise.
895         * sysdeps/x86_64/stpcpy-chk.S: Likewise.
896         * argp/argp-xinl.c (__OPTIMIZE__): Define to 1 instead of nothing.
897         * argp/argp-fs-xinl.c (__OPTIMIZE__): Likewise.
898         * debug/tst-chk1.c: New test.
899         * debug/tst-chk2.c: Likewise.
900         * debug/tst-chk3.c: Likewise.
901         * debug/test-strcpy_chk.c: Likewise.
902         * debug/test-stpcpy_chk.c: Likewise.
903         * debug/vsprintf_chk.c (__vsprintf_chk): If flags > 0, request
904         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
905         * debug/Makefile (routines): Add printf_chk, fprintf_chk, vprintf_chk,
906         vfprintf_chk, gets_chk and readonly-area.
907         (CFLAGS-*_chk.c): Set.
908         (tests): Add tst-chk1, tst-chk2, tst-chk3, test-strcpy_chk and
909         test-stpcpy_chk.
910         * debug/vprintf_chk.c: New file.
911         * debug/printf_chk.c: Likewise.
912         * debug/vfprintf_chk.c: Likewise.
913         * debug/fprintf_chk.c: Likewise.
914         * debug/gets_chk.c: Likewise.
915         * debug/chk_fail.c (__chk_fail): Add libc_hidden_def.
916         * debug/snprintf_chk.c (__snprintf_chk): Fix order of arguments
917         passed to __vsnprintf_chk.
918         * debug/Versions (libc): Export __printf_chk, __fprintf_chk,
919         __vprintf_chk, __vfprintf_chk and __gets_chk @GLIBC_2.3.4.
920         * debug/vsnprintf_chk.c (__vsnprintf_chk): Don't call
921         __vsnprintf, instead create a temporary file with
922         _IO_strn_jumps jumptable.  If flags > 0, request
923         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
924         * libio/Makefile (headers): Add bits/stdio2.h.
925         * libio/stdio.h: Include <bits/stdio2.h> if __USE_FORTIFY_LEVEL.
926         (sprintf, snprintf, vsprintf, vsnprintf): Remove defines.
927         * libio/strfile.h (_IO_strnfile): New type.
928         (_IO_strn_jumps): New extern.
929         * libio/vsnprintf.c (_IO_strnfile): Remove.
930         (_IO_strn_jumps): Remove static.
931         * libio/bits/stdio2.h: New file.
932         * libio/vswprintf.c (_IO_strnfile): Rename type to...
933         (_IO_wstrnfile): ...this.  Adjust all uses.
934         * libio/libio.h (_IO_FLAGS2_CHECK_PERCENT_N): Define.
935         * stdio-common/vfprintf.c (STR_LEN): Define.
936         (vfprintf): Add readonly_format variable.
937         Handle _IO_FLAGS2_CHECK_PERCENT_N.
938         (buffered_vfprintf): Copy _flags2.
939         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
940         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
941         __vfprintf_chk): New prototypes.
942         (__vsprintf_chk, __vsnprintf_chk): Add libc_hidden_proto.
943         * include/string.h (__memcpy_chk, __memmove_chk, __mempcpy_chk,
944         __memset_chk, __strcpy_chk, __stpcpy_chk, __strncpy_chk, __strcat_chk,
945         __strncat_chk): New prototypes.
946         * include/bits/string3.h: New file.
947         * include/sys/cdefs.h (__chk_fail): Add libc_hidden_proto
948         and rtld_hidden_proto.
949         * string/Makefile (headers): Add bits/string3.h.
950         * string/bits/string3.h (bcopy, bzero): New defines.
951         (memset, memcpy, memmove, strcpy, strncpy, strcat, strncat): Change
952         macros so that inlines are used only if unknown destination size
953         or side-effects in destination argument.
954         (mempcpy, stpcpy): Likewise.  Protect with #ifdef __USE_GNU.
956 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
958         * debug/Makefile (routines): Add *_chk.
959         * debug/Versions (libc): Export __chk_fail, __memcpy_chk,
960         __memmove_chk, __mempcpy_chk, __memset_chk, __stpcpy_chk,
961         __strcat_chk, __strcpy_chk, __strncat_chk, __strncpy_chk,
962         __sprintf_chk, __vsprintf_chk, __snprintf_chk, __vsnprintf_chk
963         @GLIBC_2.3.4.
964         * debug/chk_fail.c: New file.
965         * debug/snprintf_chk.c: Likewise.
966         * debug/sprintf_chk.c: Likewise.
967         * debug/vsnprintf_chk.c: Likewise.
968         * debug/vsprintf_chk.c: Likewise.
969         * include/features.h (_FORTIFY_SOURCE): Document, handle.
970         (__USE_FORTIFY_LEVEL): Define.
971         (__GNUC_PREREQ): Move to earlier location.
972         * include/sys/cdefs.h (__chk_fail): New prototype.
973         * libio/bits/stdio.h (sprintf, vsprintf, snprintf, vsnprintf):
974         Define if __USE_FORTIFY_LEVEL.
975         * misc/sys/cdefs.h (__bos, __bos0): Define.
976         * string/string.h: Include <bits/string3.h> if __USE_FORTIFY_LEVEL.
977         * bits/string/string3.h: New header.
978         * sysdeps/generic/memcpy_chk.c: New file.
979         * sysdeps/generic/memmove_chk.c: Likewise.
980         * sysdeps/generic/mempcpy_chk.c: Likewise.
981         * sysdeps/generic/memset_chk.c: Likewise.
982         * sysdeps/generic/stpcpy_chk.c: Likewise.
983         * sysdeps/generic/strcat_chk.c: Likewise.
984         * sysdeps/generic/strcpy_chk.c: Likewise.
985         * sysdeps/generic/strncat_chk.c: Likewise.
986         * sysdeps/generic/strncpy_chk.c: Likewise.
988 2004-10-17  Roland McGrath  <roland@frob.com>
990         * manual/memory.texi (Page Lock Functions): Typo fix.
991         Reported by Carlos Maziero <maziero@ppgia.pucpr.br>
993 2004-10-16  Alfred M. Szmidt  <ams@kemisten.nu>
995         * sysdeps/mach/hurd/Makefile (link-libc-static): Use
996         `$(static-gnulib') instead of `$(gnulib)'.
998 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
1000         * sunrpc/rpc_clntout.c: Avoid including rcsid into binary.
1001         * sunrpc/rpc_cout.c: Likewise.
1002         * sunrpc/rpc_hout.c: Likewise.
1003         * sunrpc/rpc_main.c: Likewise.
1004         * sunrpc/rpc_parse.c: Likewise.
1005         * sunrpc/rpc_sample.c: Likewise.
1006         * sunrpc/rpc_scan.c: Likewise.
1007         * sunrpc/rpc_svcout.c: Likewise.
1008         * sunrpc/rpc_tblout.c: Likewise.
1009         * sunrpc/rpc_util.c: Likewise.
1011 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
1013         * sysdeps/unix/sysv/linux/i386/sysdep.h (PUSHARGS_6, DOARGS_6,
1014         POPARGS_6, _PUSHARGS_6, _DOARGS_6, _POPARGS_6): Define.
1015         * sysdeps/unix/sysv/linux/i386/syscall.S (syscall): Handle 6 argument
1016         syscalls.
1018 2004-10-15  Ulrich Drepper  <drepper@redhat.com>
1020         * nscd/nscd.h (_PATH_NSCD_PASSWD_DB): Move to /var/db.
1021         (_PATH_NSCD_GROUP_DB): Likewise.
1022         (_PATH_NSCD_HOSTS_DB): Likewise.
1023         (_PATH_NSCD_XYZ_DB_TMP): New #define, point to /var/run.
1024         * nscd/connections.c (nscd_init): Non-persistent database files
1025         are created with the _PATH_NSCD_XYZ_DB_TMP path.
1026         * nscd/nscd.init: Create /var/db/nscd if necessary.
1028 2004-10-15  Richard Henderson  <rth@redhat.com>
1030         * sysdeps/unix/sysv/linux/alpha/register-dump.h: New file.
1031         * sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h (SIGCONTEXT): Add
1032         _code argument, pass sigcontext by pointer.
1033         (SIGCONTEXT_EXTRA_ARGS): Likewise.
1034         (GET_PC, GET_FRAME, GET_STACK): Expect ctx as pointer.
1036 2004-10-14  Richard Henderson  <rth@redhat.com>
1038         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
1039         elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
1040         instead of static.
1042         * sysdeps/unix/sysv/linux/adjtime.c (ADJTIME): Use prototype
1043         style definition.
1044         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): If
1045         __ASSUME_TIMEVAL64, define __adjtime directly rather than
1046         via strong_alias.
1048 2004-10-14  Ulrich Drepper  <drepper@redhat.com>
1050         * nscd/Makefile: When using compilers without -fpie support, also
1051         link with -lselinux if necessary.
1052         Patch by Arkadiusz Miskiewicz <arekm@pld-linux.org>.
1054         * nscd/connections.c (nscd_init): Remove file if not persistent
1055         and not shared.  Patch by Jerome Borsboom <j.borsboom@erasmusmc.nl>.
1057 2004-10-14  Jakub Jelinek  <jakub@redhat.com>
1059         * sysdeps/unix/sysv/linux/i386/setresuid.c: Handle
1060         defined __NR_setresuid32 && !defined __NR_setresuid.
1061         * sysdeps/unix/sysv/linux/i386/setresgid.c: Handle
1062         defined __NR_setresgid32 && !defined __NR_setresgid.
1064         * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit,
1065         __signbitl, sqrtf, sqrt, sqrtl, fdim, fdimf): Use __NTH macro.
1067         * sysdeps/generic/errno-loc.c: Don't undef #errno
1068         if RTLD_PRIVATE_ERRNO.
1069         * include/errno.h (__errno_location): If RTLD_PRIVATE_ERRNO,
1070         add attribute_hidden.
1072         * dlfcn/dlinfo.c (dlinfo_doit): Replace iteration over GL(dl_loaded)
1073         chain with iteration over all namespaces' _ns_loaded chains.
1074         * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_preferred_address):
1075         Likewise.
1076         * sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Likewise.
1078         * elf/rtld.c (_dl_start): Fix one last dl_loaded.
1079         * elf/dl-load.c (_dl_map_object_from_fd): Avoid definition of
1080         label when it is not needed.
1081         * elf/dl-close.c (_dl_close): Typo: & -> &&.
1083 2004-10-12  Jakub Jelinek  <jakub@redhat.com>
1085         * sysdeps/generic/segfault.c: Include alloca.h and stdint.h.
1086         Don't include frame.h.
1087         (CURRENT_STACK_FRAME, INNER_THAN, ADVANCE_STACK_FRAME): Remove.
1088         (catch_segfault): Use backtrace function.
1090         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Fix comment.
1091         * sysdeps/unix/sysv/linux/ia64/register-dump.h: New file.
1092         * sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h (GET_PC): Return sc_ip
1093         field.
1095 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
1097         Add support for namespaces in the dynamic linker.
1098         * dlfcn/Makefile (libdl-routines): Add dlmopen.
1099         * dlfcn/Versions [libdl, GLIBC_2.3.4]: Add dlmopen.
1100         * dlfcn/dlfcn.h: Define Lmid_t, LM_ID_BASE, and LM_ID_NEWLM.
1101         Declare dlmopen.  Document RTLD_DI_LMID.
1102         * dlfcn/dlinfo.c: Handle RTLD_DI_LMID.
1103         * dlfcn/dlmopen.c: New file.
1104         * dlfcn/dlopen.c: Pass new parameter to _dl_open.
1105         * dlfcn/dlopenold.c: Likewise.
1106         * elf/dl-addr.c: Adjust for removal of GL(dl_loaded).
1107         * elf/dl-caller.c: Likewise.
1108         * elf/dl-close.c: Likewise.
1109         * elf/dl-conflict.c: Likewise.
1110         * elf/dl-debug.c: Likewise.
1111         * elf/dl-lookup.c: Likewise.
1112         * elf/dl-sym.c: Likewise.
1113         * elf/dl-version.c: Likewise.
1114         * elf/do-lookup.h: Likewise.
1115         * elf/rtld.c: Likewise.
1116         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
1117         * elf/dl-depsc: Likewise.  Add new parameter to _dl_map_object.
1118         * elf/dl-fini.c: Call destructors in all namespaces.
1119         * elf/dl-iteratephdr.c: Compute total nloaded.  Adjust for removal of
1120         GL(dl_loaded).
1121         * elf/dl-libc.c: Pass new parameter to _dl_open.  Adjust for removal
1122         of GL(dl_loaded).
1123         * elf/dl-load.c (_dl_map_object_from_fd): Don't load ld.so a second
1124         time.  Reuse the one from the main namespace in all others.
1125         Pass new parameter to _dl_new_object.
1126         Adjust for removal of GL(dl_loaded).
1127         * elf/dl-object.c: Take new parameter.  Use it to initialize l_ns.
1128         Adjust for removal of GL(dl_loaded).
1129         * elf/dl-open.c (_dl_open): Take new parameter.
1130         Adjust for removal of GL(dl_loaded).
1131         * elf/dl-support.c: Replace global _dl_loaded etc variables with
1132         _dl_ns variable.
1133         * include/dlfcn.h: Adjust prototype of _dl_open.
1134         Define __LM_ID_CALLER.
1135         * include/link.h: Add l_real, l_ns, and l_direct_opencount elements.
1136         * sysdeps/generic/dl-tls.c: Bump TLS_STATIC_SURPLUS.  Since libc is
1137         using TLS we need memory appropriate to the number of namespaces.
1138         * sysdeps/generic/ldsodefs.h (struct rtld_global): Replace _dl_loaded,
1139         _dl_nloaded, _dl_global_scope, _dl_main_searchlist, and
1140         _dl_global_scope_alloc with _dl_ns element.  Define DL_NNS.
1141         Adjust prototypes of _dl_map_object and member in rtld_global_ro.
1142         * malloc/malloc.c: Include <dlfcn.h>.
1143         * malloc/arena.c (ptmalloc_init): If libc is not in primary namespace,
1144         never use brk.
1145         * elf/Makefile: Add rules to build and run tst-dlmopen1 and
1146         tst-dlmopen2.
1147         * elf/tst-dlmopen1.c: New file.
1148         * elf/tst-dlmopen1mod.c: New file.
1149         * elf/tst-dlmopen2.c: New file.
1151         * elf/dl-close.c: Improve reference counting by tracking direct loads.
1152         * elf/dl-lookup.c (add_dependency): Likewise.
1153         * elf/dl-open.c (dl_open_worker): Likewise.
1154         * elf/rtld.c (dl_main): Likewise.
1156 2004-09-09  GOTO Masanori  <gotom@debian.or.jp>
1158         [BZ #77]
1159         * elf/dl-close.c: Count down l_opencount to check not only for
1160         l_reldeps, but also l_initfini.
1162 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
1164         * elf/dl-close.c (_dl_close): Update bug reporting instructions.
1166 2004-10-11  Ulrich Drepper  <drepper@redhat.com>
1168         * timezone/asia: Update from tzdata2004e.
1169         * timezone/southamerica: Likewise.
1170         * timezone/private.h: Update from tzcode2004e.
1171         * timezone/zdump.c: Likewise.
1173         * stdio-common/vfscanf.c: Add support for reading localized
1174         digits.  Patch mainly by Hamed Malek <hamed@bamdad.org>.
1176         * resolv/res_init.c (res_thread_freeres): Reset _res.options.
1177         [BZ #434]
1179         * resolv/res_send.c (send_dg): Use nonblocking sockets.  Add
1180         appropriate poll/select calls and restart operation if necessary.
1181         Also handle EINTR.
1183         * elf/tst-dlopenrpath.c (do_test): Enable code which was disabled
1184         for debugging.
1186         * elf/dl-sym.c (do_sym): Avoid using global variable.
1188         * elf/dl-addr.c (_dl_addr): Really use match everywhere.
1190 2004-10-09  Andreas Schwab  <schwab@suse.de>
1192         * sysdeps/m68k/memcopy.h (WORD_COPY_BWD): Remove use of cast as
1193         lvalue.
1195         * sysdeps/m68k/fpu/bits/mathinline.h: Remove __THROW from inline
1196         definitions.
1198 2004-10-07  Andreas Schwab  <schwab@suse.de>
1200         * misc/sys/uio.h: Change __vector to __iovec to avoid clash with
1201         altivec.
1203 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
1205         * gmon/Makefile (CFLAGS-mcount.c): Move before inclusion of "Rules".
1206         * sysdeps/powerpc/powerpc64/Makefile (CFLAGS-mcount.c): Add
1207         -msoft-float.
1208         * sysdeps/powerpc/powerpc64/sysdep.h (SAVE_ARG, REST_ARG): New macros.
1209         (CALL_MCOUNT): Replace with a gas macro implementation.
1210         (EALIGN): Delete PROF version.
1211         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Invoke CALL_MCOUNT.
1212         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Likewise.
1213         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
1214         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
1215         * sysdeps/powerpc/powerpc64/memcpy.S: Likewise.
1216         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
1217         * sysdeps/powerpc/powerpc64/stpcpy.S: Likewise.
1218         * sysdeps/powerpc/powerpc64/strchr.S: Likewise.
1219         * sysdeps/powerpc/powerpc64/strcmp.S: Likewise.
1220         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
1221         * sysdeps/powerpc/powerpc64/strlen.S: Likewise.
1222         * sysdeps/powerpc/powerpc64/strncmp.S: Likewise.
1223         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Likewise.
1224         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Likewise.
1225         * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Likewise.
1226         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Likewise.
1227         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Likewise.
1228         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: Likewise.
1229         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: Likewise.
1230         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: Likewise.
1231         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: Likewise.
1232         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Likewise.
1233         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Likewise.
1234         * sysdeps/powerpc/powerpc64/fpu/s_round.S: Likewise.
1235         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Likewise.
1236         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Likewise.
1237         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Likewise.
1239         * sysdeps/powerpc/powerpc64/setjmp-common.S: Add extra entry point
1240         past _mcount call.
1241         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Use it.
1242         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
1244 2004-10-06  Ulrich Drepper  <drepper@redhat.com>
1246         * resolv/res_mkquery.c (res_nmkquery): Reject randombits value if
1247         low 16 bits are zero.
1249 2004-10-06  Jakub Jelinek  <jakub@redhat.com>
1251         * posix/tst-getaddrinfo2.c: Include stdlib.h and string.h.
1252         (do_test): Use %p instead of 0x%08X to print a pointer.
1254         * malloc/malloc.c: Include stdio-common/_itoa.h.
1256 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
1258         * elf/rtld.c (dl_main): Use _dl_debug_printf instead of _dl_printf
1259         for prelink message.
1261 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
1263         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Include dl-sysdep.h.
1264         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
1266 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
1268         * grp/initgroups.c: Remove duplicate group IDs.
1269         * grp/compat-initgroups.c: Likewise.
1270         * nscd/initgrcache.c: Likewise.
1272 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
1274         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (__sysconf): Return 200112L
1275         for _SC_CPUTIME or _SC_THREAD_CPUTIME.
1277         * nscd/Makefile (nscd-cflags): Set to -DIS_IN_nscd=1, plus
1278         -fpie if building PIE.
1279         (CFLAGS-*.c): Use it.
1281         * nscd/Makefile (relro-LDFLAGS): Add -Wl,-z,now if have-z-relro.
1282         ($(objpfx)nscd): Add $(relro-LDFLAGS).
1284         * sysdeps/unix/sysv/linux/i386/sysconf.c: Include hp-timing.h.
1285         (__sysconf): Return -1 for _SC_CPUTIME or _SC_THREAD_CPUTIME if
1286         !HP_TIMING_AVAIL.
1288 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
1290         * nscd/Makefile (distribute): Remove TODO.
1291         * nscd/TODO: Removed.
1293 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
1295         * nscd/gai.c: Define __no_netlink_support if NEED_NETLINK is
1296         defined and __ASSUME_NETLINK_SUPPORT is zero.
1297         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gai.c): Add
1298         -DNEED_NETLINK.
1300         * malloc/mtrace.pl: Avoid calling location unless it is needed for
1301         output.  Patch by Edward Bishop <binutils@gmail.com>.
1303         * nscd/Makefile (CFLAGS-gai.c): Add -fpie.
1305 2004-10-04  H.J. Lu  <hongjiu.lu@intel.com>
1307         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c
1308         (clock_getcpuclockid): Add missing retval.
1310         * sysdeps/unix/sysv/linux/ia64/sysconf.c (linux_sysconf): Fix a typo.
1312 2004-10-04  Roland McGrath  <roland@redhat.com>
1314         * include/errno.h [RTLD_PRIVATE_ERRNO] (errno): Rename the real symbol
1315         to rtld_errno.
1316         * sysdeps/generic/errno.c [RTLD_PRIVATE_ERRNO] (rtld_errno): Define it,
1317         and don't define any other errno names.
1318         * sysdeps/unix/alpha/sysdep.h [RTLD_PRIVATE_ERRNO]: Use rtld_errno in
1319         place of errno.
1320         * sysdeps/unix/i386/sysdep.S: Likewise.
1321         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
1322         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
1323         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
1324         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
1325         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
1326         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
1327         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
1328         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
1329         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
1330         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
1331         * sysdeps/unix/x86_64/sysdep.S: Likewise.
1333         * sysdeps/generic/errno.c [! USE___THREAD] (errno): Use `nocommon'
1334         attribute instead of `section'.
1336 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
1338         * sysdeps/unix/sysv/linux/ia64/sysconf.c: New file.
1339         * sysdeps/unix/sysv/linux/ia64/Dist: Add has_cpuclock.c.
1340         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: Move actual
1341         testing code to...
1342         * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c: ...here.  New file.
1343         * sysdeps/unix/sysv/linux/i386/sysconf.c: Add dynamic check for
1344         _SC_CPUTIME and _SC_THREAD_CPUTIME.
1346         * nscd/connections.c (start_threads): Use sysconf in case
1347         _POSIX_CLOCK_SELECTION or _POSIX_MONOTONIC_CLOCK is not greater zero.
1349         * nscd/Makefile (nscd-modules): Add gai.
1350         * nscd/gai.c: New file.
1351         * nscd/nscd.c: Remove getaddrinfo stub definition.
1353         * assert/assert.h: Give up on using __builtin_expect.
1355         * elf/rtld.c (dl_main): Only skip => output in ldd mode if both
1356         strings are identical.
1358 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
1360         * malloc/arena.c (aligned_heap_area): New variable.
1361         (new_heap): If aligned_heap_area != NULL, attempt to use that
1362         first.  If HEAP_MAX_SIZE << 1 area is already HEAP_MAX_SIZE bytes
1363         aligned, remember the second half in aligned_heap_area.
1364         (delete_heap): Clear aligned_heap_area if deleting the area right
1365         before aligned_heap_area.
1367 2004-10-03  Juerg Billeter  <j@bitron.ch>
1369         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Return -1 if nscd
1370         can't be used.  [BZ #424]
1372 2004-10-03  Ulrich Drepper  <drepper@redhat.com>
1374         Dynamically create new threads if necessary.
1375         * nscd/connections.c (fd_ready): If no thread available for processing
1376         the request, create a new one unless the limit is reached.
1377         (start_threads): Check errors from pthread_create.
1378         * nscd/nscd.h: Declare max_nthreads.
1379         * nscd/nscd_conf.c: Parse max-nthreads entry.
1380         * nscd/nscd.conf: Add max-threads entry.
1381         * nscd/nscd_stat.c: Print current and maximum number of threads.
1383         Implement paranoia mode.
1384         * nscd/connections.c (nscd_init): Mark database and socket descriptors
1385         as close on exec.
1386         (restart): New function.
1387         (restart_p): New function.
1388         (nscd_run): Add missing descrement of nready in case readylist is
1389         empty.
1390         (main_loop_poll): Call restart_p and restart.
1391         (main_loop_epoll): Likewise.
1392         (begin_drop_privileges): Save original UID and GID.
1393         * nscd/nscd.c: Define new variables paranoia, restart_time,
1394         restart_interval, oldcwd, old_gid, old_uid.
1395         (main): Disable paranoia mode if we are not forking.
1396         (check_pid): When re-execing, the PID file contains the same PID as
1397         the current process.  Do not fail in this case.
1398         * nscd/nscd.conf: Add paranoia and restart-interval entries.
1399         * nscd/nscd.h: Define RESTART_INTERVAL.  Declare new variables.
1400         * nscd/nscd_conf.c: Parse paranoia and restart-internal configurations.
1401         * nscd/nscd_stat.c: Print paranoia and restart-internal values.
1403         * nscd/connections.c: Implement alternative loop for main thread
1404         which uses epoll.
1405         * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]
1406         (CFLAGS-connections.c): Add -DHAVE_EPOLL.
1408 2004-10-02  Ulrich Drepper  <drepper@redhat.com>
1410         * nscd/Makefile (CFLAGS-initgrcache.c): Add to CFLAGS-* variables,
1411         don't replace old content.
1413         * nscd/connections.c: Rewrite handling of incoming connections.  All
1414         are handled by one thread which then hands off the descriptors for the
1415         real work to the worker threads.
1416         * nscd/Makefile: Link nscd with librt.
1418         * nscd/selinux.c: Pretty printing.
1420         * nscd/dbg_log.c (dbg_log): Don't add unnecessary newline to
1421         output.  Let syslog do the formatting if debug_level == 0.
1423         * nscd/nscd_helper.c (get_mapping): No need to check timestamp if
1424         nscd_certainly_running is nonzero.
1426 2004-10-02  Simon Josefsson  <jas@extundo.com>
1428         [BZ #420]
1429         * sysdeps/generic/memmem.c [!_LIBC]: Define __builtin_expect, to
1430         make the file usable inside gnulib.
1432 2004-10-01  Ulrich Drepper  <drepper@redhat.com>
1434         * malloc/malloc.c (public_vALLOc): Add missing use of hooks.
1435         (public_pVALLOc): Likewise.
1437         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Always add the
1438         group the caller provided unless there is a real problem.
1440         * posix/bug-glob1.c (prepare): Fix creation of symlink.
1442 2004-09-30  Ulrich Drepper  <drepper@redhat.com>
1444         * posix/Makefile: Add rules to build and run bug-glob1.
1445         * posix/bug-glob1.c: New file.
1447         * iconv/iconv_prog.c (main): Print progress information to stderr.
1449         * nscd/nscd.c (termination_handler): Reset timestamp so that
1450         clients immediately stop using the database.
1452         * nscd/nscd-client.h (__nscd_get_map_ref): Drop volatile from last
1453         parameter.
1454         (__nscd_drop_map_ref): Change second parameter to be a reference to
1455         a variable.  Update variable when cycle count changed.
1456         * nscd/nscd_helper.c (__nscd_get_map_ref): Remove volatile here, too.
1457         * nscd/nscd_getai.c: Correctly use __nscd_drop_map_ref.  Reinitialize
1458         all variables and avoid memory leak in case of retries.
1459         * nscd/nscd_getgr_r.c: Likewise.
1460         * nscd/nscd_gethst_r.c: Likewise.
1461         * nscd/nscd_getpw_r.c: Likewise.
1462         * nscd/nscd_initgroups.c: Likewise.
1464         * nscd/nscd.h: Add declaration of addinitgroups and
1465         readdinitgroups.
1467 2004-09-30  Andreas Jaeger  <aj@suse.de>
1469         * nscd/Makefile (CFLAGS-nscd_initgroups.c): Set to -fpie.
1470         (CFLAGS-initgrcache.c): Set to -fexceptions.
1472 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
1474         * sysdeps/generic/glob.c (glob_in_dir): Don't blindly trust
1475         readdir results; for symlinks or files of unknown type check using
1476         stat whether the file exists.
1478         * posix/tst-gnuglob.c (find_file): Handle leading "./".  Fix
1479         recognition of files.
1481 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
1483         * time/tzfile.c (tzfile_mtime): New variable.
1484         (__tzfile_read): Reread the file if mtime is different.
1486 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
1488         * sysdeps/alpha/fpu/bits/mathinline.h (__fdimf, __fdim, fdimf, fdim):
1489         Handle +inf/+inf.
1490         * sysdeps/powerpc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
1491         * sysdeps/sparc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
1493 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
1495         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use correct constant for
1496         testing result of __nscd_get_map_ref.
1498 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
1500         * sysdeps/i386/fpu/s_fdim.S (__fdim): Handle +inf/+inf.
1501         * sysdeps/i386/fpu/s_fdimf.S (__fdimf): Likewise.
1502         * sysdeps/i386/fpu/s_fdiml.S (__fdiml): Likewise.
1504 004-09-29  Ulrich Drepper  <drepper@redhat.com>
1506         * grp/initgroups.c: Move compat_call implementation...
1507         * grp/compat-initgroups.c: ...to here.  New file.
1508         * grp/Makefile (distribute): Add compat-initgroups.c.
1509         (CFLAGS-initgroups.c): Add -DUSE_NSCD=1.
1510         * mscd/initgrcache.c: New file.
1511         * nscd/nscd_initgroups.c: New file.
1512         * nscd/Makefile (routines): Add nscd_initgroups.
1513         (nscd-modules): Add initgrcache.
1514         * nscd/cache.c (prune_cache): Add support for INITGROUPS entries.
1515         * nscd/connections.c: Handle INITGROUPS requests.
1516         * nscd/nscd-client.h: Define INITGROUPS, initgr_response_header.
1517         Add initgrdata element to struct datahead.  Fix typo in comment.
1518         * nscd/nscd_proto.h: Declare __nscd_getgrouplist.  Fix parameter
1519         type in __nscd_getgrgrid_r.
1520         * nscd/selinux.c (perms): Add INITGROUPS entry.
1522         * nscd/nscd_getai.c: No need to include <sys/mman.h>.
1524         * sunrpc/get_myaddr.c (get_myaddress): Account for interfaces without
1525         assigned addresses.
1526         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
1527         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
1528         * sunrpc/clnt_udp.c (is_network_up): Likewise.
1530         * nscd/nscd.c: Define getaddrinfo hidden so that it is never found
1531         outside.
1533         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_segvflags):
1534         Renamed from si_flags due to conflict with si_flags from <elf.h>.
1536 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
1538         * nscd/nscd_getai.c: Use NO_MAPPING instead of MAP_FAILED for test
1539         of failing __nscd_get_map_ref.  Fix a few typos.
1541         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Make sure
1542         SIGSETXID is not blocked.
1543         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Likewise.
1544         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
1545         * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise.
1546         * sysdeps/generic/sigfillset.c (sigfillset): Don't set SIGSETXID.
1548         * sunrpc/get_myaddr.c (get_myaddress): Fix test for failing
1549         getifaddrs call.
1550         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
1551         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
1552         * sunrpc/Makefile (xtests): Add tst-getmyaddr.
1553         * sunrpc/tst-getmyaddr.c: New file.
1555         * malloc/arena.c (ptmalloc_init): Allow MALLOC_CHECK_==0 to
1556         disable all checking.
1558         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_flags): Add
1559         support to get this value.
1561 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
1563         * io/utime.h (utime): Allow second argument to be NULL.
1565 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
1567         * sysdeps/posix/getaddrinfo.c (gaih_inet): If NAME is a numerical IP
1568         address and AI_CANONNAME is set, return copy of NAME as ai_canonname.
1570 2004-09-27  Andreas Jaeger  <aj@suse.de>
1572         * sysdeps/i386/dl-machine.h (elf_machine_rela_relative): Replace
1573         static inline by auto inline, add always_inline attribute.
1574         (elf_machine_rel): Likewise.
1575         (elf_machine_rela): Likewise.
1576         (elf_machine_lazy_rel): Likewise.
1577         (elf_machine_lazy_rela): Likewise.
1578         (elf_machine_rel_relative): Likewise.
1580 2004-09-27  Ulrich Drepper  <drepper@redhat.com>
1582         * sunrpc/xdr_intXX_t.c: Add xdr_quad_t and xdr_u_quad_t aliases.
1583         * sunrpc/rpc/xdr.h: Declare xdr_quad_t and xdr_u_quad_t.
1584         * sunrpc/rpc_parse.c (get_type): Use "quad_t" for TOK_HYPER.
1585         Otherwise isvectordef will loop infinitely if typedef hyper int64_t
1586         is seen.
1587         (unsigned_dec): Use "u_quad_t" for similar reasons.
1588         * sunrpc/Versions: Export xdr_quad_t and xdr_u_quad_t.
1590 2004-09-27  Roland McGrath  <roland@redhat.com>
1592         * sysdeps/generic/bits/waitstatus.h (__WIFSIGNALED): Simplify bit
1593         twiddling in last change.
1595         * posix/tst-waitid.c (do_test): Add tests for waitpid with WCONTINUED.
1597         [BZ #409]
1598         * posix/sys/wait.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
1599         * stdlib/stdlib.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
1600         * sysdeps/generic/bits/waitstatus.h (__W_CONTINUED): New macro.
1601         [WCONTINUED] (__WIFCONTINUED): New macro.
1602         (__WIFSIGNALED): Rewritten to exclude __W_CONTINUED value, and have no
1603         branches.
1605         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Add fifth argument to
1606         all three syscall uses, not just one!
1608 2004-09-26  Richard Henderson  <rth@redhat.com>
1610         * sysdeps/alpha/alphaev6/memcpy.S: Mark .prologue.
1611         * sysdeps/unix/alpha/sysdep.h (LEAF, ENTRY): Align entry points
1612         to 16 byte boundaries.
1614 2004-09-26  Ulrich Drepper  <drepper@redhat.com>
1616         * elf/readlib.c (process_file): Before complaining about too-short
1617         file, check that it potentially be an ELF file.  Also complain about
1618         empty files.  [BZ #151].
1620         * scripts/test-installation.pl: Fix ld.so recognition for new
1621         LD_TRACE_LOADED_OBJECTS output format.
1622         Patch by <jsberg04+computing.glibc@ftml.net>  [BZ #407].
1624         * elf/dl-support.c (_dl_non_dynamic_init): Fix cleaning of
1625         environment.  [BZ #384]
1627         * sunrpc/clnt_udp.c (is_network_up): Use getifaddrs instead of ioctl.
1628         * sunrpc/get_myaddr.c (get_myaddress): Likewise.
1629         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
1630         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.  Change interface
1631         to avoid buffer overrun and remove now useless parameters.
1632         (clnt_broadcast): Adjust caller.  [BZ #381].
1634         * sysdeps/generic/s_fdim.c: Handle +inf/+inf
1635         * sysdeps/generic/s_fdimf.c: Likewise.
1636         * sysdeps/generic/s_fdiml.c: Likewise.
1637         * sysdeps/i386/i686/fpu/s_fdim.S: Likewise.
1638         * sysdeps/i386/i686/fpu/s_fdimf.S: Likewise.
1639         * sysdeps/i386/i686/fpu/s_fdiml.S: Likewise.
1640         * sysdeps/powerpc/fpu/s_fdim.c: Likewise.
1641         * sysdeps/powerpc/fpu/s_fdimf.c: Likewise.
1642         * sysdeps/x86_64/fpu/s_fdiml.S: Likewise.
1643         * math/libm-test.inc (fdim_test): Add test case.  [BZ #376].
1645         * sysdeps/generic/bits/types.h: Fix __SQUAD_TYPE and __UQUAD_TYPE
1646         for compilers without __GLIBC_HAVE_LONG_LONG.  [BZ #362]
1648         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Remove incorrect
1649         requirement on socktype and protocol.
1650         (gaih_inet): If numeric port number is given, return records for all
1651         possible socket types.
1652         * posix/tst-getaddrinfo2.c: New file.
1653         * posix/Makefile (tests): Add tst-getaddrinfo2.  [BZ #358]
1655 2004-09-25  Ulrich Drepper  <drepper@redhat.com>
1657         * locale/loadlocale.c (_nl_intern_locale_data): Recognize LC_CTYPE
1658         data where _nl_value_type_LC_CTYPE does not contain the type
1659         information.  Add range checks.
1660         Reported by John Lumby <johnlumby@hotmail.com> [BZ #356].
1662         * libio/vasprintf.c (_IO_vasprintf): Fix condition to decide
1663         whether to realloc or not.
1664         Reported by Pavel Kankovsky <peak@argo.troja.mff.cuni.cz> [BZ #346].
1666         * intl/dcigettext.c (DCIGETTEXT): Protect tfind/tsearch calls.
1667         * intl/dcigettext.c (_nl_find_msg): Call _nl_load_domain also if
1668         decided < 0.
1669         * intl/finddomain.c (_nl_find_domain): Likewise.
1670         * intl/loadmsgcat.c (_nl_load_domain): Set decided to 1 only once we
1671         are done.  First set to -1 to signal initialization is ongoing.
1672         Protect against concurrent callers with recursive lock.
1673         * intl/finddomain.c (_nl_find_domain): Protect calls to
1674         _nl_make_l10nflist.  [BZ #322]
1676         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If determinination of
1677         source address fails, initialized source_addr_len field so that
1678         duplicate address recognition does not copy junk.
1680 2004-09-25  Jakub Jelinek  <jakub@redhat.com>
1682         * sysdeps/unix/sysv/linux/i386/setuid.c (__setuid): Remove second
1683         result declaration.
1685 2004-09-22  Andreas Schwab  <schwab@suse.de>
1687         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Adjust whitespace.
1689 2004-09-24  Ulrich Drepper  <drepper@redhat.com>
1691         * misc/daemon.c (daemon): Don't succeed if /dev/null cannot be
1692         opened.
1694         * nis/ypclnt.c (do_ypcall): Add one missing unlock.  Simplify the
1695         code a bit.
1697         * misc/daemon.c (daemon): Define errno in case /dev/null is not
1698         the correct device.
1700         * nis/ypclnt.c (yp_bind_file): Optimize a bit.  Minimal cleanups.
1702 2004-09-23  Andreas Jaeger  <aj@suse.de>
1704         * locale/weight.h (findidx): Remove static, it's not supported
1705         anymore with GCC 4.0 in a block scope.
1706         * locale/weightwc.h (findidx): Likewise.
1707         * posix/regcomp.c (seek_collating_symbol_entry): Likewise.
1708         (lookup_collation_sequence_value): Likewise.
1709         (build_range_exp): Likewise.
1710         (build_collating_symbol): Likewise.
1711         * iconv/iconvconfig.c (write_output): Likewise.
1712         * elf/do-rel.h (elf_dynamic_do_rel): Likewise.
1714         * sysdeps/x86_64/dl-machine.h (elf_machine_rela_relative): Remove
1715         static, add always_inline attribute.
1716         (elf_machine_rela): Likewise.
1717         (elf_machine_lazy_rel): Likewise.
1719         * elf/dynamic-link.h (elf_get_dynamic_info): Make static dependend
1720         on !RESOLVE so that it's not defined in local scope.
1722 2004-09-23  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1724         * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL_NCS): Define.
1726 2004-09-23  Thorsten Kukuk  <kukuk@suse.de>
1728         * sysdeps/unix/sysv/linux/sys/mount.h: Sync MS_RMT_MASK flag
1729         and BLK* ioctls with linux kernel headers.
1731 2004-09-23  Ulrich Drepper  <drepper@redhat.com>
1733         * sysdeps/generic/bits/dlfcn.h: Add RTLD_DEEPBIND.
1734         * elf/dl-object.c (_dl_new_object): Add new parameter mode.  If mode
1735         has RTLD_DEEPBIND set add local searchlist before global scope.
1736         * sysdeps/generic/ldsodefs.h (_dl_new_object): Adjust prototype.
1737         * elf/rtld.c: Adjust callers of _dl_new_object.
1738         * elf/dl-load.c: Likewise.
1739         (_dl_map_object_from_fd): If RTLD_DEEPBIND is used, don't do anything
1740         for DF_SYMBOLIC.
1741         * elf/dl-open.c (dl_open_writer): Pass RTLD_DEEPBIND flag on to
1742         _dl_map_object_deps.
1743         * elf/tst-deep1.c: New file.
1744         * elf/tst-deep1mod1.c: New file.
1745         * elf/tst-deep1mod2.c: New file.
1746         * elf/tst-deep1mod3.c: New file.
1747         * elf/Makefile: Add rules to build and run new tests.
1749         * elf/dl-deps.c: Pretty printing.
1751 2004-09-23  Jakub Jelinek  <jakub@redhat.com>
1753         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
1754         argument to numbers from syscall names.
1755         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
1756         (INTERNAL_SYSCALL_NCS): Renamed from...
1757         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
1758         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
1759         (INTERNAL_SYSCALL_NCS): Define.
1760         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
1761         (INTERNAL_SYSCALL_NCS): Likewise.
1762         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
1763         Change name argument to numbers from syscall names.
1764         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
1765         (INTERNAL_SYSCALL_NCS): Define.
1767 2004-09-22  Ulrich Drepper  <drepper@redhat.com>
1769         * malloc/malloc.c (malloc_printerr): Use syslog if writev failed.
1771         * string/string.h: Add __nonnull annotations.
1772         * stdlib/stdlib.h: Likewise.
1774 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
1776         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
1777         argument to numbers from syscall names.
1778         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
1779         (INTERNAL_SYSCALL_NCS): Renamed from...
1780         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
1781         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
1782         (INTERNAL_SYSCALL_NCS): Define.
1783         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
1784         (INTERNAL_SYSCALL_NCS): Likewise.
1785         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
1786         Change name argument to numbers from syscall names.
1787         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
1788         (INTERNAL_SYSCALL_NCS): Define.
1790 2004-09-20  H.J. Lu  <hongjiu.lu@intel.com>
1792         * sysdeps/unix/sysv/linux/ia64/sysdep.h (DO_INLINE_SYSCALL):
1793         Renamed to ...
1794         (DO_INLINE_SYSCALL_NCS): This.
1795         (DO_INLINE_SYSCALL): New.
1796         (INLINE_SYSCALL): Updated.
1797         (INTERNAL_SYSCALL_NCS): Updated.
1799 2004-09-21  Ulrich Drepper  <drepper@redhat.com>
1801         * elf/sprof.c (load_shobj): Add support for reading symbol table
1802         from debuginfo file.
1804         * elf/ldd.bash.in: Fix syntax errors.
1806 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
1808         * sysdeps/unix/sysv/linux/dl-execstack.c
1809         (_dl_make_stack_executable): Remove some duplication.
1811         * nscd/nscd.c (options): Mark S option as hidden.
1812         (parse_opt): When S option is used, print warning message.
1813         * nscd/grpcache.c (adgrptbyX): Don't handle secure mode.
1814         * nscd/hstcache.c (addhstbyX): Don't handle secure mode.
1815         * nscd/aicache.c (addhstaiX): Don't handle secure mode.
1816         * nscd/pwdcache.c (addpwbyX): Don't handle secure mode.
1818 2004-09-20  Roland McGrath  <roland@frob.com>
1820         * elf/dl-load.c (__stack_prot): Only use PROT_GROWSUP/PROT_GROWSDOWN
1821         in initializer #if defined.
1823 2004-09-18  Paul Eggert  <eggert@cs.ucla.edu>
1825         [BZ #391]
1826         * stdlib/getsubopt.c: Merge fixes from gnulib.
1827         (__strchrnul) [!_LIBC]: Define and include "strchrnul.c".
1828         (getsubopt): Use prototypes, not K&R style.
1829         Fix bug: memcmp(A,B,N) was being invoked on a memory block B
1830         whose size might be smaller than N.  Use strncmp to avoid the bug.
1832 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
1834         * configure.in: If selinux has not explictly been requested, don't
1835         comment on it missing.
1837         * elf/dl-load.c: Define __stack_prot.
1838         * sysdeps/unix/sysv/linux/dl-execstack.c: Don't define
1839         __stack_prot here, just declare it.
1841 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
1843         * configure.in (libc_cv_z_relro): Only set to yes if linker script
1844         contains DATA_SEGMENT_RELRO_END.
1846 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
1848         * elf/dl-load.c (_dl_map_object_from_fd): Add some error checking.
1849         Reorder code slightly.
1850         * elf/rtld.c (dl_main): No need to check whether l_info[DT_HASH]
1851         is non-null, _dl_setup_hash will do that.
1853 2004-09-19  Ulrich Drepper  <drepper@redhat.com>
1855         * sysdeps/unix/sysv/linux/setegid.c [HAVE_PTR__NPTL_SETXID]: Call
1856         callback to set IDs in all other threads as well.
1857         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
1858         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
1859         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
1860         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
1861         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
1862         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1863         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1864         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1865         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1866         * sysdeps/unix/sysv/linux/setuid.c: New file.
1867         * sysdeps/unix/sysv/linux/setgid.c: New file.
1868         * sysdeps/unix/sysv/linux/setreuid.c: New file.
1869         * sysdeps/unix/sysv/linux/setregid.c: New file.
1870         * sysdeps/unix/sysv/linux/setresuid.c: New file.
1871         * sysdeps/unix/sysv/linux/setresgid.c: New file.
1872         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NCS.
1873         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
1874         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
1875         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
1876         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
1877         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c: Use x86 version.
1878         * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c: Likewise.
1879         * sysdeps/unix/sysv/linux/sparc/sparc32/setresgid.c: New file.
1880         * sysdeps/unix/sysv/linux/sparc/sparc32/setresuid.c: New file.
1881         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove setresgid
1882         and setresuid.
1883         * nscd/aicache.c: Use pthread_seteuid_np instead of seteuid.
1884         * nscd/grpcache.c: Likewise.
1885         * nscd/hstcache.c: Likewise.
1886         * nscd/pwdcache.c: Likewise.
1888         * resolv/res_mkquery.c (res_nmkquery): Fix typo.
1890 2004-09-18  Ulrich Drepper  <drepper@redhat.com>
1892         * sysdeps/unisx/sysv/linux/dl-execstack.c: Get protection flag
1893         from memory.
1894         * elf/dl-load.c (_dl_map_object_from_fd): Add PROT_EXEC flag to
1895         __stack_flags.
1897         * sysdeps/posix/getaddrinfo.c (gaih_inet): Do not use
1898         gethostbyname3_r if we are not looking for the canonical name.
1900         * resolv/res_mkquery.c (res_nmkquery): Randomize request ID every
1901         time.
1903 2004-09-18  Roland McGrath  <roland@redhat.com>
1905         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Pass fifth argument to
1906         system call.
1908 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1910         * include/link.h (struct link_map): Add l_used element.
1911         * sysdeps/generic/ldsodefs.h: Define DL_DEBUG_UNUSED.
1912         * elf/rtld.c (process_dl_debug): Recognize unused.
1913         (dl_main): When unused debug flag is set check for unused direct
1914         dependencies.
1915         When printing dependencies and SONAME starts with /, omit the SONAME =>
1916         part.
1917         * elf/dl-lookup.c (_dl_lookup_symbol_x): Mark object in which the
1918         symbol has been found as used.
1919         * elf/ldd.bash.in: Add -u option.
1921 2004-09-18  Jakub Jelinek  <jakub@redhat.com>
1923         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
1924         Do nothing if __NR_set_tid_address is not defined.  [BZ #390]
1926 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1928         * sysdeps/posix/getaddrinfo.c: Use gethostbyname3_r NSS function
1929         in case it is available.
1931 2004-09-17  Jakub Jelinek  <jakub@redhat.com>
1933         * nscd/nscd.c (parse_opt): Write arg string instead of (void *)
1934         key to the socket.
1936 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1938         * misc/sys/cdefs.h: Define __nonnull using nonnull function attribute
1939         for gcc 3.3 and higher.
1940         * io/fcntl.h: Add __nonnull where appropriate.
1941         * io/ftw.h: Likewise.
1942         * io/utime.h: Likewise.
1943         * io/sys/poll.h: Likewise.
1944         * io/sys/sendfile.h: Likewise.
1945         * io/sys/stat.h: Likewise.
1946         * io/sys/statfs.h: Likewise.
1947         * io/sys/statvfs.h: Likewise.
1948         * posix/unistd.h: Likewise.
1949         * catgets/nl_types.h: Likewise.
1950         * crypt/crypt.h: Likewise.
1951         * debug/execinfo.h: Likewise.
1953 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
1955         * posix/glob.h: Remove cruft to make header usable outside glibc.
1956         The maintenance headache is too big.
1958         * configure.in: Add test for required SELinux features.
1959         * config.make.in: Add have-selinux entry.
1960         * config.h.in: Add HAVE_SELINUX entry.
1961         * nscd/Makefile (nscd-modules): Add selinux.
1962         (CFLAGS-selinux.c): Add -fpie.
1963         Define selinux-LIBS and use in link line.
1964         * nscd/connections.c (handle_request): Check access SELinux permissions
1965         before processing request.
1966         * nscd/nscd.c (main): Initialize selinux_enabled and stop avc thread.
1967         * nscd/nscd_stat.c: Transmit and print AVC statistics.
1968         * nscd/selinux.c: New file.
1969         * nscd/selinux.h: New file.
1970         Patch mostly by Matthew Rickard <mjricka@epoch.ncsc.mil>.
1972 2004-09-16  Jakub Jelinek  <jakub@redhat.com>
1974         * nscd/nscd_helper.c (__nscd_unmap, get_mapping): Use __munmap
1975         instead of munmap.
1977         * nscd/Makefile (CFLAGS-aicache.c): Set to -fpie.
1979 2004-09-16  Thorsten Kukuk  <kukuk@suse.de>
1981         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check
1982         __nss_not_use_nscd_hosts variable if nscd should be used or not.
1984 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
1986         * nscd/nscd_proto.h: Define NSS_NSCD_RETRY.
1987         Add __nscd_getai prototype.
1988         * nss/getXXbyYY_r.c: Remode definition of NSS_NSCD_RETRY.
1989         * nscd/nscd-client.h: Remove __nscd_getai prototype.
1990         * nscd/nscd_getai.c: Include nscd_proto.h.
1992         * elf/ldd.bash.in: Add support for SELinux environments.
1993         Patch by Stephen Smalley <sds@epoch.ncsc.mil>.
1995 2004-09-16  Roland McGrath  <roland@redhat.com>
1997         * configure.in (--with-headers): Let argument contain a : separated
1998         list of directories to use, not just one.
1999         * configure: Regenerated.
2001 2004-09-15  Richard Henderson  <rth@redhat.com>
2003         * sysdeps/alpha/fpu/libm-test-ulps: Update.
2004         * scripts/data/c++-types-alpha-linux-gnu.data: New file.
2006 2004-09-15  Ulrich Drepper  <drepper@redhat.com>
2008         * nscd/aicache.c: Prefer using gethostbyname3_r NSS callback to also
2009         get ttl and canonical name.  Use these two values.
2010         * resolv/Versions: Export _nss_dns_gethostbyname3_r from libnss_dns.
2011         * resolv/nss_dns/dns-host.c (getanswer_r): Take two new parameters.
2012         If nonnull fill with TTL and pointer to canonical name respectively.
2013         (_nss_dns_gethostbyaddr_r): Pass NULL in new parameters of getanswer_r.
2014         (_nss_dns_gethostbyname2_r): Just wrapper around
2015         _nss_dns_gethostbyname3_r.
2016         (_nss_dns_gethostbyname3_r): Renamed from _nss_dns_gethostbyname2_r.
2017         Take two new parameters which as passed to getanswer_r.
2019         * nscd/Makefile (rountines): Add nscd_getai.
2020         (nscd-modules): Add aicache.
2021         * nscd/aicache.c: New file.
2022         * nscd/nscd_getai.c: New file.
2023         * nscd/cache.c (prune_cache): Handle GETAI request type.
2024         * nscd/connections.c: Add GETAI support in request handling.
2025         * nscd/nscd-client.h (request_type): Add GETAI.
2026         Define ai_response_header and struct nscd_ai_result types.
2027         (struct datahead): Add aidata field.
2028         Declare __nscd_getai.
2029         * nscd/nscd.c: Add getaddrinfo definition to catch problems.
2030         * nscd/nscd.h: Declare addhstai and readdhstai.
2032         * sysdeps/posix/getaddrinfo.c: Add support for using cached results.
2033         * posix/Makefile (CFLAGS-getaddrinfo.c): Add -DUSE_NSCD.
2035         * nscd/nscd-client.h  (struct datahead): Use uint8_t instead of bool.
2037 2004-09-14  Ulrich Drepper  <drepper@redhat.com>
2039         * misc/sys/cdefs.h: Remove debugging text from __P and __PMT.
2041 2004-09-13  Ulrich Drepper  <drepper@redhat.com>
2043         * misc/sys/cdefs.h: Restore old definition of __P.
2044         * csu/munch.awk: Remove uses of __P and __PMT.
2045         * gmon/gmon.c: Likewise.
2046         * hesiod/hesiod.h: Likewise.
2047         * include/stdio.h: Likewise.
2048         * io/fts.c: Likewise.
2049         * libio/genops.c: Likewise.
2050         * libio/libioP.h: Likewise.
2051         * libio/fileops.c: Likewise.
2052         * libio/iolibio.h: Likewise.
2053         * libio/libio.h: Likewise.
2054         * libio/memstream.c: Likewise.
2055         * libio/oldfileops.c: Likewise.
2056         * libio/oldstdfiles.c: Likewise.
2057         * libio/iopopen.c: Likewise.
2058         * libio/vsnprintf.c: Likewise.
2059         * libio/vswprintf.c: Likewise.
2060         * libio/wgenops.c: Likewise.
2061         * libio/oldiopopen.c: Likewise.
2062         * locale/programs/xmalloc.c: Likewise.
2063         * locale/programs/xstrdup.c: Likewise.
2064         * malloc/mtrace.c: Likewise.
2065         * misc/getttyent.c: Likewise.
2066         * misc/getusershell.c: Likewise.
2067         * nis/rpcsvc/ypupd.h: Likewise.
2068         * posix/fnmatch.h: Likewise.
2069         * posix/glob.h: Likewise.
2070         * resolv/arpa/nameser.h: Likewise.
2071         * resolv/gethnamaddr.c: Likewise.
2072         * resolv/resolv.h: Likewise.
2073         * resolv/inet_net_ntop.c: Likewise.
2074         * resolv/inet_net_pton.c: Likewise.
2075         * resolv/res_init.c: Likewise.
2076         * resolv/nss_dns/dns-network.c: Likewise.
2077         * stdio-common/vfprintf.c: Likewise.
2078         * stdio-common/reg-printf.c: Likewise.
2079         * sysdeps/generic/chflags.c: Likewise.
2080         * sysdeps/generic/fchflags.c: Likewise.
2081         * sysdeps/generic/glob.c: Likewise.
2082         * sysdeps/generic/printf_fphex.c: Likewise.
2083         * sysdeps/generic/memcmp.c: Likewise.
2084         * sysdeps/generic/memcopy.h: Likewise.
2085         * sysdeps/generic/morecore.c: Likewise.
2086         * sysdeps/generic/sstk.c: Likewise.
2087         * sysdeps/posix/sigvec.c: Likewise.
2088         * sysdeps/posix/ttyname_r.c: Likewise.
2089         * sysdeps/standalone/arm/bits/errno.h: Likewise.
2090         * sysdeps/standalone/standalone.h: Likewise.
2091         * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise.
2092         * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
2093         * sysdeps/unix/arm/start.c: Likewise.
2094         * sysdeps/unix/bsd/sigaction.c: Likewise.
2095         * sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise.
2096         * sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise.
2097         * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise.
2098         * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise.
2099         * sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise.
2100         * sysdeps/unix/sparc/start.c: Likewise.
2101         * sysdeps/unix/sysv/getdents.c: Likewise.
2102         * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise.
2103         * sysdeps/unix/sysv/irix4/getgroups.c: Likewise.
2104         * sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
2105         * sysdeps/unix/sysv/irix4/getrusage.c: Likewise.
2106         * sysdeps/unix/sysv/irix4/pathconf.c: Likewise.
2107         * sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
2108         * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise.
2109         * sysdeps/unix/sysv/irix4/start.c: Likewise.
2110         * sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
2111         * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise.
2112         * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise.
2113         * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
2114         * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise.
2115         * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
2116         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
2117         * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise.
2118         * sysdeps/unix/sysv/sysv4/setsid.c: Likewise.
2119         * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
2120         * sysdeps/unix/sysv/sysv4/waitpid.c: Likewise.
2121         * sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise.
2122         * time/tzset.c: Likewise.
2123         * time/strftime_l.c: Likewise.
2124         * time/strptime_l.c: Likewise.
2125         * crypt/md5.h: Likewise.
2127 2004-09-13  Andreas Jaeger  <aj@suse.de>
2129         * configure.in: Support GCC 4.x.
2130         * configure: Regenerated.
2132 2004-09-13  Thorsten Kukuk  <kukuk@suse.de>
2134         * nscd/nscd_stat.c: Don't access dbs[cnt].head for disabled services.
2136         * nscd/nscd.init: Fix path to socket.
2138 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
2140         * nscd/nscd_helper.c (get_mapping): Correctly check cmsg length.
2141         Avoid file descriptor leak in case of size mismatch.
2143         * nscd/nscd-client.h: Fix database structure layout for biarch.
2144         * nscd/mem.c (gc): Add casts to avoid warnings.
2146         * nss/getent.c: Don't preconstruct help message.  Do it only when
2147         needed.
2149         * locale/programs/locale.c: Simplify help message printing.
2151 2004-09-12  Roland McGrath  <roland@frob.com>
2153         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]: Add decls
2154         missing in last change.
2156 2004-09-11  Thorsten Kukuk  <kukuk@suse.de>
2158         * nis/nss_compat/compat-grp.c: Check that buflen is greater zero
2159         before writing data into the buffer with negative offset.
2160         * nis/nss_compat/compat-initgroups.c: Likewise.
2161         * nis/nss_compat/compat-pwd.c: Likewise.
2162         * nis/nss_compat/compat-spwd.c Likewise.
2164 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
2166         * misc/syslog.c (vsyslog): Fix copying of PID in case of
2167         out-of-memory situation.  [BZ #365].
2169         * sysdeps/alpha/fpu/bits/mathinline.h: Use __NTH instead of
2170         __THROW in inline function definitions.
2172         * posix/spawn.h [__USE_GNU]: Define POSIX_SPAWN_USEVFORK.
2173         * posix/spawnattr_setflags.c: Check whether any unknown bit is set
2174         in FLAGS parameter and fail if this is the case.
2175         * sysdeps/posix/spawni.c: Use vfork if POSIX_SPAWN_USEVFORK flag is
2176         set.
2178         * nscd/pwdcache.c (cache_addpw): Sync also negative results to disk.
2179         * nscd/grpcache.c (cache_addgr): Likewise.
2180         * nscd/hstcache.c (cache_addhst): Likewise.
2182 2004-09-11  Roland McGrath  <roland@frob.com>
2184         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]:
2185         Set _dl_phdr and _dl_phnum.
2186         (init1): When bootstrap task, bail early and never examine *D.
2188 2004-09-11  Alfred M. Szmidt  <ams@kemisten.nu>
2190         * sysdeps/mach/hurd/i386/tls.h (__i386_set_gdt) [!HAVE_I386_SET_GDT]:
2191         Cast THR, SEL and DESC to `void'.
2193 2004-09-11  Ulrich Drepper  <drepper@redhat.com>
2195         * nscd/connections.c (nscd_run): Call setup_thread only for enabled
2196         databases.
2198         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Use __NTH for __cmsg_nxthdr.
2200 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
2202         * nscd/nscd.c (pagesize_m1): New variable.
2203         (main): Initialize it.
2204         * nscd/nscd.h: Declare pagesize_m1.
2205         * nscd/hstcache.c: Pass correctly aligned address to msync.
2206         * nscd/grpcache.c: Likewise.
2207         * nscd/pwdcache.c: Likewise.
2209 2004-09-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2211         * sysdeps/unix/sysv/linux/sh/pthread_cond_wait.S: Decrement
2212         __nwaiters.  If pthread_cond_destroy has been called and this is
2213         the last waiter, signal pthread_cond_destroy caller and avoid
2214         using the pthread_cond_t structure after unlock.
2215         * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise.
2217 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
2219         * sysdeps/unix/sysv/linux/kernel-features.h: Don't define
2220         __ASSUME_CLONE_STOPPED.
2222 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
2224         * misc/sys/cdefs.h (__REDIRECT_NTH): Change order of __THROW and
2225         __asm__ for C++.  [BZ #377]
2227 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
2229         * nscd/nscd_stat.c: Improve output by also printing .shared and
2230         .persistent.
2232         * nscd/connections.c: Allow cache sharing to be really disabled.
2234 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
2236         * malloc/malloc.c (_int_free): Only do arena boundary check for
2237         contiguous arenas.
2239 2004-09-10  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
2241         * stdlib/longlong.h [__M32R__] (add_ssaaaa, sub_ddmmss): Fix broken
2242         instruct operands.
2243         * elf/elf.h: Add R_M32R_* relocs.
2245 2004-09-09  Ulrich Drepper  <drepper@redhat.com>
2247         * misc/sys/cdefs.h: Despite what the gcc manual says, gcc 3.2
2248         seems not to support the nothrow attribute.  Use it only for gcc
2249         3.3 and higher.
2251         * malloc/hooks.c (top_check): Print top chunk corruption as normal
2252         error message.
2254         * malloc/malloc.c (malloc_printerr): Don't make informational
2255         message look like error message.
2257 2004-09-09  Andreas Jaeger  <aj@suse.de>
2259         * nscd/Makefile (CFLAGS-nscd_setup_thread.c): Set to -fpie.
2261 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
2263         * sysdeps/unix/sysv/linux/bits/socket.h (__SCM_CONNECT): Removed.
2265         * malloc/malloc.c (_int_free): Add inexpensive double free and
2266         memory corruption tests.
2267         (malloc_printf_nc): Renamed to malloc_printerr.  Second parameter
2268         is no format string anymore.  Don't use stdio.  Adjust all callers.
2269         * malloc/hooks.c: Adjust malloc_printf_nc callers.
2271 2004-09-08  Roland McGrath  <roland@redhat.com>
2273         * malloc/mcheck.c: Don't use __P.
2274         Use prototypes definitions for static functions.
2276 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
2278         * sysdeps/ia64/fpu/bits/mathinline.h: Use __NTH instead of __THROW.
2280 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
2281             Jakub Jelinek  <jakub@redhat.com>
2283         * nscd/nscd-client.h: Add a few #includes.
2285         * nscd/Makefile (nscd-modules): Add nscd_setup_thread.
2286         * nscd/connections.c (nscd_run): Call setup_thread for maintenance
2287         threads.
2288         * nscd/nscd-client.h (struct database_pers_head): Add
2289         nscd_certainly_running field.
2290         * nscd/nscd.h: Declare setup_thread.
2291         * nscd/nscd_helper.c (__nscd_get_map_ref): Avoid the time test if
2292         nscd_certainly_running is nonzero.
2293         * sysdeps/generic/nscd_setup_thread.c: New file.
2294         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: New file.
2296 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
2298         * nscd/connections.c: Implement r/o sharing of nscd's cache with client
2299         processes via shared memory.
2300         * nscd/nscd-client.h: Likewise.
2301         * nscd/nscd.h: Likewise.
2302         * nscd/nscd_conf.c: Likewise.
2303         * nscd/nscd_getgr_r.c: Likewise.
2304         * nscd/nscd_getpw_r.c: Likewise.
2305         * nscd/nscd_gethst_r.c: Likewise.
2306         * nscd/nscd.conf: Add new config parameters.
2307         * nscd/Makefile (aux): Add nscd_helper.
2308         * nscd/nscd_helper.c: New file.
2309         * nscd/mem.c (gc): Indicate beginning and end of the gc cycle.
2311         * nscd/hstcache.c: Simplify a lot.  We cache only the request itself,
2312         no derived information.
2313         * connections.c (nscd_init): Fix bug in testing size of the persistent.
2315         * nis/Makefile (aux): Add nis_hash.
2316         * nis/nis_hash.c: New file.  Split out from nis_util.c.
2317         * nis/nis_util.c: Move __nis_hash code in separate file.
2319         * csu/tst-atomic.c: Improve atomic_increment_val test which would
2320         not have found a ppc bug.
2322         * sysdeps/s390/fpu/bits/mathinline.h: Remove unnecessary includes.
2324         * malloc/arena.c: Remove __MALLOC_P uses.
2325         * malloc/malloc.c: Likewise.
2327         * malloc/mtrace.c: Remove __P uses.
2328         * malloc/mcheck-init.c: Likewise.
2330 2004-09-07  Jakub Jelinek  <jakub@redhat.com>
2332         * sysdeps/powerpc/powerpc64/configure.in: New file.
2333         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
2334         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
2335         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
2336         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
2337         BODY_PREFIX): Define.
2338         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
2339         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
2340         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
2341         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
2342         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
2344 2004-09-07  Ulrich Drepper  <drepper@redhat.com>
2346         * malloc/malloc.h: Don't define __THROW if it is already defined.
2348         * sysdeps/powerpc/bits/atomic.h (atomic_increment): Define.
2349         (atomic_decrement): Define.
2351         * sysdeps/powerpc/bits/atomic.h: Implement atomic_increment_val and
2352         atomic_decrement_val.
2353         * sysdeps/powerpc/powerpc32/bits/atomic.h: Likewise.
2354         * sysdeps/powerpc/powerpc64/bits/atomic.h: Likewise.
2356         * csu/tst-atomic.c (do_test): Add tests of atomic_increment_val
2357         and atomic_decrement_val.
2359         * include/atomic.h: Define atomic_increment_val, atomic_decrement_val,
2360         and atomic_delay is not already defined.
2361         * sysdeps/i386/i486/bits/atomic.h: Define atomic_delay.
2362         * sysdeps/x86_64/bits/atomic.h: Likewise.
2364         * miscd/sys/cdefs.h (__NTH): New macro.
2365         (__THROW): Define using nothrow attribute for C code and gcc >= 3.2.
2366         (__REDIRECT_NTH): New macro.
2367         * argp/argp.h: Use __NTH and __REDIRECT_NTH where necessary.
2368         * ctype/ctype.h: Likewise.
2369         * dirent/dirent.h: Likewise.
2370         * io/fcntl.h: Likewise.
2371         * io/sys/sendfile.h: Likewise.
2372         * io/sys/stat.h: Likewise.
2373         * io/sys/statfs.h: Likewise.
2374         * io/sys/statvfs.h: Likewise.
2375         * libio/bits/stdio.h: Likewise.
2376         * misc/sys/mman.h: Likewise.
2377         * posix/unistd.h: Likewise.
2378         * resource/sys/resource.h: Likewise.
2379         * rt/aio.h: Likewise.
2380         * signal/signal.h: Likewise.
2381         * stdlib/stdlib.h: Likewise.
2382         * string/argz.h: Likewise.
2383         * string/string.h: Likewise.
2384         * sysdeps/generic/inttypes.h: Likewise.
2385         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
2386         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
2387         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
2388         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
2389         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
2390         * sysdeps/unix/sysv/linux/bits/sys/sysmacros.h: Likewise.
2391         * wcsmbs/wchar.h: Likewise.
2393         * sysdeps/generic/glob.c: Use __PMT isntead of __P where appropriate.
2395         * resolv/gethnamaddr.c (getanswer): Remove __P use in variable
2396         definition.
2398         * io/sys/poll.h: Remove __THROW from poll prototype, it's a
2399         cancellation point.
2401         * io/fts.c (fts_open): Remove uses of __P.
2403         * include/stdlib.h: No need to use __THROW in this header.
2405 2004-09-06  Roland McGrath  <roland@frob.com>
2407         * sysdeps/mach/hurd/dl-sysdep.c (__writev): Does use assert on FD
2408         validity, since __assert_fail gets to here anyway.  Just fail.
2410 2004-09-06  Ulrich Drepper  <drepper@redhat.com>
2412         * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix problem with
2413         AF_UNSPEC lookup with AI_CANONNAME of name which has only IPv6
2414         addresses.
2416 2004-09-05  Richard Henderson  <rth@redhat.com>
2418         * sysdeps/alpha/fpu/fraiseexcpt.c: Remove file.
2419         * sysdeps/unix/sysv/linux/kernel-features.h
2420         (__ASSUME_IEEE_RAISE_EXCEPTION): New.
2421         * sysdeps/unix/sysv/linux/alpha/fraiseexcpt.c: New file.
2422         * sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h: New file.
2423         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use it.
2424         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
2426 2004-09-05  Richard Henderson  <rth@redhat.com>
2428         * sysdeps/alpha/div.S: Save and restore FPCR around fp operations.
2429         * sysdeps/alpha/divl.S, sysdeps/alpha/divq.S, sysdeps/alpha/divqu.S,
2430         sysdeps/alpha/ldiv.S, sysdeps/alpha/reml.S, sysdeps/alpha/remq.S,
2431         sysdeps/alpha/remqu.S: Likewise.
2432         * sysdeps/alpha/div_libc.h (FRAME): Increase to 64.
2434 2004-09-05  Ulrich Drepper  <drepper@redhat.com>
2436         * nscd/cache.c (cache_add): Correctly log GETHOSTBYADDR and
2437         GETHOSTBYADDRv6 requests.
2439 2004-09-04  Ulrich Drepper  <drepper@redhat.com>
2441         * nscd/pwdcache.c (cache_addpw): Use correct key length in
2442         cache_add calls.
2443         * nscd/grpcache.c (cache_addgr): Likewise.
2445 2004-09-03  Alfred M. Szmidt  <ams@kemisten.nu>
2447         * sysdeps/mach/hurd/i386/tls.h (THREAD_DTV): Changed type of _DTV
2448         to `dtv_t *'.
2450 2004-09-03  Ulrich Drepper  <drepper@redhat.com>
2452         * nscd/nscd.c (parse_opt): Use writev instead of two write for
2453         invalidate command.
2455 2004-09-02  Ulrich Drepper  <drepper@redhat.com>
2457         * nscd/connections.c (nscd_run): Check early for invalid request types.
2459 2004-09-02  Roland McGrath  <roland@frob.com>
2461         * sysdeps/mach/hurd/i386/tls.h (TLS_INIT_TP_EXPENSIVE): New macro.
2462         (INSTALL_NEW_DTV, THREAD_DTV): Rewritten to fetch the right word.
2463         (THREAD_SELF): New macro.
2465 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
2467         [BZ #357]
2468         * stdlib/tst-setcontext.c (test_stack): Added test for stack clobber.
2469         (main): Call test_stack.
2470         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
2471         (__getcontext): Push stack frame then save parms in local frame.
2472         Improve instruction scheduling.
2473         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
2474         (__swapcontext): Likewise.
2476 2004-09-01  Andreas Schwab  <schwab@suse.de>
2478         * sysdeps/unix/sysv/linux/ia64/sys/ucontext.h [g++ >= 3.5]: Use
2479         __builtin_offsetof.
2481 2004-09-01  Jakub Jelinek  <jakub@redhat.com>
2483         [BZ #361]
2484         * posix/fnmatch_loop.c (FCT): For backslash between brackets, branch
2485         to normal_bracket after fetching the next character.
2486         * posix/tst-fnmatch.input: Add 25 new tests.
2487         Reported by Markus Oberhumer <markus@oberhumer.com>.
2489 2004-09-01  Ulrich Drepper  <drepper@redhat.com>
2491         * elf/rtld.c (dl_main): First check existence of ld.so.preload
2492         with access.
2494 2004-09-01  Roland McGrath  <roland@redhat.com>
2496         * sysdeps/unix/sysv/linux/bits/waitflags.h
2497         (WSTOPPED, WEXITED, WCONTINUED, WNOWAIT): New macros.
2498         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_WAITID_SYSCALL):
2499         New macro.
2500         * sysdeps/unix/sysv/linux/waitid.c: New file.  Use new syscall when
2501         available, or fall back to the waitpid-based generic code.
2503 2004-08-14  Alfred M. Szmidt  <ams@kemisten.nu>
2505         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Let gcc
2506         clobber the `ebp' register.
2507         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Removed.
2508         Reverts change from 2004-05-07 by Jeroen Dekkers.
2510         * sysdeps/mach/hurd/i386/init-first.c (init): Changed the type of
2511         NEWSP from `void *' to `int *'.  Changed all casts accordingly.
2513 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
2515         * wcsmbs/wcsmbsload.c (__wcsmbs_getfct): Move attribute_hidden
2516         before return type.
2517         * locale/localename.c (__current_locale_name): Likewise.
2519 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
2521         * elf/ldconfig.c (parse_conf): Add prefix argument, prepend it
2522         before arguments to add_dir and pass to parse_conf_include.
2523         (parse_conf_include): Add prefix argument, pass it down to
2524         parse_conf.
2525         (main): Call arch_startup.  Adjust parse_conf caller.
2526         Call add_arch_dirs.
2527         * sysdeps/generic/dl-cache.h (arch_startup, add_arch_dirs): Define.
2528         * sysdeps/unix/sysv/linux/i386/dl-cache.h: New file.
2529         * sysdeps/unix/sysv/linux/ia64/dl-cache.h (EMUL_HACK, arch_startup,
2530         add_arch_dirs): Define.
2531         * sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: Prepend
2532         /emul/ia32-linux before the 32-bit ld.so pathname.
2533         * sysdeps/unix/sysv/linux/ia64/dl-procinfo.c: New file.
2534         * sysdeps/unix/sysv/linux/ia64/dl-procinfo.h: New file.
2536 2004-08-30  Roland McGrath  <roland@frob.com>
2538         * scripts/extract-abilist.awk: If `lastversion' variable defined, omit
2539         later sets from output.
2540         * Makerules (check-abi): Pass option to set that with value of
2541         LIB-abi-frozen variable if one is set.
2543         * abilist/libcidn.abilist: New file (empty).
2545 2004-08-30  Jakub Jelinek  <jakub@redhat.com>
2547         * posix/bits/posix1_lim.h (_POSIX_CHILD_MAX, _POSIX_OPEN_MAX): If
2548         not __USE_XOPEN2K, use the Unix98 mandated values.
2550 2004-08-27  Roland McGrath  <roland@redhat.com>
2552         * configure.in (usetls): Default to yes.
2553         * configure: Regenerated.
2555 2004-08-26  Roland McGrath  <roland@redhat.com>
2557         * configure.in (add_ons_automatic): New variable, set to yes or no
2558         indicating --enable-add-ons with no explicit list.
2559         (running add-on fragments): Allow a fragment to modify $libc_add_on
2560         and have that affect its place in the list of add-ons to use.
2561         * configure: Regenerated.
2563 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
2565         * nscd/cache.c: Major rewrite.  The data is now optionally kept in
2566         a mmaped memory region which is automatically mirrored on disk.
2567         This implements persistent data storage.  The Memory handled
2568         needed to be completely revamped, it now uses a garbage collection
2569         mechanism instead of malloc.
2570         * nscd/connections.c: Likewise.
2571         * nscd/nscd.c: Likewise.
2572         * nscd/nscd.h: Likewise.
2573         * nscd/nscd_conf.c: Likewise.
2574         * nscd/nscd_stat.c: Likewise.
2575         * nscd/grpcache.c: Likewise.
2576         * nscd/hstcache.c:: Likewise.
2577         * nscd/pwdcache.c:: Likewise.
2578         * nscd/Makefile: Add rules to build mem.c.
2579         * nscd/mem.c: New file.
2580         * nscd/nscd.conf: Describe new configuration options.
2582 2004-08-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2584         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
2585         NO_SGIDEFS_H isn't defined.
2586         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
2587         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
2589         * sysdeps/unix/sysv/linux/sh/pread.c: Define NO_SGIDEFS_H and
2590         _MIPS_SIM.
2591         * sysdeps/unix/sysv/linux/sh/pwrite.c: Likewise.
2592         * sysdeps/unix/sysv/linux/sh/pread64.c: Likewise.
2593         * sysdeps/unix/sysv/linux/sh/pwrite64.c: Likewise.
2595 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
2597         * nscd/connections.c (nscd_run): atomic_increment was not missing.
2599         * sysdeps/gnu/Makefile (libdl-sysdep_routines): Don't add eval.
2600         Patch by Greg Schafer.
2602 2004-08-25  Richard Henderson  <rth@redhat.com>
2604         * sysdeps/alpha/elf/start.S (_start): Use $15 as frame unwind
2605         instead of $31.  Zero $15.
2606         * sysdeps/unix/sysv/linux/alpha/clone.S (thread_start): Likewise.
2608 2004-08-25  Ulrich Drepper  <drepper@redhat.com>
2610         * sysdeps/powerpc/powerpc64/bits/atomic.h
2611         (__arch_compare_and_exchange_bool_32_acq): Fix case where oldval
2612         is negative.
2613         (__arch_compare_and_exchange_bool_32_rel): Likewise.
2615         * nscd/connections.c: Make socket nonblocking so that threads
2616         don't get stuck on accept.  Fix locking.
2618         * nscd/grpcache.c (cache_addgr): Use copy of original key in hash
2619         entry with alternative key.
2620         * nscd/pwdcache.c (cache_addpw): Likewise.
2622 2004-08-25  Richard Sandiford  <rsandifo@redhat.com>
2624         * sysdeps/mips/dl-machine.h (_dl_start_user): Don't set
2625         __libc_stack_end.
2627 2004-08-23  Ulrich Drepper  <drepper@redhat.com>
2629         * sysdeps/gnu/netinet/udp.h: Cosmetic changes.  Remove unnecessary
2630         __BEGIN_DECLS/__END_DECLS.
2632 2004-08-23  Andreas Jaeger  <aj@suse.de>
2634         [BZ #341]
2635         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_NOATIME): Define.
2636         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (O_NOATIME): Likewise.
2637         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (O_NOATIME): Likewise.
2638         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (O_NOATIME): Likewise.
2639         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (O_NOATIME): Likewise.
2640         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_NOATIME): Likewise.
2641         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (O_NOATIME): Likewise.
2642         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (O_NOATIME): Likewise.
2643         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_NOATIME): Likewise.
2644         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (O_NOATIME): Likewise.
2645         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (O_NOATIME): Likewise.
2646         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_NOATIME): Likewise.
2647         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (O_NOATIME): Likewise.
2649 2004-08-21  Ulrich Drepper  <drepper@redhat.com>
2651         * malloc/hooks.c (DEFAULT_CHECK_ACTION): Moved to malloc.c.
2652         (check_action): Likewise.
2653         When printing error messages, use malloc_printf_nc now instead of
2654         fiddling with the streams cancellation flag in every place.
2655         * malloc/malloc.c (DEFAULT_CHECK_ACTION): New definition.  Change
2656         default to 3.
2657         (check_action): New variable.
2658         (unlink): Print error message and eventually terminate in case list
2659         is corrupted.
2660         (malloc_printf_nc): New function.  Use it in _int_free.
2661         Change proposed by Arjan van de Ven.
2663         * dlfcn/Makefile: Don't build eval.c anymore.
2665 2004-08-20  Roland McGrath  <roland@frob.com>
2667         * csu/Makefile ($(objpfx)version-info.h): Use printf in place
2668         of echo -e for POSIX.2 portability.
2669         Reported by Paul Jarc <prj@po.cwru.edu>.
2671 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
2673         * sysdeps/posix/getaddrinfo.c (gaih_inet): Minor optimizations in
2674         list generation.
2676         * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't use
2677         getcanonname_r function if AI_CANONNAME flag is not set in
2678         request.
2680         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss):
2681         Initialize mysize with limits only if latter is >= 0.  Use mysize
2682         in malloc call.
2684 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
2686         * sysdeps/posix/getaddrinfo.c (gaih_inet): Cast canon to (char *)
2687         to avoid warning.
2689         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Initialize
2690         status to NSS_STATUS_UNAVAIL.
2692 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
2694         * sysdeps/powerpc/powerpc64/configure.in: New file.
2695         * sysdeps/powerpc/powerpc64/configure: Rebuilt.
2696         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
2697         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
2698         * configure: Rebuilt.
2699         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
2700         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
2701         BODY_PREFIX): Define.
2702         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
2703         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
2704         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
2705         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
2706         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
2708 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
2710         * sysdeps/posix/getaddrinfo.c (gaih_inet): Use h->h_name in the
2711         cannoname lookup since it has the FQDN even if the original NAME
2712         value has not.
2714 2004-08-18  Ulrich Drepper  <drepper@redhat.com>
2716         * sysdeps/posix/getaddrinfo.c (gaih_inet): Store NAME parameter
2717         pointer in new variable ORIG_NAME and use this pointer when
2718         determination of canonical name failed, not the possibly IDN
2719         translated value of NAME.
2721 2004-08-17  Ulrich Drepper  <drepper@redhat.com>
2723         * resolv/resolv.h (RES_DEFAULT): Add RES_NOIP6DOTINT.
2724         * resolv/res_init.c (res_setoptions): Recognize ip6-dotint option.
2725         Reset RES_NOIP6DOTINT flag in this case..
2727         * sysdeps/posix/getaddrinfo.c: Fix memory handling of
2728         ai_canonname.
2730 2004-08-16  Ulrich Drepper  <drepper@redhat.com>
2732         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Don't use
2733         CNAME records, we better follow the chain of CNAME records which
2734         can be accomplished with A/AAAA lookups.
2736 2004-08-15  Roland McGrath  <roland@redhat.com>
2738         * sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who):
2739         Remove __RUSAGE_BOTH constant and RUSAGE_BOTH macro.
2740         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2741         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
2742         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2744 2004-08-15  Roland McGrath  <roland@frob.com>
2746         * sysdeps/i386/i686/Makefile (elide-routines.os): Append hp-timing to
2747         this, not ...
2748         (static-only-routines): ... this.
2749         * sysdeps/ia64/Makefile: Likewise.
2750         * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
2751         * sysdeps/sparc/sparc64/Makefile: Likewise.
2752         * sysdeps/x86_64/Makefile: Likewise.
2753         * sysdeps/i386/i686/hp-timing.c: Revert copyright terms change.
2754         * sysdeps/ia64/hp-timing.c: Likewise.
2755         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
2756         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
2758         * csu/elf-init.c: Update copyright terms including special exception
2759         for these trivial files, which are statically linked into executables
2760         that use dynamic linking for the significant library code.
2761         * io/fstat.c: Likewise.
2762         * io/fstat64.c: Likewise.
2763         * io/lstat.c: Likewise.
2764         * io/lstat64.c: Likewise.
2765         * io/stat.c: Likewise.
2766         * io/stat64.c: Likewise.
2767         * stdlib/atexit.c: Likewise.
2768         * sysdeps/alpha/elf/initfini.c: Likewise.
2769         * sysdeps/alpha/elf/start.S: Likewise.
2770         * sysdeps/arm/elf/start.S: Likewise.
2771         * sysdeps/cris/elf/start.S: Likewise.
2772         * sysdeps/generic/initfini.c: Likewise.
2773         * sysdeps/generic/mknod.c: Likewise.
2774         * sysdeps/hppa/elf/initfini.c: Likewise.
2775         * sysdeps/hppa/elf/start.S: Likewise.
2776         * sysdeps/i386/elf/start.S: Likewise.
2777         * sysdeps/i386/i686/hp-timing.c: Likewise.
2778         * sysdeps/ia64/elf/initfini.c: Likewise.
2779         * sysdeps/ia64/elf/start.S: Likewise.
2780         * sysdeps/ia64/hp-timing.c: Likewise.
2781         * sysdeps/m68k/elf/start.S: Likewise.
2782         * sysdeps/mach/start.c: Likewise.
2783         * sysdeps/mips/elf/start.S: Likewise.
2784         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
2785         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
2786         * sysdeps/s390/s390-32/elf/start.S: Likewise.
2787         * sysdeps/s390/s390-32/initfini.c: Likewise.
2788         * sysdeps/s390/s390-64/elf/start.S: Likewise.
2789         * sysdeps/s390/s390-64/initfini.c: Likewise.
2790         * sysdeps/sh/elf/initfini.c: Likewise.
2791         * sysdeps/sh/elf/start.S: Likewise.
2792         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
2793         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
2794         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
2795         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
2796         * sysdeps/standalone/i386/start.S: Likewise.
2797         * sysdeps/standalone/i960/start.S: Likewise.
2798         * sysdeps/standalone/m68k/m68020/start.S: Likewise.
2799         * sysdeps/unix/arm/start.c: Likewise.
2800         * sysdeps/unix/bsd/osf/alpha/start.S: Likewise.
2801         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
2802         * sysdeps/unix/sparc/start.c: Likewise.
2803         * sysdeps/unix/start.c: Likewise.
2804         * sysdeps/unix/sysv/aix/start.s: Likewise.
2805         * sysdeps/unix/sysv/irix4/start.c: Likewise.
2806         * sysdeps/x86_64/elf/initfini.c: Likewise.
2807         * sysdeps/x86_64/elf/start.S: Likewise.
2809 2004-08-15  Roland McGrath  <roland@redhat.com>
2811         [BZ #227]
2812         * sysdeps/unix/sysv/linux/kernel-features.h
2813         (__ASSUME_BRK_PAGE_ROUNDED): New macro.
2814         * sysdeps/unix/sysv/linux/dl-sysdep.c (frob_brk)
2815         [! __ASSUME_BRK_PAGE_ROUNDED]: Adjust the break up if it falls within
2816         the partial page after the dynamic linker's own data segment.
2818 2004-08-15  Ulrich Drepper  <drepper@redhat.com>
2820         * sysdeps/posix/getaddrinfo.c (gaih_inet): Optimize generation of
2821         v4-mapped addresses a bit.
2822         (gethosts): Move alloca out of macro, so that it is done only once.
2824         * sysdeps/posix/getaddrinfo.c (gaih_addrtuple): Change type of
2825         addr to avoid casts.
2826         (gethosts): Removed.
2827         (gethosts2): Renamed to gethosts.  Make it usable for family !=
2828         AF_UNSPEC.  Fix AI_V4MAPPED.
2829         (gaih_inet): Remove use of old gethosts.  Always use what used to be
2830         gethosts2.  If entry is found, try to use the same NSS module's
2831         getcanonname_r function.  Use gethostbyaddr for AI_CANONNAME only
2832         if getcanonname_r was not available.  Fix filtering of AI_V4MAPPED
2833         addresses.  Numerous cleanups.
2834         * resolv/nss_dns/dns-canon.c: New file.
2835         * resolv/Makefile (libnss_dns-routines): Add dns-canon.
2836         * resolv/Versions (libnss_dns): Add _nss_dns_getcanonname_r.
2838         * elf/Makefile: Add rules to build and run tst-dlopenrpath.
2839         * elf/tst-dlopenrpath.c: New file.
2840         * elf/tst-dlopenrpathmod.c: New file.
2842         * intl/tst-gettext.sh: Adjust for change of de.po file to UTF-8.
2843         * intl/tst-gettext.c: Likewise.
2845         * nss/getent.c (ahosts_keys_int): Correctly print IPv6 addresses.
2847         * nss/getent.c: Allow queries for getaddrinfo with AF_INET and
2848         AF_INET6.
2850 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
2852         * po/de.po: Update from translation team.
2854 2004-08-14  Roland McGrath  <roland@frob.com>
2856         * sysdeps/mach/configure: Regenerated.
2857         * sysdeps/mach/hurd/configure: Regenerated.
2859 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
2861         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If RFC3484 sorting is
2862         performed, make sure it is still the first entry after sorting
2863         that has the ai_canonname information.
2865         * sysdeps/posix/getaddrinfo.c (gaih_inet): Really set ai_canonname
2866         only in one entry.
2868 2004-08-13  Daniel Jacobowitz  <dan@debian.org>
2870         * scripts/output-format.sed: Handle default case of three-argument
2871         OUTPUT_FORMAT.
2873         * sysdeps/arm/machine-gmon.h (mcount_internal): Mark as
2874         __attribute_used__.
2876 2004-08-13  Ulrich Drepper  <drepper@redhat.com>
2878         * nss/getent.c (ahosts_keys): ai_canonname is NULL for all but the
2879         first returned entry.  Print name only if not NULL.
2881         * nis/nss_nis/nis-netgrp.c: Remove locking by using data in struct
2882         __netgrent object passed in instead of global variables.
2883         Optimize.
2884         * nis/nss_nisplus/nisplus-netgrp.c: Remove locking by using data
2885         in struct __netgrent object passed in instead of global variables.
2886         * inet/netgroup.h (struct __netgrent): Add service_user field.
2887         Move cursor in anonymous union, add new field location to that
2888         union.
2889         * inet/getnetgrent_r.c: Extensive rewrite to really enable
2890         concurrent uset of set/get/endnetgrent and innetgr.
2891         Reported by Chuck Simmons.
2893         * inet/netgroup.h (struct name_list): Replace name pointer with
2894         zero-sized array.
2895         * inet/getnetgrent_r.c: Adjust code for change in name_list
2896         layout.  Numerous strdup and free calls removed.
2898         * elf/sprof.c (read_symbols): When comparing aliases, prefer
2899         non-hidden over hidden symbols and strong over weak symbols
2900         if both don't start with '_'.
2902         * malloc/malloc.c: Use strong_alias instead of weak_alias wherever
2903         possible.
2905 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2907         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
2908         RUSAGE_ enums as __RUSAGE_ and adjust macros accordingly.
2909         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2910         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2911         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
2912         Define non-standard RLIMIT_ enums as __RLIMIT_ and adjust macros
2913         accordingly.
2915 2004-08-11  Andreas Schwab  <schwab@suse.de>
2917         * resolv/res_libc.c: Move definition of __res_initstamp ...
2918         * resolv/res_init.c: ... here.
2920 2004-08-10  GOTO Masanori  <gotom@debian.or.jp>
2922         * locale/C-time.c: Change default ERA value from NULL to "".
2923         * locale/tst-C-locale.c: Add test case for ERA keywords.
2925 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
2927         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
2928         RLIMIT__ enums as __RLIMIT_ and adjust macros accordingly.
2929         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2930         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2932 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2934         * sysdeps/unix/sysv/linux/bits/resource.h (RLIMIT_SIGPENDING,
2935         RLIMIT_MSGQUEUE): Add.
2936         (RLIMIT_NLIMITS, RLIM_NLIMITS): Adjust.
2937         * sysdeps/unix/sysv/linux/alpha/bits/resource.h (RLIMIT_SIGPENDING,
2938         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2939         (RLIM_NLIMITS): Adjust.
2940         * sysdeps/unix/sysv/linux/sparc/bits/resource.h (RLIMIT_SIGPENDING,
2941         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2942         (RLIM_NLIMITS): Adjust.
2943         * sysdeps/unix/sysv/linux/mips/bits/resource.h (RLIMIT_SIGPENDING,
2944         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2945         (RLIM_NLIMITS): Adjust.
2947 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2949         * resolv/res_query.c (__libc_res_nsearch): Protect the debugging
2950         printf with #ifdef DEBUG and RES_DEBUG check.
2952         * sysdeps/unix/sysv/linux/bits/shm.h: Move __END_DECLS after
2953         __USE_MISC #endif.
2954         * sysdeps/generic/bits/shm.h: Add __BEGIN_DECLS for __getpagesize
2955         declaration.
2956         * sysdeps/gnu/bits/shm.h: Likewise.
2957         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
2958         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
2959         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
2960         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
2961         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
2963 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
2965         * po/ca.po: Update from translation team.
2967 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
2969         * sysdeps/unix/sysv/linux/bits/shm.h: Add __BEGIN_DECLS for
2970         __getpagesize declaration.
2972 2004-08-11  Roland McGrath  <roland@redhat.com>
2974         * configure.in (libc_cv_cpp_asm_debuginfo): Add missing braces around
2975         commands inside &&.
2976         Reported by Andreas Schwab <schwab@suse.de>.
2977         * configure: Regenerated.
2979         * posix/tst-waitid.c (do_test): Ignore SIGCHLD before cleanup SIGKILL.
2981 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
2983         * time/tzset.c (tzset_internal): Add new parameter which is
2984         nonzero if called through tzset.  Use TZDEFAULT name including
2985         name comparison if the new parameter is zero.  This means implicit
2986         tzset calls will not cause files to be opened and read by tzfile.c
2987         all the time.
2989 2004-08-11  Jakub Jelinek  <jakub@redhat.com>
2991         * rt/tst-timer2.c (do_test): If timer_create fails, just continue.
2992         * rt/tst-timer4.c (do_test): If one of the timer_create calls fails,
2993         return 1 immediately.
2995         * time/tzfile.c (__tzfile_read): Free transitions only if it will
2996         not be reused.
2998         * sysdeps/ieee754/dbl-64/mpa.c: Include <sys/param.h>.
2999         * sysdeps/ieee754/dbl-64/mpa.h (MAX, MIN): Macros removed.
3001         * stdio-common/tst-popen.c: Include <string.h>.
3003         * resolv/res_send.c (__libc_res_nsend): Only define TMPBUF #if DEBUG.
3005         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Remove noreturn
3006         attribute.  Return NULL instead of calling pthread_exit at the end.
3008 2004-08-11  Roland McGrath  <roland@redhat.com>
3010         * iconvdata/testdata/ISO-2022-JP-3: Regenerated.
3012 2004-07-23  Jakub Jelinek  <jakub@redhat.com>
3014         [BZ #284]
3015         * include/features.h (_POSIX_SOURCE, _POSIX_C_SOURCE): Define
3016         if _XOPEN_SOURCE >= 500 even if __STRICT_ANSI__ is defined.
3018 2004-08-10  Alfred M. Szmidt  <ams@kemisten.nu>
3020         * sysdeps/generic/bits/in.h (struct ip_mreq): Remove definition.
3022 2004-08-10  Jakub Jelinek  <jakub@redhat.com>
3024         * libio/bits/stdio.h (fread_unlocked): Cast 0 to (size_t).
3025         (fwrite_unlocked): When checking if size * n is <= 8, cast each
3026         argument to size_t individually.  Cast n to (void) instead of
3027         (size_t), surround with (), return (size_t) 0 if one of n or size
3028         is 0.  [BZ #316]
3029         * stdio-common/Makefile (tests): Add tst-unlockedio.
3030         * stdio-common/tst-unlockedio.c: New test.
3032 2004-08-09  Roland McGrath  <roland@frob.com>
3034         * manual/install.texi (Supported Configurations): Replace bug-glibc
3035         mention with web URL.
3036         * INSTALL: Regenerated.
3037         * locale/iso-3166.def: Likewise, in comment.
3038         * locale/iso-4217.def: Likewise.
3039         * locale/iso-639.def: Likewise.
3040         * posix/cpio.h: Remove bug reporting comment.
3042 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
3044         * libio/bits/stdio.h (fread_unlocked): Add a couple of (size_t)
3045         casts to handle funny calls with floating point argument values
3046         and signed values correctly and without warning.
3047         (fwrite_unlocked): Likewise.  [BZ #309]
3049         * malloc/memusage.c (me): Use creat64, not creat.
3050         * malloc/memusagestat.c: Fix handling of very large sizes.  [BZ #285]
3051         Patch by Guy Maor <guymaor@yahoo.com>.
3053         * elf/ldconfig.c (options): Mark parameter option names as
3054         translatable.  [BZ #253]  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
3056         * iconv/gconv_charset.h (strip): Also allow comma which is what is
3057         used to separate options.  [BZ #194]
3059 2004-08-09  Roland McGrath  <roland@redhat.com>
3061         * FAQ.in: Refer to web pages instead of bug-glibc.
3062         * FAQ: Regenerated.
3064         * time/strptime_l.c: #include <stdbool.h>, `bool' used in last change.
3066 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
3068         * time/tzset.c (tzset_internal): If TZ is not set do not compare
3069         old and new tz value since it might be /etc/localtime in both
3070         cases although the file changed.  [BZ #154]
3071         Patch by Christian Franke <franke@computer.org>.
3073         * time/tzfile.c (__tzfile_read): Determine dev/ino of file.
3074         Compare with values of previously opened file.  Don't do anything
3075         is they match.
3077 2004-08-08  Ulrich Drepper  <drepper@redhat.com>
3079         * elf/dl-load.c (_dl_map_object): If __RTLD_CALLMAP flag is set,
3080         reset loader before the actual loading.
3081         * elf/dl-open.c (dl_open_worker): If file name contains no path
3082         element determine map of caller.  Pass caller map in this case to
3083         _dl_map_object.  Set __RTLD_CALLMAP in mode.
3084         * include/dlfcn.h (__RTLD_CALLMAP): Define.  [BZ #116]
3085         Patch by Greg Wolodkin <greg@mathworks.com>.
3087         * misc/syslog.c (openlog_internal): Always try both UDP and TCP.
3088         [BZ #108]  Patch mainly by Bjorn Andersson <bjorn@iki.fi>.
3090         * configure.in: Also recognize i786. [BZ #106]
3091         Patch by <pluto@pld-linux.org>.
3093         * resolv/res_query.c (__libc_res_nsearch): Correctly test whether
3094         name contains any dots. [BZ #95]
3096         * resolv/res_send.c: Compiling with DEBUG defined works again.
3097         * resolv/gethnamaddr.c (dprintf): Renamed to Dprintf.  Adjust all
3098         callers.
3100         * resolv/tst-leaks.c (TIMEOUT): Define so that if no server is
3101         available the process is not killed. [BZ #41]
3103         * intl/tst-gettext.c (main): Improve some messages. [BZ #33]
3105         * time/strptime_l.c (__strptime_internal): Fix handling of %Ey.
3106         [BZ #28]
3108         * po/sv.po: Update from translation team.
3110 2004-08-07  Ulrich Drepper  <drepper@redhat.com>
3112         * inet/netinet/in.h: Add more const to the setipv4soucefilter,
3113         getsourcefilter, and setsourcefilter parameter list.
3114         * sysdeps/generic/setipv4sourcefilter.c: Likewise.
3115         * sysdeps/generic/getsourcefilter.c: Likewise.
3116         * sysdeps/generic/setsourcefilter.c: Likewise.
3117         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: Likewise.
3118         * sysdeps/unix/sysv/linux/getsourcefilter.c: Likewise.
3119         * sysdeps/unix/sysv/linux/setsourcefilter.c: Likewise.
3121         * po/tr.po: Update from translation team.
3123 2004-08-06  Ulrich Drepper  <drepper@redhat.com>
3125         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): Fix typo.
3126         Reported by Paolo Bonzini.
3128 2004-08-06  Jakub Jelinek  <jakub@redhat.com>
3130         * sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add
3131         always_inline.
3132         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_runtime_setup,
3133         elf_machine_fixup_plt, elf_machine_plt_conflict): Likewise.
3135         * sysdeps/unix/sysv/linux/netatalk/at.h: Include bits/sockaddr.h
3136         before including linux/atalk.h.
3138         * resolv/res_libc.c: Include atomic.h.
3140         * intl/finddomain.c (free_mem): Rename to...
3141         (_nl_finddomain_subfreeres): ... this.  Add
3142         __libc_freeres_fn_section.
3143         * intl/loadmsgcat.c (_nl_unload_domain): Add
3144         __libc_freeres_fn_section.
3145         * intl/gettextP.h (_nl_unload_domain): Move into #ifdef _LIBC.
3146         Add attribute_hidden.
3147         (_nl_findomain_subfreeres): New prototype.
3148         * iconv/gconv_db.c (free_mem): Call _nl_findomain_subfreeres.
3150 2004-07-30  Guido Guenther  <agx@sigxcpu.org>
3152         * nss/getent.c (passwd_keys): Use strtoul instead of isdigit to
3153         test if the key is numeric or not.
3154         (group_keys): Likewise.
3156 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
3158         * inet/netinet/in.h: Define struct ip_msfilter, IP_MSFILTER_SIZE,
3159         struct group_filter, and GROUP_FILTER_SIZE.
3160         * include/sys/socket.h: Declare __getsockopt.
3161         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: New file.
3162         * sysdeps/unix/sysv/linux/getipv4sourcefilter.c: New file.
3163         * sysdeps/unix/sysv/linux/setsourcefilter.c: New file.
3164         * sysdeps/unix/sysv/linux/getsourcefilter.c: New file. [BZ #211]
3166         * po/ko.po: Update from translation team.
3168 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
3170         * hesiod/hesiod.c (__hesiod_res_get): Use calloc instead of malloc +
3171         memset.
3172         (__hesiod_res_set): Free nsaddrs.
3174         * include/resolv.h (__res_maybe_init): Add prototype.
3175         * resolv/resolv.h (struct __res_state): Add _u._ext.initstamp field.
3176         * resolv/Versions (libc): Add __res_maybe_init@@GLIBC_PRIVATE.
3177         * resolv/res_libc.c (__res_initstamp, lock): New variables.
3178         (res_init): Increase __res_initstamp.
3179         (__res_maybe_init): New function.
3180         * resolv/res_init.c (__res_vinit): Initialize _u._ext.initstamp.
3181         * hesiod/hesiod.c (__hesiod_res_get): Use __res_maybe_init instead
3182         of RES_INIT check and {res_ninit,__res_ninit,res_init} call.
3183         * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise.
3184         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
3185         _nss_dns_gethostbyaddr_r): Likewise.
3186         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
3187         _nss_dns_getnetbyaddr_r): Likewise.
3188         * resolv/gethnamaddr.c (gethostbyname, gethostbyname2,
3189         gethostbyaddr): Likewise.
3190         * resolv/res_data.c (fp_nquery, res_mkquery, res_mkupdate,
3191         res_isourserver, res_sendsigned, res_update, res_search,
3192         res_querydomain): Likewise.
3193         * nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)): Likewise.
3194         * nss/digits_dots.c (__nss_hostname_digits_dots): Likewise.
3195         * nss/getnssent_r.c (__nss_setent, __nss_endent, __nss_getent_r):
3196         Likewise.
3198 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
3200         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set ai_family for
3201         V4-mapped IPv6 addresses and req->ai_family==AF_INET.
3202         Reported by A. Guru <a.guru@sympatico.ca>.
3204         * po/sv.po: Update from translation team.
3205         * po/sk.po: Likewise.
3206         * po/pl.po: Likewise.
3208 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
3209             Ulrich Drepper  <drepper@redhat.com>
3211         * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Don't read more input
3212         characters than necessary.
3214 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
3216         * wcsmbs/Makefile (tests): Add tst-mbsrtowcs.
3217         * wcsmbs/tst-mbsrtowcs.c: New file.
3219         * po/fr.po: Update from translation team.
3221 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
3223         * resolv/inet_pton.c (inet_pton4): Disallow octal numbers.  Reported
3224         by A. Guru <a.guru@sympatico.ca>.  [BZ #295]
3226 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
3228         * po/nl.po: Update from translation team.
3230         * sysdeps/posix/getaddrinfo.c (gaih_inet): Recognize all the IPv4
3231         numeric address formats inet_addr knows.
3232         (getaddrinfo): Allow AI_NUMERICSERV flag.
3233         If neither IPv4 nor IPv6 interface is present we cannot make any
3234         decision for AI_ADDRCONFIG.  Fail if AI_NUMERICSERV is set and the
3235         string is not just a number.  Remove useless freeaddrinfo call.
3236         * resolv/netdb.h (AI_NUMERICSERV): Define.
3237         Based on a patch by a.guru@sympatico.ca.
3239 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
3241         * stdlib/strfmon_l.c (__vstrfmon_l): Memset whole info structure
3242         instead of trying to initialize some, but not all, fields one by
3243         one.
3244         * stdio-common/printf_size.c (printf_size): Initialize fb_info
3245         structure with *info instead of trying to initialize some, but not
3246         all, fields from it.
3248         * nscd/connections.c (handle_request): Check if req->type is in
3249         LASTDBREQ .. LASTREQ range instead of req.
3251         * locale/programs/linereader.c (lr_create): Initialize
3252         lr->return_widestr to 0.
3254         * elf/dl-close.c (free_slotinfo): Add __libc_freeres_fn_section.
3255         (free_mem): Call free_slotinfo just once.
3257         * stdio-common/tst-fmemopen.c (main): Check for MAP_FAILED instead
3258         of NULL.
3260         * locale/localeinfo.h (_nl_locale_subfreeres): New prototype.
3261         * locale/setlocale.c (free_category): Add __libc_freeres_fn_section.
3262         (free_mem): Rename to _nl_locale_subfreeres.
3263         * iconv/gconv_db.c: Include locale/localeinfo.h.
3264         (free_derivation, free_modules_db): Add __libc_freeres_fn_section.
3265         (free_mem): Call _nl_locale_subfreeres.
3266         * iconv/gconv_dl.c (do_release_all): Add __libc_freeres_fn_section.
3268 2004-08-04  Roland McGrath  <roland@frob.com>
3270         * Makeconfig ($(common-objpfx)config.status):
3271         Fix typo: $(add_ons) -> $(add-ons).
3272         (Makeconfig-add-on): New variable.  When doing $(sysdep-makeconfigs)
3273         include, use black magic to get it set to an add-on's name during the
3274         include of the add-on's Makeconfig.
3276         * configure.in: Use variable name `libc_add_on' when sourcing add-on
3277         configure fragments, so they can refer to this.
3278         * configure: Regenerated.
3280 2004-08-04  Roland McGrath  <roland@redhat.com>
3282         * posix/tst-waitid.c (test_child): Sleep a second before stopping.
3283         (do_test): Bump sleep to three seconds.
3284         (sigchld, check_sigchld): New functions.
3285         (do_test): Handle SIGCHLD and check for getting the right details.
3287         * posix/tst-waitid.c (do_test): Kill the child process when bailing
3288         out early on some failure.
3289         [WCONTINUED]: Test WCONTINUED functionality.
3291 2004-08-03  Ulrich Drepper  <drepper@redhat.com>
3293         * nscd/connections.c (handle_request): Print more descriptive
3294         message for invalid request types.
3296 2004-08-02  Jakub Jelinek  <jakub@redhat.com>
3298         * iconvdata/ibm932.c (BODY): Avoid binary search for ch >= 0xffff.
3299         Always treat high as highest number in range + 1.
3300         * iconvdata/ibm943.c (BODY): Likewise.
3302 2004-07-31  Bruno Haible  <bruno@clisp.org>
3304         * iconvdata/JISX0213.TXT: Updated to JISX0213 plane 1 version 2004.
3305         * iconvdata/jisx0213.c (__jisx0213_to_ucs_main,
3306         __jisx0213_to_ucs_pagestart, __jisx0213_from_ucs_level1,
3307         __jisx0213_from_ucs_level2): Regenerated.
3308         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): New function.
3309         * iconvdata/iso-2022-jp-3.c (JISX0213_1_2000_set): Renamed from
3310         JISX0213_1_set.
3311         (JISX0213_1_2004_set): New enum value.
3312         (BODY for FROM_LOOP): Treat ESC $ ( Q like ESC $ ( O.
3313         (BODY for TO_LOOP): For JISX 0213 plane 1 characters, emit ESC $ ( O
3314         when possible, ESC $ ( Q when needed.
3315         * iconvdata/testdata/EUC-JISX0213: Add the 10 new characters.
3316         * iconvdata/testdata/EUC-JISX0213..UTF8: Update.
3317         * iconvdata/testdata/SHIFT_JISX0213: Add the 10 new characters.
3318         * iconvdata/testdata/SHIFT_JISX0213..UTF8: Update.
3319         * iconvdata/testdata/ISO-2022-JP-3: Add the 10 new JISX0213 characters.
3320         * iconvdata/testdata/ISO-2022-JP-3..UTF8: Update.
3322 2004-07-22  Bruno Haible  <bruno@clisp.org>
3324         * iconvdata/gconv-modules (ISO-8859-7): Add alias ISO_8859-7:2003.
3326 2004-07-29  David S. Miller  <davem@redhat.com>
3328         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy): Optimize
3329         better for smaller than 256 byte copies.  Also, use only one
3330         unrolled loop instead of two for the large copy case.
3332 2004-07-30  Richard Henderson  <rth@redhat.com>
3334         * sysdeps/alpha/divq.S: Save t3 before it gets clobbered.
3335         * sysdeps/alpha/remq.S: Likewise.
3336         * sysdeps/alpha/div.S, sysdeps/alpha/ldiv.S: Rewrite with the
3337         new division algorithms in divl.S and divq.S respectively.
3339 2004-07-28  GOTO Masanori  <gotom@debian.or.jp>
3341         * timezone/asia: Update from tzdata2004b.
3342         * timezone/backward: Likewise.
3343         * timezone/europe: Likewise.
3344         * timezone/iso3166.tab: Likewise.
3345         * timezone/leapseconds: Likewise.
3346         * timezone/northamerica: Likewise.
3347         * timezone/southamerica: Likewise.
3348         * timezone/zone.tab: Likewise.
3350         * timezone/private.h: Update from tzcode2004b.
3351         * timezone/zic.c: Likewise.
3353 2004-07-27  Ulrich Drepper  <drepper@redhat.com>
3355         * nscd/grpcache.c (cache_addgr): If necessary, add entry also
3356         under the name the user provided.
3357         * nscd/pwdcache.c (cache_addpw): Likewise.
3359 2004-07-26  Roland McGrath  <roland@redhat.com>
3361         * sysdeps/posix/waitid.c [WEXITED]: Clear WEXITED bit in OPTIONS for
3362         call to __waitpid.
3364 2004-07-26  Ulrich Drepper  <drepper@redhat.com>
3366         * nscd/hstcache.c (cache_addhst): Fix two scenarios which lead to
3367         memory leaks.
3369         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Assign pointer for
3370         new buffer at the right time.
3371         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
3373 2004-07-25  Ulrich Drepper  <drepper@redhat.com>
3375         * inet/Versions [libc, GLIBC_2.3.4]: Add getipv4sourcefilter,
3376         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
3377         * inet/Makefile (routines): Likewise.
3378         * inet/netinet/in.h: Add prototypes for getipv4sourcefilter,
3379         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
3380         * sysdeps/generic/getipv4sourcefilter.c: New file.
3381         * sysdeps/generic/setipv4sourcefilter.c: New file.
3382         * sysdeps/generic/getsourcefilter.c: New file.
3383         * sysdeps/generic/setsourcefilter.c: New file.
3385 2004-07-17  Steven Munroe  <sjmunroe@us.ibm.com>
3387         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
3388         for POWER4 machines.
3390 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
3392         [BZ #274]
3393         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): Fix used >=
3394         BITS_PER_MP_LIMB shifting up.
3395         * stdlib/tst-strtod.c (main): Add new tests.
3397 2004-07-23  Jakub Jelinek  <jakub@redhat.com>
3399         [BZ #282]
3400         * libio/iopopen.c (_IO_new_popen): Use _IO_init instead of
3401         _IO_no_init.  Remove wd from struct locked_FILE.
3402         (_IO_wproc_jumps): Remove.
3403         Reported by Andrew Josey <a.josey@opengroup.org>.
3404         * stdio-common/Makefile (tests): Add tst-popen.
3405         * stdio-common/tst-popen.c: New test.
3407 2004-07-23  Ulrich Drepper  <drepper@redhat.com>
3409         * posix/bits/posix1_lim.h: Fix values for _POSIX_CHILD_MAX and
3410         _POSIX_OPEN_MAX.  Add _POSIX_HOST_NAME_MAX, _POSIX_SYMLINK_MAX,
3411         _POSIX_SYMLOOP_MAX, and _POSIX_RE_DUP_MAX.
3412         Reported by Andrew Josey.
3414         * include/features.h: Document _POSIX_C_SOURCE == 200112L.
3416         * grp/grp.h: Define gid_t if __USE_XOPEN2K is defined.
3417         * pwd/pwd.h: Define uid_t and gid_t if __USE_XOPEN2K is defined.
3418         * io/sys/stat.h: Define dev_t, gid_t, ino_t, mode_t, nlink_t,
3419         off_t, time_t, and uid_t if __USE_XOPEN2K is defined.
3420         * signal/signal.h: Define pid_t if __USE_XOPEN2K is defined.
3421         * posix/unistd.h: Define gid_t, off_t, pid_t, uid_t, and
3422         useconds_t if __USE_XOPEN2K is defined.
3423         * io/utime.h: Define time_t if __USE_XOPEN2K is defined.
3424         * libio/stdio.h: Declare fseeko and ftello if __USE_XOPEN2K is defined.
3426 2004-07-19  Thorsten Kukuk  <kukuk@suse.de>
3428         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
3429         allocate memory for large temporary variables with alloca.
3431 2004-07-22  Ulrich Drepper  <drepper@redhat.com>
3433         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Compatibility
3434         code must have version GLIBC_2.0.  Patch by Dwayne McConnell.
3436         * nscd/nscd_getgr_r.c (nscd_getgr_r): Avoid read call with NULL
3437         pointer and zero length.
3439 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
3441         * nscd/cache.c (prune_cache): Print correct list when debugging.
3443 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
3445         * resolv/res_libc.c (res_init): If RES_INIT is set and
3446         _res.nscount > 0, call __res_nclose and free nsaddrs.
3447         * resolv/Makefile: Add rules to build and run tst-leaks2.
3448         * resolv/tst-leaks2.c: New test.
3450 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
3452         * intl/libintl.h: Don't define macros for C++.
3453         Patch by Goto Masanori.
3455 2004-07-22  GOTO Masanori  <gotom@debian.or.jp>
3457         [BZ #276]
3458         * include/arpa/inet.h: Change inet_aton type from in_addr_t to int.
3459         * inet/arpa/inet.h: Likewise.
3460         * resolv/inet_addr.c: Likewise.
3462 2004-07-21  Alexandre Oliva  <aoliva@redhat.com>
3464         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: Add semtimedop.
3466 2004-07-20  Roland McGrath  <roland@redhat.com>
3468         * configure.in (add_ons): Substitute this.  Move $add_ons handling
3469         after AC_CANONICAL_HOST and default setting of $machine et al.
3470         Don't set $subdirs from $add_ons.
3471         Instead, source add-on/configure fragments early on.
3472         (base_machine): If it's already set, don't set it based on $machine.
3473         (libc_config_ok): New variable, set to no.  If an add-on fragment sets
3474         it to yes, skip the  tuple sanity check as if --enable-hacker-mode.
3475         (sysnames): Try appending add-on names after machine as well.
3476         * config.make.in (add-ons): Set from @add_ons@ instead of @subdirs@.
3477         * Makeconfig ($(common-objpfx)config.status): Also depend on configure
3478         files in $(add_ons) dirs.
3480         * sysdeps/unix/sysv/linux/bits/in.h (struct ip_mreq): Remove
3481         definition, now in netinet/in.h proper.
3483 2004-07-20  Alexandre Oliva  <aoliva@redhat.com>
3485         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
3486         Sort by syscalls.  Make sure we get headers such as sgidefs.h from
3487         the build tree before just-installed ones.
3489         * sysdeps/mips/atomicity.h: Use standard names for ABI macros,
3490         include sgidefs.h where appropriate.
3491         * sysdeps/mips/dl-machine.h: Likewise.
3492         * sysdeps/mips/machine-gmon.h: Likewise.
3493         * sysdeps/mips/bits/setjmp.h: Likewise.
3494         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
3495         * sysdeps/mips/mips64/__longjmp.c: Likewise.
3496         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
3497         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
3498         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
3499         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
3500         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
3501         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
3502         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
3503         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
3504         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
3505         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
3506         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
3507         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
3508         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
3509         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
3510         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
3511         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
3512         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
3513         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
3514         Likewise.
3515         * sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h):
3516         Likewise.
3518         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Update to use
3519         _dl_lookup_symbol_x.
3520         (elf_machine_runtime_link_map): Don't INTUSE _dl_signal_error.
3522 2004-07-20  Ulrich Drepper  <drepper@redhat.com>
3524         * inet/netinet/in.h: Define struct ip_mreq and struct
3525         ip_mreq_source.
3526         Define struct group_req and struct group_source_req.
3527         * sysdeps/unix/sysv/linux/bits/in.h: Define IP_UNBLOCK_SOURCE,
3528         IP_BLOCK_SOURCE, IP_ADD_SOURCE_MEMBERSHIP,
3529         IP_DROP_SOURCE_MEMBERSHIP, IP_MSFILTER, MCAST_JOIN_GROUP,
3530         MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, MCAST_LEAVE_GROUP,
3531         MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP, and
3532         MCAST_MSFILTER.
3533         Define MCAST_INCLUDE and MCAST_EXCLUDE.
3535         * iconvdata/gconv-modules: Add alias for IBM874 [BZ #244].
3537 2004-07-19  Jakub Jelinek  <jakub@redhat.com>
3539         [BZ #258]
3540         * math/libm-test.inc (max_value, min_value): New variables.
3541         (initialize): Initialize them.
3542         (pow_test): Add a couple of new tests.
3543         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Don't generate invalid
3544         exception if |y| >= 1U<<31.
3545         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Don't generate invalid
3546         exception if |y| >= 1L<<63.
3547         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
3548         If y*log2(x) overflows to +-inf, return still +inf/+0 instead of NaN.
3549         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
3551 2004-07-18  Ulrich Drepper  <drepper@redhat.com>
3553         * nscd/pwdcache.c (cache_addpw): Optimize case of unsuccessful
3554         lookup a bit.
3555         * nscd/grpcache.c (cache_addgr): Likewise.
3556         * nscd/hstcache.c (cache_addhst): Likewise.
3558 2004-07-10  GOTO Masanori  <gotom@debian.or.jp>
3560         * sysdeps/s390/s390-32/elf/start.S: Remove symbol _fp_hw.
3561         * sysdeps/s390/s390-64/elf/start.S: Likewise.
3563 2004-04-16  Andreas Schwab  <schwab@suse.de>
3565         * sysdeps/ia64/bits/atomic.h: Cast first argument of
3566         __sync_bool_compare_and_swap_si correct to void*.
3568 2004-07-17  Ulrich Drepper  <drepper@redhat.com>
3570         * iconv/iconv_prog.c (print_known_names): Make machine-readable
3571         output even less cluttered.
3573 2004-07-16  Steven Munroe  <sjmunroe@us.ibm.com>
3575         [BZ #269]
3576         * setjmp/Makefile (tests): Add bug269-setjmp.
3577         * setjmp/bug269-setjmp.c: New file.
3578         * sysdeps/powerpc/powerpc64/__longjmp-common.S [SHARED && !IS_IN_rtld]:
3579         Store R2 from jmpbuf in callers TOC save area.
3580         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [SHARED && !IS_IN_rtld]:
3581         Store R2 in TOC save area.
3582         * sysdeps/powerpc/powerpc64/setjmp-common.S [SHARED && !IS_IN_rtld]:
3583         Copy TOC save area from previous frame as R2 (TOC) in jmpbuf.
3585 2004-07-16  Jakub Jelinek  <jakub@redhat.com>
3587         * locale/newlocale.c: Include bits/libc-lock.h.
3588         (__libc_setlocale_lock): Extern decl.
3589         (__newlocale): Use it.
3590         Reported by Ulrich Weigand <Ulrich.Weigand@de.ibm.com>.
3592 2004-07-15  Jakub Jelinek  <jakub@redhat.com>
3594         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Remove
3595         static inline __attribute ((always_inline)).  Don't define if
3596         NO_CANCELLATION.
3597         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
3598         __fcntl_nocancel.
3599         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c (__fcntl_nocancel):
3600         Remove static inline __attribute ((always_inline)).  Don't define
3601         if NO_CANCELLATION.
3602         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
3603         __fcntl_nocancel.
3604         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Define to
3605         __libc_fcntl if NO_CANCELLATION and __ASSUME_FCNTL64 == 0.
3606         Don't define at all if NO_CANCELLATION and __ASSUME_FCNTL64 > 0.
3607         (__libc_fcntl): Don't define if __fcntl_nocancel is a macro.
3609         [BZ #262]
3610         * sysdeps/i386/elf/start.S (_start): Use @GOT instead of @GOTOFF
3611         for main.
3612         * elf/Makefile: Add rules to build and run tst-pie1.
3613         * elf/tst-pie1.c: New test.
3614         * elf/tst-piemod1.c: New file.
3616 2004-07-14  Jakub Jelinek  <jakub@redhat.com>
3618         [BZ #266]
3619         * manual/string.texi (l64a): Note that the static buffer is 7 bytes
3620         long.  Rewrite example code so that it takes into account l64a output
3621         shorter than 6 characters.
3622         Reported by Julian Graham <julian.graham@aya.yale.edu>.
3624 2004-07-14  Kaz  Kojima  <kkojima@rr.iij4u.or.jp>
3626         * sysdeps/sh/dl-machine.h: Don't reset _dl_starting_up here.
3627         (elf_machine_rela_relative): Remove unused valiable.
3629 2004-07-12  Paul Eggert  <eggert@cs.ucla.edu>
3631         [BZ #263]
3632         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Don't store
3633         outside the buffer if the read returns 0.  __strtod_l can't set
3634         endp to NULL, so remove a test for that case.
3636 2004-07-12  Roland McGrath  <roland@redhat.com>
3638         * manual/signal.texi (Interrupted Primitives): Make clear that
3639         TEMP_FAILURE_RETRY evaluates its expression as long int and compares
3640         it to -1 to define "failure".
3642 2004-07-10  Ulrich Drepper  <drepper@redhat.com>
3644         * elf/ldconfig.c: Define PROCINFO_CLASS as static before including
3645         ldsodefs.h.
3646         * sysdeps/generic/ldsodefs.h: Only define PROCINFO_CLASS if it is not
3647         already defined.
3648         * sysdeps/i386/dl-procinfo.c: Define PROCINFO_CALLS only if not
3649         already defined.
3651         * elf/rtld.c (print_statistics): Mark with noinline attribute.
3652         * sysdeps/i386/dl-machine.h (elf_machine_rel): Mark with always_inline
3653         attribute.
3654         (elf_machine_rel_relative): Likewise.
3656         * include/string.h: Add libc_hidden_proto for __strtok_r and
3657         __strsep_g.
3658         * sysdeps/generic/strsep.c: Add libc_hidden_def.
3659         * sysdeps/generic/strtok_r.c: Likewise.
3660         * sysdeps/i386/strtok_r.S: Add alias for internal symbol.
3661         * sysdeps/i386/i686/strtok_r.S: Likewise.
3662         * sysdeps/x86_64/strtok_r.S: Likewise.
3664 2004-07-09  Alexandre Oliva  <aoliva@redhat.com>
3666         * inet/getnetgrent_r.c (internal_setnetgrent): Make it hidden
3667         instead of internal-linkage, such that we can alias to it.
3668         (internal_endnetgrent, internal_getnetgrent_r): Likewise.
3670 2004-07-09  Ulrich Drepper  <drepper@redhat.com>
3672         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Move attribute
3673         to the front for gcc 3.5+.
3674         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
3675         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
3676         * include/fcntl.h: Don't declare __fcntl_nocancel here if
3677         NO_CANCELLATION is defined.
3679 2004-07-07  Jakub Jelinek  <jakub@redhat.com>
3681         * elf/dl-fini.c (_dl_fini): Add nloaded variable, load
3682         GL(dl_nloaded) into it while still in critical section.
3684 2004-07-06  Thorsten Kukuk  <kukuk@suse.de>
3686         * nss/getent.c (print_group, print_passwd): Use %lu format for
3687         `unsigned long int' values.
3689         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Fix syntax
3690         error typos in goto statements.
3692 2004-07-07  Roland McGrath  <roland@frob.com>
3694         * Makefile (dist-separate): New variable.
3695         (glibc-%.tar rule): Make separate tar files for add-ons listed there.
3696         Depend on their configure files.
3697         (dist-do-separate-dirs): New canned sequence to do that.
3698         (dist-separate-libidn, dist-separate-linuxthreads): New variables.
3699         (dist): Depend on add-on tar files based on $(dist-separate).
3700         (dist-version): New variable, default to $(version).
3701         (tag-for-dist, dist): Use that in place of $(version) in deps.
3703 2004-07-07  Ulrich Drepper  <drepper@redhat.com>
3705         * elf/dl-fini.c (_dl_fini): Move the unlock of the ld.so lock
3706         before the loop running the destructors.
3708 2004-05-18  Andreas Schwab  <schwab@suse.de>
3710         * elf/dl-load.c (_dl_map_object_from_fd): Use the end address of
3711         the first segment for mprotect, not l_text_end.
3713 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
3715         * elf/dl-profile.c (_dl_start_profile): Compact error handling.
3716         Remove hashfraction variable.  Make kcount and kcountsize local
3717         variables.
3719         * elf/dl-init.c: Don't define and use _dl_starting_up if
3720         HAVE_INLINED_SYSCALLS is defined and the variable is not used.
3721         * elf/dl-support.c: Likewise.
3722         * elf/rtld.c: Likewise.
3723         * elf/dl-misc.c (_dl_debug_vdprintf): Use writev syscall directly
3724         if HAVE_INLINED_SYSCALLS is defined.
3725         * sysdeps/powerpc/powerpc64/dl-machine.h: Don't reset _dl_starting_up
3726         here.
3727         * sysdeps/powerpc/powerpc32/dl-start.S: Likewise.
3728         * sysdeps/unix/sysv/linux/configure.in: Define HAVE_INLINED_SYSCALLS.
3729         * config.h.in: Add entry for HAVE_INLINED_SYSCALLS.
3731         * sysdeps/posix/profil.c: If compiled for ld.so, omit code which
3732         is needed to stop profiling.
3733         * elf/dl-open.c (dl_open_worker): If a newly opened object is to be
3734         profile make sure it cannot be unloaded.
3736         * sysdeps/unix/sysv/linux/dl-origin.c: Inline readlink syscall.
3738         * sysdeps/unix/sysv/linux/fcntl.c: If compiled without cancellation
3739         support, make sure the helper function is inlined.
3740         * sysdeps/unix/sysv/linux/pread.c: Likewise.
3741         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
3742         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
3743         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
3745 2004-07-05  Jakub Jelinek  <jakub@redhat.com>
3747         * include/string.h (ffs): Add libc_hidden_builtin_proto.
3748         * sysdeps/rs6000/ffs.c (ffs): Add libc_hidden_builtin_def.
3749         * sysdeps/alpha/alphaev67/ffs.S (ffs): Likewise.
3750         * sysdeps/alpha/ffs.S (ffs): Likewise.
3751         * sysdeps/s390/ffs.c (ffs): Likewise.
3752         * sysdeps/powerpc/ffs.c (ffs): Likewise.
3753         * sysdeps/i386/ffs.c (ffs): Likewise.
3754         * sysdeps/i386/i686/ffs.c (ffs): Likewise.
3755         * sysdeps/m68k/ffs.c (ffs): Likewise.
3756         * sysdeps/generic/ffs.c (ffs): Likewise.
3757         * sysdeps/m88k/ffs.c (ffs): Likewise.
3758         * sysdeps/am29k/ffs.c (ffs): Likewise.
3759         * sysdeps/i960/ffs.c (ffs): Likewise.
3760         * sysdeps/x86_64/ffs.c (ffs): Likewise.
3762         * Makerules (check-abi): Use diff -p -U 0 instead of diff -pu0.
3764         * sysdeps/powerpc/novmx-longjmp.c (__libc_longjmp,
3765         __libc_siglongjmp): Remove symbol_version.
3766         * sysdeps/powerpc/longjmp.c (__libc_longjmp, __libc_siglongjmp):
3767         Export @@GLIBC_PRIVATE, not @@GLIBC_2.3.4.
3768         * sysdeps/powerpc/sigjmp.c (__sigjmp_save): Use strong_alias
3769         unconditionally.
3770         * sysdeps/powerpc/novmx-sigjmp.c (__sigjmp_save): Remove.
3771         * sysdeps/powerpc/powerpc32/__longjmp.S (__longjmp): Use
3772         strong_alias instead of default_symbol_version, remove
3773         symbol_version.
3774         * sysdeps/powerpc/powerpc64/__longjmp.S (__longjmp): Likewise.
3775         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__novmx__setjmp): Change
3776         into strong_alias to __novmxsetjmp.
3777         (__vmx__setjmp): Similarly with __vmxsetjmp.
3778         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
3779         default_symbol_version and symbol_version.
3780         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__novmx__setjmp): Change
3781         into strong_alias to __novmxsetjmp.
3782         (__vmx__setjmp): Similarly with __vmxsetjmp.
3783         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
3784         default_symbol_version and symbol_version.
3786         * nscd/nscd_getgr_r.c: Include stdio-common/_itoa.h.
3788 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
3790         * elf/rtld.c (dl_main): Mark dyn_temp with attribute_relro.
3792 2004-07-04  Matthew Reppert  <arashi@kai.vm.bytemark.co.uk>
3794         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Use libc_hidden_ver
3795         instead of libc_hidden_def.
3797 2004-07-01  Roland McGrath  <roland@redhat.com>
3799         * aclocal.m4: Add provide for AC_CONFIG_AUX_DIR_DEFAULT.
3801         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Move top-level
3802         $(..)shlib-versions file to last in deps list.  This lets add-ons give
3803         more-specific matches that override defaults in the top-level file.
3805         * sysdeps/unix/sysv/linux/configure.in: If arch_minimum_kernel was
3806         already set, don't set it or libc_cv_gcc_unwind_find_fde.
3807         * sysdeps/unix/sysv/linux/configure: Regenerated.
3809 2004-07-01  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3811         * sysdeps/s390/fpu/bits/mathinline.h [__LIBC_INTERNAL_MATH_INLINES]
3812         (__ieee754_sqrt): Define as __MATH_INLINE using sqdbr instruction.
3813         (__ieee754_sqrtf): Define as __MATH_INLINE using sqebr instruction.
3814         * sysdeps/s390/fpu/e_sqrt.c: New file.
3815         * sysdeps/s390/fpu/e_sqrtf.c: New file.
3816         * sysdeps/s390/Implies: New file.
3817         * sysdeps/s390/s390-32/Implies: Remove ieee754, move
3818         ieee754/dbl-64 and ieee754/flt-32 to s390/Implies.
3819         * sysdeps/s390/s390-64/Implies: Likewise.
3821 2004-06-30  Jakub Jelinek  <jakub@redhat.com>
3823         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Include tls.h.
3824         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
3826         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (thread_start):
3827         DO_CALL (exit, 1) instead of branching to _exit.
3828         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (thread_start):
3829         Likewise.
3831         * sysdeps/s390/fpu/bits/mathinline.h: New file.
3833         * include/glob.h (glob64): Add libc_hidden_proto.
3834         * sysdeps/generic/glob64.c (glob64): Add libc_hidden_def.
3835         * sysdeps/gnu/glob64.c (glob64): Likewise.
3836         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Likewise.
3838 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
3840         * sysdeps/i386/fpu/libm-test-ulps: Update for GCC 3.4.
3841         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
3843 2004-06-11  Dwayne Grant McConnell  <dgm69@us.ibm.com>
3845         * sysdeps/powerpc/fpu/s_lround.c: Removed.
3846         * sysdeps/powerpc/fpu/s_lroundf.c: Removed.
3847         * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: New file.
3848         * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: New file.
3849         * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: New file.
3850         * sysdeps/powerpc/powerpc32/fpu/s_floor.S: New file.
3851         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: Removed.
3852         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: New file.
3853         * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: New file.
3854         * sysdeps/powerpc/powerpc32/fpu/s_lround.S: New file.
3855         * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: New file.
3856         * sysdeps/powerpc/powerpc32/fpu/s_rint.S: New file.
3857         * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: New file.
3858         * sysdeps/powerpc/powerpc32/fpu/s_round.S: New file.
3859         * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: New file.
3860         * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: New file.
3862 2004-06-30  Ulrich Drepper  <drepper@redhat.com>
3864         * include/net/if.h: Handle if_nameindex and if_freenameindex with
3865         libc_proto_hidden.
3866         * sysdeps/unix/sysv/linux/netlinkaccess.h: New file.
3867         * sysdeps/unix/sysv/linux/ifaddrs.c: Export netlink handling functions.
3868         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Implement using
3869         netlink if possible.  Fall back on ioctl method if necessary.
3870         * sysdeps/unix/sysv/linux/Dist: Add netlinkaccess.h.
3872         * include/unistd.h: Declare __truncate.
3873         * sysdeps/generic/truncate.c: Also define __truncate.
3874         * sysdeps/mach/hurd/truncate.c: Likewise.
3875         * sysdeps/unix/common/syscalls.list: Likewise.
3876         * sysdeps/unix/sysv/linux/truncate64.c: Use __truncate, not truncate.
3878 2004-06-29  Ulrich Drepper  <drepper@redhat.com>
3880         * stdio-common/printf-parsemb.c (__parse_one_specmb): Initialize
3881         info.extra.  Patch by Marcus Meissner.
3883 2004-06-29  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3885         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
3886         Fix branch offset for a PLT entry.
3888 2004-06-20  Jim Meyering  <jim@meyering.net>
3890         * malloc/obstack.h (obstack_base): Cast to `void *', to align with
3891         documentation.
3893 2004-06-28  Ulrich Drepper  <drepper@redhat.com>
3895         * inet/bug-if1.c (do_test): Simply use 0 as invalid index.
3896         Workaround for [BZ #232].
3898         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Use extend_alloca.
3900 2004-06-28  GOTO Masanori  <gotom@debian.or.jp>
3902         * iconv/gconv_simple.c: Use get16/put16 for user given buffer
3903         in ucs2/ucs2reverse when unaligned memory access is attempted.
3904         * iconv/tst-iconv5.c: New file.
3905         * iconv/Makefile (tests): Add tst-iconv5.
3907 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
3909         * inet/bug-if1.c: Include <string.h>.
3911 2004-06-19  Roland McGrath  <roland@redhat.com>
3913         * sysdeps/posix/waitid.c (do_waitid) [DO_WAITID]: Define function
3914         under this macro name instead.
3915         [NO_DO_WAITID]: Don't define it at all.
3916         (do_waitid) [WNOWAIT, WEXITED]: If these POSIX.1 waitid flag bits are
3917         defined, then return ENOTSUP for combinations of selection bits other
3918         than WEXITED and WEXITED|WSTOPPED, which this version cannot support.
3920         * posix/tst-waitid.c: New file.
3921         * posix/Makefile (tests): Add it.
3923 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
3925         * sysdeps/unix/alpha/sysdep.h (inline_syscall6): Fix a typo.
3927         [BZ #231]
3928         * sysdeps/unix/alpha/sysdep.S (__syscall_error): Avoid !samegp
3929         relocation in librt.so.
3931         [BZ #230]
3932         * sysdeps/alpha/dl-machine.h (_dl_start_user): Use ldah/ldl to load
3933         _dl_skip_args.  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
3935 2004-06-27  Ulrich Drepper  <drepper@redhat.com>
3937         * elf/ldconfig.c (add_dir): Take chroot into account.
3938         Based on changes by HJ Lu and Hideki Iwamoto.
3940         * nscd/connections.c (invalidate_cache): If the host cache has to
3941         be invalidated, re-read resolv.conf.
3943         * resolv/resolv.h (RES_NOIP6DOTINT): Define.
3944         * resolv/res_init.c (res_setoptions): Handle no-ip6-dotint option.
3945         * resolv/gethnamaddr.c (gethostbyaddr): Don't lookup with .ip6.int
3946         if RES_NOIP6DOTINT flag is set.
3947         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
3949 2004-06-25  Jakub Jelinek  <jakub@redhat.com>
3951         * sysdeps/unix/sysv/linux/powerpc/fcntl.c: Move to...
3952         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fcntl.c: ... here.
3953         * sysdeps/unix/sysv/linux/powerpc/lockf64.c: Move to...
3954         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lockf64.c: ... here.
3955         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: New file.
3957         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_GETLK, F_SETLK,
3958         F_SETLKW): Fix values for -m32 -D_FILE_OFFSET_BITS=64.
3960 2004-06-21  Jakub Jelinek  <jakub@redhat.com>
3962         [BZ #231]
3963         * sysdeps/unix/alpha/Makefile: New file.
3964         * sysdeps/unix/alpha/rt-sysdep.S: New file.
3965         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
3967 2004-06-18  Ulrich Drepper  <drepper@redhat.com>
3969         * sysdeps/posix/getaddrinfo.c (gaih_inet): For AI_CANONNAME,
3970         determine the canonical name only for the first returned entry.
3972         * inet/bug-if1.c: New file.
3973         * inet/Makefile (tests): Add bug-if1.
3975 2004-06-18  Roland McGrath  <roland@frob.com>
3977         * Makerules (compile-mkdep-flags): Add -MT $@.
3979         * Makefile (dist, tag-for-dist): New targets.
3980         (files-for-dist, tag-of-stem): New variables.
3981         (glibc-%.tar glibc-linuxthreads-%.tar): New pattern rule.
3982         Make tar files using cvs export.
3983         (%.bz2, %.gz, tag-%): New pattern rules.
3984         (distribute): Variable removed.
3985         (+subdir_targets): Remove distinfo targets.
3986         (echo_subdirs, echo-distinfo, parent_echo-distinfo): Targets removed.
3987         (rpm/%): Pattern rule removed.
3988         * rpm/Makefile, rpm/rpmrc, rpm/template: Ancient cruft files removed.
3989         * Rules (subdir_echo-headers, subdir_echo-distinfo, subdir_dist):
3990         Targets removed.
3991         * Makerules (dist, subdir_distinfo): Targets removed.
3992         ($(objpfx)distinfo): Depend on $(distribute).
3993         * Make-dist: File removed.
3995         * NEWS: Fix a typo.  Update bug-reporting instructions.
3997 2004-06-17  Thorsten Kukuk  <kukuk@suse.de>
3999         * sysdeps/unix/sysv/linux/sched_setaffinity.c
4000         (__sched_setaffinity_new): Set errno to EINVAL and return -1 if
4001         cpuset is wrongly set.
4003 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
4005         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
4006         for POWER4 machines.
4008 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
4010         [BZ #218]
4011         * sunrpc/pmap_prot2.c (xdr_pmaplist): When freeing, remember pml_next
4012         in a local variable, point rp to that local variable afterwards.
4014 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
4016         * sysdeps/ieee754/dbl-64/e_sqrt.c (__ieee754_sqrt): Handle special
4017         cases properly.
4019 2004-06-17  Ulrich Drepper  <drepper@redhat.com>
4021         * sysdeps/unix/sysv/linux/if_index.c (if_indextoname): Correct
4022         error value for unknown interface. [BZ #198]
4024 2004-06-13  Jakub Jelinek  <jakub@redhat.com>
4026         * sysdeps/i386/bits/string.h (memcpy): Add () around arguments.
4027         (memchr, __memrchr, strlen, strcmp, strncmp, __strchr_g, __strchr_c,
4028         __strchrnul_g, __strchrnul_c, strspn, strcspn, strpbrk): Add memory
4029         the asm uses as its input, either of size __n where __n is known or
4030         0xfffffff.
4031         (strstr): Add "memory" clobber.
4033 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
4035         [BZ #219]
4036         * nss/nsswitch.c (free_mem): Don't try to close a library handle
4037         if the handle is invalid.  Patch by David Kimdon <kimdon@esrf.fr>.
4039 2004-06-11  Dmitry V. Levin  <ldv@altlinux.org>
4041         [BZ #217]
4042         * debug/xtrace.sh: Fix typo in error diagnostics.
4044 2004-06-14  Andreas Schwab  <schwab@suse.de>
4046         * stdio-common/psignal.c (psignal): Don't use BUF when asprintf
4047         failed.
4049 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
4051         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Fix pasto
4052         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
4053         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Fix pasto
4054         that clobbers r19.
4055         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Fix pasto
4056         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
4057         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S:
4058         Fix setting of sigcontext.v_regs.  Fix pasto that clobbers r19.
4059         Fix pasto that overflowed sigcontext.v_reserve.
4060         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S:
4061         Fix pasto that clobbers r19.
4062         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Fix setting
4063         of sigcontext.v_regs.  Fix pasto that clobbers r19.  Fix pasto that
4064         overflowed sigcontext.v_reserve.
4066 2004-05-04  H.J. Lu  <hongjiu.lu@intel.com>
4068         [BZ #150]
4069         * sysdeps/generic/strtol_l.c (DEF): Use ".gnu.linkonce.r."
4070         instead of ".gnu.linkonce.ro." as the prefix for linkonce
4071         read-only section name.
4073 2004-06-14  Richard Henderson  <rth@redhat.com>
4075         * sysdeps/alpha/div_libc.h (_ITOFS): Use "sp" not "$sp".
4076         (_ITOFT, _FTOIT, _ITOFT2): Likewise.
4078 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
4080         * sysdeps/s390/s390-32/backtrace.c (init): Guard with #ifdef SHARED.
4081         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
4082         (__backtrace): Don't call init #ifndef SHARED.
4083         * sysdeps/s390/s390-64/backtrace.c (init): Guard with #ifdef SHARED.
4084         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
4085         (__backtrace): Don't call init #ifndef SHARED.
4086         * sysdeps/ia64/backtrace.c (init): Guard with #ifdef SHARED.
4087         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
4088         (__backtrace): Don't call init #ifndef SHARED.
4090 2004-06-11  Roland McGrath  <roland@redhat.com>
4092         * sysdeps/arm/strlen.S [__ARMEB__]: Compute correctly for big-endian.
4093         From Krzysztof Halasa <khc@pm.waw.pl>.
4095 2004-06-10  Jakub Jelinek  <jakub@redhat.com>
4097         * elf/tls-macros.h [__s390x__] (TLS_LD, TLS_GD): Clobber also r14.
4099 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
4101         [BZ #199]
4102         * crypt/md5-crypt.c (__md5_crypt): Only update buflen if realloc
4103         succeeds.  Reported by Miles Ohlrich <miles@cray.com>.
4105         * elf/chroot_canon.c (chroot_canon): Avoid segfault if first malloc
4106         fails.  Avoid memory leak if realloc fails.
4108 2004-06-09  Jakub Jelinek  <jakub@redhat.com>
4110         * sysdeps/generic/setenv.c (setenv): Return -1/EINVAL if name is
4111         NULL, "" or contains '=' character in it.  Reported by
4112         Michael T Kerrisk <mtk-lists@gmx.net>.
4113         * stdlib/tst-environ.c: Include errno.h.
4114         (main): Add tests for these arguments to setenv/unsetenv.
4116 2004-06-07  Roland McGrath  <roland@frob.com>
4118         * NEWS: Update bug reporting instructions.  Fix some typos.
4120 2004-06-05  Ulrich Drepper  <drepper@redhat.com>
4122         * stdio-common/_itoa.h: Don't expand _itoa inline for libc.
4123         * stdio-common/_itoa.c: Add _itoa implementation.
4125         * nscd/nscd_gethst_r.c (__nscd_open_socket): Change implementation
4126         to also send request.  Add parameter to allow this.
4127         Change callers.
4128         * nscd/nscd_getgr_r.c: Change __nscd_open_socket caller.
4129         * nscd/nscd_getpw_r.c: Likewise.
4130         * nscd/nscd-client.h: Change __nscd_open_socket prototype.
4132 2004-06-05  Andreas Jaeger  <aj@suse.de>
4134         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
4135         Handle more than 6 args correctly.  Based on a patch by Masahide
4136         Washizawa <washi@jp.ibm.com>.
4138 2004-06-04  Ulrich Drepper  <drepper@redhat.com>
4140         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use __nss_not_use_nscd_hosts
4141         in all places, not __nss_not_use_nscd_group.
4142         Reported by Philippe Gregoire.
4144 2004-06-03  Ulrich Drepper  <drepper@redhat.com>
4146         * sysdeps/i386/i486/bits/atomic.h: Optimize a bit.
4148 2004-05-07  Dmitry V. Levin  <ldv@altlinux.org>
4150         * argp/argp-help.c (__argp_error, __argp_failure): Check result
4151         of __asprintf call and don't use string if it failed.
4152         * stdio-common/psignal.c (psignal): Likewise.
4153         * locale/programs/localedef.c (more_help): Likewise.
4154         * resolv/res_hconf.c (arg_service_list, arg_trimdomain_list,
4155         arg_bool, parse_line): Check result of __asprintf calls and
4156         don't use string if they failed.
4157         * sunrpc/svc_simple.c (registerrpc, universal): Likewise.
4158         * elf/ldconfig.c (parse_conf_include): Check result of __asprintf
4159         call and exit if it failed.
4161 2004-05-10  Jakub Jelinek  <jakub@redhat.com>
4163         * sysdeps/posix/sysconf.c (__sysconf) <cases _SC_REALTIME_SIGNALS,
4164         _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
4165         _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES,
4166         _SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION,
4167         _SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS,
4168         _SC_THREADS, _SC_THREAD_SAFE_FUNCTIONS, _SC_THREAD_ATTR_STACKADDR,
4169         _SC_THREAD_ATTR_STACKSIZE, _SC_THREAD_PRIORITY_SCHEDULING,
4170         _SC_THREAD_PRIO_INHERIT, _SC_THREAD_PRIO_PROTECT,
4171         _SC_THREAD_PROCESS_SHARED>: Return _POSIX_* value instead of 1.
4172         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf)
4173         <case _SC_MONOTONIC_CLOCK>: Return _POSIX_VERSION instead of 1.
4175 2004-05-07  Jeroen Dekkers  <jeroen@dekkers.cx>
4177         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Add
4178         -momit-leaf-frame-pointer.
4180         * inet/test-ifaddrs.c (addr_string): Surround AF_PACKET case with
4181         #ifdef AF_PACKET.
4183         * sysdeps/mach/hurd/getcwd.c
4184         (_hurd_canonicalize_directory_name_intern): Only realloc when
4185         size is <= 0.
4187         * sysdeps/mach/hurd/mmap.c (__mmap): Fail when addr or offset
4188         isn't page aligned.
4190         * sysdeps/mach/hurd/spawni.c (EXPAND_DTABLE): Set dtablesize to
4191         new size.
4193         * sysdeps/mach/hurd/Versions (GLIBC_PRIVATE): Add __libc_read,
4194         __libc_write and __libc_lseek64.
4196 2004-05-29  Roland McGrath  <roland@redhat.com>
4198         * elf/Makefile (shared-only-routines): Add dl-caller.
4200 2004-05-28  Ulrich Drepper  <drepper@redhat.com>
4202         * sysdeps/powerpc/configure.in: New file.
4204 2004-05-28  Steven Munroe  <sjmunroe@us.ibm.com>
4206         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Add .machine
4207         "altivec" to enable VMX instructions.
4208         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
4209         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
4210         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
4211         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
4212         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
4213         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
4214         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
4215         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
4216         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
4218 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
4220         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Define using
4221         __builtin_expm1l for GCC 3.5+.
4222         (__expl): Define using __builtin_expl for GCC 3.4+.
4223         (exp, expf, expl): Don't define for GCC 3.4+.
4224         (tan, tanf, tanl): Don't define for GCC 3.5+.
4225         (__atan2l): Define using __builtin_atan2l for GCC 3.4+.
4226         (atan2, atan2f, atan2l): Don't define for GCC 3.4+ or !__FAST_MATH__.
4227         (fmod, fmodf, fmodl): Don't define for GCC 3.5+ or !__FAST_MATH__.
4228         (fabsf, fabsl): Only provide if __USE_MISC or __USE_ISOC99.
4229         (sin, sinf, sinl, cos, cosf, cosl, log, logf, logl): Don't define
4230         for GCC 3.4+.
4231         (log10, log10f, log10l, asin, asinf, asinl, acos, acosf, acosl):
4232         Don't define for GCC 3.5+.
4233         (atan, atanf, atanl): Don't define for GCC 3.4+ or !__FAST_MATH__.
4234         (log1p, log1pf, log1pl, logb, logbf, logbl, log2, log2f, log2l): Don't
4235         define for GCC 3.5+.
4236         (drem, dremf, dreml): Don't define for GCC 3.5+ or !__FAST_MATH__.
4237         * sysdeps/sparc/fpu/bits/mathinline.h (sqrt, sqrtf, sqrtl): Don't
4238         define for GCC 3.2+.
4240 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
4242         * string/bits/string2.h (__bzero): Define even for GCC 3.0+.
4243         * sysdeps/alpha/stpcpy.S (stpcpy): Add libc_hidden_builtin_def.
4244         * sysdeps/alpha/alphaev67/stpcpy.S (stpcpy): Likewise.
4245         * sysdeps/powerpc/powerpc32/stpcpy.S (stpcpy): Likewise.
4246         * sysdeps/powerpc/powerpc64/stpcpy.S (stpcpy): Likewise.
4247         * sysdeps/sparc/sparc32/stpcpy.S (stpcpy): Likewise.
4248         * sysdeps/sparc/sparc64/stpcpy.S (stpcpy): Likewise.
4249         * sysdeps/i386/stpcpy.S (stpcpy): Likewise.
4250         * sysdeps/i386/i586/stpcpy.S (stpcpy): Likewise.
4251         * sysdeps/generic/stpcpy.c (stpcpy): Likewise.
4252         * sysdeps/x86_64/stpcpy.S (stpcpy): Likewise.
4253         * sysdeps/i386/i586/memcpy.S (memcpy): Remove
4254         libc_hidden_builtin_def if MEMPCPY_P.
4255         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
4256         * sysdeps/i386/i686/mempcpy.S (mempcpy): Add libc_hidden_builtin_def.
4257         * sysdeps/i386/i586/mempcpy.S (mempcpy): Likewise.
4258         * sysdeps/generic/mempcpy.c (mempcpy): Likewise.
4259         * sysdeps/x86_64/mempcpy.S (mempcpy): Likewise.
4261 2004-05-26  Roland McGrath  <roland@frob.com>
4263         * sysdeps/generic/bits/in.h
4264         (IMPLINK_IP, IMPLINK_LOWEXPER, IMPLINK_HIGHEXPER): Macros removed.
4265         These are long obsolete in BSD systems where they originated.
4266         * conform/data/netinet/in.h-data: Remove `allow IMPLINK_*'
4268 2004-05-26  Jakub Jelinek  <jakub@redhat.com>
4270         * include/string.h (mempcpy, stpcpy): Add libc_hidden_builtin_proto.
4271         * string/bits/string2.h (memset): Disable macro for GCC 3.0+.
4272         (__mempcpy): Use __builtin_mempcpy for GCC 3.4+.
4273         (strchr): For GCC 3.2+, only use __rawmemchr if second argument is
4274         constant '\0' and first argument is not constant.
4275         (__stpcpy): Use __builtin_stpcpy for GCC 3.4+.
4276         (strncpy): Remove #ifdef _USE_STRING_ARCH_mempcpy variant.
4277         For GCC 3.2+ use __builtin_strncpy.
4278         (strncat): For GCC 3.2+ use __builtin_strncat.
4279         (strcmp): For GCC 3.2+ use __builtin_strcmp if both arguments are
4280         constant.
4281         (strcspn, strspn, strpbrk): For GCC 3.2+, use builtin function
4282         if both arguments are constant.
4284 2004-05-26  Ulrich Drepper  <drepper@redhat.com>
4286         * nss/nss_files/files-hosts.c: Fix condition for looking up IPv4
4287         mapped addresses in gethostbyaddr.
4289 2004-05-25  Ulrich Drepper  <drepper@redhat.com>
4291         * nss/digits_dots.c (__nss_hostname_digits_dots): Remove typep and
4292         flags parameter, convert afp to simple int parameter.  Adjust code.
4293         typep was never != NULL and flags therefore also unused.  *afp is
4294         never modified.
4295         * nss/nsswitch.h: Adjust __nss_hostname_digits_dots prototype.
4296         * nss/getXXbyYY.c: Remove HAVE_TYPE handling.  Adjust af parameter
4297         handling for __nss_hostname_digits_dots calls.
4298         * nss/getXXbyYY_r.c: Likewise.
4300         * elf/dl-load.c (_dl_map_object_from_fd): Map DSOs with MAP_DENYWRITE.
4302 2004-05-25  Steven Munroe  <sjmunroe@us.ibm.com>
4304         * sysdeps/powerpc/fpu/Makefile: Make ld.so a dependency of libm.so.
4305         * sysdeps/powerpc/fpu/bits/mathinline.h [__LIBC_INERNAL_MATH_INLINES]
4306         (__ieee754_sqrt): Define as __MATH_INLINE using fsqrt instruction.
4307         (__ieee754_sqrtf): Define as __MATH_INLINE using fsqrts instruction.
4308         * sysdeps/powerpc/fpu/e_sqrt.c (__slow_ieee754_sqrt): Moved
4309         implementation from w_sqrt.c.
4310         * sysdeps/powerpc/fpu/e_sqrtf.c (__slow_ieee754_sqrtf): Moved
4311         implementation from w_sqrtf.c.
4312         * sysdeps/powerpc/fpu/w_sqrt.c (__sqrt): Wrapper implementation
4313         using inline __ieee754_sqrt().
4314         * sysdeps/powerpc/fpu/w_sqrtf.c (__sqrtf): Wrapper implementation
4315         using inline __ieee754_sqrtf().
4316         * sysdeps/powerpc/powerpc32/sysdep.h [__ASSEMBLER__]: Include
4317         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
4318         * sysdeps/powerpc/sysdep.h [__ASSEMBLER__] (PPC_FEATURE_*): Define
4319         PPC_FEATURE_*  independent of __ASSEMBLER__.
4321 2004-05-25  Jakub Jelinek  <jakub@redhat.com>
4323         * sysdeps/pthread/aio_notify.c: Use <> instead of "" for aio_misc.h
4324         include.
4325         (aio_start_notify_thread): Define if not defined.
4326         (notify_func_wrapper): Use it.
4327         * sysdeps/pthread/aio_misc.c: Use <> instead of "" for aio_misc.h
4328         include.
4329         (aio_create_helper_thread): Define if not defined.
4330         (__aio_create_helper_thread): New function.
4331         (__aio_enqueue_request): Use aio_create_helper_thread.
4333         * nis/ypclnt.c (ypall_data, ypall_foreach): Remove.
4334         (struct ypresp_all_data): New type.
4335         (__xdr_ypresp_all): Change second argument to
4336         struct ypresp_all_data *.  Replace ypall_foreach and
4337         ypall_data with objp->foreach and objp->data.
4338         (yp_all): Remove status variable, add data.  Replace
4339         all uses of status with data.status.  Initialize data.foreach
4340         and data.data instead of ypall_foreach and ypall_data.
4342 2004-05-24  Jakub Jelinek  <jakub@redhat.com>
4344         * elf/dl-lookup.c (add_dependency): Set DF_1_NODELETE bit
4345         in l_flags_1, not in l_flags.
4347 2004-04-10  Robert Millan  <robertmh@gnu.org>
4349         * sysdeps/unix/sysv/linux/bits/in.h: Cosmetic fixes to get in sync
4350         with sysdeps/generic/bits/in.h.
4352 2004-05-25  Roland McGrath  <roland@frob.com>
4354         * sysdeps/generic/unwind-dw2-fde-glibc.c: Change copyright terms from
4355         GCC GPL to standard glibc LGPL.
4357 2004-05-24  Ulrich Drepper  <drepper@redhat.com>
4359         * manual/string.texi (Copying and Concatenation): Fixed second
4360         concat example.
4361         Reported by Fabian Pietsch <fabian@zzznowman.dyndns.org>.
4363 2004-05-23  Ulrich Drepper  <drepper@redhat.com>
4365         * malloc/obstack.c: Don't allow linking with _obstack.
4367 2004-05-23  Andreas Schwab  <schwab@suse.de>
4369         * sysdeps/m68k/m68020/bits/atomic.h: Use "+m" constraint instead
4370         of separate "m" constraints.
4372 2004-05-15  Chris Demetriou  <cgd@broadcom.com>
4374         * sysdeps/mips/dl-machine.h (ELF_DL_FRAME_SIZE)
4375         (ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS): For the N32
4376         and 64 ABIs, save and restore regs $10 and $11 (a6 and a7).
4378 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
4380         * malloc/obstack.c (_obstack) [!defined _LIBC]: Remove; not used.
4381         Add comment explaining why libc still defines it.
4383 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
4385         * malloc/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
4386         obstack_alignment_mask, obstack_alloc, obstack_base,
4387         obstack_blank, obstack_blank_fast, obstack_chunk_size,
4388         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
4389         obstack_grow0, obstack_init, obstack_int_grow,
4390         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
4391         obstack_next_free, obstack_object_size, obstack_ptr_grow,
4392         obstack_ptr_grow_fast, obstack_room): Remove declarations of
4393         nonexistent functions.
4395 2004-05-18  Steven Munroe  <sjmunroe@us.ibm.com>
4397         * sysdeps/powerpc/powerpc64/sysdep.h [__ASSEMBLER__]: Include
4398         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
4399         [PIC]: Redundent for powerpc64, removed.
4400         (ENTRY): Generate size and alignment for opd entry.
4401         (EALIGN): Generate size and alignment for opd entry.
4402         (END): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
4403         (END_GEN_TB): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
4405 2004-05-19  Ulrich Drepper  <drepper@redhat.com>
4407         * misc/regexp.h: Say the functions have been withdrawn.
4409         * wcsmbs/tst-wcpncpy.c: Add more tests.
4411 2004-05-18  Roland McGrath  <roland@frob.com>
4413         * sysdeps/generic/unwind.h: Change copyright terms from GCC GPL to
4414         standard glibc LGPL.
4415         * sysdeps/generic/unwind-dw2.c: Likewise.
4416         * sysdeps/generic/unwind-dw2-fde.c: Likewise.
4417         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
4418         * sysdeps/generic/unwind-pe.h: Likewise.
4420 2004-05-15  Petter Reinholdtsen  <pere@hungry.com>
4422         * locale/iso-3166.def: Remove YUGOSLAVIA and insert "SERBIA AND
4423         MONTENEGRO" which have taken over the code 819.  Patch from
4424         Danilo Segan. [BZ #40]
4426 2004-05-15  Jakub Jelinek  <jakub@redhat.com>
4428         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
4429         (SYSCALL_ERROR_HANDLER): Rename __sparc.get_pic.l7 to
4430         __sparc_get_pic_l7.
4432 2004-05-15  Joseph S. Myers  <jsm@polyomino.org.uk>
4434         * catgets/gencat.c: Update bug reporting instructions.
4435         * csu/version.c: Likewise.
4436         * debug/catchsegv.sh: Likewise.
4437         * debug/pcprofiledump.c: Likewise.
4438         * debug/xtrace.sh: Likewise.
4439         * elf/ldd.bash.in: Likewise.
4440         * iconv/iconv_prog.c: Likewise.
4441         * iconv/iconvconfig.c: Likewise.
4442         * locale/programs/locale.c: Likewise.
4443         * locale/programs/localedef.c: Likewise.
4444         * login/programs/pt_chown.c: Likewise.
4445         * malloc/memusage.sh: Likewise.
4446         * malloc/memusagestat.c: Likewise.
4447         * malloc/mtrace.pl: Likewise.
4448         * manual/crypt.texi: Likewise.
4449         * manual/install.texi: Likewise.
4450         * nss/makedb.c: Likewise.
4452 2004-05-14  Jakub Jelinek  <jakub@redhat.com>
4454         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Only
4455         CHECK_STATIC_TLS if sym != NULL.
4456         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
4457         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
4459 2004-05-12  Andreas Schwab  <schwab@suse.de>
4461         * posix/regex_internal.c (build_wcs_buffer): Also set pstr->mbs
4462         when translating.
4464 2004-05-13  H.J. Lu  <hongjiu.lu@intel.com>
4466         * Rules (xtests): Depend on tests.
4468 2004-05-13  Jakub Jelinek  <jakub@redhat.com>
4470         * libio/genops.c (_IO_default_xsputn): Avoid one overflow per char if
4471         count is negative, yet write_ptr < write_end.
4472         (_IO_default_xsgetn): Avoid one underflow per char if count is
4473         negative, yet read_ptr < read_end.
4475 2004-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
4477         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h (XTABS): Define XTABS
4478         equal to TAB3.
4480 2004-05-12  Ulrich Drepper  <drepper@redhat.com>
4482         * elf/dl-lookup.c (_dl_lookup_symbol_x): Correct _dl_signal_cerror
4483         call.
4485 2004-05-10  Roland McGrath  <roland@frob.com>
4487         * hurd/hurdlookup.c (__hurd_file_name_split): Return ENOENT for "".
4488         (__hurd_directory_name_split): Likewise.
4490 2004-05-10  Ulrich Drepper  <drepper@redhat.com>
4492         * po/fr.po: Update from translation team.
4494 2004-05-10  Andreas Jaeger  <aj@suse.de>
4496         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
4497         Correctly compute alignment.
4498         Patch by Michael Matz <matz@suse.de>.
4500 2004-05-09  Ulrich Drepper  <drepper@redhat.com>
4502         * sysdeps/generic/sigpause.c: Prevent sigpause prototype.
4503         * sysdeps/posix/sigpause.c: Likewise.
4504         * signal/signal.h: Don't define sigpause macro unless needed.
4506 2004-05-08  Jakub Jelinek  <jakub@redhat.com>
4508         * configure.in (libc_cv_libgcc_s_suffix): New check.
4509         (libc_cv_as_needed): Use -lgcc_s$libc_cv_libgcc_s_suffix.
4510         * config.make.in (libgcc_s_suffix): Set.
4511         * Makeconfig (libgcc_eh): Use -lgcc_s$(libgcc_s_suffix).
4513 2004-05-08  Ulrich Drepper  <drepper@redhat.com>
4515         * signal/signal.h: Use BSD sigpause only if BSD behavior is preferred.
4517 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
4519         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_1,
4520         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
4521         Load argument values into temporary variables.
4522         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_1,
4523         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
4524         Likewise.
4526 2004-05-07  Ulrich Drepper  <drepper@redhat.com>
4528         * sysdeps/unix/sysv/linux/Makefile: mq_send.c and mq_receive.c
4529         need to be compiled with exceptions.
4531 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
4533         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Fix memory handling.
4534         * sysdeps/generic/ifreq.c (__ifreq): Fix memory handling.
4536         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Make clear that
4537         realloc cannot fail.
4539         * nss/nss_files/files-netgrp.c (EXPAND): Free buffer which cannot
4540         be expanded.
4542         * nis/nis_table.c: Clean up memory handling.
4543         * nis/nis_subr.c (nis_getnames): Clean up memory handling.
4544         * nis/nis_removemember.c (nis_removemember): Add comment
4545         explaining use of realloc.
4547         * math/tgmath.h (fabs): Use __TGMATH_UNARY_REAL_IMAG_RET_REAL.
4548         (carg): Likewise.
4549         Patch by Lev S Bishop <lev.bishop@yale.edu>.
4551         * math/bug-tgmath1.c (main): Test fabs and carg as well.
4553 2004-05-06  Richard Henderson  <rth@redhat.com>
4555         * elf/elf.h (AT_L1I_CACHESHAPE, AT_L1D_CACHESHAPE,
4556         AT_L2_CACHESHAPE, AT_L3_CACHESHAPE): New.
4557         * sysdeps/unix/sysv/linux/alpha/Versions: Export
4558         __libc_alpha_cache_shape as a private symbol.
4559         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c: New file.
4560         * sysdeps/unix/sysv/linux/alpha/sysconf.c: New file.
4562 2004-05-06  Richard Henderson  <rth@redhat.com>
4564         * sysdeps/alpha/div_libc.h (_ITOFS, _ITOFT, _FTOIT, _ITOFT2): New.
4565         * sysdeps/alpha/divl.S: Use them.
4566         * sysdeps/alpha/divq.S: Likewise.
4567         * sysdeps/alpha/divqu.S: Likewise.
4568         * sysdeps/alpha/reml.S: Likewise.
4569         * sysdeps/alpha/remq.S: Likewise.
4570         * sysdeps/alpha/remqu.S: Likewise.
4572 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
4574         * math/tgmath.h (__TGMATH_UNARY_REAL_IMAG_RET_REAL):Define.
4575         (cimag): Use it.
4576         (creal): Likewise.
4577         * math/Makefile (tests): Add bug-tgmath1.
4578         * math/bug-tgmath1.c: New file.
4580 2004-05-05  Jakub Jelinek  <jakub@redhat.com>
4582         * sysdeps/alpha/atomicity.h: Remove.
4583         * sysdeps/generic/atomicity.h: Remove.
4585 2004-05-05  H.J. Lu  <hongjiu.lu@intel.com>
4587         * sysdeps/i386/i486/bits/string.h (strpbrk): Cast return to
4588         char *.
4590 2004-04-22  David Mosberger  <davidm@hpl.hp.com>
4592         * sysdeps/unix/sysv/linux/ia64/Makefile (librt-routines): Mention
4593           rt-sysdep.
4594         * sysdeps/unix/sysv/linux/ia64/rt-sysdep.S: New file.
4596         * sysdeps/ia64/strcat.c: New file.
4597         * sysdeps/ia64/strcat.S: Delete.
4599 2004-05-04  Jakub Jelinek  <jakub@redhat.com>
4601         * sysdeps/unix/sysv/linux/ia64/sysdep.S (USE___THREAD): Remove
4602         defined.
4604 2004-04-23  Jakub Jelinek  <jakub@redhat.com>
4606         * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Add
4607         libc_hidden_proto.  Define to __GI___libm_error_support for
4608         assembly going into libc.so.
4609         * sysdeps/ia64/fpu/libc_libm_error.c (__libm_error_support): Add
4610         libc_hidden_def.
4612         * include/libc-symbols.h (HIDDEN_BUILTIN_JUMPTARGET): Define.
4613         * sysdeps/ia64/bcopy.S (bcopy): Use it for jump to memmove.
4615         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Access
4616         gprel errno if RTLD_PRIVATE_ERRNO or __thread __libc_errno/errno
4617         if USE___THREAD.
4619 2004-05-03  Jakub Jelinek  <jakub@redhat.com>
4621         * sysdeps/unix/bsd/bits/fcntl.h (F_SETOWN, F_GETOWN): Define if
4622         __USE_BSD or __USE_UNIX98.
4623         * sysdeps/unix/bsd/ultrix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4624         * sysdeps/unix/bsd/bsd4.4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4625         * sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h (F_SETOWN, F_GETOWN):
4626         Likewise.
4627         * sysdeps/unix/common/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4628         * sysdeps/unix/sysv/aix/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4629         * sysdeps/unix/sysv/irix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4630         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (F_SETOWN, F_GETOWN):
4631         Likewise.
4632         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_SETOWN, F_GETOWN):
4633         Likewise.
4634         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (F_SETOWN, F_GETOWN):
4635         Likewise.
4636         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (F_SETOWN, F_GETOWN):
4637         Likewise.
4638         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (F_SETOWN, F_GETOWN):
4639         Likewise.
4640         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (F_SETOWN, F_GETOWN):
4641         Likewise.
4642         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (F_SETOWN, F_GETOWN):
4643         Likewise.
4644         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (F_SETOWN, F_GETOWN):
4645         Likewise.
4646         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (F_SETOWN, F_GETOWN):
4647         Likewise.
4648         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (F_SETOWN, F_GETOWN):
4649         Likewise.
4650         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (F_SETOWN, F_GETOWN):
4651         Likewise.
4652         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (F_SETOWN, F_GETOWN):
4653         Likewise.
4654         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_SETOWN, F_GETOWN):
4655         Likewise.
4656         * sysdeps/generic/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4657         * sysdeps/mach/hurd/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4658         * io/sys/stat.h (S_ISSOCK, S_IFSOCK): Likewise.
4660 2004-05-01  Jakub Jelinek  <jakub@redhat.com>
4662         * posix/Versions (libc): Remove __libc_wait, __libc_waitpid,
4663         __libc_pause, __libc_nanosleep, __libc_pread, __libc_pread64,
4664         __libc_pwrite64, __waitid and __pselect @@GLIBC_PRIVATE.
4665         * stdlib/Versions (libc): Remove __on_exit@@GLIBC_PRIVATE.
4666         * sysdeps/unix/sysv/linux/Versions (libc): Remove
4667         __libc_sigaction@@GLIBC_PRIVATE.
4668         * sysdeps/unix/sysv/linux/x86_64/Versions (libc): Remove
4669         __modify_ldt@@GLIBC_PRIVATE.
4670         * socket/Versions (libc): Remove __libc_accept, __libc_send,
4671         __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv,
4672         __libc_sendto and __libc_connect @@GLIBC_PRIVATE.
4673         * stdio-common/Versions (libc): Remove
4674         _itoa_upper_digits@@GLIBC_PRIVATE.
4675         * resolv/Versions (libresolv): Remove __ns_samename@@GLIBC_PRIVATE.
4676         * misc/Versions (libc): Remove __libc_fsync, __libc_msync,
4677         __libc_readv and __libc_writev @@GLIBC_PRIVATE.
4678         * termios/Versions (libc): Remove __libc_tcdrain@@GLIBC_PRIVATE.
4679         * io/Versions (libc): Remove __libc_open, __libc_close, __libc_read,
4680         __libc_write, __libc_lseek, __libc_fcntl, __libc_open64 and
4681         __libc_lseek64 @@GLIBC_PRIVATE.
4683 2004-04-30  Jakub Jelinek  <jakub@redhat.com>
4685         * elf/dl-load.c (open_verify): Move e_phentsize check after e_type
4686         check.
4688 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
4690         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: New file.
4691         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: New file.
4692         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: New file.
4693         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: New file.
4694         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: Removed.
4695         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: New file.
4696         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: Removed.
4697         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: New file.
4698         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: New file.
4699         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: New file.
4700         * sysdeps/powerpc/powerpc64/fpu/s_lround.S: New file.
4701         * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: New file.
4702         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: New file.
4703         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: New file.
4704         * sysdeps/powerpc/powerpc64/fpu/s_round.S: New file.
4705         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: New file.
4706         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: New file.
4707         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: New file.
4709         * math/test-misc.c [LDBL_MANT_DIG == 106](main): Correct LDBL_MAX
4710         mantissa for AIX long double format.
4711         * misc/qefgcvt.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Define for AIX
4712         long double format.
4713         * misc/qefgcvt_r.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Likewise.
4714         * stdlib/fpioconst.c [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
4715         (_fpioconst_pow10): AIX long double format has same exponent range as
4716         double.
4717         * stdlib/fpioconst.h [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
4718         (LDBL_MAX_10_EXP_LOG): AIX long double format has same exponent range
4719         as double.
4721 2004-04-23  Art Haas  <ahaas@airmail.net>
4723         * sysdeps/unix/sysv/linux/kernel-features.h: Add 'defined'.
4725 2004-04-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
4727         * sysdeps/unix/sysv/linux/mq_getattr.c: Include <stddef.h>.
4728         * sysdeps/unix/sysv/linux/mq_notify.c: Likewise.
4729         * sysdeps/unix/sysv/linux/mq_open.c: Likewise.
4730         * sysdeps/unix/sysv/linux/mq_receive.c: Likewise.
4731         * sysdeps/unix/sysv/linux/mq_send.c: Likewise.
4733 2004-04-29  Philip Blundell  <pb@nexus.co.uk>
4735         * sysdeps/arm/dl-machine.h (RTLD_START): Avoid unnecessary GOT
4736         entries.
4738 2004-04-29  Jakub Jelinek  <jakub@redhat.com>
4740         * manual/resource.texi (sched_setaffinity, sched_getaffinity): Fix
4741         prototypes and description [BZ #131].
4743         * string/bits/string2.h (strpbrk): Cast NULL to char * [BZ #130].
4744         Patch by Ed Catmur <ed@catmur.co.uk>.
4745         * string/tst-inlcall.c (main): Add test for strpbrk.
4747         [BZ #140]
4748         * sysdeps/unix/sysv/linux/sys/sysctl.h: Remove linux/compiler.h
4749         include.
4750         (_LINUX_KERNEL_H, _LINUX_TYPES_H, _LINUX_LIST_H): Only define if not
4751         yet defined, #undef back after including linux/sysctl.h if defined
4752         here.
4753         (__LINUX_COMPILER_H, __user): Define if not yet defined, #undef
4754         back after including linux/sysctl.h if defined here.
4756         * sysdeps/sparc/sparc64/soft-fp/qp_qtoi.c (_Qp_qtoi): Use %f31
4757         for single precision register, add it to __asm clobbers [BZ #139].
4758         * sysdeps/sparc/sparc64/soft-fp/qp_qtoui.c (_Qp_qtoui): Use %f31
4759         for single precision register, add it to __asm clobbers.
4760         * sysdeps/sparc/sparc64/soft-fp/qp_qtoux.c (_Qp_qtoux): Use fqtox
4761         instead of fqtoi in QP_HANDLE_EXCEPTIONS.
4762         * sysdeps/sparc/sparc64/soft-fp/qp_qtox.c (_Qp_qtox): Likewise.
4763         Reported by M. H. VanLeeuwen <vanl@megsinet.net>.
4765 2004-04-23  Andreas Schwab  <schwab@suse.de>
4767         * sysdeps/unix/sysv/linux/m68k/register-dump.h: Use
4768         __attribute_used__.
4770 2004-04-22  Philip Blundell  <philb@gnu.org>
4772         * sysdeps/arm/dl-machine.h (elf_machine_rela): Don't use INTUSE
4773         when calling _dl_signal_error.
4774         (elf_machine_rel): Likewise.
4776 2004-04-21  Ulrich Drepper  <drepper@redhat.com>
4778         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Define _GI___sigsetjmp
4779         and use it internally instead of __sigsetjmp.
4780         * sysdeps/ia64/fpu/s_frexpf.c (frexpf): Use _GI___libm_frexp_4f.
4781         * sysdeps/ia64/fpu/s_frexpl.c (frexpl): Use _GI___libm_frexp_4l.
4782         * sysdeps/ia64/fpu/libm_frexp4.S: Define _GI___libm_frexp_4.
4783         * sysdeps/ia64/fpu/libm_frexp4f.S: Define _GI___libm_frexp_4f.
4784         * sysdeps/ia64/fpu/libm_frexp4l.S: Define _GI___libm_frexp_4l.
4785         * sysdeps/ia64/fpu/s_frexp.c (frexp): Use _GI___libm_frexp_4.
4786         * sysdeps/ia64/fpu/libm_support.h: Declare _GI___libm_frexp_4,
4787         _GI___libm_frexp_4f, _GI___libm_frexp_4l.
4788         * sysdeps/ia64/fpu/bits/mathinline.h: New file.
4789         * sysdeps/unix/sysv/linux/ia64/__start_context.S: Use
4790         HIDDEN_JUMPTARGET for exit call.
4791         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use HIDDEN_JUMPTARGET for
4792         _exit call.
4793         * sysdeps/ia64/bcopy.S: Use HIDDEN_JUMPTARGET for memmove call.
4794         * sysdeps/ia64/strcat.S: Use HIDDEN_JUMPTARGET for strlen and
4795         strcpy calls.
4797 2004-04-21  Jakub Jelinek  <jakub@redhat.com>
4799         * posix/tst-chmod.c (do_test): Fix a typo.
4801         * elf/lateglobal.c (main): Fix error checks.
4802         Patch by Stephen Clarke <stephen.clarke@st.com>.
4804         * manual/ctype.texi (isblank, iswblank): Mark as ISO functions,
4805         mention they have been added in ISO C99.
4806         Reported by Ben Pfaff <blp@cs.stanford.edu>.
4808 2004-03-31  H.J. Lu  <hongjiu.lu@intel.com>
4810         * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: Fix typo.
4812 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
4814         * sysdeps/unix/sysv/linux/shm_open.c (shm_unlink): Change EPERM into
4815         EACCES.
4817 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
4819         * stdio-common/vfscanf.c (_IO_vfscanf): Revert last %% whitespace
4820         handling change.
4821         * stdio-common/tst-sscanf.c (int_tests): Adjust.
4823         * nis/nss-nis.c: Include stdlib.h.
4825         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Shut up a
4826         warning.
4827         * sysdeps/sparc/sparc64/memcmp.S (memcmp): Remove BP_SYM () from
4828         libc_hidden_builtin_def.
4830 2004-04-20  Jim Meyering  <jim@meyering.net>
4832         * misc/error.c (error_tail): Don't leak upon realloc failure.
4834 2004-04-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4836         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
4837         Use RETURN_ADDRESS instead of __builtin_return_address.
4839 2004-04-19  Ulrich Drepper  <drepper@redhat.com>
4841         * sysdeps/unix/sysv/linux/mq_unlink.c: Rewrite to produce more
4842         compact code.
4844 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
4846         * stdio-common/vfscanf.c (_IO_vfscanf): When skipping whitespace,
4847         do input_error () instead of conv_error () and don't look at errno.
4848         Don't eat any whitespace before %% if skip_space == 0.
4849         * stdio-common/tst-sscanf.c (int_tests): New array.
4850         (main): Run int_tests.
4853 See ChangeLog.14 for earlier changes.