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