* sysdeps/unix/sysv/linux/check_pf.c (IFA_F_OPTIMISTIC): Define to
[platform/upstream/glibc.git] / ChangeLog
1 2007-08-29  Ulrich Drepper  <drepper@redhat.com>
2
3         * sysdeps/unix/sysv/linux/check_pf.c (IFA_F_OPTIMISTIC): Define to
4         zero if not defined.
5         (make_request): Recognize optimistic addresses and treat them like
6         deprecated addresses.
7         Reported by Neil Horman <nhorman@redhat.com>.
8
9 2007-08-28  Ulrich Drepper  <drepper@redhat.com>
10
11         * nscd/connections.c (send_ro_fd): Also transfer file size.
12         * nscd/nscd_helper.c (get_mapping): If nscd also transfers the
13         file size don't call fstat.
14
15         * nscd/nscd_helper.c (get_mapping): Avoid the pread call, just go
16         ahead and map the file.  This should always be correct and we can
17         catch problems later.
18
19 2007-08-28  Jakub Jelinek  <jakub@redhat.com>
20
21         * libio/bits/stdio2.h (__fread_chk, __fread_unlocked_chk): New
22         prototypes.
23         (__fread_alias, __fread_unlocked_alias): New aliases.
24         (fread): New extern inline.
25         (fread_unlocked): Likewise.  Undef macro before definition of
26         the inline function.
27         * debug/Makefile (routines): Add fread_chk and fread_u_chk.
28         (CFLAGS-fread_chk.c, CFLAGS-fread_u_chk.c): Add.
29         * debug/Versions (libc): Export __fread_chk@@GLIBC_2.7
30         and __fread_unlocked_chk@@GLIBC_2.7.
31         * debug/fread_chk.c: New file.
32         * debug/fread_u_chk.c: New file.
33         * debug/tst-chk1.c (do_test): Add fread and fread_unlocked tests.
34
35 2007-08-27  Jakub Jelinek  <jakub@redhat.com>
36
37         * sysdeps/unix/sysv/linux/syscalls.list
38         (personality): Change caller to EXTRA.
39
40 2007-08-25  Ulrich Drepper  <drepper@redhat.com>
41
42         * iconvdata/iso-2022-kr.c (BODY): Fake initialization of array buf
43         to keep gcc quiet.
44         * iconvdata/iso-2022-cn.c (BODY): Likewise.
45
46         * locale/programs/ld-collate.c (collate_output): Avoid warning if
47         NDEBUG is defined.
48
49         * Makerules: Use -p option with mkdir.
50
51         * sunrpc/key_prot.c (xdr_unixcred): Work around gcc alias warning.
52         * nis/nis_xdr.c (_xdr_nis_server): Likewise.
53         (_xdr_directory_obj): Likewise.
54         (xdr_entry_obj): Likewise.
55         (xdr_group_obj): Likewise.
56         (xdr_link_obj): Likewise.
57         (xdr_table_obj): Likewise.
58         (_xdr_nis_result): Likewise.
59         (_xdr_ns_request): Likewise.
60         (_xdr_ib_request): Likewise.
61         (_xdr_nis_taglist): Likewise.
62         (xdr_cback_data): Likewise.
63         * nis/yp_xdr.c (xdr_ypmaplist): Likewise.
64         (xdr_ypresp_maplist): Likewise.
65
66         * stdio-common/Makefile: Avoid format string warning for tst-sprint.
67
68         * posix/regex_internal.h: Prevent some declarations and definitions
69         to be seen when used in tests.
70
71         * posix/tst-rfc3484.c (__idna_to_unicode_lzlz): Initialize *OUTPUT.
72         * posix/tst-rfc3484-2.c (__idna_to_unicode_lzlz): Likewise.
73
74         * debug/Makefile: Disable format checking when compiling tst-chk?.c.
75
76         * config.make.in (datarootdir): Add to shut up configure.
77
78         * sysdeps/x86_64/cacheinfo.c (handle_amd): Fix computation of
79         associativity for fully-associative caches.
80
81         * sysdeps/x86_64/cacheinfo.c (handle_amd): Handle L3 cache
82         requests.  Fill on more associativity values for L2.
83         Patch mostly by Evandro Menezes.
84
85 2007-08-24  Ulrich Drepper  <drepper@redhat.com>
86
87         * sysdeps/unix/sysv/linux/x86_64/init-first.c
88         (_libc_vdso_platform_setup): Avoid using exported variable by using
89         alias.
90
91         * resolv/arpa/nameser.h (NS_OPT_DNSSEC_OK): Define.
92
93         * sysdeps/unix/sysv/linux/i386/syscalls.list: No reason to mark
94         fallocate64 as EXTRA.  It is not referenced if the symbol isn't
95         defined.
96
97 2007-08-23  Ulrich Drepper  <drepper@redhat.com>
98
99         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Correctly
100         align stack for call if pltexit is to be used.
101
102         [BZ #3924]
103         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Correctly
104         align for function call in case pltexit has to be called later.
105
106         * sysdeps/i386/dl-trampoline.S (_dl_runtime_resolve): Avoid
107         implicit atomic operation when storing function pointer.
108         (_dl_runtime_profile): Likewise.
109
110 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
111
112         * nis/nis_table.c (nis_list): Don't fail if __follow_path returned
113         NIS_NOTFOUND.
114
115 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
116
117         [BZ #4566]
118         * string/strtok.c: Fix typo in comment.
119
120         [BZ #4582]
121         * debug/segfault.c: Fix typos in comments.
122
123         [BZ #4588]
124         * stdio-common/tempnam.c: Fix comment, it is not checked that
125         TMPDIR points to a writable directory.
126
127         [BZ #4726]
128         * resolv/res_send.c (__libc_res_nsend): Initialize all of the
129         memory allocated for the name server address.
130
131         [BZ #4946]
132         * nscd/connections.c (handle_request): Using sendfile always
133         requires that mmap is used for the database.
134         Patch by Petr Baudis <pasky@suse.cz>.
135
136         [BZ #4905]
137         * nscd/hstcache.c (cache_addhst): When reloading an entry which
138         suddenly has two or more addresses, ignore it and remove the old
139         entry.
140
141         [BZ #4814]
142         * resolv/res_hconf.c: Prepare for compiling outside libc.
143         * nscd/res_hconf.c: New file.
144         * nscd/Makefile (nscd-modules): Add res_hconf.  Add rules to build
145         the new file.
146         * nscd/gethstbynm2_r.c (NEED__RES_HCONF): Define.
147         * nscd/gethstbyad_r.c (NEED__RES_HCONF): Likewise.
148
149         * nscd/hstcache.c (cache_addhst): Minimal optimization.
150
151         [BZ #4925]
152         * debug/pcprofiledump.c: Turn on internationalization by calling
153         setlocale.  Patch mostly by Benno Schulenberg.
154
155         [BZ #4936]
156         * iconv/gconv.c (__gconv): If flush was successful, clear rest of
157         the state.
158         * iconvdata/Makefile: Add rules to build and run bug-iconv5.
159         * iconvdata/bug-iconv5.c: New file.
160
161 2007-08-04  Carlos O'Donell  <carlos@systemhalted.org>
162
163         [BZ #4896]
164         * elf/elf.h: Define R_PARISC_PLABEL21L, R_PARISC_PLABEL14R,
165         R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT, R_PARISC_TLS_GD21L,
166         R_PARISC_TLS_GD14R, R_PARISC_TLS_GDCALL, R_PARISC_TLS_LDM21L,
167         R_PARISC_TLS_LDM14R, R_PARISC_TLS_LDMCALL, R_PARISC_TLS_LDO21L,
168         R_PARISC_TLS_LDO14R, R_PARISC_TLS_DTPMOD32, R_PARISC_TLS_DTPMOD64,
169         R_PARISC_TLS_DTPOFF32, R_PARISC_TLS_DTPOFF64, R_PARISC_TLS_LE21L,
170         R_PARISC_TLS_LE14R, R_PARISC_TLS_IE21L, R_PARISC_TLS_IE14R,
171         R_PARISC_TLS_TPREL32, R_PARISC_TLS_TPREL64.
172
173 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
174
175         [BZ #4937]
176         * elf/do-lookup.h (do_lookup_x): Minimal improvement in hash
177         lookup loop.  Suggested by John Reiser.
178
179 2007-08-21  Jakub Jelinek  <jakub@redhat.com>
180
181         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Include tls.h.
182
183 2007-08-20  Ulrich Drepper  <drepper@redhat.com>
184
185         * csu/libc-start.c: Don't handle VDSO_SETUP here.
186         * sysdeps/unix/sysv/linux/init-first.c: Handle it here instead.
187         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: Renamed to...
188         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...this.  New file.
189         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Move VDSO_SETUP code
190         to...
191         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...here.  New file.
192
193 2007-08-18  Ulrich Drepper  <drepper@redhat.com>
194
195         * po/nl.po: Update from translation team.
196
197 2007-08-16  Andreas Jaeger  <aj@suse.de>
198
199         * locale/localeinfo.h: Make _nl_category_name_idxs extern.
200         Reported by Peter Festner <peter.festner@ewetel.net>.
201
202 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
203
204         * login/tst-grantpt.c (test_einval): Add 3rd argument to open.
205
206 2007-08-16  Jakub Jelinek  <jakub@redhat.com>
207
208         * elf/Makefile ($(objpfx)ld.so): Use readelf -s and awk instead of nm -u
209         to check for undefined symbols.
210
211         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone):
212         If the syscall fails, set errno to the actual returned error number
213         rather than EINVAL.
214         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If
215         arguments are incorrect, set errno to EINVAL, if the syscall
216         fails, set errno to the actual returned error number.
217
218         * stdlib/bits/stdlib-ldbl.h (__strtold_internal): Remove.
219         * wcsmbs/bits/wchar-ldbl.h (__wcstold_internal): Remove.
220
221         * sysdeps/sparc/sparc32/sparcv9b/memcpy.S: Moved to...
222         * sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S: ... here.  New
223         file.
224         (ASI_PNF, ASI_BLK_P): Don't define.
225         * sysdeps/sparc/sparc32/sparcv9v/memcpy.S: Moved to...
226         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S: ... here.  New
227         file.
228         * sysdeps/sparc/sparc32/sparcv9v/memset.S: Moved to...
229         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S: ... here.  New
230         file.
231
232 2007-08-15  Jakub Jelinek  <jakub@redhat.com>
233
234         * sysdeps/sparc/fpu/fraiseexcpt.c (__feraiseexcept): Fix raising
235         FE_UNDERFLOW on Niagara CPUs.
236
237         * sysdeps/sparc/fpu/feholdexcpt.c (feholdexcept): Clear all
238         exceptions.
239
240 2007-08-14  Jakub Jelinek  <jakub@redhat.com>
241
242         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup): No
243         need to check GLRO(dl_hwcap) & HWCAP_SPARC_FLUSH on sparcv9.
244         (sparc_fixup_plt): Add do_flush argument instead of figuring whether
245         flush should be used or not inside of the function.
246         (elf_machine_fixup_plt, elf_machine_rela): Adjust caller.
247
248         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone,
249         __thread_start): Use HIDDEN_JUMPTARGET.
250         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone,
251         __thread_start): Likewise.
252         * sysdeps/unix/sysv/linux/sparc/sysdep.h (JUMPTARGET): Define.
253
254         * sysdeps/ieee754/ldbl-64-128/strtold_l.c (__STRTOF): Declare.
255         Add libc_hidden_proto.
256         (STRTOF): Add libc_hidden_proto.
257         (___new_strtold_l, ___new_wcstold_l): New weak aliases.
258         (strtold_l, wcstold_l): Use them as second argument for
259         long_double_symbol.
260
261 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
262
263         * elf/dl-misc.c: Undo last change.  The kernel won't allow it.
264
265 2007-08-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
266
267         * stdlib/strtold_l.c: Include wchar.h if needed.  Add libc_hidden_def.
268
269 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
270
271         * po/bg.po: New file.  From the translation team.
272
273 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
274
275         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PSELECT,
276         __ASSUME_PPOLL, __ASSUME_ATFCTS, __ASSUME_SET_ROBUST_LIST,
277         __ASSUME_UTIMENSAT, __ASSUME_FALLOCATE): Update per-arch conditions
278         when each feature was introduced.
279
280         * sysdeps/unix/sysv/linux/dl-vdso.c: Don't include dl-hash.h.
281         * sysdeps/unix/sysv/linux/dl-vdso.h: Don't include dl-hash.h if NDEBUG.
282         (CHECK_HASH): New macro.
283         (PREPARE_VERSION): Use it.
284
285         * sysdeps/unix/sysv/linux/pselect.c (__generic_pselect): Only provide
286         prototype if not __ASSUME_PSELECT.
287         * sysdeps/unix/sysv/linux/ppoll.c (__generic_ppoll): Only provide
288         prototype if not __ASSUME_PPOLL.
289
290         * sysdeps/unix/sysv/linux/dl-osinfo.h (ROUND): #undef after use.
291
292         * sysdeps/unix/clock_settime.c (freq, __pthread_clock_settime,
293         hp_timing_settime): Don't define or declare if HANDLED_CPUTIME
294         is defined.
295
296 2007-08-13  Ulrich Drepper  <drepper@redhat.com>
297
298         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
299         (_libc_vdso_platform_setup): If vDSO is not available point
300         __vdso_gettimeofday to the vsyscall.
301         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S [SHARED]: Use
302         __vdso_gettimeofday instead of vsyscall.
303
304 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
305
306         * nscd/servicescache.c: Include kernel-features.h.
307         * nscd/gai.c: Likewise.
308         * sysdeps/unix/sysv/linux/statfs64.c: Likewise.
309         * sysdeps/unix/sysv/linux/fstatfs64.c: Likewise.
310         * sysdeps/unix/sysv/linux/fxstatat.c: Likewise.
311         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S: Likewise.
312         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S: Likewise.
313         * sysdeps/unix/sysv/linux/xstatconv.c: Likewise.
314         * sysdeps/unix/sysv/linux/if_index.c: Likewise.
315         * sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: Likewise.
316         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
317
318 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
319
320         * elf/dl-dst.h: No need for _dl_dst_count, _dl_dst_substitute,
321         and _dl_get_origin defines anymore.
322
323         * sysdeps/unix/sysv/linux/clock_gettime.c (maybe_syscall_gettime_cpu):
324         Build fix for systems which might lack POSIX timer support.
325
326         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
327         (_libc_vdso_platform_setup): Mangle function pointers before storing
328         them.
329         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INLINE_VSYSCALL):
330         Demangle vdso pointer before use.
331         (INTERNAL_VSYSCALL): Likewise.
332
333         * elf/cache.c (primes): Mark as const.
334         Noted by Roland McGrath.
335
336 2007-08-01  Andreas Jaeger  <aj@suse.de>
337             Jakub Jelinek  <jakub@redhat.com>
338
339         * elf/ldconfig.c (opt_ignore_aux_cache): Add new option.
340         (options): Add option.
341         (parse_opt): Handle option.
342         (manual_link): Adjust process_file caller.  Call implicit_soname.
343         (search_dir): Formatting.  Use and populate auxiliary cache.
344         (main): Load and save auxiliary cache.
345         * elf/readlib.c (process_file): Add stat_buf argument.  Pass struct
346         stat64 from fstat64 to caller.
347         (implicit_soname): New function.
348         * elf/readelflib.c (process_elf_file): If DT_SONAME is not present,
349         leave *soname as NULL.
350         * elf/cache.c: Include libgen.h.
351         (print_entry, print_cache, compare, save_cache, add_to_cache):
352         Formatting and cleanups.
353         (aux_cache_entry_id, aux_cache_entry, aux_cache_file_entry,
354         aux_cache_file): New structures.
355         (AUX_CACHEMAGIC): Define.
356         (primes): New array.
357         (aux_hash_size, aux_hash): New variables.
358         (aux_cache_entry_id_hash, nextprime, init_aux_cache,
359         search_aux_cache, insert_to_aux_cache, add_to_aux_cache,
360         load_aux_cache, save_aux_cache): New functions.
361         * sysdeps/generic/ldconfig.h (_PATH_LDCONFIG_AUX_CACHE): Define.
362         (init_aux_cache, search_aux_cache, add_to_aux_cache,
363         load_aux_cache, save_aux_cache, implicit_soname): New prototypes.
364         (process_file): Adjust prototype.
365
366 2007-08-12  Jakub Jelinek  <jakub@redhat.com>
367
368         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Include stddef.h
369         with __need_size_t.
370
371 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
372
373         * sysdeps/unix/sysv/linux/dl-vdso.c (_dl_vdso_vsym): Expect
374         r_found_version structure as second parameter.
375         * sysdeps/unix/sysv/linux/dl-vdso.h (PREPARE_VERSION): Define.
376         (_dl_vdso_vsym): Change type of second parameter accordingly.
377         * sysdeps/unix/sysv/linux/x86-64/libc-start.c
378         (_libc_vdso_platform_setup): Adjust.
379         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
380         (_libc_vdso_platform_setup): Likewise.
381
382         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.c: Move to...
383         * sysdeps/unix/sysv/linux/dl-vdso.c: ...here.
384         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.h: Move to...
385         * sysdeps/unix/sysv/linux/dl-vdso.h: ...here.
386         * csu/libc-start.c: Pretty printing.
387         Use VDSO_SETUP if defined.
388         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Define VDSO_SETUP
389         and let generic code call into _libc_vdso_platform_setup.
390         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: New file.
391         * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: New file.
392         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Pretty printing.
393         Define INLINE_VSYSCALL and INTERNAL_VSYSCALL.
394         * sysdeps/unix/sysv/linux/x86_64/Versions: Export __vdso_clock_gettime
395         for GLIBC_PRIVATE.
396         * sysdeps/unix/sysv/linux/x86_64/Makefile [subdir=elf]
397         (sysdep_rountines): Add dl-vdso.
398
399         * sysdeps/unix/sysv/linux/powerpc/Makefile: Use sysdep_routines instead
400         of routines.
401
402         * sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h: Add
403         attribute_hidden to __vdso_gettimeofday prototype.
404
405 2007-08-12  Roland McGrath  <roland@redhat.com>
406
407         * manual/stdio.texi (Variable Arguments Output): Fix xref to gcc manual.
408         From: Karl Berry <karl@freefriends.org>.
409
410 2007-08-11  Ulrich Drepper  <drepper@redhat.com>
411
412         * elf/dl-misc.c (_dl_sysdep_read_whole_file): We really don't need
413         an atime update for the files we read.
414
415 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
416
417         * shadow/lckpwdf.c (__lckpwdf): Use O_CLOEXEC if possible.
418
419         * nscd/connections.c: Use O_CLOEXEC if possible.  Use mkostemp
420         instead of mkstemp.
421
422         * misc/Makefile (routines): Add mkostemp and mkostemp64.
423         * misc/Versions: Export mkostemp and mkostemp64 for GLIBC_2.7.
424         * misc/mkostemp.c: New file.
425         * misc/mkostemp64.c: New file.
426         * stdlib/stdlib.h: Declare the new functions.
427         * sysdeps/posix/tempname.c: Add new parameter which is added to
428         the flags for open.  Remove __GT_BIGFILE handling.
429         * stdio-common/tempname.c: Likewise.
430         * include/stdio.h: Adjust __gen_tempname prototype.
431         Renumber __GT_* constants.
432         * libio/oldtmpfile.c: Adjust for __gen_tempname interface change.
433         * misc/mkdtemp.c: Likewise.
434         * misc/mkstemp.c: Likewise.
435         * misc/mkstemp64.c: Likewise.
436         * misc/mktemp.c: Likewise.
437         * stdio-common/tempnam.c: Likewise.
438         * stdio-common/tmpfile.c: Likewise.
439         * stdio-common/tmpfile64.c: Likewise.
440         * stdio-common/tmpnam.c: Likewise.
441         * stdio-common/tmpnam_r.c: Likewise.
442
443 2007-08-10  Roland McGrath  <roland@frob.com>
444
445         * sysdeps/mach/hurd/bits/ioctls.h (NLDLY, TABDLY, BSDLY, VTDLY):
446         New macros.
447         (NLDELAY, CRDELAY, TBDELAY, BSDELAY, VTDELAY): Define to those.
448         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
449
450 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
451
452         * nss/nss_files/files-XXX.c (internal_setent): Use O_CLOEXEC if
453         possible.
454         * nss/nss_files/files-alias.c (internal_setent): Likewise.
455         * nss/Makefile (libnss_files-routines): Add files-have_o_cloexec.
456         * nss/nss_files/files-have_o_cloexec.c: New file.
457
458         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Use O_CLOEXEC if
459         available.
460
461 2007-08-10  Jakub Jelinek  <jakub@redhat.com>
462
463         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c (___new_strtold_l,
464         ___new_wcstold_l): New weak aliases.
465         (strtold_l, wcstold_l): Use them as second argument for
466         long_double_symbol.
467
468 2007-08-09  Ulrich Drepper  <drepper@redhat.com>
469
470         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: Use correct
471         register in test for error.
472
473         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_CLOEXEC): Define.
474         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_CLOEXEC): Likewise.
475
476         * po/sv.po: Update from translation team.
477
478 2007-08-06  Roland McGrath  <roland@redhat.com>
479
480         * include/stdlib.h: Add libc_hidden_proto for strto*, __strto*_l.
481         Remove __strto*_l inlines.
482         * include/wchar.h: Add libc_hidden_proto for wcsto*, __wcsto*_l.
483         * stdlib/strtod.c: Add libc_hidden_def.
484         * stdlib/strtod_l.c: Likewise.
485         * stdlib/strtold.c [__LONG_DOUBLE_MATH_OPTIONAL]: Add libc_hidden_proto
486         for __new_strtold and __new_wcstold.
487         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c: Add libc_hidden_proto for
488         __STRTOF, STRTOF.
489         * stdlib/strtol.c: Add libc_hidden_def.
490         * stdlib/strtol_l.c: Likewise.
491         * sysdeps/wordsize-64/strtol.c: Add libc_hidden_ver for strtoll and
492         strtoq.
493
494         * scripts/data/localplt-powerpc-linux-gnu.data: New file.
495
496         * scripts/data/localplt-x86_64-linux-gnu.data: File renamed to ...
497         * scripts/data/localplt-generic.data: ... here.
498         * elf/Makefile (check-data): Get generic file if no other.
499         ($(objpfx)check-localplt.out): Make target unconditional.
500
501         * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion):
502         Use ElfW(Nhdr).
503
504 2007-08-05  Ulrich Drepper  <drepper@redhat.com>
505
506         * po/zh_CN.po: Updated translation from translation team.
507
508 2007-08-05  Jakub Jelinek  <jakub@redhat.com>
509
510         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket):
511         Don't use CGOTSETUP and CGOTRESTORE macros.
512
513 2007-08-04  Roland McGrath  <roland@redhat.com>
514
515         * posix/Makefile ($(objpfx)getconf.speclist): Fix typo.
516
517 2007-08-04  Jakub Jelinek  <jakub@redhat.com>
518
519         * io/bits/fcntl2.h (open, open64, openat, openat64): Add
520         __extension__ around the whole statement expression.
521
522 2007-08-04  Ulrich Drepper  <drepper@redhat.com>
523
524         * sysdeps/unix/opendir.c (__alloc_dir): Correct order of DIR
525         elements during initialization.
526
527         * po/pl.po: Updated translation from translation team.
528         * po/tr.po: Likewise.
529         * po/nl.po: Likewise.
530
531 2007-08-03  Ulrich Drepper  <drepper@redhat.com>
532
533         * rt/aio.h: Add __nonnull attributes.
534
535 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
536
537         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Properly handle -0.
538         * stdlib/Makefile (tests): Add tst-strtod5.
539         (tst-strtod5-ENV): New.
540         * stdlib/tst-strtod5.c: New file.
541
542         * intl/dcigettext.c (_nl_find_msg): Free encoding if __gconv_open
543         failed.
544         * intl/finddomain.c (_nl_find_domain): Free normalized_codeset
545         on failure.
546
547         * elf/dl-load.c (decompose_rpath): Free copy if result couldn't be
548         allocated.
549
550 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
551
552         * rt/mqueue.h (mq_timedreceive, mq_timedsend): Fix nonnull argument
553         numbers.
554
555 2007-08-02  Ulrich Drepper  <drepper@redhat.com>
556
557         * io/Makefile (aux): Add have_o_cloexec.
558         * include/fcntl.h: Declare __have_o_cloexec.
559         * io/have_o_cloexec.c: New file.
560         * sysdeps/unix/opendir.c (__opendir): Use O_CLOEXEC is available.
561         (__alloc_dir): If O_CLOEXEC has been used, don't duplicate the
562         fcntl call if not necessary.
563         * login/utmp_file.c (setutent_file): Use __have_o_cloexec instead
564         of local variable.
565
566         * sysdeps/unix/opendir.c (__alloc_dir): Don't initialize ->data.
567         Avoid memset, add explicit initialization.
568         * sysdeps/unix/dirstream.h (struct __dirstream): Move data elemtn
569         to the end and change into zero-sized array.
570         Move lock member to fill a hole on 64-bit platforms.
571
572         * stdlib/stdlib.h: Remove __strto*_internal prototypes and strto*
573         inline functions.
574         * include/stdlib.h: Add __strto*_internal prototypes here.
575         * wcsmbs/wchar.h: Remove __wcsto*_internal prototypes and wcsto*
576         inline functions.
577         * include/wchar.h: Add __wcsto*_internal prototypes.
578         * sysdeps/generic/inttypes.h: No need to protect the declaration
579         of the __strto*_internal and __wcsto*_internal members here.
580
581         * rt/mqueue.h: Change const to __const and add nonnull attributes.
582
583 2007-08-02  Roland McGrath  <roland@redhat.com>
584
585         * posix/Makefile ($(inst_libexecdir)/getconf): Make hard links to
586         $(inst_bindir)/getconf if possible.
587
588         * posix/Makefile ($(objpfx)getconf.speclist): New target.
589         (generated): Add it.
590         ($(inst_libexecdir)/getconf): Use it.
591
592 2007-08-01  Ulrich Drepper  <drepper@redhat.com>
593
594         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Using
595         /proc is faster and sufficient.  /sys is still needed for
596         __get_nprocs_conf.
597
598 2007-08-01  Jakub Jelinek  <jakub@redhat.com>
599
600         * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate): Add fallocate
601         syscall as __fallocate64.
602         * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: New file.
603         * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: New file.
604
605 2007-07-30  Jakub Jelinek  <jakub@redhat.com>
606
607         * stdlib/tst-strtod2.c (do_test): Use %tu in fmt string for ptrdiff_t
608         value.
609
610         * stdio-common/tst-fmemopen2.c (do_test): Avoid fmt string warning
611         if off_t is different rank from size_t.
612
613         * sysdeps/generic/unwind-dw2.c (extract_cie_info, execute_cfa_program,
614         uw_frame_state_for): Avoid type punning warnings.
615         * sysdeps/generic/unwind-dw2-fde-glibc.c
616         (_Unwind_IteratePhdrCallback): Likewise.
617         * sysdeps/generic/unwind-dw2-fde.c (_Unwind_Find_FDE): Likewise.
618         (binary_search_single_encoding_fdes, binary_search_mixed_encoding_fdes,
619         get_cie_encoding, linear_search_fdes): Don't mix char and unsigned char
620         pointers.
621
622 2007-07-31  Ulrich Drepper  <drepper@redhat.com>
623
624         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs_conf): Count
625         total processors using sysfs.
626         (__get_nprocs): Use sysfs to determine which processors are online.
627
628 2007-07-31  Jakub Jelinek  <jakub@redhat.com>
629
630         * sysdeps/unix/sysv/linux/posix_fallocate.c (posix_fallocate): Fix
631         syscall arguments count.
632
633         * stdio-common/tfformat.c (sprint_doubles): Add 12 new tests.
634
635 2007-07-30  Roland McGrath  <roland@redhat.com>
636
637         * manual/libc.texinfo: Update copyrights, formatting magic, and
638         @dircategory.  From Karl Berry <karl@freefriends.org>.
639
640 2007-07-29  Ulrich Drepper  <drepper@redhat.com>
641
642         [BZ #4860]
643         * io/Makefile (headers): Add bits/fcntl2.h.
644
645         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO_S): Optimize
646         using gcc builtin.
647         (__CPU_EQUAL_S): Likewise.
648
649         * posix/Makefile (routines): Add sched_cpualloc and sched_cpufree.
650         (tests): Add tst-cpuset.
651         * posix/sched_cpualloc.c: New file.
652         * posix/sched_cpufree.c: New file.
653         * posix/tst-cpuset.c: New file.
654         * posix/Versions: Export __sched_cpualloc and __sched_cpufree for
655         GLIBC_2.7.
656         * sysdeps/unix/sysv/linux/bits/sched.h: Define __CPU_*_S macros.
657         * posix/sched.h: Define old CPU_* macros in temers of __CPU_*_S
658         macros.  Define CPU_*_S macros.
659
660 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
661
662         * posix/getconf.c (vars): Add missing _SC_LEVEL4_CACHE_LINESIZE
663         entry.
664
665         [BZ #4858]
666         * stdio-common/printf_fp.c (___printf_fp): Fix special case of
667         #.0g and value rounded to 1.0.
668         * stdio-common/tfformat.c (sprint_doubles): Add two new tests.
669
670 2007-07-26  Jakub Jelinek  <jakub@redhat.com>
671
672         * locale/programs/ld-monetary.c (monetary_finish): Avoid range check
673         for int_frac_digits and frac_digits.
674
675         * login/logout.c (logout): Avoid aliasing violation.
676         * login/logwtmp.c (logwtmp): Likewise.
677
678         * libio/genops.c (_IO_un_link): Avoid aliasing violation.
679
680         * nscd/selinux.c (preserve_capabilities): Initialize new_caps
681         to avoid warning.
682         * iconv/gconv_open.c (__gconv_open): Initialize ptr to avoid
683         warning.
684         * nis/nis_subr.c (nis_getnames): Initialize saveptr to avoid
685         warning.
686         * resolv/inet_ntop.c (inet_ntop6): Initialize best.len and cur.len
687         to avoid warnings.
688
689         * nss/nsswitch.c (__nss_lookup_function): Don't cast &ni->known to
690         void **.
691         * nss/nsswitch.h (service_user): Use void * type for KNOWN field.
692
693         * nss/nss_files/files-hosts.c (LINE_PARSER): Cast host_addr to
694         char * to avoid warning.
695         * nis/nss_nis/nis-hosts.c (LINE_PARSER): Likewise.
696
697         * timezone/Makefile (CFLAGS-zdump.c): Add -fwrapv.
698
699         * locale/programs/ld-ctype.c (ctype_finish, set_class_defaults,
700         allocate_arrays): Cast second argument to charmap_find_symbol
701         to char * to avoid warnings.
702
703         * locale/programs/repertoire.c (repertoire_new_char): Change
704         from_nr, to_nr and cnt to unsigned long, adjust printf format
705         string.
706
707         * locale/programs/ld-collate.c (insert_value, handle_ellipsis):
708         Cast second argument to new_element to char * to avoid warnings.
709
710         * locale/weightwc.h (findidx): Cast &extra[-i] to const int32_t *.
711
712         * intl/gettextP.h (struct loaded_domain): Change plural to const
713         struct expression *.
714         * intl/plural-eval.c (plural_eval): Change first argument to
715         const struct expression *.
716         * intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Change first
717         argument to const struct expression **.
718         * intl/plural-exp.h (EXTRACT_PLURAL_EXPRESSION, plural_eval): Adjust
719         prototypes.
720         * intl/loadmsgcat (_nl_unload_domain): Cast away const
721         in call to __gettext_free_exp.
722
723         * posix/fnmatch.c (fnmatch): Rearrange code to avoid maybe
724         unitialized wstring/wpattern var warnings.
725
726         * posix/runtests.c (struct a_test): Make data field const char *.
727
728         * stdio-common/tst-sprintf2.c (main): Don't declere u, v and buf
729         vars if not LDBL_MANT_DIG >= 106.
730
731         * stdio-common/Makefile (CFLAGS-vfwprintf.c): Add -Wno-unitialized.
732
733         * stdio-common/vfprintf.c (vfprintf): Cast first arugment to
734         __find_specmb to avoid warning.
735
736         * rt/tst-mqueue1.c (do_one_test): Add casts to avoid warnings.
737
738         * debug/test-strcpy_chk.c (do_tests, do_random_tests): Add casts
739         to avoid warnings.
740
741         * sysdeps/ieee754/ldbl-96/s_roundl.c (huge): Add L suffix to
742         initializer.
743
744         * sysdeps/unix/clock_gettime.c (clock_gettime): Only define
745         tv var when it will be actually used.
746
747         * sunrpc/rpc_cmsg.c (xdr_callmsg): Cast IXDR_PUT_* to void
748         to avoid warnings.
749
750         * iconvdata/gbk.c (BODY): Make buf and cp char instead of unsigned
751         char array resp. pointer.
752         * iconvdata/iso-2022-kr.c (BODY): Make buf unsigned char instead of
753         char array.
754         * iconvdata/cns11643.h (cns11643_to_ucs4): Change first argument
755         to const unsigned char **.
756         (ucs4_to_cns11643): Change second argument to unsigned char *.
757         * iconvdata/euc-tw.c (BODY): Change endp type to
758         const unsigned char *.
759         * iconvdata/iso-ir-165.h (ucs4_to_isoir165): Change second argument
760         to unsigned char *.
761         * iconvdata/ibm1008_420.c (LOOP_NEED_FLAGS): Don't define.
762         * iconvdata/iso-2022-cn.c (BODY): Change buf to unsigned char array.
763         * iconvdata/iso-2022-cn-ext.c (BODY): Change buf, tmpbuf, tmp
764         types to unsigned char pointers/arrays instead of char.
765         * iconvdata/jis0201.h (ucs4_to_jisx0201): Change second argument
766         to unsigned char *.
767         * iconvdata/jis0208.h (ucs4_to_jisx0208): Likewise.
768         * iconvdata/jis0212.h: Include assert.h.
769         (ucs4_to_jisx0212): Change second argument to unsigned char *.
770         assert that if cp[0] is not '\0', cp[1] is not '\0' either instead
771         of trying to handle that.
772         * iconvdata/euc-kr.c (euckr_from_ucs4): Initialize also cp[1] to
773         shut up a warning.
774         * iconvdata/euc-jp-ms.c (from_ucs4_lat1, from_ucs4_greek,
775         from_ucs4_cjk, from_ucs4_cjkcpt, from_ucs4_extra): Change type to
776         two dimensional const unsigned char arrays.
777         (BODY): Cast "" to (const unsigned char *) for assignment to cp.
778         Initialize endp to inptr to shut up a warning.
779
780 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
781
782         [BZ #4772]
783         * time/strptime_l.c (__strptime_internal): Silently ignore
784         strftime modifiers and field width in recursive calls.
785
786         * include/time.h (enum ptime_locale_status): Remove.
787         (__strptime_internal): Remove decided and era_cnt arguments,
788         add statep argument.
789         * time/strptime_l.c (__strptime_internal): Remove decided
790         and era_cnt arguments, add statep argument.  Don't recompute
791         any fields in recursive calls, only update caller's tm
792         and state, if recursive call fails, don't change tm nor
793         any state.
794         (get_alt_number): Adjust.
795         (recursive): Adjust caller.
796         (strptime): Likewise.
797         * time/strptime.c (strptime): Likewise.
798
799 2007-07-19  Jakub Jelinek  <jakub@redhat.com>
800
801         * iconv/gconv_int.h (__GCONV_NULCONV): New internal only error code.
802         * iconv/gconv_cache.c (__gconv_lookup_cache): Return __GCONV_NULCONV
803         if from and to charsets are the same.
804         * iconv/gconv_db.c (__gconv_find_transform): Likewise.
805         * intl/dcigettext.c (_nl_find_msg): Return NULL even if __gconv_open
806         returns __GCONV_NOCONV, but not for __GCONV_NULCONV.
807
808 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
809
810         * wcsmbs/wchar.h: Only define wint_t if __need_wint_t.
811         Don't define wint_t when __need_mbstate_t unless it
812         is necessary.
813         (__mbstate_t): Use __WINT_TYPE__ rather than wint_t
814         in the typedef if possible.
815         * wctype/wctype.h (wint_t): Define by including
816         wchar.h with __need_wint_t instead of including stddef.h
817         with __need_wint_t and as fallback definining it ourselves.
818         * iconv/gconv.h (__need_wint_t): Define before including
819         wchar.h.
820         * sysdeps/gnu/_G_config.h: Don't include gconv.h if not _LIBC
821         or _GLIBCPP_USE_WCHAR_T.
822         (__need_wchar_t): Don't define
823         if not _LIBC or _GLIBCPP_USE_WCHAR_T.
824         (__need_wint_t): Don't define before including stddef.h,
825         define before including wchar.h only if _LIBC or
826         _GLIBCPP_USE_WCHAR_T.
827         (_G_iconv_t): Don't define if not _LIBC or _GLIBCPP_USE_WCHAR_T.
828         * sysdeps/mach/hurd/_G_config.h: Likewise.
829         * sysdeps/generic/_G_config.h: Likewise.
830         * libio/libio.h (__wunderflow, __wuflow, __woverflow): Only
831         prototype if _LIBC or _GLIBCPP_USE_WCHAR_T.
832         (_IO_getwc_unlocked, _IO_putwc_unlocked): Only define
833         if _LIBC or _GLIBCPP_USE_WCHAR_T.
834
835 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
836
837         * sysdeps/posix/posix_fallocate64.c: Undefine
838         __posix_fallocate64_l64 before alias handling.
839         * sysdeps/unix/sysv/linux/posix_fallocate.c: New file.
840         * sysdeps/unix/sysv/linux/posix_fallocate64.c: New file.
841         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate.c: New file.
842         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate64.c: New file.
843
844         * io/tst-posix_fallocate.c: Include <fcntl.h>.
845
846 2007-07-23  Jakub Jelinek  <jakub@redhat.com>
847
848         * locale/programs/ld-collate.c (atwc): New variable.
849         (add_to_tablewc): New toplevel function, moved from collate_output.
850         (collate_output): Remove add_to_tablewc nested function.
851
852         * iconv/iconvconfig.c (hash_table, hash_size): New toplevel vars.
853         (name_insert): New function.
854         (write_output): Remove hash_table and hash_size vars and name_insert
855         nested function.
856
857 2007-07-24  Roland McGrath  <roland@redhat.com>
858
859         * Makerules (install-others-programs-nosubdir): New target.
860         (install-no-libc.a-nosubdir): Depend on it.
861
862         * iconv/Makefile (install-others-programs): Set this instead of
863         install-others.
864         * login/Makefile (install-others-programs): Likewise.
865         * posix/Makefile (install-others-programs): Likewise.
866
867         * Makerules (install-no-libc.a-nosubdir): Clean up conditional
868         dependencies.
869
870 2007-07-23  Ulrich Drepper  <drepper@redhat.com>
871
872         * io/Makefile (tests): Add tst-posix_fallocate.
873         * io/tst-posix_fallocate.c: New file.
874
875         * sysdeps/unix/sysv/linux/kernel-features.h: Define
876         __ASSUME_FALLOCATE.
877
878 2007-07-22  Roland McGrath  <roland@frob.com>
879
880         * hurd/getdport.c: Add missing copyright year update.
881
882         * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU] (O_CLOEXEC): New macro.
883         * hurd/port2fd.c (_hurd_port2fd): Implement O_CLOEXEC.
884
885 2007-07-22  Ulrich Drepper  <drepper@redhat.com>
886
887         * login/utmp_file.c (setutent_file): Use O_CLOEXEC if possible.
888
889         * libio/fileops.c (_IO_new_file_fopen): Recognize 'e' flag and set
890         O_CLOEXEC is needed.
891         * nis/nss_compat/compat-grp.c: Use 'e' flag when opening file.
892         Avoid additional fcntl to set O_CLOEXEC if not needed.
893         * nis/nss_compat/compat-initgroups.c: Likewise.
894         * nis/nss_compat/compat-pwd.c: Likewise.
895         * nis/nss_compat/compat-spwd.c: Likewise.
896
897 2007-07-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
898
899         [BZ #3665]
900         * manual/errno.texi: Change ECANCELED value to 119.
901
902         [BZ #4610]
903         * mach/lock-intern.h: Include <sys/cdefs.h>.
904
905         [BZ #4178]
906         * sysdeps/mach/hurd/sigaction.c (__sigaction): Check ACT != NULL before
907         reading A.
908
909         [BZ #4126]
910         * sysdeps/mach/hurd/sigsuspend.c (sigsuspend_not_cancel): Define alias
911         to __sigsuspend.
912
913         * sysdeps/mach/i386/sysdep.h: Include <dl-sysdep.h> and <tls.h>.
914
915 2006-06-13  Thomas Schwinge  <tschwinge@gnu.org>
916
917         * sysdeps/mach/hurd/tls.h: Change `ASSEMBLER' conditional to
918         `__ASSEMBLER__'.
919         * sysdeps/mach/hurd/i386/tls.h: Likewise.
920
921 2007-07-21  Ulrich Drepper  <drepper@redhat.com>
922
923         * nscd/nscd_helper.c (get_mapping): Use MSG_CMSG_CLOEXEC for
924         descriptor received from nscd.
925
926         * sysdeps/unix/sysv/linux/bits/socket.h: Define MSG_CMSG_CLOEXEC.
927
928         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define O_CLOEXEC.
929         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
930         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
931         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
932         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
933         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
934
935 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
936
937         [BZ #4816]
938         * manual/signal.texi (Non-atomic Example): Make memory var volatile.
939
940         [BZ #4813]
941         * login/forkpty.c (forkpty): Close master and slave fds on
942         fork failure.  Patch by
943         Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>.
944
945 2007-07-18  Jakub Jelinek  <jakub@redhat.com>
946
947         * include/features.h (__USE_ISOC95): New define.
948         * wcsmbs/wchar.h (fwprintf, fwscanf, wprintf, wscanf, swprintf,
949         swscanf, vfwprintf, vwprintf, vswprintf, fwide): Define even
950         for -std=iso9899:199409.
951         * CONFORMANCE: Remove comments about unsupported AMD1.
952
953 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
954
955         * sysdeps/ia64/sched_cpucount.c: New file.
956         * sysdeps/powerpc/sched_cpucount.c: New file.
957
958         * sysdeps/unix/sysv/linux/bits/sched.h (__sched_cpucount): Add
959         __BEGIN_DECLS/__END_DECLS around the prototype.
960         * bits/sched.h (__sched_cpucount): Likewise.  Make second argument
961         pointer to const cpu_set_t.
962
963         * bits/types.h: Don't include stddef.h, don't define __need_size_t.
964         * signal/signal.h <__USE_BSD || __USE_XOPEN_EXTENDED>: Define
965         __need_size_t and include stddef.h.
966         * sysvipc/sys/msg.h: Likewise.
967         * posix/sched.h: Likewise.
968         * hurd/hurd/signal.h (__need_size_t): Define.
969
970         * CONFORMANCE: ctype.h and wctype.h no longer define size_t,
971         neither does signal.h in pedantic ISO C namespaces.  stdio.h
972         no longer defines wint_t or wchar_t.
973
974         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): New function.
975         * debug/vfwprintf_chk.c (__vfwprintf_chk): Use
976         _IO_acquire_lock_clear_flags2 instead of _IO_acquire_lock.
977         * debug/vprintf_chk.c (__vprintf_chk): Likewise.
978         * debug/vwprintf_chk.c (__vwprintf_chk): Likewise.
979         * debug/vfprintf_chk.c (__vfprintf_chk): Likewise.
980         * debug/fwprintf_chk.c (__fwprintf_chk): Likewise.
981         * debug/printf_chk.c (__printf_chk): Likewise.
982         * debug/fprintf_chk.c (__fprintf_chk): Likewise.
983         * debug/wprintf_chk.c (__wprintf_chk): Likewise.
984
985         * sysdeps/pthread/bits/stdio-lock.h (_IO_acquire_lock_clear_flags2):
986         Define.
987
988         * bits/confname.h (_CS_POSIX_V6_WIDTH_RESTRICTED_ENVS): Define.
989         * posix/getconf.c (vars): Add POSIX_V6_WIDTH_RESTRICTED_ENVS.
990
991 2007-07-16  Jakub Jelinek  <jakub@redhat.com>
992
993         [BZ #4792]
994         * stdlib/stdlib.h (realloc): Remove __attribute_malloc__.
995         * malloc/malloc.h (realloc): Likewise.
996
997         * libio/iopopen.c (_IO_new_proc_open): Don't close child_std_end
998         if one of proc_file_chain streams has that fileno.
999         * stdio-common/Makefile (tests): Add tst-popen2.
1000         * stdio-common/tst-popen2.c: New test.
1001
1002 2007-07-14  Jakub Jelinek  <jakub@redhat.com>
1003
1004         * elf/ldconfig.c: Allow GPLv2 or any later version.
1005         * elf/readlib.c: Likewise.
1006         * elf/chroot_canon.c: Likewise.
1007         * elf/cache.c: Likewise.
1008         * nscd/mem.c: Likewise.
1009         * nscd/getpwuid_r.c: Likewise.
1010         * nscd/grpcache.c: Likewise.
1011         * nscd/aicache.c: Likewise.
1012         * nscd/getsrvbynm_r.c: Likewise.
1013         * nscd/nscd.c: Likewise.
1014         * nscd/servicescache.c: Likewise.
1015         * nscd/getsrvbypt_r.c: Likewise.
1016         * nscd/initgrcache.c: Likewise.
1017         * nscd/gethstbyad_r.c: Likewise.
1018         * nscd/gethstbynm2_r.c: Likewise.
1019         * nscd/getgrnam_r.c: Likewise.
1020         * nscd/nscd_setup_thread.c: Likewise.
1021         * nscd/getpwnam_r.c: Likewise.
1022         * nscd/gai.c: Likewise.
1023         * nscd/connections.c: Likewise.
1024         * nscd/dbg_log.c: Likewise.
1025         * nscd/cache.c: Likewise.
1026         * nscd/hstcache.c: Likewise.
1027         * nscd/nscd_conf.c: Likewise.
1028         * nscd/getgrgid_r.c: Likewise.
1029         * nscd/pwdcache.c: Likewise.
1030         * catgets/gencat.c: Likewise.
1031         * locale/programs/linereader.h: Likewise.
1032         * locale/programs/locarchive.c: Likewise.
1033         * locale/programs/ld-paper.c: Likewise.
1034         * locale/programs/locfile-kw.h: Likewise.
1035         * locale/programs/ld-address.c: Likewise.
1036         * locale/programs/xmalloc.c: Likewise.
1037         * locale/programs/ld-time.c: Likewise.
1038         * locale/programs/localedef.c: Likewise.
1039         * locale/programs/simple-hash.c: Likewise.
1040         * locale/programs/xstrdup.c: Likewise.
1041         * locale/programs/ld-numeric.c: Likewise.
1042         * locale/programs/locfile-kw.gperf: Likewise.
1043         * locale/programs/ld-collate.c: Likewise.
1044         * locale/programs/charmap-kw.gperf: Likewise.
1045         * locale/programs/charmap.h: Likewise.
1046         * locale/programs/charmap-kw.h: Likewise.
1047         * locale/programs/config.h: Likewise.
1048         * locale/programs/locfile.c: Likewise.
1049         * locale/programs/ld-ctype.c: Likewise.
1050         * locale/programs/charmap.c: Likewise.
1051         * locale/programs/ld-messages.c: Likewise.
1052         * locale/programs/repertoire.h: Likewise.
1053         * locale/programs/locale.c: Likewise.
1054         * locale/programs/ld-name.c: Likewise.
1055         * locale/programs/linereader.c: Likewise.
1056         * locale/programs/locfile.h: Likewise.
1057         * locale/programs/3level.h: Likewise.
1058         * locale/programs/ld-monetary.c: Likewise.
1059         * locale/programs/ld-measurement.c: Likewise.
1060         * locale/programs/charmap-dir.c: Likewise.
1061         * locale/programs/ld-identification.c: Likewise.
1062         * locale/programs/localedef.h: Likewise.
1063         * locale/programs/charmap-dir.h: Likewise.
1064         * locale/programs/repertoire.c: Likewise.
1065         * locale/programs/simple-hash.h: Likewise.
1066         * locale/programs/ld-telephone.c: Likewise.
1067         * locale/programs/locale-spec.c: Likewise.
1068         * locale/programs/locfile-token.h: Likewise.
1069         * posix/getconf.c: Likewise.
1070         * iconv/dummy-repertoire.c: Likewise.
1071         * iconv/iconv_charmap.c: Likewise.
1072         * iconv/iconvconfig.c: Likewise.
1073         * iconv/iconv_prog.c: Likewise.
1074         * malloc/memusagestat.c: Likewise.
1075         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Likewise.
1076
1077 2007-07-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1078
1079         * sysdeps/sh/bsd-setjmp.S (setjmp): Use correct argument registers.
1080         * sysdeps/sh/bsd-_setjmp.S (_setjmp): Likewise.
1081         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Do correct sanity
1082         check for the first argument.
1083
1084 2007-07-12  Jakub Jelinek  <jakub@redhat.com>
1085
1086         [BZ #4775]
1087         * math/tgmath.h (__tgmath_real_type_sub): Formatting.
1088         (__tgmath_real_type): Fix if expr is const int or other const
1089         qualified integral type.
1090         (__TGMATH_UNARY_REAL_ONLY): Rewritten to avoid using statement
1091         expressions and handle const qualified arguments.
1092         (__TGMATH_BINARY_FIRST_REAL_ONLY, __TGMATH_UNARY_REAL_IMAG,
1093         __TGMATH_UNARY_REAL_IMAG_RET_REAL): Likewise.
1094         (__TGMATH_UNARY_REAL_RET_ONLY): Rewritten to avoid using
1095         statement expressions.
1096         (__TGMATH_BINARY_REAL_ONLY, __TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY,
1097         __TGMATH_TERNARY_REAL_ONLY, __TGMATH_BINARY_REAL_IMAG): Likewise.
1098         (__TGMATH_UNARY_IMAG): Define.
1099         (conj, cproj): Use __TGMATH_UNARY_IMAG macro.
1100         * math/Makefile (tests): Add test-tgmath2.
1101         (CFLAGS-test-tgmath2.c): Add.
1102         * math/test-tgmath.c (fy, dy, ly, fz, dz, lz, count_cdouble,
1103         count_cfloat, count_cldouble): New variables.
1104         (NCCALLS): Define.
1105         (main): Check number of complex calls as well.
1106         (F(compile_test)): Add complex tests and tests with const qualified
1107         arguments.
1108         (y, z, ccount): Define.
1109         (F(cacos), F(casin), F(catan), F(ccos), F(csin), F(ctan), F(cacosh),
1110         F(casinh), F(catanh), F(ccosh), F(csinh), F(ctanh), F(cexp), F(clog),
1111         F(csqrt), F(cpow), F(cabs), F(carg), F(creal), F(cimag), F(conj),
1112         F(cproj)): New functions.
1113         * math/test-tgmath2.c: New test.
1114
1115 2007-07-11  Jakub Jelinek  <jakub@redhat.com>
1116
1117         [BZ #4776]
1118         * elf/dl-load.c (_dl_rtld_di_serinfo): Output / in LD_LIBRARY_PATH,
1119         RPATH etc. as "/" rather than "", don't segfault on empty paths,
1120         instead output ".".
1121         * dlfcn/Makefile (distribute): Add glreflib3.c.
1122         (module-names): Add glreflib3.
1123         ($(objpfx)tst-dlinfo.out): Depend on glreflib3.so rather than
1124         glreflib1.so.
1125         (LDFLAGS_glreflib3.so): New.
1126         * dlfcn/tst-dlinfo.c (do_test): Load glreflib3.so instead of
1127         glreflib1.so.
1128         * dlfcn/glreflib3.c: New file.
1129
1130         * intl/finddomain.c (_nl_find_domain): If _nl_explode_name
1131         returned -1, return NULL.
1132         * intl/explodename.c (_nl_explode_name): Return -1 if
1133         _nl_normalize_codeset failed.
1134
1135 2007-07-07  Steven Munroe  <sjmunroe@us.ibm.com>
1136
1137         * sysdeps/powerpc/powerpc32/power6/memset.S: Update comments.
1138         Specify .machine power6 to get ISA-V2.0 branch hints.  Unroll loops
1139         and avoid branch misspredicts for > 31 bytes memset case.
1140         * sysdeps/powerpc/powerpc64/power6/memset.S: Likewise.
1141         Remove toc ref to __cache_line_size.
1142
1143         * sysdeps/powerpc/powerpc32/power4/memcmp.S: Specify .machine power4
1144         to get ISA-V2.0 branch hints.
1145         * sysdeps/powerpc/powerpc32/power4/memcpy.S: Likewise
1146         * sysdeps/powerpc/powerpc32/power4/memset.S: Likewise
1147         * sysdeps/powerpc/powerpc32/power6/memcpy.S: Likewise.
1148         * sysdeps/powerpc/powerpc64/power4/memcmp.S: Likewise.
1149         * sysdeps/powerpc/powerpc64/power4/memcpy.S: Likewise.
1150         * sysdeps/powerpc/powerpc64/power4/memset.S: Likewise.
1151         Remove toc ref to __cache_line_size.
1152
1153         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S:
1154         Include math_ldbl_opt.h.
1155
1156 2007-07-10  Ulrich Drepper  <drepper@redhat.com>
1157
1158         [BZ #4773]
1159         * time/strptime_l.c (__strptime_internal): Implement greedy
1160         matching of weekday and month names.
1161
1162 2007-07-09  Roland McGrath  <roland@redhat.com>
1163
1164         * elf/elf.h (NT_GNU_ABI_TAG): New macro.
1165         (ELF_NOTE_ABI): Use it.
1166         (NT_GNU_HWCAP, NT_GNU_BUILD_ID): New macros.
1167
1168 2007-07-09  Ulrich Drepper  <drepper@redhat.com>
1169
1170         * sysdeps/x86_64/cacheinfo.c (intel_02_known): Add new entries.
1171         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
1172
1173 2007-07-07  Ulrich Drepper  <drepper@redhat.com>
1174
1175         [BZ #4745]
1176         * stdio-common/vfscanf.c (_IO_vfscanf): Add additional test for EOF
1177         in loop to look for conversion specifier to avoid testing of
1178         wrong errno value.
1179         * stdio-common/Makefile (tests): Add bug18, bug18a, bug19, bug19a.
1180         * stdio-common/bug18.c: New file.
1181         * stdio-common/bug18a.c: New file.
1182         * stdio-common/bug19.c: New file.
1183         * stdio-common/bug19a.c: New file.
1184
1185 2007-07-05  Mike Frysinger  <vapier@gentoo.org>
1186
1187         * Makeconfig ($(common-objpfx)gnu/lib-names.stmp): Use LC_ALL=C when
1188         running awk script.
1189
1190 2007-07-01  Jakub Jelinek  <jakub@redhat.com>
1191
1192         * elf/dl-sysdep.c (_dl_important_hwcaps): Add integer overflow check.
1193         * elf/dl-minimal.c (__libc_memalign): Likewise.  Handle malloc (0).
1194         Return NULL if mmap failed instead of asserting it does not.
1195         (calloc): Check for integer overflow.
1196
1197         * elf/dl-minimal.c (__strtoul_internal): Fix parsing of numbers bigger
1198         than LONG_MAX / 10.
1199
1200 2007-07-03  Jakub Jelinek  <jakub@redhat.com>
1201
1202         [BZ #4702]
1203         * nis/nss-default.c: Include errno.h.
1204         (init): Preserve errno.
1205
1206 2007-07-02  Ulrich Drepper  <drepper@redhat.com>
1207
1208         * sysdeps/unix/sysv/linux/bits/socket.h (PF_UNIX): Update comment.
1209
1210 2007-06-30  Ulrich Drepper  <drepper@redhat.com>
1211
1212         * sysdeps/unix/sysv/linux/bits/socket.h: Add PF_RXRPC and AF_RXRPC.
1213
1214 2007-06-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1215
1216         * sysdeps/unix/sysv/linux/bits/socket.h: Add PF_IUCV and AF_IUCV.
1217
1218 2007-06-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1219
1220         * sysdeps/s390/dl-procinfo.c: New file.
1221         * sysdeps/s390/dl-procinfo.h: New file.
1222         * sysdeps/unix/sysv/linux/s390/dl-procinfo.h: New file.
1223
1224 2007-06-29  Jakub Jelinek  <jakub@redhat.com>
1225
1226         * elf/dl-load.c (open_verify): Find .note.ABI-tag notes even
1227         in PT_NOTE segments with multiple notes.
1228         * elf/readelflib.c (process_elf_file): Likewise.
1229
1230 2007-06-22  Ulrich Drepper  <drepper@redhat.com>
1231
1232         * nis/nis_domain_of.c (__nis_domain_of): Make the code a bit more
1233         ISO C compliant.
1234
1235 2007-06-19  Ulrich Drepper  <drepper@redhat.com>
1236
1237         * elf/dl-close.c (free_mem): Free _dl_scope_free_list.
1238
1239 2007-06-13  Jakub Jelinek  <jakub@redhat.com>
1240
1241         * include/link.h: Don't include rtld-lowlevel.h.
1242         (struct link_map): Remove l_scope_lock.
1243         * sysdeps/generic/ldsodefs.h: Don't include rtld-lowlevel.h.
1244         (_dl_scope_free_list): New field (variable) in _rtld_global.
1245         (DL_LOOKUP_SCOPE_LOCK): Remove.
1246         (_dl_scope_free): New prototype.
1247         * elf/dl-runtime.c (_dl_fixup): Don't use __rtld_mrlock_*lock.
1248         Don't pass DL_LOOKUP_SCOPE_LOCK to _dl_lookup_symbol_x.
1249         (_dl_profile_fixup): Likewise.
1250         * elf/dl-sym.c (do_sym): Likewise.  Use wrapped _dl_lookup_symbol_x
1251         whenever !RTLD_SINGLE_THREAD_P, use THREAD_GSCOPE_SET_FLAG and
1252         THREAD_GSCOPE_RESET_FLAG around it.
1253         * elf/dl-close.c (_dl_close_worker): Don't use
1254         __rtld_mrlock_{change,done}.  Call _dl_scope_free on the old
1255         scope.  Make sure THREAD_GSCOPE_WAIT () happens if any old
1256         scopes were queued or if l_scope_mem has been abandoned.
1257         * elf/dl-open.c (_dl_scope_free): New function.
1258         (dl_open_worker): Use it.  Don't use __rtld_mrlock_{change,done}.
1259         * elf/dl-support.c (_dl_scope_free_list): New variable.
1260         * elf/dl-lookup.c (add_dependency): Remove flags argument.
1261         Remove DL_LOOKUP_SCOPE_LOCK handling.
1262         (_dl_lookup_symbol_x): Adjust caller.  Remove DL_LOOKUP_SCOPE_LOCK
1263         handling.
1264         * elf/dl-object.c (_dl_new_object): Don't use
1265         __rtld_mrlock_initialize.
1266
1267 2007-06-19  Ulrich Drepper  <drepper@redhat.com>
1268
1269         * sysdeps/generic/ldsodefs.h (rtld_global): Reorder some elements
1270         to fill in holes
1271         (rtld_global_ro): Likewise.
1272
1273 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
1274
1275         * elf/dl-addr.c (_dl_addr): Skip PT_LOAD checking if l_contiguous.
1276         Move PT_LOAD checking to...
1277         (_dl_addr_inside_object): ... here, new function.
1278         * elf/dl-sym.c (do_sym): If not l_contiguous,
1279         call _dl_addr_inside_object.
1280         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise.
1281         * dlfcn/dlinfo.c (dlinfo_doit): Likewise.
1282         * elf/dl-open.c (dl_open_worker): Likewise.
1283         (_dl_addr_inside_object): New function if IS_IN_rtld.
1284         * elf/dl-load.c (_dl_map_object_from_fd): Set l_contiguous if no
1285         holes are present or are PROT_NONE protected.
1286         * include/link.h (struct link_map): Add l_contiguous field.
1287         * sysdeps/generic/ldsodefs.h (_dl_addr_inside_object): New prototype.
1288
1289 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
1290             Tomas Janousek  <tjanouse@redhat.com>
1291             Ulrich Drepper  <drepper@redhat.com>
1292
1293         [BZ #4647]
1294         * resolv/res_send.c (send_dg): Remove socket_pf.  Use ipv6_unavail
1295         member in __res_state, only convaddr4to6 if nssocks[ns] is a PF_INET6
1296         socket.
1297         * resolv/resolv.h (__res_state): Add ipv6_unavail member.  Make
1298         unused member a bitmap.
1299         * resolv/res_init.c (__res_vinit): Reset ipv6_unavail if IPv6
1300         servers are configured.
1301
1302 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
1303
1304         * elf/rtld.c (dl_main): Don't call init_tls more than once.
1305
1306 2007-06-17  Andreas Schwab  <schwab@suse.de>
1307
1308         * sysdeps/generic/initfini.c: Tell gcc about the nonstandard sections.
1309
1310 2007-06-16  Andreas Jaeger  <aj@suse.de>
1311
1312         [BZ #4125]
1313         * sysdeps/unix/sysv/linux/sys/ptrace.h
1314         (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK,
1315         PTRACE_O_TRACEVFORK, PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC,
1316         PTRACE_O_TRACEVFORKDONE, PTRACE_O_TRACEEXIT, PTRACE_O_MASK,
1317         PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK, PTRACE_EVENT_CLONE,
1318         PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE, PTRACE_EVENT_EXIT):
1319         Define.
1320         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise.
1321         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise.
1322         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise.
1323         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise.
1324
1325 2007-06-16  Ulrich Drepper  <drepper@redhat.com>
1326
1327         [BZ #4599]
1328         * sysdeps/unix/sysv/linux/check_pf.c (make_request): When
1329         determining whether there are IPv4/IPv6 addresses, ignore loopback
1330         addresses.
1331
1332 2007-06-14 Uros Bizjak <ubizjak@gmail.com>
1333
1334         * soft-fp/soft-fp.h (CMPtype): Define to "int" if undefined.
1335         * soft-fp/eqdf2.c (__eqdf2): Use CMPtype instead of int
1336         as the return type.  Change type of "r" variable to CMPtype.
1337         * soft-fp/eqsf2.c (__eqsf2): Likewise.
1338         * soft-fp/eqtf2.c (__eqtf2): Likewise.
1339         * soft-fp/gedf2.c (__gedf2): Likewise.
1340         * soft-fp/gesf2.c (__gesf2): Likewise.
1341         * soft-fp/getf2.c (__getf2): Likewise.
1342         * soft-fp/ledf2.c (__ledf2): Likewise.
1343         * soft-fp/lesf2.c (__lesf2): Likewise.
1344         * soft-fp/letf2.c (__letf2): Likewise.
1345         * soft-fp/unorddf2 (__unorddf2): Likewise.
1346         * soft-fp/unordsf2 (__unordsf2): Likewise.
1347         * soft-fp/unordtf2 (__unordtf2): Likewise.
1348
1349 2007-06-09  Ulrich Drepper  <drepper@redhat.com>
1350
1351         * elf/do-lookup.h (do_lookup_x): Read r_nlist before r_list and
1352         make sure gcc doesn't mess around with this.
1353
1354 2007-06-08  Ulrich Drepper  <drepper@redhat.com>
1355
1356         * elf/dl-lookup.c (_dl_lookup_symbol_x): Remove use of r_nlist.
1357
1358 2007-06-08  Jakub Jelinek  <jakub@redhat.com>
1359
1360         * elf/dl-close.c (_dl_close_worker): Remove all to be removed
1361         libraries from the global scope at once and call THREAD_GSCOPE_WAIT
1362         at most once per _dl_close_worker.
1363
1364 2007-06-08  Ulrich Drepper  <drepper@redhat.com>
1365
1366         * sysdeps/unix/sysv/linux/bits/sched.h: Make second parameter of
1367         __sched_cpucount as const.
1368         * posix/sched_cpucount.c: Adjust.
1369
1370         * posix/sched_cpucount.c (__sched_cpucount): Allow using special
1371         instruction for counting bits.
1372         * sysdeps/x86_64/sched_cpucount.c: New file.
1373
1374 2007-06-07  Ulrich Drepper  <drepper@redhat.com>
1375
1376         * configure.in: Avoid variable named BASH.
1377         * config.make.in: Likewise.
1378         Patch in part by Mike Frysinger.
1379
1380 2007-06-06  Jakub Jelinek  <jakub@redhat.com>
1381
1382         [BZ #4586]
1383         * sysdeps/i386/ldbl2mpn.c (__mpn_extract_long_double): Treat
1384         pseudo-zeros as zero.
1385         * sysdeps/x86_64/ldbl2mpn.c: New file.
1386         * sysdeps/ia64/ldbl2mpn.c: New file.
1387
1388 2007-06-04  Jakub Jelinek  <jakub@redhat.com>
1389
1390         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Remove
1391         unused ily variable.  Fix nextafterl on +-__LDBL_MAX__ and +-Inf.
1392         Remove unreachable code at the end.
1393
1394 2007-06-01  Steven Munroe  <sjmunroe@us.ibm.com>
1395
1396         * sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c: Correct description of
1397         ldbl-128ibm in comment.
1398         (fpclassifyl): Correct classification of denormals.
1399         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Correct
1400         return value for MIN denormal. Rewrite using long double math too
1401         correctly handle denormals and canonicalize the results.
1402
1403 2007-06-05  Jakub Jelinek  <jakub@redhat.com>
1404
1405         * sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
1406         (__mpn_construct_long_double): Fix conversion where result ought
1407         to be smaller than __LDBL_MIN__, or the low double should be
1408         denormal.  Fix decision where to negate low double - honor round
1409         to even rules.
1410         * stdio-common/tst-sprintf2.c: Include string.h.
1411         (COMPARE_LDBL): Define.
1412         (TEST): Also test whether a string hexadecimal float representation
1413         can be parsed back to the number.
1414         (main): Add a couple of further tests.
1415
1416 2007-06-04  Jakub Jelinek  <jakub@redhat.com>
1417
1418         * sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
1419         (PRINT_FPHEX_LONG_DOUBLE): Fix printing numbers where lower double
1420         is non-zero, but smaller than 2 * __DBL_MIN__.
1421         * stdio-common/tst-sprintf2.c: New test.
1422         * stdio-common/Makefile (tests): Add tst-sprintf2.
1423
1424         * math/test-misc.c (main): Don't run last batch of tests with
1425         IBM long double format.
1426
1427 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
1428
1429         * sysdeps/powerpc/powerpc32/970/fpu/Implies: New file.
1430         * sysdeps/powerpc/powerpc32/power5/fpu/Implies: New file.
1431         * sysdeps/powerpc/powerpc32/power5+/fpu/Implies: New file.
1432         * sysdeps/powerpc/powerpc32/power6/fpu/Implies: New file.
1433         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
1434         * sysdeps/powerpc/powerpc64/970/fpu/Implies: New file.
1435         * sysdeps/powerpc/powerpc64/power5/fpu/Implies: New file.
1436         * sysdeps/powerpc/powerpc64/power5+/fpu/Implies: New file.
1437         * sysdeps/powerpc/powerpc64/power6/fpu/Implies: New file.
1438         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
1439         * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/fpu/Implies: New file.
1440         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/fpu/Implies:
1441         New file.
1442         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/fpu/Implies:
1443         New file.
1444         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/fpu/Implies:
1445         New file.
1446         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/Implies:
1447         New file.
1448         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/fpu/Implies:
1449         New file.
1450         * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/fpu/Implies: New file.
1451         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/fpu/Implies:
1452         New file.
1453         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/fpu/Implies:
1454         New file.
1455         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/fpu/Implies:
1456         New file.
1457         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/Implies:
1458         New file.
1459         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/fpu/Implies:
1460         New file.
1461
1462 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
1463
1464         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: Move.
1465         * sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S: To here.
1466         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: Move.
1467         * sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S: To here.
1468         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: Move.
1469         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: To here.
1470         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: Move.
1471         * sysdeps/powerpc/powerpc32/power4/fpu/s_llroundf.S: To here.
1472
1473 2007-05-22  Steven Munroe  <sjmunroe@us.ibm.com>
1474
1475         * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S
1476         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
1477         * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S
1478         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
1479         * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S
1480         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
1481         * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S
1482         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
1483
1484 2007-05-21  Steven Munroe  <sjmunroe@us.ibm.com>
1485
1486         * sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c: New file.
1487         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: New file.
1488         * sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c: New file.
1489         * sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c: New file.
1490
1491 2007-03-15  Steven Munroe  <sjmunroe@us.ibm.com>
1492
1493         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S
1494         [LONG_DOUBLE_COMPAT]: Add compat_symbol for llrintl@@GLIBC_2_1.
1495
1496 2006-02-13  Steven Munroe  <sjmunroe@us.ibm.com>
1497
1498         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S: New File
1499         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S: New File
1500         * sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S: New File
1501         * sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: New File
1502
1503 2006-10-20  Steven Munroe  <sjmunroe@us.ibm.com>
1504
1505         * sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c: New file.
1506         * sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c: New file.
1507
1508 2006-10-03  Steven Munroe  <sjmunroe@us.ibm.com>
1509
1510         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: New file.
1511         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: New file.
1512
1513         * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: Moved.
1514         * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: Likewise.
1515         * sysdeps/powerpc/powerpc32/power4/fpu/Makefile: To here.
1516         * sysdeps/powerpc/powerpc32/power4/fpu/mpa.c: Likewise.
1517
1518 2006-09-29  Steven Munroe  <sjmunroe@us.ibm.com>
1519
1520         * sysdeps/powerpc/powerpc32/power6x/fpu/s_lrint.S: New file.
1521         * sysdeps/powerpc/powerpc32/power6x/fpu/s_lround.S: New file.
1522         * sysdeps/powerpc/powerpc64/power6x/fpu/s_llrint.S: New file.
1523         * sysdeps/powerpc/powerpc64/power6x/fpu/s_llround.S: New file.
1524
1525 2006-09-28  Steven Munroe  <sjmunroe@us.ibm.com>
1526
1527         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S: New file.
1528         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: New file.
1529         * sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S: New file.
1530         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
1531         * sysdeps/powerpc/powerpc64/power5+/fpu/s_llround.S: New file.
1532         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
1533
1534 2006-08-31  Steven Munroe  <sjmunroe@us.ibm.com>
1535
1536         * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: New file.
1537         * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: New file.
1538         * sysdeps/powerpc/powerpc64/power4/fpu/Makefile: New file.
1539         * sysdeps/powerpc/powerpc64/power4/fpu/mpa.c: New file.
1540
1541 2006-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
1542
1543         * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceil.S: New file.
1544         * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceilf.S: New file.
1545         * sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S: New file.
1546         * sysdeps/powerpc/powerpc32/power5+/fpu/s_floorf.S: New file.
1547         * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S: New file.
1548         * sysdeps/powerpc/powerpc32/power5+/fpu/s_roundf.S: New file.
1549         * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S: New file.
1550         * sysdeps/powerpc/powerpc32/power5+/fpu/s_truncf.S: New file.
1551         * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S: New file.
1552         * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceilf.S: New file.
1553         * sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S: New file.
1554         * sysdeps/powerpc/powerpc64/power5+/fpu/s_floorf.S: New file.
1555         * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S: New file.
1556         * sysdeps/powerpc/powerpc64/power5+/fpu/s_roundf.S: New file.
1557         * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S: New file.
1558         * sysdeps/powerpc/powerpc64/power5+/fpu/s_truncf.S: New file.
1559
1560 2006-03-20  Steven Munroe  <sjmunroe@us.ibm.com>
1561
1562         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: New file.
1563         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: New file.
1564
1565 2007-06-01  Steven Munroe  <sjmunroe@us.ibm.com>
1566
1567         * sysdeps/powerpc/powerpc32/power6/memset.S: New file.
1568         * sysdeps/powerpc/powerpc64/power6/memset.S: New file.
1569
1570 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
1571
1572         * sysdeps/powerpc/powerpc32/970/Implies: New file.
1573         * sysdeps/powerpc/powerpc32/power5/Implies: New file.
1574         * sysdeps/powerpc/powerpc32/power5+/Implies: New file.
1575         * sysdeps/powerpc/powerpc32/power6/Implies: New file.
1576         * sysdeps/powerpc/powerpc32/power6x/Implies: New file.
1577         * sysdeps/powerpc/powerpc64/970/Implies: New file.
1578         * sysdeps/powerpc/powerpc64/power5/Implies: New file.
1579         * sysdeps/powerpc/powerpc64/power5+/Implies: New file.
1580         * sysdeps/powerpc/powerpc64/power6/Implies: New file.
1581         * sysdeps/powerpc/powerpc64/power6x/Implies: New file.
1582
1583 2007-05-21  Steven Munroe  <sjmunroe@us.ibm.com>
1584
1585         * sysdeps/powerpc/powerpc32/power4/memset.S: New file
1586
1587 2007-03-13  Steven Munroe  <sjmunroe@us.ibm.com>
1588
1589         * sysdeps/powerpc/powerpc64/memcpy.S: Improve aligned loop to minimize
1590         branch miss-predicts. Ensure that cache line crossing does not impact
1591         dispatch grouping.
1592
1593 2006-12-13  Steven Munroe  <sjmunroe@us.ibm.com>
1594
1595         * sysdeps/powerpc/powerpc64/power4/memcopy.h: Replace with include
1596         "../../powerpc32/power4/memcopy.h".
1597         * sysdeps/powerpc/powerpc64/power4/wordcopy.c: Replace with include
1598         "../../powerpc32/power4/wordcopy.c".
1599
1600 2006-10-03  Steven Munroe  <sjmunroe@us.ibm.com>
1601
1602         * sysdeps/powerpc/powerpc32/powerpc64/Makefile: Moved.
1603         * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: Likewise.
1604         * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: Likewise.
1605         * sysdeps/powerpc/powerpc32/power4/Makefile: To here.
1606         * sysdeps/powerpc/powerpc32/power4/memcopy.h: Likewise.
1607         * sysdeps/powerpc/powerpc32/power4/wordcopy.c: Likewise.
1608
1609 2006-09-10  Steven Munroe  <sjmunroe@us.ibm.com>
1610
1611         * sysdeps/powerpc/powerpc32/power6/memcpy.S: New file.
1612
1613 2006-08-31  Steven Munroe  <sjmunroe@us.ibm.com>
1614
1615         * sysdeps/powerpc/powerpc32/power6/wordcopy.c: New file.
1616         * sysdeps/powerpc/powerpc32/powerpc64/Makefile: New file.
1617         * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: New file.
1618         * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: New file.
1619         * sysdeps/powerpc/powerpc64/power4/Makefile: New file.
1620         * sysdeps/powerpc/powerpc64/power4/memcopy.h: New file.
1621         * sysdeps/powerpc/powerpc64/power4/wordcopy.c: New file.
1622         * sysdeps/powerpc/powerpc64/power6/wordcopy.c: New file.
1623
1624 2006-07-06  Steven Munroe  <sjmunroe@us.ibm.com>
1625
1626         * sysdeps/powerpc/powerpc64/power6/memcpy.S: New file.
1627
1628 2006-03-20  Steven Munroe  <sjmunroe@us.ibm.com>
1629
1630         * sysdeps/powerpc/powerpc32/power4/memcmp.S: New file.
1631         * sysdeps/powerpc/powerpc32/power4/memcpy.S: New file.
1632         * sysdeps/powerpc/powerpc32/power4/memset.S: New file.
1633         * sysdeps/powerpc/powerpc32/power4/strncmp.S: New file.
1634         * sysdeps/powerpc/powerpc64/power4/memcmp.S: New file.
1635         * sysdeps/powerpc/powerpc64/power4/memcpy.S: New file.
1636         * sysdeps/powerpc/powerpc64/power4/strncmp.S: New file.
1637
1638 2007-05-29  Roland McGrath  <roland@redhat.com>
1639
1640         * po/Makefile (po-sed-cmd): New variable.
1641         (libc.pot.files): Move sed command text in there, avoid \ inside ''.
1642
1643 2007-05-29  Ulrich Drepper  <drepper@redhat.com>
1644
1645         * crypt/md5-crypt.c: Fix comment.
1646
1647         * nscd/nscd_helper.c (get_mapping): Handle short replies instead
1648         of crashing.  When this is the case or if the reply is malformed,
1649         don't try to close the new file descriptor since it does not
1650         exist.
1651         Patch in part by Guillaume Chazarain <guichaz@yahoo.fr>.
1652
1653 2007-05-28  Jakub Jelinek  <jakub@redhat.com>
1654
1655         * sysdeps/unix/sysv/linux/futimes.c (miss_utimensat): Don't define
1656         if __NR_utimensat is not defined.
1657
1658 2007-05-26  Ulrich Drepper  <drepper@redhat.com>
1659
1660         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Include <sysdep.h>.
1661
1662 2007-05-25  Jakub Jelinek  <jakub@redhat.com>
1663
1664         * io/bits/fcntl2.h (__open_2): Add nonnull attribute.
1665         (open): Fix comment typos.  Don't call __open_2 if flags
1666         is a compile time constant without O_CREAT.
1667         (__open64_2): Add nonnull attribute.
1668         (open64): Fix comment typos.  Don't call __open64_2 if flags
1669         is a compile time constant without O_CREAT.
1670         (__openat_2): Add nonnull attribute, fix nonnull attribute
1671         on redirect.
1672         (openat): Fix comment typos.  Don't call __openat_2 if flags
1673         is a compile time constant without O_CREAT.
1674         (__openat64_2): Add nonnull attribute, fix nonnull attribute
1675         on redirect.
1676         (openat64): Fix comment typos.  Don't call __openat64_2 if flags
1677         is a compile time constant without O_CREAT.
1678
1679 2007-05-24  Ulrich Drepper  <drepper@redhat.com>
1680
1681         * Makerules (sysd-rules): Define PTW for ptw-* files.
1682         * Versions: Define GLIBC_2.7 for libc.
1683         * include/stdio.h: Declare __fortify_fail.
1684         * debug/fortify_fail.c: New file.
1685         * debug/Makefile (routines): Add fortify_fail.
1686         * debug/chk_fail.c: Use __fortify_fail.
1687         * debug/stack_chk_fail.c: Likewise.
1688         * io/Versions: Export __open_2, __open64_2, __openat_2, and
1689         __openat64_2 for GLIBC_2.7.
1690         * io/fcntl.h: When compiling with fortification, include bits/fcntl2.h.
1691         * io/open.c: Define *_2 variant of function which checks for O_CREAT
1692         and fails if necessary.
1693         * io/open64.c: Likewise.
1694         * io/openat.c: Likewise.
1695         * io/openat64.c: Likewise.
1696         * sysdeps/unix/sysv/linux/open64.c: Likewise.
1697         * sysdeps/unix/sysv/linux/openat.c: Likewise.
1698         * sysdeps/unix/sysv/linux/openat64.c: Likewise.
1699         * io/bits/fcntl2.h: New file.
1700         * include/fcntl.h: Declare __open_2, __open64_2, __openat_2, and
1701         __openat64_2.
1702         * include/bits/fcntl2.h: New file.
1703         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
1704         Add open_2.
1705         * sysdeps/unix/sysv/linux/open_2.c: New file.
1706
1707 2007-05-21  Ulrich Drepper  <drepper@redhat.com>
1708
1709         * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Pass correct value
1710         as second parameter to handle_intel.
1711
1712         * nscd/aicache.c (addhstaiX): If reported TTL is zero don't cache
1713         the entry.
1714
1715         * sysdeps/unix/sysv/linux/x86_64/sysconf.c: Move cache information
1716         handling to ...
1717         * sysdeps/x86_64/cacheinfo.c: ... here.  New file.
1718         * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add
1719         cacheinfo.
1720         * sysdeps/x86_64/memcpy.S: Complete rewrite.
1721         * sysdeps/x86_64/mempcpy.S: Adjust appropriately.
1722         Patch by Evandro Menezes <evandro.menezes@amd.com>.
1723
1724         * sysdeps/unix/sysv/linux/i386/epoll_pwait.S: New file.
1725
1726 2007-05-21  Jakub Jelinek  <jakub@redhat.com>
1727
1728         [BZ #4525]
1729         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add epoll_pwait.
1730         * sysdeps/unix/sysv/linux/epoll_pwait.c: New file.
1731         * sysdeps/unix/sysv/linux/syscalls.list (epoll_pwait): Remove.
1732
1733         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (epoll_pwait): Declare.
1734
1735         [BZ #4514]
1736         * stdio-common/vfprintf.c (vfprintf): Don't shadow workstart variable,
1737         reinitialize workend at the start of each do_positional format spec
1738         loop, free workstart before do_positional loops.
1739         (printf_unknown): Fix size of work_buffer.
1740         * stdio-common/tst-sprintf.c (main): Add 3 new testcases.
1741
1742         * malloc/hooks.c (MALLOC_STATE_VERSION): Bump.
1743         (public_sET_STATe): If ms->version < 3, put all chunks into
1744         unsorted chunks and clear {fd,bk}_nextsize fields of largebin
1745         chunks.
1746
1747         * malloc/malloc.c [MALLOC_DEBUG]: Revert 2007-05-13 changes.
1748         * malloc/hooks.c: Likewise.
1749         * malloc/arena.c: Likewise.
1750         * malloc/malloc.c (do_check_malloc_state): Don't assert
1751         n_mmaps is not greater than n_mmaps_max.  This removes the need
1752         for the previous change.
1753
1754         * malloc/Makefile (CFLAGS-malloc.c): Revert accidental
1755         2007-05-07 commit.
1756
1757 2007-05-19  Ulrich Drepper  <drepper@redhat.com>
1758
1759         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PRIVATE_FUTEX):
1760         Define for kernel >= 2.6.22.
1761
1762 2007-05-18  Ulrich Drepper  <drepper@redhat.com>
1763
1764         * elf/dl-close.c (_dl_close_worker): When removing object from
1765         global scope, wait for all lookups to finish afterwards.
1766         * elf/dl-open.c (add_to_global): When global scope array must
1767         grow, allocate a new one and free old array only after all
1768         lookups finish.
1769         * elf/dl-runtime.c (_dl_fixup): Protect using global scope.
1770         (_dl_lookup_symbol_x): Likewise.
1771         * elf/dl-support.c: Define _dl_wait_lookup_done.
1772         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add
1773         _dl_wait_lookup_done.
1774
1775         * malloc/malloc.c (do_check_chunk): Correct check for mmaped block
1776         not overlapping with arena.
1777
1778         * malloc/mcheck.c (reallochook): If size==0, free the block.
1779
1780         * rt/tst-shm.c: Use fstat64 instead of fstat.
1781
1782         * sysdeps/unix/sysv/linux/i386/sync_file_range.S: Fix case where
1783         __NR_sync_file_range is not defined.
1784
1785 2007-05-17  Ulrich Drepper  <drepper@redhat.com>
1786
1787         Dummy files to prevent stub versions from being used.
1788         * sysdeps/x86_64/fpu/k_cosl.c: New file.
1789         * sysdeps/x86_64/fpu/k_rem_pio2l.c: New file.
1790         * sysdeps/x86_64/fpu/k_sinl.c: New file.
1791         * sysdeps/x86_64/fpu/k_tanl.c: New file.
1792
1793         * version.h (VERSION): Set to 2.6.90.
1794
1795 2007-05-14  Ulrich Drepper  <drepper@redhat.com>
1796
1797         * version.h (VERSION): Define to 2.6.
1798         * include/features.h (__GLIBC_MINOR__): Define to 6.
1799
1800         * malloc/malloc.c: Use all small bin slots on 64-bit archs.
1801
1802         * malloc/malloc.c (largebin_index): Really have 32 buckets with 64
1803         sizes.
1804
1805 2007-05-13  Ulrich Drepper  <drepper@redhat.com>
1806
1807         * malloc/malloc.c [MALLOC_DEBUG]: Keep track of current maximum
1808         number of mmaps.  n_mmaps_max is the target.
1809         * malloc/hooks.c: Likewise.
1810         * malloc/arena.c: Likewise.
1811
1812 2007-05-12  Andreas Jaeger  <aj@suse.de>
1813
1814         * sysdeps/unix/sysv/linux/tst-getcpu.c: Include <unistd.h> for
1815         getpid.
1816
1817 2007-05-11  Ulrich Drepper  <drepper@redhat.com>
1818
1819         * elf/dl-close.c (_dl_close_worker): Help gcc to optimize by
1820         adding new variables.
1821
1822         * elf/dl-open.c (add_to_global): Introduce variable ns to help gcc
1823         optimize.  Completely extend global scope array before making the
1824         new entries visible.
1825
1826 2007-05-10  Ulrich Drepper  <drepper@redhat.com>
1827
1828         * sysdeps/unix/sysv/linux/tst-getcpu.c: New file.
1829         * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (tests): Add
1830         tst-getcpu.
1831
1832         * include/link.h: Move l_version and l_nversion members around to
1833         fill gaps.
1834
1835         * scripts/check-c++-types.sh: Don't use -fnu89-inline option.
1836
1837         * sysdeps/unix/sysv/linux/sched_setaffinity.c
1838         (__sched_setaffinity_new): If syscall was successful and
1839         RESET_VGETCPU_CACHE is defined, use it before returning.
1840         * sysdeps/unix/sysv/linux/x86_64/sched_setaffinity.c: New file.
1841
1842         * io/sys/stat.h: Make sure struct timespec is defined for
1843         __USE_ATFILE.
1844
1845         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Define UTIME_NOW and
1846         UTIME_OMIT.
1847         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
1848         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
1849         * sysdeps/unix/sysv/linux/alpha/bits/stat.h: Likewise.
1850         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
1851         * sysdeps/unix/sysv/linux/bits/stat.h: Likewise.
1852         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
1853         * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_UTIMENSAT.
1854         * io/sys/stat.h: Declare utimensat, futimens.
1855         * io/utimensat.c: New file.
1856         * io/futimens.c: New file.
1857         * sysdeps/unix/sysv/linux/utimensat.c: New file.
1858         * sysdeps/unix/sysv/linux/futimens.c: New file.
1859         * io/Makefile (routines): Add utimensat, futimens.
1860         * io/Versions: Add utimensat, futimens to GLIBC_2.6.
1861         * sysdeps/unix/sysv/linux/lutimes.c: New file.
1862         * sysdeps/unix/sysv/linux/futimes.c: Use utimensat syscall if
1863         available.
1864
1865         * include/sys/cdefs.h: Redefine __nonnull so that test for
1866         incorrect parameters in the libc code itself are not omitted.
1867
1868 2007-05-09  Jakub Jelinek  <jakub@redhat.com>
1869
1870         * sysdeps/ia64/fpu/fraiseexcpt.c (feraiseexcept): Don't raise overflow
1871         exception in addition to inexact when asked to raise only FE_INEXACT.
1872
1873         [BZ #3427]
1874         * sysdeps/s390/fpu/feholdexcpt.c (feholdexcept): Don't clear exceptions
1875         in *envp.
1876
1877 2007-05-07  Ulrich Drepper  <drepper@redhat.com>
1878
1879         [BZ #4403]
1880         * string/strfry.c (strfry): Make result more random.
1881
1882 2007-05-07  Richard Henderson  <rth@redhat.com>
1883
1884         * sysdeps/alpha/fpu/bits/mathinline.h (__isnanl): Don't define
1885         if __NO_LONG_DOUBLE_MATH.
1886         * sysdeps/unix/sysv/linux/alpha/ioperm.c: If BWX insns not
1887         available in the compiler, add .arch directive to the assembly.
1888
1889 2007-05-07  Jakub Jelinek  <jakub@redhat.com>
1890
1891         * sysdeps/alpha/fpu/s_nearbyint.c (nearbyintl): Fix version on
1892         compat_symbol to GLIBC_2_1.
1893         * sysdeps/alpha/fpu/s_fmin.S (fminl): Likewise.
1894         * sysdeps/alpha/fpu/s_trunc.c (truncl): Likewise.
1895         * sysdeps/alpha/fpu/s_fmax.S (fmaxl): Likewise.
1896         * sysdeps/alpha/fpu/s_lrint.c (lrintl, llrintl): Likewise.
1897         * sysdeps/alpha/fpu/s_lround.c (lroundl, llroundl): Likewise.
1898         * sysdeps/alpha/fpu/s_round.c (roundl): Likewise.
1899         * sysdeps/alpha/fpu/s_isnan.c (isnanl): Provide compat_symbol in
1900         libc, not libm.
1901         (__isnanl): New compat_symbol.
1902
1903 2007-05-07  Ulrich Drepper  <drepper@redhat.com>
1904             Jakub Jelinek  <jakub@redhat.com>
1905
1906         * malloc/arena.c (heap_info): Add mprotect_size field, adjust pad.
1907         (new_heap): Initialize mprotect_size.
1908         (grow_heap): When growing, only mprotect from mprotect_size till
1909         new_size if mprotect_size is smaller.  When shrinking, use PROT_NONE
1910         MMAP for __libc_enable_secure only, otherwise use MADV_DONTNEED.
1911
1912 2007-04-30  Steven Munroe  <sjmunroe@us.ibm.com>
1913             Peter Bergner  <bergner@us.ibm.com>
1914
1915         * sysdeps/powerpc/bits/fenv.h: Declare __fe_mask_env extern.
1916         Define FE_NOMASK_ENV as FE_EANBLED_ENV.  Define FE_MASK_ENV.
1917         * sysdeps/powerpc/fpu/Makefile: Add fe_mask to libm-support.
1918         * sysdeps/powerpc/fpu/fe_mask.c: New file.
1919         * sysdeps/powerpc/fpu/fe_nomask.c: Correct comment.
1920         * sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept):
1921         Call __fe_mask_env() if all FP exceptions disabled.
1922         * sysdeps/powerpc/fpu/feholdexcpt.c (feholdexcept): Copy high 32-bits
1923         from old FPSCR to new fenv to propagate DFP rounding modes.
1924         Call __fe_mask_env() if FP exceptions previously enabled.
1925         * sysdeps/powerpc/fpu/fesetenv.c (fesetenv): Change mask to merge
1926         exceptions from env.  Use __fe_nomask_env() or __fe_mask_env() when
1927         transitioning from all exceptions disabled to any exception enabled
1928         or visa versa.
1929         * sysdeps/powerpc/fpu/feupdateenv.c (__feupdateenv): Change mask to
1930         merge exceptions from env.  Call __fe_nomask_env or __fe_mask_env
1931         when transitioning from all exceptions disabled to any exception
1932         enabled or visa versa.
1933         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Moved to...
1934         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: ...here.
1935         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: Moved to...
1936         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: ...here.
1937         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_mask.c: New file.
1938         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c: New file.
1939
1940 2007-05-06  Ulrich Drepper  <drepper@redhat.com>
1941
1942         [BZ #4465]
1943         * posix/unistd.h: Remove __THROW from fdatasync.
1944
1945 2007-05-06  Mike Frysinger  <vapier@gentoo.org>
1946
1947         [BZ #4465]
1948         * sysdeps/unix/sysv/linux/syscalls.list (fdatasync): Add "C" to args.
1949
1950 2007-05-06  Ulrich Drepper  <drepper@redhat.com>
1951
1952         * stdio-common/vfprintf.c (process_string_arg): Optimize
1953         ridiculous precision in wide char code printing multi-byte string.
1954         Reported by Jim Meyering <jim@meyering.net>.
1955
1956         [BZ #4131]
1957         * elf/dl-addr.c (_dl_addr): Compare address with actual segment
1958         boundaries to work around systems with overlapping binary loading.
1959         Based on a patch by Suzuki <suzuki@in.ibm.com>.
1960
1961 2007-05-04  Ulrich Drepper  <drepper@redhat.com>
1962
1963         * stdio-common/vfprintf.c (process_string_arg): Adjust call to
1964         __mbsnrtowcs after last change.
1965
1966         * locale/programs/linereader.c (get_symname): Fix adding final NUL.
1967         (get_ident): Likewise.
1968
1969 2007-05-03  Jakub Jelinek  <jakub@redhat.com>
1970
1971         * soft-fp/op-common.h (FP_TRUNC): Replace raising of FP_EX_INEXACT
1972         with setting the sticky bit.
1973         * math/test-misc.c (main): Add more truncation tests.
1974
1975 2007-04-14  Uros Bizjak  <ubizjak@gmail.com>
1976
1977         * soft-fp/floatunsidf.c (__floatunsidf): Use DFtype instead of
1978         double in the function declaration.
1979         * soft-fp/floatundidf.c (__floatundidf): Use DFtype instead of
1980         double in the function declaration.
1981         * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
1982         float in the function declaration.
1983         * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
1984         float in the function declaration.
1985
1986         * soft-fp/extended.h (FP_UNPACK_RAW_E): Do not increase X##_e for
1987         denormal operands.  Do not generate FP_EX_DENORM exception.
1988         (FP_UNPACK_RAW_EP): Ditto.
1989         (FP_UNPACK_SEMIRAW_E): Use FP_UNPACK_RAW_E instead of
1990         undefined _FP_UNPACK_RAW_E.
1991         (FP_UNPACK_SEMIRAW_EP): Use FP_UNPACK_RAW_EP instead of
1992         undefined _FP_UNPACK_RAW_EP.
1993         (FP_PACK_SEMIRAW_E): Use FP_PACK_RAW_E instead of
1994         undefined _FP_PACK_RAW_E.
1995         (FP_PACK_SEMIRAW_EP): Use FP_PACK_RAW_EP instead of
1996         undefined _FP_PACK_RAW_EP.
1997
1998         * soft-fp/op-2.h (_FP_FRAC_COPY_2_2): Define as alias to
1999         _FP_FRAC_COPY_2.
2000         * soft-fp/op-4.h (_FP_FRAC_COPY_2_2): Define as alias to
2001         _FP_FRAC_COPY_4.
2002
2003 2007-04-16  Uros Bizjak  <ubizjak@gmail.com>
2004             Jakub Jelinek  <jakub@redhat.com>
2005
2006         * soft-fp/op-common.h (FP_EXTEND): Do not abort when
2007         _FP_EXPBIAS_##dfs == _FP_EXPBIAS_##sfs.  Handle denormals for
2008         this case.
2009         * soft-fp/op-common.h (FP_TRUNC): Ditto.
2010
2011 2007-05-03  Jakub Jelinek  <jakub@redhat.com>
2012
2013         * math/test-misc.c (main): Add tests for rounding long double
2014         values close to smallest double denormalized value to double.
2015
2016 2007-04-30  Joseph Myers  <joseph@codesourcery.com>
2017
2018         * soft-fp/op-common.h (FP_TRUNC): Correct off-by-one error in
2019         condition for truncating to 0.  Set sticky bit for such
2020         truncation.
2021
2022 2007-05-02  Jakub Jelinek  <jakub@redhat.com>
2023
2024         * stdio-common/vfprintf.c (process_string_arg): Use a VLA rather than
2025         fixed length array for ignore.
2026
2027 2007-04-30  Ulrich Drepper  <drepper@redhat.com>
2028
2029         [BZ #4438]
2030         * stdio-common/vfprintf.c (process_string_arg): Don't overflow the
2031         stack for large precisions.
2032         * stdio-common/test-vfprintf.c (main): Add test for large
2033         precision.
2034
2035 2007-04-30  Jakub Jelinek  <jakub@redhat.com>
2036
2037         * stdio-common/printf_fp.c (___printf_fp): Don't print negative sign
2038         for exponent 0.
2039         * stdio-common/tfformat.c (sprint_doubles): Add a new test.
2040
2041         [BZ #4439]
2042         * resolv/inet_ntop.c (inet_ntop4): Take terminating '\0' into
2043         account in the size check.
2044         * resolv/tst-inet_ntop.c: New test.
2045         * resolv/Makefile (tests): Add tst-inet_ntop.
2046
2047 2007-04-30  Ulrich Drepper  <drepper@redhat.com>
2048             Jakub Jelinek  <jakub@redhat.com>
2049
2050         [BZ #4349]
2051         * malloc/malloc.c: Keep separate list for first blocks on the bin
2052         lists with a given size.  This helps skipping over list elements
2053         we know won't fit in two places.
2054         Inspired by a patch by Tomash Brechko <tomash.brechko@gmail.com>.
2055
2056 2007-04-28  Ulrich Drepper  <drepper@redhat.com>
2057
2058         [BZ #4102]
2059         * sysdeps/posix/getaddrinfo.c (default_labels): Assign separate
2060         label to Teredo tunnel addresses 2001://32.
2061
2062 2007-04-27  Ulrich Drepper  <drepper@redhat.com>
2063
2064         * locale/programs/ld-collate.c (collate_read): Allow order_start
2065         after copy.
2066
2067         * locale/programs/ld-collate.c (collate_read): Fix printing of
2068         error message.
2069
2070         [BZ #3213]
2071         * locale/C-translit.h.in: Add entry for U2044.
2072
2073         [BZ #4342]
2074         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Allow
2075         hexa-decimal floats without exponent.
2076         * stdio-common/tstscanf.c (main): Adjust Test 8 test for success.
2077
2078 2007-04-25  Ulrich Drepper  <drepper@redhat.com>
2079
2080         * sysdeps/unix/sysv/linux/bits/sched.h: Declare sched_getcpu.
2081         * sysdeps/unix/sysv/linux/sched_getcpu.c: New file.
2082         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: New file.
2083         * sysdeps/unix/sysv/linux/Versions: Export sched_getcpu for
2084         GLIBC_2.6.
2085         * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (sysdep_routines):
2086         Add sched_getcpu.
2087
2088 2007-04-25  Jakub Jelinek  <jakub@redhat.com>
2089
2090         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Return -1 instead
2091         of 0 after the out_fail label.
2092
2093 2007-04-25  Ulrich Drepper  <drepper@redhat.com>
2094
2095         [BZ #4406]
2096         * iconv/gconv_charset.h (strip): Allow ':'.
2097         * iconv/iconv_open.c (iconv_open): Adjust comment.
2098
2099 2007-04-25  Jakub Jelinek  <jakub@redhat.com>
2100
2101         * libio/bits/stdio.h (fgetc_unlocked): Add extern inline optimized
2102         version.
2103
2104 2007-04-23  Jakub Jelinek  <jakub@redhat.com>
2105
2106         [BZ #4381]
2107         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Ensure sufficient
2108         alignment of buffer and tmp_buffer.
2109         * nis/nss_nis/nis-hosts.c (internal_nis_gethostent_r,
2110         internal_gethostbyname2_r, _nss_nis_gethostbyaddr_r): Ensure sufficient
2111         alignment of buffer.
2112         * resolv/nss_dns/dns-hosts.c (getanswer_r): Likewise.  Handle buflen
2113         bigger than INT_MAX.
2114         * resolv/nss_dns/dns-network.c (getanswer_r): Likewise.  Add errnop and
2115         h_errnop arguments.  Fail if buflen is too small.
2116         (_nss_dns_getnetbyname_r, _nss_dns_getnetbyaddr_r): Adjust callers.
2117
2118 2007-04-23  Jakub Jelinek  <jakub@redhat.com>
2119
2120         [BZ #4405]
2121         * iconvdata/gconv-modules (E13B): Add a missing slash to the alias
2122         name.  Patch by Aurelien Jarno <aurelien@aurel32.net>.
2123
2124 2007-04-22  Roland McGrath  <roland@redhat.com>
2125
2126         * elf/elf.h (NT_PRXFPREG): New macro.
2127
2128 2007-04-19  Andreas Jaeger  <aj@suse.de>
2129
2130         [BZ #3905]
2131         * bits/in.h (IPV6_ROUTER_ALERT, IPV6_MTU_DISCOVER, IPV6_MTU,
2132         IPV6_RECVERR, IPV6_V6ONLY, IPV6_JOIN_ANYCAST, IPV6_LEAVE_ANYCAST):
2133         Added.
2134
2135 2007-04-19  Ulrich Drepper  <drepper@redhat.com>
2136
2137         * include/sys/mman.h: Mark madvise hidden.
2138         * misc/madvise.c: Add libc_hidden_def.
2139
2140 2007-04-06  Jakub Jelinek  <jakub@redhat.com>
2141
2142         * nis/nis_domain_of.c (__nis_domain_of): New function.
2143         * include/rpcsvc/nislib.h (__nis_domain_of): New prototype.
2144         * nis/nis_lookup.c (nis_lookup): Use __nis_domain_of.
2145         * nis/nis_call.c (rec_dirsearch): Likewise.
2146         (first_shoot): Likewise.  Remove search_parent_first argument.
2147         (struct nis_server_cache): Rename search_parent_first field
2148         to search_parent.
2149         (nis_server_cache_search, nis_server_cache_add): Rename
2150         search_parent_first argument to search_parent.
2151         (__nisfind_server): Likewise.  If search_parent, call
2152         __nis_domain_of.
2153
2154 2007-04-18  Ulrich Drepper  <drepper@redhat.com>
2155
2156         * sysdeps/posix/getaddrinfo.c: Remove commented-out code.
2157
2158 2007-04-17  Ulrich Drepper  <drepper@redhat.com>
2159
2160         [BZ #4368]
2161         * stdlib/stdlib.h: Remove obsolete part of comment for realpath.
2162
2163 2007-04-16  Ulrich Drepper  <drepper@redhat.com>
2164
2165         [BZ #4364]
2166         * posix/unistd.h (_XOPEN_VERSION): Define appropriately for SUSv3.
2167
2168 2007-04-15  Jakub Jelinek  <jakub@redhat.com>
2169
2170         * locale/programs/locarchive.c (INITIAL_NUM_NAMES,
2171         INITIAL_SIZE_STRINGS, INITIAL_NUM_LOCREC): Update to accomodate
2172         current number of locales in SUPPORTED.
2173         (create_archive): Initialize serial.
2174         (enlarge_archive): Preserve aliases rather than duplicating
2175         their locrecs.
2176
2177 2007-04-13  Jakub Jelinek  <jakub@redhat.com>
2178
2179         * libio/genops.c (_IO_default_finish): Call _IO_lock_fini
2180         after _IO_un_link, not before it.
2181
2182         * stdio-common/printf_fp.c (___printf_fp): Fix exponent -4
2183         special case handling when wcp == wstartp + 1.  Fix a comment typo.
2184         * stdio-common/tfformat.c (sprint_doubles): Add a new testcase.
2185
2186 2007-03-30  Jakub Jelinek  <jakub@redhat.com>
2187
2188         * libio/libio.h (__underflow, __uflow, __overflow, __wunderflow,
2189         __wuflow, __woverflow, _IO_getc, _IO_putc, _IO_peekc_locked, _IO_padn,
2190         _IO_sgetn, _IO_seekoff, _IO_seekpos, _IO_getwc, _IO_putwc, _IO_wpadn):
2191         Remove __THROW.
2192         * libio/fileops.c (new_do_write, _IO_file_xsgetn_mmap,
2193         _IO_file_xsgetn_maybe_mmap): Likewise.
2194         * libio/oldfileops.c (old_do_write): Likewise.
2195         * libio/libioP.h (_IO_switch_to_get_mode, _IO_switch_to_wget_mode,
2196         _IO_init_marker, _IO_init_wmarker, _IO_default_uflow,
2197         _IO_wdefault_uflow, _IO_default_setbuf, _IO_default_seekpos,
2198         _IO_do_write, _IO_new_do_write, _IO_old_do_write, _IO_wdo_write,
2199         _IO_flush_all_lockp, _IO_flush_all, _IO_cleanup,
2200         _IO_flush_all_linebuffered, _IO_new_fgetpos, _IO_old_fgetpos,
2201         _IO_new_fsetpos, _IO_old_fsetpos, _IO_new_fgetpos64,
2202         _IO_old_fgetpos64, _IO_new_fsetpos64, _IO_old_fsetpos64,
2203         _IO_file_setbuf, _IO_file_seekoff, _IO_file_xsputn, _IO_file_xsgetn,
2204         _IO_file_underflow, _IO_file_underflow_mmap,
2205         _IO_file_underflow_maybe_mmap, _IO_file_overflow, _IO_file_attach,
2206         _IO_file_open, _IO_file_fopen, _IO_file_write, _IO_file_read,
2207         _IO_file_sync, _IO_file_close_it, _IO_file_finish,
2208         _IO_new_file_attach, _IO_new_file_close_it, _IO_new_file_finish,
2209         _IO_new_file_fopen, _IO_new_file_setbuf, _IO_file_setbuf_mmap,
2210         _IO_new_file_sync, _IO_new_file_underflow, _IO_new_file_overflow,
2211         _IO_new_file_seekoff, _IO_new_file_write, _IO_new_file_xsputn,
2212         _IO_old_file_setbuf, _IO_old_file_seekoff, _IO_old_file_xsputn,
2213         _IO_old_file_underflow, _IO_old_file_overflow, _IO_old_file_attach,
2214         _IO_old_file_fopen, _IO_old_file_write, _IO_old_file_sync,
2215         _IO_old_file_close_it, _IO_old_file_finish, _IO_wfile_xsputn,
2216         _IO_wfile_setbuf, _IO_wfile_sync, _IO_wfile_underflow,
2217         _IO_wfile_overflow, _IO_wfile_seekoff, _IO_old_proc_open,
2218         _IO_old_proc_close, _IO_getdelim, _IO_flush_all_internal,
2219         _IO_adjust_column_internal, _IO_default_uflow_internal,
2220         _IO_default_xsgetn_internal, _IO_wdefault_xsputn_internal,
2221         _IO_wdefault_xsgetn_internal, _IO_wdefault_uflow_internal,
2222         _IO_file_setbuf_internal, _IO_file_seekoff_internal,
2223         _IO_file_xsputn_internal, _IO_file_xsgetn_internal,
2224         _IO_file_close_it_internal, _IO_file_underflow_internal,
2225         _IO_file_overflow_internal, _IO_file_attach_internal,
2226         _IO_file_fopen_internal, _IO_file_sync_internal,
2227         _IO_file_finish_internal, _IO_wfile_xsputn_internal,
2228         _IO_wfile_seekoff_internal, _IO_wfile_sync_internal,
2229         _IO_switch_to_wget_mode_internal, _IO_padn_internal,
2230         _IO_switch_to_get_mode_internal, _IO_seekoff_unlocked,
2231         _IO_seekpos_unlocked): Likewise.
2232         (_IO_strtod, _IO_dtoa, _IO_outfloat, _IO_read, _IO_write,
2233         _IO_lseek, _IO_close, _IO_fstat): Remove unused prototypes.
2234
2235 2007-04-16  Jakub Jelinek  <jakub@redhat.com>
2236
2237         * locale/programs/locarchive.c (show_archive_content): Fix sizeof
2238         argument in xmalloc size computation.
2239
2240 2007-04-01  Jakub Jelinek  <jakub@redhat.com>
2241
2242         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (__nextafterl): Use
2243         math_opt_barrier and math_force_eval macros.
2244
2245 2007-03-27  Jakub Jelinek  <jakub@redhat.com>
2246
2247         [BZ #3306]
2248         * math/math_private.h (math_opt_barrier, math_force_eval): Define.
2249         * sysdeps/i386/fpu/math_private.h: New file.
2250         * sysdeps/x86_64/fpu/math_private.h: New file.
2251         * math/s_nexttowardf.c (__nexttowardf): Use math_opt_barrier and
2252         math_force_eval macros.  Use "+m" constraint on asm rather than
2253         "=m" and "m".
2254         * math/s_nextafter.c (__nextafter): Likewise.
2255         * sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c (__nexttoward):
2256         Likewise.
2257         * sysdeps/ieee754/flt-32/s_nextafterf.c (__nextafterf): Likewise.
2258         * sysdeps/ieee754/ldbl-128/s_nexttoward.c (__nexttoward): Likewise.
2259         * sysdeps/ieee754/ldbl-96/s_nexttoward.c (__nexttoward): Likewise.
2260         * sysdeps/i386/fpu/s_nextafterl.c (__nextafterl): Use
2261         math_opt_barrier and math_force_eval macros.
2262         * sysdeps/ieee754/ldbl-128/s_nextafterl.c (__nextafterl): Likewise.
2263         * sysdeps/ieee754/ldbl-96/s_nextafterl.c (__nextafterl): Likewise.
2264         * sysdeps/i386/fpu/s_nexttoward.c: Include float.h.
2265         (__nexttoward): Use math_opt_barrier and
2266         math_force_eval macros.  Use "+m" constraint on asm rather than
2267         "=m" and "m".  Only use asm to force double result if
2268         FLT_EVAL_METHOD is 2.
2269         * sysdeps/i386/fpu/s_nexttowardf.c: Include float.h.
2270         (__nexttowardf): Use math_opt_barrier and
2271         math_force_eval macros.  Use "+m" constraint on asm rather than
2272         "=m" and "m".  Only use asm to force double result if
2273         FLT_EVAL_METHOD is not 0.
2274         * sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c: Include float.h.
2275         (__nexttowardf): Use math_opt_barrier and
2276         math_force_eval macros.  If FLT_EVAL_METHOD is not 0, force
2277         x to float using asm.
2278         * sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c: Include float.h.
2279         (__nldbl_nexttowardf): Use math_opt_barrier and
2280         math_force_eval macros.  If FLT_EVAL_METHOD is not 0, force
2281         x to float using asm.
2282         * sysdeps/ieee754/ldbl-96/s_nexttowardf.c: Include float.h.
2283         (__nexttowardf): Use math_opt_barrier and math_force_eval
2284         macros.  If FLT_EVAL_METHOD is not 0, force x to float using asm.
2285         * math/bug-nextafter.c (zero, inf): New variables.
2286         (main): Add new tests.
2287         * math/bug-nexttoward.c (zero, inf): New variables.
2288         (main): Add new tests.
2289
2290 2007-03-22  Jakub Jelinek  <jakub@redhat.com>
2291
2292         [BZ #3427]
2293         * sysdeps/x86_64/fpu/feholdexcpt.c (feholdexcept): Clear all
2294         exceptions both in SW and MXCSR.
2295         * sysdeps/x86_64/fpu/feupdateenv.c: New file.
2296         * sysdeps/x86_64/fpu/feenablxcpt.c (feenableexcept): Remove dead code.
2297         * sysdeps/x86_64/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
2298         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
2299         in MXCSR if SSE is available.
2300         * sysdeps/i386/fpu/feupdateenv.c: Include unistd.h, dl-procinfo.h
2301         and ldsodefs.h.
2302         (__feupdateenv): Query exceptions also from MXCSR if SSE is available.
2303         Fix comment typo.
2304         * sysdeps/ia64/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions.
2305         Return 0 rather than 1.
2306         * sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Fix comment typo.
2307         Remove incorrect part of a comment.  Fix argument to feraiseexcept.
2308         * math/test-fenv.c (feholdexcept_tests): New function.
2309         (main): Call it.
2310
2311 2007-01-05  Richard B. Kreckel  <kreckel@ginac.de>
2312
2313         [BZ #3427]
2314         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
2315         in SW.
2316
2317 2007-04-13  Jakub Jelinek  <jakub@redhat.com>
2318
2319         [BZ #4344]
2320         * elf/ldconfig.c (search_dir): Fix 2 off-by-2 errors.
2321         Reported by David Anderson <davea42@earthlink.net>.
2322
2323 2007-04-07  Ulrich Drepper  <drepper@redhat.com>
2324
2325         * posix/sys/wait.h: Remove unnecessary forward declaration.
2326
2327 2007-04-05  Jakub Jelinek  <jakub@redhat.com>
2328
2329         * nis/nis_call.c (__nisfind_server): Replace (*dir)->do_servers
2330         with obj->do_servers after first_shoot.
2331
2332 2007-04-03  Ulrich Drepper  <drepper@redhat.com>
2333
2334         * posix/Makefile (routines): Add sched_cpucount.
2335         (tests): Add tst-cpucount.
2336         * posix/sched_cpucount.c: New file.
2337         * posix/tst-cpucount.c: New file.
2338         * posix/Versions: Export __sched_cpucount with version GLIBC_2.6.
2339         * bits/sched.h: Define __CPU_COUNT.  Declare __sched_cpucount.
2340         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
2341         * posix/sched.h: Define CPU_COUNT.
2342
2343 2007-03-27  Jakub Jelinek  <jakub@redhat.com>
2344
2345         * posix/fnmatch.c (STRUCT): Define.
2346         (fnmatch): Pass NULL as last argument to internal_fn{,w}match.
2347         * posix/fnmatch_loop.c (struct STRUCT): New type.
2348         (FCT): Add ends argument.  If ends != NULL and normal * is
2349         seen in the pattern, store current pattern and string pointers
2350         and return.  Adjust recursive calls.
2351         (EXT): Adjust FCT callers.
2352         (STRUCT): Undef at the end of the file.
2353         * posix/Makefile (tests): Add tst-fnmatch2.
2354         * posix/tst-fnmatch2.c: New test.
2355
2356 2007-04-01  Jakub Jelinek  <jakub@redhat.com>
2357
2358         * sysdeps/ia64/fpu/fesetround.c (fesetround): Return 0 on success
2359         and 1 on failure.
2360
2361         * sysdeps/unix/sysv/linux/sync_file_range.c (sync_file_range):
2362         Change last argument to unsigned int.
2363
2364 2007-03-23  Jakub Jelinek  <jakub@redhat.com>
2365
2366         * scripts/check-local-headers.sh: Filter out sys/capability.h.
2367
2368 2007-03-22  Jakub Jelinek  <jakub@redhat.com>
2369
2370         * config.h.in (HAVE_LIBCAP): Add.
2371         * nscd/selinux.h: Include sys/capability.h rather than non-existent
2372         sys/capabilities.h.
2373         * nscd/selinux.c (preserve_capabilities): Use cap_free instead of
2374         free_caps.  Cast away const from 4th cap_set_flag argument.
2375
2376 2007-03-26  Ulrich Drepper  <drepper@redhat.com>
2377
2378         * sysdeps/unix/sysv/linux/Versions: Move sync_file_range to
2379         GLIBC_2.6.
2380         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
2381         Add sync_file_range.
2382         Reported by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
2383
2384 2007-03-19  Steven Munroe  <sjmunroe@us.ibm.com>
2385
2386         * sysdeps/powerpc/bits/atomic.h
2387         [!MUTEX_HINT_ACQ]: Define MUTEX_HINT_ACQ.
2388         [!MUTEX_HINT_REL]: Define MUTEX_HINT_REL.
2389         (__arch_compare_and_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
2390         (__arch_compare_and_exchange_val_32_rel): Add MUTEX_HINT_REL to lwarx.
2391         (__arch_atomic_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
2392         (__arch_atomic_exchange_rel_32_rel): Add MUTEX_HINT_REL to lwarx.
2393         * sysdeps/powerpc/powerpc32/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6X]:
2394         Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
2395         (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
2396         (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
2397         * sysdeps/powerpc/powerpc64/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6D]:
2398         Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
2399         (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
2400         (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
2401         (__arch_compare_and_exchange_bool_64_acq): Add MUTEX_HINT_ACQ to lwarx.
2402         (__arch_compare_and_exchange_bool_64_rel): Add MUTEX_HINT_REL to lwarx.
2403         (__arch_compare_and_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
2404         (__arch_compare_and_exchange_val_64_rel): Add MUTEX_HINT_REL to lwarx.
2405         (__arch_atomic_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
2406         (__arch_atomic_exchange_rel_64_rel): Add MUTEX_HINT_REL to lwarx.
2407
2408 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
2409
2410         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
2411         (__cache_line_size): Define the variable here.  Add
2412         attribute_hidden, remove weak_extern.
2413         (__libc_start_main): Set __cache_line_size
2414         unconditionally.
2415         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
2416         (__cache_line_size): Define the variable here.  Add
2417         attribute_hidden, remove weak_extern.
2418         (DL_PLATFORM_AUXV): Set __cache_line_size
2419         unconditionally.
2420         * sysdeps/powerpc/powerpc32/dl-machine.c (__cache_line_size): Remove
2421         weak_extern, add attribute_hidden.
2422         (__elf_machine_runtime_setup): Assume __cache_line_size is always
2423         defined in ld.so.
2424         * sysdeps/powerpc/powerpc32/memset.S (__cache_line_size): Remove
2425         definition.
2426         * sysdeps/powerpc/powerpc64/memset.S (__cache_line_size): Likewise.
2427
2428 2007-03-26  Jakub Jelinek  <jakub@redhat.com>
2429
2430         [BZ #4276]
2431         * timezone/africa: Update from tzdata2007d.
2432         * timezone/asia: Likewise.
2433         * timezone/australasia: Likewise.
2434         * timezone/backward: Likewise.
2435         * timezone/europe: Likewise.
2436         * timezone/iso3166.tab: Likewise.
2437         * timezone/leapseconds: Likewise.
2438         * timezone/northamerica: Likewise.
2439         * timezone/southamerica: Likewise.
2440         * timezone/zone.tab: Likewise.
2441
2442         * timezone/private.h: Update from tzcode2007d.
2443         * timezone/zdump.c: Likewise.
2444         * timezone/zic.c: Likewise.
2445
2446 2007-03-21  Jakub Jelinek  <jakub@redhat.com>
2447
2448         * nis/nis_call.c: Include bits/libc-lock.h, sys/stat.h, unistd.h.
2449         (nis_server_cache, nis_server_cache_lock, nis_cold_start_mtime): New
2450         variables.
2451         (nis_server_cache_search, nis_server_cache_add): New functions.
2452         (__nisfind_server): Use them.  Add dbp and flags argument, if
2453         call __nisbind_create.
2454         (__nisbind_create): Add server_used and current_ep arguments,
2455         only call __nis_findfastest if server_used is ~0.
2456         (__do_niscall2, __prepare_niscall): Adjust callers.
2457         (ckey_cache, ckey_cache_size, ckey_cache_allocated, ckey_cache_pid,
2458         ckey_cache_euid, ckey_cache_lock): New variables.
2459         (get_ckey): New function.
2460         (__nisbind_connect): If not dbp->use_udp, pass IPPROTO_TCP to
2461         __pmap_getnisport.  Save __pmap_getnisport result in
2462         dbp->addr.sin_port if non-zero.  Use get_ckey to create conversation
2463         key.
2464         * nis/nis_lookup.c (nis_lookup): Likewise.
2465         * nis/nis_table.c (nis_list): Likewise.
2466         * nis/rpcsvc/nislib.h (__nisbind_create, __nisfind_server): Adjust
2467         prototypes.
2468
2469         * nis/nss_nisplus/nisplus-pwd.c (_nss_nisplus_getpwnam_r,
2470         _nss_nisplus_getpwuid_r): Pass USE_DGRAM flag to nis_list.
2471         * nis/nss_nisplus/nisplus-service.c (_nss_nisplus_getservbyname_r,
2472         _nss_nisplus_getservbyport_r): Likewise.
2473         * nis/nss_nisplus/nisplus-network.c (_nss_nisplus_getnetbyname_r,
2474         _nss_nisplus_getnetbyaddr_r): Likewise.
2475         * nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_getspnam_r): Likewise.
2476         * nis/nss_nisplus/nisplus-ethers.c (_nss_nisplus_gethostton_r,
2477         _nss_nisplus_getntohost_r): Likewise.
2478         * nis/nss_nisplus/nisplus-rpc.c (_nss_nisplus_getrpcbyname_r,
2479         _nss_nisplus_getrpcbynumber_r): Likewise.
2480
2481 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
2482
2483         * configure.in (libc_cv_gnu89_inline): Only do compile test.
2484         * configure: Rebuilt.
2485
2486         * soft-fp/double.h (_FP_UNION_D): Use _FP_W_TYPE for frac
2487         bit-fields.
2488         * soft-fp/extended.h (_FP_UNION_E): Likewise.
2489
2490 2006-06-07  Joseph Myers  <joseph@codesourcery.com>
2491
2492         [BZ #2831]
2493         * soft-fp/quad.h (_FP_UNION_Q): Use _FP_W_TYPE for frac
2494         bit-fields.
2495
2496 2007-03-18  Jakub Jelinek  <jakub@redhat.com>
2497
2498         * nscd/gai.c: Include alloca.h.
2499         (__libc_use_alloca): Define.
2500
2501 2007-03-16  Jakub Jelinek  <jakub@redhat.com>
2502
2503         * elf/dl-open.c (dl_open_worker): Declare l in 2 different
2504         smaller scopes.
2505         * elf/dl-dst.h (DL_DST_REQ_STATIC): Add l as macro argument.
2506         (DL_DST_REQUIRED): Adjust user.
2507
2508         * include/dlfcn.h (struct link_map): New forward decl.
2509
2510         * inet/getnameinfo.c: Include stddef.h.
2511         (getnameinfo): Use offsetof.
2512
2513         * time/tst-mktime2.c (do_test): Don't rely on signed wrap.
2514
2515         * stdio-common/vfprintf.c (_itoa): Undef before redefining.
2516
2517         * string/strerror_l.c: Include stdlib.h.
2518
2519         * configure.in (libc_cv_gnu89_inline): Test for -fgnu89-inline.
2520         * config.make.in (gnu89-inline-CFLAGS): New variable.
2521         * Makeconfig (CFLAGS): Use $(gnu89-inline-CFLAGS) together with
2522         -std=gnu99.
2523         * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Define.
2524         * argp/argp.h: Use it.
2525         * bits/mathinline.h: Likewise.
2526         * bits/sigset.h: Likewise.
2527         * bits/string.h: Likewise.
2528         * ctype/ctype.h: Likewise.
2529         * hurd/hurd.h: Likewise.
2530         * hurd/hurd/fd.h: Likewise.
2531         * hurd/hurd/port.h: Likewise.
2532         * hurd/hurd/signal.h: Likewise.
2533         * hurd/hurd/threadvar.h: Likewise.
2534         * hurd/hurd/userlink.h: Likewise.
2535         * io/sys/stat.h: Likewise.
2536         * libio/bits/stdio.h: Likewise.
2537         * libio/bits/stdio2.h: Likewise.
2538         * mach/lock-intern.h: Likewise.
2539         * mach/mach/mig_support.h: Likewise.
2540         * math/bits/cmathcalls.h: Likewise.
2541         * posix/bits/unistd.h: Likewise.
2542         * socket/bits/socket2.h: Likewise.
2543         * stdlib/bits/stdlib.h: Likewise.
2544         * stdlib/stdlib.h: Likewise.
2545         * string/argz.h: Likewise.
2546         * string/bits/string2.h: Likewise.
2547         * string/bits/string3.h: Likewise.
2548         * sysdeps/alpha/fpu/bits/mathinline.h: Likewise.
2549         * sysdeps/generic/inttypes.h: Likewise.
2550         * sysdeps/generic/machine-lock.h: Likewise.
2551         * sysdeps/generic/machine-sp.h: Likewise.
2552         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
2553         * sysdeps/i386/i486/bits/string.h: Likewise.
2554         * sysdeps/ia64/fpu/bits/mathinline.h: Likewise.
2555         * sysdeps/mach/alpha/machine-lock.h: Likewise.
2556         * sysdeps/mach/alpha/machine-sp.h: Likewise.
2557         * sysdeps/mach/i386/machine-lock.h: Likewise.
2558         * sysdeps/mach/powerpc/machine-lock.h: Likewise.
2559         * sysdeps/mach/powerpc/machine-sp.h: Likewise.
2560         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
2561         * sysdeps/s390/bits/string.h: Likewise.
2562         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
2563         * sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
2564         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
2565         * sysdeps/unix/sysv/linux/bits/sigset.h: Likewise.
2566         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
2567         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Likewise.
2568         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
2569         * wcsmbs/bits/wchar2.h: Likewise.
2570         * wcsmbs/wchar.h: Likewise.
2571         * stdlib/gmp.h: Likewise.  Include <features.h> to get
2572         __extern_inline definition.
2573
2574 2007-03-15  Jakub Jelinek  <jakub@redhat.com>
2575
2576         * locale/programs/ld-ctype.c (find_translit): Return NULL if ctype is
2577         NULL.
2578
2579         [BZ #3919]
2580         * math/libm-test.inc (log_test): Test -Inf and NaN.
2581         (log10_test, log1p_test, log2_test): Test -Inf.
2582         * sysdeps/i386/fpu/e_log.S (__ieee754_log): Don't raise
2583         FE_INVALID when argument is qNaN.
2584         * sysdeps/i386/fpu/e_logl.S (__ieee754_logl): Likewise.
2585         * sysdeps/i386/fpu/e_logf.S (__ieee754_logf): Likewise.
2586         * sysdeps/x86_64/fpu/e_logl.S (__ieee754_logl): Likewise.
2587         * sysdeps/x86_64/fpu/e_log10l.S (__ieee754_log10l): Replace
2588         andb $1, %ah with testb $1, %ah, don't test for parity, instead
2589         testb $4, %ah and jump if non-zero.
2590         * sysdeps/x86_64/fpu/e_log2l.S (__ieee754_log2l): Likewise.
2591         * sysdeps/x86_64/fpu/s_log1pl.S (__log1pl): Likewise.
2592
2593         [BZ #4101]
2594         * argp/argp-help.c (hol_cluster_cmp): Fix comparisons used to find
2595         ancestors with the same depths.
2596         Patch by Niels Moeller <nisse@lysator.liu.se>.
2597         (filter_doc): Don't crash if argp is NULL.
2598         * argp/Makefile (tests): Add tst-argp2.
2599         * argp/tst-argp2.c: New test.
2600
2601         [BZ #4130]
2602         * login/utmp_file.c (setutent_file): Use O_LARGEFILE for
2603         open_not_cancel_2.
2604         (updwtmp_file): Likewise.
2605
2606         [BZ #4181]
2607         * inet/inet6_opt.c (add_padding): Only insert padding if npad > 0.
2608         (inet6_opt_append): Don't check extlen is big enough if extbuf
2609         is NULL.
2610         (inet6_opt_finish): Likewise.
2611         * inet/Makefile (tests): Add test-inet6_opt.
2612         * inet/test-inet6_opt.c: New test.
2613
2614         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Never
2615         reallocate the buffer, instead fail for MSG_TRUNC or for EBUSY
2616         NLMSG_ERR.  Instead use a page sized buffer.
2617         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Use page sized
2618         buffer.
2619
2620 2007-03-14  Richard Henderson  <rth@redhat.com>
2621
2622         * sysdeps/alpha/fpu/s_llround.c: New file.
2623         * sysdeps/alpha/fpu/s_llroundf.c: New file.
2624         * sysdeps/alpha/fpu/s_lround.c: New file.
2625         * sysdeps/alpha/fpu/s_lroundf.c: New file.
2626         * sysdeps/alpha/fpu/s_round.c: New file.
2627         * sysdeps/alpha/fpu/s_roundf.c: New file.
2628         * sysdeps/alpha/fpu/s_trunc.c: New file.
2629         * sysdeps/alpha/fpu/s_truncf.c: New file.
2630
2631         * sysdeps/alpha/fpu/s_ceil.c: Rewrite without branches.
2632         * sysdeps/alpha/fpu/s_ceilf.c: Likewise.
2633         * sysdeps/alpha/fpu/s_floor.c: Likewise.
2634         * sysdeps/alpha/fpu/s_floorf.c: Likewise.
2635         * sysdeps/alpha/fpu/s_rint.c: Likewise.
2636         * sysdeps/alpha/fpu/s_rintf.c: Likewise.
2637
2638         * sysdeps/alpha/fpu/s_fmax.S: New file.
2639         * sysdeps/alpha/fpu/s_fmaxf.S: New file.
2640         * sysdeps/alpha/fpu/s_fmin.S: New file.
2641         * sysdeps/alpha/fpu/s_fminf.S: New file.
2642         * sysdeps/alpha/fpu/s_isnan.c: New file.
2643         * sysdeps/alpha/fpu/s_isnanf.c: New file.
2644         * sysdeps/alpha/fpu/s_llrint.c: New file.
2645         * sysdeps/alpha/fpu/s_llrintf.c: New file.
2646         * sysdeps/alpha/fpu/s_lrint.c: New file.
2647         * sysdeps/alpha/fpu/s_lrintf.c: New file.
2648         * sysdeps/alpha/fpu/s_nearbyint.c: New file.
2649         * sysdeps/alpha/fpu/s_nearbyintf.c: New file.
2650
2651         * sysdeps/alpha/fpu/bits/mathinline.h (__floorf, __floor): Remove.
2652         (__fdimf, fdimf, __fdim, fdim): Remove.
2653         (__signbitf, __signbit, __signbitl): Use gcc builtin if available.
2654         (__isnanf, __isnan, __isnanl): New.
2655
2656 2007-03-13  Richard Henderson  <rth@redhat.com>
2657
2658         * sysdeps/ieee754/ldbl-128/Makefile: New file.
2659
2660 2007-03-13  Richard Henderson  <rth@redhat.com>
2661
2662         * sysdeps/alpha/Makefile (sysdep-CFLAGS): Force dynamic rounding.
2663         * sysdeps/alpha/fpu/bits/mathinline.h (__signbitl): New.
2664         * sysdeps/alpha/fpu/libm-test-ulps: Regenerate.
2665         * sysdeps/unix/sysv/linux/alpha/alphaev6/fpu/Implies: New file.
2666         * sysdeps/unix/sysv/linux/alpha/alphaev67/fpu/Implies: New file.
2667         * sysdeps/unix/sysv/linux/alpha/fpu/Implies: New file.
2668
2669 2007-03-13  Richard Henderson  <rth@redhat.com>
2670
2671         * elf/dl-support.c (_dl_aux_init): Honor DL_PLATFORM_AUXV.
2672         * sysdeps/unix/sysv/linux/alpha/dl-auxv.h: New file.
2673         * sysdeps/unix/sysv/linux/alpha/dl-support.c: New file.
2674         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c (__libc_alpha_cache_shape):
2675         Move to dl-auxv.h; initialize instead of extern weak.
2676         (DL_PLATFORM_AUXV): Move to dl-auxv.h; don't test for undef
2677         weak symbol.
2678         * sysdeps/unix/sysv/linux/alpha/sysconf.c (__libc_alpha_cache_shape):
2679         Extern instead of initialized.
2680
2681 2007-03-13  Richard Henderson  <rth@redhat.com>
2682
2683         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add support for
2684         __sigsuspend_nocancel.
2685
2686 2007-03-06  Ulrich Drepper  <drepper@redhat.com>
2687
2688         * sysdeps/posix/getaddrinfo.c (get_scope): Correct test for
2689         172.16/12 address range.
2690
2691 2007-03-02  Jakub Jelinek  <jakub@redhat.com>
2692
2693         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Retry with
2694         a new netlink socket if NLMSG_ERR -EBUSY is seen after some MSG_TRUNC
2695         message.
2696
2697 2007-03-01  Jakub Jelinek  <jakub@redhat.com>
2698
2699         [BZ #4069]
2700         * sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Check for NaN
2701         earlier.
2702         * math/libm-test.inc (pow_test): Add more tests involving NaNs.
2703
2704         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Avoid invalid exception
2705         for x qNaN and y either +-inf or non-integer value.
2706         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Likewise.
2707         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
2708         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
2709
2710 2007-02-10  Mike Frysinger  <vapier@gentoo.org>
2711
2712         * sysdeps/unix/sysv/linux/sh/Makefile: Remove sys/io.h
2713         from sysdep_headers.
2714
2715 2007-02-28  Jakub Jelinek  <jakub@redhat.com>
2716
2717         * time/tzfile.c (find_transition): Instead of a linear search try to
2718         guess the transition index, use a linear search if the result is at
2719         most 10 transitions away from the guess or binary search otherwise.
2720
2721 2007-02-27  Jakub Jelinek  <jakub@redhat.com>
2722
2723         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Fix
2724         memory reallocation.
2725
2726 2007-02-21  Ulrich Drepper  <drepper@redhat.com>
2727
2728         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Add branch predictions
2729         and fix some typos.
2730         Optimize use of TOLOWER.
2731
2732         [BZ #3325]
2733         * sysdeps/i386/fpu/e_fmodf.S: Revert last changes, keep using fprem.
2734         * sysdeps/i386/fpu/e_fmodl.c: Likewise.
2735         * sysdeps/i386/fpu/e_fmod.S: Likewise.
2736
2737         [BZ #3458]
2738         * sysdeps/unix/sysv/linux/posix_madvise.c: New file.
2739         * sysdeps/unix/sysv/linux/syscalls.list: Remove posix_madvise entry.
2740
2741         [BZ #4076]
2742         * io/ftw.c (ftw_startup): Handle special case of FTW_CHDIR in /.
2743         (open_dir_stream): Likewise.
2744         * io/Makefile (tests): Add bug-ftw5.
2745         * io/bug-ftw5.c: New file.
2746
2747         * nscd/hstcache.c (cache_addhst): Remove unnecessary conditional.
2748         * nscd/servicescache.c (cache_addserv): Likewise.
2749
2750         * nscd/grpcache.c (cache_addgr): In case a record changed on
2751         refresh, adjust key_copy.
2752
2753         [BZ #4074]
2754         * nscd/pwdcache.c (cache_addpw): In case a record changed on
2755         refresh, adjust key_copy.
2756
2757         [BZ #4070]
2758         * stdio-common/printf_fp.c (___printf_fp): Handle a few more
2759         special cases.
2760         * stdio-common/tfformat.c (sprint_doubles): Some more tests.
2761
2762 2007-02-19  Ulrich Drepper  <drepper@redhat.com>
2763
2764         * stdio-common/printf_fp.c (___printf_fp): Cleanups and minor
2765         optimization.
2766
2767         * stdio-common/vfscanf.c: Small cleanups throughout.
2768
2769 2007-02-18  Ulrich Drepper  <drepper@redhat.com>
2770
2771         [BZ #3325]
2772         * sysdeps/i386/fpu/e_fmodf.S: Use fprem1 instead of fprem.
2773         * sysdeps/i386/fpu/e_fmodl.c: Likewise.
2774         * sysdeps/i386/fpu/e_fmod.S: Likewise.
2775         Patch by Jared Casper <jaredcasper@gmail.com>.
2776
2777         * sysdeps/unix/closedir.c: Outside libc don't use locking.
2778         * sysdeps/unix/opendir.c: Likewise.
2779         * sysdeps/unix/readdir.c: Likewise.
2780
2781         [BZ #2211]
2782         * stdio-common/vfscanf.c: Handle localized digits etc for floating
2783         point numbers.
2784         Patch mostly by Hamed Malek <hamed@farsiweb.info>.
2785
2786         * stdio-common/vfscanf.c: Fix problems in width accounting.
2787         * stdio-common/tst-sscanf.c (double_tests): New tests.
2788         (main): Hook them up.
2789
2790         * stdio-common/vfscanf.c: Remove unused WIDTH handling.
2791         More simplifications of floating-point reader.
2792
2793         * stdio-common/Makefile (tests): Add tst-swscanf.
2794         * stdio-common/tst-sscanf.c: Make tests usable for swscanf
2795         testing.
2796         * stdio-common/tst-swscanf.c: New file.
2797
2798 2007-02-17  Ulrich Drepper  <drepper@redhat.com>
2799
2800         [BZ #2633]
2801         * libio/stdio.h: Define struct _IO_FILE in global namespace.
2802         * setjmp/setjmp.h: Define __jmp_buf_tag in global namespace.
2803         Remove using for __jmp_buf_tag.
2804         * locale/locale.h (struct lconv): Also define in std namespace.
2805         * wcsmbs/wchar.h: Move using declaration for tm out of namespace.
2806
2807         [BZ #3842]
2808         * sysdeps/posix/euidaccess.c [_LIBC] (euidaccess): Remove shortcut
2809         using __libc_enable_secure.
2810
2811         [BZ #3818]
2812         * sysdeps/unix/sysv/linux/sys/acct.h (struct acct_v3): Define.
2813
2814         [BZ #3745]
2815         * locale/programs/ld-collate.c (handle_ellipsis): Fix generation
2816         of names for ellipsises.
2817
2818         [BZ #3348]
2819         * malloc/memusage.sh: Cleanups.
2820         * debug/xtrace.sh: Quoting and trap changes.
2821
2822 2007-02-16  Ulrich Drepper  <drepper@redhat.com>
2823
2824         * locale/iso-3166.def: Add Jersey, Guernsey, and Isle Of Man entries.
2825
2826         * locale/iso-3166.def: Update entry for Serbia.
2827         * locale/iso-4217.def: Define RSD, remove CSD.
2828
2829         * sysdeps/x86_64/bits/atomic.h: One more change, this time for 16-
2830         and 64-bit operations.
2831
2832         [BZ #4040]
2833         * sysdeps/i386/i486/bits/atomic.h: One more change, this time for
2834         16-bit operations.
2835
2836         * nscd/nscd.c (parse_opt): One more conversion to use send instead
2837         of writev.
2838
2839 2007-02-15  Ulrich Drepper  <drepper@redhat.com>
2840
2841         [BZ #3991]
2842         * assert/assert.h (assert): Simplify.
2843         (assert_perror): Likewise.
2844         Patch by Israel G. Lugo <ilugo@bridonsecurity.com>.
2845
2846         * nscd/nscd_helper.c (open_socket): Don't send padding bytes from
2847         reqdata.
2848
2849         * sysdeps/unix/sysv/linux/x86_64/send.c (__libc_send): Cosmetic
2850         change: don't pass NULL in place of an integer.
2851
2852 2007-02-02  Bruno Haible  <bruno@clisp.org>
2853
2854         [BZ #3954]
2855         * iconvdata/ksc5601.c (__ksc5601_sym_to_ucs, __ksc5601_sym_from_ucs):
2856         Add mapping for U+327E.
2857         * iconvdata/ksc5601.h (KSC5601_SYMBOL): Increment.
2858         * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
2859         mapping of 0xD9 0xE8.
2860         * iconvdata/uhc.c (BODY for FROM_LOOP, BODY for TO_LOOP): Disable
2861         mapping of U+327E.
2862         Reported by Jungshik Shin <jungshik@google.com>.
2863
2864         [BZ #3955]
2865         * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
2866         mapping of 0xD9 0xE6 and of 0xD9 0xE7.
2867         Reported by Jungshik Shin <jungshik@google.com>.
2868
2869 2007-02-14  Ulrich Drepper  <drepper@redhat.com>
2870
2871         * sysdeps/x86_64/bits/atomic;h: Fix asm parameters for some
2872         byte variants.
2873
2874         [BZ #4040]
2875         * sysdeps/i386/i486/bits/atomic.h: Fix asm parameters for some
2876         byte variants.  Patch mostly be tom@tommay.net.
2877
2878 2007-02-14  Jakub Jelinek  <jakub@redhat.com>
2879
2880         [BZ #3996]
2881         * posix/glob.c (attribute_hidden): Define if not defined.
2882         (glob): Unescape dirname, filename or username when needed and not
2883         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
2884         is NULL.  Handle unescaped [ in pattern without closing ].
2885         Don't pass GLOB_CHECK down to recursive glob for directories.
2886         (__glob_pattern_type): New function.
2887         (__glob_pattern_p): Implement using __glob_pattern_type.
2888         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
2889         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
2890         Remove unreachable code.
2891         * posix/globtest.sh: Add a couple of new tests.
2892
2893 2007-02-13  Ulrich Drepper  <drepper@redhat.com>
2894
2895         * po/ru.po: Update from translation team.
2896
2897 2007-02-12  Jakub Jelinek  <jakub@redhat.com>
2898
2899         * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __amdfam10__
2900         to the list of i486+ CPUs.
2901         * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
2902
2903 2007-02-12  Ulrich Drepper  <drepper@redhat.com>
2904
2905         * elf/rtld.c (RESOLVE_MAP): Always return bootstrap_map reference.
2906         * elf/Makefile ($(objpfx)ld.so): Check that ld.so has no undefined
2907         references.
2908
2909 2007-02-09  Ulrich Drepper  <drepper@redhat.com>
2910
2911         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Remove incorrect comment.
2912
2913         * resolv/res_init.c (res_setoptions): Recognize edns0 option.
2914         * resolv/res_mkquery.c: Define __res_nopt.
2915         * resolv/res_query.c (__libc_res_nquery): If RES_USE_EDNS0 is set
2916         try adding EDNS0 record.
2917         * resolv/res_send.c (send_dg): If request failed with FORMERR and
2918         EDNS0 record was send make sure we don't try it again.
2919         * resolv/resolv.h: Define RES_F_EDNS0ERR and RES_USE_EDNS0.
2920         * include/resolv.h: Declare __res_nopt.
2921
2922 2007-02-08  Jakub Jelinek  <jakub@redhat.com>
2923
2924         [BZ #3944]
2925         * time/strptime_l.c (__strptime_internal): Set have_mon for
2926         %b/%B/%h.  Set have_mon and have_mday if tm_mon and tm_mday
2927         have been computed from tm_yday and tm_year.  Don't crash
2928         in day_of_the_week or day_of_the_year if not have_mon
2929         and tm_mon contains bogus value.
2930         * time/Makefile (tests): Add tst-strptime3.
2931         * time/tst-strptime3.c: New test.
2932
2933 2007-02-05  Jakub Jelinek  <jakub@redhat.com>
2934
2935         [BZ #3957]
2936         * posix/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
2937         bit for RE_HAT_LISTS_NOT_NEWLINE.
2938         (build_charclass_op): Remove bogus comment.
2939         * posix/Makefile (tests): Add bug-regex27 and bug-regex28.
2940         * posix/bug-regex27.c: New test.
2941         * posix/bug-regex28.c: New test.
2942
2943 2007-02-03  Ulrich Drepper  <drepper@redhat.com>
2944
2945         * po/sv.po: Update from translation team.
2946
2947 2007-02-02  Ulrich Drepper  <drepper@redhat.com>
2948
2949         * nscd/nscd_helper.c (open_socket): Minor size optimization.
2950
2951 2007-02-02  Jakub Jelinek  <jakub@redhat.com>
2952
2953         * include/locale.h (__uselocale): Add libc_hidden_proto.
2954         * locale/uselocale.c (__uselocale): Add libc_hidden_def.
2955
2956         * nscd/nscd_helper.c (open_socket): Use __gettimeofday instead of
2957         gettimeofday.
2958
2959 2007-02-01  Ulrich Drepper  <drepper@redhat.com>
2960
2961         * sysdeps/unix/sysv/linux/i386/sysdep.h (PTR_MANGLE): Roll value before
2962         returning.
2963         (PTR_DEMANGLE): Real definition now that it's not the same as
2964         PRT_MANGLE anymore.
2965         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
2966
2967         * string/strerror_l.c: New file.
2968         * string/Makefile (routines): Add strerror_l.
2969         * string/string.h: Declare strerror_l.
2970         * string/Versions: Export strerror_l for GLIBC_2.6.
2971
2972 2007-01-31  Ulrich Drepper  <drepper@redhat.com>
2973
2974         * nscd/nscd_helper.c (open_socket): Now takes request type and key
2975         as parameter.  Construct request record.  Try sending request
2976         before the first poll use, it usually succeeds.  Adjust all
2977         callers.
2978         * nscd/nscd-client.h: Define MAXKEYLEN.
2979         * nscd/connections.c (nscd_run): Don't define MAXKEYLEN here.
2980
2981 2007-01-31  Jakub Jelinek  <jakub@redhat.com>
2982
2983         * nscd/nscd-client.h (__nscd_cache_search): Remove const qualifier
2984         from return value.
2985         * nscd/nscd_helper.c: Include string.h.
2986         (__nscd_cache_search): Remove const qualifier from return value.
2987         On strict alignment architectures check hash entry and data head
2988         alignment.
2989         * nscd/nscd_getpw_r.c (nscd_getpw_r): Don't crash or fail because
2990         mmapped data during GC cycle contains garbage.  If
2991         __nscd_drop_map_ref fails, decrement mapped->counter when returning
2992         error or if retrying with NO_MAPPING, only __nscd_unmap if counter
2993         dropped to 0.
2994         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
2995         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise.
2996         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
2997         * nscd/nscd_getai.c (__nscd_getai): Likewise.
2998         * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
2999
3000 2007-01-30  Ulrich Drepper  <drepper@redhat.com>
3001
3002         * misc/hsearch_r.c (hdestroy_r): Remove unnecessary test.
3003
3004 2007-01-26  Ulrich Drepper  <drepper@redhat.com>
3005
3006         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Use register
3007         names not numbers in cfi_*.
3008
3009 2007-01-26  Andreas Jaeger  <aj@suse.de>
3010
3011         * sysdeps/unix/sysv/linux/sys/personality.h (ADDR_NO_RANDOMIZE,
3012         ADDR_LIMIT_3GB, PER_LINUX_32BIT, PER_LINUX32_3GB): Add.
3013         Correct values of PER_HPUX and PER_OSF4.
3014
3015 2007-01-24  Ulrich Drepper  <drepper@redhat.com>
3016
3017         * elf/dl-minimal.c: Undefine _itoa first.
3018         * stdio-common/_itoa.h: Define _itoa and _fitoa for 64-bit platforms.
3019         * malloc/mtrace.c: Revert last change.
3020         * posix/wordexp.c: Likewise.
3021
3022 2007-01-24  Jakub Jelinek  <jakub@redhat.com>
3023
3024         * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __nocona__, __core2__
3025         and __geode__ to the list of i486+ CPUs.
3026         * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
3027
3028 2007-01-23  Ulrich Drepper  <drepper@redhat.com>
3029
3030         * stdio-common/_itoa.c: Include <limits.h>.
3031         * stdio-common/_itowa.c: Likewise.
3032
3033 2007-01-22  Ulrich Drepper  <drepper@redhat.com>
3034
3035         * stdio-common/_itowa.c: Don't compile _itowa for 64-bit
3036         platforms.
3037         * stdio-common/_itoa.c: Don't compile in _itoa and _fitoa for
3038         64-bit platforms.
3039         * malloc/mtrace.c (tr_where): Use _fitoa_word instead of _fitoa if
3040         possible.
3041         * posix/wordexp.c (parse_arith): Use _itoa_word instead of _itoa
3042         if possible.
3043
3044         [BZ #3902]
3045         * stdio-common/_itoa.c (_itoa): Make sure at least a zero is emitted.
3046         * stdio-common/Makefile (tests): Add bug17.
3047         * stdio-common/bug17.c: New file.
3048
3049 2007-01-19  Ulrich Drepper  <drepper@redhat.com>
3050
3051         * iconvdata/brf.c: New file.
3052         * iconvdata/testdata/BRF: New file.
3053         * iconvdata/testdata/BRF..UTF8: New file.
3054         Contributed by Samuel Thibault <samuel.thibault@ens-lyon.org>.
3055         * iconvdata/Makefile: Add rules to build BRF.
3056         * iconvdata/TESTS: Add BRF entry.
3057         * iconvdata/gconv-modules: Likewise.
3058         * iconvdata/tst-tables.sh: Likewise.
3059
3060 2007-01-18  Anton Nikishaev  <anton.nik@gmail.com>
3061
3062         * wcsmbs/wchar.h (wcstoll): Fix comment, function returns value of
3063         type `long long int', not `long int'.
3064         (wcstoq): Likewise.
3065
3066 2007-01-18  Ulrich Drepper  <drepper@redhat.com>
3067
3068         * scripts/gen-as-const.awk: Add cast to long to avoid int promotion
3069         of values on 64-bit platforms which are too large.
3070
3071 2007-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
3072             Joe Kerian  <jkerian@us.us.ibm.com>
3073
3074         [BZ #2749]
3075         * sysdeps/ieee754/ldbl-128ibm/s_copysignl.c: Include
3076         <math_ldbl_opt.h>.  Remove weak_alias.  Use long_double_symbol macro.
3077         (__copysignl): Use signbit() for comparison.
3078         * sysdeps/ieee754/ldbl-128ibm/s_fabsl.c (__fabsl): Correct parms for
3079         SET_LDOUBLE_WORDS64.
3080
3081         [BZ #2423, #2749]
3082         * sysdeps/ieee754/ldbl-128ibm/s_ceill.c: Don't include <fenv_libc.h>.
3083         (__ceill): Remove calls to fegetround(), fesetround().
3084         * sysdeps/ieee754/ldbl-128ibm/s_floorl.c: Likewise.
3085         * sysdeps/ieee754/ldbl-128ibm/s_roundl.c: Likewise.
3086         * sysdeps/ieee754/ldbl-128ibm/s_truncl.c: Likewise.
3087
3088 2007-01-17  Jakub Jelinek  <jakub@redhat.com>
3089
3090         * nscd/nscd_getserv_r.c (nscd_getserv_r): Fix pastos.
3091
3092         * sysdeps/unix/sysv/linux/getdents.c (offsetof): Remove.
3093
3094 2007-01-17  Ulrich Drepper  <drepper@redhat.com>
3095
3096         * sysdeps/unix/sysv/linux/fatal-prepare.h: Use PTHFCT_CALL to
3097         demangle pointer.
3098         * csu/libc-start.c: Likewise.
3099
3100 2007-01-16  Ulrich Drepper  <drepper@redhat.com>
3101
3102         * sysdeps/posix/system.c: Remove NO_WAITPID support, it cannot
3103         really work anyway.
3104
3105 2007-01-15  Ulrich Drepper  <drepper@redhat.com>
3106
3107         * nscd/connections.c (servinfo): Renamed to reqinfo.  Change all
3108         users.
3109         (handle_request): Remove unnecessary tests.
3110
3111         * nscd/cache.c (cache_add): Record the failure to add to the cache.
3112
3113 2007-01-15  Jakub Jelinek  <jakub@redhat.com>
3114
3115         * soft-fp/op-common.h (FP_TRUNC): When truncating a NaN, clear
3116         workbits in semi-raw fraction.
3117
3118         * math/test-misc.c: Add new tests.
3119
3120 2007-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
3121
3122         * math/basic-test.c: Include test-skeleton.c.
3123         (TEST_TRUNC): Define.
3124         (truncdfsf_test, trunctfsf_test, trunctfdf_test): New.
3125         (main): Rename to ...
3126         (do_test): ...this.  Run new tests.
3127         (TEST_FUNCTION): Define.
3128
3129 2006-10-05  Steven Munroe  <sjmunroe@us.ibm.com>
3130             Joe Kerian  <jkerian@us.us.ibm.com>
3131
3132         [BZ #2749]
3133         * soft-fp/op-4.h (__FP_FRAC_SUB_3, __FP_FRAC_SUB_4): Correct borrow
3134         handling for high words.
3135         * soft-fp/op-common.h (_FP_OVERFLOW_SEMIRAW): Always set inexact
3136         and overflow for infinity.
3137
3138 2007-01-15  Ulrich Drepper  <drepper@redhat.com>
3139
3140         * nscd/connections.c (handle_request): Add a __builtin_expect.
3141
3142         * nscd/connections.c (serv2db): Change type into structure which
3143         also says whether this is a request for data.  Renamed to
3144         servinfo.  All users changed.
3145         (handle_request): Much simpler test whether we should search the cache.
3146
3147         * nscd/connections.c (handle_request): Fix thinko in selinux test
3148         invocation.
3149
3150         * sysdeps/generic/ldsodefs.h: Define DL_LOOKUP_SCOPE_LOCK.
3151         * elf/dl-lookup.c (add_dependency): If scope map is locked, unlock
3152         it before getting dl_load_lock and then relock.
3153         (_dl_lookup_symbol_x): Pass flags to add_dependency.
3154         When rerunning _dl_lookup_symbol_x, compute symbol_scope again in
3155         case we unlocked the scope.
3156         * elf/dl-runtime.c (_dl_fixup): Pass DL_LOOKUP_SCOPE_LOCK to
3157         _dl_lookup_symbol_x in case we locked the scope.
3158         (_dl_profile_fixup): Likewise.
3159         * elf/dl-sym.c (do_sym): In flags passed to call_dl_lookup, also
3160         set DL_LOOKUP_SCOPE_LOCK.
3161
3162 2007-01-13  Ulrich Drepper  <drepper@redhat.com>
3163
3164         * inet/Makefile: Define CFLAGS-getsrvbynm_r.c and
3165         CFLAGS-getsrvbynpt_r.c.
3166         * nscd/getsrvbynm_r.c: New file.
3167         * nscd/getsrvbypt_r.c: New file.
3168         * nscd/nscd_getserv_r.c: New file.
3169         * nscd/servicescache.c: New file.
3170         * nscd/Makefile (routines): Add nscd_getserv_r.
3171         (nscd-modules): Add getsrvbynm_r, getsrvbypt_r, and servicescache.
3172         Define CFLAGS-servicescache.c, CFLAGS-getsrvbynm_r.c, and
3173         CFLAGS-getsrvbypt_r.c.
3174         * nscd/cache.c (prune_cache): Rewrite to get re-add function from
3175         table.  Add entries for services database.
3176         * nscd/connections.c (serv2str): Mark as const.  Add entries for
3177         services database.
3178         (dbs): Add .reset_res and servdb initialization.
3179         (serv2db): Add entries for services database.
3180         (verify_persistent_db): Accept dbnr == servdb.
3181         (invalidate_cache): Rewrite database name recognition to use a table.
3182         Call res_init() if .reset_res is set for database.
3183         (handle_request): Add code to handle services database.
3184         * nscd/gai.c: Don't define __getservbyname_r.
3185         * nscd/nscd-client.h (request_type): Remove LASTDBREQ, add
3186         GETSERVBYNAME, GETSERVBYPORT, GETFDSERV.
3187         (serv_response_header): Define.
3188         (struct datahead): Add serv_response_header member.
3189         * nscd/nscd.c (parse_opt): Rewrite parsing of -i parameter value
3190         using table.
3191         * nscd/nscd.conf: Add entries for services database.
3192         * nscd/nscd.h: Adjust declaration of dbnames and serv2str.
3193         Declare serv_iov_disabled.
3194         Declare addservbyname, readdservbyname, addservbyport, and
3195         readdservbyport.
3196         * nscd/nscd_conf.c (dbnames): Mark as const.  Add services entry.
3197         (find_db): Fix error message.
3198         * nscd/nscd_proto.h: Declare __nss_not_use_nscd_services,
3199         __nscd_getservbyname_r, and __nscd_getservbyport_r.
3200         * nscd/selinux.c (perms): Add entries for services database.
3201         * nss/Versions: Export __nss_services_lookup with GLIBC_PRIVATE.
3202         * nss/nsswitch.c (__nss_disable_nscd): Also disable services database.
3203
3204         * nscd/grpcache.c: Remove obsolete code.  Cleanups.
3205         * nscd/hstcache.c: Likewise.
3206         * nscd/pwdcache.c: Likewise.
3207
3208         * nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): Correct
3209         computation of keylen.
3210
3211         * include/string.h: Only redefine strndupa if this is really for
3212         libc code.
3213
3214 2007-01-12  Ulrich Drepper  <drepper@redhat.com>
3215
3216         * nscd/nscd_gethst_r.c: Minor cleanups.
3217
3218         * nscd/connections.c (handle_request): Check selinux permissions
3219         for all non-admin commands.
3220
3221         * sysdeps/i386/i486/bits/atomic.h: Define
3222         atomic_compare_and_exchange_val_acq,
3223         atomic_compare_and_exchange_bool_acq, and atomic_exchange_and_add
3224         using __sync_* built-ins for gcc >= 4.1.
3225         * sysdeps/x86_64/bits/atomic.h: Likewise.
3226
3227         [BZ #3840]
3228         * scripts/check-local-headers.sh: Restrict to testing .o.d, .os.d,
3229         and .oS.d files.
3230
3231 2007-01-05  Steven Munroe  <sjmunroe@us.ibm.com>
3232
3233         * stdlib/tst-makecontext.c: Include errno.h.  Change main()
3234         to do_test().  Define TEST_FUNCTION. Include test-skeleton.c.
3235         (do_test): Check errno and exit(0) if ENOSYS.
3236
3237 2007-01-11  Jakub Jelinek  <jakub@redhat.com>
3238
3239         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix handling of multi-byte
3240         thousands separators.
3241         * stdlib/Makefile: Add rules to build and run tst-strtod4.
3242         * stdlib/tst-strtod4.c: New test.
3243
3244         [BZ #3855]
3245         * stdlib/strtod_l.c (____STRTOF_INTERNAL): 0x. not followed by
3246         hexadecimal digit should accept just the initial 0.
3247         * stdlib/tst-strtod2.c (tests): New variable.
3248         (do_test): Run several tests rather than just one.
3249
3250 2007-01-11  Jakub Jelinek  <jakub@redhat.com>
3251
3252         * sysdeps/i386/soft-fp/sfp-machine.h: Remove.
3253         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
3254
3255 2007-01-10  Ulrich Drepper  <drepper@redhat.com>
3256
3257         * io/fts.c: Make sure fts_cur is always valid after return from
3258         fts_read.
3259         Patch by Miloslav Trmac <mitr@redhat.com>.
3260
3261 2006-10-27  Richard Sandiford  <richard@codesourcery.com>
3262
3263         * elf/elf.h (R_MIPS_GLOB_DAT): Define.
3264         (R_MIPS_NUM): Bump by 1.
3265
3266 2007-01-03  Jakub Jelinek  <jakub@redhat.com>
3267
3268         * posix/execvp.c: Include alloca.h.
3269         (allocate_scripts_argv): Renamed to...
3270         (scripts_argv): ... this.  Don't allocate buffer here nor count
3271         arguments.
3272         (execvp): Use alloca if possible.
3273         * posix/Makefile: Add rules to build and run tst-vfork3 test.
3274         * posix/tst-vfork3.c: New test.
3275
3276 2007-01-03  Ulrich Drepper  <drepper@redhat.com>
3277
3278         * string/Makefile (tst-strxfrm2-ENV): Define.
3279         * stdlib/Makefile (tst-strtod3-ENV): Define.
3280
3281 2007-01-02  Ulrich Drepper  <drepper@redhat.com>
3282
3283         * posix/getconf.c: Update copyright year.
3284         * nss/getent.c: Likewise.
3285         * iconv/iconvconfig.c: Likewise.
3286         * iconv/iconv_prog.c: Likewise.
3287         * elf/ldconfig.c: Likewise.
3288         * catgets/gencat.c: Likewise.
3289         * csu/version.c: Likewise.
3290         * elf/ldd.bash.in: Likewise.
3291         * elf/sprof.c (print_version): Likewise.
3292         * locale/programs/locale.c: Likewise.
3293         * locale/programs/localedef.c: Likewise.
3294         * nscd/nscd.c (print_version): Likewise.
3295         * debug/xtrace.sh: Likewise.
3296         * malloc/memusage.sh: Likewise.
3297         * malloc/mtrace.pl: Likewise.
3298         * debug/catchsegv.sh: Likewise.
3299
3300 2006-12-24  Ulrich Drepper  <drepper@redhat.com>
3301
3302         * malloc/malloc.c (sYSMALLOc): Remove some unnecessary alignment
3303         attempts.
3304
3305 2006-12-23  Ulrich Drepper  <drepper@redhat.com>
3306
3307         * posix/wordexp.c: Remove some unnecessary tests.
3308
3309 2006-12-22  Gavin Romig-Koch  <gavin@redhat.com>
3310
3311         * nis/nss_compat/compat-grp.c (internal_getgrgid_r): Don't
3312         blacklist the group till after we look it up.
3313
3314 2006-12-21  Ulrich Drepper  <drepper@redhat.com>
3315
3316         * include/atomic.h (atomic_forced_read): New macro.
3317
3318 2006-12-20  SUGIOKA Toshinobu  <sugioka@itonet.co.jp>
3319
3320         * sysdeps/unix/sysv/linux/sh/bits/shm.h: New file.
3321
3322 2006-12-19  Jakub Jelinek  <jakub@redhat.com>
3323
3324         * nss/getXXbyYY_r.c: Include atomic.h.
3325         (INTERNAL (REENTRANT_NAME)): Write startp after start_fct,
3326         add atomic_write_barrier () in between.
3327
3328         * stdlib/Makefile (tests): Add tst-makecontext.
3329         * stdlib/tst-makecontext.c: New test.
3330
3331         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
3332         (__makecontext): Don't realign uc_mcontext.uc_regs.
3333
3334 2006-11-28  Jakub Jelinek  <jakub@redhat.com>
3335
3336         * elf/dl-support.c: Include dl-procinfo.h.
3337         * sysdeps/powerpc/dl-procinfo.h (PPC_PLATFORM_POWER4,
3338         PPC_PLATFORM_PPC970, PPC_PLATFORM_POWER5, PPC_PLATFORM_POWER5_PLUS,
3339         PPC_PLATFORM_POWER6, PPC_PLATFORM_CELL_BE, PPC_PLATFORM_POWER6X):
3340         Define.
3341         (_dl_string_platform): Use PPC_PLATFORM_* macros instead of
3342         hardcoded constants.
3343         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_platform): Use
3344         PPC_PLATFORM_* macros for array designators.
3345
3346 2006-11-11  Steven Munroe  <sjmunroe@us.ibm.com>
3347
3348         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 3 new cap
3349         names to the beginning.
3350         (_dl_powerpc_platforms): Add "power6x".
3351         * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
3352         (HWCAP_IMPORTANT): Add PPC_FEATURE_HAS_DFP.
3353         (_DL_PLATFORMS_COUNT): Increase.
3354         (_dl_string_platform): Handle power6x case.
3355         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_PA6T, PPC_FEATURE_HAS_DFP,
3356         PPC_FEATURE_POWER6_EXT): Define.
3357         (PPC_FEATURE_POWER5, PPC_FEATURE_POWER5_PLUS): Correct Comment.
3358
3359 2006-12-18  Jakub Jelinek  <jakub@redhat.com>
3360
3361         [BZ #3747]
3362         * stdlib/jrand48_r.c (__jrand48_r): Make sure result is in the
3363         [-2^31 .. 2^31) range.
3364         * stdlib/tst-rand48.c (main): Fix expected values for 64-bit
3365         targets.
3366         * stdlib/tst-rand48-2.c: New test.
3367         * stdlib/Makefile (tests): Add tst-rand48-2.
3368
3369 2006-12-14  Jakub Jelinek  <jakub@redhat.com>
3370
3371         * misc/tst-pselect.c (do_test): Fix sigblock argument.
3372
3373 2006-12-14  Ulrich Drepper  <drepper@redhat.com>
3374
3375         * misc/tst-pselect.c (do_test): Make sure the helper process is
3376         terminating when the test is aborted.
3377
3378 2006-12-13  Ulrich Drepper  <drepper@redhat.com>
3379
3380         * sysdeps/unix/sysv/linux/bits/statvfs.h: Define ST_RELATIME.
3381         * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags):
3382         Handle relatime mount option.
3383
3384         [BZ #2337]
3385         * libio/Makefile (tests): Add tst-setvbuf1.
3386         * libio/tst-setvbuf1.c: New file.
3387
3388 2006-12-08  Jakub Jelinek  <jakub@redhat.com>
3389
3390         [BZ #2337]
3391         * libio/genops.c (__uflow): Fix a typo.
3392         * libio/wfiledoalloc.c (_IO_wfile_doallocate): Don't stat
3393         nor set _IO_LINE_BUF bit here.  Size the wide buffer based on
3394         the narrow buffer size.
3395
3396 2006-11-24  Jakub Jelinek  <jakub@redhat.com>
3397
3398         [BZ #2337]
3399         * libio/libio.h (_IO_FLAGS2_USER_WBUF): Define.
3400         * libio/wgenops.c (_IO_wsetb, _IO_wdefault_finish): Test and set
3401         _IO_FLAGS2_USER_WBUF bit in _flags2 instead of _IO_USER_BUF bit
3402         in _flags.
3403         * libio/wstrops.c (_IO_wstr_overflow, enlarge_userbuf,
3404         _IO_wstr_finish): Likewise.
3405         * libio/wmemstream.c (open_wmemstream): Likewise.
3406         * libio/fileops.c (_IO_new_file_close_it): Call _IO_set[bgp]
3407         even for wide streams.
3408
3409 2006-12-13  Jakub Jelinek  <jakub@redhat.com>
3410
3411         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Include
3412         kernel-features.h.
3413
3414 2006-12-11  Ulrich Drepper  <drepper@redhat.com>
3415
3416         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Parse thousand
3417         separators also if no non-zero digits found.
3418         * stdlib/Makefile (tests): Add tst-strtod3.
3419
3420 2006-12-09  Ulrich Drepper  <drepper@redhat.com>
3421
3422         [BZ #3632]
3423         * include/features.h: Fix comment about default value for
3424         _POSIX_C_SOURCE.
3425
3426         [BZ #3664]
3427         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix test to recognize
3428         empty parsed strings.
3429         * stdlib/Makefile (tests): Add tst-strtod2.
3430         * stdlib/tst-strtod2.c: New file.
3431
3432         [BZ #3673]
3433         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix exp_limit
3434         computation.
3435         * stdlib/Makefile (tests): Add tst-atof2.
3436         * stdlib/tst-atof2.c: New file.
3437
3438         [BZ #3674]
3439         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Adjust exponent value
3440         correctly if removing trailing zero of hex-float.
3441         * stdlib/Makefile (tests): Add tst-atof1.
3442         * stdlib/tst-atof1.c: New file.
3443
3444 2006-12-09  Jakub Jelinek  <jakub@redhat.com>
3445
3446         * misc/mntent_r.c (__hasmntopt): Check p[optlen] even when p == rest.
3447         Start searching for next comma at p rather than rest.
3448         * misc/Makefile (tests): Add tst-mntent2.
3449         * misc/tst-mntent2.c: New test.
3450
3451         * misc/getusershell.c (initshells): Check for integer overflows.
3452         Make strings buffer one bigger as fgets always succeeds when second
3453         argument is 1.  Don't use calloc for shells array.  Disallow
3454         / as shell.
3455
3456 2006-12-08  Ulrich Drepper  <drepper@redhat.com>
3457
3458         * malloc/memusage.c: Handle realloc with new size of zero and
3459         non-NULL pointer correctly.
3460         (me): Really write first record twice.
3461         (struct entry): Make format bi-arch safe.
3462         (dest): Write out more realloc statistics.
3463         * malloc/memusagestat.c (struct entry): Make format bi-arch safe.
3464
3465 2006-12-05  Jakub Jelinek  <jakub@redhat.com>
3466
3467         * nis/nis_subr.c (nis_getnames): Revert last change.
3468
3469 2006-12-04  Jakub Jelinek  <jakub@redhat.com>
3470
3471         * sysdeps/unix/sysv/linux/ttyname.c: Include termios.h.
3472         (ttyname): Use tcgetattr instead of isatty, don't set errno to ENOTTY.
3473         * sysdeps/unix/sysv/linux/ttyname_r.c: Include termios.h.
3474         (__ttyname_r): Use tcgetattr instead of isatty, don't set errno to
3475         ENOTTY.
3476         * io/Makefile: Add rules to build and run tst-ttyname_r test.
3477         * io/tst-ttyname_r.c: New test.
3478
3479 2006-12-03  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3480
3481         * sysdeps/unix/sysv/linux/sh/sys/io.h: Removed.
3482
3483 2006-11-30  H.J. Lu  <hongjiu.lu@intel.com>
3484
3485         * sysdeps/i386/i686/memcmp.S: Use jump table as the base of
3486         jump table entries.
3487
3488 2006-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
3489
3490         * sysdeps/unix/sysv/linux/i386/clone.S: Provide CFI for the outermost
3491         `clone' function to ensure proper unwinding stop of gdb.
3492         * sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.
3493
3494 2006-12-01  Ulrich Drepper  <drepper@redhat.com>
3495
3496         * nscd/nscd.init: Remove obsolete and commented-out -S option
3497         handling.
3498
3499 2006-11-23  Jakub Jelinek  <jakub@redhat.com>
3500
3501         [BZ #3514]
3502         * manual/string.texi (strncmp): Fix pastos from wcscmp description.
3503
3504         [BZ #3515]
3505         * manual/string.texi (strtok): Remove duplicate paragraph.
3506
3507 2006-12-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
3508
3509         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Fix compatibility with
3510         libgcc not supporting `rflags' unwinding (register # >= 17).
3511
3512 2006-11-30  Jakub Jelinek  <jakub@redhat.com>
3513
3514         * sunrpc/svc_run.c (svc_run): Set my_pollfd to new_pollfd if realloc
3515         succeeded.
3516
3517 2006-11-29  Daniel Jacobowitz  <dan@codesourcery.com>
3518             Jakub Jelinek  <jakub@redhat.com>
3519             Jan Kratochvil  <jan.kratochvil@redhat.com>
3520
3521         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (restore_rt): Add correct
3522         unwind information.
3523         * sysdeps/unix/sysv/linux/x86_64/Makefile: Provide symbols for
3524         'restore_rt' even in the 'signal' directory.
3525         * sysdeps/unix/sysv/linux/x86_64/ucontext_i.sym: Extend the regs list.
3526
3527 2006-11-27  Jakub Jelinek  <jakub@redhat.com>
3528
3529         [BZ #3559]
3530         * sunrpc/svc_run.c (svc_run): Fail instead of segfaulting if
3531         malloc crashed.  Don't allocate memory unnecessarily in each
3532         loop.
3533
3534 2006-10-21  Jakub Jelinek  <jakub@redhat.com>
3535
3536         * resolv/mapv4v6addr.h (map_v4v6_address): Fix last change.
3537
3538 2006-11-20  Ulrich Drepper  <drepper@redhat.com>
3539
3540         * resolv/mapv4v6addr.h (map_v4v6_address): Optimize a bit.
3541
3542 2006-11-18  Bruno Haible  <bruno@clisp.org>
3543
3544         * sysdeps/unix/sysv/linux/i386/getgroups.c (__getgroups): Invoke
3545         __sysconf only after having tried to call getgroups32.
3546
3547 2006-11-19  Ulrich Drepper  <drepper@redhat.com>
3548
3549         * nss/nss_files/files-hosts.c (LINE_PARSER): Support IPv6-style
3550         addresses for IPv4 queries if they can be mapped.
3551
3552 2006-11-16  Jakub Jelinek  <jakub@redhat.com>
3553
3554         * sysdeps/x86_64/fpu/s_copysignf.S (__copysignf): Switch to .text.
3555         * sysdeps/x86_64/fpu/s_copysign.S (__copysign): Likewise.
3556         (signmask): Add .size directive.
3557         (othermask): Add .type directive.
3558
3559 2006-11-14  Ulrich Drepper  <drepper@redhat.com>
3560
3561         * po/nl.po: Update from translation team.
3562
3563         * timezone/zdump.c: Redo fix for BZ #3137.
3564
3565 2006-11-14  Jakub Jelinek  <jakub@redhat.com>
3566
3567         * nss/nss_files/files-alias.c (get_next_alias): Set line back
3568         to first_unused after parsing :include: file.
3569
3570 2006-11-10  Ulrich Drepper  <drepper@redhat.com>
3571
3572         * timezone/africa: Update from tzdata2006o.
3573         * timezone/antarctica: Likewise.
3574         * timezone/asia: Likewise.
3575         * timezone/australasia: Likewise.
3576         * timezone/backward: Likewise.
3577         * timezone/europe: Likewise.
3578         * timezone/iso3166.tab: Likewise.
3579         * timezone/northamerica: Likewise.
3580         * timezone/southamerica: Likewise.
3581         * timezone/zone.tab: Likewise.
3582
3583         * time/tzfile.c (__tzfile_read): Extend to handle new file format
3584         on machines with 64-bit time_t.
3585
3586         * timezone/checktab.awk: Update from tzcode2006o.
3587         * timezone/ialloc.c: Likewise.
3588         * timezone/private.h: Likewise.
3589         * timezone/scheck.c: Likewise.
3590         * timezone/tzfile.h: Likewise.
3591         * timezone/tzselect.ksh: Likewise.
3592         * timezone/zdump.c: Likewise.
3593         * timezone/zic.c: Likewise.
3594
3595         [BZ #3483]
3596         * elf/ldconfig.c (main): Call setlocale and textdomain.
3597         Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
3598
3599         [BZ #3480]
3600         * manual/argp.texi: Fix typos.
3601         * manual/charset.texi: Likewise.
3602         * manual/errno.texi: Likewise.
3603         * manual/filesys.texi: Likewise.
3604         * manual/lang.texi: Likewise.
3605         * manual/maint.texi: Likewise.
3606         * manual/memory.texi: Likewise.
3607         * manual/message.texi: Likewise.
3608         * manual/resource.texi: Likewise.
3609         * manual/search.texi: Likewise.
3610         * manual/signal.texi: Likewise.
3611         * manual/startup.texi: Likewise.
3612         * manual/stdio.texi: Likewise.
3613         * manual/sysinfo.texi: Likewise.
3614         * manual/syslog.texi: Likewise.
3615         * manual/time.texi: Likewise.
3616         Patch by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
3617
3618         [BZ #3465]
3619         * sunrpc/clnt_raw.c: Minimal message improvements.
3620         * sunrpc/pm_getmaps.c: Likewise.
3621         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
3622         * nis/nis_print_group_entry.c: Likewise.
3623         * locale/programs/repertoire.c: Likewise.
3624         * locale/programs/charmap.c: Likewise.
3625         * malloc/memusage.sh: Likewise.
3626         * elf/dl-deps.c: Likewise.
3627         * locale/programs/ld-collate.c: Likewise.
3628         * libio/vswprintf.c: Likewise.
3629         * malloc/memusagestat.c: Likewise.
3630         * sunrpc/auth_unix.c: Likewise.
3631         * sunrpc/rpc_main.c: Likewise.
3632         * nscd/cache.c: Likewise.
3633         * locale/programs/repertoire.c: Unify output messages.
3634         * locale/programs/charmap.c: Likewise.
3635         * locale/programs/ld-ctype.c: Likewise.
3636         * locale/programs/ld-monetary.c: Likewise.
3637         * locale/programs/ld-numeric.c: Likewise.
3638         * locale/programs/ld-time.c: Likewise.
3639         * elf/ldconfig.c: Likewise.
3640         * nscd/selinux.c: Likewise.
3641         * elf/cache.c: Likewise.
3642         Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
3643
3644         [BZ #3451]
3645         * sysdeps/i386/fpu/bits/mathinline.h (floor): Make rounding mode
3646         change atomic.
3647         (ceil): Likewise.
3648
3649 2006-11-10  Jakub Jelinek  <jakub@redhat.com>
3650
3651         * string/strxfrm_l.c (STRXFRM): Fix trailing \1 optimization
3652         if N is one bigger than return value.
3653         * string/tst-strxfrm2.c (do_test): Also test strxfrm with l1 + 1
3654         and l1 last arguments, if buf is defined, verify the return value
3655         equals to strlen (buf) and verify no byte beyond passed length
3656         is modified.
3657
3658 2006-11-10  Ulrich Drepper  <drepper@redhat.com>
3659
3660         * po/sv.po: Update from translation team.
3661
3662 2006-11-09  Ulrich Drepper  <drepper@redhat.com>
3663
3664         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word): Add
3665         noinline attribute.
3666
3667 2006-11-10  Jakub Jelinek  <jakub@redhat.com>
3668
3669         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Add
3670         noinline attribute.
3671
3672         * sysdeps/gnu/siglist.c (__old_sys_siglist, __old_sys_sigabbrev):
3673         Use __new_sys_siglist instead of _sys_siglist_internal as
3674         second macro argument.
3675         (_old_sys_siglist): Use declare_symbol_alias macro instead of
3676         strong_alias.
3677
3678 2006-11-09  Ulrich Drepper  <drepper@redhat.com>
3679
3680         [BZ #3493]
3681         * posix/unistd.h (sysconf): Remove const attribute.
3682
3683         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Fix test for
3684         temporary or deprecated addresses.
3685         Patch by Sridhar Samudrala <sri@us.ibm.com>.
3686
3687         * string/Makefile (tests): Add tst-strxfrm2.
3688         * string/tst-strxfrm2.c: New file.
3689
3690 2006-10-09  Jakub Jelinek  <jakub@redhat.com>
3691
3692         * elf/dl-debug.c (_dl_debug_initialize): Check r->r_map for 0
3693         rather than r->r_brk.
3694
3695 2006-11-08  Jakub Jelinek  <jakub@redhat.com>
3696
3697         * string/strxfrm_l.c (STRXFRM): Do the trailing \1 removal
3698         optimization even if needed > n.
3699
3700         * elf/dl-load.c (decompose_rpath): Return bool rather than void.
3701         If l->l_name is on inhibit_rpath list, set sps->dirs to -1 and
3702         return false, otherwise return true.
3703         (cache_rpath): Return decompose_rpath return value.
3704
3705 2006-11-07  Jakub Jelinek  <jakub@redhat.com>
3706
3707         * include/libc-symbols.h (declare_symbol): Rename to...
3708         (declare_symbol_alias): ... this.  Add ORIGINAL argument, imply
3709         strong_alias (ORIGINAL, SYMBOL) in asm to make sure it preceedes
3710         .size directive.
3711         * sysdeps/gnu/errlist-compat.awk: Adjust for declare_symbol_alias
3712         changes.
3713         * sysdeps/gnu/siglist.c: Likewise.
3714
3715 2006-11-03  Steven Munroe  <sjmunroe@us.ibm.com>
3716
3717         * sysdeps/powerpc/fpu/bits/mathinline.h
3718         [__LIBC_INTERNAL_MATH_INLINES]: Moved to ...
3719         * sysdeps/powerpc/fpu/math_private.h: ...here.  New file.
3720
3721 2006-11-05  Ulrich Drepper  <drepper@redhat.com>
3722
3723         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word):
3724         Update handling of cache descriptor 0x49 for new models.
3725         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word):
3726         Likewise.
3727
3728 2006-11-02  Jakub Jelinek  <jakub@redhat.com>
3729
3730         * malloc/memusage.c (dest): Reset not_me back to false after
3731         printing statistics.
3732
3733 2006-11-02  Ulrich Drepper  <drepper@redhat.com>
3734
3735         * configure.in: Work around ld --help change and avoid -z relro
3736         test completely if the architecture doesn't care about security.
3737
3738 2006-11-01  Ulrich Drepper  <drepper@redhat.com>
3739
3740         * po/sv.po: Update from translation team.
3741
3742 2006-10-31  Ulrich Drepper  <drepper@redhat.com>
3743
3744         * stdlib/atexit.c (atexit): Don't mark as hidden when used to
3745         generate compatibility version.
3746
3747 2006-10-29  Ulrich Drepper  <drepper@redhat.com>
3748
3749         * configure.in: Relax -z relro requirement a bit.
3750
3751         * po/sv.po: Update from translation team.
3752
3753 2006-10-29  Jakub Jelinek  <jakub@redhat.com>
3754
3755         * elf/dl-sym.c (do_sym): Use RTLD_SINGLE_THREAD_P.
3756         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Likewise.
3757         * elf/dl-close.c (_dl_close_worker): Likewise.
3758         * elf/dl-open.c (_dl_open_worker): Likewise.
3759         * sysdeps/generic/sysdep-cancel.h (RTLD_SINGLE_THREAD_P): Define.
3760
3761 2006-10-27  Ulrich Drepper  <drepper@redhat.com>
3762
3763         * configure.in: Require assembler support for visibility, compiler
3764         support for visibility and aliases, linker support for various -z
3765         options.
3766         * Makeconfig: Remove conditional code which now is unnecessary.
3767         * config.h.in: Likewise.
3768         * config.make.in: Likewise.
3769         * dlfcn/Makefile: Likewise.
3770         * elf/Makefile: Likewise.
3771         * elf/dl-load.c: Likewise.
3772         * elf/rtld.c: Likewise.
3773         * include/libc-symbols.h: Likewise.
3774         * include/stdio.h: Likewise.
3775         * io/Makefile: Likewise.
3776         * io/fstat.c: Likewise.
3777         * io/fstat64.c: Likewise.
3778         * io/fstatat.c: Likewise.
3779         * io/fstatat64.c: Likewise.
3780         * io/lstat.c: Likewise.
3781         * io/lstat64.c: Likewise.
3782         * io/mknod.c: Likewise.
3783         * io/mknodat.c: Likewise.
3784         * io/stat.c: Likewise.
3785         * io/stat64.c: Likewise.
3786         * libio/stdio.c: Likewise.
3787         * nscd/Makefile: Likewise.
3788         * stdlib/Makefile: Likewise.
3789         * stdlib/atexit.c: Likewise.
3790         * sysdeps/generic/ldsodefs.h: Likewise.
3791         * sysdeps/i386/dl-machine.h: Likewise.
3792         * sysdeps/i386/sysdep.h: Likewise.
3793         * sysdeps/i386/i686/memcmp.S: Likewise.
3794         * sysdeps/powerpc/powerpc32/sysdep.h: Likewise.
3795         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
3796         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
3797
3798         * Makerules: USE_TLS support is now default.
3799         * tls.make.c: Likewise.
3800         * csu/Versions: Likewise.
3801         * csu/libc-start.c: Likewise.
3802         * csu/libc-tls.c: Likewise.
3803         * csu/version.c: Likewise.
3804         * dlfcn/dlinfo.c: Likewise.
3805         * elf/dl-addr.c: Likewise.
3806         * elf/dl-cache.c: Likewise.
3807         * elf/dl-close.c: Likewise.
3808         * elf/dl-iteratephdr.c: Likewise.
3809         * elf/dl-load.c: Likewise.
3810         * elf/dl-lookup.c: Likewise.
3811         * elf/dl-object.c: Likewise.
3812         * elf/dl-open.c: Likewise.
3813         * elf/dl-reloc.c: Likewise.
3814         * elf/dl-support.c: Likewise.
3815         * elf/dl-sym.c: Likewise.
3816         * elf/dl-sysdep.c: Likewise.
3817         * elf/dl-tls.c: Likewise.
3818         * elf/ldconfig.c: Likewise.
3819         * elf/rtld.c: Likewise.
3820         * elf/tst-tls-dlinfo.c: Likewise.
3821         * elf/tst-tls1.c: Likewise.
3822         * elf/tst-tls10.h: Likewise.
3823         * elf/tst-tls14.c: Likewise.
3824         * elf/tst-tls2.c: Likewise.
3825         * elf/tst-tls3.c: Likewise.
3826         * elf/tst-tls4.c: Likewise.
3827         * elf/tst-tls5.c: Likewise.
3828         * elf/tst-tls6.c: Likewise.
3829         * elf/tst-tls7.c: Likewise.
3830         * elf/tst-tls8.c: Likewise.
3831         * elf/tst-tls9.c: Likewise.
3832         * elf/tst-tlsmod1.c: Likewise.
3833         * elf/tst-tlsmod13.c: Likewise.
3834         * elf/tst-tlsmod13a.c: Likewise.
3835         * elf/tst-tlsmod14a.c: Likewise.
3836         * elf/tst-tlsmod2.c: Likewise.
3837         * elf/tst-tlsmod3.c: Likewise.
3838         * elf/tst-tlsmod4.c: Likewise.
3839         * elf/tst-tlsmod5.c: Likewise.
3840         * elf/tst-tlsmod6.c: Likewise.
3841         * include/errno.h: Likewise.
3842         * include/link.h: Likewise.
3843         * include/tls.h: Likewise.
3844         * locale/global-locale.c: Likewise.
3845         * locale/localeinfo.h: Likewise.
3846         * malloc/arena.c: Likewise.
3847         * malloc/hooks.c: Likewise.
3848         * malloc/malloc.c: Likewise.
3849         * resolv/Versions: Likewise.
3850         * sysdeps/alpha/dl-machine.h: Likewise.
3851         * sysdeps/alpha/libc-tls.c: Likewise.
3852         * sysdeps/generic/ldsodefs.h: Likewise.
3853         * sysdeps/generic/tls.h: Likewise.
3854         * sysdeps/i386/dl-machine.h: Likewise.
3855         * sysdeps/ia64/dl-machine.h: Likewise.
3856         * sysdeps/ia64/libc-tls.c: Likewise.
3857         * sysdeps/mach/hurd/fork.c: Likewise.
3858         * sysdeps/mach/hurd/i386/tls.h: Likewise.
3859         * sysdeps/powerpc/powerpc32/dl-machine.c: Likwise.
3860         * sysdeps/powerpc/powerpc32/dl-machine.h: Likewise.
3861         * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
3862         * sysdeps/s390/libc-tls.c: Likewise.
3863         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
3864         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
3865         * sysdeps/sh/dl-machine.h: Likewise.
3866         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
3867         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
3868         * sysdeps/x86_64/dl-machine.h: Likewise.
3869
3870         * elf/dl-close.c (_dl_close_worker): Renamed from _dl_close and
3871         split out locking and parameter checking.
3872         (_dl_close): Call _dl_close_worker after locking and checking.
3873         * elf/dl-open.c (_dl_open): Call _dl_close_worker instead of
3874         _dl_close.
3875         * elf/Makefile: Add rules to build and run tst-thrlock.
3876         * elf/tst-thrlock.c:  New file.
3877
3878         [BZ #3426]
3879         * stdlib/stdlib.h: Adjust comment for canonicalize_file_name to
3880         reality.
3881
3882         [BZ #3429]
3883         * elf/dl-open.c (dl_open_worker): Keep holding dl_load_lock until
3884         we are sure we do not need it anymore for _dl_close.  Also move
3885         the asserts inside the lock region.
3886         Patch mostly by Suzuki <suzuki@in.ibm.com>.
3887
3888 2006-10-27  Jakub Jelinek  <jakub@redhat.com>
3889
3890         * elf/dl-lookup.c (_dl_debug_bindings): Remove unused symbol_scope
3891         argument.
3892         (_dl_lookup_symbol_x): Adjust caller.
3893
3894         * sysdeps/generic/ldsodefs.h (struct link_namespaces): Remove
3895         _ns_global_scope.
3896         * elf/rtld.c (dl_main): Don't initialize _ns_global_scope.
3897
3898         * elf/dl-libc.c: Revert l_scope name changes.
3899         * elf/dl-load.c: Likewise.
3900         * elf/dl-object.c: Likewise.
3901         * elf/rtld.c: Likewise.
3902         * elf/dl-close.c (_dl_close): Likewise.
3903         * elf/dl-open.c (dl_open_worker): Likewise.  If not SINGLE_THREAD_P,
3904         always use __rtld_mrlock_{change,done}.  Always free old scope list
3905         here if not l_scope_mem.
3906         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Revert l_scope name
3907         change.  Never free scope list here.  Just __rtld_mrlock_lock before
3908         the lookup and __rtld_mrlock_unlock it after the lookup.
3909         * elf/dl-sym.c: Likewise.
3910         * include/link.h (struct r_scoperec): Remove.
3911         (struct link_map): Replace l_scoperec with l_scope, l_scoperec_mem
3912         with l_scope_mem and l_scoperec_lock with l_scope_lock.
3913
3914 2006-10-25  Ulrich Drepper  <drepper@redhat.com>
3915
3916         * sysdeps/gnu/netinet/tcp.h: Define TCP_CONGESTION.
3917
3918 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
3919
3920         * configure.in: Disable building profile libraries by default.
3921
3922 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
3923
3924         * sunrpc/xdr_mem.c (xdrmem_setpos): Don't compare addresses
3925         as signed longs, check for x_base + pos overflow.
3926         * sunrpc/Makefile (tests): Add tst-xdrmem2.
3927         * sunrpc/tst-xdrmem2.c: New test.
3928
3929 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
3930
3931         * elf/dl-lookup.c (_dl_lookup_symbol_x): Add warning to
3932         _dl_lookup_symbol_x code.
3933
3934 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
3935
3936         * elf/dl-runtime.c: Include sysdep-cancel.h.
3937         (_dl_fixup, _dl_profile_fixup): Use __rtld_mrlock_* and
3938         scoperec->nusers only if !SINGLE_THREAD_P.  Use atomic_*
3939         instead of catomic_* macros.
3940         * elf/dl-sym.c: Include sysdep-cancel.h.
3941         (do_sym): Use __rtld_mrlock_* and scoperec->nusers only
3942         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
3943         * elf/dl-close.c: Include sysdep-cancel.h.
3944         (_dl_close): Use __rtld_mrlock_* and scoperec->nusers only
3945         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
3946         * elf/dl-open.c: Include sysdep-cancel.h.
3947         (dl_open_worker): Use __rtld_mrlock_* and scoperec->nusers only
3948         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
3949
3950 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
3951
3952         [BZ #3313]
3953         * malloc/malloc.c (malloc_consolidate): Set maxfb to address of last
3954         fastbin rather than end of fastbin array.
3955
3956 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
3957
3958         * sysdeps/i386/i486/bits/atomic.h (catomic_decrement): Use correct
3959         body macro.
3960         * sysdeps/x86_64/bits/atomic.h
3961         (__arch_c_compare_and_exchange_val_64_acq): Add missing casts.
3962         (catomic_decrement): Use correct body macro.
3963
3964 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
3965
3966         * include/atomic.h: Add a unique prefix to all local variables
3967         in macros.
3968         * csu/tst-atomic.c (do_test): Test also catomic_* macros.
3969
3970 2006-10-16  Ulrich Drepper  <drepper@redhat.com>
3971
3972         [BZ #3369]
3973         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Fix typos in rules 4
3974         and 7.
3975
3976 2006-10-14  Ulrich Drepper  <drepper@redhat.com>
3977
3978         * resolv/arpa/nameser.h: Document that ns_t_a6 is deprecated.
3979
3980 2006-10-13  Ulrich Drepper  <drepper@redhat.com>
3981
3982         [BZ #3313]
3983         * malloc/malloc.c (malloc_consolidate): Don't use get_fast_max to
3984         determine highest fast bin to consolidate, always look into all of
3985         them.
3986         (do_check_malloc_state): Only require for empty bins for large
3987         sizes in main arena.
3988
3989         * libio/stdio.h: Add more __wur attributes.
3990
3991         * elf/dl-minimal.c (realloc): Optimize last patch.
3992
3993 2006-10-12  Richard Sandiford  <richard@codesourcery.com>
3994
3995         [BZ #3352]
3996         * elf/dl-minimal.c (realloc): Let malloc() return a new pointer,
3997         and use memcpy() if it does.
3998
3999 2006-11-12  Andreas Jaeger  <aj@suse.de>
4000
4001         [BZ #2510]
4002         * manual/search.texi (Hash Search Function): Clarify.
4003         (Array Search Function): Clarify.
4004
4005 2006-11-12  Joseph Myers  <joseph@codesourcery.com>
4006
4007         [BZ #2830]
4008         * math/atest-exp.c (main): Cast hex value to mp_limb_t before
4009         shifting.
4010         * math/atest-exp2.c (read_mpn_hex): Likewise.
4011         * math/atest-sincos.c (main): Likewise.
4012
4013 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
4014
4015         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_pwait.
4016         * sysdeps/unix/sysv/linux/sys/epoll.h: Declare epoll_pwait.
4017         * sysdeps/unix/sysv/linux/Versions (libc): Add epoll_pwait for
4018         version GLIBC_2.6.
4019         * Versions.def: Add GLIBC_2.6 for libc.
4020
4021         * sysdeps/unix/sysv/linux/i386/sysdep.h (DOARGS_6): Fix offset.
4022
4023         * sysdeps/i386/i486/bits/atomic.h: Add catomic_* support.
4024
4025 2006-10-11  Jakub Jelinek  <jakub@redhat.com>
4026
4027         * malloc/malloc.c (_int_malloc): Remove unused any_larger variable.
4028
4029         * nis/nis_defaults.c (__nis_default_access): Don't call getenv twice.
4030
4031         * nis/nis_subr.c (nis_getnames): Use __secure_getenv instead of getenv.
4032         * sysdeps/generic/unsecvars.h: Add NIS_PATH.
4033
4034 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
4035
4036         * include/atomic.c: Define catomic_* operations.
4037         * sysdeps/x86_64/bits/atomic.h: Likewise.  Fix a few minor problems.
4038         * stdlib/cxa_finalize.c: Use catomic_* operations instead of atomic_*.
4039         * malloc/memusage.c: Likewise.
4040         * gmon/mcount.c: Likewise.
4041         * elf/dl-close.c: Likewise.
4042         * elf/dl-open.c: Likewise.
4043         * elf/dl-profile.c: Likewise.
4044         * elf/dl-sym.c: Likewise.
4045         * elf/dl-runtime.c: Likewise.
4046         * elf/dl-fptr.c: Likewise.
4047         * resolv/res_libc.c: Likewise.
4048
4049 2006-10-10  Ulrich Drepper  <drepper@redhat.com>
4050
4051         * nis/nis_subr.c (nis_getnames): Add trailing dot to NIS_PATH
4052         components which lack them.
4053
4054         * nis/nis_subr.c (nis_getnames): Make sure that we always return
4055         at least one entry consisting of the parameter concatenated with
4056         the domain.
4057
4058 2006-10-10  Roland McGrath  <roland@frob.com>
4059
4060         * sysdeps/mach/hurd/utimes.c: Use a union to avoid an improper cast.
4061         * sysdeps/mach/hurd/futimes.c: Likewise.
4062         * sysdeps/mach/hurd/lutimes.c: Likewise.
4063
4064 2006-10-09  Ulrich Drepper  <drepper@redhat.com>
4065             Jakub Jelinek  <jakub@redhat.com>
4066
4067         Implement reference counting of scope records.
4068         * elf/dl-close.c (_dl_close): Remove all scopes from removed objects
4069         from the list in objects which remain.  Always allocate new scope
4070         record.
4071         * elf/dl-open.c (dl_open_worker): When growing array for scopes,
4072         don't resize, allocate a new one.
4073         * elf/dl-runtime.c: Update reference counters before using a scope
4074         array.
4075         * elf/dl-sym.c: Likewise.
4076         * elf/dl-libc.c: Adjust for l_scope name change.
4077         * elf/dl-load.c: Likewise.
4078         * elf/dl-object.c: Likewise.
4079         * elf/rtld.c: Likewise.
4080         * include/link.h: Include <rtld-lowlevel.h>.  Define struct
4081         r_scoperec.  Replace r_scope with pointer to r_scoperec structure.
4082         Add l_scoperec_lock.
4083         * sysdeps/generic/ldsodefs.h: Include <rtld-lowlevel.h>.
4084         * sysdeps/generic/rtld-lowlevel.h: New file.
4085
4086         * include/atomic.h: Rename atomic_and to atomic_and_val and
4087         atomic_or to atomic_or_val.  Define new macros atomic_and and
4088         atomic_or which do not return values.
4089         * sysdeps/x86_64/bits/atomic.h: Define atomic_and and atomic_or.
4090         Various cleanups.
4091         * sysdeps/i386/i486/bits/atomic.h: Likewise.
4092
4093         * po/sv.po: Update from translation team.
4094
4095 2006-10-07  Ulrich Drepper  <drepper@redhat.com>
4096
4097         * Versions.def: Add GLIBC_2.6 to libpthread.
4098
4099         * include/shlib-compat.h (SHLIB_COMPAT): Expand parameters before use.
4100         (versioned_symbol): Likewise.
4101         (compat_symbol): Likewise.
4102
4103         * po/tr.po: Update from translation team.
4104
4105 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
4106
4107         * nis/Banner: Removed.  It's been integral part forever and the
4108         author info is incomplete anyway.
4109         * libio/Banner: Likewise.
4110
4111         * nis/nis_table.c (nis_list): If __follow_path fails in the new
4112         code, make sure the nis_freeresult call doesn't crash and that the
4113         result is reported correctly.
4114
4115 2006-09-27  Jakub Jelinek  <jakub@redhat.com>
4116
4117         * nis/nis_table.c (nis_list): Handle FOLLOW_PATH | ALL_RESULTS
4118         when callback is NULL.
4119
4120         * nis/Versions (libnss_nisplus): Add
4121         _nss_nisplus_initgroups_dyn@@GLIBC_PRIVATE.
4122         * nis/Makefile (libnss_nisplus-routines): Add nisplus-initgroups.
4123         * nis/nss_nisplus/nisplus-grp.c (tablename_val, tablename_len,
4124         _nss_create_tablename): Rename to...
4125         (grp_tablename_val, grp_tablename_len, _nss_grp_create_tablename):
4126         ... these.  No longer static.
4127         (internal_setgrent): Adjust users.
4128         (_nss_nisplus_getgrnam_r, _nss_nisplus_getgrgid_r): Likewise.
4129         Don't use locking around _nss_grp_create_tablename call.
4130         * nis/nss_nisplus/nisplus-initgroups.c: New file.
4131
4132 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
4133
4134         * version.h (VERSION): Bump to 2.5.90 for new development tree.
4135
4136 2006-10-06  Andreas Jaeger  <aj@suse.de>
4137
4138         * include/features.h (__GLIBC_MINOR__): It's glibc 2.5 now.
4139
4140 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
4141
4142         * po/pl.po: Update from translation team.
4143
4144         * nscd/nscd.c (main): Fix typo in message.
4145         Patch by Jakub Bogsz <qboosh@pld-linux.org>.
4146
4147 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
4148
4149         [BZ #3291]
4150         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
4151         errno.h, signal.h, unistd.h and sysdep-cancel.h.
4152         (__sigprocmask): Define.
4153
4154 2006-10-02  Ulrich Drepper  <drepper@redhat.com>
4155
4156         * elf/rtld.c (dl_main): Don't use prelinking if LD_DYNAMIC_WEAK is
4157         used.
4158
4159 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
4160
4161         * nscd/mem.c (mempool_alloc): Round array size to 16 bytes
4162         in oldtotal and newtotal calculation.
4163         * nscd/nscd-client.h (struct mapped_database): Add datasize
4164         field.
4165         * nscd/nscd_helper.c (get_mapping): Initialize datasize field.
4166         (__nscd_get_map_ref): Get a new mapping even if mapping's data_size
4167         increased.
4168         (__nscd_cache_search): Add checks to make sure we never reference
4169         data beyond the current mapping.
4170
4171 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
4172
4173         * sysdeps/posix/getaddrinfo.c (match_prefix): Make mask and val
4174         variables const to avoid compiler warnings.
4175
4176         * io/fts.c (fts_close): Remove redundant checks.
4177         (fts_build): Likewise.
4178         (fts_palloc): Likewise.
4179
4180         * manual/message.texi (Advanced gettext functions,
4181         Using gettextized software): Fix typos.
4182
4183 2006-09-30  Ulrich Drepper  <drepper@redhat.com>
4184
4185         * posix/glob.c (glob_in_dir): Add some comments and asserts to
4186         explain why there are no leaks.
4187
4188 2006-09-29  Ulrich Drepper  <drepper@redhat.com>
4189
4190         * libio/wmemstream.c: Include <wchar.h>.
4191         * libio/bug-wmemstream1.c: Likewise.
4192         * libio/tst-wmemstream1.c: Likewise.
4193         * libio/tst-wmemstream2.c: Likewise.
4194
4195         * version.h (RELEASE): Bump to 2.5.
4196         * README: Regenerated.
4197
4198         * locale/iso-3166.def: Add Aaland Islands and Montenegro.
4199
4200         [BZ #3273]
4201         * nscd/nscd_initgroups.c (__nscd_getgrouplist): It is OK to have
4202         found no group members.
4203         Patch by Petr Baudis.
4204
4205 2006-09-29  Jakub Jelinek  <jakub@redhat.com>
4206
4207         * elf/rtld.c (_dl_start_final): If not USE___THREAD, don't
4208         assert bootstrap_map.l_tls_modid is zero.
4209         (_dl_start): Initialize bootstrap_map.l_tls_modid to 0
4210         if USE___THREAD.
4211
4212 2006-09-27  Ulrich Drepper  <drepper@redhat.com>
4213
4214         * libio/stdio.h: Move open_wmemstream prototype to ...
4215         * wcsmbs/wchar.h: ... here.
4216
4217 2006-09-25  Jakub Jelinek  <jakub@redhat.com>
4218
4219         [BZ #3252]
4220         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Handle only
4221         fchownat syscall and __ASSUME_LCHOWN_SYSCALL case inline, call
4222         __{,l}chown to handle the rest.
4223         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Handle only
4224         fchownat syscall and __ASSUME_32BITUIDS case inline, call
4225         __{,l}chown to handle the rest.
4226         * sysdeps/unix/sysv/linux/sparc/sparc32/fchownat.c: Include
4227         i386/fchownat.c.
4228         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c: Likewise.
4229         * sysdeps/unix/sysv/linux/sh/fchownat.c: Likewise.
4230
4231         [BZ #3253]
4232         * posix/glob.c (glob_in_dir): Don't alloca one struct globlink at a
4233         time, rather allocate increasingly bigger arrays of pointers, if
4234         possible with alloca, if too large with malloc.
4235
4236 2006-09-24  Jakub Jelinek  <jakub@redhat.com>
4237
4238         * sysdeps/powerpc/fpu/libm-test-ulps: Updated.
4239
4240         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Fix 2 typos.
4241
4242 2006-09-24  Ulrich Drepper  <drepper@redhat.com>
4243
4244         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Implement rule 4,
4245         home addresses.
4246         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Recognize
4247         IFA_F_HOMEADDRESS flag for interfaces.
4248         * include/ifaddrs.h (struct in6addrinfo): Define
4249         in6ai_homeaddress.
4250
4251 2006-09-21  Jakub Jelinek  <jakub@redhat.com>
4252
4253         [BZ #3225]
4254         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (PTR_MANGLE3,
4255         PTR_DEMANGLE3): Define.
4256         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (PTR_MANGLE3,
4257         PTR_DEMANGLE3): Likewise.
4258         * sysdeps/powerpc/powerpc32/__longjmp-common.S (__longjmp): Use them.
4259         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp):
4260         Likewise.
4261         * sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp): Likewise.
4262
4263 2006-09-20  Jakub Jelinek  <jakub@redhat.com>
4264
4265         * po/libc.pot: Regenerated.
4266         * po/be.po: Updated.
4267         * po/ca.po: Likewise.
4268         * po/cs.po: Likewise.
4269         * po/da.po: Likewise.
4270         * po/de.po: Likewise.
4271         * po/el.po: Likewise.
4272         * po/en_GB.po: Likewise.
4273         * po/es.po: Likewise.
4274         * po/fi.po: Likewise.
4275         * po/fr.po: Likewise.
4276         * po/gl.po: Likewise.
4277         * po/hr.po: Likewise.
4278         * po/hu.po: Likewise.
4279         * po/ja.po: Likewise.
4280         * po/ko.po: Likewise.
4281         * po/nb.po: Likewise.
4282         * po/nl.po: Likewise.
4283         * po/pl.po: Likewise.
4284         * po/pt_BR.po: Likewise.
4285         * po/ru.po: Likewise.
4286         * po/rw.po: Likewise.
4287         * po/sk.po: Likewise.
4288         * po/sv.po: Likewise.
4289         * po/tr.po: Likewise.
4290         * po/zh_CN.po: Likewise.
4291         * po/zh_TW.po: Likewise.
4292
4293         [BZ #3137]
4294         * iconv/iconv_prog.c (main): Fix spelling in error message.
4295         * iconv/iconvconfig.c (main): Likewise.
4296         * locale/programs/ld-collate.c (handle_ellipsis): Likewise.
4297         * locale/programs/ld-ctype.c (charclass_symbolic_ellipsis): Likewise.
4298         * locale/programs/localedef.c (main): Likewise.
4299         * locale/programs/repertoire.c (repertoire_read): Likewise.
4300         * timezone/zdump.c (main): Likewise.
4301         * nscd/connections.c (handle_request): Fix spelling in log message.
4302         Patch by Malcolm Parsons <malcolm.parsons@gmail.com>.
4303
4304 2006-09-20  Ulrich Drepper  <drepper@redhat.com>
4305
4306         * inet/inet6_option.c: Also emit linker warnings for the RFC 2292
4307         interfaces.
4308
4309 2006-09-20  Andreas Jaeger  <aj@suse.de>
4310
4311         * math/libm-test.inc (lrint_test_upward): Fix typo.
4312
4313 2006-06-17  Joseph S. Myers  <joseph@codesourcery.com>
4314
4315         [BZ #2592]
4316         * math/libm-test.inc (lrint_test_tonearest): New function.
4317         (lrint_test_towardzero): New function.
4318         (lrint_test_downward): New function.
4319         (lrint_test_upward): New function.
4320         (main): Run these new tests.
4321         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Correct rounding
4322         of values near to 0.
4323         (two52): Use double not long double.
4324         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
4325         * sysdeps/ieee754/flt-32/s_llrintf.c (__llrintf): Likewise.
4326         (two23): Use float not double.
4327         * sysdeps/ieee754/flt-32/s_lrintf.c (__lrintf): Likewise.
4328         (two23): Use float not double.
4329         * sysdeps/ieee754/ldbl-128/s_llrintl.c (__llrintl): Likewise.
4330         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
4331         * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Likewise.
4332         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
4333
4334 2006-09-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4335
4336         * sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c (__makecontext):
4337         Cast sp to unsigned long to avoid compiler warning.
4338         Use __makecontext_ret function instead of a trampoline on the stack.
4339         (__makecontext_ret): New function.
4340         * sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c: Likewise.
4341
4342 2006-09-19  Jakub Jelinek  <jakub@redhat.com>
4343
4344         * elf/dl-cache.c (HWCAP_CHECK): If _DL_PLATFORMS_COUNT, but
4345         platform == -1, reject any libs with non-zero _DL_HWCAP_PLATFORM
4346         bits.
4347
4348 2006-09-19  Ulrich Drepper  <drepper@redhat.com>
4349
4350         * elf/dl-close.c (_dl_close): If dependency is not unloaded make
4351         sure no reference to the unloaded map's search list remains in the
4352         dependency's scope.
4353
4354 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
4355
4356         * elf/Makefile: Add rules to build and run unload7 test.
4357         * elf/unload7.c: New test.
4358         * elf/unload7mod1.c: New file.
4359         * elf/unload7mod2.c: New file.
4360
4361 2006-09-18  Jakub Jelinek  <jakub@redhat.com>
4362
4363         * sysdeps/unix/sysv/linux/sys/ptrace.h (PT_GETEVENTMSG): Fix pasto.
4364         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h (PTRACE_SETOPTIONS,
4365         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
4366         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h (PTRACE_SETOPTIONS,
4367         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
4368         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h (PTRACE_SETOPTIONS,
4369         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
4370         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h (PTRACE_SETOPTIONS,
4371         PTRACE_GETEVENTMSG): Likewise.
4372         (PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Change to the arch independent
4373         values.
4374
4375 2006-09-17  Mike Frysinger  <vapier@gentoo.org>
4376
4377         * sysdeps/unix/sysv/linux/sys/ptrace.h (PTRACE_SETOPTIONS,
4378         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
4379         * sysdeps/unix/sysv/linux/ptrace.c (ptrace): Check PTRACE_SETOPTIONS,
4380         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO and PTRACE_SETSIGINFO.
4381
4382 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
4383
4384         * sysdeps/powerpc/powerpc32/register-dump.h (register_dump): Don't
4385         write '\0' to the fd.
4386         * sysdeps/mach/hurd/powerpc/register-dump.h (register_dump): Likewise.
4387         * sysdeps/powerpc/powerpc64/register-dump.h (register_dump): Likewise.
4388         Change regs to unsigned long pointer from unsigned int, fix fscr
4389         offset.
4390
4391 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
4392
4393         * io/Makefile (CFLAGS-fstatat.c): Set.
4394         (CFLAGS-fstatat64.c): Likewise.
4395         (CFLAGS-mknodat.c): Likewise.
4396
4397         * sysdeps/ieee754/ldbl-128ibm/s_llrintl.c: Comment fixes.
4398         * sysdeps/ieee754/ldbl-128ibm/s_llroundl.c: Likewise.
4399         * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c: Rewritten.
4400         * sysdeps/ieee754/ldbl-128ibm/s_lroundl.c: Rewritten.
4401
4402 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
4403             Steven Munroe  <sjmunroe@us.ibm.com>
4404
4405         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 4 new cap
4406         names to the beginning.  Rename "cell" to "cellbe".
4407         (_dl_powerpc_platforms): New.
4408         * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
4409         (HWCAP_IMPORTANT): Remove power{4,5,5+} and cell.
4410         (_DL_PLATFORMS_COUNT, _DL_FIRST_PLATFORM): Define.
4411         (_DL_HWCAP_PLATFORM): Define to new mask.
4412         (_dl_platform_string, _dl_string_platform): New functions.
4413         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_BOOKE, PPC_FEATURE_SMT,
4414         PPC_FEATURE_ICACHE_SNOOP, PPC_FEATURE_ARCH_2_05): Define.
4415
4416 2006-09-12  Jakub Jelinek  <jakub@redhat.com>
4417
4418         [BZ #2526]
4419         * README.libm: Fix a thinko in sqrt algorithm description.
4420
4421         [BZ #3143]
4422         * manual/string.texi (argz_delete): Fix prototype.
4423         Patch by <alpt@freaknet.org>.
4424
4425 2006-08-26  Joseph Myers  <joseph@codesourcery.com>
4426
4427         [BZ #3138]
4428         * io/test-lfs.c (do_prepare): Give name_len type size_t.
4429         * io/tst-fcntl.c (do_prepare): Likewise.
4430         * posix/tst-exec.c (do_prepare): Likewise.
4431         * posix/tst-preadwrite.c (do_prepare): Likewise.
4432         * posix/tst-spawn.c (do_prepare): Likewise.
4433         * posix/tst-truncate.c (do_prepare): Likewise.
4434         * rt/tst-aio.c (do_prepare): Likewise.
4435         * rt/tst-aio64.c (do_prepare): Likewise.
4436         * stdlib/test-canon2.c (do_prepare): Give test_dir_len type
4437         size_t.
4438
4439 2006-09-09  Ulrich Drepper  <drepper@redhat.com>
4440
4441         [BZ #2821]
4442         * time/mktime.c (guess_time_tm): Fix overflow detection.
4443         * time/Makefile (tests): Add bug-mktime1.
4444         * time/bug-mktime1.c: New file.
4445
4446         [BZ #3189, #3188]
4447         * misc/sys/mman.h (remap_file_pages): Make available for _GNU_SOURCE.
4448         (mremap): Likewise.
4449
4450 2006-09-07  Jakub Jelinek  <jakub@redhat.com>
4451
4452         [BZ #1006]
4453         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela):
4454         Ensure relocation doesn't clobber any bits outside of the
4455         immediate field for R_SPARC_TLS_LE_HIX22, R_SPARC_WDISP30,
4456         R_SPARC_HI22 and R_SPARC_H44.
4457
4458         [BZ #2775]
4459         * malloc/malloc.c (sYSMALLOc): Only call grow_heap if
4460         (long) (MINSIZE + nb - old_size) is positive.
4461
4462         * malloc/arena.c (grow_heap): When growing bail even if new_size
4463         is negative.
4464
4465         [BZ #3155]
4466         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S (__lrint): Don't access
4467         stack below r1.
4468
4469 2006-09-06  Jakub Jelinek  <jakub@redhat.com>
4470
4471         * posix/regex_internal.c (re_string_reconstruct): Handle
4472         offset < pstr->valid_raw_len && pstr->offsets_needed case.
4473         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
4474         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
4475         re_string_context_at.
4476         * posix/Makefile: Add rules to build and run bug-regex26 test.
4477         * posix/bug-regex26.c: New test.
4478
4479         * locale/programs/ld-collate.c (collate_read): Goto sym_equiv_free
4480         rather than col_sym_free.  Move seqp declaration earlier.
4481
4482         * resolv/gai_suspend.c (gai_suspend): Make sure result is initialized.
4483
4484 2006-09-05  Jakub Jelinek  <jakub@redhat.com>
4485
4486         * nscd/initgrcache.c (addinitgroupsX): Move any_success
4487         decl before first goto out.
4488
4489 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
4490
4491         * Makerules (shlib.lds): If have-hash-style, put .hash section
4492         at the end of the RO segment.
4493
4494 2006-09-04  Ulrich Drepper  <drepper@redhat.com>
4495
4496         * elf/do-lookup.h (do_lookup_x): Initialize symidx in case the new
4497         style hash table format is used.
4498
4499 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
4500
4501         * resolv/res_mkquery.c (res_nmkquery): Set hp->id to statp->id after
4502         randomization rather than before.
4503         * resolv/res_init.c (res_randomid): Don't call gettimeofday here.
4504
4505 2006-08-31  Jakub Jelinek  <jakub@redhat.com>
4506
4507         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Add ld.so.
4508
4509         * malloc/malloc.c (_int_malloc): Use full list insert and not
4510         shortcut which assumes the list is empty for large requests
4511         too.
4512
4513         * elf/tst-addr1.c (do_test): Allow i.dli_sname "_IO_printf".
4514
4515 2006-08-30  Jakub Jelinek  <jakub@redhat.com>
4516
4517         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (splice): Add offin
4518         and offout arguments to the prototype.
4519         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (splice): Likewise.
4520         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (splice): Likewise.
4521         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (splice): Likewise.
4522         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (splice): Likewise.
4523         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (splice): Likewise.
4524         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (splice): Likewise.
4525         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (splice): Likewise.
4526         * sysdeps/unix/sysv/linux/syscalls.list (splice): Adjust args string.
4527
4528 2006-08-28  Ulrich Drepper  <drepper@redhat.com>
4529
4530         * elf/dl-load.c (_dl_init_paths): Expand DSTs.
4531
4532         * elf/dl-open.c (dl_open_worker): Allow $LIB and $PLATFORM in
4533         dlopen parameters.
4534
4535 2006-08-28  Jakub Jelinek  <jakub@redhat.com>
4536
4537         * inet/getnameinfo.c (getnameinfo): For AF_INET, check errno
4538         only if herrno is NETDB_INTERNAL.  Handle errors other than
4539         ERANGE outside of the loops, handle TRY_AGAIN.
4540
4541         * locale/programs/ld-ctype.c (translit_flatten): Issue error
4542         if other's ctype category was missing.
4543         * locale/programs/ld-collate.c (collate_read): Return if
4544         copy_locale's collate category is missing.
4545
4546 2006-08-27  Ulrich Drepper  <drepper@redhat.com>
4547
4548         [BZ #2684]
4549         * malloc/malloc.c (public_rEALLOc): Try harder by using other
4550         arenas if allocation failed.
4551         Patch mostly by Jan Edler <jan.edler@indexengines.com>.
4552
4553 2006-08-26  Ulrich Drepper  <drepper@redhat.com>
4554
4555         * malloc/malloc.c (bin_at): Rewrite to be more clear and to not
4556         waste bins[0..1].
4557         (malloc_state): Reduce bins size by 2.
4558         (_int_malloc): Fix test for large enough buffer for early termination.
4559         When no unsorted block matches perfectly and an exiting block has
4560         to be split, use full list insert and not shortcut which assumes
4561         the list is empty.
4562
4563         * locale/programs/ld-ctype.c (ctype_read): Better patch for read
4564         failure.
4565
4566 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
4567
4568         * locale/programs/ld-ctype.c (ctype_read): If CTYPE is NULL, don't
4569         do anything.
4570
4571         * sysdeps/generic/ldsodefs.h (DL_ADDR_SYM_MATCH): For undefined
4572         symbol require exact match (these are PLTs).
4573         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
4574         (_dl_ppc64_addr_sym_match): Likewise.
4575
4576         [BZ #2683]
4577         * elf/dl-addr.c (_dl_addr): Don't ignore all undefined symbols.
4578         If symbol has a value use it.
4579         * elf/tst-dladdr1.c: New file.
4580         * elf/Makefile: Add rules to build and run tst-addr1.
4581
4582 2006-08-24  Jakub Jelinek  <jakub@redhat.com>
4583
4584         * malloc/malloc.c (sYSMALLOc): Avoid infinite loop if MMAP
4585         keeps failing and heap growth or new heap creation isn't
4586         successful either.
4587         * malloc/tst-malloc.c (main): Add new tests.
4588
4589 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
4590
4591         [BZ #2734]
4592         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use same conditions
4593         as in the x86-64 code to use bswap.
4594
4595 2006-05-21  Joseph S. Myers  <joseph@codesourcery.com>
4596
4597         [BZ #2680]
4598         * posix/unistd.h (getlogin_r): Condition on __USE_POSIX199506, not
4599         __USE_UNIX98.
4600         * posix/bits/unistd.h: Likewise.
4601
4602 2006-05-15  Mike Frysinger  <vapier@gentoo.org>
4603
4604         [BZ #2751]
4605         * string/strchr.c: Add cast to avoid warning.
4606
4607 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
4608
4609         * malloc/malloc.c (DEFAULT_MMAP_THRESHOLD_MAX): For 32-bit
4610         platforms define as 512K.  For 64-bit platforms as 32MB.  The lower
4611         limit is needed to avoid the exploding of the address space
4612         requirement for secondary heaps.
4613         * malloc/arena.c (HEAP_MAX_SIZE): Define using
4614         DEFAULT_MMAP_THRESHOLD_MAX if it is defined.
4615
4616 2006-07-30  Joseph S. Myers  <joseph@codesourcery.com>
4617
4618         [BZ #3018]
4619         * Makerules (depfiles): Handle extra-test-objs the same as
4620         extra-objs.
4621         (common-mostlyclean): Likewise.
4622         * dlfcn/Makefile (extra-objs): Add modules to extra-test-objs
4623         instead.
4624         * elf/Makefile (extra-objs): Likewise.
4625         * stdlib/Makefile (extra-objs): Likewise.
4626
4627 2006-08-14  Eric Blake  <ebb9@byu.net>
4628
4629         [BZ #3044]
4630         * misc/error.h: Assume C89 or better.
4631         * misc/error.c: Likewise.
4632
4633 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
4634
4635         [BZ #3040]
4636         * sysdeps/unix/sysv/linux/openat.c: Fix compilation if
4637         __ASSUME_ATFCTS is defined.
4638
4639 2006-08-19  Ulrich Drepper  <drepper@redhat.com>
4640
4641         * malloc/malloc.c (_int_malloc): Limit number of unsorted blocks
4642         to sort in each call.
4643
4644         * nis/nss_nis/nis-service.c (internal_nis_getservent_r): . If map
4645         is empty simply return and use next service.
4646         * nis/nss_nis/nis-rpc.c (internal_nis_getrpcent_r): Likewise.
4647
4648         * locale/programs/charmap.c (charmap_read): Add new parameter.  It
4649         tells us when not finding a charmap file is an error.
4650         * locale/programs/charmap.h: Adjust charmap_read prototype.
4651         * iconv/iconv_prog.c (main): Tell charmap_read it's no error if we
4652         cannot find a charmap.
4653         * locale/programs/localedef.c (main): Adjust charmap_read call.
4654
4655 2006-08-15  Jakub Jelinek  <jakub@redhat.com>
4656
4657         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Use
4658         sysdeps/posix/pause.c implementation instead.
4659
4660 2006-08-09  Jakub Jelinek  <jakub@redhat.com>
4661
4662         * sysdeps/unix/nice.c (nice): Transform EACCES errno from setpriority
4663         to EPERM.
4664
4665 2006-08-13  Andreas Schwab  <schwab@suse.de>
4666
4667         * sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_runtime_resolve):
4668         Don't clobber caller's LRSAVE.
4669         (_dl_prof_resolve): Likewise.
4670
4671 2006-08-14  Ulrich Drepper  <drepper@redhat.com>
4672
4673         [BZ #1996]
4674         * libio/memstream.c (open_memstream): Allocate initial buffer with
4675         calloc.
4676         * libio/wmemstream.c (open_wmemstream): Likewise.
4677         * libio/strops.c: Pretty printing.
4678         (_IO_str_overflow): Clear uninitialized part of the new buffer.
4679         (enlarge_userbuf): New function.
4680         (_IO_str_seekoff): Call it if seek position is larger than current
4681         buffer.
4682         * libio/wstrops.c: Likewise.
4683         * libio/vasprintf.c: Add comment as to why we do not have to use
4684         calloc instead of malloc to allocate initial buffer.
4685         * libio/Makefile (tests): Add bug-memstream1 and bug-wmemstream1.
4686         * libio/bug-memstream1.c: New file.
4687         * libio/bug-wmemstream1.c: New file.
4688
4689 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
4690
4691         * libio/wstrops.c: Remove dead macro definitions and comments.
4692         * libio/strops.c: Likewise.
4693
4694         [BZ #2764]
4695         * login/utmpname.c (__utmpname): Remove unnecessary test.
4696
4697 2006-06-08  Joseph Myers  <jsm28@gcc.gnu.org>
4698
4699         [BZ #2832]
4700         * math/gen-libm-test.pl (clean_up_number): Do not remove trailing
4701         0s from integers.
4702
4703 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
4704
4705         [BZ #2987]
4706         * sysdeps/unix/sysv/linux/clock_settime.c: Add code to use syscall
4707         for CPU clocks.
4708         * sysdeps/unix/clock_settime.c: Add support for platform-specific
4709         setting of CPU clocks.
4710
4711 2006-06-23  Paul Eggert  <eggert@cs.ucla.edu>
4712
4713         [BZ #2841]
4714         * sysdeps/generic/stdint.h (UINT8_C, UINT16_C): Don't append 'U',
4715         since C99 requires the result to promote to 'int' when uint_least8_t
4716         and uint_least16_t promote to 'int'.
4717
4718 2006-08-12  Ulrich Drepper  <drepper@redhat.com>
4719
4720         [BZ #3013]
4721         * locale/programs/ld-ctype.c (ctype_output): Adjust alignments, fix
4722         lenght of one output field, correct bitmask creation.
4723         * locale/programs/ld-time.c: Add alignment.
4724
4725         [BZ #2997]
4726         * misc/error.c: Add space between program name and message if file
4727         name is missing.
4728
4729 2006-08-03  Eric Blake  <ebb9@byu.net>
4730
4731         [BZ #2998]
4732         * misc/error.c (error_tail) [_LIBC]: Avoid invalid free.
4733
4734 2006-08-09  Ulrich Drepper  <drepper@redhat.com>
4735
4736         * malloc/memusagestat.c: Silence warnings.
4737
4738         * malloc/malloc.c: Dynamically size mmap treshold if the program
4739         frees mmaped blocks.
4740         Patch by Valerie Henson and Arjan van de Ven.
4741
4742 2006-08-08  Jakub Jelinek  <jakub@redhat.com>
4743
4744         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_DIRECT): Protect with
4745         __USE_GNU.
4746
4747         * stdlib/strtol_l.c (__strtol_ul_max_tab, __strtol_ul_rem_tab,
4748         __strtol_ull_max_tab, __strtol_ull_rem_tab): Declare.
4749         (DEF): Don't put the var into .gnu.linkonce.r.* section.
4750         Only provide var definitions in strtol_l (or for *ull*
4751         in strtoll_l).
4752
4753         * stdio-common/bug16.c (tests): New array.
4754         (do_tests): Allow the first hexadecimal digit
4755         to be 1, 2, 4 or 8.  Do 3 additional tests.
4756
4757         * sysdeps/s390/fpu/libm-test-ulps: Update.
4758
4759         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c (fchownat): Use
4760         fchownat syscall if available.
4761         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Likewise.
4762         * sysdeps/unix/sysv/linux/sh/fchownat.c (fchownat): Likewise.
4763         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Likewise.
4764
4765 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
4766
4767         * nis/nis_xdr.c: Avoid some function calls.
4768
4769 2006-08-07  Jakub Jelinek  <jakub@redhat.com>
4770             Ulrich Drepper  <drepper@redhat.com>
4771
4772         * nis/nis_call.c (rec_dirsearch) [case LOWER_NAME]: Don't take
4773         short cut if only one name component is stripped away.
4774
4775 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
4776
4777         * nis/nis_call.c: Minor cleanups throughout.
4778         (rec_dirsearch) [case HIGHER_NAME]: Correctly size ndomain array.
4779         (first_shoot): Add search_parent_first parameter.  Only if it is set
4780         search parent server first.
4781         If directory for table found through cold start cache is not the same
4782         as referenced in the cache, don't use it.
4783         (__nisfind_server): Take additional parameter.  Pass it on to
4784         first_shoot.
4785         (__prepare_niscall): Adjust __nisfind_server call.
4786         * nis/rpcsvc/nislib.h: Adjust __nisfind_server prototype.
4787         * nis/nis_table.c: Adjust __nisfind_server call.
4788         * nis/nis_lookup.c: Likewise.
4789         (nis_lookup): Don't loop endlessly if name is reduced to ".".
4790
4791 2006-08-03  Ulrich Drepper  <drepper@redhat.com>
4792
4793         [BZ #2182]
4794         * math/s_cacosh.c: Return values from positive branch.
4795         * math/s_cacoshf.c: Likewise.
4796         * math/s_cacoshl.c: Likewise.
4797
4798         [BZ #2883]
4799         * sysvipc/sys/msg.h: Change return value to ssize_t.
4800         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
4801         * sysvipc/msgrcv.c: Likewise.
4802         * include/sys/msg.h: Likewise.
4803
4804         * grp/initgroups.c (internal_getgrouplist): Remove unnecessary
4805         test introduced in patch for bz #661.
4806         (getgrouplist): Simplify code a bit.  Don't allocate one additional
4807         element for NEWGROUPS.
4808
4809         [BZ #2908]
4810         * stdio-common/printf_fphex.c (__printf_fphex): When rounding up
4811         'f', use '1' as leading digit not '\1'.
4812         * stdio-common/Makefile (tests): Add bug16.
4813         * stdio-common/bug16.c: New file.
4814
4815         [BZ #2914]
4816         * sysdeps/unix/sysv/linux/gethostid.c: Don't define OLD_HOSTIDFILE
4817         and don't try to open it.  The patch introducing the macro
4818         contained a bug and used the same file name as the new file
4819         instead of using /var/adm/hostid.  Nobody complaint so I'm taking
4820         this out completely.
4821
4822         [BZ #2926]
4823         * assert/assert.h: Move cast to void inside ?: to quiet gcc.
4824         Patch by Jerry James <Jerry.James@usu.edu>.
4825
4826         * rt/Makefile (tests): Add tst-clock2.
4827         * rt/tst-clock2.c: New file.
4828
4829         [BZ #2978]
4830         * resolv/gai_notify.c (__gai_notify_only): Copy memory for thread
4831         function and its parameters and pass it to new thread.
4832         (__gai_notify): Add support for alternative waiting for completion.
4833         * resolv/gai_suspend.c (gai_suspend): Add support for alternative
4834         waiting for completion.
4835         * resolv/getaddrinfo_a.c: Likewise.
4836         * resolv/gai_misc.h (struct waitlist): Don't add cond if alternative
4837         waiting for completion is used.
4838         * resolv/gai_misc.c: Allow overwriting code to start helper thread.
4839         * resolv/gai_cancel.c: Include <gai_misc.h> not "gai_misc.h".
4840         * resolv/gai_error.c: Likewise.
4841         * resolv/gai_sigqueue.c: Likewise.
4842
4843 2006-08-02  Thomas Schwinge  <tschwinge@gnu.org>
4844
4845         * hurd/getdport.c (__getdport): Don't return EBADF; instead set
4846         errno to EBADF and return MACH_PORT_NULL.
4847
4848 2006-06-23  Joseph Myers  <joseph@codesourcery.com>
4849
4850         [BZ #2980]
4851         * posix/Makefile (CFLAGS-waitid.c): Add -fasynchronous-unwind-tables.
4852
4853 2006-08-02  Ulrich Drepper  <drepper@redhat.com>
4854
4855         * elf/dl-addr.c (_dl_addr): If GNU-style hash tables are present,
4856         walk them instead of the symbol table.
4857
4858 2006-08-01  Ulrich Drepper  <drepper@redhat.com>
4859
4860         [BZ #2098]
4861         * nscd/initgrcache.c (addinitgroupsX): Judge successful lookups by
4862         status of NSS calls, not the number of returned entries.
4863
4864         * sysdeps/unix/sysv/linux/syscalls.list: Remove add_key,
4865         request_key, keyctl.
4866
4867 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
4868
4869         * sysdeps/unix/sysv/linux/dl-osinfo.h: Remove unnecessary include.
4870
4871 2006-07-16  Jeff Bailey  <jbailey@ubuntu.com>
4872
4873         * elf/tst-auditmod1.c: Fix typo in #error.
4874
4875 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
4876
4877         * elf/tst-auditmod1.c: Remove code for unsupported architectures.
4878
4879         * iconvdata/run-iconv-test.sh: Run cmp in C locale.
4880
4881 2006-07-20  Adam Nemet  <anemet@caviumnetworks.com>
4882
4883         * stdlib/test-canon.c (do_test): Close fd before unlinking file so
4884         that the directory is empty even on non-POSIX filesystems.
4885
4886 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
4887
4888         * elf/dl-open.c (dl_open_worker): Add branch prediction.
4889
4890         * nis/nss_compat/compat-grp.c: Avoid unnecessary setgrent calls into
4891         the backend NSS module.  If backend setgrent call failed, don't have
4892         internal_setgrent fail.  Just remember this until it is needed.
4893         * nis/nss_compat/compat-pwd.c: Likewise.
4894         * nis/nss_compat/compat-spwd.c: Likewise.
4895
4896 2006-07-30  Roland McGrath  <roland@redhat.com>
4897
4898         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed.
4899         * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: File removed.
4900         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: File removed.
4901         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: File removed.
4902
4903         * sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): New macro.
4904         (nanosleep_not_cancel): New macro.
4905         (sigsuspend_not_cancel): new macro.
4906         * sysdeps/unix/sysv/linux/sigsuspend.c [__ASSUME_REALTIME_SIGNALS]
4907         (do_sigsuspend): Define as inline.
4908         (__sigsuspend): Always use do_sigsuspend.
4909         [! NO_CANCELLATION] (__sigsuspend_nocancel): New function.
4910         * include/signal.h: Declare __sigsuspend_nocancel.
4911         * sysdeps/posix/pause.c
4912         [! NO_CANCELLATION] (__pause_nocancel): New function.
4913
4914         * include/unistd.h (__pause_nocancel): Add attribute_hidden.
4915         * include/time.h (__nanosleep_nocancel): Likewise.
4916
4917 2006-07-30  Ulrich Drepper  <drepper@redhat.com>
4918
4919         * locale/programs/localedef.c (add_to_readlist): Rename local
4920         variables to avoid confusion.
4921
4922         * locale/programs/charmap.c (charmap_read): Emit error message if
4923         charmap couldn't be found or read.
4924
4925 2006-07-28  Ulrich Drepper  <drepper@redhat.com>
4926
4927         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4928         __ASSUME_FUTEX_LOCK_PI.
4929         * include/time.h: Declare __nanosleep_nocancel.
4930         * include/unistd.h: Declare __pause_nocancel.
4931
4932         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Use this instead of
4933         LDFLAGS.  Add -lgcc_eh and libc_nonshared (again) to make sure we
4934         get the __stack_chk_fail_local definition when it's needed.
4935
4936 2006-07-26  Ulrich Drepper  <drepper@redhat.com>
4937
4938         * dlfcn/Makefile: Add rules to build and run bug-atexit3.
4939         * dlfcn/bug-atexit3.c: New file.
4940         * dlfcn/bug-atexit3-lib.cc: New file.
4941
4942         * dlfcn/dlmopen.c (dlmopen_doit): Don't allow RTLD_GLOBAL to be
4943         used when the namespace is not the base namespace.
4944
4945 2006-07-26  Gavin Romig-Koch  <gavin@redhat.com>
4946
4947         * stdlib/cxa_atexit.c (__new_exitfn_called): New variable.
4948         (__new_exitfn): Bump it in every successful call.
4949         * stdlib/cxa_finalize.c (__cxa_finalize): If destructor registered
4950         more exit handlers, call them right away.
4951         * stdlib/exit.h: Declare __new_exitfn_called.
4952
4953 2006-07-25  Ulrich Drepper  <drepper@redhat.com>
4954
4955         * stdlib/cxa_finalize.c (__cxa_finalize): Fix race condition when
4956         calling registered handler.
4957
4958         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fix comment.
4959         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
4960         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
4961         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
4962         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
4963         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
4964         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
4965         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
4966
4967 2006-07-10  Ulrich Drepper  <drepper@redhat.com>
4968
4969         * elf/dl-lookup.c (dl_new_hash): New functions.
4970         (_dl_lookup_symbol_x): Rename hash to old_hash and don't compute
4971         value here.  Compute new-style hash value.  Pass new hash value
4972         and reference to variable with the old value to do_lookup_x.
4973         (_dl_setup_hash): If DT_GNU_HASH is defined, use it and not
4974         old-style hash table.
4975         (_dl_debug_bindings): Pass new hash value and reference to variable
4976         with the old value to do_lookup_x.
4977         * elf/do-lookup.h (do_lookup_x): Accept additional parameter with
4978         new-style hash value and change old-style hash value parameter to
4979         be a reference.  Reoganize functions to determine whether
4980         new-style hash table is available.  Only fall back on old-style
4981         table.  If old-style hash value is needed, compute it here.
4982         * elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH
4983         entry.
4984         * elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT,
4985         DT_TLSDEC_GOT.  Adjust DT_ADDRNUM.
4986         * include/link.h (struct link_map): Add l_gnu_bitmask_idxbits,
4987         l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero.
4988         * Makeconfig: If linker supports --hash-style option add it to all
4989         linker command lines to build DSOs.
4990         * config.make.in: Define have-hash-style.
4991         * configure.in: Test whether linker supports --hash-style option.
4992
4993         * elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const.
4994         * sysdeps/generic/ldsodefs.h: Adjust prototype.
4995
4996 2006-06-27  Ulrich Drepper  <drepper@redhat.com>
4997
4998         * elf/dl-load.c (open_path): Fix test to determine whether DSO is
4999         auditing.
5000
5001         * elf/dl-load.c (_dl_map_object): Try harder to avoid looking at
5002         RPATH of main map twice.
5003
5004 2006-06-22  Ulrich Drepper  <drepper@redhat.com>
5005
5006         * intl/dcigettext.c (DCIGETTEXT): If _nl_find_msg returns -1 don't
5007         look further, return original strings.
5008         (_nl_find_msg): Do not return found translation if the conversion
5009         failed.  Either signal the string is unusable or that something went
5010         wrong and the original should be used.
5011
5012 2006-06-21  Ulrich Drepper  <drepper@redhat.com>
5013
5014         * string/_strerror.c (__strerror_r): Add __builtin_expect.
5015
5016 2006-06-14  Jakub Jelinek  <jakub@redhat.com>
5017
5018         [BZ #2766]
5019         * misc/insremque.c (insque): Handle prev == NULL.
5020         * misc/Makefile (tests): Add tst-insremque.
5021         * misc/tst-insremque.c: New test.
5022
5023 2006-06-17  Ulrich Drepper  <drepper@redhat.com>
5024
5025         [BZ #2792]
5026         * elf/dl-deps.c (expand_dst): Rename __cnt variable to not
5027         conflict with DL_DST_REQUIRED.
5028
5029 2006-06-16  Ulrich Drepper  <drepper@redhat.com>
5030
5031         * nis/nis_subr.c (nis_getnames): Fix the implementation to better
5032         match what Solaris does.
5033
5034 2006-06-04  Ulrich Drepper  <drepper@redhat.com>
5035
5036         * sysdeps/posix/spawni.c (__spawni): Use local_seteuid and
5037         local_setegid instead of seteuid and setegid.
5038         * sysdeps/generic/local-setxid.h: New file.
5039         * sysdeps/unix/sysv/linux/local-setxid.h: New file.
5040
5041         * sysdeps/posix/spawni.c (__spawni): Use non-cancelable interfaces.
5042
5043         * string/Makefile (tests): Add bug-envz1.
5044         * string/bug-envz1.c: New file.
5045
5046 2006-06-02  Jakub Jelinek  <jakub@redhat.com>
5047
5048         * posix/regex_internal.c (re_string_skip_chars): If no character has
5049         been converted at all, set *last_wc to WEOF.  If mbrtowc failed, set wc
5050         to the byte which couldn't be converted.
5051         (re_string_reconstruct): Don't clear valid_raw_len before calling
5052         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
5053         tip_context using re_string_context_at.
5054         * posix/Makefile: Add rules to build and run bug-regex25 test.
5055         * posix/bug-regex25.c: New test.
5056
5057 2006-06-02  Ryan S. Arnold  <rsa@us.ibm.com>
5058
5059         [BZ #2703]
5060         * string/envz.c (envz_strip): Correct erroneously reversed src
5061         and dest parameters to memmove() invocation.
5062
5063 2006-05-30  Jakub Jelinek  <jakub@redhat.com>
5064
5065         * nscd/nscd.h (prune_cache): Add fd argument to prototype.
5066         * nscd/nscd.c (parse_opt): Read response from INVALIDATE request
5067         to make sure the database has been already invalidated.
5068         * nscd/cache.c (prune_cache): Add fd argument.  Write response to fd
5069         after the cache has been invalidated.  Use pthread_mutex_lock rather
5070         than pthread_mutex_trylock if fd != -1.
5071         * nscd/connections.c (invalidate_cache): Add fd argument, write
5072         response to fd if not calling prune_cache, pass fd to prune_cache.
5073         (handle_request): Adjust invalidate_cache caller.
5074         (nscd_run): Pass -1 as fd to prune_cache.
5075
5076 2006-05-30  Ulrich Drepper  <drepper@redhat.com>
5077
5078         * sysdeps/posix/getaddrinfo.c (gaiconf_init): Initialize bits in
5079         the correct place.
5080
5081 2006-05-29  Ulrich Drepper  <drepper@redhat.com>
5082
5083         * nscd/nscd.h (struct database_dyn): Add prunelock field.
5084         * nscd/cache.c (prune_cache): Take prunelock before starting the
5085         work.  Just return in case it is already taken.
5086         * nscd/connections.c (dbs): Initialize .prunelock.
5087
5088 2006-05-25  Ulrich Drepper  <drepper@redhat.com>
5089
5090         * nis/nis_removemember.c (nis_removemember): Avoid unnecessary
5091         copying.  No need to allocate new array for group members.  Just
5092         move the pointers and update the size.
5093
5094         * nis/nis_addmember.c (nis_addmember): Avoid unnecessary copying.
5095         Avoid memory leak in case realloc fails.  Simplification for
5096         better code generation.
5097
5098         Avoid deprecation warning because of libc_hidden_proto for
5099         inet6_option_alloc.
5100         * inet/inet6_option.c (option_alloc): Renamed from
5101         inet6_option_alloc.  Made static.
5102         (inet6_option_alloc): Now a simple wrapper around option_alloc.
5103         (inet6_option_append): Call option_alloc.
5104         * include/netinet/in.h: Remove libc_hidden_proto for
5105         inet6_option_alloc.
5106
5107         * nis/nis_callback.c (__nis_create_callback): Always call xdr_free
5108         for cleanup when cb!=NULL [Coverity CID 233].
5109
5110 2006-05-24  Ulrich Drepper  <drepper@redhat.com>
5111
5112         [BZ #2693]
5113         * inet/Makefile (routines): Add inet6_opt and inet6_rth.
5114         * inet/Versions (libc, GLIBC_2.5): Add inet6_opt_init,
5115         inet6_opt_append, inet6_opt_finish, inet6_opt_set_val, inet6_opt_next,
5116         inet6_opt_find, inet6_opt_get_val, inet6_rth_space, inet6_rth_init,
5117         inet6_rth_add, inet6_rth_reverse, inet6_rth_segments,
5118         and inet6_rth_getaddr.
5119         * inet/netinet/ip6.h (struct ip6_rthdr0): Make ip6r0_addr a flexible
5120         array.
5121         * inet/netinet/in.h (struct ip6_mtuinfo): Define.
5122         Mark inet6_option_* interfaces as deprecated.
5123         Declare inet6_opt_init, inet6_opt_append, inet6_opt_finish,
5124         inet6_opt_set_val, inet6_opt_next, inet6_opt_find, inet6_opt_get_val,
5125         inet6_rth_space, inet6_rth_init, inet6_rth_add, inet6_rth_reverse,
5126         inet6_rth_segments, and inet6_rth_getaddr.
5127         * inet/inet6_opt.c: New file.
5128         * inet/inet6_rth.c: New file.
5129
5130         * inet/netinet/icmp6.h: Pretty printing.
5131
5132         [BZ #2683]
5133         * elf/dl-addr.c (_dl_addr): Don't match undefined references.
5134
5135 2006-05-23  Ulrich Drepper  <drepper@redhat.com>
5136
5137         * nis/nis_lookup.c (nis_lookup): Use __prepare_niscall instead of
5138         doing it all here.  When server does not know the answer do not
5139         fail immediate, try parent first.
5140
5141         * nis/nis_domain_of_r.c (nis_domain_of_r): Add missing buffer
5142         overflow test.
5143
5144 2006-05-20  Ulrich Drepper  <drepper@redhat.com>
5145
5146         * nis/nis_call.c (__prepare_niscall): New function.  Split out
5147         from __do_niscall.
5148         * nis/nis_table.c (__create_ib_request): Renamed from create_ib_request
5149         and exported.
5150         (__follow_path): New function.  Split out from nis_list.
5151         * nis/nis_xdr.h: Add libnsl_hidden_proto for _xdr_ib_request and
5152         _xdr_nis_result.
5153         * nis/nis_xdr.c: Add libnsl_hidden_def for _xdr_ib_request and
5154         _xdr_nis_result.
5155         * nis/libnsl.h: Declare __prepare_niscall, __create_ib_request,
5156         and __follow_path.
5157         * nis/Versions: Export __prepare_niscall, __create_ib_request,
5158         __follow_path, __do_niscall3, _xdr_ib_request, and _xdr_nis_result
5159         from libnsl for version GLIBC_PRIVATE.
5160         * nis/nisplus-parser.h: Remove _nss_nisplus_parse_pwent_chk.
5161         Remove entry parameter from _nss_nisplus_parse_pwent and
5162         _nss_nisplus_parse_grent.
5163         * nis/nss_nisplus/nisplus-parser.c: Likewise.
5164         * nis/nss_nisplus/nisplus-pwd.c: Remove support for SETENT_BATCH_READ
5165         again.  Rewrite getpwent handling to not use nis_first_entry and
5166         nis_next_entry.  Roll out own niscall handling.
5167         * nis/nss_nisplus/nisplus-grp.c: Likewise.
5168
5169         * sunrpc/xdr_rec.c: Fix typo in comment.
5170
5171 2006-05-19  Ulrich Drepper  <drepper@redhat.com>
5172
5173         * nis/nis_call.c (__do_niscall3): Avoid code duplication in error
5174         handling.
5175
5176         * nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
5177         to allocate memory for my_pollfd.  Better initialization of
5178         cb_is_running.  Use TEMP_FAILURE_RETRY.
5179
5180         * malloc/memusage.sh (memusageso): Add quotes.
5181         (memusagestat): Likewise.
5182         * debug/xtrace.sh (pcprofileso): Likewise.
5183         (pcprofiledump): Likewise.
5184         * debug/Makefile ($(objpfx)xtrace): Use $LIB in SLIBDIR
5185         replacement.
5186         * malloc/Makefile ($(objpfx)memusage): Likewise.
5187
5188         * nis/nis_callback.c (__nis_create_callback): Calls to
5189         svcudp_bufcreate and svctcp_create can fail.  Free ->xprt if
5190         asprintf call fails.
5191
5192         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_sendreq): Make sure
5193         no uninitialized memory is passed to sendto.
5194
5195 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
5196
5197         * nis/nis_callback.c (__nis_create_callback): Use asprinf instead
5198         of snprintf+strdup.  Handle OOM.
5199         * nis/nis_callback.c (__nis_create_callback): Allocate cb and
5200         cb->serv together.  Remove now obsolete free calls.
5201         (__nis_destroy_callback): Remove now obsolete free call.
5202
5203 2006-05-18  David Woodhouse  <dwmw2@redhat.com>
5204
5205         * sysdeps/posix/getaddrinfo.c: Add unique labels to the default
5206         RFC3484 precedence table for fec0::/10 and fc00::/7 (site-local
5207         and ULA respectively). Set precedence for IPv4 address to 10 as
5208         defined in RFC3484 for preferring IPv6.
5209         * posix/gai.conf: Update to match the new default tables.
5210
5211 2006-05-18  Jakub Jelinek  <jakub@redhat.com>
5212
5213         * nis/nss_compat/compat-pwd.c (internal_setpwent): If nss_set*ent
5214         returned NSS_STATUS_UNAVAIL, still return NSS_STATUS_SUCCESS.
5215         * nis/nss_compat/compat-spwd.c (internal_setspent): Likewise.
5216         * nis/nss_compat/compat-grp.c (internal_setgrent): Likewise.
5217
5218         * nis/nss_compat/compat-initgroups.c (nss_setgrent, nss_endgrent):
5219         Removed.
5220         (init_nss_interface): Remove initialization of these variables.
5221
5222 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
5223
5224         * nis/nis_call.c (rec_dirsearch): Little optimization: pull
5225         nis_free_directory forward to avoid duplication.
5226
5227 2006-05-17  Ulrich Drepper  <drepper@redhat.com>
5228
5229         * nis/nis_call.c (rec_dirsearch): Handle __nis_finddirectory and
5230         rec_dirsearch returning NULL.
5231         (first_shoot): Handle __nis_finddirectory returning NULL.
5232         (__nisfind_server): Fix leak when rec_dirsearch returns NULL.
5233
5234         * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOSE, IN_MOVE,
5235         IN_ONLYDIR, IN_DONT_FOLLOW, and IN_MASK_ADD.
5236
5237 2006-05-17  Jakub Jelinek  <jakub@redhat.com>
5238
5239         * sunrpc/key_call.c (getkeyserv_handle): Call auth_destroy if
5240         pid changed.
5241
5242 2006-05-15  Ulrich Drepper  <drepper@redhat.com>
5243
5244         * include/rpc/pmap_prot.h: Mark all functions as hidden.
5245
5246         * nscd/nscd_initgroups.c: Mark __gr_map_handle as hidden.
5247         * nscd/nscd_getgr_r.c: Likewise.
5248
5249         * include/rpc/pmap_rmt.h: Mark all functions as hidden.
5250
5251         * nscd/nscd_getai.c (__hst_map_handle): Mark as hidden.
5252         * nscd/nscd_gethst_r.c (__hst_map_handle): Likewise.
5253
5254         * stdlib/longlong.h (__clz_tab): Mark as hidden.
5255
5256         * iconv/gconv_int.h: Mark __gconv_lock as hidden.
5257
5258         * include/rpc/key_prot.h: Mark all _internal functions as hidden.
5259
5260         * include/rpc/auth.h: Mark xdr_des_block_internal and
5261         xdr_opaque_auth_internal as hidden.
5262
5263         * sysdeps/unix/sysv/linux/getdents.c: Mark __have_no_getdents64 as
5264         hidden.
5265
5266         * include/rpc/xdr.h: Mark all _internal functions as hidden.
5267
5268         * misc/getusershell.c (okshells): Don't use static initializers,
5269         do it dynamically.
5270
5271         * stdlib/fmtmsg.c (keywords): Change type of len element to
5272         uint32_t to not waste space on 64bit machines.
5273
5274         * locale/setlocale.c: Change _nl_category_names into a string.
5275         Add new _nl_category_name_idxs.  Change all users.
5276         * locale/localeinfo.h: Adjust declaration of _nl_category_names.
5277         Declare _nl_category_name_idxs.
5278         * locale/findlocale.c: Adjust for _nl_category_names change.
5279         * locale/loadlocale.c: Likewise.
5280         * locale/newlocale.c: Likewise.
5281         * intl/dcigettext.c: Likewise.
5282
5283         * iconv/gconv_conf.c (add_alias): Move actual alias handling to...
5284         (add_alias2): ...here.  New function.
5285         (__gconv_read_conf): Simplify builtin alias handling.
5286         (builtin_aliases): Convert to string to avoid relocations.
5287         * iconv/gconv_builtin.h: Add comment about correct formatting.
5288
5289 2006-05-15  Jakub Jelinek  <jakub@redhat.com>
5290
5291         * resolv/res_debug.c (loc_ntoa): Make error const.
5292
5293 2006-05-14  Andreas Schwab  <schwab@suse.de>
5294
5295         * math/complex.h [__LDBL_COMPAT]: Use __REDIRECT_NTH.
5296
5297 2006-05-12  Jakub Jelinek  <jakub@redhat.com>
5298
5299         * sysdeps/unix/sysv/linux/sched_getaffinity.c: Include sys/param.h.
5300         (__sched_getaffinity_new): Don't crash if cpusetsize is smaller than
5301         sizeof (cpu_set_t).
5302
5303 2006-05-11  Ulrich Drepper  <drepper@redhat.com>
5304
5305         * resolv/res_debug.c (loc_ntoa): Define error as array, not pointer.
5306
5307         * include/arpa/nameser.h: Declare _ns_flagdata as hidden.
5308
5309         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_master.
5310         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_master.
5311
5312         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypbind_resp.
5313         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypbind_resp.
5314
5315         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_cback_data.
5316         * include/rpcsvc/nis_callback.h: Add libnsl_hidden_proto for
5317         xdr_cback_data.
5318
5319         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypupdate_args.
5320         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
5321         xdr_ypupdate_args.
5322
5323         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_order.
5324         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_order.
5325
5326         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_maplist.
5327         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_maplist.
5328
5329         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_obj_p.
5330         * include/rpcsvc/nis_callback.h: New file.
5331
5332         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_val.
5333         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_val.
5334
5335         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
5336         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
5337
5338         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypmaplist.
5339         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypmaplist.
5340
5341         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
5342         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
5343
5344         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypdelete_args.
5345         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
5346         xdr_ypdelete_args.
5347
5348         * nis/nis_xdr.h: Mark all functions as hidden.  Remove
5349         __BEGIN_DECLS and __END_DECLS, the header is not installed.
5350
5351         * nis/nis_error.c: Remove table of strings.  Use position
5352         independent mechanism.
5353         * nis/nis_error.h: New file.
5354
5355 2006-05-11  Jakub Jelinek  <jakub@redhat.com>
5356
5357         * locale/programs/ld-time.c (time_finish): If wide era name or
5358         format aren't provided, set both wname and wformat to L"".
5359
5360 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
5361
5362         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Only store
5363         results if the call was succesful.
5364
5365         * nis/nss-nis.h: Mark __yperr2nss_tab and __yperr2nss_count as hidden.
5366
5367         * nis/nss-nisplus.h: Mark __niserr2nss_tab and __niserr2nss_count
5368         as hidden.
5369
5370 2006-05-10  Jakub Jelinek  <jakub@redhat.com>
5371
5372         * misc/sys/queue.h: Remove uses of all QUEUEDEBUG_* macros.
5373
5374 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
5375
5376         * posix/wordexp.c (parse_glob): No need to check ifs for NULL, the
5377         caller makes sure this is not the case.
5378         (wordexp): Simplify ifs_white creation.  [Coverity CID 231]
5379
5380 2006-05-09  Ulrich Drepper  <drepper@redhat.com>
5381
5382         * posix/wordexp.c: Remove numerous NULL pointer tests before FREE
5383         calls.
5384
5385         * io/ftw.c (open_dir_stream): Return right away if REALLOC fails.
5386         [Coverity CID 229, 230]
5387
5388         * argp/argp-help.c (hol_entry_help): Handle STATE==NULL in ARG and
5389         DGETTEXT calls.
5390         (hol_help): Likewise.  [Coverity CID 226, 227]
5391
5392         * string/argz-replace.c (__argz_replace): Unconditionally call
5393         free on SRC.  [Coverity CID 225]
5394
5395         * nis/nis_creategroup.c (nis_creategroup): No need to duplicate
5396         the return value of __nis_default_owner and __nis_default_group,
5397         it has been especially allocated.  [Coverity CID 224]
5398
5399         * nis/nis_defaults.c (searchXYX): New functions.  Used by both
5400         searchgroup and searchowner.  Significantly simplified.
5401         (__nis_default_owner): Remove duplication.  Do not locally copy the
5402         string before duplicating it.
5403         (__nis_default_group): Likewise.
5404
5405         * nis/nis_lookup.c (nis_lookup): After calling nis_free_directory,
5406         we must clear the variable before calling __nisfind_server.
5407
5408         * nis/nis_lookup.c (nis_lookup): Always free memory allocated with
5409         nis_getnames.  [Coverity CID 223]
5410
5411         * locale/programs/locfile.c (locfile_read): Use alloca instead of
5412         xmalloc to allocate local repertoire name.  [Coverity CID 222]
5413
5414         * iconv/iconv_charmap.c (use_to_charmap): No need to dynamically
5415         allocate memory for the input to add_bytes.  [Coverity CID 221]
5416
5417         * posix/wordexp.c (w_addword): Free word if realloc fails and it
5418         was allocated here.  [Coverity CID 219, 220]
5419
5420         * posix/getconf.c (print_all): Free confstr data after printing.
5421         [Coverity CID 218]
5422
5423         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if
5424         list allocation fails.  [Coverity CID 215]
5425
5426         * nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition.
5427         [Coverity CID 213]
5428
5429         * argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if
5430         string is NULL.  [Coverity CID 212]
5431         * argp/Makefile: Add rules to build and run bug-argp1.
5432         * argp/bug-argp1.c: New file.
5433
5434         * io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find
5435         end of string.
5436         * stdlib/canonicalize.c (__realpath): Likewise.
5437
5438         * locale/programs/ld-time.c (time_finish): Don't dereference NULL
5439         pointer.  [Coverity CID 206]
5440
5441         * elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map
5442         in statically linked code.
5443         * elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in
5444         statically built code, be prepared to have no link map.
5445         [Coverity CID 205]
5446
5447         * argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in
5448         dgettext calls. [Coverity CID 204]
5449
5450         * argp/argp-help.c (struct uparams): Remove valid member.  Change
5451         the one user.
5452         (uparam_names): Reduce size.  Avoid relative relocations.
5453         Moved to read-only segment.
5454         (fill_in_uparams): Update for new layout.
5455
5456         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be
5457         assumed to always be != NULL. [Coverity CID 202]
5458
5459         * argp/argp-help.c (hol_entry_help): Remove some dead code
5460         [Coverity CID 200].
5461
5462         * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize
5463         away a few more unconditional yperr2nss calls.
5464         (_nss_nis_getservbyname_r): Likewise.
5465
5466 2006-05-06  Ulrich Drepper  <drepper@redhat.com>
5467
5468         * sysdeps/generic/ldsodefs.h: Remove support for non-core
5469         architectures.
5470
5471         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Make sure
5472         that unused memory passed to sendto is nevertheless initialized.
5473
5474         [BZ #2499]
5475         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Avoid
5476         possibly unaligned memory accesses.
5477
5478         * include/arpa/nameser.h: Also optimize NS_PUT16 and NS_PUT32.
5479         * resolv/res_mkquery.c: Use NS_PUT16 and NS_PUT32 instead of __putshort
5480         and __putlong respectively.  Correct buffer overflow check for
5481         NS_NOTIFY_OP.
5482
5483         * resolv/res_send.c (send_vc): Use ns_put16 instead of putshort.
5484
5485         * resolv/res_send.c (res_queriesmatch): Fix typo in comment.
5486         (send_dg): Rewrite error handling to be more compact and avoid
5487         double recomputation of timeouts.  Pass MSG_NOSIGNAL to send.
5488
5489         * include/arpa/nameser.h: Add optimizations for NS_GET16 and NS_GET32.
5490
5491         * resolv/res_send.c (res_nameinquery): Use NS_GET16 directly
5492         instead of ns_get16.
5493         (res_queriesmatch): Likewise.  Minor optimization.
5494
5495         [BZ #2499]
5496         * resolv/res_query.c (__libc_res_nquery): If answerp != NULL,
5497         __libc_res_nsend might reallocate the buffer for the answer.  In
5498         this case we have to reload the HP pointer.
5499
5500 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
5501
5502         * stdio-common/vfscanf.c (memory_error): Remove definition.  Add
5503         some branch prediction hints.
5504
5505         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Define SPLICE_F_*.
5506         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
5507         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
5508         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
5509         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
5510         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
5511         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
5512         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
5513
5514 2006-05-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
5515
5516         * sysdeps/s390/s390-32/elf/start.S: Replace pc relative relocation
5517         by a GOT relocation to make Scrt1.o position independent.
5518         * sysdeps/s390/s390-64/elf/start.S: Likewise.
5519
5520         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S: Add support for
5521         six system call parameters.
5522         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
5523
5524 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
5525
5526         * sunrpc/svcauth_des.c (cache_init): Use calloc instead of
5527         malloc&bzero.
5528
5529         * sunrpc/svc_udp.c (BZERO): Remove definition.
5530         (CALLOC): Define.
5531         (svc_enablecache): Use CALLOC instead of ALLOC&BZERO.
5532
5533         * sunrpc/des_impl.c: Remove ALT_ECB support.  We never used it.
5534         (des_SPtrans): Use uint32_t type.
5535         (des_skb): Likewise.
5536
5537         * sunrpc/xdr_ref.c (xdr_reference): Use calloc instead of malloc&bzero.
5538
5539 2006-05-05  Jakub Jelinek  <jakub@redhat.com>
5540
5541         [BZ #2509]
5542         * stdio-common/tst-printf.sh: Adjust for tst-printf.c change even
5543         on 32-bit arches.
5544
5545 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
5546
5547         * locale/programs/ld-address.c (address_finish): Fix one more
5548         place where the iso639 array might be accessed beyond the limits.
5549
5550 2006-05-04  Ulrich Drepper  <drepper@redhat.com>
5551
5552         * nis/nis_table.c (nis_list): Avoid clearing res twice before
5553         filling it for the first time.
5554
5555         * nis/nis_table.c (get_tablepath): Renamed from __get_tablepath.
5556         Adjust all callers.
5557         Free res object content before returning.
5558
5559         * sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero.
5560
5561         * sunrpc/key_call.c (__rpc_thread_key_cleanup): Also free
5562         client->cl_auth.
5563
5564         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Don't skip entire
5565         cleanup for initial thread, just the free call on TVP.
5566
5567         * nscd/gai.c (__getline): Define.
5568
5569
5570 See ChangeLog.16 for earlier changes.