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