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