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