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