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