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