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