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