.
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2007-09-15  Mike Frysinger  <vapier@gentoo.org>
2
3         * inet/inet_net.c: Reset digit to 0 for inputs starting with "0x".
4         * inet/tst-network.c (tests): Add edge case tests for "0", "0x", "0x0".
5
6 2007-09-14  Mike Frysinger  <vapier@gentoo.org>
7
8         * inet/tst-network.c: Increment ERRORS for failing tests.
9
10 2007-09-07  Jakub Jelinek  <jakub@redhat.com>
11
12         * misc/sys/cdefs.h (__va_arg_pack): Define for GCC 4.3+.
13         * misc/bits/syslog.h (syslog): When __va_arg_pack is defined,
14         implement as __extern_always_inline function.
15         (vsyslog): Define as __extern_always_inline function unconditionally.
16         * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf):
17         When __va_arg_pack is defined, implement as __extern_always_inline
18         functions.
19         (vsprintf, vsnprintf, vprintf, vfprintf): Define as
20         __extern_always_inline functions unconditionally.
21         * libio/bits/stdio.h (vprintf): Ifdef out the inline when
22         bits/stdio2.h will be included.
23         * wcsmbs/bits/wchar2.h (__swprintf_alias): New redirect.
24         (swprintf, wprintf, fwprintf): When __va_arg_pack is defined,
25         implement as __extern_always_inline functions.
26         (vswprintf, vwprintf, vfwprintf): Define as
27         __extern_always_inline functions unconditionally.
28         * debug/tst-chk1.c (do_test): Enable remaining tests for C++.
29
30 2007-09-03  Jakub Jelinek  <jakub@redhat.com>
31
32         * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Only
33         define in C++ for GCC 4.3+, in C++ always use __gnu_inline__
34         attribute.
35         * include/features.h (__USE_EXTERN_INLINES): Define only when
36         __extern_inline is defined.
37         * stdlib/stdlib.h: Include bits/stdlib.h when __extern_always_inline
38         is defined instead of when not __cplusplus.
39         * misc/sys/syslog.h: Include bits/syslog.h when __extern_always_inline
40         is defined instead of when not __cplusplus.
41         * socket/sys/socket.h: Include bits/socket2.h when
42         __extern_always_inline is defined instead of when not __cplusplus.
43         * libio/stdio.h: Include bits/stdio2.h when __extern_always_inline
44         is defined instead of when not __cplusplus.
45         * posix/unistd.h: Include bits/unistd.h when __extern_always_inline
46         is defined instead of when not __cplusplus.
47         * string/string.h: Include bits/string3.h when __extern_always_inline
48         is defined instead of when not __cplusplus.
49         * wcsmbs/wchar.h: Include bits/wchar2.h when __extern_always_inline
50         is defined instead of when not __cplusplus.
51         (btowc, wctob): Don't guard the inlines with ifndef __cplusplus.
52         * io/fcntl.h: Don't include bits/fcntl2.h if __extern_always_inline
53         is not defined.
54         * misc/bits/syslog-ldbl.h: Guard *_chk stuff with
55         defined __extern_always_inline instead of !defined __cplusplus.
56         * libio/bits/stdio-ldbl.h: Likewise.
57         * wcsmbs/bits/wchar-ldbl.h: Likewise.
58         * misc/bits/syslog.h (syslog): Don't define for C++.
59         (vsyslog): Use __extern_always_inline function for C++ instead of
60         a macro.
61         * libio/bits/stdio.h (__STDIO_INLINE): Define to __extern_inline
62         whenever that macro is defined.
63         (vprintf): Don't provide the inline for C++.
64         (fread_unlocked, fwrite_unlocked): Don't define the macros for C++.
65         * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf): Don't
66         define the macros for C++.
67         (vsprintf, vsnprintf, vprintf, vfprintf): Define as
68         __extern_always_inline functions for C++.
69         * io/sys/stat.h (stat, lstat, fstat, fstatat, mknod, mknodat,
70         stat64, lstat64, fstat64, fstatat64): Don't define if not
71         __USE_EXTERN_INLINES.
72         * wcsmbs/bits/wchar2.h: Fix #error message.
73         (swprintf, wprintf, fwprintf): Don't define the macros for C++.
74         (vswprintf, vwprintf, vfwprintf): Define using
75         __extern_always_inline functions for C++.
76         * string/bits/string3.h: Don't #undef macros if __cplusplus.
77         (memcpy, memmove, mempcpy, memset, bcopy, bzero, strcpy, stpcpy,
78         strncpy, strcat, strncat): Define as __extern_always_inline
79         functions instead of macros for C++.
80         * math/bits/cmathcalls.h: Guard __extern_inline routines with
81         defined __extern_inline.
82         * sysdeps/alpha/fpu/bits/mathinline.h (__MATH_INLINE): Define
83         to __extern_inline whenever that macro is defined.
84         * sysdeps/ia64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
85         * sysdeps/i386/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
86         * sysdeps/i386/i486/bits/string.h (__STRING_INLINE): Likewise.
87         * sysdeps/s390/bits/string.h (__STRING_INLINE): Likewise.
88         * sysdeps/s390/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
89         * sysdeps/powerpc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
90         * sysdeps/x86_64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
91         * sysdeps/sparc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
92         * sysdeps/unix/sysv/linux/sys/sysmacros.h (gnu_dev_major,
93         gnu_dev_minor, gnu_dev_makedev): Remove __extern_inline from
94         prototypes.  Only provide __extern_inline routines if
95         __USE_EXTERN_INLINES.
96         * debug/Makefile: Add rules to build and run tst-{,lfs}chk{4,5,6}
97         tests.
98         * debug/tst-chk1.c (do_prepare, do_test): Allow compilation as C++.
99         For now avoid some *printf tests in C++.  Skip all testing
100         if __USE_FORTIFY_LEVEL is defined, but __extern_always_inline macro
101         is not.
102         * debug/tst-chk4.cc: New file.
103         * debug/tst-chk5.cc: New file.
104         * debug/tst-chk6.cc: New file.
105         * debug/tst-lfschk4.cc: New file.
106         * debug/tst-lfschk5.cc: New file.
107         * debug/tst-lfschk6.cc: New file.
108         * include/wchar.h (__vfwprintf_chk, __vswprintf_chk): Avoid
109         prototypes in C++.
110         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
111         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
112         __vfprintf_chk, __fgets_unlocked_chk, __fgets_chk): Likewise.
113
114 2007-09-13  Ulrich Drepper  <drepper@redhat.com>
115
116         * po/cs.po: Update from translation team.
117
118 2007-09-11  Roland McGrath  <roland@redhat.com>
119
120         * posix/Makefile ($(objpfx)getconf.speclist): Make it empty if cross
121         compiling.
122
123 2007-09-07  Samuel Thibault  <samuel.thibault@ens-lyon.org>
124
125         * sysdeps/mach/hurd/bits/ioctls.h (TAB3): New macro.
126
127 2007-09-05  Roland McGrath  <roland@redhat.com>
128
129         * manual/signal.texi (Signaling Another Process): Typo fix.
130         From Karl Berry <karl@freefriends.org>.
131
132 2007-08-29  Ulrich Drepper  <drepper@redhat.com>
133
134         * sysdeps/unix/sysv/linux/check_pf.c (IFA_F_OPTIMISTIC): Define to
135         zero if not defined.
136         (make_request): Recognize optimistic addresses and treat them like
137         deprecated addresses.
138         Reported by Neil Horman <nhorman@redhat.com>.
139
140 2007-08-28  Ulrich Drepper  <drepper@redhat.com>
141
142         * nscd/connections.c (send_ro_fd): Also transfer file size.
143         * nscd/nscd_helper.c (get_mapping): If nscd also transfers the
144         file size don't call fstat.
145
146         * nscd/nscd_helper.c (get_mapping): Avoid the pread call, just go
147         ahead and map the file.  This should always be correct and we can
148         catch problems later.
149
150 2007-08-28  Jakub Jelinek  <jakub@redhat.com>
151
152         * libio/bits/stdio2.h (__fread_chk, __fread_unlocked_chk): New
153         prototypes.
154         (__fread_alias, __fread_unlocked_alias): New aliases.
155         (fread): New extern inline.
156         (fread_unlocked): Likewise.  Undef macro before definition of
157         the inline function.
158         * debug/Makefile (routines): Add fread_chk and fread_u_chk.
159         (CFLAGS-fread_chk.c, CFLAGS-fread_u_chk.c): Add.
160         * debug/Versions (libc): Export __fread_chk@@GLIBC_2.7
161         and __fread_unlocked_chk@@GLIBC_2.7.
162         * debug/fread_chk.c: New file.
163         * debug/fread_u_chk.c: New file.
164         * debug/tst-chk1.c (do_test): Add fread and fread_unlocked tests.
165
166 2007-08-27  Jakub Jelinek  <jakub@redhat.com>
167
168         * sysdeps/unix/sysv/linux/syscalls.list
169         (personality): Change caller to EXTRA.
170
171 2007-08-25  Ulrich Drepper  <drepper@redhat.com>
172
173         * iconvdata/iso-2022-kr.c (BODY): Fake initialization of array buf
174         to keep gcc quiet.
175         * iconvdata/iso-2022-cn.c (BODY): Likewise.
176
177         * locale/programs/ld-collate.c (collate_output): Avoid warning if
178         NDEBUG is defined.
179
180         * Makerules: Use -p option with mkdir.
181
182         * sunrpc/key_prot.c (xdr_unixcred): Work around gcc alias warning.
183         * nis/nis_xdr.c (_xdr_nis_server): Likewise.
184         (_xdr_directory_obj): Likewise.
185         (xdr_entry_obj): Likewise.
186         (xdr_group_obj): Likewise.
187         (xdr_link_obj): Likewise.
188         (xdr_table_obj): Likewise.
189         (_xdr_nis_result): Likewise.
190         (_xdr_ns_request): Likewise.
191         (_xdr_ib_request): Likewise.
192         (_xdr_nis_taglist): Likewise.
193         (xdr_cback_data): Likewise.
194         * nis/yp_xdr.c (xdr_ypmaplist): Likewise.
195         (xdr_ypresp_maplist): Likewise.
196
197         * stdio-common/Makefile: Avoid format string warning for tst-sprint.
198
199         * posix/regex_internal.h: Prevent some declarations and definitions
200         to be seen when used in tests.
201
202         * posix/tst-rfc3484.c (__idna_to_unicode_lzlz): Initialize *OUTPUT.
203         * posix/tst-rfc3484-2.c (__idna_to_unicode_lzlz): Likewise.
204
205         * debug/Makefile: Disable format checking when compiling tst-chk?.c.
206
207         * config.make.in (datarootdir): Add to shut up configure.
208
209         * sysdeps/x86_64/cacheinfo.c (handle_amd): Fix computation of
210         associativity for fully-associative caches.
211
212         * sysdeps/x86_64/cacheinfo.c (handle_amd): Handle L3 cache
213         requests.  Fill on more associativity values for L2.
214         Patch mostly by Evandro Menezes.
215
216 2007-08-24  Ulrich Drepper  <drepper@redhat.com>
217
218         * sysdeps/unix/sysv/linux/x86_64/init-first.c
219         (_libc_vdso_platform_setup): Avoid using exported variable by using
220         alias.
221
222         * resolv/arpa/nameser.h (NS_OPT_DNSSEC_OK): Define.
223
224         * sysdeps/unix/sysv/linux/i386/syscalls.list: No reason to mark
225         fallocate64 as EXTRA.  It is not referenced if the symbol isn't
226         defined.
227
228 2007-08-23  Ulrich Drepper  <drepper@redhat.com>
229
230         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Correctly
231         align stack for call if pltexit is to be used.
232
233         [BZ #3924]
234         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Correctly
235         align for function call in case pltexit has to be called later.
236
237         * sysdeps/i386/dl-trampoline.S (_dl_runtime_resolve): Avoid
238         implicit atomic operation when storing function pointer.
239         (_dl_runtime_profile): Likewise.
240
241 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
242
243         * nis/nis_table.c (nis_list): Don't fail if __follow_path returned
244         NIS_NOTFOUND.
245
246 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
247
248         [BZ #4566]
249         * string/strtok.c: Fix typo in comment.
250
251         [BZ #4582]
252         * debug/segfault.c: Fix typos in comments.
253
254         [BZ #4588]
255         * stdio-common/tempnam.c: Fix comment, it is not checked that
256         TMPDIR points to a writable directory.
257
258         [BZ #4726]
259         * resolv/res_send.c (__libc_res_nsend): Initialize all of the
260         memory allocated for the name server address.
261
262         [BZ #4946]
263         * nscd/connections.c (handle_request): Using sendfile always
264         requires that mmap is used for the database.
265         Patch by Petr Baudis <pasky@suse.cz>.
266
267         [BZ #4905]
268         * nscd/hstcache.c (cache_addhst): When reloading an entry which
269         suddenly has two or more addresses, ignore it and remove the old
270         entry.
271
272         [BZ #4814]
273         * resolv/res_hconf.c: Prepare for compiling outside libc.
274         * nscd/res_hconf.c: New file.
275         * nscd/Makefile (nscd-modules): Add res_hconf.  Add rules to build
276         the new file.
277         * nscd/gethstbynm2_r.c (NEED__RES_HCONF): Define.
278         * nscd/gethstbyad_r.c (NEED__RES_HCONF): Likewise.
279
280         * nscd/hstcache.c (cache_addhst): Minimal optimization.
281
282         [BZ #4925]
283         * debug/pcprofiledump.c: Turn on internationalization by calling
284         setlocale.  Patch mostly by Benno Schulenberg.
285
286         [BZ #4936]
287         * iconv/gconv.c (__gconv): If flush was successful, clear rest of
288         the state.
289         * iconvdata/Makefile: Add rules to build and run bug-iconv5.
290         * iconvdata/bug-iconv5.c: New file.
291
292 2007-08-04  Carlos O'Donell  <carlos@systemhalted.org>
293
294         [BZ #4896]
295         * elf/elf.h: Define R_PARISC_PLABEL21L, R_PARISC_PLABEL14R,
296         R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT, R_PARISC_TLS_GD21L,
297         R_PARISC_TLS_GD14R, R_PARISC_TLS_GDCALL, R_PARISC_TLS_LDM21L,
298         R_PARISC_TLS_LDM14R, R_PARISC_TLS_LDMCALL, R_PARISC_TLS_LDO21L,
299         R_PARISC_TLS_LDO14R, R_PARISC_TLS_DTPMOD32, R_PARISC_TLS_DTPMOD64,
300         R_PARISC_TLS_DTPOFF32, R_PARISC_TLS_DTPOFF64, R_PARISC_TLS_LE21L,
301         R_PARISC_TLS_LE14R, R_PARISC_TLS_IE21L, R_PARISC_TLS_IE14R,
302         R_PARISC_TLS_TPREL32, R_PARISC_TLS_TPREL64.
303
304 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
305
306         [BZ #4937]
307         * elf/do-lookup.h (do_lookup_x): Minimal improvement in hash
308         lookup loop.  Suggested by John Reiser.
309
310 2007-08-21  Jakub Jelinek  <jakub@redhat.com>
311
312         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Include tls.h.
313
314 2007-08-20  Ulrich Drepper  <drepper@redhat.com>
315
316         * csu/libc-start.c: Don't handle VDSO_SETUP here.
317         * sysdeps/unix/sysv/linux/init-first.c: Handle it here instead.
318         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: Renamed to...
319         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...this.  New file.
320         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Move VDSO_SETUP code
321         to...
322         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...here.  New file.
323
324 2007-08-18  Ulrich Drepper  <drepper@redhat.com>
325
326         * po/nl.po: Update from translation team.
327
328 2007-08-16  Andreas Jaeger  <aj@suse.de>
329
330         * locale/localeinfo.h: Make _nl_category_name_idxs extern.
331         Reported by Peter Festner <peter.festner@ewetel.net>.
332
333 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
334
335         * login/tst-grantpt.c (test_einval): Add 3rd argument to open.
336
337 2007-08-16  Jakub Jelinek  <jakub@redhat.com>
338
339         * elf/Makefile ($(objpfx)ld.so): Use readelf -s and awk instead of nm -u
340         to check for undefined symbols.
341
342         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone):
343         If the syscall fails, set errno to the actual returned error number
344         rather than EINVAL.
345         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If
346         arguments are incorrect, set errno to EINVAL, if the syscall
347         fails, set errno to the actual returned error number.
348
349         * stdlib/bits/stdlib-ldbl.h (__strtold_internal): Remove.
350         * wcsmbs/bits/wchar-ldbl.h (__wcstold_internal): Remove.
351
352         * sysdeps/sparc/sparc32/sparcv9b/memcpy.S: Moved to...
353         * sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S: ... here.  New
354         file.
355         (ASI_PNF, ASI_BLK_P): Don't define.
356         * sysdeps/sparc/sparc32/sparcv9v/memcpy.S: Moved to...
357         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S: ... here.  New
358         file.
359         * sysdeps/sparc/sparc32/sparcv9v/memset.S: Moved to...
360         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S: ... here.  New
361         file.
362
363 2007-08-15  Jakub Jelinek  <jakub@redhat.com>
364
365         * sysdeps/sparc/fpu/fraiseexcpt.c (__feraiseexcept): Fix raising
366         FE_UNDERFLOW on Niagara CPUs.
367
368         * sysdeps/sparc/fpu/feholdexcpt.c (feholdexcept): Clear all
369         exceptions.
370
371 2007-08-14  Jakub Jelinek  <jakub@redhat.com>
372
373         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup): No
374         need to check GLRO(dl_hwcap) & HWCAP_SPARC_FLUSH on sparcv9.
375         (sparc_fixup_plt): Add do_flush argument instead of figuring whether
376         flush should be used or not inside of the function.
377         (elf_machine_fixup_plt, elf_machine_rela): Adjust caller.
378
379         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone,
380         __thread_start): Use HIDDEN_JUMPTARGET.
381         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone,
382         __thread_start): Likewise.
383         * sysdeps/unix/sysv/linux/sparc/sysdep.h (JUMPTARGET): Define.
384
385         * sysdeps/ieee754/ldbl-64-128/strtold_l.c (__STRTOF): Declare.
386         Add libc_hidden_proto.
387         (STRTOF): Add libc_hidden_proto.
388         (___new_strtold_l, ___new_wcstold_l): New weak aliases.
389         (strtold_l, wcstold_l): Use them as second argument for
390         long_double_symbol.
391
392 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
393
394         * elf/dl-misc.c: Undo last change.  The kernel won't allow it.
395
396 2007-08-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
397
398         * stdlib/strtold_l.c: Include wchar.h if needed.  Add libc_hidden_def.
399
400 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
401
402         * po/bg.po: New file.  From the translation team.
403
404 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
405
406         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PSELECT,
407         __ASSUME_PPOLL, __ASSUME_ATFCTS, __ASSUME_SET_ROBUST_LIST,
408         __ASSUME_UTIMENSAT, __ASSUME_FALLOCATE): Update per-arch conditions
409         when each feature was introduced.
410
411         * sysdeps/unix/sysv/linux/dl-vdso.c: Don't include dl-hash.h.
412         * sysdeps/unix/sysv/linux/dl-vdso.h: Don't include dl-hash.h if NDEBUG.
413         (CHECK_HASH): New macro.
414         (PREPARE_VERSION): Use it.
415
416         * sysdeps/unix/sysv/linux/pselect.c (__generic_pselect): Only provide
417         prototype if not __ASSUME_PSELECT.
418         * sysdeps/unix/sysv/linux/ppoll.c (__generic_ppoll): Only provide
419         prototype if not __ASSUME_PPOLL.
420
421         * sysdeps/unix/sysv/linux/dl-osinfo.h (ROUND): #undef after use.
422
423         * sysdeps/unix/clock_settime.c (freq, __pthread_clock_settime,
424         hp_timing_settime): Don't define or declare if HANDLED_CPUTIME
425         is defined.
426
427 2007-08-13  Ulrich Drepper  <drepper@redhat.com>
428
429         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
430         (_libc_vdso_platform_setup): If vDSO is not available point
431         __vdso_gettimeofday to the vsyscall.
432         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S [SHARED]: Use
433         __vdso_gettimeofday instead of vsyscall.
434
435 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
436
437         * nscd/servicescache.c: Include kernel-features.h.
438         * nscd/gai.c: Likewise.
439         * sysdeps/unix/sysv/linux/statfs64.c: Likewise.
440         * sysdeps/unix/sysv/linux/fstatfs64.c: Likewise.
441         * sysdeps/unix/sysv/linux/fxstatat.c: Likewise.
442         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S: Likewise.
443         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S: Likewise.
444         * sysdeps/unix/sysv/linux/xstatconv.c: Likewise.
445         * sysdeps/unix/sysv/linux/if_index.c: Likewise.
446         * sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: Likewise.
447         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
448
449 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
450
451         * elf/dl-dst.h: No need for _dl_dst_count, _dl_dst_substitute,
452         and _dl_get_origin defines anymore.
453
454         * sysdeps/unix/sysv/linux/clock_gettime.c (maybe_syscall_gettime_cpu):
455         Build fix for systems which might lack POSIX timer support.
456
457         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
458         (_libc_vdso_platform_setup): Mangle function pointers before storing
459         them.
460         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INLINE_VSYSCALL):
461         Demangle vdso pointer before use.
462         (INTERNAL_VSYSCALL): Likewise.
463
464         * elf/cache.c (primes): Mark as const.
465         Noted by Roland McGrath.
466
467 2007-08-01  Andreas Jaeger  <aj@suse.de>
468             Jakub Jelinek  <jakub@redhat.com>
469
470         * elf/ldconfig.c (opt_ignore_aux_cache): Add new option.
471         (options): Add option.
472         (parse_opt): Handle option.
473         (manual_link): Adjust process_file caller.  Call implicit_soname.
474         (search_dir): Formatting.  Use and populate auxiliary cache.
475         (main): Load and save auxiliary cache.
476         * elf/readlib.c (process_file): Add stat_buf argument.  Pass struct
477         stat64 from fstat64 to caller.
478         (implicit_soname): New function.
479         * elf/readelflib.c (process_elf_file): If DT_SONAME is not present,
480         leave *soname as NULL.
481         * elf/cache.c: Include libgen.h.
482         (print_entry, print_cache, compare, save_cache, add_to_cache):
483         Formatting and cleanups.
484         (aux_cache_entry_id, aux_cache_entry, aux_cache_file_entry,
485         aux_cache_file): New structures.
486         (AUX_CACHEMAGIC): Define.
487         (primes): New array.
488         (aux_hash_size, aux_hash): New variables.
489         (aux_cache_entry_id_hash, nextprime, init_aux_cache,
490         search_aux_cache, insert_to_aux_cache, add_to_aux_cache,
491         load_aux_cache, save_aux_cache): New functions.
492         * sysdeps/generic/ldconfig.h (_PATH_LDCONFIG_AUX_CACHE): Define.
493         (init_aux_cache, search_aux_cache, add_to_aux_cache,
494         load_aux_cache, save_aux_cache, implicit_soname): New prototypes.
495         (process_file): Adjust prototype.
496
497 2007-08-12  Jakub Jelinek  <jakub@redhat.com>
498
499         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Include stddef.h
500         with __need_size_t.
501
502 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
503
504         * sysdeps/unix/sysv/linux/dl-vdso.c (_dl_vdso_vsym): Expect
505         r_found_version structure as second parameter.
506         * sysdeps/unix/sysv/linux/dl-vdso.h (PREPARE_VERSION): Define.
507         (_dl_vdso_vsym): Change type of second parameter accordingly.
508         * sysdeps/unix/sysv/linux/x86-64/libc-start.c
509         (_libc_vdso_platform_setup): Adjust.
510         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
511         (_libc_vdso_platform_setup): Likewise.
512
513         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.c: Move to...
514         * sysdeps/unix/sysv/linux/dl-vdso.c: ...here.
515         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.h: Move to...
516         * sysdeps/unix/sysv/linux/dl-vdso.h: ...here.
517         * csu/libc-start.c: Pretty printing.
518         Use VDSO_SETUP if defined.
519         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Define VDSO_SETUP
520         and let generic code call into _libc_vdso_platform_setup.
521         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: New file.
522         * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: New file.
523         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Pretty printing.
524         Define INLINE_VSYSCALL and INTERNAL_VSYSCALL.
525         * sysdeps/unix/sysv/linux/x86_64/Versions: Export __vdso_clock_gettime
526         for GLIBC_PRIVATE.
527         * sysdeps/unix/sysv/linux/x86_64/Makefile [subdir=elf]
528         (sysdep_rountines): Add dl-vdso.
529
530         * sysdeps/unix/sysv/linux/powerpc/Makefile: Use sysdep_routines instead
531         of routines.
532
533         * sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h: Add
534         attribute_hidden to __vdso_gettimeofday prototype.
535
536 2007-08-12  Roland McGrath  <roland@redhat.com>
537
538         * manual/stdio.texi (Variable Arguments Output): Fix xref to gcc manual.
539         From: Karl Berry <karl@freefriends.org>.
540
541 2007-08-11  Ulrich Drepper  <drepper@redhat.com>
542
543         * elf/dl-misc.c (_dl_sysdep_read_whole_file): We really don't need
544         an atime update for the files we read.
545
546 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
547
548         * shadow/lckpwdf.c (__lckpwdf): Use O_CLOEXEC if possible.
549
550         * nscd/connections.c: Use O_CLOEXEC if possible.  Use mkostemp
551         instead of mkstemp.
552
553         * misc/Makefile (routines): Add mkostemp and mkostemp64.
554         * misc/Versions: Export mkostemp and mkostemp64 for GLIBC_2.7.
555         * misc/mkostemp.c: New file.
556         * misc/mkostemp64.c: New file.
557         * stdlib/stdlib.h: Declare the new functions.
558         * sysdeps/posix/tempname.c: Add new parameter which is added to
559         the flags for open.  Remove __GT_BIGFILE handling.
560         * stdio-common/tempname.c: Likewise.
561         * include/stdio.h: Adjust __gen_tempname prototype.
562         Renumber __GT_* constants.
563         * libio/oldtmpfile.c: Adjust for __gen_tempname interface change.
564         * misc/mkdtemp.c: Likewise.
565         * misc/mkstemp.c: Likewise.
566         * misc/mkstemp64.c: Likewise.
567         * misc/mktemp.c: Likewise.
568         * stdio-common/tempnam.c: Likewise.
569         * stdio-common/tmpfile.c: Likewise.
570         * stdio-common/tmpfile64.c: Likewise.
571         * stdio-common/tmpnam.c: Likewise.
572         * stdio-common/tmpnam_r.c: Likewise.
573
574 2007-08-10  Roland McGrath  <roland@frob.com>
575
576         * sysdeps/mach/hurd/bits/ioctls.h (NLDLY, TABDLY, BSDLY, VTDLY):
577         New macros.
578         (NLDELAY, CRDELAY, TBDELAY, BSDELAY, VTDELAY): Define to those.
579         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
580
581 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
582
583         * nss/nss_files/files-XXX.c (internal_setent): Use O_CLOEXEC if
584         possible.
585         * nss/nss_files/files-alias.c (internal_setent): Likewise.
586         * nss/Makefile (libnss_files-routines): Add files-have_o_cloexec.
587         * nss/nss_files/files-have_o_cloexec.c: New file.
588
589         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Use O_CLOEXEC if
590         available.
591
592 2007-08-10  Jakub Jelinek  <jakub@redhat.com>
593
594         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c (___new_strtold_l,
595         ___new_wcstold_l): New weak aliases.
596         (strtold_l, wcstold_l): Use them as second argument for
597         long_double_symbol.
598
599 2007-08-09  Ulrich Drepper  <drepper@redhat.com>
600
601         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: Use correct
602         register in test for error.
603
604         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_CLOEXEC): Define.
605         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_CLOEXEC): Likewise.
606
607         * po/sv.po: Update from translation team.
608
609 2007-08-06  Roland McGrath  <roland@redhat.com>
610
611         * include/stdlib.h: Add libc_hidden_proto for strto*, __strto*_l.
612         Remove __strto*_l inlines.
613         * include/wchar.h: Add libc_hidden_proto for wcsto*, __wcsto*_l.
614         * stdlib/strtod.c: Add libc_hidden_def.
615         * stdlib/strtod_l.c: Likewise.
616         * stdlib/strtold.c [__LONG_DOUBLE_MATH_OPTIONAL]: Add libc_hidden_proto
617         for __new_strtold and __new_wcstold.
618         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c: Add libc_hidden_proto for
619         __STRTOF, STRTOF.
620         * stdlib/strtol.c: Add libc_hidden_def.
621         * stdlib/strtol_l.c: Likewise.
622         * sysdeps/wordsize-64/strtol.c: Add libc_hidden_ver for strtoll and
623         strtoq.
624
625         * scripts/data/localplt-powerpc-linux-gnu.data: New file.
626
627         * scripts/data/localplt-x86_64-linux-gnu.data: File renamed to ...
628         * scripts/data/localplt-generic.data: ... here.
629         * elf/Makefile (check-data): Get generic file if no other.
630         ($(objpfx)check-localplt.out): Make target unconditional.
631
632         * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion):
633         Use ElfW(Nhdr).
634
635 2007-08-05  Ulrich Drepper  <drepper@redhat.com>
636
637         * po/zh_CN.po: Updated translation from translation team.
638
639 2007-08-05  Jakub Jelinek  <jakub@redhat.com>
640
641         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket):
642         Don't use CGOTSETUP and CGOTRESTORE macros.
643
644 2007-08-04  Roland McGrath  <roland@redhat.com>
645
646         * posix/Makefile ($(objpfx)getconf.speclist): Fix typo.
647
648 2007-08-04  Jakub Jelinek  <jakub@redhat.com>
649
650         * io/bits/fcntl2.h (open, open64, openat, openat64): Add
651         __extension__ around the whole statement expression.
652
653 2007-08-04  Ulrich Drepper  <drepper@redhat.com>
654
655         * sysdeps/unix/opendir.c (__alloc_dir): Correct order of DIR
656         elements during initialization.
657
658         * po/pl.po: Updated translation from translation team.
659         * po/tr.po: Likewise.
660         * po/nl.po: Likewise.
661
662 2007-08-03  Ulrich Drepper  <drepper@redhat.com>
663
664         * rt/aio.h: Add __nonnull attributes.
665
666 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
667
668         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Properly handle -0.
669         * stdlib/Makefile (tests): Add tst-strtod5.
670         (tst-strtod5-ENV): New.
671         * stdlib/tst-strtod5.c: New file.
672
673         * intl/dcigettext.c (_nl_find_msg): Free encoding if __gconv_open
674         failed.
675         * intl/finddomain.c (_nl_find_domain): Free normalized_codeset
676         on failure.
677
678         * elf/dl-load.c (decompose_rpath): Free copy if result couldn't be
679         allocated.
680
681 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
682
683         * rt/mqueue.h (mq_timedreceive, mq_timedsend): Fix nonnull argument
684         numbers.
685
686 2007-08-02  Ulrich Drepper  <drepper@redhat.com>
687
688         * io/Makefile (aux): Add have_o_cloexec.
689         * include/fcntl.h: Declare __have_o_cloexec.
690         * io/have_o_cloexec.c: New file.
691         * sysdeps/unix/opendir.c (__opendir): Use O_CLOEXEC is available.
692         (__alloc_dir): If O_CLOEXEC has been used, don't duplicate the
693         fcntl call if not necessary.
694         * login/utmp_file.c (setutent_file): Use __have_o_cloexec instead
695         of local variable.
696
697         * sysdeps/unix/opendir.c (__alloc_dir): Don't initialize ->data.
698         Avoid memset, add explicit initialization.
699         * sysdeps/unix/dirstream.h (struct __dirstream): Move data elemtn
700         to the end and change into zero-sized array.
701         Move lock member to fill a hole on 64-bit platforms.
702
703         * stdlib/stdlib.h: Remove __strto*_internal prototypes and strto*
704         inline functions.
705         * include/stdlib.h: Add __strto*_internal prototypes here.
706         * wcsmbs/wchar.h: Remove __wcsto*_internal prototypes and wcsto*
707         inline functions.
708         * include/wchar.h: Add __wcsto*_internal prototypes.
709         * sysdeps/generic/inttypes.h: No need to protect the declaration
710         of the __strto*_internal and __wcsto*_internal members here.
711
712         * rt/mqueue.h: Change const to __const and add nonnull attributes.
713
714 2007-08-02  Roland McGrath  <roland@redhat.com>
715
716         * posix/Makefile ($(inst_libexecdir)/getconf): Make hard links to
717         $(inst_bindir)/getconf if possible.
718
719         * posix/Makefile ($(objpfx)getconf.speclist): New target.
720         (generated): Add it.
721         ($(inst_libexecdir)/getconf): Use it.
722
723 2007-08-01  Ulrich Drepper  <drepper@redhat.com>
724
725         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Using
726         /proc is faster and sufficient.  /sys is still needed for
727         __get_nprocs_conf.
728
729 2007-08-01  Jakub Jelinek  <jakub@redhat.com>
730
731         * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate): Add fallocate
732         syscall as __fallocate64.
733         * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: New file.
734         * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: New file.
735
736 2007-07-30  Jakub Jelinek  <jakub@redhat.com>
737
738         * stdlib/tst-strtod2.c (do_test): Use %tu in fmt string for ptrdiff_t
739         value.
740
741         * stdio-common/tst-fmemopen2.c (do_test): Avoid fmt string warning
742         if off_t is different rank from size_t.
743
744         * sysdeps/generic/unwind-dw2.c (extract_cie_info, execute_cfa_program,
745         uw_frame_state_for): Avoid type punning warnings.
746         * sysdeps/generic/unwind-dw2-fde-glibc.c
747         (_Unwind_IteratePhdrCallback): Likewise.
748         * sysdeps/generic/unwind-dw2-fde.c (_Unwind_Find_FDE): Likewise.
749         (binary_search_single_encoding_fdes, binary_search_mixed_encoding_fdes,
750         get_cie_encoding, linear_search_fdes): Don't mix char and unsigned char
751         pointers.
752
753 2007-07-31  Ulrich Drepper  <drepper@redhat.com>
754
755         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs_conf): Count
756         total processors using sysfs.
757         (__get_nprocs): Use sysfs to determine which processors are online.
758
759 2007-07-31  Jakub Jelinek  <jakub@redhat.com>
760
761         * sysdeps/unix/sysv/linux/posix_fallocate.c (posix_fallocate): Fix
762         syscall arguments count.
763
764         * stdio-common/tfformat.c (sprint_doubles): Add 12 new tests.
765
766 2007-07-30  Roland McGrath  <roland@redhat.com>
767
768         * manual/libc.texinfo: Update copyrights, formatting magic, and
769         @dircategory.  From Karl Berry <karl@freefriends.org>.
770
771 2007-07-29  Ulrich Drepper  <drepper@redhat.com>
772
773         [BZ #4860]
774         * io/Makefile (headers): Add bits/fcntl2.h.
775
776         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO_S): Optimize
777         using gcc builtin.
778         (__CPU_EQUAL_S): Likewise.
779
780         * posix/Makefile (routines): Add sched_cpualloc and sched_cpufree.
781         (tests): Add tst-cpuset.
782         * posix/sched_cpualloc.c: New file.
783         * posix/sched_cpufree.c: New file.
784         * posix/tst-cpuset.c: New file.
785         * posix/Versions: Export __sched_cpualloc and __sched_cpufree for
786         GLIBC_2.7.
787         * sysdeps/unix/sysv/linux/bits/sched.h: Define __CPU_*_S macros.
788         * posix/sched.h: Define old CPU_* macros in temers of __CPU_*_S
789         macros.  Define CPU_*_S macros.
790
791 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
792
793         * posix/getconf.c (vars): Add missing _SC_LEVEL4_CACHE_LINESIZE
794         entry.
795
796         [BZ #4858]
797         * stdio-common/printf_fp.c (___printf_fp): Fix special case of
798         #.0g and value rounded to 1.0.
799         * stdio-common/tfformat.c (sprint_doubles): Add two new tests.
800
801 2007-07-26  Jakub Jelinek  <jakub@redhat.com>
802
803         * locale/programs/ld-monetary.c (monetary_finish): Avoid range check
804         for int_frac_digits and frac_digits.
805
806         * login/logout.c (logout): Avoid aliasing violation.
807         * login/logwtmp.c (logwtmp): Likewise.
808
809         * libio/genops.c (_IO_un_link): Avoid aliasing violation.
810
811         * nscd/selinux.c (preserve_capabilities): Initialize new_caps
812         to avoid warning.
813         * iconv/gconv_open.c (__gconv_open): Initialize ptr to avoid
814         warning.
815         * nis/nis_subr.c (nis_getnames): Initialize saveptr to avoid
816         warning.
817         * resolv/inet_ntop.c (inet_ntop6): Initialize best.len and cur.len
818         to avoid warnings.
819
820         * nss/nsswitch.c (__nss_lookup_function): Don't cast &ni->known to
821         void **.
822         * nss/nsswitch.h (service_user): Use void * type for KNOWN field.
823
824         * nss/nss_files/files-hosts.c (LINE_PARSER): Cast host_addr to
825         char * to avoid warning.
826         * nis/nss_nis/nis-hosts.c (LINE_PARSER): Likewise.
827
828         * timezone/Makefile (CFLAGS-zdump.c): Add -fwrapv.
829
830         * locale/programs/ld-ctype.c (ctype_finish, set_class_defaults,
831         allocate_arrays): Cast second argument to charmap_find_symbol
832         to char * to avoid warnings.
833
834         * locale/programs/repertoire.c (repertoire_new_char): Change
835         from_nr, to_nr and cnt to unsigned long, adjust printf format
836         string.
837
838         * locale/programs/ld-collate.c (insert_value, handle_ellipsis):
839         Cast second argument to new_element to char * to avoid warnings.
840
841         * locale/weightwc.h (findidx): Cast &extra[-i] to const int32_t *.
842
843         * intl/gettextP.h (struct loaded_domain): Change plural to const
844         struct expression *.
845         * intl/plural-eval.c (plural_eval): Change first argument to
846         const struct expression *.
847         * intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Change first
848         argument to const struct expression **.
849         * intl/plural-exp.h (EXTRACT_PLURAL_EXPRESSION, plural_eval): Adjust
850         prototypes.
851         * intl/loadmsgcat (_nl_unload_domain): Cast away const
852         in call to __gettext_free_exp.
853
854         * posix/fnmatch.c (fnmatch): Rearrange code to avoid maybe
855         unitialized wstring/wpattern var warnings.
856
857         * posix/runtests.c (struct a_test): Make data field const char *.
858
859         * stdio-common/tst-sprintf2.c (main): Don't declere u, v and buf
860         vars if not LDBL_MANT_DIG >= 106.
861
862         * stdio-common/Makefile (CFLAGS-vfwprintf.c): Add -Wno-unitialized.
863
864         * stdio-common/vfprintf.c (vfprintf): Cast first arugment to
865         __find_specmb to avoid warning.
866
867         * rt/tst-mqueue1.c (do_one_test): Add casts to avoid warnings.
868
869         * debug/test-strcpy_chk.c (do_tests, do_random_tests): Add casts
870         to avoid warnings.
871
872         * sysdeps/ieee754/ldbl-96/s_roundl.c (huge): Add L suffix to
873         initializer.
874
875         * sysdeps/unix/clock_gettime.c (clock_gettime): Only define
876         tv var when it will be actually used.
877
878         * sunrpc/rpc_cmsg.c (xdr_callmsg): Cast IXDR_PUT_* to void
879         to avoid warnings.
880
881         * iconvdata/gbk.c (BODY): Make buf and cp char instead of unsigned
882         char array resp. pointer.
883         * iconvdata/iso-2022-kr.c (BODY): Make buf unsigned char instead of
884         char array.
885         * iconvdata/cns11643.h (cns11643_to_ucs4): Change first argument
886         to const unsigned char **.
887         (ucs4_to_cns11643): Change second argument to unsigned char *.
888         * iconvdata/euc-tw.c (BODY): Change endp type to
889         const unsigned char *.
890         * iconvdata/iso-ir-165.h (ucs4_to_isoir165): Change second argument
891         to unsigned char *.
892         * iconvdata/ibm1008_420.c (LOOP_NEED_FLAGS): Don't define.
893         * iconvdata/iso-2022-cn.c (BODY): Change buf to unsigned char array.
894         * iconvdata/iso-2022-cn-ext.c (BODY): Change buf, tmpbuf, tmp
895         types to unsigned char pointers/arrays instead of char.
896         * iconvdata/jis0201.h (ucs4_to_jisx0201): Change second argument
897         to unsigned char *.
898         * iconvdata/jis0208.h (ucs4_to_jisx0208): Likewise.
899         * iconvdata/jis0212.h: Include assert.h.
900         (ucs4_to_jisx0212): Change second argument to unsigned char *.
901         assert that if cp[0] is not '\0', cp[1] is not '\0' either instead
902         of trying to handle that.
903         * iconvdata/euc-kr.c (euckr_from_ucs4): Initialize also cp[1] to
904         shut up a warning.
905         * iconvdata/euc-jp-ms.c (from_ucs4_lat1, from_ucs4_greek,
906         from_ucs4_cjk, from_ucs4_cjkcpt, from_ucs4_extra): Change type to
907         two dimensional const unsigned char arrays.
908         (BODY): Cast "" to (const unsigned char *) for assignment to cp.
909         Initialize endp to inptr to shut up a warning.
910
911 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
912
913         [BZ #4772]
914         * time/strptime_l.c (__strptime_internal): Silently ignore
915         strftime modifiers and field width in recursive calls.
916
917         * include/time.h (enum ptime_locale_status): Remove.
918         (__strptime_internal): Remove decided and era_cnt arguments,
919         add statep argument.
920         * time/strptime_l.c (__strptime_internal): Remove decided
921         and era_cnt arguments, add statep argument.  Don't recompute
922         any fields in recursive calls, only update caller's tm
923         and state, if recursive call fails, don't change tm nor
924         any state.
925         (get_alt_number): Adjust.
926         (recursive): Adjust caller.
927         (strptime): Likewise.
928         * time/strptime.c (strptime): Likewise.
929
930 2007-07-19  Jakub Jelinek  <jakub@redhat.com>
931
932         * iconv/gconv_int.h (__GCONV_NULCONV): New internal only error code.
933         * iconv/gconv_cache.c (__gconv_lookup_cache): Return __GCONV_NULCONV
934         if from and to charsets are the same.
935         * iconv/gconv_db.c (__gconv_find_transform): Likewise.
936         * intl/dcigettext.c (_nl_find_msg): Return NULL even if __gconv_open
937         returns __GCONV_NOCONV, but not for __GCONV_NULCONV.
938
939 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
940
941         * wcsmbs/wchar.h: Only define wint_t if __need_wint_t.
942         Don't define wint_t when __need_mbstate_t unless it
943         is necessary.
944         (__mbstate_t): Use __WINT_TYPE__ rather than wint_t
945         in the typedef if possible.
946         * wctype/wctype.h (wint_t): Define by including
947         wchar.h with __need_wint_t instead of including stddef.h
948         with __need_wint_t and as fallback definining it ourselves.
949         * iconv/gconv.h (__need_wint_t): Define before including
950         wchar.h.
951         * sysdeps/gnu/_G_config.h: Don't include gconv.h if not _LIBC
952         or _GLIBCPP_USE_WCHAR_T.
953         (__need_wchar_t): Don't define
954         if not _LIBC or _GLIBCPP_USE_WCHAR_T.
955         (__need_wint_t): Don't define before including stddef.h,
956         define before including wchar.h only if _LIBC or
957         _GLIBCPP_USE_WCHAR_T.
958         (_G_iconv_t): Don't define if not _LIBC or _GLIBCPP_USE_WCHAR_T.
959         * sysdeps/mach/hurd/_G_config.h: Likewise.
960         * sysdeps/generic/_G_config.h: Likewise.
961         * libio/libio.h (__wunderflow, __wuflow, __woverflow): Only
962         prototype if _LIBC or _GLIBCPP_USE_WCHAR_T.
963         (_IO_getwc_unlocked, _IO_putwc_unlocked): Only define
964         if _LIBC or _GLIBCPP_USE_WCHAR_T.
965
966 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
967
968         * sysdeps/posix/posix_fallocate64.c: Undefine
969         __posix_fallocate64_l64 before alias handling.
970         * sysdeps/unix/sysv/linux/posix_fallocate.c: New file.
971         * sysdeps/unix/sysv/linux/posix_fallocate64.c: New file.
972         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate.c: New file.
973         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate64.c: New file.
974
975         * io/tst-posix_fallocate.c: Include <fcntl.h>.
976
977 2007-07-23  Jakub Jelinek  <jakub@redhat.com>
978
979         * locale/programs/ld-collate.c (atwc): New variable.
980         (add_to_tablewc): New toplevel function, moved from collate_output.
981         (collate_output): Remove add_to_tablewc nested function.
982
983         * iconv/iconvconfig.c (hash_table, hash_size): New toplevel vars.
984         (name_insert): New function.
985         (write_output): Remove hash_table and hash_size vars and name_insert
986         nested function.
987
988 2007-07-24  Roland McGrath  <roland@redhat.com>
989
990         * Makerules (install-others-programs-nosubdir): New target.
991         (install-no-libc.a-nosubdir): Depend on it.
992
993         * iconv/Makefile (install-others-programs): Set this instead of
994         install-others.
995         * login/Makefile (install-others-programs): Likewise.
996         * posix/Makefile (install-others-programs): Likewise.
997
998         * Makerules (install-no-libc.a-nosubdir): Clean up conditional
999         dependencies.
1000
1001 2007-07-23  Ulrich Drepper  <drepper@redhat.com>
1002
1003         * io/Makefile (tests): Add tst-posix_fallocate.
1004         * io/tst-posix_fallocate.c: New file.
1005
1006         * sysdeps/unix/sysv/linux/kernel-features.h: Define
1007         __ASSUME_FALLOCATE.
1008
1009 2007-07-22  Roland McGrath  <roland@frob.com>
1010
1011         * hurd/getdport.c: Add missing copyright year update.
1012
1013         * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU] (O_CLOEXEC): New macro.
1014         * hurd/port2fd.c (_hurd_port2fd): Implement O_CLOEXEC.
1015
1016 2007-07-22  Ulrich Drepper  <drepper@redhat.com>
1017
1018         * login/utmp_file.c (setutent_file): Use O_CLOEXEC if possible.
1019
1020         * libio/fileops.c (_IO_new_file_fopen): Recognize 'e' flag and set
1021         O_CLOEXEC is needed.
1022         * nis/nss_compat/compat-grp.c: Use 'e' flag when opening file.
1023         Avoid additional fcntl to set O_CLOEXEC if not needed.
1024         * nis/nss_compat/compat-initgroups.c: Likewise.
1025         * nis/nss_compat/compat-pwd.c: Likewise.
1026         * nis/nss_compat/compat-spwd.c: Likewise.
1027
1028 2007-07-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1029
1030         [BZ #3665]
1031         * manual/errno.texi: Change ECANCELED value to 119.
1032
1033         [BZ #4610]
1034         * mach/lock-intern.h: Include <sys/cdefs.h>.
1035
1036         [BZ #4178]
1037         * sysdeps/mach/hurd/sigaction.c (__sigaction): Check ACT != NULL before
1038         reading A.
1039
1040         [BZ #4126]
1041         * sysdeps/mach/hurd/sigsuspend.c (sigsuspend_not_cancel): Define alias
1042         to __sigsuspend.
1043
1044         * sysdeps/mach/i386/sysdep.h: Include <dl-sysdep.h> and <tls.h>.
1045
1046 2006-06-13  Thomas Schwinge  <tschwinge@gnu.org>
1047
1048         * sysdeps/mach/hurd/tls.h: Change `ASSEMBLER' conditional to
1049         `__ASSEMBLER__'.
1050         * sysdeps/mach/hurd/i386/tls.h: Likewise.
1051
1052 2007-07-21  Ulrich Drepper  <drepper@redhat.com>
1053
1054         * nscd/nscd_helper.c (get_mapping): Use MSG_CMSG_CLOEXEC for
1055         descriptor received from nscd.
1056
1057         * sysdeps/unix/sysv/linux/bits/socket.h: Define MSG_CMSG_CLOEXEC.
1058
1059         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define O_CLOEXEC.
1060         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1061         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1062         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1063         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1064         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1065
1066 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
1067
1068         [BZ #4816]
1069         * manual/signal.texi (Non-atomic Example): Make memory var volatile.
1070
1071         [BZ #4813]
1072         * login/forkpty.c (forkpty): Close master and slave fds on
1073         fork failure.  Patch by
1074         Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>.
1075
1076 2007-07-18  Jakub Jelinek  <jakub@redhat.com>
1077
1078         * include/features.h (__USE_ISOC95): New define.
1079         * wcsmbs/wchar.h (fwprintf, fwscanf, wprintf, wscanf, swprintf,
1080         swscanf, vfwprintf, vwprintf, vswprintf, fwide): Define even
1081         for -std=iso9899:199409.
1082         * CONFORMANCE: Remove comments about unsupported AMD1.
1083
1084 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
1085
1086         * sysdeps/ia64/sched_cpucount.c: New file.
1087         * sysdeps/powerpc/sched_cpucount.c: New file.
1088
1089         * sysdeps/unix/sysv/linux/bits/sched.h (__sched_cpucount): Add
1090         __BEGIN_DECLS/__END_DECLS around the prototype.
1091         * bits/sched.h (__sched_cpucount): Likewise.  Make second argument
1092         pointer to const cpu_set_t.
1093
1094         * bits/types.h: Don't include stddef.h, don't define __need_size_t.
1095         * signal/signal.h <__USE_BSD || __USE_XOPEN_EXTENDED>: Define
1096         __need_size_t and include stddef.h.
1097         * sysvipc/sys/msg.h: Likewise.
1098         * posix/sched.h: Likewise.
1099         * hurd/hurd/signal.h (__need_size_t): Define.
1100
1101         * CONFORMANCE: ctype.h and wctype.h no longer define size_t,
1102         neither does signal.h in pedantic ISO C namespaces.  stdio.h
1103         no longer defines wint_t or wchar_t.
1104
1105         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): New function.
1106         * debug/vfwprintf_chk.c (__vfwprintf_chk): Use
1107         _IO_acquire_lock_clear_flags2 instead of _IO_acquire_lock.
1108         * debug/vprintf_chk.c (__vprintf_chk): Likewise.
1109         * debug/vwprintf_chk.c (__vwprintf_chk): Likewise.
1110         * debug/vfprintf_chk.c (__vfprintf_chk): Likewise.
1111         * debug/fwprintf_chk.c (__fwprintf_chk): Likewise.
1112         * debug/printf_chk.c (__printf_chk): Likewise.
1113         * debug/fprintf_chk.c (__fprintf_chk): Likewise.
1114         * debug/wprintf_chk.c (__wprintf_chk): Likewise.
1115
1116         * sysdeps/pthread/bits/stdio-lock.h (_IO_acquire_lock_clear_flags2):
1117         Define.
1118
1119         * bits/confname.h (_CS_POSIX_V6_WIDTH_RESTRICTED_ENVS): Define.
1120         * posix/getconf.c (vars): Add POSIX_V6_WIDTH_RESTRICTED_ENVS.
1121
1122 2007-07-16  Jakub Jelinek  <jakub@redhat.com>
1123
1124         [BZ #4792]
1125         * stdlib/stdlib.h (realloc): Remove __attribute_malloc__.
1126         * malloc/malloc.h (realloc): Likewise.
1127
1128         * libio/iopopen.c (_IO_new_proc_open): Don't close child_std_end
1129         if one of proc_file_chain streams has that fileno.
1130         * stdio-common/Makefile (tests): Add tst-popen2.
1131         * stdio-common/tst-popen2.c: New test.
1132
1133 2007-07-14  Jakub Jelinek  <jakub@redhat.com>
1134
1135         * elf/ldconfig.c: Allow GPLv2 or any later version.
1136         * elf/readlib.c: Likewise.
1137         * elf/chroot_canon.c: Likewise.
1138         * elf/cache.c: Likewise.
1139         * nscd/mem.c: Likewise.
1140         * nscd/getpwuid_r.c: Likewise.
1141         * nscd/grpcache.c: Likewise.
1142         * nscd/aicache.c: Likewise.
1143         * nscd/getsrvbynm_r.c: Likewise.
1144         * nscd/nscd.c: Likewise.
1145         * nscd/servicescache.c: Likewise.
1146         * nscd/getsrvbypt_r.c: Likewise.
1147         * nscd/initgrcache.c: Likewise.
1148         * nscd/gethstbyad_r.c: Likewise.
1149         * nscd/gethstbynm2_r.c: Likewise.
1150         * nscd/getgrnam_r.c: Likewise.
1151         * nscd/nscd_setup_thread.c: Likewise.
1152         * nscd/getpwnam_r.c: Likewise.
1153         * nscd/gai.c: Likewise.
1154         * nscd/connections.c: Likewise.
1155         * nscd/dbg_log.c: Likewise.
1156         * nscd/cache.c: Likewise.
1157         * nscd/hstcache.c: Likewise.
1158         * nscd/nscd_conf.c: Likewise.
1159         * nscd/getgrgid_r.c: Likewise.
1160         * nscd/pwdcache.c: Likewise.
1161         * catgets/gencat.c: Likewise.
1162         * locale/programs/linereader.h: Likewise.
1163         * locale/programs/locarchive.c: Likewise.
1164         * locale/programs/ld-paper.c: Likewise.
1165         * locale/programs/locfile-kw.h: Likewise.
1166         * locale/programs/ld-address.c: Likewise.
1167         * locale/programs/xmalloc.c: Likewise.
1168         * locale/programs/ld-time.c: Likewise.
1169         * locale/programs/localedef.c: Likewise.
1170         * locale/programs/simple-hash.c: Likewise.
1171         * locale/programs/xstrdup.c: Likewise.
1172         * locale/programs/ld-numeric.c: Likewise.
1173         * locale/programs/locfile-kw.gperf: Likewise.
1174         * locale/programs/ld-collate.c: Likewise.
1175         * locale/programs/charmap-kw.gperf: Likewise.
1176         * locale/programs/charmap.h: Likewise.
1177         * locale/programs/charmap-kw.h: Likewise.
1178         * locale/programs/config.h: Likewise.
1179         * locale/programs/locfile.c: Likewise.
1180         * locale/programs/ld-ctype.c: Likewise.
1181         * locale/programs/charmap.c: Likewise.
1182         * locale/programs/ld-messages.c: Likewise.
1183         * locale/programs/repertoire.h: Likewise.
1184         * locale/programs/locale.c: Likewise.
1185         * locale/programs/ld-name.c: Likewise.
1186         * locale/programs/linereader.c: Likewise.
1187         * locale/programs/locfile.h: Likewise.
1188         * locale/programs/3level.h: Likewise.
1189         * locale/programs/ld-monetary.c: Likewise.
1190         * locale/programs/ld-measurement.c: Likewise.
1191         * locale/programs/charmap-dir.c: Likewise.
1192         * locale/programs/ld-identification.c: Likewise.
1193         * locale/programs/localedef.h: Likewise.
1194         * locale/programs/charmap-dir.h: Likewise.
1195         * locale/programs/repertoire.c: Likewise.
1196         * locale/programs/simple-hash.h: Likewise.
1197         * locale/programs/ld-telephone.c: Likewise.
1198         * locale/programs/locale-spec.c: Likewise.
1199         * locale/programs/locfile-token.h: Likewise.
1200         * posix/getconf.c: Likewise.
1201         * iconv/dummy-repertoire.c: Likewise.
1202         * iconv/iconv_charmap.c: Likewise.
1203         * iconv/iconvconfig.c: Likewise.
1204         * iconv/iconv_prog.c: Likewise.
1205         * malloc/memusagestat.c: Likewise.
1206         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Likewise.
1207
1208 2007-07-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1209
1210         * sysdeps/sh/bsd-setjmp.S (setjmp): Use correct argument registers.
1211         * sysdeps/sh/bsd-_setjmp.S (_setjmp): Likewise.
1212         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Do correct sanity
1213         check for the first argument.
1214
1215 2007-07-12  Jakub Jelinek  <jakub@redhat.com>
1216
1217         [BZ #4775]
1218         * math/tgmath.h (__tgmath_real_type_sub): Formatting.
1219         (__tgmath_real_type): Fix if expr is const int or other const
1220         qualified integral type.
1221         (__TGMATH_UNARY_REAL_ONLY): Rewritten to avoid using statement
1222         expressions and handle const qualified arguments.
1223         (__TGMATH_BINARY_FIRST_REAL_ONLY, __TGMATH_UNARY_REAL_IMAG,
1224         __TGMATH_UNARY_REAL_IMAG_RET_REAL): Likewise.
1225         (__TGMATH_UNARY_REAL_RET_ONLY): Rewritten to avoid using
1226         statement expressions.
1227         (__TGMATH_BINARY_REAL_ONLY, __TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY,
1228         __TGMATH_TERNARY_REAL_ONLY, __TGMATH_BINARY_REAL_IMAG): Likewise.
1229         (__TGMATH_UNARY_IMAG): Define.
1230         (conj, cproj): Use __TGMATH_UNARY_IMAG macro.
1231         * math/Makefile (tests): Add test-tgmath2.
1232         (CFLAGS-test-tgmath2.c): Add.
1233         * math/test-tgmath.c (fy, dy, ly, fz, dz, lz, count_cdouble,
1234         count_cfloat, count_cldouble): New variables.
1235         (NCCALLS): Define.
1236         (main): Check number of complex calls as well.
1237         (F(compile_test)): Add complex tests and tests with const qualified
1238         arguments.
1239         (y, z, ccount): Define.
1240         (F(cacos), F(casin), F(catan), F(ccos), F(csin), F(ctan), F(cacosh),
1241         F(casinh), F(catanh), F(ccosh), F(csinh), F(ctanh), F(cexp), F(clog),
1242         F(csqrt), F(cpow), F(cabs), F(carg), F(creal), F(cimag), F(conj),
1243         F(cproj)): New functions.
1244         * math/test-tgmath2.c: New test.
1245
1246 2007-07-11  Jakub Jelinek  <jakub@redhat.com>
1247
1248         [BZ #4776]
1249         * elf/dl-load.c (_dl_rtld_di_serinfo): Output / in LD_LIBRARY_PATH,
1250         RPATH etc. as "/" rather than "", don't segfault on empty paths,
1251         instead output ".".
1252         * dlfcn/Makefile (distribute): Add glreflib3.c.
1253         (module-names): Add glreflib3.
1254         ($(objpfx)tst-dlinfo.out): Depend on glreflib3.so rather than
1255         glreflib1.so.
1256         (LDFLAGS_glreflib3.so): New.
1257         * dlfcn/tst-dlinfo.c (do_test): Load glreflib3.so instead of
1258         glreflib1.so.
1259         * dlfcn/glreflib3.c: New file.
1260
1261         * intl/finddomain.c (_nl_find_domain): If _nl_explode_name
1262         returned -1, return NULL.
1263         * intl/explodename.c (_nl_explode_name): Return -1 if
1264         _nl_normalize_codeset failed.
1265
1266 2007-07-07  Steven Munroe  <sjmunroe@us.ibm.com>
1267
1268         * sysdeps/powerpc/powerpc32/power6/memset.S: Update comments.
1269         Specify .machine power6 to get ISA-V2.0 branch hints.  Unroll loops
1270         and avoid branch misspredicts for > 31 bytes memset case.
1271         * sysdeps/powerpc/powerpc64/power6/memset.S: Likewise.
1272         Remove toc ref to __cache_line_size.
1273
1274         * sysdeps/powerpc/powerpc32/power4/memcmp.S: Specify .machine power4
1275         to get ISA-V2.0 branch hints.
1276         * sysdeps/powerpc/powerpc32/power4/memcpy.S: Likewise
1277         * sysdeps/powerpc/powerpc32/power4/memset.S: Likewise
1278         * sysdeps/powerpc/powerpc32/power6/memcpy.S: Likewise.
1279         * sysdeps/powerpc/powerpc64/power4/memcmp.S: Likewise.
1280         * sysdeps/powerpc/powerpc64/power4/memcpy.S: Likewise.
1281         * sysdeps/powerpc/powerpc64/power4/memset.S: Likewise.
1282         Remove toc ref to __cache_line_size.
1283
1284         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S:
1285         Include math_ldbl_opt.h.
1286
1287 2007-07-10  Ulrich Drepper  <drepper@redhat.com>
1288
1289         [BZ #4773]
1290         * time/strptime_l.c (__strptime_internal): Implement greedy
1291         matching of weekday and month names.
1292
1293 2007-07-09  Roland McGrath  <roland@redhat.com>
1294
1295         * elf/elf.h (NT_GNU_ABI_TAG): New macro.
1296         (ELF_NOTE_ABI): Use it.
1297         (NT_GNU_HWCAP, NT_GNU_BUILD_ID): New macros.
1298
1299 2007-07-09  Ulrich Drepper  <drepper@redhat.com>
1300
1301         * sysdeps/x86_64/cacheinfo.c (intel_02_known): Add new entries.
1302         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
1303
1304 2007-07-07  Ulrich Drepper  <drepper@redhat.com>
1305
1306         [BZ #4745]
1307         * stdio-common/vfscanf.c (_IO_vfscanf): Add additional test for EOF
1308         in loop to look for conversion specifier to avoid testing of
1309         wrong errno value.
1310         * stdio-common/Makefile (tests): Add bug18, bug18a, bug19, bug19a.
1311         * stdio-common/bug18.c: New file.
1312         * stdio-common/bug18a.c: New file.
1313         * stdio-common/bug19.c: New file.
1314         * stdio-common/bug19a.c: New file.
1315
1316 2007-07-05  Mike Frysinger  <vapier@gentoo.org>
1317
1318         * Makeconfig ($(common-objpfx)gnu/lib-names.stmp): Use LC_ALL=C when
1319         running awk script.
1320
1321 2007-07-01  Jakub Jelinek  <jakub@redhat.com>
1322
1323         * elf/dl-sysdep.c (_dl_important_hwcaps): Add integer overflow check.
1324         * elf/dl-minimal.c (__libc_memalign): Likewise.  Handle malloc (0).
1325         Return NULL if mmap failed instead of asserting it does not.
1326         (calloc): Check for integer overflow.
1327
1328         * elf/dl-minimal.c (__strtoul_internal): Fix parsing of numbers bigger
1329         than LONG_MAX / 10.
1330
1331 2007-07-03  Jakub Jelinek  <jakub@redhat.com>
1332
1333         [BZ #4702]
1334         * nis/nss-default.c: Include errno.h.
1335         (init): Preserve errno.
1336
1337 2007-07-02  Ulrich Drepper  <drepper@redhat.com>
1338
1339         * sysdeps/unix/sysv/linux/bits/socket.h (PF_UNIX): Update comment.
1340
1341 2007-06-30  Ulrich Drepper  <drepper@redhat.com>
1342
1343         * sysdeps/unix/sysv/linux/bits/socket.h: Add PF_RXRPC and AF_RXRPC.
1344
1345 2007-06-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1346
1347         * sysdeps/unix/sysv/linux/bits/socket.h: Add PF_IUCV and AF_IUCV.
1348
1349 2007-06-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1350
1351         * sysdeps/s390/dl-procinfo.c: New file.
1352         * sysdeps/s390/dl-procinfo.h: New file.
1353         * sysdeps/unix/sysv/linux/s390/dl-procinfo.h: New file.
1354
1355 2007-06-29  Jakub Jelinek  <jakub@redhat.com>
1356
1357         * elf/dl-load.c (open_verify): Find .note.ABI-tag notes even
1358         in PT_NOTE segments with multiple notes.
1359         * elf/readelflib.c (process_elf_file): Likewise.
1360
1361 2007-06-22  Ulrich Drepper  <drepper@redhat.com>
1362
1363         * nis/nis_domain_of.c (__nis_domain_of): Make the code a bit more
1364         ISO C compliant.
1365
1366 2007-06-19  Ulrich Drepper  <drepper@redhat.com>
1367
1368         * elf/dl-close.c (free_mem): Free _dl_scope_free_list.
1369
1370 2007-06-13  Jakub Jelinek  <jakub@redhat.com>
1371
1372         * include/link.h: Don't include rtld-lowlevel.h.
1373         (struct link_map): Remove l_scope_lock.
1374         * sysdeps/generic/ldsodefs.h: Don't include rtld-lowlevel.h.
1375         (_dl_scope_free_list): New field (variable) in _rtld_global.
1376         (DL_LOOKUP_SCOPE_LOCK): Remove.
1377         (_dl_scope_free): New prototype.
1378         * elf/dl-runtime.c (_dl_fixup): Don't use __rtld_mrlock_*lock.
1379         Don't pass DL_LOOKUP_SCOPE_LOCK to _dl_lookup_symbol_x.
1380         (_dl_profile_fixup): Likewise.
1381         * elf/dl-sym.c (do_sym): Likewise.  Use wrapped _dl_lookup_symbol_x
1382         whenever !RTLD_SINGLE_THREAD_P, use THREAD_GSCOPE_SET_FLAG and
1383         THREAD_GSCOPE_RESET_FLAG around it.
1384         * elf/dl-close.c (_dl_close_worker): Don't use
1385         __rtld_mrlock_{change,done}.  Call _dl_scope_free on the old
1386         scope.  Make sure THREAD_GSCOPE_WAIT () happens if any old
1387         scopes were queued or if l_scope_mem has been abandoned.
1388         * elf/dl-open.c (_dl_scope_free): New function.
1389         (dl_open_worker): Use it.  Don't use __rtld_mrlock_{change,done}.
1390         * elf/dl-support.c (_dl_scope_free_list): New variable.
1391         * elf/dl-lookup.c (add_dependency): Remove flags argument.
1392         Remove DL_LOOKUP_SCOPE_LOCK handling.
1393         (_dl_lookup_symbol_x): Adjust caller.  Remove DL_LOOKUP_SCOPE_LOCK
1394         handling.
1395         * elf/dl-object.c (_dl_new_object): Don't use
1396         __rtld_mrlock_initialize.
1397
1398 2007-06-19  Ulrich Drepper  <drepper@redhat.com>
1399
1400         * sysdeps/generic/ldsodefs.h (rtld_global): Reorder some elements
1401         to fill in holes
1402         (rtld_global_ro): Likewise.
1403
1404 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
1405
1406         * elf/dl-addr.c (_dl_addr): Skip PT_LOAD checking if l_contiguous.
1407         Move PT_LOAD checking to...
1408         (_dl_addr_inside_object): ... here, new function.
1409         * elf/dl-sym.c (do_sym): If not l_contiguous,
1410         call _dl_addr_inside_object.
1411         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise.
1412         * dlfcn/dlinfo.c (dlinfo_doit): Likewise.
1413         * elf/dl-open.c (dl_open_worker): Likewise.
1414         (_dl_addr_inside_object): New function if IS_IN_rtld.
1415         * elf/dl-load.c (_dl_map_object_from_fd): Set l_contiguous if no
1416         holes are present or are PROT_NONE protected.
1417         * include/link.h (struct link_map): Add l_contiguous field.
1418         * sysdeps/generic/ldsodefs.h (_dl_addr_inside_object): New prototype.
1419
1420 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
1421             Tomas Janousek  <tjanouse@redhat.com>
1422             Ulrich Drepper  <drepper@redhat.com>
1423
1424         [BZ #4647]
1425         * resolv/res_send.c (send_dg): Remove socket_pf.  Use ipv6_unavail
1426         member in __res_state, only convaddr4to6 if nssocks[ns] is a PF_INET6
1427         socket.
1428         * resolv/resolv.h (__res_state): Add ipv6_unavail member.  Make
1429         unused member a bitmap.
1430         * resolv/res_init.c (__res_vinit): Reset ipv6_unavail if IPv6
1431         servers are configured.
1432
1433 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
1434
1435         * elf/rtld.c (dl_main): Don't call init_tls more than once.
1436
1437 2007-06-17  Andreas Schwab  <schwab@suse.de>
1438
1439         * sysdeps/generic/initfini.c: Tell gcc about the nonstandard sections.
1440
1441 2007-06-16  Andreas Jaeger  <aj@suse.de>
1442
1443         [BZ #4125]
1444         * sysdeps/unix/sysv/linux/sys/ptrace.h
1445         (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK,
1446         PTRACE_O_TRACEVFORK, PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC,
1447         PTRACE_O_TRACEVFORKDONE, PTRACE_O_TRACEEXIT, PTRACE_O_MASK,
1448         PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK, PTRACE_EVENT_CLONE,
1449         PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE, PTRACE_EVENT_EXIT):
1450         Define.
1451         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise.
1452         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise.
1453         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise.
1454         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise.
1455
1456 2007-06-16  Ulrich Drepper  <drepper@redhat.com>
1457
1458         [BZ #4599]
1459         * sysdeps/unix/sysv/linux/check_pf.c (make_request): When
1460         determining whether there are IPv4/IPv6 addresses, ignore loopback
1461         addresses.
1462
1463 2007-06-14 Uros Bizjak <ubizjak@gmail.com>
1464
1465         * soft-fp/soft-fp.h (CMPtype): Define to "int" if undefined.
1466         * soft-fp/eqdf2.c (__eqdf2): Use CMPtype instead of int
1467         as the return type.  Change type of "r" variable to CMPtype.
1468         * soft-fp/eqsf2.c (__eqsf2): Likewise.
1469         * soft-fp/eqtf2.c (__eqtf2): Likewise.
1470         * soft-fp/gedf2.c (__gedf2): Likewise.
1471         * soft-fp/gesf2.c (__gesf2): Likewise.
1472         * soft-fp/getf2.c (__getf2): Likewise.
1473         * soft-fp/ledf2.c (__ledf2): Likewise.
1474         * soft-fp/lesf2.c (__lesf2): Likewise.
1475         * soft-fp/letf2.c (__letf2): Likewise.
1476         * soft-fp/unorddf2 (__unorddf2): Likewise.
1477         * soft-fp/unordsf2 (__unordsf2): Likewise.
1478         * soft-fp/unordtf2 (__unordtf2): Likewise.
1479
1480 2007-06-09  Ulrich Drepper  <drepper@redhat.com>
1481
1482         * elf/do-lookup.h (do_lookup_x): Read r_nlist before r_list and
1483         make sure gcc doesn't mess around with this.
1484
1485 2007-06-08  Ulrich Drepper  <drepper@redhat.com>
1486
1487         * elf/dl-lookup.c (_dl_lookup_symbol_x): Remove use of r_nlist.
1488
1489 2007-06-08  Jakub Jelinek  <jakub@redhat.com>
1490
1491         * elf/dl-close.c (_dl_close_worker): Remove all to be removed
1492         libraries from the global scope at once and call THREAD_GSCOPE_WAIT
1493         at most once per _dl_close_worker.
1494
1495 2007-06-08  Ulrich Drepper  <drepper@redhat.com>
1496
1497         * sysdeps/unix/sysv/linux/bits/sched.h: Make second parameter of
1498         __sched_cpucount as const.
1499         * posix/sched_cpucount.c: Adjust.
1500
1501         * posix/sched_cpucount.c (__sched_cpucount): Allow using special
1502         instruction for counting bits.
1503         * sysdeps/x86_64/sched_cpucount.c: New file.
1504
1505 2007-06-07  Ulrich Drepper  <drepper@redhat.com>
1506
1507         * configure.in: Avoid variable named BASH.
1508         * config.make.in: Likewise.
1509         Patch in part by Mike Frysinger.
1510
1511 2007-06-06  Jakub Jelinek  <jakub@redhat.com>
1512
1513         [BZ #4586]
1514         * sysdeps/i386/ldbl2mpn.c (__mpn_extract_long_double): Treat
1515         pseudo-zeros as zero.
1516         * sysdeps/x86_64/ldbl2mpn.c: New file.
1517         * sysdeps/ia64/ldbl2mpn.c: New file.
1518
1519 2007-06-04  Jakub Jelinek  <jakub@redhat.com>
1520
1521         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Remove
1522         unused ily variable.  Fix nextafterl on +-__LDBL_MAX__ and +-Inf.
1523         Remove unreachable code at the end.
1524
1525 2007-06-01  Steven Munroe  <sjmunroe@us.ibm.com>
1526
1527         * sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c: Correct description of
1528         ldbl-128ibm in comment.
1529         (fpclassifyl): Correct classification of denormals.
1530         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Correct
1531         return value for MIN denormal. Rewrite using long double math too
1532         correctly handle denormals and canonicalize the results.
1533
1534 2007-06-05  Jakub Jelinek  <jakub@redhat.com>
1535
1536         * sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
1537         (__mpn_construct_long_double): Fix conversion where result ought
1538         to be smaller than __LDBL_MIN__, or the low double should be
1539         denormal.  Fix decision where to negate low double - honor round
1540         to even rules.
1541         * stdio-common/tst-sprintf2.c: Include string.h.
1542         (COMPARE_LDBL): Define.
1543         (TEST): Also test whether a string hexadecimal float representation
1544         can be parsed back to the number.
1545         (main): Add a couple of further tests.
1546
1547 2007-06-04  Jakub Jelinek  <jakub@redhat.com>
1548
1549         * sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
1550         (PRINT_FPHEX_LONG_DOUBLE): Fix printing numbers where lower double
1551         is non-zero, but smaller than 2 * __DBL_MIN__.
1552         * stdio-common/tst-sprintf2.c: New test.
1553         * stdio-common/Makefile (tests): Add tst-sprintf2.
1554
1555         * math/test-misc.c (main): Don't run last batch of tests with
1556         IBM long double format.
1557
1558 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
1559
1560         * sysdeps/powerpc/powerpc32/970/fpu/Implies: New file.
1561         * sysdeps/powerpc/powerpc32/power5/fpu/Implies: New file.
1562         * sysdeps/powerpc/powerpc32/power5+/fpu/Implies: New file.
1563         * sysdeps/powerpc/powerpc32/power6/fpu/Implies: New file.
1564         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
1565         * sysdeps/powerpc/powerpc64/970/fpu/Implies: New file.
1566         * sysdeps/powerpc/powerpc64/power5/fpu/Implies: New file.
1567         * sysdeps/powerpc/powerpc64/power5+/fpu/Implies: New file.
1568         * sysdeps/powerpc/powerpc64/power6/fpu/Implies: New file.
1569         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
1570         * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/fpu/Implies: New file.
1571         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/fpu/Implies:
1572         New file.
1573         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/fpu/Implies:
1574         New file.
1575         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/fpu/Implies:
1576         New file.
1577         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/Implies:
1578         New file.
1579         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/fpu/Implies:
1580         New file.
1581         * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/fpu/Implies: New file.
1582         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/fpu/Implies:
1583         New file.
1584         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/fpu/Implies:
1585         New file.
1586         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/fpu/Implies:
1587         New file.
1588         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/Implies:
1589         New file.
1590         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/fpu/Implies:
1591         New file.
1592
1593 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
1594
1595         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: Move.
1596         * sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S: To here.
1597         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: Move.
1598         * sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S: To here.
1599         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: Move.
1600         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: To here.
1601         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: Move.
1602         * sysdeps/powerpc/powerpc32/power4/fpu/s_llroundf.S: To here.
1603
1604 2007-05-22  Steven Munroe  <sjmunroe@us.ibm.com>
1605
1606         * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S
1607         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
1608         * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S
1609         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
1610         * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S
1611         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
1612         * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S
1613         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
1614
1615 2007-05-21  Steven Munroe  <sjmunroe@us.ibm.com>
1616
1617         * sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c: New file.
1618         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: New file.
1619         * sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c: New file.
1620         * sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c: New file.
1621
1622 2007-03-15  Steven Munroe  <sjmunroe@us.ibm.com>
1623
1624         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S
1625         [LONG_DOUBLE_COMPAT]: Add compat_symbol for llrintl@@GLIBC_2_1.
1626
1627 2006-02-13  Steven Munroe  <sjmunroe@us.ibm.com>
1628
1629         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S: New File
1630         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S: New File
1631         * sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S: New File
1632         * sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: New File
1633
1634 2006-10-20  Steven Munroe  <sjmunroe@us.ibm.com>
1635
1636         * sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c: New file.
1637         * sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c: New file.
1638
1639 2006-10-03  Steven Munroe  <sjmunroe@us.ibm.com>
1640
1641         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: New file.
1642         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: New file.
1643
1644         * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: Moved.
1645         * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: Likewise.
1646         * sysdeps/powerpc/powerpc32/power4/fpu/Makefile: To here.
1647         * sysdeps/powerpc/powerpc32/power4/fpu/mpa.c: Likewise.
1648
1649 2006-09-29  Steven Munroe  <sjmunroe@us.ibm.com>
1650
1651         * sysdeps/powerpc/powerpc32/power6x/fpu/s_lrint.S: New file.
1652         * sysdeps/powerpc/powerpc32/power6x/fpu/s_lround.S: New file.
1653         * sysdeps/powerpc/powerpc64/power6x/fpu/s_llrint.S: New file.
1654         * sysdeps/powerpc/powerpc64/power6x/fpu/s_llround.S: New file.
1655
1656 2006-09-28  Steven Munroe  <sjmunroe@us.ibm.com>
1657
1658         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S: New file.
1659         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: New file.
1660         * sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S: New file.
1661         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
1662         * sysdeps/powerpc/powerpc64/power5+/fpu/s_llround.S: New file.
1663         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
1664
1665 2006-08-31  Steven Munroe  <sjmunroe@us.ibm.com>
1666
1667         * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: New file.
1668         * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: New file.
1669         * sysdeps/powerpc/powerpc64/power4/fpu/Makefile: New file.
1670         * sysdeps/powerpc/powerpc64/power4/fpu/mpa.c: New file.
1671
1672 2006-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
1673
1674         * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceil.S: New file.
1675         * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceilf.S: New file.
1676         * sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S: New file.
1677         * sysdeps/powerpc/powerpc32/power5+/fpu/s_floorf.S: New file.
1678         * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S: New file.
1679         * sysdeps/powerpc/powerpc32/power5+/fpu/s_roundf.S: New file.
1680         * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S: New file.
1681         * sysdeps/powerpc/powerpc32/power5+/fpu/s_truncf.S: New file.
1682         * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S: New file.
1683         * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceilf.S: New file.
1684         * sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S: New file.
1685         * sysdeps/powerpc/powerpc64/power5+/fpu/s_floorf.S: New file.
1686         * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S: New file.
1687         * sysdeps/powerpc/powerpc64/power5+/fpu/s_roundf.S: New file.
1688         * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S: New file.
1689         * sysdeps/powerpc/powerpc64/power5+/fpu/s_truncf.S: New file.
1690
1691 2006-03-20  Steven Munroe  <sjmunroe@us.ibm.com>
1692
1693         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: New file.
1694         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: New file.
1695
1696 2007-06-01  Steven Munroe  <sjmunroe@us.ibm.com>
1697
1698         * sysdeps/powerpc/powerpc32/power6/memset.S: New file.
1699         * sysdeps/powerpc/powerpc64/power6/memset.S: New file.
1700
1701 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
1702
1703         * sysdeps/powerpc/powerpc32/970/Implies: New file.
1704         * sysdeps/powerpc/powerpc32/power5/Implies: New file.
1705         * sysdeps/powerpc/powerpc32/power5+/Implies: New file.
1706         * sysdeps/powerpc/powerpc32/power6/Implies: New file.
1707         * sysdeps/powerpc/powerpc32/power6x/Implies: New file.
1708         * sysdeps/powerpc/powerpc64/970/Implies: New file.
1709         * sysdeps/powerpc/powerpc64/power5/Implies: New file.
1710         * sysdeps/powerpc/powerpc64/power5+/Implies: New file.
1711         * sysdeps/powerpc/powerpc64/power6/Implies: New file.
1712         * sysdeps/powerpc/powerpc64/power6x/Implies: New file.
1713
1714 2007-05-21  Steven Munroe  <sjmunroe@us.ibm.com>
1715
1716         * sysdeps/powerpc/powerpc32/power4/memset.S: New file
1717
1718 2007-03-13  Steven Munroe  <sjmunroe@us.ibm.com>
1719
1720         * sysdeps/powerpc/powerpc64/memcpy.S: Improve aligned loop to minimize
1721         branch miss-predicts. Ensure that cache line crossing does not impact
1722         dispatch grouping.
1723
1724 2006-12-13  Steven Munroe  <sjmunroe@us.ibm.com>
1725
1726         * sysdeps/powerpc/powerpc64/power4/memcopy.h: Replace with include
1727         "../../powerpc32/power4/memcopy.h".
1728         * sysdeps/powerpc/powerpc64/power4/wordcopy.c: Replace with include
1729         "../../powerpc32/power4/wordcopy.c".
1730
1731 2006-10-03  Steven Munroe  <sjmunroe@us.ibm.com>
1732
1733         * sysdeps/powerpc/powerpc32/powerpc64/Makefile: Moved.
1734         * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: Likewise.
1735         * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: Likewise.
1736         * sysdeps/powerpc/powerpc32/power4/Makefile: To here.
1737         * sysdeps/powerpc/powerpc32/power4/memcopy.h: Likewise.
1738         * sysdeps/powerpc/powerpc32/power4/wordcopy.c: Likewise.
1739
1740 2006-09-10  Steven Munroe  <sjmunroe@us.ibm.com>
1741
1742         * sysdeps/powerpc/powerpc32/power6/memcpy.S: New file.
1743
1744 2006-08-31  Steven Munroe  <sjmunroe@us.ibm.com>
1745
1746         * sysdeps/powerpc/powerpc32/power6/wordcopy.c: New file.
1747         * sysdeps/powerpc/powerpc32/powerpc64/Makefile: New file.
1748         * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: New file.
1749         * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: New file.
1750         * sysdeps/powerpc/powerpc64/power4/Makefile: New file.
1751         * sysdeps/powerpc/powerpc64/power4/memcopy.h: New file.
1752         * sysdeps/powerpc/powerpc64/power4/wordcopy.c: New file.
1753         * sysdeps/powerpc/powerpc64/power6/wordcopy.c: New file.
1754
1755 2006-07-06  Steven Munroe  <sjmunroe@us.ibm.com>
1756
1757         * sysdeps/powerpc/powerpc64/power6/memcpy.S: New file.
1758
1759 2006-03-20  Steven Munroe  <sjmunroe@us.ibm.com>
1760
1761         * sysdeps/powerpc/powerpc32/power4/memcmp.S: New file.
1762         * sysdeps/powerpc/powerpc32/power4/memcpy.S: New file.
1763         * sysdeps/powerpc/powerpc32/power4/memset.S: New file.
1764         * sysdeps/powerpc/powerpc32/power4/strncmp.S: New file.
1765         * sysdeps/powerpc/powerpc64/power4/memcmp.S: New file.
1766         * sysdeps/powerpc/powerpc64/power4/memcpy.S: New file.
1767         * sysdeps/powerpc/powerpc64/power4/strncmp.S: New file.
1768
1769 2007-05-29  Roland McGrath  <roland@redhat.com>
1770
1771         * po/Makefile (po-sed-cmd): New variable.
1772         (libc.pot.files): Move sed command text in there, avoid \ inside ''.
1773
1774 2007-05-29  Ulrich Drepper  <drepper@redhat.com>
1775
1776         * crypt/md5-crypt.c: Fix comment.
1777
1778         * nscd/nscd_helper.c (get_mapping): Handle short replies instead
1779         of crashing.  When this is the case or if the reply is malformed,
1780         don't try to close the new file descriptor since it does not
1781         exist.
1782         Patch in part by Guillaume Chazarain <guichaz@yahoo.fr>.
1783
1784 2007-05-28  Jakub Jelinek  <jakub@redhat.com>
1785
1786         * sysdeps/unix/sysv/linux/futimes.c (miss_utimensat): Don't define
1787         if __NR_utimensat is not defined.
1788
1789 2007-05-26  Ulrich Drepper  <drepper@redhat.com>
1790
1791         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Include <sysdep.h>.
1792
1793 2007-05-25  Jakub Jelinek  <jakub@redhat.com>
1794
1795         * io/bits/fcntl2.h (__open_2): Add nonnull attribute.
1796         (open): Fix comment typos.  Don't call __open_2 if flags
1797         is a compile time constant without O_CREAT.
1798         (__open64_2): Add nonnull attribute.
1799         (open64): Fix comment typos.  Don't call __open64_2 if flags
1800         is a compile time constant without O_CREAT.
1801         (__openat_2): Add nonnull attribute, fix nonnull attribute
1802         on redirect.
1803         (openat): Fix comment typos.  Don't call __openat_2 if flags
1804         is a compile time constant without O_CREAT.
1805         (__openat64_2): Add nonnull attribute, fix nonnull attribute
1806         on redirect.
1807         (openat64): Fix comment typos.  Don't call __openat64_2 if flags
1808         is a compile time constant without O_CREAT.
1809
1810 2007-05-24  Ulrich Drepper  <drepper@redhat.com>
1811
1812         * Makerules (sysd-rules): Define PTW for ptw-* files.
1813         * Versions: Define GLIBC_2.7 for libc.
1814         * include/stdio.h: Declare __fortify_fail.
1815         * debug/fortify_fail.c: New file.
1816         * debug/Makefile (routines): Add fortify_fail.
1817         * debug/chk_fail.c: Use __fortify_fail.
1818         * debug/stack_chk_fail.c: Likewise.
1819         * io/Versions: Export __open_2, __open64_2, __openat_2, and
1820         __openat64_2 for GLIBC_2.7.
1821         * io/fcntl.h: When compiling with fortification, include bits/fcntl2.h.
1822         * io/open.c: Define *_2 variant of function which checks for O_CREAT
1823         and fails if necessary.
1824         * io/open64.c: Likewise.
1825         * io/openat.c: Likewise.
1826         * io/openat64.c: Likewise.
1827         * sysdeps/unix/sysv/linux/open64.c: Likewise.
1828         * sysdeps/unix/sysv/linux/openat.c: Likewise.
1829         * sysdeps/unix/sysv/linux/openat64.c: Likewise.
1830         * io/bits/fcntl2.h: New file.
1831         * include/fcntl.h: Declare __open_2, __open64_2, __openat_2, and
1832         __openat64_2.
1833         * include/bits/fcntl2.h: New file.
1834         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
1835         Add open_2.
1836         * sysdeps/unix/sysv/linux/open_2.c: New file.
1837
1838 2007-05-21  Ulrich Drepper  <drepper@redhat.com>
1839
1840         * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Pass correct value
1841         as second parameter to handle_intel.
1842
1843         * nscd/aicache.c (addhstaiX): If reported TTL is zero don't cache
1844         the entry.
1845
1846         * sysdeps/unix/sysv/linux/x86_64/sysconf.c: Move cache information
1847         handling to ...
1848         * sysdeps/x86_64/cacheinfo.c: ... here.  New file.
1849         * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add
1850         cacheinfo.
1851         * sysdeps/x86_64/memcpy.S: Complete rewrite.
1852         * sysdeps/x86_64/mempcpy.S: Adjust appropriately.
1853         Patch by Evandro Menezes <evandro.menezes@amd.com>.
1854
1855         * sysdeps/unix/sysv/linux/i386/epoll_pwait.S: New file.
1856
1857 2007-05-21  Jakub Jelinek  <jakub@redhat.com>
1858
1859         [BZ #4525]
1860         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add epoll_pwait.
1861         * sysdeps/unix/sysv/linux/epoll_pwait.c: New file.
1862         * sysdeps/unix/sysv/linux/syscalls.list (epoll_pwait): Remove.
1863
1864         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (epoll_pwait): Declare.
1865
1866         [BZ #4514]
1867         * stdio-common/vfprintf.c (vfprintf): Don't shadow workstart variable,
1868         reinitialize workend at the start of each do_positional format spec
1869         loop, free workstart before do_positional loops.
1870         (printf_unknown): Fix size of work_buffer.
1871         * stdio-common/tst-sprintf.c (main): Add 3 new testcases.
1872
1873         * malloc/hooks.c (MALLOC_STATE_VERSION): Bump.
1874         (public_sET_STATe): If ms->version < 3, put all chunks into
1875         unsorted chunks and clear {fd,bk}_nextsize fields of largebin
1876         chunks.
1877
1878         * malloc/malloc.c [MALLOC_DEBUG]: Revert 2007-05-13 changes.
1879         * malloc/hooks.c: Likewise.
1880         * malloc/arena.c: Likewise.
1881         * malloc/malloc.c (do_check_malloc_state): Don't assert
1882         n_mmaps is not greater than n_mmaps_max.  This removes the need
1883         for the previous change.
1884
1885         * malloc/Makefile (CFLAGS-malloc.c): Revert accidental
1886         2007-05-07 commit.
1887
1888 2007-05-19  Ulrich Drepper  <drepper@redhat.com>
1889
1890         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PRIVATE_FUTEX):
1891         Define for kernel >= 2.6.22.
1892
1893 2007-05-18  Ulrich Drepper  <drepper@redhat.com>
1894
1895         * elf/dl-close.c (_dl_close_worker): When removing object from
1896         global scope, wait for all lookups to finish afterwards.
1897         * elf/dl-open.c (add_to_global): When global scope array must
1898         grow, allocate a new one and free old array only after all
1899         lookups finish.
1900         * elf/dl-runtime.c (_dl_fixup): Protect using global scope.
1901         (_dl_lookup_symbol_x): Likewise.
1902         * elf/dl-support.c: Define _dl_wait_lookup_done.
1903         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add
1904         _dl_wait_lookup_done.
1905
1906         * malloc/malloc.c (do_check_chunk): Correct check for mmaped block
1907         not overlapping with arena.
1908
1909         * malloc/mcheck.c (reallochook): If size==0, free the block.
1910
1911         * rt/tst-shm.c: Use fstat64 instead of fstat.
1912
1913         * sysdeps/unix/sysv/linux/i386/sync_file_range.S: Fix case where
1914         __NR_sync_file_range is not defined.
1915
1916 2007-05-17  Ulrich Drepper  <drepper@redhat.com>
1917
1918         Dummy files to prevent stub versions from being used.
1919         * sysdeps/x86_64/fpu/k_cosl.c: New file.
1920         * sysdeps/x86_64/fpu/k_rem_pio2l.c: New file.
1921         * sysdeps/x86_64/fpu/k_sinl.c: New file.
1922         * sysdeps/x86_64/fpu/k_tanl.c: New file.
1923
1924         * version.h (VERSION): Set to 2.6.90.
1925
1926 2007-05-14  Ulrich Drepper  <drepper@redhat.com>
1927
1928         * version.h (VERSION): Define to 2.6.
1929         * include/features.h (__GLIBC_MINOR__): Define to 6.
1930
1931         * malloc/malloc.c: Use all small bin slots on 64-bit archs.
1932
1933         * malloc/malloc.c (largebin_index): Really have 32 buckets with 64
1934         sizes.
1935
1936 2007-05-13  Ulrich Drepper  <drepper@redhat.com>
1937
1938         * malloc/malloc.c [MALLOC_DEBUG]: Keep track of current maximum
1939         number of mmaps.  n_mmaps_max is the target.
1940         * malloc/hooks.c: Likewise.
1941         * malloc/arena.c: Likewise.
1942
1943 2007-05-12  Andreas Jaeger  <aj@suse.de>
1944
1945         * sysdeps/unix/sysv/linux/tst-getcpu.c: Include <unistd.h> for
1946         getpid.
1947
1948 2007-05-11  Ulrich Drepper  <drepper@redhat.com>
1949
1950         * elf/dl-close.c (_dl_close_worker): Help gcc to optimize by
1951         adding new variables.
1952
1953         * elf/dl-open.c (add_to_global): Introduce variable ns to help gcc
1954         optimize.  Completely extend global scope array before making the
1955         new entries visible.
1956
1957 2007-05-10  Ulrich Drepper  <drepper@redhat.com>
1958
1959         * sysdeps/unix/sysv/linux/tst-getcpu.c: New file.
1960         * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (tests): Add
1961         tst-getcpu.
1962
1963         * include/link.h: Move l_version and l_nversion members around to
1964         fill gaps.
1965
1966         * scripts/check-c++-types.sh: Don't use -fnu89-inline option.
1967
1968         * sysdeps/unix/sysv/linux/sched_setaffinity.c
1969         (__sched_setaffinity_new): If syscall was successful and
1970         RESET_VGETCPU_CACHE is defined, use it before returning.
1971         * sysdeps/unix/sysv/linux/x86_64/sched_setaffinity.c: New file.
1972
1973         * io/sys/stat.h: Make sure struct timespec is defined for
1974         __USE_ATFILE.
1975
1976         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Define UTIME_NOW and
1977         UTIME_OMIT.
1978         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
1979         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
1980         * sysdeps/unix/sysv/linux/alpha/bits/stat.h: Likewise.
1981         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
1982         * sysdeps/unix/sysv/linux/bits/stat.h: Likewise.
1983         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
1984         * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_UTIMENSAT.
1985         * io/sys/stat.h: Declare utimensat, futimens.
1986         * io/utimensat.c: New file.
1987         * io/futimens.c: New file.
1988         * sysdeps/unix/sysv/linux/utimensat.c: New file.
1989         * sysdeps/unix/sysv/linux/futimens.c: New file.
1990         * io/Makefile (routines): Add utimensat, futimens.
1991         * io/Versions: Add utimensat, futimens to GLIBC_2.6.
1992         * sysdeps/unix/sysv/linux/lutimes.c: New file.
1993         * sysdeps/unix/sysv/linux/futimes.c: Use utimensat syscall if
1994         available.
1995
1996         * include/sys/cdefs.h: Redefine __nonnull so that test for
1997         incorrect parameters in the libc code itself are not omitted.
1998
1999 2007-05-09  Jakub Jelinek  <jakub@redhat.com>
2000
2001         * sysdeps/ia64/fpu/fraiseexcpt.c (feraiseexcept): Don't raise overflow
2002         exception in addition to inexact when asked to raise only FE_INEXACT.
2003
2004         [BZ #3427]
2005         * sysdeps/s390/fpu/feholdexcpt.c (feholdexcept): Don't clear exceptions
2006         in *envp.
2007
2008 2007-05-07  Ulrich Drepper  <drepper@redhat.com>
2009
2010         [BZ #4403]
2011         * string/strfry.c (strfry): Make result more random.
2012
2013 2007-05-07  Richard Henderson  <rth@redhat.com>
2014
2015         * sysdeps/alpha/fpu/bits/mathinline.h (__isnanl): Don't define
2016         if __NO_LONG_DOUBLE_MATH.
2017         * sysdeps/unix/sysv/linux/alpha/ioperm.c: If BWX insns not
2018         available in the compiler, add .arch directive to the assembly.
2019
2020 2007-05-07  Jakub Jelinek  <jakub@redhat.com>
2021
2022         * sysdeps/alpha/fpu/s_nearbyint.c (nearbyintl): Fix version on
2023         compat_symbol to GLIBC_2_1.
2024         * sysdeps/alpha/fpu/s_fmin.S (fminl): Likewise.
2025         * sysdeps/alpha/fpu/s_trunc.c (truncl): Likewise.
2026         * sysdeps/alpha/fpu/s_fmax.S (fmaxl): Likewise.
2027         * sysdeps/alpha/fpu/s_lrint.c (lrintl, llrintl): Likewise.
2028         * sysdeps/alpha/fpu/s_lround.c (lroundl, llroundl): Likewise.
2029         * sysdeps/alpha/fpu/s_round.c (roundl): Likewise.
2030         * sysdeps/alpha/fpu/s_isnan.c (isnanl): Provide compat_symbol in
2031         libc, not libm.
2032         (__isnanl): New compat_symbol.
2033
2034 2007-05-07  Ulrich Drepper  <drepper@redhat.com>
2035             Jakub Jelinek  <jakub@redhat.com>
2036
2037         * malloc/arena.c (heap_info): Add mprotect_size field, adjust pad.
2038         (new_heap): Initialize mprotect_size.
2039         (grow_heap): When growing, only mprotect from mprotect_size till
2040         new_size if mprotect_size is smaller.  When shrinking, use PROT_NONE
2041         MMAP for __libc_enable_secure only, otherwise use MADV_DONTNEED.
2042
2043 2007-04-30  Steven Munroe  <sjmunroe@us.ibm.com>
2044             Peter Bergner  <bergner@us.ibm.com>
2045
2046         * sysdeps/powerpc/bits/fenv.h: Declare __fe_mask_env extern.
2047         Define FE_NOMASK_ENV as FE_EANBLED_ENV.  Define FE_MASK_ENV.
2048         * sysdeps/powerpc/fpu/Makefile: Add fe_mask to libm-support.
2049         * sysdeps/powerpc/fpu/fe_mask.c: New file.
2050         * sysdeps/powerpc/fpu/fe_nomask.c: Correct comment.
2051         * sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept):
2052         Call __fe_mask_env() if all FP exceptions disabled.
2053         * sysdeps/powerpc/fpu/feholdexcpt.c (feholdexcept): Copy high 32-bits
2054         from old FPSCR to new fenv to propagate DFP rounding modes.
2055         Call __fe_mask_env() if FP exceptions previously enabled.
2056         * sysdeps/powerpc/fpu/fesetenv.c (fesetenv): Change mask to merge
2057         exceptions from env.  Use __fe_nomask_env() or __fe_mask_env() when
2058         transitioning from all exceptions disabled to any exception enabled
2059         or visa versa.
2060         * sysdeps/powerpc/fpu/feupdateenv.c (__feupdateenv): Change mask to
2061         merge exceptions from env.  Call __fe_nomask_env or __fe_mask_env
2062         when transitioning from all exceptions disabled to any exception
2063         enabled or visa versa.
2064         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Moved to...
2065         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: ...here.
2066         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: Moved to...
2067         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: ...here.
2068         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_mask.c: New file.
2069         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c: New file.
2070
2071 2007-05-06  Ulrich Drepper  <drepper@redhat.com>
2072
2073         [BZ #4465]
2074         * posix/unistd.h: Remove __THROW from fdatasync.
2075
2076 2007-05-06  Mike Frysinger  <vapier@gentoo.org>
2077
2078         [BZ #4465]
2079         * sysdeps/unix/sysv/linux/syscalls.list (fdatasync): Add "C" to args.
2080
2081 2007-05-06  Ulrich Drepper  <drepper@redhat.com>
2082
2083         * stdio-common/vfprintf.c (process_string_arg): Optimize
2084         ridiculous precision in wide char code printing multi-byte string.
2085         Reported by Jim Meyering <jim@meyering.net>.
2086
2087         [BZ #4131]
2088         * elf/dl-addr.c (_dl_addr): Compare address with actual segment
2089         boundaries to work around systems with overlapping binary loading.
2090         Based on a patch by Suzuki <suzuki@in.ibm.com>.
2091
2092 2007-05-04  Ulrich Drepper  <drepper@redhat.com>
2093
2094         * stdio-common/vfprintf.c (process_string_arg): Adjust call to
2095         __mbsnrtowcs after last change.
2096
2097         * locale/programs/linereader.c (get_symname): Fix adding final NUL.
2098         (get_ident): Likewise.
2099
2100 2007-05-03  Jakub Jelinek  <jakub@redhat.com>
2101
2102         * soft-fp/op-common.h (FP_TRUNC): Replace raising of FP_EX_INEXACT
2103         with setting the sticky bit.
2104         * math/test-misc.c (main): Add more truncation tests.
2105
2106 2007-04-14  Uros Bizjak  <ubizjak@gmail.com>
2107
2108         * soft-fp/floatunsidf.c (__floatunsidf): Use DFtype instead of
2109         double in the function declaration.
2110         * soft-fp/floatundidf.c (__floatundidf): Use DFtype instead of
2111         double in the function declaration.
2112         * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
2113         float in the function declaration.
2114         * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
2115         float in the function declaration.
2116
2117         * soft-fp/extended.h (FP_UNPACK_RAW_E): Do not increase X##_e for
2118         denormal operands.  Do not generate FP_EX_DENORM exception.
2119         (FP_UNPACK_RAW_EP): Ditto.
2120         (FP_UNPACK_SEMIRAW_E): Use FP_UNPACK_RAW_E instead of
2121         undefined _FP_UNPACK_RAW_E.
2122         (FP_UNPACK_SEMIRAW_EP): Use FP_UNPACK_RAW_EP instead of
2123         undefined _FP_UNPACK_RAW_EP.
2124         (FP_PACK_SEMIRAW_E): Use FP_PACK_RAW_E instead of
2125         undefined _FP_PACK_RAW_E.
2126         (FP_PACK_SEMIRAW_EP): Use FP_PACK_RAW_EP instead of
2127         undefined _FP_PACK_RAW_EP.
2128
2129         * soft-fp/op-2.h (_FP_FRAC_COPY_2_2): Define as alias to
2130         _FP_FRAC_COPY_2.
2131         * soft-fp/op-4.h (_FP_FRAC_COPY_2_2): Define as alias to
2132         _FP_FRAC_COPY_4.
2133
2134 2007-04-16  Uros Bizjak  <ubizjak@gmail.com>
2135             Jakub Jelinek  <jakub@redhat.com>
2136
2137         * soft-fp/op-common.h (FP_EXTEND): Do not abort when
2138         _FP_EXPBIAS_##dfs == _FP_EXPBIAS_##sfs.  Handle denormals for
2139         this case.
2140         * soft-fp/op-common.h (FP_TRUNC): Ditto.
2141
2142 2007-05-03  Jakub Jelinek  <jakub@redhat.com>
2143
2144         * math/test-misc.c (main): Add tests for rounding long double
2145         values close to smallest double denormalized value to double.
2146
2147 2007-04-30  Joseph Myers  <joseph@codesourcery.com>
2148
2149         * soft-fp/op-common.h (FP_TRUNC): Correct off-by-one error in
2150         condition for truncating to 0.  Set sticky bit for such
2151         truncation.
2152
2153 2007-05-02  Jakub Jelinek  <jakub@redhat.com>
2154
2155         * stdio-common/vfprintf.c (process_string_arg): Use a VLA rather than
2156         fixed length array for ignore.
2157
2158 2007-04-30  Ulrich Drepper  <drepper@redhat.com>
2159
2160         [BZ #4438]
2161         * stdio-common/vfprintf.c (process_string_arg): Don't overflow the
2162         stack for large precisions.
2163         * stdio-common/test-vfprintf.c (main): Add test for large
2164         precision.
2165
2166 2007-04-30  Jakub Jelinek  <jakub@redhat.com>
2167
2168         * stdio-common/printf_fp.c (___printf_fp): Don't print negative sign
2169         for exponent 0.
2170         * stdio-common/tfformat.c (sprint_doubles): Add a new test.
2171
2172         [BZ #4439]
2173         * resolv/inet_ntop.c (inet_ntop4): Take terminating '\0' into
2174         account in the size check.
2175         * resolv/tst-inet_ntop.c: New test.
2176         * resolv/Makefile (tests): Add tst-inet_ntop.
2177
2178 2007-04-30  Ulrich Drepper  <drepper@redhat.com>
2179             Jakub Jelinek  <jakub@redhat.com>
2180
2181         [BZ #4349]
2182         * malloc/malloc.c: Keep separate list for first blocks on the bin
2183         lists with a given size.  This helps skipping over list elements
2184         we know won't fit in two places.
2185         Inspired by a patch by Tomash Brechko <tomash.brechko@gmail.com>.
2186
2187 2007-04-28  Ulrich Drepper  <drepper@redhat.com>
2188
2189         [BZ #4102]
2190         * sysdeps/posix/getaddrinfo.c (default_labels): Assign separate
2191         label to Teredo tunnel addresses 2001://32.
2192
2193 2007-04-27  Ulrich Drepper  <drepper@redhat.com>
2194
2195         * locale/programs/ld-collate.c (collate_read): Allow order_start
2196         after copy.
2197
2198         * locale/programs/ld-collate.c (collate_read): Fix printing of
2199         error message.
2200
2201         [BZ #3213]
2202         * locale/C-translit.h.in: Add entry for U2044.
2203
2204         [BZ #4342]
2205         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Allow
2206         hexa-decimal floats without exponent.
2207         * stdio-common/tstscanf.c (main): Adjust Test 8 test for success.
2208
2209 2007-04-25  Ulrich Drepper  <drepper@redhat.com>
2210
2211         * sysdeps/unix/sysv/linux/bits/sched.h: Declare sched_getcpu.
2212         * sysdeps/unix/sysv/linux/sched_getcpu.c: New file.
2213         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: New file.
2214         * sysdeps/unix/sysv/linux/Versions: Export sched_getcpu for
2215         GLIBC_2.6.
2216         * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (sysdep_routines):
2217         Add sched_getcpu.
2218
2219 2007-04-25  Jakub Jelinek  <jakub@redhat.com>
2220
2221         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Return -1 instead
2222         of 0 after the out_fail label.
2223
2224 2007-04-25  Ulrich Drepper  <drepper@redhat.com>
2225
2226         [BZ #4406]
2227         * iconv/gconv_charset.h (strip): Allow ':'.
2228         * iconv/iconv_open.c (iconv_open): Adjust comment.
2229
2230 2007-04-25  Jakub Jelinek  <jakub@redhat.com>
2231
2232         * libio/bits/stdio.h (fgetc_unlocked): Add extern inline optimized
2233         version.
2234
2235 2007-04-23  Jakub Jelinek  <jakub@redhat.com>
2236
2237         [BZ #4381]
2238         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Ensure sufficient
2239         alignment of buffer and tmp_buffer.
2240         * nis/nss_nis/nis-hosts.c (internal_nis_gethostent_r,
2241         internal_gethostbyname2_r, _nss_nis_gethostbyaddr_r): Ensure sufficient
2242         alignment of buffer.
2243         * resolv/nss_dns/dns-hosts.c (getanswer_r): Likewise.  Handle buflen
2244         bigger than INT_MAX.
2245         * resolv/nss_dns/dns-network.c (getanswer_r): Likewise.  Add errnop and
2246         h_errnop arguments.  Fail if buflen is too small.
2247         (_nss_dns_getnetbyname_r, _nss_dns_getnetbyaddr_r): Adjust callers.
2248
2249 2007-04-23  Jakub Jelinek  <jakub@redhat.com>
2250
2251         [BZ #4405]
2252         * iconvdata/gconv-modules (E13B): Add a missing slash to the alias
2253         name.  Patch by Aurelien Jarno <aurelien@aurel32.net>.
2254
2255 2007-04-22  Roland McGrath  <roland@redhat.com>
2256
2257         * elf/elf.h (NT_PRXFPREG): New macro.
2258
2259 2007-04-19  Andreas Jaeger  <aj@suse.de>
2260
2261         [BZ #3905]
2262         * bits/in.h (IPV6_ROUTER_ALERT, IPV6_MTU_DISCOVER, IPV6_MTU,
2263         IPV6_RECVERR, IPV6_V6ONLY, IPV6_JOIN_ANYCAST, IPV6_LEAVE_ANYCAST):
2264         Added.
2265
2266 2007-04-19  Ulrich Drepper  <drepper@redhat.com>
2267
2268         * include/sys/mman.h: Mark madvise hidden.
2269         * misc/madvise.c: Add libc_hidden_def.
2270
2271 2007-04-06  Jakub Jelinek  <jakub@redhat.com>
2272
2273         * nis/nis_domain_of.c (__nis_domain_of): New function.
2274         * include/rpcsvc/nislib.h (__nis_domain_of): New prototype.
2275         * nis/nis_lookup.c (nis_lookup): Use __nis_domain_of.
2276         * nis/nis_call.c (rec_dirsearch): Likewise.
2277         (first_shoot): Likewise.  Remove search_parent_first argument.
2278         (struct nis_server_cache): Rename search_parent_first field
2279         to search_parent.
2280         (nis_server_cache_search, nis_server_cache_add): Rename
2281         search_parent_first argument to search_parent.
2282         (__nisfind_server): Likewise.  If search_parent, call
2283         __nis_domain_of.
2284
2285 2007-04-18  Ulrich Drepper  <drepper@redhat.com>
2286
2287         * sysdeps/posix/getaddrinfo.c: Remove commented-out code.
2288
2289 2007-04-17  Ulrich Drepper  <drepper@redhat.com>
2290
2291         [BZ #4368]
2292         * stdlib/stdlib.h: Remove obsolete part of comment for realpath.
2293
2294 2007-04-16  Ulrich Drepper  <drepper@redhat.com>
2295
2296         [BZ #4364]
2297         * posix/unistd.h (_XOPEN_VERSION): Define appropriately for SUSv3.
2298
2299 2007-04-15  Jakub Jelinek  <jakub@redhat.com>
2300
2301         * locale/programs/locarchive.c (INITIAL_NUM_NAMES,
2302         INITIAL_SIZE_STRINGS, INITIAL_NUM_LOCREC): Update to accomodate
2303         current number of locales in SUPPORTED.
2304         (create_archive): Initialize serial.
2305         (enlarge_archive): Preserve aliases rather than duplicating
2306         their locrecs.
2307
2308 2007-04-13  Jakub Jelinek  <jakub@redhat.com>
2309
2310         * libio/genops.c (_IO_default_finish): Call _IO_lock_fini
2311         after _IO_un_link, not before it.
2312
2313         * stdio-common/printf_fp.c (___printf_fp): Fix exponent -4
2314         special case handling when wcp == wstartp + 1.  Fix a comment typo.
2315         * stdio-common/tfformat.c (sprint_doubles): Add a new testcase.
2316
2317 2007-03-30  Jakub Jelinek  <jakub@redhat.com>
2318
2319         * libio/libio.h (__underflow, __uflow, __overflow, __wunderflow,
2320         __wuflow, __woverflow, _IO_getc, _IO_putc, _IO_peekc_locked, _IO_padn,
2321         _IO_sgetn, _IO_seekoff, _IO_seekpos, _IO_getwc, _IO_putwc, _IO_wpadn):
2322         Remove __THROW.
2323         * libio/fileops.c (new_do_write, _IO_file_xsgetn_mmap,
2324         _IO_file_xsgetn_maybe_mmap): Likewise.
2325         * libio/oldfileops.c (old_do_write): Likewise.
2326         * libio/libioP.h (_IO_switch_to_get_mode, _IO_switch_to_wget_mode,
2327         _IO_init_marker, _IO_init_wmarker, _IO_default_uflow,
2328         _IO_wdefault_uflow, _IO_default_setbuf, _IO_default_seekpos,
2329         _IO_do_write, _IO_new_do_write, _IO_old_do_write, _IO_wdo_write,
2330         _IO_flush_all_lockp, _IO_flush_all, _IO_cleanup,
2331         _IO_flush_all_linebuffered, _IO_new_fgetpos, _IO_old_fgetpos,
2332         _IO_new_fsetpos, _IO_old_fsetpos, _IO_new_fgetpos64,
2333         _IO_old_fgetpos64, _IO_new_fsetpos64, _IO_old_fsetpos64,
2334         _IO_file_setbuf, _IO_file_seekoff, _IO_file_xsputn, _IO_file_xsgetn,
2335         _IO_file_underflow, _IO_file_underflow_mmap,
2336         _IO_file_underflow_maybe_mmap, _IO_file_overflow, _IO_file_attach,
2337         _IO_file_open, _IO_file_fopen, _IO_file_write, _IO_file_read,
2338         _IO_file_sync, _IO_file_close_it, _IO_file_finish,
2339         _IO_new_file_attach, _IO_new_file_close_it, _IO_new_file_finish,
2340         _IO_new_file_fopen, _IO_new_file_setbuf, _IO_file_setbuf_mmap,
2341         _IO_new_file_sync, _IO_new_file_underflow, _IO_new_file_overflow,
2342         _IO_new_file_seekoff, _IO_new_file_write, _IO_new_file_xsputn,
2343         _IO_old_file_setbuf, _IO_old_file_seekoff, _IO_old_file_xsputn,
2344         _IO_old_file_underflow, _IO_old_file_overflow, _IO_old_file_attach,
2345         _IO_old_file_fopen, _IO_old_file_write, _IO_old_file_sync,
2346         _IO_old_file_close_it, _IO_old_file_finish, _IO_wfile_xsputn,
2347         _IO_wfile_setbuf, _IO_wfile_sync, _IO_wfile_underflow,
2348         _IO_wfile_overflow, _IO_wfile_seekoff, _IO_old_proc_open,
2349         _IO_old_proc_close, _IO_getdelim, _IO_flush_all_internal,
2350         _IO_adjust_column_internal, _IO_default_uflow_internal,
2351         _IO_default_xsgetn_internal, _IO_wdefault_xsputn_internal,
2352         _IO_wdefault_xsgetn_internal, _IO_wdefault_uflow_internal,
2353         _IO_file_setbuf_internal, _IO_file_seekoff_internal,
2354         _IO_file_xsputn_internal, _IO_file_xsgetn_internal,
2355         _IO_file_close_it_internal, _IO_file_underflow_internal,
2356         _IO_file_overflow_internal, _IO_file_attach_internal,
2357         _IO_file_fopen_internal, _IO_file_sync_internal,
2358         _IO_file_finish_internal, _IO_wfile_xsputn_internal,
2359         _IO_wfile_seekoff_internal, _IO_wfile_sync_internal,
2360         _IO_switch_to_wget_mode_internal, _IO_padn_internal,
2361         _IO_switch_to_get_mode_internal, _IO_seekoff_unlocked,
2362         _IO_seekpos_unlocked): Likewise.
2363         (_IO_strtod, _IO_dtoa, _IO_outfloat, _IO_read, _IO_write,
2364         _IO_lseek, _IO_close, _IO_fstat): Remove unused prototypes.
2365
2366 2007-04-16  Jakub Jelinek  <jakub@redhat.com>
2367
2368         * locale/programs/locarchive.c (show_archive_content): Fix sizeof
2369         argument in xmalloc size computation.
2370
2371 2007-04-01  Jakub Jelinek  <jakub@redhat.com>
2372
2373         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (__nextafterl): Use
2374         math_opt_barrier and math_force_eval macros.
2375
2376 2007-03-27  Jakub Jelinek  <jakub@redhat.com>
2377
2378         [BZ #3306]
2379         * math/math_private.h (math_opt_barrier, math_force_eval): Define.
2380         * sysdeps/i386/fpu/math_private.h: New file.
2381         * sysdeps/x86_64/fpu/math_private.h: New file.
2382         * math/s_nexttowardf.c (__nexttowardf): Use math_opt_barrier and
2383         math_force_eval macros.  Use "+m" constraint on asm rather than
2384         "=m" and "m".
2385         * math/s_nextafter.c (__nextafter): Likewise.
2386         * sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c (__nexttoward):
2387         Likewise.
2388         * sysdeps/ieee754/flt-32/s_nextafterf.c (__nextafterf): Likewise.
2389         * sysdeps/ieee754/ldbl-128/s_nexttoward.c (__nexttoward): Likewise.
2390         * sysdeps/ieee754/ldbl-96/s_nexttoward.c (__nexttoward): Likewise.
2391         * sysdeps/i386/fpu/s_nextafterl.c (__nextafterl): Use
2392         math_opt_barrier and math_force_eval macros.
2393         * sysdeps/ieee754/ldbl-128/s_nextafterl.c (__nextafterl): Likewise.
2394         * sysdeps/ieee754/ldbl-96/s_nextafterl.c (__nextafterl): Likewise.
2395         * sysdeps/i386/fpu/s_nexttoward.c: Include float.h.
2396         (__nexttoward): Use math_opt_barrier and
2397         math_force_eval macros.  Use "+m" constraint on asm rather than
2398         "=m" and "m".  Only use asm to force double result if
2399         FLT_EVAL_METHOD is 2.
2400         * sysdeps/i386/fpu/s_nexttowardf.c: Include float.h.
2401         (__nexttowardf): Use math_opt_barrier and
2402         math_force_eval macros.  Use "+m" constraint on asm rather than
2403         "=m" and "m".  Only use asm to force double result if
2404         FLT_EVAL_METHOD is not 0.
2405         * sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c: Include float.h.
2406         (__nexttowardf): Use math_opt_barrier and
2407         math_force_eval macros.  If FLT_EVAL_METHOD is not 0, force
2408         x to float using asm.
2409         * sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c: Include float.h.
2410         (__nldbl_nexttowardf): Use math_opt_barrier and
2411         math_force_eval macros.  If FLT_EVAL_METHOD is not 0, force
2412         x to float using asm.
2413         * sysdeps/ieee754/ldbl-96/s_nexttowardf.c: Include float.h.
2414         (__nexttowardf): Use math_opt_barrier and math_force_eval
2415         macros.  If FLT_EVAL_METHOD is not 0, force x to float using asm.
2416         * math/bug-nextafter.c (zero, inf): New variables.
2417         (main): Add new tests.
2418         * math/bug-nexttoward.c (zero, inf): New variables.
2419         (main): Add new tests.
2420
2421 2007-03-22  Jakub Jelinek  <jakub@redhat.com>
2422
2423         [BZ #3427]
2424         * sysdeps/x86_64/fpu/feholdexcpt.c (feholdexcept): Clear all
2425         exceptions both in SW and MXCSR.
2426         * sysdeps/x86_64/fpu/feupdateenv.c: New file.
2427         * sysdeps/x86_64/fpu/feenablxcpt.c (feenableexcept): Remove dead code.
2428         * sysdeps/x86_64/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
2429         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
2430         in MXCSR if SSE is available.
2431         * sysdeps/i386/fpu/feupdateenv.c: Include unistd.h, dl-procinfo.h
2432         and ldsodefs.h.
2433         (__feupdateenv): Query exceptions also from MXCSR if SSE is available.
2434         Fix comment typo.
2435         * sysdeps/ia64/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions.
2436         Return 0 rather than 1.
2437         * sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Fix comment typo.
2438         Remove incorrect part of a comment.  Fix argument to feraiseexcept.
2439         * math/test-fenv.c (feholdexcept_tests): New function.
2440         (main): Call it.
2441
2442 2007-01-05  Richard B. Kreckel  <kreckel@ginac.de>
2443
2444         [BZ #3427]
2445         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
2446         in SW.
2447
2448 2007-04-13  Jakub Jelinek  <jakub@redhat.com>
2449
2450         [BZ #4344]
2451         * elf/ldconfig.c (search_dir): Fix 2 off-by-2 errors.
2452         Reported by David Anderson <davea42@earthlink.net>.
2453
2454 2007-04-07  Ulrich Drepper  <drepper@redhat.com>
2455
2456         * posix/sys/wait.h: Remove unnecessary forward declaration.
2457
2458 2007-04-05  Jakub Jelinek  <jakub@redhat.com>
2459
2460         * nis/nis_call.c (__nisfind_server): Replace (*dir)->do_servers
2461         with obj->do_servers after first_shoot.
2462
2463 2007-04-03  Ulrich Drepper  <drepper@redhat.com>
2464
2465         * posix/Makefile (routines): Add sched_cpucount.
2466         (tests): Add tst-cpucount.
2467         * posix/sched_cpucount.c: New file.
2468         * posix/tst-cpucount.c: New file.
2469         * posix/Versions: Export __sched_cpucount with version GLIBC_2.6.
2470         * bits/sched.h: Define __CPU_COUNT.  Declare __sched_cpucount.
2471         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
2472         * posix/sched.h: Define CPU_COUNT.
2473
2474 2007-03-27  Jakub Jelinek  <jakub@redhat.com>
2475
2476         * posix/fnmatch.c (STRUCT): Define.
2477         (fnmatch): Pass NULL as last argument to internal_fn{,w}match.
2478         * posix/fnmatch_loop.c (struct STRUCT): New type.
2479         (FCT): Add ends argument.  If ends != NULL and normal * is
2480         seen in the pattern, store current pattern and string pointers
2481         and return.  Adjust recursive calls.
2482         (EXT): Adjust FCT callers.
2483         (STRUCT): Undef at the end of the file.
2484         * posix/Makefile (tests): Add tst-fnmatch2.
2485         * posix/tst-fnmatch2.c: New test.
2486
2487 2007-04-01  Jakub Jelinek  <jakub@redhat.com>
2488
2489         * sysdeps/ia64/fpu/fesetround.c (fesetround): Return 0 on success
2490         and 1 on failure.
2491
2492         * sysdeps/unix/sysv/linux/sync_file_range.c (sync_file_range):
2493         Change last argument to unsigned int.
2494
2495 2007-03-23  Jakub Jelinek  <jakub@redhat.com>
2496
2497         * scripts/check-local-headers.sh: Filter out sys/capability.h.
2498
2499 2007-03-22  Jakub Jelinek  <jakub@redhat.com>
2500
2501         * config.h.in (HAVE_LIBCAP): Add.
2502         * nscd/selinux.h: Include sys/capability.h rather than non-existent
2503         sys/capabilities.h.
2504         * nscd/selinux.c (preserve_capabilities): Use cap_free instead of
2505         free_caps.  Cast away const from 4th cap_set_flag argument.
2506
2507 2007-03-26  Ulrich Drepper  <drepper@redhat.com>
2508
2509         * sysdeps/unix/sysv/linux/Versions: Move sync_file_range to
2510         GLIBC_2.6.
2511         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
2512         Add sync_file_range.
2513         Reported by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
2514
2515 2007-03-19  Steven Munroe  <sjmunroe@us.ibm.com>
2516
2517         * sysdeps/powerpc/bits/atomic.h
2518         [!MUTEX_HINT_ACQ]: Define MUTEX_HINT_ACQ.
2519         [!MUTEX_HINT_REL]: Define MUTEX_HINT_REL.
2520         (__arch_compare_and_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
2521         (__arch_compare_and_exchange_val_32_rel): Add MUTEX_HINT_REL to lwarx.
2522         (__arch_atomic_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
2523         (__arch_atomic_exchange_rel_32_rel): Add MUTEX_HINT_REL to lwarx.
2524         * sysdeps/powerpc/powerpc32/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6X]:
2525         Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
2526         (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
2527         (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
2528         * sysdeps/powerpc/powerpc64/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6D]:
2529         Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
2530         (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
2531         (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
2532         (__arch_compare_and_exchange_bool_64_acq): Add MUTEX_HINT_ACQ to lwarx.
2533         (__arch_compare_and_exchange_bool_64_rel): Add MUTEX_HINT_REL to lwarx.
2534         (__arch_compare_and_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
2535         (__arch_compare_and_exchange_val_64_rel): Add MUTEX_HINT_REL to lwarx.
2536         (__arch_atomic_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
2537         (__arch_atomic_exchange_rel_64_rel): Add MUTEX_HINT_REL to lwarx.
2538
2539 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
2540
2541         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
2542         (__cache_line_size): Define the variable here.  Add
2543         attribute_hidden, remove weak_extern.
2544         (__libc_start_main): Set __cache_line_size
2545         unconditionally.
2546         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
2547         (__cache_line_size): Define the variable here.  Add
2548         attribute_hidden, remove weak_extern.
2549         (DL_PLATFORM_AUXV): Set __cache_line_size
2550         unconditionally.
2551         * sysdeps/powerpc/powerpc32/dl-machine.c (__cache_line_size): Remove
2552         weak_extern, add attribute_hidden.
2553         (__elf_machine_runtime_setup): Assume __cache_line_size is always
2554         defined in ld.so.
2555         * sysdeps/powerpc/powerpc32/memset.S (__cache_line_size): Remove
2556         definition.
2557         * sysdeps/powerpc/powerpc64/memset.S (__cache_line_size): Likewise.
2558
2559 2007-03-26  Jakub Jelinek  <jakub@redhat.com>
2560
2561         [BZ #4276]
2562         * timezone/africa: Update from tzdata2007d.
2563         * timezone/asia: Likewise.
2564         * timezone/australasia: Likewise.
2565         * timezone/backward: Likewise.
2566         * timezone/europe: Likewise.
2567         * timezone/iso3166.tab: Likewise.
2568         * timezone/leapseconds: Likewise.
2569         * timezone/northamerica: Likewise.
2570         * timezone/southamerica: Likewise.
2571         * timezone/zone.tab: Likewise.
2572
2573         * timezone/private.h: Update from tzcode2007d.
2574         * timezone/zdump.c: Likewise.
2575         * timezone/zic.c: Likewise.
2576
2577 2007-03-21  Jakub Jelinek  <jakub@redhat.com>
2578
2579         * nis/nis_call.c: Include bits/libc-lock.h, sys/stat.h, unistd.h.
2580         (nis_server_cache, nis_server_cache_lock, nis_cold_start_mtime): New
2581         variables.
2582         (nis_server_cache_search, nis_server_cache_add): New functions.
2583         (__nisfind_server): Use them.  Add dbp and flags argument, if
2584         call __nisbind_create.
2585         (__nisbind_create): Add server_used and current_ep arguments,
2586         only call __nis_findfastest if server_used is ~0.
2587         (__do_niscall2, __prepare_niscall): Adjust callers.
2588         (ckey_cache, ckey_cache_size, ckey_cache_allocated, ckey_cache_pid,
2589         ckey_cache_euid, ckey_cache_lock): New variables.
2590         (get_ckey): New function.
2591         (__nisbind_connect): If not dbp->use_udp, pass IPPROTO_TCP to
2592         __pmap_getnisport.  Save __pmap_getnisport result in
2593         dbp->addr.sin_port if non-zero.  Use get_ckey to create conversation
2594         key.
2595         * nis/nis_lookup.c (nis_lookup): Likewise.
2596         * nis/nis_table.c (nis_list): Likewise.
2597         * nis/rpcsvc/nislib.h (__nisbind_create, __nisfind_server): Adjust
2598         prototypes.
2599
2600         * nis/nss_nisplus/nisplus-pwd.c (_nss_nisplus_getpwnam_r,
2601         _nss_nisplus_getpwuid_r): Pass USE_DGRAM flag to nis_list.
2602         * nis/nss_nisplus/nisplus-service.c (_nss_nisplus_getservbyname_r,
2603         _nss_nisplus_getservbyport_r): Likewise.
2604         * nis/nss_nisplus/nisplus-network.c (_nss_nisplus_getnetbyname_r,
2605         _nss_nisplus_getnetbyaddr_r): Likewise.
2606         * nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_getspnam_r): Likewise.
2607         * nis/nss_nisplus/nisplus-ethers.c (_nss_nisplus_gethostton_r,
2608         _nss_nisplus_getntohost_r): Likewise.
2609         * nis/nss_nisplus/nisplus-rpc.c (_nss_nisplus_getrpcbyname_r,
2610         _nss_nisplus_getrpcbynumber_r): Likewise.
2611
2612 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
2613
2614         * configure.in (libc_cv_gnu89_inline): Only do compile test.
2615         * configure: Rebuilt.
2616
2617         * soft-fp/double.h (_FP_UNION_D): Use _FP_W_TYPE for frac
2618         bit-fields.
2619         * soft-fp/extended.h (_FP_UNION_E): Likewise.
2620
2621 2006-06-07  Joseph Myers  <joseph@codesourcery.com>
2622
2623         [BZ #2831]
2624         * soft-fp/quad.h (_FP_UNION_Q): Use _FP_W_TYPE for frac
2625         bit-fields.
2626
2627 2007-03-18  Jakub Jelinek  <jakub@redhat.com>
2628
2629         * nscd/gai.c: Include alloca.h.
2630         (__libc_use_alloca): Define.
2631
2632 2007-03-16  Jakub Jelinek  <jakub@redhat.com>
2633
2634         * elf/dl-open.c (dl_open_worker): Declare l in 2 different
2635         smaller scopes.
2636         * elf/dl-dst.h (DL_DST_REQ_STATIC): Add l as macro argument.
2637         (DL_DST_REQUIRED): Adjust user.
2638
2639         * include/dlfcn.h (struct link_map): New forward decl.
2640
2641         * inet/getnameinfo.c: Include stddef.h.
2642         (getnameinfo): Use offsetof.
2643
2644         * time/tst-mktime2.c (do_test): Don't rely on signed wrap.
2645
2646         * stdio-common/vfprintf.c (_itoa): Undef before redefining.
2647
2648         * string/strerror_l.c: Include stdlib.h.
2649
2650         * configure.in (libc_cv_gnu89_inline): Test for -fgnu89-inline.
2651         * config.make.in (gnu89-inline-CFLAGS): New variable.
2652         * Makeconfig (CFLAGS): Use $(gnu89-inline-CFLAGS) together with
2653         -std=gnu99.
2654         * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Define.
2655         * argp/argp.h: Use it.
2656         * bits/mathinline.h: Likewise.
2657         * bits/sigset.h: Likewise.
2658         * bits/string.h: Likewise.
2659         * ctype/ctype.h: Likewise.
2660         * hurd/hurd.h: Likewise.
2661         * hurd/hurd/fd.h: Likewise.
2662         * hurd/hurd/port.h: Likewise.
2663         * hurd/hurd/signal.h: Likewise.
2664         * hurd/hurd/threadvar.h: Likewise.
2665         * hurd/hurd/userlink.h: Likewise.
2666         * io/sys/stat.h: Likewise.
2667         * libio/bits/stdio.h: Likewise.
2668         * libio/bits/stdio2.h: Likewise.
2669         * mach/lock-intern.h: Likewise.
2670         * mach/mach/mig_support.h: Likewise.
2671         * math/bits/cmathcalls.h: Likewise.
2672         * posix/bits/unistd.h: Likewise.
2673         * socket/bits/socket2.h: Likewise.
2674         * stdlib/bits/stdlib.h: Likewise.
2675         * stdlib/stdlib.h: Likewise.
2676         * string/argz.h: Likewise.
2677         * string/bits/string2.h: Likewise.
2678         * string/bits/string3.h: Likewise.
2679         * sysdeps/alpha/fpu/bits/mathinline.h: Likewise.
2680         * sysdeps/generic/inttypes.h: Likewise.
2681         * sysdeps/generic/machine-lock.h: Likewise.
2682         * sysdeps/generic/machine-sp.h: Likewise.
2683         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
2684         * sysdeps/i386/i486/bits/string.h: Likewise.
2685         * sysdeps/ia64/fpu/bits/mathinline.h: Likewise.
2686         * sysdeps/mach/alpha/machine-lock.h: Likewise.
2687         * sysdeps/mach/alpha/machine-sp.h: Likewise.
2688         * sysdeps/mach/i386/machine-lock.h: Likewise.
2689         * sysdeps/mach/powerpc/machine-lock.h: Likewise.
2690         * sysdeps/mach/powerpc/machine-sp.h: Likewise.
2691         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
2692         * sysdeps/s390/bits/string.h: Likewise.
2693         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
2694         * sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
2695         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
2696         * sysdeps/unix/sysv/linux/bits/sigset.h: Likewise.
2697         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
2698         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Likewise.
2699         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
2700         * wcsmbs/bits/wchar2.h: Likewise.
2701         * wcsmbs/wchar.h: Likewise.
2702         * stdlib/gmp.h: Likewise.  Include <features.h> to get
2703         __extern_inline definition.
2704
2705 2007-03-15  Jakub Jelinek  <jakub@redhat.com>
2706
2707         * locale/programs/ld-ctype.c (find_translit): Return NULL if ctype is
2708         NULL.
2709
2710         [BZ #3919]
2711         * math/libm-test.inc (log_test): Test -Inf and NaN.
2712         (log10_test, log1p_test, log2_test): Test -Inf.
2713         * sysdeps/i386/fpu/e_log.S (__ieee754_log): Don't raise
2714         FE_INVALID when argument is qNaN.
2715         * sysdeps/i386/fpu/e_logl.S (__ieee754_logl): Likewise.
2716         * sysdeps/i386/fpu/e_logf.S (__ieee754_logf): Likewise.
2717         * sysdeps/x86_64/fpu/e_logl.S (__ieee754_logl): Likewise.
2718         * sysdeps/x86_64/fpu/e_log10l.S (__ieee754_log10l): Replace
2719         andb $1, %ah with testb $1, %ah, don't test for parity, instead
2720         testb $4, %ah and jump if non-zero.
2721         * sysdeps/x86_64/fpu/e_log2l.S (__ieee754_log2l): Likewise.
2722         * sysdeps/x86_64/fpu/s_log1pl.S (__log1pl): Likewise.
2723
2724         [BZ #4101]
2725         * argp/argp-help.c (hol_cluster_cmp): Fix comparisons used to find
2726         ancestors with the same depths.
2727         Patch by Niels Moeller <nisse@lysator.liu.se>.
2728         (filter_doc): Don't crash if argp is NULL.
2729         * argp/Makefile (tests): Add tst-argp2.
2730         * argp/tst-argp2.c: New test.
2731
2732         [BZ #4130]
2733         * login/utmp_file.c (setutent_file): Use O_LARGEFILE for
2734         open_not_cancel_2.
2735         (updwtmp_file): Likewise.
2736
2737         [BZ #4181]
2738         * inet/inet6_opt.c (add_padding): Only insert padding if npad > 0.
2739         (inet6_opt_append): Don't check extlen is big enough if extbuf
2740         is NULL.
2741         (inet6_opt_finish): Likewise.
2742         * inet/Makefile (tests): Add test-inet6_opt.
2743         * inet/test-inet6_opt.c: New test.
2744
2745         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Never
2746         reallocate the buffer, instead fail for MSG_TRUNC or for EBUSY
2747         NLMSG_ERR.  Instead use a page sized buffer.
2748         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Use page sized
2749         buffer.
2750
2751 2007-03-14  Richard Henderson  <rth@redhat.com>
2752
2753         * sysdeps/alpha/fpu/s_llround.c: New file.
2754         * sysdeps/alpha/fpu/s_llroundf.c: New file.
2755         * sysdeps/alpha/fpu/s_lround.c: New file.
2756         * sysdeps/alpha/fpu/s_lroundf.c: New file.
2757         * sysdeps/alpha/fpu/s_round.c: New file.
2758         * sysdeps/alpha/fpu/s_roundf.c: New file.
2759         * sysdeps/alpha/fpu/s_trunc.c: New file.
2760         * sysdeps/alpha/fpu/s_truncf.c: New file.
2761
2762         * sysdeps/alpha/fpu/s_ceil.c: Rewrite without branches.
2763         * sysdeps/alpha/fpu/s_ceilf.c: Likewise.
2764         * sysdeps/alpha/fpu/s_floor.c: Likewise.
2765         * sysdeps/alpha/fpu/s_floorf.c: Likewise.
2766         * sysdeps/alpha/fpu/s_rint.c: Likewise.
2767         * sysdeps/alpha/fpu/s_rintf.c: Likewise.
2768
2769         * sysdeps/alpha/fpu/s_fmax.S: New file.
2770         * sysdeps/alpha/fpu/s_fmaxf.S: New file.
2771         * sysdeps/alpha/fpu/s_fmin.S: New file.
2772         * sysdeps/alpha/fpu/s_fminf.S: New file.
2773         * sysdeps/alpha/fpu/s_isnan.c: New file.
2774         * sysdeps/alpha/fpu/s_isnanf.c: New file.
2775         * sysdeps/alpha/fpu/s_llrint.c: New file.
2776         * sysdeps/alpha/fpu/s_llrintf.c: New file.
2777         * sysdeps/alpha/fpu/s_lrint.c: New file.
2778         * sysdeps/alpha/fpu/s_lrintf.c: New file.
2779         * sysdeps/alpha/fpu/s_nearbyint.c: New file.
2780         * sysdeps/alpha/fpu/s_nearbyintf.c: New file.
2781
2782         * sysdeps/alpha/fpu/bits/mathinline.h (__floorf, __floor): Remove.
2783         (__fdimf, fdimf, __fdim, fdim): Remove.
2784         (__signbitf, __signbit, __signbitl): Use gcc builtin if available.
2785         (__isnanf, __isnan, __isnanl): New.
2786
2787 2007-03-13  Richard Henderson  <rth@redhat.com>
2788
2789         * sysdeps/ieee754/ldbl-128/Makefile: New file.
2790
2791 2007-03-13  Richard Henderson  <rth@redhat.com>
2792
2793         * sysdeps/alpha/Makefile (sysdep-CFLAGS): Force dynamic rounding.
2794         * sysdeps/alpha/fpu/bits/mathinline.h (__signbitl): New.
2795         * sysdeps/alpha/fpu/libm-test-ulps: Regenerate.
2796         * sysdeps/unix/sysv/linux/alpha/alphaev6/fpu/Implies: New file.
2797         * sysdeps/unix/sysv/linux/alpha/alphaev67/fpu/Implies: New file.
2798         * sysdeps/unix/sysv/linux/alpha/fpu/Implies: New file.
2799
2800 2007-03-13  Richard Henderson  <rth@redhat.com>
2801
2802         * elf/dl-support.c (_dl_aux_init): Honor DL_PLATFORM_AUXV.
2803         * sysdeps/unix/sysv/linux/alpha/dl-auxv.h: New file.
2804         * sysdeps/unix/sysv/linux/alpha/dl-support.c: New file.
2805         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c (__libc_alpha_cache_shape):
2806         Move to dl-auxv.h; initialize instead of extern weak.
2807         (DL_PLATFORM_AUXV): Move to dl-auxv.h; don't test for undef
2808         weak symbol.
2809         * sysdeps/unix/sysv/linux/alpha/sysconf.c (__libc_alpha_cache_shape):
2810         Extern instead of initialized.
2811
2812 2007-03-13  Richard Henderson  <rth@redhat.com>
2813
2814         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add support for
2815         __sigsuspend_nocancel.
2816
2817 2007-03-06  Ulrich Drepper  <drepper@redhat.com>
2818
2819         * sysdeps/posix/getaddrinfo.c (get_scope): Correct test for
2820         172.16/12 address range.
2821
2822 2007-03-02  Jakub Jelinek  <jakub@redhat.com>
2823
2824         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Retry with
2825         a new netlink socket if NLMSG_ERR -EBUSY is seen after some MSG_TRUNC
2826         message.
2827
2828 2007-03-01  Jakub Jelinek  <jakub@redhat.com>
2829
2830         [BZ #4069]
2831         * sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Check for NaN
2832         earlier.
2833         * math/libm-test.inc (pow_test): Add more tests involving NaNs.
2834
2835         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Avoid invalid exception
2836         for x qNaN and y either +-inf or non-integer value.
2837         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Likewise.
2838         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
2839         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
2840
2841 2007-02-10  Mike Frysinger  <vapier@gentoo.org>
2842
2843         * sysdeps/unix/sysv/linux/sh/Makefile: Remove sys/io.h
2844         from sysdep_headers.
2845
2846 2007-02-28  Jakub Jelinek  <jakub@redhat.com>
2847
2848         * time/tzfile.c (find_transition): Instead of a linear search try to
2849         guess the transition index, use a linear search if the result is at
2850         most 10 transitions away from the guess or binary search otherwise.
2851
2852 2007-02-27  Jakub Jelinek  <jakub@redhat.com>
2853
2854         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Fix
2855         memory reallocation.
2856
2857 2007-02-21  Ulrich Drepper  <drepper@redhat.com>
2858
2859         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Add branch predictions
2860         and fix some typos.
2861         Optimize use of TOLOWER.
2862
2863         [BZ #3325]
2864         * sysdeps/i386/fpu/e_fmodf.S: Revert last changes, keep using fprem.
2865         * sysdeps/i386/fpu/e_fmodl.c: Likewise.
2866         * sysdeps/i386/fpu/e_fmod.S: Likewise.
2867
2868         [BZ #3458]
2869         * sysdeps/unix/sysv/linux/posix_madvise.c: New file.
2870         * sysdeps/unix/sysv/linux/syscalls.list: Remove posix_madvise entry.
2871
2872         [BZ #4076]
2873         * io/ftw.c (ftw_startup): Handle special case of FTW_CHDIR in /.
2874         (open_dir_stream): Likewise.
2875         * io/Makefile (tests): Add bug-ftw5.
2876         * io/bug-ftw5.c: New file.
2877
2878         * nscd/hstcache.c (cache_addhst): Remove unnecessary conditional.
2879         * nscd/servicescache.c (cache_addserv): Likewise.
2880
2881         * nscd/grpcache.c (cache_addgr): In case a record changed on
2882         refresh, adjust key_copy.
2883
2884         [BZ #4074]
2885         * nscd/pwdcache.c (cache_addpw): In case a record changed on
2886         refresh, adjust key_copy.
2887
2888         [BZ #4070]
2889         * stdio-common/printf_fp.c (___printf_fp): Handle a few more
2890         special cases.
2891         * stdio-common/tfformat.c (sprint_doubles): Some more tests.
2892
2893 2007-02-19  Ulrich Drepper  <drepper@redhat.com>
2894
2895         * stdio-common/printf_fp.c (___printf_fp): Cleanups and minor
2896         optimization.
2897
2898         * stdio-common/vfscanf.c: Small cleanups throughout.
2899
2900 2007-02-18  Ulrich Drepper  <drepper@redhat.com>
2901
2902         [BZ #3325]
2903         * sysdeps/i386/fpu/e_fmodf.S: Use fprem1 instead of fprem.
2904         * sysdeps/i386/fpu/e_fmodl.c: Likewise.
2905         * sysdeps/i386/fpu/e_fmod.S: Likewise.
2906         Patch by Jared Casper <jaredcasper@gmail.com>.
2907
2908         * sysdeps/unix/closedir.c: Outside libc don't use locking.
2909         * sysdeps/unix/opendir.c: Likewise.
2910         * sysdeps/unix/readdir.c: Likewise.
2911
2912         [BZ #2211]
2913         * stdio-common/vfscanf.c: Handle localized digits etc for floating
2914         point numbers.
2915         Patch mostly by Hamed Malek <hamed@farsiweb.info>.
2916
2917         * stdio-common/vfscanf.c: Fix problems in width accounting.
2918         * stdio-common/tst-sscanf.c (double_tests): New tests.
2919         (main): Hook them up.
2920
2921         * stdio-common/vfscanf.c: Remove unused WIDTH handling.
2922         More simplifications of floating-point reader.
2923
2924         * stdio-common/Makefile (tests): Add tst-swscanf.
2925         * stdio-common/tst-sscanf.c: Make tests usable for swscanf
2926         testing.
2927         * stdio-common/tst-swscanf.c: New file.
2928
2929 2007-02-17  Ulrich Drepper  <drepper@redhat.com>
2930
2931         [BZ #2633]
2932         * libio/stdio.h: Define struct _IO_FILE in global namespace.
2933         * setjmp/setjmp.h: Define __jmp_buf_tag in global namespace.
2934         Remove using for __jmp_buf_tag.
2935         * locale/locale.h (struct lconv): Also define in std namespace.
2936         * wcsmbs/wchar.h: Move using declaration for tm out of namespace.
2937
2938         [BZ #3842]
2939         * sysdeps/posix/euidaccess.c [_LIBC] (euidaccess): Remove shortcut
2940         using __libc_enable_secure.
2941
2942         [BZ #3818]
2943         * sysdeps/unix/sysv/linux/sys/acct.h (struct acct_v3): Define.
2944
2945         [BZ #3745]
2946         * locale/programs/ld-collate.c (handle_ellipsis): Fix generation
2947         of names for ellipsises.
2948
2949         [BZ #3348]
2950         * malloc/memusage.sh: Cleanups.
2951         * debug/xtrace.sh: Quoting and trap changes.
2952
2953 2007-02-16  Ulrich Drepper  <drepper@redhat.com>
2954
2955         * locale/iso-3166.def: Add Jersey, Guernsey, and Isle Of Man entries.
2956
2957         * locale/iso-3166.def: Update entry for Serbia.
2958         * locale/iso-4217.def: Define RSD, remove CSD.
2959
2960         * sysdeps/x86_64/bits/atomic.h: One more change, this time for 16-
2961         and 64-bit operations.
2962
2963         [BZ #4040]
2964         * sysdeps/i386/i486/bits/atomic.h: One more change, this time for
2965         16-bit operations.
2966
2967         * nscd/nscd.c (parse_opt): One more conversion to use send instead
2968         of writev.
2969
2970 2007-02-15  Ulrich Drepper  <drepper@redhat.com>
2971
2972         [BZ #3991]
2973         * assert/assert.h (assert): Simplify.
2974         (assert_perror): Likewise.
2975         Patch by Israel G. Lugo <ilugo@bridonsecurity.com>.
2976
2977         * nscd/nscd_helper.c (open_socket): Don't send padding bytes from
2978         reqdata.
2979
2980         * sysdeps/unix/sysv/linux/x86_64/send.c (__libc_send): Cosmetic
2981         change: don't pass NULL in place of an integer.
2982
2983 2007-02-02  Bruno Haible  <bruno@clisp.org>
2984
2985         [BZ #3954]
2986         * iconvdata/ksc5601.c (__ksc5601_sym_to_ucs, __ksc5601_sym_from_ucs):
2987         Add mapping for U+327E.
2988         * iconvdata/ksc5601.h (KSC5601_SYMBOL): Increment.
2989         * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
2990         mapping of 0xD9 0xE8.
2991         * iconvdata/uhc.c (BODY for FROM_LOOP, BODY for TO_LOOP): Disable
2992         mapping of U+327E.
2993         Reported by Jungshik Shin <jungshik@google.com>.
2994
2995         [BZ #3955]
2996         * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
2997         mapping of 0xD9 0xE6 and of 0xD9 0xE7.
2998         Reported by Jungshik Shin <jungshik@google.com>.
2999
3000 2007-02-14  Ulrich Drepper  <drepper@redhat.com>
3001
3002         * sysdeps/x86_64/bits/atomic;h: Fix asm parameters for some
3003         byte variants.
3004
3005         [BZ #4040]
3006         * sysdeps/i386/i486/bits/atomic.h: Fix asm parameters for some
3007         byte variants.  Patch mostly be tom@tommay.net.
3008
3009 2007-02-14  Jakub Jelinek  <jakub@redhat.com>
3010
3011         [BZ #3996]
3012         * posix/glob.c (attribute_hidden): Define if not defined.
3013         (glob): Unescape dirname, filename or username when needed and not
3014         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
3015         is NULL.  Handle unescaped [ in pattern without closing ].
3016         Don't pass GLOB_CHECK down to recursive glob for directories.
3017         (__glob_pattern_type): New function.
3018         (__glob_pattern_p): Implement using __glob_pattern_type.
3019         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
3020         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
3021         Remove unreachable code.
3022         * posix/globtest.sh: Add a couple of new tests.
3023
3024 2007-02-13  Ulrich Drepper  <drepper@redhat.com>
3025
3026         * po/ru.po: Update from translation team.
3027
3028 2007-02-12  Jakub Jelinek  <jakub@redhat.com>
3029
3030         * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __amdfam10__
3031         to the list of i486+ CPUs.
3032         * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
3033
3034 2007-02-12  Ulrich Drepper  <drepper@redhat.com>
3035
3036         * elf/rtld.c (RESOLVE_MAP): Always return bootstrap_map reference.
3037         * elf/Makefile ($(objpfx)ld.so): Check that ld.so has no undefined
3038         references.
3039
3040 2007-02-09  Ulrich Drepper  <drepper@redhat.com>
3041
3042         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Remove incorrect comment.
3043
3044         * resolv/res_init.c (res_setoptions): Recognize edns0 option.
3045         * resolv/res_mkquery.c: Define __res_nopt.
3046         * resolv/res_query.c (__libc_res_nquery): If RES_USE_EDNS0 is set
3047         try adding EDNS0 record.
3048         * resolv/res_send.c (send_dg): If request failed with FORMERR and
3049         EDNS0 record was send make sure we don't try it again.
3050         * resolv/resolv.h: Define RES_F_EDNS0ERR and RES_USE_EDNS0.
3051         * include/resolv.h: Declare __res_nopt.
3052
3053 2007-02-08  Jakub Jelinek  <jakub@redhat.com>
3054
3055         [BZ #3944]
3056         * time/strptime_l.c (__strptime_internal): Set have_mon for
3057         %b/%B/%h.  Set have_mon and have_mday if tm_mon and tm_mday
3058         have been computed from tm_yday and tm_year.  Don't crash
3059         in day_of_the_week or day_of_the_year if not have_mon
3060         and tm_mon contains bogus value.
3061         * time/Makefile (tests): Add tst-strptime3.
3062         * time/tst-strptime3.c: New test.
3063
3064 2007-02-05  Jakub Jelinek  <jakub@redhat.com>
3065
3066         [BZ #3957]
3067         * posix/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
3068         bit for RE_HAT_LISTS_NOT_NEWLINE.
3069         (build_charclass_op): Remove bogus comment.
3070         * posix/Makefile (tests): Add bug-regex27 and bug-regex28.
3071         * posix/bug-regex27.c: New test.
3072         * posix/bug-regex28.c: New test.
3073
3074 2007-02-03  Ulrich Drepper  <drepper@redhat.com>
3075
3076         * po/sv.po: Update from translation team.
3077
3078 2007-02-02  Ulrich Drepper  <drepper@redhat.com>
3079
3080         * nscd/nscd_helper.c (open_socket): Minor size optimization.
3081
3082 2007-02-02  Jakub Jelinek  <jakub@redhat.com>
3083
3084         * include/locale.h (__uselocale): Add libc_hidden_proto.
3085         * locale/uselocale.c (__uselocale): Add libc_hidden_def.
3086
3087         * nscd/nscd_helper.c (open_socket): Use __gettimeofday instead of
3088         gettimeofday.
3089
3090 2007-02-01  Ulrich Drepper  <drepper@redhat.com>
3091
3092         * sysdeps/unix/sysv/linux/i386/sysdep.h (PTR_MANGLE): Roll value before
3093         returning.
3094         (PTR_DEMANGLE): Real definition now that it's not the same as
3095         PRT_MANGLE anymore.
3096         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
3097
3098         * string/strerror_l.c: New file.
3099         * string/Makefile (routines): Add strerror_l.
3100         * string/string.h: Declare strerror_l.
3101         * string/Versions: Export strerror_l for GLIBC_2.6.
3102
3103 2007-01-31  Ulrich Drepper  <drepper@redhat.com>
3104
3105         * nscd/nscd_helper.c (open_socket): Now takes request type and key
3106         as parameter.  Construct request record.  Try sending request
3107         before the first poll use, it usually succeeds.  Adjust all
3108         callers.
3109         * nscd/nscd-client.h: Define MAXKEYLEN.
3110         * nscd/connections.c (nscd_run): Don't define MAXKEYLEN here.
3111
3112 2007-01-31  Jakub Jelinek  <jakub@redhat.com>
3113
3114         * nscd/nscd-client.h (__nscd_cache_search): Remove const qualifier
3115         from return value.
3116         * nscd/nscd_helper.c: Include string.h.
3117         (__nscd_cache_search): Remove const qualifier from return value.
3118         On strict alignment architectures check hash entry and data head
3119         alignment.
3120         * nscd/nscd_getpw_r.c (nscd_getpw_r): Don't crash or fail because
3121         mmapped data during GC cycle contains garbage.  If
3122         __nscd_drop_map_ref fails, decrement mapped->counter when returning
3123         error or if retrying with NO_MAPPING, only __nscd_unmap if counter
3124         dropped to 0.
3125         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
3126         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise.
3127         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
3128         * nscd/nscd_getai.c (__nscd_getai): Likewise.
3129         * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
3130
3131 2007-01-30  Ulrich Drepper  <drepper@redhat.com>
3132
3133         * misc/hsearch_r.c (hdestroy_r): Remove unnecessary test.
3134
3135 2007-01-26  Ulrich Drepper  <drepper@redhat.com>
3136
3137         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Use register
3138         names not numbers in cfi_*.
3139
3140 2007-01-26  Andreas Jaeger  <aj@suse.de>
3141
3142         * sysdeps/unix/sysv/linux/sys/personality.h (ADDR_NO_RANDOMIZE,
3143         ADDR_LIMIT_3GB, PER_LINUX_32BIT, PER_LINUX32_3GB): Add.
3144         Correct values of PER_HPUX and PER_OSF4.
3145
3146 2007-01-24  Ulrich Drepper  <drepper@redhat.com>
3147
3148         * elf/dl-minimal.c: Undefine _itoa first.
3149         * stdio-common/_itoa.h: Define _itoa and _fitoa for 64-bit platforms.
3150         * malloc/mtrace.c: Revert last change.
3151         * posix/wordexp.c: Likewise.
3152
3153 2007-01-24  Jakub Jelinek  <jakub@redhat.com>
3154
3155         * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __nocona__, __core2__
3156         and __geode__ to the list of i486+ CPUs.
3157         * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
3158
3159 2007-01-23  Ulrich Drepper  <drepper@redhat.com>
3160
3161         * stdio-common/_itoa.c: Include <limits.h>.
3162         * stdio-common/_itowa.c: Likewise.
3163
3164 2007-01-22  Ulrich Drepper  <drepper@redhat.com>
3165
3166         * stdio-common/_itowa.c: Don't compile _itowa for 64-bit
3167         platforms.
3168         * stdio-common/_itoa.c: Don't compile in _itoa and _fitoa for
3169         64-bit platforms.
3170         * malloc/mtrace.c (tr_where): Use _fitoa_word instead of _fitoa if
3171         possible.
3172         * posix/wordexp.c (parse_arith): Use _itoa_word instead of _itoa
3173         if possible.
3174
3175         [BZ #3902]
3176         * stdio-common/_itoa.c (_itoa): Make sure at least a zero is emitted.
3177         * stdio-common/Makefile (tests): Add bug17.
3178         * stdio-common/bug17.c: New file.
3179
3180 2007-01-19  Ulrich Drepper  <drepper@redhat.com>
3181
3182         * iconvdata/brf.c: New file.
3183         * iconvdata/testdata/BRF: New file.
3184         * iconvdata/testdata/BRF..UTF8: New file.
3185         Contributed by Samuel Thibault <samuel.thibault@ens-lyon.org>.
3186         * iconvdata/Makefile: Add rules to build BRF.
3187         * iconvdata/TESTS: Add BRF entry.
3188         * iconvdata/gconv-modules: Likewise.
3189         * iconvdata/tst-tables.sh: Likewise.
3190
3191 2007-01-18  Anton Nikishaev  <anton.nik@gmail.com>
3192
3193         * wcsmbs/wchar.h (wcstoll): Fix comment, function returns value of
3194         type `long long int', not `long int'.
3195         (wcstoq): Likewise.
3196
3197 2007-01-18  Ulrich Drepper  <drepper@redhat.com>
3198
3199         * scripts/gen-as-const.awk: Add cast to long to avoid int promotion
3200         of values on 64-bit platforms which are too large.
3201
3202 2007-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
3203             Joe Kerian  <jkerian@us.us.ibm.com>
3204
3205         [BZ #2749]
3206         * sysdeps/ieee754/ldbl-128ibm/s_copysignl.c: Include
3207         <math_ldbl_opt.h>.  Remove weak_alias.  Use long_double_symbol macro.
3208         (__copysignl): Use signbit() for comparison.
3209         * sysdeps/ieee754/ldbl-128ibm/s_fabsl.c (__fabsl): Correct parms for
3210         SET_LDOUBLE_WORDS64.
3211
3212         [BZ #2423, #2749]
3213         * sysdeps/ieee754/ldbl-128ibm/s_ceill.c: Don't include <fenv_libc.h>.
3214         (__ceill): Remove calls to fegetround(), fesetround().
3215         * sysdeps/ieee754/ldbl-128ibm/s_floorl.c: Likewise.
3216         * sysdeps/ieee754/ldbl-128ibm/s_roundl.c: Likewise.
3217         * sysdeps/ieee754/ldbl-128ibm/s_truncl.c: Likewise.
3218
3219 2007-01-17  Jakub Jelinek  <jakub@redhat.com>
3220
3221         * nscd/nscd_getserv_r.c (nscd_getserv_r): Fix pastos.
3222
3223         * sysdeps/unix/sysv/linux/getdents.c (offsetof): Remove.
3224
3225 2007-01-17  Ulrich Drepper  <drepper@redhat.com>
3226
3227         * sysdeps/unix/sysv/linux/fatal-prepare.h: Use PTHFCT_CALL to
3228         demangle pointer.
3229         * csu/libc-start.c: Likewise.
3230
3231 2007-01-16  Ulrich Drepper  <drepper@redhat.com>
3232
3233         * sysdeps/posix/system.c: Remove NO_WAITPID support, it cannot
3234         really work anyway.
3235
3236 2007-01-15  Ulrich Drepper  <drepper@redhat.com>
3237
3238         * nscd/connections.c (servinfo): Renamed to reqinfo.  Change all
3239         users.
3240         (handle_request): Remove unnecessary tests.
3241
3242         * nscd/cache.c (cache_add): Record the failure to add to the cache.
3243
3244 2007-01-15  Jakub Jelinek  <jakub@redhat.com>
3245
3246         * soft-fp/op-common.h (FP_TRUNC): When truncating a NaN, clear
3247         workbits in semi-raw fraction.
3248
3249         * math/test-misc.c: Add new tests.
3250
3251 2007-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
3252
3253         * math/basic-test.c: Include test-skeleton.c.
3254         (TEST_TRUNC): Define.
3255         (truncdfsf_test, trunctfsf_test, trunctfdf_test): New.
3256         (main): Rename to ...
3257         (do_test): ...this.  Run new tests.
3258         (TEST_FUNCTION): Define.
3259
3260 2006-10-05  Steven Munroe  <sjmunroe@us.ibm.com>
3261             Joe Kerian  <jkerian@us.us.ibm.com>
3262
3263         [BZ #2749]
3264         * soft-fp/op-4.h (__FP_FRAC_SUB_3, __FP_FRAC_SUB_4): Correct borrow
3265         handling for high words.
3266         * soft-fp/op-common.h (_FP_OVERFLOW_SEMIRAW): Always set inexact
3267         and overflow for infinity.
3268
3269 2007-01-15  Ulrich Drepper  <drepper@redhat.com>
3270
3271         * nscd/connections.c (handle_request): Add a __builtin_expect.
3272
3273         * nscd/connections.c (serv2db): Change type into structure which
3274         also says whether this is a request for data.  Renamed to
3275         servinfo.  All users changed.
3276         (handle_request): Much simpler test whether we should search the cache.
3277
3278         * nscd/connections.c (handle_request): Fix thinko in selinux test
3279         invocation.
3280
3281         * sysdeps/generic/ldsodefs.h: Define DL_LOOKUP_SCOPE_LOCK.
3282         * elf/dl-lookup.c (add_dependency): If scope map is locked, unlock
3283         it before getting dl_load_lock and then relock.
3284         (_dl_lookup_symbol_x): Pass flags to add_dependency.
3285         When rerunning _dl_lookup_symbol_x, compute symbol_scope again in
3286         case we unlocked the scope.
3287         * elf/dl-runtime.c (_dl_fixup): Pass DL_LOOKUP_SCOPE_LOCK to
3288         _dl_lookup_symbol_x in case we locked the scope.
3289         (_dl_profile_fixup): Likewise.
3290         * elf/dl-sym.c (do_sym): In flags passed to call_dl_lookup, also
3291         set DL_LOOKUP_SCOPE_LOCK.
3292
3293 2007-01-13  Ulrich Drepper  <drepper@redhat.com>
3294
3295         * inet/Makefile: Define CFLAGS-getsrvbynm_r.c and
3296         CFLAGS-getsrvbynpt_r.c.
3297         * nscd/getsrvbynm_r.c: New file.
3298         * nscd/getsrvbypt_r.c: New file.
3299         * nscd/nscd_getserv_r.c: New file.
3300         * nscd/servicescache.c: New file.
3301         * nscd/Makefile (routines): Add nscd_getserv_r.
3302         (nscd-modules): Add getsrvbynm_r, getsrvbypt_r, and servicescache.
3303         Define CFLAGS-servicescache.c, CFLAGS-getsrvbynm_r.c, and
3304         CFLAGS-getsrvbypt_r.c.
3305         * nscd/cache.c (prune_cache): Rewrite to get re-add function from
3306         table.  Add entries for services database.
3307         * nscd/connections.c (serv2str): Mark as const.  Add entries for
3308         services database.
3309         (dbs): Add .reset_res and servdb initialization.
3310         (serv2db): Add entries for services database.
3311         (verify_persistent_db): Accept dbnr == servdb.
3312         (invalidate_cache): Rewrite database name recognition to use a table.
3313         Call res_init() if .reset_res is set for database.
3314         (handle_request): Add code to handle services database.
3315         * nscd/gai.c: Don't define __getservbyname_r.
3316         * nscd/nscd-client.h (request_type): Remove LASTDBREQ, add
3317         GETSERVBYNAME, GETSERVBYPORT, GETFDSERV.
3318         (serv_response_header): Define.
3319         (struct datahead): Add serv_response_header member.
3320         * nscd/nscd.c (parse_opt): Rewrite parsing of -i parameter value
3321         using table.
3322         * nscd/nscd.conf: Add entries for services database.
3323         * nscd/nscd.h: Adjust declaration of dbnames and serv2str.
3324         Declare serv_iov_disabled.
3325         Declare addservbyname, readdservbyname, addservbyport, and
3326         readdservbyport.
3327         * nscd/nscd_conf.c (dbnames): Mark as const.  Add services entry.
3328         (find_db): Fix error message.
3329         * nscd/nscd_proto.h: Declare __nss_not_use_nscd_services,
3330         __nscd_getservbyname_r, and __nscd_getservbyport_r.
3331         * nscd/selinux.c (perms): Add entries for services database.
3332         * nss/Versions: Export __nss_services_lookup with GLIBC_PRIVATE.
3333         * nss/nsswitch.c (__nss_disable_nscd): Also disable services database.
3334
3335         * nscd/grpcache.c: Remove obsolete code.  Cleanups.
3336         * nscd/hstcache.c: Likewise.
3337         * nscd/pwdcache.c: Likewise.
3338
3339         * nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): Correct
3340         computation of keylen.
3341
3342         * include/string.h: Only redefine strndupa if this is really for
3343         libc code.
3344
3345 2007-01-12  Ulrich Drepper  <drepper@redhat.com>
3346
3347         * nscd/nscd_gethst_r.c: Minor cleanups.
3348
3349         * nscd/connections.c (handle_request): Check selinux permissions
3350         for all non-admin commands.
3351
3352         * sysdeps/i386/i486/bits/atomic.h: Define
3353         atomic_compare_and_exchange_val_acq,
3354         atomic_compare_and_exchange_bool_acq, and atomic_exchange_and_add
3355         using __sync_* built-ins for gcc >= 4.1.
3356         * sysdeps/x86_64/bits/atomic.h: Likewise.
3357
3358         [BZ #3840]
3359         * scripts/check-local-headers.sh: Restrict to testing .o.d, .os.d,
3360         and .oS.d files.
3361
3362 2007-01-05  Steven Munroe  <sjmunroe@us.ibm.com>
3363
3364         * stdlib/tst-makecontext.c: Include errno.h.  Change main()
3365         to do_test().  Define TEST_FUNCTION. Include test-skeleton.c.
3366         (do_test): Check errno and exit(0) if ENOSYS.
3367
3368 2007-01-11  Jakub Jelinek  <jakub@redhat.com>
3369
3370         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix handling of multi-byte
3371         thousands separators.
3372         * stdlib/Makefile: Add rules to build and run tst-strtod4.
3373         * stdlib/tst-strtod4.c: New test.
3374
3375         [BZ #3855]
3376         * stdlib/strtod_l.c (____STRTOF_INTERNAL): 0x. not followed by
3377         hexadecimal digit should accept just the initial 0.
3378         * stdlib/tst-strtod2.c (tests): New variable.
3379         (do_test): Run several tests rather than just one.
3380
3381 2007-01-11  Jakub Jelinek  <jakub@redhat.com>
3382
3383         * sysdeps/i386/soft-fp/sfp-machine.h: Remove.
3384         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
3385
3386 2007-01-10  Ulrich Drepper  <drepper@redhat.com>
3387
3388         * io/fts.c: Make sure fts_cur is always valid after return from
3389         fts_read.
3390         Patch by Miloslav Trmac <mitr@redhat.com>.
3391
3392 2006-10-27  Richard Sandiford  <richard@codesourcery.com>
3393
3394         * elf/elf.h (R_MIPS_GLOB_DAT): Define.
3395         (R_MIPS_NUM): Bump by 1.
3396
3397 2007-01-03  Jakub Jelinek  <jakub@redhat.com>
3398
3399         * posix/execvp.c: Include alloca.h.
3400         (allocate_scripts_argv): Renamed to...
3401         (scripts_argv): ... this.  Don't allocate buffer here nor count
3402         arguments.
3403         (execvp): Use alloca if possible.
3404         * posix/Makefile: Add rules to build and run tst-vfork3 test.
3405         * posix/tst-vfork3.c: New test.
3406
3407 2007-01-03  Ulrich Drepper  <drepper@redhat.com>
3408
3409         * string/Makefile (tst-strxfrm2-ENV): Define.
3410         * stdlib/Makefile (tst-strtod3-ENV): Define.
3411
3412 2007-01-02  Ulrich Drepper  <drepper@redhat.com>
3413
3414         * posix/getconf.c: Update copyright year.
3415         * nss/getent.c: Likewise.
3416         * iconv/iconvconfig.c: Likewise.
3417         * iconv/iconv_prog.c: Likewise.
3418         * elf/ldconfig.c: Likewise.
3419         * catgets/gencat.c: Likewise.
3420         * csu/version.c: Likewise.
3421         * elf/ldd.bash.in: Likewise.
3422         * elf/sprof.c (print_version): Likewise.
3423         * locale/programs/locale.c: Likewise.
3424         * locale/programs/localedef.c: Likewise.
3425         * nscd/nscd.c (print_version): Likewise.
3426         * debug/xtrace.sh: Likewise.
3427         * malloc/memusage.sh: Likewise.
3428         * malloc/mtrace.pl: Likewise.
3429         * debug/catchsegv.sh: Likewise.
3430
3431 2006-12-24  Ulrich Drepper  <drepper@redhat.com>
3432
3433         * malloc/malloc.c (sYSMALLOc): Remove some unnecessary alignment
3434         attempts.
3435
3436 2006-12-23  Ulrich Drepper  <drepper@redhat.com>
3437
3438         * posix/wordexp.c: Remove some unnecessary tests.
3439
3440 2006-12-22  Gavin Romig-Koch  <gavin@redhat.com>
3441
3442         * nis/nss_compat/compat-grp.c (internal_getgrgid_r): Don't
3443         blacklist the group till after we look it up.
3444
3445 2006-12-21  Ulrich Drepper  <drepper@redhat.com>
3446
3447         * include/atomic.h (atomic_forced_read): New macro.
3448
3449 2006-12-20  SUGIOKA Toshinobu  <sugioka@itonet.co.jp>
3450
3451         * sysdeps/unix/sysv/linux/sh/bits/shm.h: New file.
3452
3453 2006-12-19  Jakub Jelinek  <jakub@redhat.com>
3454
3455         * nss/getXXbyYY_r.c: Include atomic.h.
3456         (INTERNAL (REENTRANT_NAME)): Write startp after start_fct,
3457         add atomic_write_barrier () in between.
3458
3459         * stdlib/Makefile (tests): Add tst-makecontext.
3460         * stdlib/tst-makecontext.c: New test.
3461
3462         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
3463         (__makecontext): Don't realign uc_mcontext.uc_regs.
3464
3465 2006-11-28  Jakub Jelinek  <jakub@redhat.com>
3466
3467         * elf/dl-support.c: Include dl-procinfo.h.
3468         * sysdeps/powerpc/dl-procinfo.h (PPC_PLATFORM_POWER4,
3469         PPC_PLATFORM_PPC970, PPC_PLATFORM_POWER5, PPC_PLATFORM_POWER5_PLUS,
3470         PPC_PLATFORM_POWER6, PPC_PLATFORM_CELL_BE, PPC_PLATFORM_POWER6X):
3471         Define.
3472         (_dl_string_platform): Use PPC_PLATFORM_* macros instead of
3473         hardcoded constants.
3474         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_platform): Use
3475         PPC_PLATFORM_* macros for array designators.
3476
3477 2006-11-11  Steven Munroe  <sjmunroe@us.ibm.com>
3478
3479         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 3 new cap
3480         names to the beginning.
3481         (_dl_powerpc_platforms): Add "power6x".
3482         * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
3483         (HWCAP_IMPORTANT): Add PPC_FEATURE_HAS_DFP.
3484         (_DL_PLATFORMS_COUNT): Increase.
3485         (_dl_string_platform): Handle power6x case.
3486         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_PA6T, PPC_FEATURE_HAS_DFP,
3487         PPC_FEATURE_POWER6_EXT): Define.
3488         (PPC_FEATURE_POWER5, PPC_FEATURE_POWER5_PLUS): Correct Comment.
3489
3490 2006-12-18  Jakub Jelinek  <jakub@redhat.com>
3491
3492         [BZ #3747]
3493         * stdlib/jrand48_r.c (__jrand48_r): Make sure result is in the
3494         [-2^31 .. 2^31) range.
3495         * stdlib/tst-rand48.c (main): Fix expected values for 64-bit
3496         targets.
3497         * stdlib/tst-rand48-2.c: New test.
3498         * stdlib/Makefile (tests): Add tst-rand48-2.
3499
3500 2006-12-14  Jakub Jelinek  <jakub@redhat.com>
3501
3502         * misc/tst-pselect.c (do_test): Fix sigblock argument.
3503
3504 2006-12-14  Ulrich Drepper  <drepper@redhat.com>
3505
3506         * misc/tst-pselect.c (do_test): Make sure the helper process is
3507         terminating when the test is aborted.
3508
3509 2006-12-13  Ulrich Drepper  <drepper@redhat.com>
3510
3511         * sysdeps/unix/sysv/linux/bits/statvfs.h: Define ST_RELATIME.
3512         * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags):
3513         Handle relatime mount option.
3514
3515         [BZ #2337]
3516         * libio/Makefile (tests): Add tst-setvbuf1.
3517         * libio/tst-setvbuf1.c: New file.
3518
3519 2006-12-08  Jakub Jelinek  <jakub@redhat.com>
3520
3521         [BZ #2337]
3522         * libio/genops.c (__uflow): Fix a typo.
3523         * libio/wfiledoalloc.c (_IO_wfile_doallocate): Don't stat
3524         nor set _IO_LINE_BUF bit here.  Size the wide buffer based on
3525         the narrow buffer size.
3526
3527 2006-11-24  Jakub Jelinek  <jakub@redhat.com>
3528
3529         [BZ #2337]