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