.
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2008-07-08  Ulrich Drepper  <drepper@redhat.com>
2
3         [BZ #6719]
4         * libio/iosetvbuf.c (_IO_setvbuf): Correctly clear buffering flags
5         when selecting fully-buffered stream.
6         Patch by Wang Xin <wxinee@gmail.com>.
7
8 2008-07-06  Samuel Thibault  <samuel.thibault@ens-lyon.org>
9
10         * sysdeps/mach/hurd/open.c: Include <stdio.h>.
11         (__open_2): New function.
12         (__open64_2): New alias to __open_2.
13         * sysdeps/mach/hurd/openat.c: Include <stdio.h>.
14         (__openat_2): New function.
15         (__openat64_2): New alias to __openat_2.
16
17 2008-07-06  Ulrich Drepper  <drepper@redhat.com>
18
19         [BZ #6723]
20         * time/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
21
22 2008-07-01  Samuel Thibault  <samuel.thibault@ens-lyon.org>
23
24         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Define MSG_NOSIGNAL.
25         * hurd/hurd/fd.h (__hurd_sockfail): Add extern inline function.
26         * sysdeps/mach/hurd/recv.c (__recv): Use __hurd_sockfail instead of
27         __hurd_dfail.
28         * sysdeps/mach/hurd/recvfrom.c (__recvfrom): Likewise.
29         * sysdeps/mach/hurd/recvmsg.c (__recvmsg): Likewise.
30         * sysdeps/mach/hurd/send.c (__send): Likewise.
31         * sysdeps/mach/hurd/sendto.c (__sendfrom): Likewise.
32         * sysdeps/mach/hurd/sendmsg.c (__sendmsg): Likewise.
33
34 2008-03-04  Samuel Thibault  <samuel.thibault@ens-lyon.org>
35
36         * sysdeps/mach/hurd/recv.c (__recv): Initialize NPORTS.
37         * sysdeps/mach/hurd/recvfrom.c (__recvfrom): Likewise.
38         * sysdeps/mach/hurd/recvmsg.c (__recvmsg): Likewise.
39         * hurd/fd-read.c (_hurd_fd_read): Initialize NREAD.
40         * hurd/get-host.c (_hurd_get_host_config): Likewise.
41         * sysdeps/mach/hurd/dl-sysdep.c (__libc_read): Likewise.
42
43 2008-06-27  Ulrich Drepper  <drepper@redhat.com>
44
45         [BZ #6657]
46         * time/strptime_l.c: Don't clear s.era_cnt after successful match
47         of %EY.
48         Patch by Petr Baudis.
49
50 2008-06-26  Ulrich Drepper  <drepper@redhat.com>
51
52         * resolv/res_debug.c (__p_type_syms): Add ns_t_dname entry.
53         Patch by Peter Jones <pjones@redhat.com>.
54
55 2008-06-25  Ulrich Drepper  <drepper@redhat.com>
56
57         [BZ #6654]
58         * stdlib/canonicalize.c (__realpath): readlink can write too much
59         into the buffer on platforms without PATH_MAX.
60
61 2008-06-17  Carlos O'Donell  <carlos@codesourcery.com>
62
63         [BZ #6653]
64         * posix/tst-regex.c (main): Rename to...
65         (do_test): ... this. Remove cmdline option processing.
66         (TIMEOUT): Define.
67         (TEST_FUNCTION): Define.
68         (CMDLINE_OPTIONS): Define.
69
70 2008-06-25  Ulrich Drepper  <drepper@redhat.com>
71
72         [BZ #5210]
73         * configure.in: Add -Werror to -fstack-protector test to catch
74         unsupported architectures.
75         Patch by Gilles Esponasse <g.esp@free.fr>.
76
77 2008-06-17  Joseph Myers  <joseph@codesourcery.com>
78
79         * stdlib/tst-setcontext.c: Set back_in_main before exit if
80         getcontext returns ENOSYS.
81
82 2008-06-18  Ulrich Drepper  <drepper@redhat.com>
83
84         * nscd/connections.c (main_loop_poll): Fix test for read error.
85         (main_loop_epoll): Likewise.
86
87 2008-06-13  Ulrich Drepper  <drepper@redhat.com>
88
89         * sysdeps/posix/getaddrinfo.c: Move _res_hconf_init call to a
90         better place so it is not called when nscd is used.
91
92         * nscd/connections.c: Also recognize and handle changes to the
93         resolver configuration file.
94
95 2008-06-12  Ulrich Drepper  <drepper@redhat.com>
96
97         * time/strftime.c: Pass reference to tzset_called around to handle
98         recursive calls.
99
100         [BZ #6612]
101         * time/strftime.c (__strftime_internal): Call tzset() only
102         when printing timezone-dependent values.
103         Based on a patch by Petr Baudis <pasky@suse.cz>.
104
105         * resolv/nss_dns/dns-host.c (gaih_getanswer): Don't
106         unconditionally use second gaih_getanswer_slice result.
107
108         * sysdeps/posix/getaddrinfo.c (gai_inet): Remove unnecessary test.
109         (getaddrinfo): RES must always be non-NULL.
110
111 2008-06-12  Jakub Jelinek  <jakub@redhat.com>
112
113         * sysdeps/powerpc/powerpc64/fpu/s_llround.S (__llround): Avoid using
114         cr[34] registers.
115         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S (__llroundf): Likewise.
116         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S (__llround):
117         Likewise.
118         * sysdeps/powerpc/powerpc32/fpu/s_lround.S (__lround): Avoid using cr3
119         register.
120
121 2008-06-12  Ulrich Drepper  <drepper@redhat.com>
122
123         * nscd/nscd.h (struct database_dyn): Add inotify_descr and clear_cache
124         fields.
125         * nscd/connections.c (inotify_fd): New variable.
126         (nscd_init): Try to open an inotify descriptor.
127         If successful, watch files for databases using inotify instead of
128         having prune threads stat the files.
129         (nscd_run_prune): Recognize clear_cache flag being set and call
130         prune_cache appropriately.
131         (main_loop_poll): Add inotify descriptor to wait set and handle the
132         reported changes.
133         (main_loop_epoll): Likewise.
134         * nscd/cache.c (prune_cache): Don't stat files for databases if
135         inotify is used.
136         * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]
137         (CFLAGS-connections.c): Add -DHAVE_INOTIFY.
138
139         * nscd/grpcache.c (cache_addgr): Correctly compute size of
140         fixed-size portion of the record.
141         * nscd/servicescache.c (cache_addserv): Likewise.
142         * nscd/pwdcache.c (cache_addpw): Likewise.
143         * nscd/initgrcache.c (addinitgroupsX): Likewise.
144
145 2008-06-11  Ulrich Drepper  <drepper@redhat.com>
146
147         * nscd/mem.c (gc): Initialize obstack earlier so that if we jump
148         out we don't use uninitialized memory.
149
150         * nscd/hstcache.c (cache_addhst): Send correct number of bytes to
151         the client.
152
153 2008-06-10  Ulrich Drepper  <drepper@redhat.com>
154
155         * resolv/nss_dns/dns-host.c (gaih_getanswer_slice): Also log and
156         ignore T_DNAME messages.
157         * resolv/arpa/nameser_compat.h (T_DNAME): Define.
158
159 2008-06-05  Jakub Jelinek  <jakub@redhat.com>
160
161         * misc/regexp.h (compile): Use __REPB_PREFIX macro.
162         Avoid segfault if first GETC returns eof/'\0'/'\n'.
163
164 2008-06-03  Jakub Jelinek  <jakub@redhat.com>
165
166         * nscd/nscd_getserv_r.c (__nscd_getservbyport_r): Pass cp
167         instead of portstr to nscd_getserv_r.  Patch by
168         Roman Kagan <rkagan@mail.ru>.
169
170 2008-05-26  Jim Meyering  <meyering@redhat.com>
171
172         Remove more useless "if" tests before "free".
173         * include/inline-hashtab.h (htab_delete): Likewise.
174         * libio/freopen.c (freopen): Likewise.
175         * libio/freopen64.c (freopen64): Likewise.
176         * locale/programs/ld-collate.c (collate_read): Likewise.
177         * misc/fstab.c (libc_freeres_fn): Likewise.
178         * posix/glob.c (globfree): Likewise.
179
180 2008-05-24  Ulrich Drepper  <drepper@redhat.com>
181
182         * string/Makefile (strop-tests): Add memmem.
183         * string/test-memmem.c: New file.
184         * string/test-string.h (BUF1PAGES): Define to 1 if undefined.
185         (test_init): Size buf1 according to BUF1PAGES.
186
187 2008-05-24  Jakub Jelinek  <jakub@redhat.com>
188
189         * libio/stdio.h (vscanf): Fix -std=c99 redirect.
190         * stdio-common/Makefile (tests): Add scanf16 and scanf17.
191         (CFLAGS-scanf17.c): New.
192         * stdio-common/scanf14.c (main): Add fscanf and scanf tests.
193         * stdio-common/scanf15.c (main): Likewise.
194         * stdio-common/scanf16.c: New file.
195         * stdio-common/scanf17.c: New file.
196
197 2008-05-24  Ulrich Drepper  <drepper@redhat.com>
198
199         * resolv/res_send.c (send_dg): If we already have one of two
200         answers and the server reports SERVFAIL, NOTIMP, or REFUSED, then
201         use the one answer insted of failing.
202
203 2008-02-20  Ryan S. Arnold  <rsa@us.ibm.com>
204
205         * math/libm-test.inc (exp_test): Exclude expl(1000.0L) from
206         being executed on PowerPC as the expected result exceeds IBM
207         long double 128 __LDBL_MAX__.
208
209 2008-05-21  Roland McGrath  <roland@redhat.com>
210
211         * shlib-versions (sparc.*-.*-.*, sparc64.*-.*-.*): Add ABI lines.
212
213         * Makefile (check-data): Use $(abi-name) before other guesses.
214         Look in $(add-ons) dirs before scripts/data/.
215         * elf/Makefile (check-data): Likewise.
216
217         * scripts/soversions.awk: Grok ABI line.
218         * Makeconfig ($(common-objpfx)soversions.mk): Likewise.
219         Emit definition for abi-name variable.
220
221 2008-05-21  Ulrich Drepper  <drepper@redhat.com>
222
223         * string/endian.h: Define new fixed-size hto* and *toh macros only
224         if [__USE_BSD].
225
226         * iconvdata/Depend: Add localedata.
227
228 2008-05-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
229
230         * bits/termios.h (ONLCR): Define under [__USE_XOPEN] too.
231
232 2008-05-08  David S. Miller  <davem@davemloft.net>
233
234         * sysdeps/unix/sysv/linux/sparc/sparc32/setcontext.S: Use
235         HIDDEN_JUMPTARGET.
236         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
237         (__SYSCALL_CLOBBERS): Remove %g* registers.
238         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
239         (__SYSCALL_CLOBBERS): Likewise.
240         * scripts/data/localplt-sparc-linux-gnu.data: New file.
241         * scripts/data/localplt-sparc64-linux-gnu.data: New file.
242
243 2008-05-21  Jakub Jelinek  <jakub@redhat.com>
244
245         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
246         (CALL_ERRNO_LOCATION): Define.
247         (__SYSCALL_STRING, __CLONE_SYSCALL_STRING): Use it.
248         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
249         (CALL_ERRNO_LOCATION): Define.
250         (__SYSCALL_STRING, __CLONE_SYSCALL_STRING): Use it.
251         * sysdeps/unix/sysv/linux/sparc/sparc64/brk.S (__brk): Use
252         HIDDEN_JUMPTARGET for __errno_location call in libc.so.
253
254 2008-05-20  Ulrich Drepper  <drepper@redhat.com>
255
256         * include/inline-hashtab.h (higher_prime_number): Fix type of mid
257         variable.
258
259 2008-05-20  Jakub Jelinek  <jakub@redhat.com>
260
261         * sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h
262         (FIRST_FRAME_POINTER): Define.
263
264 2008-05-09  David S. Miller  <davem@davemloft.net>
265
266         * sysdeps/sparc/sparc64/backtrace.c: New file.
267
268 2008-05-14  David S. Miller  <davem@davemloft.net>
269
270         * sysdeps/sparc/machine-gmon.h: New file.
271         * sysdeps/sparc/sparc-mcount.S: Likewise.
272         * sysdeps/sparc/Makefile: Add sparc-mcount target to
273         sysdep_routines in gmon directory.
274
275 2008-05-19  Jakub Jelinek  <jakub@redhat.com>
276
277         * elf/soinit.c (__EH_FRAME_BEGIN__): Remove.
278
279 2008-05-19  Ulrich Drepper  <drepper@redhat.com>
280
281         * resolv/res_query.c (__libc_res_nquery): In case one of two
282         answer was too short don't try to read that answer's header.
283
284         * resolv/res_send.c (send_dg): In case of timeout and there are
285         two queries and one has been answered, return value indicating
286         success.
287
288 2008-05-18  Ulrich Drepper  <drepper@redhat.com>
289
290         * nscd/cache.c (cache_add): Take additional parameter specifying
291         whether this is in response of a cache refill.  Check alignment
292         of package data.  Revamp waking of pruning thread.
293         (prune_cache): Small optimization.
294         * nscd/nscd.h: Adjust cache_add prototypes.
295         * nscd/aicache.c: Adjust cache_add calls.
296         * nscd/grpcache.c: Likewise.
297         * nscd/hstcache.c: Likewise.
298         * nscd/initgrcache.c: Likewise.
299         * nscd/pwdcache.c: Likewise.
300         * nscd/servicescache.c: Likewise.
301         * nscd/connections.c (restart): Really disable cache use before
302         exec attempt.  If it fails, reenable cache.
303         (nscd_run_prune): Initialize wakeup_time.  After wakeup, set wakeup
304         time to max to be able to notice concurrent cache additions.  Unlock
305         prune_lock while performing gc.  Afterwards compute wakeup time with
306         current wakeup_time value in mind.
307
308 2008-05-17  Ulrich Drepper  <drepper@redhat.com>
309
310         * nscd/mem.c (gc): Avoid stack overflow when allocating move list.
311
312         * nscd/mem.c (gc): Correctly determine highest used array element
313         in mark.
314
315         * nscd/mem.c (markrange): Add assert to check entries are all
316         aligned.  Small cleanup in bitmap use.
317
318         * nscd/nscd.h (mem_in_flight): Replace blockaddr field with
319         blockoff of type nscd_ssize_t.
320         * nscd/mem.c (gc): Simplify markrange call for on-flight blocks.
321         (mempoll_alloc): Record block offset and not address.
322
323         * nscd/mem.c (gc): Fix test for stack overuse.
324
325         * nscd/aicache.c (addhstaiX): Fix a few small problems, cleanups,
326         more asserts.
327
328         * sysdeps/posix/getaddrinfo.c (gaih_inet): If nscd reports no
329         entry is available, believe it.
330
331         * resolv/nss_dns/dns-host.c (gaih_getanswer_slice): If there are
332         no answers return NSS_STATUS_NOTFOUND.
333         (gaih_getanswer): Don't call gaih_getanswer_slice if the answer
334         buffer does not have any content.
335
336 2008-05-16  Ulrich Drepper  <drepper@redhat.com>
337
338         * string/strcasestr.c (CMP_FUNC): Use __strncasecmp, not strncasecmp.
339
340         * sysdeps/posix/getaddrinfo.c (gaih_inet): After gethostbyname4_r
341         lookup, don't assign canon unconditionally.
342
343 2008-05-14  Ulrich Drepper  <drepper@redhat.com>
344
345         * string/Makefile (distribute): Add str-two-way.h.
346
347 2008-03-29  Eric Blake  <ebb9@byu.net>
348
349         Rewrite string searches to O(n) rather than O(n^2).
350         * string/str-two-way.h: New file.  For linear fixed-allocation
351         string searching.
352         * string/memmem.c: New implementation.
353         * string/strstr.c: New implementation.
354         * string/strcasestr.c: New implementation.
355
356 2008-04-11  Paolo Bonzini  <bonzini@gnu.org>
357
358         * posix/regcomp.c (optimize_utf8): Add a note on why we test
359         opr.ctx_type.
360         (calc_first): Initialize constraint field.
361         (duplicate_node_closure): Use it instead of special casing ANCHORS.
362         Use search_duplicated_node to avoid loops.  Fix grammar.
363         (duplicate_node): Merge constraint field for all node types.
364         (calc_eclosure_iter): Look at constraint field for all node types.
365         * posix/regex_internal.c (create_cd_newstate): Don't look at
366         create_cd_newstate.
367
368 2008-05-14  Ulrich Drepper  <drepper@redhat.com>
369
370         [BZ #6428]
371         * configure.in: Don't use $CFLAGS when assembling, use $ASFLAGS.
372
373         [BZ #6442]
374         * string/endian.h: Add macros for fixed-size endian conversion.
375         * bits/byteswap.h: Allow inclusion from <endian.h>.
376         * sysdeps/i386/bits/byteswap.h: Likewise.
377         * sysdeps/ia64/bits/byteswap.h: Likewise.
378         * sysdeps/s390/bits/byteswap.h: Likewise.
379         * sysdeps/x86_64/bits/byteswap.h: Likewise.
380         * string/Makefile (tests): Add tst-endian.
381         * string/tst-endian.c: New file.
382
383         * iconvdata/run-iconv-test.sh: Use = instead of == in test.
384         Patch by Reuben Thomas.
385
386 2008-05-14  Joseph Myers  <joseph@codesourcery.com>
387
388         * iconvdata/Makefile (bug-iconv6-ENV, tst-iconv7-ENV): Define.
389
390 2008-05-14  Ulrich Drepper  <drepper@redhat.com>
391
392         * iconvdata/bug-iconv6.c (do_test): Use de_DE.UTF-8 locale.
393
394         [BZ #6461]
395         * iconv/gconv_simple.c (BODY for __gconv_transform_ascii_internal):
396         Add missing braces.
397         (BODY for __gconv_transform_internal_ascii): Likewise.
398
399         [BZ #6472]
400         * sysdeps/posix/getaddrinfo.c (get_scope): Loopback addresses have
401         to be treated like link-local addresses.
402         (match_prefix): Don't treat IPv4 loopback address special when
403         converting to v4 mapped addressed.
404
405         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Call _res_hconf_init
406         if necessary.
407         * posix/tst-rfc3484.c: Add dummy definition of _res_hconf_init.
408         * posix/tst-rfc3484-2.c: Likewise.
409         * posix/tst-rfc3484-3.c: Likewise.
410
411         * sysdeps/posix/getaddrinfo.c: Implement handling of DCCP, UDPlite,
412         and SCTP.
413
414         * nss/getent.c (ahosts_keys_int): Handle all known socket types.
415
416         * inet/netinet/in.h (IPPIPPROTO_DCCP, IPPROTO_UDPLITE): Define.
417
418         * sysdeps/unix/sysv/linux/bits/socket.h (SOCK_DCCP): Define.
419
420 2008-05-13  Ulrich Drepper  <drepper@redhat.com>
421
422         * po/lt.po: New file.  From Lituanian translation team.
423
424 2008-01-30  Alexandre Oliva  <aoliva@redhat.com>
425
426         Introduce TLS descriptors for i386 and x86_64.
427         * include/inline-hashtab.h: New file, copied from 2005's
428         libiberty, with fix for memory leak imported afterwards by
429         Glauber de Oliveira Costa.
430         * elf/tlsdeschtab.h: New file.
431         * elf/dl-reloc.c (_dl_try_allocate_static_tls): Extract from...
432         (_dl_allocate_static_tls): ... here.  Rearrange failure path.
433         (CHECK_STATIC_TLS): Move to...
434         * elf/dynamic-link.h: ... this file.
435         (TRY_STATIC_TLS): New macro.
436         * elf/dl-conflict.c (CHECK_STATIC_TLS, TRY_STATIC_TLS): Override.
437         * elf/elf.h (R_386_TLS_GOTDESC, R_386_TLS_DESC_CALL,
438         R_386_TLS_DESC): Define.
439         (R_X86_64_PC64, R_X86_GOTOFF64, R_X86_64_GOTPC32): Merge from
440         binutils.
441         (R_X86_64_GOTPC32_TLSDESC, R_X86_64_TLSDESC_CALL,
442         R_X86_64_TLSDESC): Define.
443         (R_386_NUM, R_X86_64_NUM): Adjust.
444         * sysdeps/i386/Makefile (sysdep-dl-routines, sysdep_routines,
445         sysdep-rtld-routines): Add tlsdesc and dl-tlsdesc for elf subdir.
446         (gen-as-const-headers): Add tlsdesc.sym to csu subdir.
447         * sysdeps/i386/dl-lookupcfg.h: New file.  Introduce _dl_unmap to
448         release tlsdesc_table.
449         * sysdeps/i386/dl-machine.h: Include dl-tlsdesc.h.
450         (elf_machine_type_class): Mark R_386_TLS_DESC as PLT class.
451         (elf_machine_rel): Handle R_386_TLS_DESC.
452         (elf_machine_rela): Likewise.
453         (elf_machine_lazy_rel): Likewise.
454         (elf_machine_lazy_rela): Likewise.
455         * sysdeps/i386/dl-tls.h (struct dl_tls_index): Name it.
456         * sysdeps/i386/dl-tlsdesc.S: New file.
457         * sysdeps/i386/dl-tlsdesc.h: New file.
458         * sysdeps/i386/tlsdesc.c: New file.
459         * sysdeps/i386/tlsdesc.sym: New file.
460         * sysdeps/i386/bits/linkmap.h (struct link_map_machine): Add
461         tlsdesc_table.
462         * sysdeps/x86_64/Makefile (sysdep-dl-routines, sysdep_routines,
463         sysdep-rtld-routines): Add tlsdesc and dl-tlsdesc for elf subdir.
464         (gen-as-const-headers): Add tlsdesc.sym to csu subdir.
465         * sysdeps/x86_64/dl-lookupcfg.h: New file.  Introduce _dl_unmap to
466         release tlsdesc_table.
467         * sysdeps/x86_64/dl-machine.h: Include dl-tlsdesc.h.
468         (elf_machine_runtime_setup): Set up lazy TLSDESC GOT entry.
469         (elf_machine_type_class): Mark R_X86_64_TLSDESC as PLT class.
470         (elf_machine_rel): Handle R_X86_64_TLSDESC.
471         (elf_machine_rela): Likewise.
472         (elf_machine_lazy_rel): Likewise.
473         * sysdeps/x86_64/dl-tls.h (struct dl_tls_index): Name it.
474         (__tls_get_addr): Do not declare for non-shared compiles.
475         * sysdeps/x86_64/dl-tlsdesc.S: New file.
476         * sysdeps/x86_64/dl-tlsdesc.h: New file.
477         * sysdeps/x86_64/tlsdesc.c: New file.
478         * sysdeps/x86_64/tlsdesc.sym: New file.
479         * sysdeps/x86_64/bits/linkmap.h (struct link_map_machine): Add
480         tlsdesc_table for both 32- and 64-bit structs.
481
482 2008-05-11  Ulrich Drepper  <drepper@redhat.com>
483
484         * elf/dl-tls.c (__tls_get_addr): Optimize by moving slow path in
485         its own function.  This reduces the frame setup costs and more.
486
487 2008-02-11  Joseph Myers  <joseph@codesourcery.com>
488
489         [BZ #3406]
490         * sysdeps/ieee754/flt-32/w_expf.c (o_threshold): Correct value.
491         * math/libm-test.inc (exp_test): Test 88.72269439697265625.
492
493 2008-05-11  Ulrich Drepper  <drepper@redhat.com>
494
495         * io/openat.c (__openat_2): Also pass fd to __openat.
496         * io/openat64.c (__openat64_2): Also pass fd to __openat64.
497         Patch by Kristian Van Der Vliet <vanders@liqwyd.com>.
498
499         * string/tester.c (test_memcmp): Add a few more tests.
500         Patch by Mats Erik Andersson <ynglingatal@comhem.se>.
501
502 2008-05-10  Ulrich Drepper  <drepper@redhat.com>
503
504         * nscd/cache.c (cache_add): Before returning with failure and this
505         is the first use of the record, mark it as unusable.
506         * nscd/aicache.c: Don't touch the dataset after cache_add returns
507         reporting a failure.
508         * nscd/grpcache.c: Likewise
509         * nscd/hstcache.c: Likewise.
510         * nscd/initgrcache.c: Likewise.
511         * nscd/pwdcache.c: Likewise.
512         * nscd/servicescache.c: Likewise.
513
514 2008-05-10  Roland McGrath  <roland@redhat.com>
515
516         [BZ #6505]
517         * sysdeps/unix/sysv/linux/sys/user.h: Replace with #error stub.
518
519 2008-05-08  David S. Miller  <davem@davemloft.net>
520
521         * misc/truncate64.c (truncate64): Use __truncate not truncate.
522
523         * sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee751_j0l): Use __finitel.
524         (__ieee754_y0l): Likewise.
525         * sysdeps/ieee754/ldbl-128/e_j1l.c (__ieee754_j1l): Likewise.
526         (__ieee754_y1l): Likewise.
527         * sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l): Use __ldexpl.
528         * sysdeps/ieee754/ldbl-128/s_log1pl.c: Kill bogus prototypes for
529         frexpl and ldexpl.  math_private.h provides them and the latter
530         is not even used.
531         (__log1pl): Use __frexpl.
532
533 2008-05-10  Ulrich Drepper  <drepper@redhat.com>
534
535         * include/resolv.h: Adjust __libc_res_nquery and __libc_res_nsend
536         prototypes.
537         * include/arpa/nameser_compat.h: Define T_UNSPEC.
538         * nis/Versions (libnss_nis): Export _nss_nis_gethostbyname4_r.
539         (libnss_nisplus): Export _nss_nisplus_gethostbyname4_r.
540         * nis/nss_nis/nis-hosts.c (LINE_PARSER): Change to also handle
541         af==AF_UNSPEC.
542         (_nss_nis_gethostbyname4_r): New function.
543         * nis/nss_nisplus/nisplus-hosts.c (_nss_nisplus_parse_hostent):
544         Change to also handle af==AF_UNSPEC.
545         (get_tablename): New function.  Use it to avoid duplication.
546         (_nss_nisplus_gethostbyname4_r): New function.
547         * nscd/aicache.c (addhstaiX): Use gethostbyname4_r function is
548         available.
549         * nss/Versions (libnss_files): Export _nss_files_gethostbyname4_r.
550         * nss/nss.h: Define struct gaih_addrtuple.
551         * nss/nss_files/files-hosts.c (LINE_PARSER): Change to also handle
552         af==AF_UNSPEC.
553         (_nss_files_gethostbyname4_r): New function.
554         * resolv/Versions (libnss_dns): Export _nss_dns_gethostbyname4_r.
555         * resolv/gethnmaddr.c: Adjust __libc_res_nsearch and __libc_res_nquery
556         calls.
557         * resolv/res_query.c (__libc_res_nquery): Take two additional
558         parameters for second answer buffer.  Handle type=T_UNSPEC to mean
559         look up IPv4 and IPv6.
560         Change all callers.
561         * resolv/res_send.c (__libc_res_nsend): Take five aditional parameters
562         for an additional query and answer buffer.  Pass to send_vc and
563         send_dg.
564         (send_vc): Send possibly two requests and receive two answers.
565         (send_dg): Likewise.
566         * resolv/nss_dns/dns-host.c: Adjust calls to __libc_res_nsearch and
567         __libc_res_nquery.
568         (_nss_dns_gethostbyname4_r): New function.
569         (gaih_getanswer_slice): Likewise.
570         (gaih_getanswer): Likewise.
571         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Adjust
572         __libc_res_nquery call.
573         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
574         (_nss_dns_getnetbyname_r): Adjust __libc_res_nsearch call.
575         * sysdeps/posix/getaddrinfo.c: Use gethostbyname4_r function is
576         available.
577
578 2008-05-05  David S. Miller  <davem@davemloft.net>
579
580         * sysdeps/sparc/sparc32/Makefile: Use -mcpu=v7 for initfini.s build.
581         * sysdeps/sparc/sparc64/Makefile: Use -mcpu=v9 for initfini.s build.
582
583 2007-09-14  Samuel Thibault  <samuel.thibault@ens-lyon.org>
584
585         Fix termios bit macros.
586         Move *DLY definitions where they belong, in termios.h.
587         Add *[0-3] definitions.
588         Fixes confusion between VT and FF.
589         * sysdeps/mach/hurd/bits/ioctls.h (NL0, NL1, TAB0, TAB1, TAB2, CR0,
590         CR1, CR2, CR3, FF0, FF1, BS0, BS1): Undefine these at start if they
591         are already defined to avoid collision with termios.h.
592         (NLDLY, TABDLY, TAB3, CRDLY, VTDLY, BSDLY): Remove macros.
593         * bits/termios.h [__USE_MISC || __USE_XOPEN] (NL0, NL1, TAB0,
594         TAB1, TAB2, CR0, CR1, CR2, CR3, FF0, FF1, BS0, BS1): Likewise.
595         [__USE_BSD || __USE_XOPEN] (OCRNL, ONOCR, ONLRET): New macros.
596         [__USE_MISC || __USE_XOPEN] (NLDLY, NL0, NL1, TABDLY, TAB0, TAB1, TAB2,
597         TAB3, CRDLY, CR0, CR1, CR2, CR3, FFDLY, FF0, FF1, BSDLY, BS0, BS1,
598         VTDLY, VT0, VT1): New macros.
599         [__USE_GNU] (OLCUC): Change value of macro.
600         [__USE_XOPEN] (OFILL): New macro.
601         [__USE_BSD] (CRTSCTS): Change value.
602         (CRTS_IFLOW, CCTS_OFLOW): Change into compatibility macros.
603         [__USE_BSD] (CDTRCTS, CHWFLOW): New macros.
604         (B7200, B14400, B28800, B76800): New macros.
605
606 2008-05-01  David S. Miller  <davem@davemloft.net>
607
608         * sysdeps/unix/sysv/linux/sparc/sparc32/ucontext_i.sym: New file.
609         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile [$(subdir) = stdlib]:
610         (gen-as-const-headers): Add it.
611         * sysdeps/unix/sysv/linux/sparc/sparc32/getcontext.S: New file.
612         * sysdeps/unix/sysv/linux/sparc/sparc32/makecontext.c: Likewise.
613         * sysdeps/unix/sysv/linux/sparc/sparc32/setcontext.S: Likewise.
614         * sysdeps/unix/sysv/linux/sparc/sparc32/swapcontext.S: Likewise.
615
616         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S: Add support for
617         six system call parameters.
618         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S: Likewise.
619
620 2008-04-30  Ulrich Drepper  <drepper@redhat.com>
621
622         * sysdeps/unix/sysv/linux/bits/resource.h: Define RUSAGE_THREAD and
623         RUSAGE_LWP.
624         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
625         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
626
627 2008-04-30  Jakub Jelinek  <jakub@redhat.com>
628
629         * stdlib/tst-setcontext.c: Include unistd.h.
630
631 2008-04-25  David S. Miller  <davem@davemloft.net>
632
633         * sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c (semctl):
634         Pass "union semun" properly in to sys_ipc, it must be passed
635         by value, not by reference.
636
637 2008-04-22  Jakub Jelinek  <jakub@redhat.com>
638
639         * nscd/Makefile (nscd-cflags): Set back to -fpie.
640         * nscd/nscd.h (mem_in_flight): Add attribute_tls_model_ie.
641         * nscd/connections.c (mem_in_flight): Likewise.
642
643         * nscd/nscd.h (dbs): Make hidden.
644
645         * sysdeps/unix/sysv/linux/times.c (__times): Fix check for EFAULT.
646         Avoid returning -1, return 0 instead.
647
648 2008-04-19  Ulrich Drepper  <drepper@redhat.com>
649
650         * resolv/res_mkquery.c (__res_nopt): Use NS_PUT16 instead of ns_put16.
651
652 2008-04-15  Ulrich Drepper  <drepper@redhat.com>
653
654         [BZ #5209]
655         * sysdeps/unix/sysv/linux/times.c: New file.
656
657         [BZ #5381]
658         * nscd/nscd.h: Define enum in_flight, mem_in_flight, and
659         mem_in_flight_list variables.  Add new parameter to mempool_alloc
660         prototype.
661         * nscd/mem.c (mempool_alloc): Take additional parameter.  Initialize
662         appropriate mem_in_flight element.
663         (gc): Take allocations which have not yet been committed to the
664         database into account.
665         * nscd/cache.c (cache_add): Add new parameter to mempool_alloc call.
666         Reset mem_in_flight before returning.
667         * nscd/connections.c (nscd_run_worker): Initialize mem_in_flight and
668         cue it up in mem_in_flight_list.
669         * nscd/aicache.c: Adjust mempool_alloc call.
670         * nscd/grpcache.c: Likewise.
671         * nscd/hstcache.c: Likewise.
672         * nscd/initgrcache.c: Likewise.
673         * nscd/pwdcache.c: Likewise.
674         * nscd/servicescache.c: Likewise.
675         * nscd/Makefile (nscd-flags): Until ld is fixed, use -fpic instead
676         of -fpie.
677
678         * nscd/connections.c (handle_request): Provide better error message
679         in case SELinux forbids the service.
680
681         * version.h (VERSION): Bump to 2.8.90.
682
683 2008-04-17  Jakub Jelinek  <jakub@redhat.com>
684
685         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include fcntl.h.
686
687 2008-04-11  Ulrich Drepper  <drepper@redhat.com>
688
689         * sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h (__signbitl):
690         Also use for 32-bit.
691         * sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c (__nearbyintl): Use
692         __nextafter instead of nextafter to avoid local PLT.
693         * sysdeps/powerpc/fpu/e_sqrt.c: Avoid call to fetestexcept.
694         * sysdeps/powerpc/fpu/e_sqrtf.c: Likewise.
695
696         * scripts/data/localplt-powerpc64-linux-gnu.data: New file.
697
698         * sysdeps/powerpc/fpu/fenv_libc.h: Add libm_hidden_proto for
699         __fe_nomask_env.
700         * sysdeps/powerpc/fpu/fe_nomask.c: Add libm_hidden_def.  Include
701         <fenv_libc.h> instead of <fenv.h>.
702         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: Likewise.
703         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: Likewise.
704
705         * sysdeps/powerpc/bits/fenv.h: Make safe for C++.
706
707         * sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h: New file.
708         * sysdeps/powerpc/fpu/fegetexcept.c (__fegetexcept): Rename
709         function from fegetexcept and make old name weak alias.
710         * include/fenv.h: Declare __fegetexcept.
711         * sysdeps/powerpc/fpu/fedisblxcpt.c: Use __fegetexcept instead of
712         fegetexcept.
713         * sysdeps/powerpc/fpu/feenablxcpt.c: Likewise.
714         * sysdeps/powerpc/fpu/fraiseexcpt.c (__feraiseexcept): Avoid call
715         to fetestexcept.
716         * sysdeps/ieee754/ldbl-128ibm/s_log1pl.c (__log1pl): Use __frexpl
717         instead of frexpl to avoid local PLT.
718         * math/s_significandl.c (__significandl): Use __ilogbl instead of
719         ilogbl to avoid local PLT.
720         * sysdeps/ieee754/ldbl-128ibm/s_expm1l.c (__expm1l): Use __ldexpl
721         instead of ldexpl to avoid local PLT.
722         * sysdeps/ieee754/ldbl-128ibm/e_expl.c (__ieee754_expl): Use
723         __roundl not roundl to avoid local PLT.
724         * sysdeps/ieee754/ldbl-128/e_j0l.c: Use function names which avoid
725         local PLTs.  Use __sincosl instead of separate sinl and cosl
726         calls.
727         * sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise.
728
729         * sysdeps/unix/sysv/linux/configure.in: Bump minimal kernel
730         version for ppc64 to 2.4.21 since without it makecontext will fail.
731
732         * elf/tls-macros.h [__powerpc64__] (__TLS_GET_ADDR): Define according
733         to the ABI in use.
734         [__powerpc64__] (TLS_LD): Use __TLS_GET_ADDR instead of
735         .__tls_get_addr.
736         [__powerpc64__] (TLS_GD): Likewise.
737
738 2007-11-20  Ryan S. Arnold  <rsa@us.ibm.com>
739
740         [BZ #4997]
741         * sysdeps/powerpc/powerpc32/fpu/s_lround.S (__lround): Fixed erroneous
742         result when x is +/-nextafter(+/-0.5,-/+1) i.e. all 1's in the
743         mantissa.
744         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S (__llround):
745         Likewise.  Also account for when x is an odd number between 2^52
746         and 2^53-1.
747         * sysdeps/powerpc/powerpc64/fpu/s_llround.S (__llround): Likewise.
748         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S (__llroundf): Likewise.
749         * math/libm-test.inc (lround_test, llround_test): Added test cases to
750         detect aforementioned erroneous conditions.
751
752 2008-04-11  Jakub Jelinek  <jakub@redhat.com>
753
754         * configure.in: Check for -fno-section-anchors in addition to
755         -fno-toplevel-reorder.
756
757 2008-04-11  Ulrich Drepper  <drepper@redhat.com>
758
759         * include/features.h (__GLIBC_MINOR__): Bump to 8.
760
761         * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: Remove duplicate comment.
762         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: Likewise.
763         * sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: Likewise.
764         * sysdeps/powerpc/powerpc64/fpu/s_lrint.S: Likewise.
765         * sysdeps/powerpc/powerpc64/fpu/s_lround.S: Likewise.
766         * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: Likewise.
767
768 2008-04-11  Jakub Jelinek  <jakub@redhat.com>
769
770         [BZ #5443]
771         * time/era.c: Transform __libc_setlocale_lock into rwlock.
772         * time/alt_digit.c: Likewise.
773         * wcsmbs/wcsmbsload.c: Likewise.
774
775 2008-04-10  Ulrich Drepper  <drepper@redhat.com>
776
777         * version.h (VERSION): Bump to 2.8.
778
779         * timzeone/asia: Update from tzdata2008b.
780         * timezone/backward: Likewise.
781         * timezone/europe: Likewise.
782         * timezone/northamerica: Likewise.
783         * timezone/southamerica: Likewise.
784         * timezone/iso3166.tab: Likewise.
785         * timezone/leapseconds: Likewise.
786         * timezone/zone.tab: Likewise.
787         * timezone/private.h: Update from tzcode2008a.
788         * timezone/zdump.c: Likewise.
789         * timezone/zic.c: Likewise.
790
791 2008-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
792
793         [BZ #5741]
794         * sysdeps/powerpc/powerpc64/dl-machine.h (PPC_DCBT, PPC_DCBF):
795         Define additonal Data Cache Block instruction macros.
796         (elf_machine_fixup_plt): Add dcbt for opd and plt entries.
797         Replace dcbst with dcbf and sync with sync/isync.
798
799 2008-02-21  Alan Modra  <amodra@bigpond.net.au>
800
801         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_type_class):
802         Always set ELF_RTYPE_CLASS_PLT.
803         (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p): Delete.
804
805 2008-04-03  Steven Munroe  <sjmunroe@us.ibm.com>
806
807         * sysdeps/powerpc/powerpc32/power4/hp-timing.c: New file.
808         * sysdeps/powerpc/powerpc32/power4/hp-timing.h: New file.
809         * sysdeps/powerpc/powerpc64/hp-timing.h [_ARCH_PWR4] (HP_TIMING_NOW):
810         For ISA 2.01 and later replace mftb with mfspr 268.
811
812 2008-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
813
814         [BZ #5768]
815         * sysdeps/powerpc/fpu/Makefile (libm-tests): Add test-powerpc-snan.
816         * sysdeps/powerpc/fpu/test-powerpc-snan.c: New file.
817
818 2008-02-18  Steven Munroe  <sjmunroe@us.ibm.com>
819
820         [BZ #5768]
821         * sysdeps/powerpc/powerpc32/fpu/s_isnan.S: New file.
822         * sysdeps/powerpc/powerpc32/fpu/s_isnan.c: Removed.
823         * sysdeps/powerpc/powerpc64/fpu/s_isnan.S: New file.
824         * sysdeps/powerpc/powerpc64/fpu/s_isnan.c: Removed.
825
826 2008-04-10  Jakub Jelinek  <jakub@redhat.com>
827
828         * stdlib/tst-makecontext.c (othervar): New variable.
829         (cf): Test sign extending the argument to long.
830
831 2008-03-03  Steven Munroe  <sjmunroe@us.ibm.com>
832
833         * sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S: New file.
834         * sysdeps/powerpc/powerpc32/power5/fpu/s_isnanf.S: New file.
835         * sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S: New file.
836         * sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S: New file.
837         * sysdeps/powerpc/powerpc64/power5/fpu/s_isnan.S: New file.
838         * sysdeps/powerpc/powerpc64/power6/fpu/s_isnan.S: New file.
839         * sysdeps/powerpc/powerpc64/power6x/fpu/s_isnan.S: New file.
840
841 2008-02-22  Alan Modra  <amodra@bigpond.net.au>
842
843         * elf/Makefile (tests): Substitute tests-vis-yes here.
844         (tests-vis-yes): Delete.
845         (modules-name, modules-vis-yes): Similarly.
846
847 2008-02-12  Pete Eberlein  <eberlein@us.ibm.com>
848
849         [BZ #4407]
850         * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (__ieee754_lgammal_r):
851         Preserve sign in signgamp when x is zero.
852
853 2007-10-26  Steven Munroe  <sjmunroe@us.ibm.com>
854
855         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S: New File.
856         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: Removed.
857         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S: New File.
858         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.c: Removed.
859         * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S: New File.
860         * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S: New File.
861
862 2008-04-09  Ulrich Drepper  <drepper@redhat.com>
863
864         [BZ #4314]
865         * sysdeps/i386/i686/memcpy.S: Optimize copying of equally aligned
866         buffers.
867
868         [BZ #5209]
869         * sysdeps/unix/sysv/syscalls.list: The times syscall doesn't have
870         a reserved error value.
871
872         * stdlib/tst-makecontext.c: Change parameter to cf to negative
873         value to check for correct sign extension.
874
875         [BZ #5436]
876         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
877         Copy 64-bit parameter values even though this is not required in
878         the standard.
879
880         * sysdeps/unix/sysv/linux/x86_64/vfork.S (__vfork): Record return
881         PC save.
882
883 2008-02-14  Daniel Jacobowitz  <dan@codesourcery.com>
884
885         * sysdeps/unix/sysv/linux/i386/vfork.S (__vfork): Record return
886         PC save.
887
888 2008-04-09  Jakub Jelinek  <jakub@redhat.com>
889
890         * nss_files/files-XXX.c (_nss_files_getXXent_r): Restore saved errno.
891
892 2008-04-09  Ulrich Drepper  <drepper@redhat.com>
893
894         [BZ #5998]
895         * libio/iofwrite.c (_IO_fwrite): Return correct count if flushing
896         in line-buffered stream failed.
897         * libio/iofwrite_u.c (fwrite_unlocked): Likewise.
898
899 2008-04-08  Ulrich Drepper  <drepper@redhat.com>
900
901         [BZ #6024]
902         * scripts/abi-versions.awk: If the version specified by
903         --enable-oldest-abi is older than the first version for this
904         architecture, use the default version.
905
906         * locale/programs/ld-collate.c (collate_read): Ignore script lines
907         as well when ignoring the whole category.
908
909 2008-04-07  Ulrich Drepper  <drepper@redhat.com>
910
911         [BZ #6042]
912         * sysdeps/unix/sysv/linux/net/ethernet.h: Add a few more
913         ETHERTYPE_* definitions.
914         Patch partly by Aurelien Jarno <aurelien@aurel32.net>.
915
916 2008-04-07  Jakub Jelinek  <jakub@redhat.com>
917
918         * stdlib/mbtowc.c (__no_r_state): Remove.
919         (mbtowc): New static state variable.  Use it instead of
920         __no_r_state.
921         * stdlib/wctomb.c (__no_r_state): Remove extern decl.
922         (__wctomb_state): New hidden variable.
923         (wctomb): Use __wctomb_state instead of __no_r_state.
924         * debug/wctomb_chk.c (__no_r_state): Remove extern decl.
925         (__wctomb_state): New extern decl.
926         (__wctomb_chk): Use __wctomb_state instead of __no_r_state.
927
928 2008-04-07  Ulrich Drepper  <drepper@redhat.com>
929
930         [BZ #5475]
931         * resolv/res_init.c: Handle scope IDs in resolv.conf.
932
933 2008-04-07  Jakub Jelinek  <jakub@redhat.com>
934
935         * malloc/mtrace.pl: Use $@ instead of $* to keep perl 5.10 quiet.
936
937 2008-04-06  Ulrich Drepper  <drepper@redhat.com>
938
939         * po/nl.po: Update from translation team.
940
941 2008-03-31  Ulrich Drepper  <drepper@redhat.com>
942
943         [BZ #6007]
944         * string/strfry.c: Handle empty strings again.
945
946 2008-03-30  Ulrich Drepper  <drepper@redhat.com>
947
948         [BZ #5443]
949         * intl/dcigettext.c (__dcigettext): Get reader lock for locale data
950         before looking for translation.
951         * locale/duplocale.c: Transform __libc_setlocale_lock into rwlock.
952         * locale/freelocale.c: Likewise.
953         * locale/newlocale.c: Likewise.
954         * locale/setlocale.c: Likewise.
955         Based partially on a patch by ryo@np.css.fujitsu.com.
956
957 2008-03-30  Jakub Jelinek  <jakub@redhat.com>
958
959         * intl/dcigettext.c (_nl_find_msg): Reread nconversions after
960         acquiring wrlock.  Do conv_tab allocation while holding lock.
961         * intl/Makefile: Add rules to build and run tst-gettext6.
962         * intl/tst-gettext6.c: New test.
963         * intl/tst-gettext6.sh: New file.
964
965 2008-03-30  Ulrich Drepper  <drepper@redhat.com>
966
967         * po/nl.po: Update from translation team.
968
969         * sysdeps/unix/opendir.c (__alloc_dir): If allocation fails for size
970         provided through st_blksize, try the default size before giving up.
971
972 2008-03-29  Ulrich Drepper  <drepper@redhat.com>
973
974         * stdio-common/vfprintf.c (vfprintf): Correct overflow test.
975
976         [BZ #5939]
977         * sysdeps/posix/tempname.c (__gen_tempname): Correct flag selection.
978
979         * posix/getopt.c (_getopt_internal_r): Remove old POSIX-demanded
980         error message.  POSIX today does not require the messages to be in
981         a specific form.  Suggested by Jim Meyering <jim@meyering.net>.
982
983         [BZ #5979]
984         * sunrpc/auth_unix.c: Unify printed strings.
985         * sunrpc/clnt_tcp.c: Likewise.
986         * sunrpc/clnt_udp.c: Likewise.
987         * sunrpc/clnt_unix.c: Likewise.
988         * sunrpc/svc_tcp.c: Likewise.
989         * sunrpc/svc_udp.c: Likewise.
990         * sunrpc/svc_unix.c: Likewise.
991         * sunrpc/xdr.c: Likewise.
992         * sunrpc/xdr_array.c: Likewise.
993         * sunrpc/xdr_rec.c: Likewise.
994         * sunrpc/xdr_ref.c: Likewise.
995         * locale/programs/ld-time.c (time_finish): Unify messages.
996         * locale/programs/locfile.c (handle_copy): Fix typo.
997         * nscd/nscd.c (options): Fix typo.
998
999         [BZ #5995]
1000         * stdlib/strtod_l.c: Use correct sign for result in one more
1001         underflow case.
1002         Patch by Eric Blake <ebb9@byu.net>.
1003
1004 2008-03-27  Jakub Jelinek  <jakub@redhat.com>
1005
1006         * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Add open
1007         and creat system calls.
1008         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove open system
1009         call.
1010         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove open and creat
1011         system calls.
1012         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
1013         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
1014         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
1015
1016 2008-03-27  Ulrich Drepper  <drepper@redhat.com>
1017
1018         * sysdeps/unix/sysv/linux/bits/local_lim.h: Undefined ARG_MAX if
1019         <linux/limits.h> has defined it.
1020         * sysdeps/unix/sysv/linux/sys/param.h: Define NCARGS to the legacy
1021         ARG_MAX value and prevent ARG_MAX from being defined by the kernel
1022         headers.
1023         * sysdeps/unix/sysv/linux/sysconf.c: Define legacy_ARG_MAX and use
1024         it instead of ARG_MAX.
1025
1026 2008-03-25  Jakub Jelinek  <jakub@redhat.com>
1027
1028         * posix/gai.conf: Fix comment for scope nullbits.
1029         * sysdeps/posix/getaddrinfo.c (gaiconf_init): If /bits is not present,
1030         default to 128 bits for v4 mapped addresses.
1031
1032 2008-03-07  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1033
1034         * sysdeps/s390/fpu/fegetenv.c (fegetenv): Remove PTRACE_PEEKUSER
1035         ptrace call to get the ieee_instruction_pointer from the kernel.
1036         * sysdeps/s390/fpu/fesetenv.c (fesetenv): Remove PTRACE_POKEUSER
1037         ptrace call to set the ieee_instructtion_pointer.
1038         * sysdeps/unix/sysv/linux/s390/sys/user.h (struct _user_regs_struct):
1039         Add comment that ieee_instruction_pointer is always 0.
1040
1041 2008-03-09  Andreas Jaeger  <aj@suse.de>
1042
1043         [BZ #5857]
1044         * sysdeps/ieee754/dbl-64/s_rint.c (__rint): Handle j0==18.
1045         * sysdeps/ieee754/dbl-64/s_nearbyint.c (__nearbyint): Likewise.
1046         Patch by Mark Elliott <mark.h.elliott@lmco.com>.
1047
1048         * math/libm-test.inc (nearbyint_test): Add new test cases from #5857.
1049         (rint_test): Likewise.
1050
1051 2008-03-24  Ulrich Drepper  <drepper@redhat.com>
1052
1053         * nis/nis_call.c (nis_server_cache_search): Save errno around stat
1054         call.
1055         (__nisfind_server): Similar for open readColdStartFile call.
1056         Patch partially by Jim Meyering.
1057         * nss/nss_files/files-XXX.c (_nss_files_getXXent_r): Save errno
1058         around internal_setent call.
1059
1060         * po/vi.po: New Vietnamese translation.
1061
1062         * sysdeps/unix/sysv/linux/adjtime.c: Correctly use
1063         ADJ_OFFSET_SS_READ.
1064
1065         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags,
1066         remove CLONE_STOPPED.
1067
1068 2008-02-10  Jim Meyering  <meyering@redhat.com>
1069
1070         Remove useless "if" before "free":
1071         * elf/ldconfig.c (parse_conf_include): Likewise.
1072         * gmon/gmon.c (weak_alias): Likewise.
1073         * iconv/gconv_conf.c (__gconv_get_path): Likewise.
1074         * inet/rcmd.c (__validuser2_sa): Likewise.
1075         * intl/bindtextdom.c (set_binding_values): Likewise.
1076         * intl/loadmsgcat.c (_nl_load_domain, _nl_unload_domain): Likewise.
1077         * libio/genops.c (save_for_backup): Likewise.
1078         * libio/wgenops.c (save_for_wbackup): Likewise.
1079         * locale/programs/ld-collate.c (collate_read): Likewise.
1080         * locale/programs/linereader.c (get_string): Likewise.
1081         * nis/nss_compat/compat-pwd.c (give_pwd_free): Likewise.
1082         * nis/nss_compat/compat-spwd.c (give_spwd_free): Likewise.
1083         * resolv/res_debug.c (do_section): Likewise.
1084         * sunrpc/xdr_sizeof.c (x_inline, xdr_sizeof): Likewise.
1085         * sysdeps/mach/hurd/if_index.c (libc_hidden_def): Likewise.
1086         * sysdeps/posix/sprofil.c (__sprofil): Likewise.
1087         * time/lc-time-cleanup.c (_nl_cleanup_time): Likewise.
1088         * time/tzset.c (tzset_internal): Likewise.
1089
1090 2008-03-18  Jakub Jelinek  <jakub@redhat.com>
1091
1092         * sysdeps/unix/sysv/linux/dl-sysdep.h: Use __ASSEMBLER__ instead
1093         of ASSEMBLER.
1094
1095 2008-03-11  Ulrich Drepper  <drepper@redhat.com>
1096
1097         [BZ #5903]
1098         * iconv/iconv_charmap.c (charmap_conversion): Pass name of output file
1099         not stream for output file.  Open output file here.
1100         * iconv/iconv_prog.c (process_lock): Take pointer to output stream
1101         and output file name.
1102         (process_fd): Likewise.
1103         (process_file): Likewise.
1104         (main): Adjust callers of changed functions.
1105         * iconv/iconv_prog.h: Adjust prototype.
1106
1107 2008-03-09  Andreas Jaeger  <aj@suse.de>
1108
1109         [BZ #5753]
1110         * sysdeps/ia64/ieee754.h: Use protected namespace
1111         __BIG_ENDIAN/__LITTLE_ENDIAN.
1112         * sysdeps/ieee754/ieee754.h: Likewise.
1113         Patch by Aurelien Jarno <aurelien@aurel32.net>.
1114
1115 2008-03-08  Roland McGrath  <roland@frob.com>
1116
1117         * hurd/hurdsig.c (_hurd_internal_post_signal): When normal rules would
1118         ignore a signal that came from a machine exception, treat it as a
1119         fatal core-dump signal instead.
1120         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
1121
1122         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
1123         Clear DF bit in thread state's eflags.
1124         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
1125
1126 2008-03-08  Ulrich Drepper  <drepper@redhat.com>
1127
1128         [BZ #5774]
1129         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Consume closing brace
1130         of NAN(...) sequence.
1131         * stdlib/Makefile (tests): Add tst-strtod6.
1132         * stdlib/tst-strtod6.c: New file.
1133
1134         * inet/inet6_opt.c (inet6_opt_init): Check extlen for overflow.
1135
1136         [BZ #5762]
1137         * posix/getopt.c (_getopt_internal_r): Clarify error message by
1138         putting offending option character in quotes.  Clean up error
1139         messages.
1140         * po/be.po: Adjust msgstr in translation file.
1141         * po/bg.po: Likewise.
1142         * po/ca.po: Likewise.
1143         * po/cs.po: Likewise.
1144         * po/da.po: Likewise.
1145         * po/de.po: Likewise.
1146         * po/es.po: Likewise.
1147         * po/fr.po: Likewise.
1148         * po/hr.po: Likewise.
1149         * po/ko.po: Likewise.
1150         * po/nl.po: Likewise.
1151         * po/rw.po: Likewise.
1152         * po/sk.po: Likewise.
1153         * po/sv.po: Likewise.
1154         * po/tr.po: Likewise.
1155         * po/zh_CN.po: Likewise.
1156         * po/zh_TW.po: Likewise.
1157
1158         [BZ #5760]
1159         * inet/inet6_opt.c (inet6_opt_init): Fix ip6h_len computation.
1160         Patch by Roland Bless <roland@bless.de>.
1161
1162         * sysdeps/unix/sysv/linux/dl-sysdep.c: Avoid unnecessary code for
1163         .o file.
1164         * elf/Makefile (routines): Add dl-sysdep.
1165         (elide-routines.os): Likewise.
1166
1167 2008-03-07  Ulrich Drepper  <drepper@redhat.com>
1168
1169         [BZ #5786]
1170         * elf/dl-sysdep.c: Undefine ROUND after use.
1171         * sysdeps/generic/ldsodefs.h [HAVE_DL_DISCOVER_OSVERSION]
1172         (struct rtld_global_ro): Add _dl_tls_get_addr_soft element.
1173         * elf/rtld.c (rtld_global_ro): Initialize _dl_discover_osversion.
1174         * sysdeps/unix/sysv/linux/dl-osinfo.h: Move _dl_discover_osversion
1175         to ...
1176         * sysdeps/unix/sysv/linux/dl-sysdep.c: ...here.
1177         * sysdeps/unix/sysv/linux/dl-sysdep.h: Declare _dl_discover_osversion
1178         if necessary.
1179         * sysdeps/unix/sysv/linux/sysconf.c: Handle _SC_ARG_MAX here.
1180
1181         * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Add
1182         _dl_tls_get_addr_soft element.
1183         * elf/rtld.c (rtld_global_ro): Initialize _dl_tls_get_addr_soft.
1184         * elf/Versions (ld): Don't export _dl_tls_get_addr_soft.
1185         * dlfcn/dlinfo.c (dlinfo_doit): Access dl_tls_get_addr_soft through
1186         GLRO.
1187         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise.
1188         * elf/dl-tls.c (_dl_tls_get_addr_soft): Use attribute_hidden instead
1189         of internal_function.
1190
1191         * stdlib/Makefile (aux): Add tens_in_limb.
1192         * stdlib/strtod_l.c: Move _tens_in_limb definition to...
1193         * stdlib/tens_in_limb.c: ...here.  New file.
1194
1195         [BZ #5778]
1196         * sysdeps/unix/sysv/linux/pathconf.h: Declare
1197         __statfs_chown_restricted.
1198         * sysdeps/unix/sysv/linux/fpathconf.c: Call __statfs_chown_restricted
1199         for _PC_CHOWN_RESTRICTED.
1200         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
1201         Implement __statfs_chown_restricted.
1202         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Change
1203         _POSIX_CHOWN_RESTRICTED value to zero.
1204         * io/tst-fchownat.c: Correctly handle _POSIX_CHOWN_RESTRICTED
1205         defined to zero.
1206
1207         * sysdeps/x86_64/rtld-memset.c: New file.
1208
1209 2008-02-26  Harsha Jagasia  <harsha.jagasia@amd.com>
1210
1211         * sysdeps/x86_64/cacheinfo.c (NOT_USED_RIGHT_NOW): Remove ifdef guards.
1212
1213         * sysdeps/x86_64/memset.S: Rewrite non-SSE code path as tuned for AMD
1214         Barcelona machine.  Make default fall through branch of
1215         __x86_64_preferred_memory_instruction check as the integer code path.
1216
1217 2007-10-15  H.J. Lu  <hongjiu.lu@intel.com>
1218
1219         * sysdeps/x86_64/cacheinfo.c
1220         (__x86_64_preferred_memory_instruction): New variable.
1221         (init_cacheinfo): Initialize __x86_64_preferred_memory_instruction.
1222
1223         * sysdeps/x86_64/memset.S: Rewrite.
1224
1225 2008-03-04  Jakub Jelinek  <jakub@redhat.com>
1226
1227         * include/stdio.h (__asprintf_chk, __dprintf_chk,
1228         __obstack_printf_chk): New prototypes.
1229         (__vasprintf_chk, __vdprintf_chk,
1230         __obstack_vprintf_chk): Likewise.
1231         Add libc_hidden_proto.
1232         * libio/obprintf.c
1233         (_IO_obstack_jumps): No longer static, add attribute_hidden.
1234         * libio/bits/stdio-ldbl.h (__asprintf_chk, __dprintf_chk,
1235         __obstack_printf_chk, __vasprintf_chk, __vdprintf_chk,
1236         __obstack_vprintf_chk): Add __LDBL_REDIR_DECL.
1237         * libio/bits/stdio2.h (__asprintf_chk, __dprintf_chk,
1238         __obstack_printf_chk, __vasprintf_chk, __vdprintf_chk,
1239         __obstack_vprintf_chk): New prototypes.
1240         (asprintf, __asprintf, dprintf, obstack_printf, vasprintf, vdprintf,
1241         obstack_vprintf): New inlines.
1242         * debug/dprintf_chk.c: New file.
1243         * debug/vdprintf_chk.c: New file.
1244         * debug/asprintf_chk.c: New file.
1245         * debug/vasprintf_chk.c: New file.
1246         * debug/obprintf_chk.c: New file.
1247         * debug/tst-chk1.c (do_test): Add asprintf and obstack_printf tests.
1248         * debug/Versions (__asprintf_chk, __dprintf_chk, __obstack_printf_chk,
1249         __vasprintf_chk, __vdprintf_chk, __obstack_vprintf_chk): Export
1250         @@GLIBC_2.8.
1251         * debug/Makefile: Build asprintf_chk, vasprintf_chk, dprintf_chk,
1252         vdprintf_chk and obprintf_chk, set CFLAGS for them.
1253         * sysdeps/ieee754/ldbl-opt/nldbl-compat.c (__nldbl___vasprintf_chk,
1254         __nldbl___vdprintf_chk, __nldbl___obstack_vprintf_chk): Add
1255         libc_hidden_proto.
1256         * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__nldbl___vasprintf_chk,
1257         __nldbl___vdprintf_chk, __nldbl___obstack_vprintf_chk): New prototypes.
1258         * sysdeps/ieee754/ldbl-opt/Versions (__nldbl___asprintf_chk,
1259         __nldbl___vasprintf_chk, __nldbl___dprintf_chk, __nldbl___vdprintf_chk,
1260         __nldbl___obstack_printf_chk, __nldbl___obstack_vprintf_chk): Export
1261         @@GLIBC_2.8.
1262         * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add asprintf_chk,
1263         vasprintf_chk, dprintf_chk, vdprintf_chk, obstack_printf_chk and
1264         obstack_vprintf_chk.
1265         * sysdeps/ieee754/ldbl-opt/nldbl-obstack_vprintf_chk.c: New file.
1266         * sysdeps/ieee754/ldbl-opt/nldbl-dprintf_chk.c: New file.
1267         * sysdeps/ieee754/ldbl-opt/nldbl-obstack_printf_chk.c: New file.
1268         * sysdeps/ieee754/ldbl-opt/nldbl-asprintf_chk.c: New file.
1269         * sysdeps/ieee754/ldbl-opt/nldbl-vdprintf_chk.c: New file.
1270         * sysdeps/ieee754/ldbl-opt/nldbl-vasprintf_chk.c: New file.
1271
1272 2008-03-04  Ulrich Drepper  <drepper@redhat.com>
1273
1274         [BZ #5779]
1275         * misc/sys/queue.h: Add STAILQ_CONCAT and TAILQ_CONCAT definitions.
1276         Patch by Roy Marples <roy@marples.name>.
1277
1278         [BZ #5736]
1279         * malloc/malloc.c: Fix typo in comment.
1280
1281         [BZ #5627]
1282         * locale/iso-639.def: Add Shuswap.
1283
1284 2008-02-25  Jakub Jelinek  <jakub@redhat.com>
1285
1286         [BZ #5790]
1287         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr2_r): Don't
1288         overwrite *h_errnop/*errnop values from getanswer_r in case of
1289         failure.
1290
1291 2008-03-03  Ulrich Drepper  <drepper@redhat.com>
1292
1293         [BZ #5818]
1294         * nscd/connections.c (dbs): Add initializers for .suggested_module.
1295         (verify_persistent_db): Remove one unnecessary test and add a new one
1296         for bad configuration.
1297         (nscd_init): Improve error reported when persistent database cannot
1298         be reused.
1299         * nscd/nscd.h (DEFAULT_SUGGESTED_MODULE): Define.
1300         * nscd/nscd_conf.c (nscd_parse_file): Provide default values for
1301         .suggested_module and .max_db_size and case config file says the
1302         values are zero.
1303         * nscd/nscd_helper.c (get_mapping): Fail if hash table module is zero.
1304
1305         [BZ #5854]
1306         * nis/ypclnt.c (yp_order): Fix handling of return value of
1307         do_ypcall_tr call.
1308         Patch by Jeff Moyer <jmoyer@redhat.com>.
1309
1310         * po/fr.po: Update from translation team.
1311
1312 2008-02-22  Andreas Jaeger  <aj@suse.de>,
1313             Carlos O'Donell <carlos@systemhalted.org>
1314
1315         [BZ #5012]
1316         * FAQ.in: Describe why glibc needs to be compiled with
1317         optimization.
1318
1319 2008-02-19  Roland McGrath  <roland@redhat.com>
1320
1321         * elf/elf.h (SHT_GNU_ATTRIBUTES): New macro.
1322
1323 2008-02-15  Ulrich Drepper  <drepper@redhat.com>
1324
1325         [BZ #5737]
1326         * resolv/netdb.h: Make NI_MAXHOST and NI_MAXSERV available when
1327         __USE_MISC is defined.
1328
1329 2008-02-10  Ulrich Drepper  <drepper@redhat.com>
1330
1331         * sysdeps/unix/sysv/linux/sys/timerfd.h: New file.
1332         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers): Add
1333         sys/timerfd.h.
1334         * sysdeps/unix/sysv/linux/syscalls.list: Add timerfd_create,
1335         timerfd_gettime, timerfd_settime.
1336         * sysdeps/unix/sysv/linux/Versions: Add timerfd_create,
1337         timerfd_gettime, timerfd_settime for GLIBC_2.8.
1338
1339 2008-02-08  Roland McGrath  <roland@redhat.com>
1340
1341         * elf/elf.h (NT_PPC_SPE): New macro.
1342
1343 2008-02-06  Roland McGrath  <roland@redhat.com>
1344
1345         * Makerules ($(common-objpfx)sysd-rules):
1346         Depend on $(sysdep-makeconfigs).
1347
1348 2008-01-31  Roland McGrath  <roland@redhat.com>
1349
1350         [BZ #5442]
1351         * configure.in: Use -print-file-name if it yields a directory,
1352         for each of include and include-fixed.
1353         * configure: Regenerated.
1354
1355         * Makeconfig (sysd-rules-targets): New variable.
1356         * sysdeps/unix/make-syscalls.sh: Use it in the rules emitted.
1357         * sysdeps/unix/Makefile (omit-deps): Append variants for each target.
1358
1359 2008-01-30  Roland McGrath  <roland@redhat.com>
1360
1361         * manual/libc.texinfo: Update back-cover text.
1362
1363         * elf/elf.h (NT_386_TLS): New macro.
1364
1365 2008-01-29  Roland McGrath  <roland@redhat.com>
1366
1367         * Makeconfig (sysd-rules-patterns): New variable.
1368         * Makerules ($(common-objpfx)sysd-rules): Drive the loop from that.
1369         (check-inhibit-asm): New canned sequence, replaces ...
1370         (open-check-inhibit-asm, close-check-inhibit-asm): ... these, removed.
1371         * elf/rtld-Rules ($(objpfx)rtld-%.os): Use $(rtld-CPPFLAGS) in commands.
1372         (rtld-CPPFLAGS): Renamed from CPPFLAGS-rtld.
1373         (CFLAGS-rtld): Variable removed.
1374
1375 2008-01-24  Roland McGrath  <roland@redhat.com>
1376
1377         * configure.in: Let configure fragments set base_os.
1378         * configure: Regenerated.
1379
1380 2008-01-22  Ulrich Drepper  <drepper@redhat.com>
1381
1382         * po/ko.po: Update from translation team.
1383
1384 2008-01-12  H.J. Lu  <hongjiu.lu@intel.com>
1385
1386         * sysdeps/i386/fpu/ftestexcept.c (fetestexcept): Use short for fnstsw.
1387
1388 2008-01-12  Andreas Jaeger  <aj@suse.de>
1389
1390         [BZ #5040]
1391         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (enum EPOLL_EVENTS):
1392         Add EPOLLRDHUP.
1393
1394 2008-01-20  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1395
1396         * hurd/hurdsock.c (_hurd_socket_server): Return the standard
1397         error EAFNOSUPPORT rather than non-standard EPFNOSUPPORT.
1398         * sunrpc/bindrsvprt.c (bindresvport): Likewise.
1399
1400 2007-10-23  Alexandre Oliva  <aoliva@redhat.com>
1401
1402         * include/link.h (FORCED_DYNAMIC_TLS_OFFSET): Define.
1403         * elf/dl-close.c (_dl_close): Check for it.
1404         * elf/dl-reloc.c (CHECK_STATIC_TLS): Likewise.
1405         (_dl_allocate_static_tls): Likewise.
1406         * elf/dl-tls.c (_dl_allocate_tls_init): Likewise.
1407         (__tls_get_addr): Protect from race conditions in setting l_tls_offset
1408         to it.
1409         * elf/tst-tls16.c: New file.
1410         * elf/tst-tlsmod16a.c: New file.
1411         * elf/tst-tlsmod16b.c: New file.
1412         * elf/Makefile: Add rules to build and run tst-tls16.
1413
1414 2008-01-16  Ulrich Drepper  <drepper@redhat.com>
1415
1416         [BZ #5628]
1417         * bits/shm.h: Fix comment describing shmid_ds.
1418         * sysdeps/gnu/bits/shm.h: Likewise.
1419         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
1420         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
1421         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
1422         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
1423         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
1424         * sysdeps/unix/sysv/linux/sh/bits/shm.h: Likewise.
1425         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
1426         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
1427         Patch by Hareesh Nagarajan <hareesh.nagarajan@gmail.com>.
1428
1429         [BZ #5607]
1430         * conform/data/fcntl.h-data: Fix posix_fadvise and posix_fallocate
1431         prototypes.
1432         * conform/data/limits.h-data: Adjust limits changed in v6 and add
1433         additional suffixes.
1434         * conform/data/mqueue.h-data: Fix typo in mq_curmsgs entry.
1435         Add optional functions mq_timedreceive and mq_timedsend.
1436         * conform/data/netdb.h-data: Add more AI_* and EAI_* constants.
1437         * conform/data/pthread.h-data: Fix prototype of
1438         pthread_condattr_setclock.  pthread_sigmask is not required in v6.
1439         * conform/data/semaphore.h-data: Allow time.h definitions.
1440         * conform/data/signal.h-data: Likewise.
1441         * conform/data/stdio.h-data: getw and putw are not required in v6.
1442         * conform/data/stdlib.h-data: Change setstate prototype.
1443         * conform/data/string.h-data: Fix strerror_r prototype.
1444         * conform/data/time.h-data: Fix typo in TIMER_ABSTIME definition.
1445         * conform/data/unistd.h-data: pthread_atfork not required in v6.
1446         Fix readlink prototype.
1447         * conform/data/netinet/in.h-data: Add const to in6addr_any and
1448         in6addr_loopback.
1449         * inet/netinet/in.h: Cleanup namespace.
1450         * posix/regex.h: Likewise.
1451         * resolv/netdb.h: Likewise.
1452         * sysdeps/unix/sysv/linux/bits/in.h: Likewise.
1453         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
1454         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
1455         * sysdeps/posix/getaddrinfo.c (default_labels): Adjust for change
1456         of names of in in6_addr.
1457         (default_precedence): Likewise.
1458         * sysdeps/unix/sysv/linux/cmsg_nxthdr.c: Include <stddef.h> for
1459         NULL definition.
1460
1461 2008-01-15  Ulrich Drepper  <drepper@redhat.com>
1462
1463         * conform/data/fmtmsg.h-data: Add missing allows.
1464         * conform/data/ftw.h-data: Likewise.
1465         * conform/data/inttypes.h-data: Likewise.
1466         * conform/data/math.h-data: Likewise.
1467         * conform/data/signal.h-data: Likewise.
1468         * conform/data/net/if.h-data: Likewise.
1469         * conform/data/netinet/in.h-data: Likewise.
1470         * conform/data/sys/socket.h-data: Likewise.
1471
1472         [BZ #5614]
1473         * string/bits/string2.h (__strtok_r_1c): Always update *__NEXTP.
1474         (__strtok_r): Simplify.
1475         * string/tester.c (test_strtok_r): Add test case for futile search
1476         with single-character seach string.
1477
1478 2008-01-12  Ulrich Drepper  <drepper@redhat.com>
1479
1480         * po/ko.po: Update from translation team.
1481
1482 2008-01-11  Andreas Jaeger  <aj@suse.de>
1483
1484         [BZ #5600]
1485         * sysdeps/unix/sysv/linux/sys/signalfd.h (struct
1486         signalfd_siginfo): Use 64-bit type for ssi_ptr to sync with Linux
1487         kernel header.
1488
1489 2008-01-10  Ulrich Drepper  <drepper@redhat.com>
1490
1491         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Store result of
1492         native interface lookup in all the relevant places.
1493
1494 2008-01-10  Jakub Jelinek  <jakub@redhat.com>
1495             Ulrich Drepper  <drepper@redhat.com>
1496
1497         * sysdeps/posix/getaddrinfo.c (sort_results): Remove service_order
1498         field.  Use sockaddr_in6 for source_addr.
1499         (get_scope): Change type of parameter to sockaddr_in6.  Adjust.
1500         (match_prefix): Likewise.
1501         (get_label): Likewise.
1502         (get_precedence): Likewise.
1503         (rfc3484_sort): Change to use indirect access to results array.
1504         Adjust to use of sockaddr_in6.  Replace service_order test with
1505         simple index comparison.
1506         (getaddrinfo): Define order array.  Initialize it.  Don't initialize
1507         service_order field.  Adjust qsort_t calls.  Access sorted result
1508         array indirectly through order array.
1509         * posix/tst-rfc3484.c: Adjust for change of rfc3484_sort.
1510         * posix/tst-rfc3484-2.c: Likewise.
1511         * posix/tst-rfc3484-3.c: Likewise.
1512
1513 2008-01-09  Ulrich Drepper  <drepper@redhat.com>
1514
1515         [BZ #5541]
1516         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Also free xports and
1517         pollfd structures.
1518         Patch by AndrĂ© Cruz.
1519
1520         [BZ #5545]
1521         * sunrpc/clnt_perr.c (clnt_sperror): Don't use fixed size buffer.
1522         (clnt_spcreateerror): Likewise.
1523
1524         [BZ #5553]
1525         * malloc/malloc.c (public_mALLOc): Set ar_ptr when trying main_arena.
1526         (public_mEMALIGn): Likewise.
1527         Patch mostly by Daniel Jacobowitz.
1528
1529 2008-01-09  Jakub Jelinek  <jakub@redhat.com>
1530
1531         * sysdeps/unix/sysv/linux/i386/makecontext.S (__makecontext): Avoid
1532         clobbering memory at or above uc_stack.ss_sp + uc_stack.ss_size.
1533         * stdlib/Makefile: Add rules to build and run tst-makecontext2.
1534         * stdlib/tst-makecontext2.c: New test.
1535
1536 2008-01-08  Jakub Jelinek  <jakub@redhat.com>
1537
1538         * iconv/loop.c (UPDATE_PARAMS): Define to empty statement if not
1539         defined.
1540         (REINIT_PARAMS): Likewise.  Undefine before end of file.
1541         (STANDARD_TO_LOOP_ERR_HANDLER): Use UPDATE_PARAMS before calling
1542         transliteration hooks and REINIT_PARAMS afterwards.
1543         * iconvdata/iso-2022-jp.c (BODY): Use a separate variable for
1544         status.
1545         (REINIT_PARAMS): Define.
1546         * iconvdata/ibm1364.c (REINIT_PARAMS): Likewise.
1547         * iconvdata/ibm930.c (REINIT_PARAMS): Likewise.
1548         * iconvdata/ibm933.c (REINIT_PARAMS): Likewise.
1549         * iconvdata/ibm935.c (REINIT_PARAMS): Likewise.
1550         * iconvdata/ibm937.c (REINIT_PARAMS): Likewise.
1551         * iconvdata/ibm939.c (REINIT_PARAMS): Likewise.
1552         * iconvdata/iso-2022-cn.c (REINIT_PARAMS): Likewise.
1553         * iconvdata/iso-2022-cn-ext.c (REINIT_PARAMS): Likewise.
1554         * iconvdata/iso-2022-jp-3.c (REINIT_PARAMS): Likewise.
1555         * iconvdata/iso-2022-kr.c (REINIT_PARAMS): Likewise.
1556         * iconvdata/Makefile: Add rules to build and run tst-iconv7.c.
1557         * iconvdata/tst-iconv7.c: New test.
1558
1559 2008-01-07  Ulrich Drepper  <drepper@redhat.com>
1560
1561         * libio/stdio.h (vscanf): Fix definition for loser compilers.
1562
1563 2008-01-05  Jakub Jelinek  <jakub@redhat.com>
1564
1565         [BZ #5112]
1566         * nscd/connections.c (restart): Fix condition.
1567
1568 2008-01-03  Jakub Jelinek  <jakub@redhat.com>
1569
1570         * ctype/ctype.h (__ctype_b_loc, __ctype_tolower_loc,
1571         __ctype_toupper_loc): Add __THROW.
1572
1573 2008-01-02  Ulrich Drepper  <drepper@redhat.com>
1574
1575         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Fix
1576         recognition of interface family.
1577
1578         * posix/getconf.c: Update copyright year.
1579         * nss/getent.c: Likewise.
1580         * iconv/iconvconfig.c: Likewise.
1581         * iconv/iconv_prog.c: Likewise.
1582         * elf/ldconfig.c: Likewise.
1583         * catgets/gencat.c: Likewise.
1584         * csu/version.c: Likewise.
1585         * elf/ldd.bash.in: Likewise.
1586         * elf/sprof.c (print_version): Likewise.
1587         * locale/programs/locale.c: Likewise.
1588         * locale/programs/localedef.c: Likewise.
1589         * nscd/nscd.c (print_version): Likewise.
1590         * debug/xtrace.sh: Likewise.
1591         * malloc/memusage.sh: Likewise.
1592         * malloc/mtrace.pl: Likewise.
1593         * debug/catchsegv.sh: Likewise.
1594
1595 2007-12-26  Ulrich Drepper  <drepper@redhat.com>
1596
1597         * nss/nsswitch.c (__nss_lookup): Actually use alternative name in
1598         second lookup.
1599
1600 2007-12-23  Ulrich Drepper  <drepper@redhat.com>
1601
1602         * sysdeps/x86_64/cacheinfo.c (intel_02_known): New entry 0x3f.
1603         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
1604
1605 2007-12-17  Roland McGrath  <roland@redhat.com>
1606
1607         * inet/ether_line.c (ether_line): Remove unused variable.
1608
1609 2007-12-17  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1610
1611         * login/forkpty.c (forkpty): Add const qualifier to parameters termp
1612         and winp.
1613         * login/openpty.c (openpty): Likewise.
1614         * login/pty.h (openpty, forkpty): Likewise.
1615         * manual/terminal.texi (openpty, forkpty): Likewise.
1616
1617 2007-12-17  Ulrich Drepper  <drepper@redhat.com>
1618
1619         * malloc/malloc.c (public_cALLOc): For arenas other than
1620         main_arena, count all bytes inside the mprotect_size range of the
1621         heap as uninitialized.
1622
1623 2007-12-16  Ulrich Drepper  <drepper@redhat.com>
1624
1625         * elf/tst-execstack.c (do_test): Don't fail if SELinux forbids
1626         executable stacks.
1627
1628         * malloc/malloc.c (public_mTRIm): Iterate over all arenas and call
1629         mTRIm for all of them.
1630         (mTRIm): Additionally iterate over all free blocks and use madvise
1631         to free memory for all those blocks which contain at least one
1632         memory page.
1633         * malloc/tst-trim1.c: New file.
1634         * malloc/Makefile (tests): Add tst-trim1.
1635
1636         * malloc/malloc.c (do_check_malloc_state): Minimal cleanups.
1637
1638 2007-12-14  Ulrich Drepper  <drepper@redhat.com>
1639
1640         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL_ERROR_P):
1641         First cast argument to long
1642         * sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_gettimeofday):
1643         Return long.
1644         (__vdso_clock_gettime): Likewise.
1645         * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: Functions
1646         return long.
1647
1648 2007-12-13  Ulrich Drepper  <drepper@redhat.com>
1649
1650         * locale/nl_langinfo.c (nl_langinfo): Just call __nl_langinfo_l.
1651         * locale/nl_langinfo_l.c: Real implementation, copied from
1652         nl_langinfo.c.
1653         * include/langinfo.h: Add libc_hidden_proto for __nl_langinfo_l.
1654
1655 2007-12-01  Jim Meyering  <meyering@redhat.com>
1656
1657         * posix/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
1658         that would inhibit utf8-optimization of a regexp containing line-
1659         or buffer-anchors, e.g., `^', `$'.
1660
1661 2007-12-12  Ulrich Drepper  <drepper@redhat.com>
1662
1663         * time/bug-getdate1.c (do_test): Don't use century values which
1664         aren't valid on 32-bit systems.
1665
1666 2007-12-12  Jakub Jelinek  <jakub@redhat.com>
1667
1668         * sysdeps/i386/i486/bits/string.h (memmove): Define as macro.
1669         (memmove): Rename to __memmove_g, with __asm__ ("memmove").
1670         * sysdeps/s390/bits/string.h (__strlen_g, __strcpy_g, __strncpy_g,
1671         __strcat_g, __strncat_g): Add __asm__.
1672
1673 2007-12-12  Ulrich Drepper  <drepper@redhat.com>
1674
1675         [BZ #5477]
1676         * io/fchmodat.c: Fix typo in stub_warning use.
1677         Patch by Petr Salinger.
1678
1679 2007-12-11  Ulrich Drepper  <drepper@redhat.com>
1680
1681         * iconvdata/hp-thai8.c: New file.
1682         * iconvdata/Makefile: Add rules for hp-thai8.c.
1683         * iconvdata/tst-tables.sh: Add entry for HP-THAI8.
1684         * iconvdata/gconv-modules: Likewise.
1685
1686         [BZ #5464]
1687         * iconvdata/hp-greek8.c: New file.
1688         * iconvdata/Makefile: Add rules for hp-greek8.c.
1689         * iconvdata/tst-tables.sh: Add entry for HP-GREEK8.
1690         * iconvdata/gconv-modules: Likewise.
1691
1692         [BZ #5463]
1693         * iconvdata/hp-turkish8.c: New file.
1694         * iconvdata/Makefile: Add rules for hp-turkish8.c.
1695         * iconvdata/tst-tables.sh: Add entry for HP-TURKISH8.
1696         * iconvdata/gconv-modules: Likewise.
1697
1698         * malloc/arena.c (grow_heap): Split out code to shrink heap into...
1699         (shrink_heap): ... this new function.
1700         (heap_trim): Call shrink_heap instead of grow_heap.
1701
1702         * malloc/malloc.c (_int_malloc): sYSMALLOc might fail, in this
1703         case don't call alloc_perturb.
1704
1705 2007-12-10  Ulrich Drepper  <drepper@redhat.com>
1706
1707         * sysdeps/unix/sysv/linux/adjtime.c: Use ADJ_OFFSET_SS_READ if
1708         possible.
1709         * sysdeps/unix/sysv/linux/kernel-features.h
1710         (__ASSUME_ADJ_OFFSET_SS_READ): Define for 2.6.24.
1711         * sysdeps/unix/sysv/linux/sys/timex.h (ADJ_OFFSET_SS_READ): Define.
1712
1713 2007-12-08  Ulrich Drepper  <drepper@redhat.com>
1714
1715         [BZ #5424]
1716         * stdio-common/vfprintf.c: Do not overflow when adding to done.
1717         * stdio-common/Makefile (tests): Add bug22.
1718         * stdio-common/bug22.c: New file.
1719
1720         [BZ #5451]
1721         * time/getdate.c: Fix filling in default values.
1722         * time/bug-getdate1.c: New file.
1723         * time/Makefile: Add rules to build and run bug-getdate1.
1724
1725         * iconvdata/ebcdic-is-friss.c: Use 8bit-gap instead of 8bit-generic.
1726         * iconvdata/ebcdic-es.c: Likewise.
1727         * iconvdata/ebcdic-es-a.c: Likewise.
1728         * iconvdata/ebcdic-uk.c: Likewise.
1729         * iconvdata/iso8859-16.c: Likewise.
1730         * iconvdata/viscii.c: Likewise.
1731         * iconvdata/iso8859-9e.c: Likewise.
1732         * iconvdata/Makefile: Adjust appropriately.
1733
1734         [BZ #5428]
1735         * wcsmbs/wchar.h: Unconditionally undefine __need_mbstate and
1736         __need_wint_t.
1737
1738 2007-12-07  Ulrich Drepper  <drepper@redhat.com>
1739
1740         [BZ #5427]
1741         * iconvdata/hp-roman9.c: New file.
1742         * iconvdata/Makefile: Add rules for hp-roman9.c.
1743         * iconvdata/tst-tables.sh: Add HP-ROMAN9.
1744         * iconvdata/gconv-modules: Likewise.
1745
1746         * iconvdata/hp-roman8.c: Use 8bit-gap instead of 8bit-generic.
1747         * iconvdata/Makefile: Adjust appropriately.
1748
1749         [BZ #5441]
1750         * stdio-common/vfscanf.c (_IO_vfwscanf): Don't free ptrs_to_free
1751         structure, it's allocated with alloca.
1752         * stdio-common/Makefile (tests): Add bug21.
1753         * stdio-common/bug21.c: New file.
1754
1755 2007-12-06  Aurelien Jarno  <aurelien@aurel32.net>
1756
1757         [BZ #5452]
1758         * sysdeps/unix/sysv/linux/bits/sched.h: Use __extension__
1759         keyword for gcc's braced-groups.
1760
1761 2007-12-07  Ulrich Drepper  <drepper@redhat.com>
1762
1763         [BZ #5454]
1764         * inet/ether_line.c: Strip hostname of whitespaces.
1765         * inet/Makefile (tests): Add tst-ether_line.
1766         * inet/tst-ether_line.c: New file.
1767
1768 2007-12-03  Ulrich Drepper  <drepper@redhat.com>
1769
1770         [BZ #5439]
1771         * sysdeps/unix/sysv/linux/sys/signalfd.h: Fix use of __nonnull.
1772
1773         [BZ #5435]
1774         * sysdeps/unix/sysv/linux/i386/makecontext.S: Align stack.
1775
1776         * stdlib/tst-setcontext.c: Catch the case where the links gets
1777         messed up and we do not reach main again.
1778
1779         * po/ca.po: Update from translation team.
1780
1781 2007-11-26  Ulrich Drepper  <drepper@redhat.com>
1782
1783         * posix/unistd.h: Declare fsync also for __USE_XOPEN2K.
1784         * posix/regex.h (REG_ENOSYS): Likewise.
1785         * wcsmbs/wchar.h: Define __need_file also for __USE_XOPEN2K.
1786
1787 2007-11-25  Ulrich Drepper  <drepper@redhat.com>
1788
1789         * nscd/nscd.h (MAX_STACK_USE): Define.
1790         * nscd/mem.c (MAX_STACK_USE): Remove definition here.
1791         (gc): Initialize stack_used based on allocation in prune_cache.
1792         * nscd/cache.c (prune_cache): Use heap for mark array if necessary.
1793         Clear array before use.
1794
1795         * nscd/aicache.c (addhstaiX): Update statistics counter in case
1796         memory allocation failed.
1797         * nscd/hstcache.c (cache_addhst): Likewise.
1798         * nscd/grpcache.c (cache_addgr): Likewise.
1799         * nscd/servicescache.c (cache_addserv): Likewise.
1800         * nscd/pwdcache.c (cache_addpw): Likewise.
1801         * nscd/initgrcache.c (addinitgroupsX): Likewise.
1802
1803 2007-11-23  Ulrich Drepper  <drepper@redhat.com>
1804
1805         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Add open
1806         and creat system calls.
1807
1808         * sysdeps/unix/sysv/linux/check_native.c: Include <asm/types.h>.
1809
1810 2007-11-23  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1811
1812         * sysdeps/unix/sysv/linux/Makefile [subdir=inet] (sysdep_headers):
1813         Add netiucv/iucv.h.
1814         * sysdeps/unix/sysv/linux/netiucv/iucv.h: New file.
1815         * sysdeps/unix/sysv/linux/opensock.c (__opensock): Add AF_IUCV
1816         protocol.
1817         * sysdeps/unix/sysv/linux/sa_len.c (__libc_sa_len): Likewise.
1818         * sysdeps/unix/sysv/linux/s390/opensock.c: New file.
1819         * sysdeps/unix/sysv/linux/s390/sa_len.c: New file.
1820
1821 2007-11-22  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1822
1823         * sysdeps/s390/bits/string.h (strlen, strcpy, strncpy, strcat,
1824         strncat): Define as macros to avoid compile errors.
1825
1826         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list:  Add open and
1827         creat entries.
1828
1829 2007-11-22  Ulrich Drepper  <drepper@redhat.com>
1830
1831         [BZ #5382]
1832         * nscd/nscd.h (NSCD_THREAD_STACKSIZE): Define.
1833         * nscd/connections.c (start_threads): Use NSCD_THREAD_STACKSIZE.
1834         * nscd/mem.c (gc): Don't allocate arrays on the stack if they can
1835         overflow it.
1836         Partially based on a patch by Petr Baudis <pasky@suse.cz>.
1837
1838         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
1839         Return zero in case the thread library is not NPTL.
1840
1841         [BZ #5375]
1842         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Fix locking when
1843         initializing interface list.
1844
1845         [BZ #5378]
1846         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
1847         use result of nss_getgrgid_r if nothing was found.  For other
1848         error return with a failure.
1849         Partially based on a patch by Petr Baudis <pasky@suse.cz>.
1850
1851         * locale/programs/ld-collate.c (collate_read): Fix loop to match
1852         macro name.
1853
1854 2007-11-19  Ulrich Drepper  <drepper@redhat.com>
1855
1856         * sysdeps/posix/getaddrinfo.c (defaults_scopes, scopes): New variables.
1857         (get_scope): For IPv4 scope, use scopes table.
1858         (fini): Free scopes table if necessary.
1859         (free_scopelist): New function.
1860         (scopecmp): New function.
1861         (gaiconf_init): Also handle scopev4 entries.
1862         * posix/tst-rfc3484.c (do_test): Initialize scopes.
1863         * posix/tst-rfc3484-2.c (do_test): Likewise.
1864         * posix/gai.conf: Document scopev4 defaults.
1865         * posix/Makefile (tests): Add tst-rfc3484-3.
1866         * posix/tst-rfc3484-3.c: New file.
1867
1868         * sysdeps/posix/getaddrinfo.c (default_labels): Describe entry for
1869         Teredo tunnels.
1870         * posix/gai.conf: Update for current default tables.
1871
1872 2007-11-19  Ulrich Drepper  <drepper@redhat.com>
1873
1874         * po/tr.po: Update from translation team.
1875
1876 2007-11-18  Roland McGrath  <roland@frob.com>
1877
1878         * manual/arith.texi (Remainder Functions): Spelling fix.
1879         From Shaun Silk <genix@mysoul.com.au>.
1880
1881         * sysdeps/mach/hurd/bits/fcntl.h (O_CLOEXEC): Fix value.
1882
1883 2007-11-17  Ulrich Drepper  <drepper@redhat.com>
1884
1885         * po/zh_CN.po: Update from translation team.
1886
1887         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
1888         Add sys/signalfd.h and sys/eventfd.h.
1889
1890 2007-11-15  Bruno Haible  <bruno@clisp.org>
1891
1892         [BZ #5346]
1893         * intl/dcigettext.c (struct known_translation_t): Turn msgid into a
1894         union.
1895         (transcmp): Use the appropriate part of s1->msgid and s2->msgid.
1896         (DCIGETTEXT): Change the allocation of the 'search' variable so that
1897         it needs only fixed stack space. Delay the initialization of
1898         msgid_len until it is needed.
1899
1900 2007-11-15  Andreas Jaeger  <aj@suse.de>
1901
1902         * sysdeps/ieee754/dbl-64/sincos.tbl: Fix size of union.
1903         Reported by Christoph Quirin Lauter <christoph.lauter@ens-lyon.fr>.
1904
1905 2007-11-15  Ulrich Drepper  <drepper@redhat.com>
1906
1907         * po/ko.po: Update from translation team.
1908
1909 2007-11-14  Ulrich Drepper  <drepper@redhat.com>
1910
1911         * sysdeps/unix/sysv/linux/check_native.c (__check_native): Simplify
1912         significantly.  The device type is also part of the ifinfomsg data.
1913
1914         * po/sv.po: Update from translation team.
1915         * po/nl.po: Likewise.
1916
1917         * nscd/cache.c (prune_cache): If cache is empty, instruct caller
1918         to wake up in 24 hours.
1919
1920         * nscd/gai.c (__ioctl): Define.  Include check_native.c.
1921
1922 2007-11-13  Ulrich Drepper  <drepper@redhat.com>
1923
1924         * po/cs.po: Update from translation team.
1925         * po/pl.po: Likewise.
1926
1927         * include/ifaddrs.h: Remove in6ai_temporary.
1928         (struct in6addrinfo): Add index element.
1929         Declare __check_native.
1930         * inet/Makefile (aux): Add check_native.
1931         * sysdeps/unix/sysv/linux/check_native.c: New file.
1932         * sysdeps/unix/sysv/linux/check_pf.c: No need to recognize
1933         IFA_F_TEMPORARY.  Pass back ifa_index.
1934         * sysdeps/posix/getaddrinfo.c: Remove netlink compatibility code.
1935         (rfc3484_sort): Add new parameter.  Implement rule 7 correctly:
1936         call __check_native if necessary.
1937         (getaddrinfo): Fill in index field.  Use qsort_r instead of qsort
1938         to sort addresses.  Pass information about the results.
1939         * posix/tst-rfc3484.c: Adjust for addition of index field and change
1940         of rfc3484_sort interface.
1941         * posix/tst-rfc3484-2.c: Likewise.
1942
1943         * stdlib/stdlib.h: Define __compar_d_fn_t.  Declare qsort_r.
1944         * include/stdlib.h: Add hidden_proto for qsort_t and adjust protoype
1945         for _quicksort.
1946         * stdlib/msort.c (qsort): Now a wrapper around qsort_r.
1947         (qsort_r): Renamed from qsort.  Take additional parameter and pass it
1948         on as third parameter to compare function and _quicksort.
1949         * stdlib/qsort.c (_quicksort): Take additional parameter and pass on
1950         to the compare function.
1951         * stdlib/Versions [libc] (GLIBC_2.8): Add qsort_r.
1952         * Versions.def: Add GLIBC_2.8 for libc.
1953
1954         * posix/tst-rfc3484.c: Adjust for addition of prefixlen field.
1955         * posix/tst-rfc3484-2.c: Likewise.
1956
1957         * include/kernel-features.h: Moved to...
1958         * sysdeps/mach/hurd/kernel-features.h: ...here.
1959
1960 2007-09-13  H.J. Lu  <hongjiu.lu@intel.com>
1961
1962         * sysdeps/i386/i586/memcpy_chk.S: New file.
1963         * sysdeps/i386/i586/mempcpy_chk.S: Likewise.
1964         * sysdeps/i386/i586/memset_chk.S: Likewise.
1965
1966 2007-11-12  Ulrich Drepper  <drepper@redhat.com>
1967
1968         * include/ifaddrs.c (struct in6addrinfo): Add prefixlen field.
1969         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Always return
1970         list of interfaces.  Also store prefix length.
1971         * sysdeps/posix/getaddrinfo.c (sort_result): Add prefixlen element.
1972         (rfc3484_sort): In rule 9, for IPv4 addresses count only matching
1973         prefix if source and destination address are in the same subnet.
1974         (getaddrinfo): Always call __check_pf.  Fill in prefixlen field.
1975         Always look for matching record in in6ai list.
1976         Correct source_addr_len value for IPv6->IPv4 converted records.
1977
1978 2007-11-11  Roland McGrath  <roland@frob.com>
1979
1980         * include/kernel-features.h: New file.
1981
1982 2007-11-10  Ulrich Drepper  <drepper@redhat.com>
1983
1984         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Avoid unnecessary
1985         complications for 64-bit platforms.
1986
1987         * sysdeps/unix/sysv/linux/open64.c: Move __open64_2 implementation to..
1988         * sysdeps/unix/sysv/linux/open64_2.c: ...here.  New file.
1989         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines): Add
1990         open64_2.
1991         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add open and creat
1992         entries.
1993         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
1994         * sysdeps/wordsize-64/alphasort.c: New file.
1995         * sysdeps/wordsize-64/alphasort64.c: New file.
1996         * sysdeps/wordsize-64/fseeko.c: New file.
1997         * sysdeps/wordsize-64/fseeko64.c: New file.
1998         * sysdeps/wordsize-64/ftello.c: New file.
1999         * sysdeps/wordsize-64/ftello64.c: New file.
2000         * sysdeps/wordsize-64/ftw.c: New file.
2001         * sysdeps/wordsize-64/ftw64.c: New file.
2002         * sysdeps/wordsize-64/iofgetpos.c: New file.
2003         * sysdeps/wordsize-64/iofgetpos64.c: New file.
2004         * sysdeps/wordsize-64/iofopen.c: New file.
2005         * sysdeps/wordsize-64/iofopen64.c: New file.
2006         * sysdeps/wordsize-64/iofsetpos.c: New file.
2007         * sysdeps/wordsize-64/iofsetpos64.c: New file.
2008         * sysdeps/wordsize-64/lockf.c: New file.
2009         * sysdeps/wordsize-64/lockf64.c: New file.
2010         * sysdeps/wordsize-64/mkostemp.c: New file.
2011         * sysdeps/wordsize-64/mkostemp64.c: New file.
2012         * sysdeps/wordsize-64/mkstemp.c: New file.
2013         * sysdeps/wordsize-64/mkstemp64.c: New file.
2014         * sysdeps/wordsize-64/scandir.c: New file.
2015         * sysdeps/wordsize-64/scandir64.c: New file.
2016         * sysdeps/wordsize-64/tmpfile.c: New file.
2017         * sysdeps/wordsize-64/tmpfile64.c: New file.
2018         * sysdeps/wordsize-64/versionsort.c: New file.
2019         * sysdeps/wordsize-64/versionsort64.c: New file.
2020         * sysdeps/unix/sysv/linux/wordsize-64/aio_read.c: New file.
2021         * sysdeps/unix/sysv/linux/wordsize-64/aio_read64.c: New file.
2022         * sysdeps/unix/sysv/linux/wordsize-64/aio_write.c: New file.
2023         * sysdeps/unix/sysv/linux/wordsize-64/aio_write64.c: New file.
2024         * sysdeps/unix/sysv/linux/wordsize-64/creat64.c: New file.
2025         * sysdeps/unix/sysv/linux/wordsize-64/getdirentries.c: New file.
2026         * sysdeps/unix/sysv/linux/wordsize-64/getdirentries64.c: New file.
2027         * sysdeps/unix/sysv/linux/wordsize-64/lio_listio.c: New file.
2028         * sysdeps/unix/sysv/linux/wordsize-64/lio_listio64.c: New file.
2029         * sysdeps/unix/sysv/linux/wordsize-64/open64.c: New file.
2030         * sysdeps/unix/sysv/linux/wordsize-64/openat.c: New file.
2031         * sysdeps/unix/sysv/linux/wordsize-64/openat64.c: New file.
2032
2033         * crypt/sha256-crypt.c: Fix a comment.
2034         * crypt/sha512-crypt.c: Likewise.
2035
2036 2007-11-07  H.J. Lu  <hongjiu.lu@intel.com>
2037
2038         * sysdeps/x86_64/memset.S: Add sfence after movnti.
2039
2040 2007-11-07  Ulrich Drepper  <drepper@redhat.com>
2041
2042         [BZ #5277]
2043         * iconv/loop.c (STANDARD_TO_LOOP_ERR_HANDLER): If conversion failed
2044         because output buffer is too small break, don't loop.
2045         * iconvdata/Makefile (tests): Add bug-iconv6.
2046         * iconvdata/bug-iconv6.c: New file.
2047
2048 2007-11-06  Ulrich Drepper  <drepper@redhat.com>
2049
2050         * stdio-common/vfprintf.c (vfprintf): Compute necessary buffer size
2051         with size_t type.
2052         * stdio-common/printf_fp.c (__print_fp): Change chars_needed type to
2053         size_t.  Add casts where needed.
2054
2055         * nscd/selinux.c (nscd_request_avc_has_perm): When compiled with
2056         old headers, don't call avc_has_perm if we don't have the
2057         permission information.
2058
2059 2007-11-05  Daniel Jacobowitz  <dan@codesourcery.com>
2060
2061         * elf/rtld.c (dl_main): Use the page size to find the map start.
2062
2063 2007-11-05  Ulrich Drepper  <drepper@redhat.com>
2064
2065         * time/tzfile.c (__tzfile_read): Fix check for version 0 data files.
2066         Patch by Szymon Siwek <sls@poczta.wp.pl>.
2067
2068         * nscd/aicache.c (addhstaiX): Check herrno after IPv4 lookup only
2069         when the lookup call failed.
2070
2071         * nscd/nscd.h (struct database_dyn): Rename prunelock to prune_lock.
2072         Add prune_cond and wakeup_time.
2073         (CACHE_PRUNE_INTERNAL): Define.
2074         Update declarations of prune_cache and setup_thread.
2075         * nscd/connections.c (dbs): Update initializers.
2076         (CACHE_PRUNE_INTERNAL): Moved to nscd.h.
2077         (nscd_init): Default number of threads is now 4.
2078         (invalidate_cache): Take lock before calling prune_cache.
2079         (handle_request): If SELinux forbids the request, say so.
2080         (readylist_cond): Use static initializer.
2081         (nscd_run_prune): New function.  Used only by pruning threads.
2082         (nscd_run_worder): Renamed from nscd_run.  Remove support for pruning
2083         here.
2084         (fd_ready): Update nscd_run reference.
2085         (start_threads): No need to initialize readylist_cond.
2086         Start pruning threads separately.
2087         * nscd/nscd_setup_thread.c: Change return value type to int and always
2088         return 0.
2089         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Change return value type
2090         to int and return nonzero value if we can use the TID address hack.
2091         * nscd/cache.c (cache_add): If next wakeup time of cleanup thread for
2092         the database is later than the new entry's timeout, update the
2093         wakeup time and wake the cleanup thread.
2094         (prune_cache): Return seconds the next entry in the database is still
2095         valid.  Remove locking for pruning here.
2096         * nscd/nscd.conf: Document default number of threads.
2097
2098 2007-10-31  Ulrich Drepper  <drepper@redhat.com>
2099
2100         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Make sure
2101         stack is properly aligned for the target function.
2102         Correct unwind info.
2103
2104         * elf/rtld.c (dl_main): Initialize stack and pointer guard early
2105         when using auditing libraries.
2106
2107 2007-10-29  Ulrich Drepper  <drepper@redhat.com>
2108
2109         * resolv/Versions [libresolv] (GLIBC_PRIVATE): Add
2110         _nss_dns_getnetbyaddr2_r.
2111         * resolv/nss_dns/dns-host.c: Define _nss_dns_getnetbyaddr2_r.  Pass
2112         extra parameter to getanswer_r.
2113         (_nss_dns_getnetbyaddr_r): Now a wrapper around
2114         _nss_dns_getnetbyaddr2_r.
2115
2116         * nscd/Makefile (nscd-modules): Replace gethstbynm2_r with
2117         gethstbynm3_r.
2118         * nscd/gethstbynm2_r.c: Remove.
2119         * nscd/gethstbynm3_r.c: New file.
2120         * nscd/aicache.c (addhstaiX): Use __gethostbyaddr2_r instead of
2121         __gethostbyaddr_r.
2122         * nscd/gethstbyad_r.c: Generate __gethostbyaddr2_r function.  Define
2123         __gethostbyaddr_r compatibility wrapper.
2124         * nscd/hstcache.c (cache_addhst): Add ttl parameter.  Use it when
2125         determining timeout of entry.
2126         (lookup): Take new parameter and pass it to __gethostbyname3_r and
2127         __gethostbyaddr2_r.
2128         (addhstbyX): Pass reference to variable for TTL to lookup and
2129         cache_addhst.
2130         * nss/Versions [glibc] (GLIBC_PRIVATE): Export __nss_passwd_lookup2,
2131         __nss_group_lookup2, __nss_hosts_lookup2, __nss_services_lookup2,
2132         and __nss_next2.  Remove __nss_services_lookup.
2133         * nss/XXX-lookup.c: Name function now *_lookup2.  Add new parameter.
2134         Add compat wrapper.
2135         * nss/getXXbyYY_r.c: Changes to call new *_lookup2 functions and
2136         __nss_next2.
2137         * nss/getXXent_r.c: Likewise.
2138         * nss/getnssent_r.c: Likewise.
2139         * nss/nsswitch.c (__nss_lookup): Add new parameter.  If first function
2140         does not exist in module, try the optional second name.
2141         (__nss_next2): New function.
2142         (__nss_next): Now wrapper around __nss_next2.
2143         * nss/nsswitch.h: Adjust __nss_lookup prototype.
2144         Declare __nss_next2.
2145         Adjust definition of db_lookup_function type.
2146         * nss/service-lookup.c: Define NO_COMPAT.
2147         * include/netdb.h: Declare __gethostbyaddr2_r and __gethostbyname3_r.
2148         * inet/ether_hton.c: Use __nss_next2 instead of __nss_next.
2149         * inet/ether_ntoh.c: Likewise.
2150         * sunrpc/netname.c: Likewise.
2151         * sunrpc/publickey.c: Likewise.
2152         * inet/getnetgrent.c: Likewise.  Adjust calls to __nss_lookup.
2153         * inet/gethstbyad_r.c (DB_LOOKUP_FCT): Change to __nss_hosts_lookup2.
2154         * inet/gethstbynm2_r.c (DB_LOOKUP_FCT): Likewise.
2155         * inet/gethstbynm_r.c (DB_LOOKUP_FCT): Likewise.
2156         * inet/gethstent_r.c (DB_LOOKUP_FCT): Likewise.
2157
2158         * nscd/aicache.c (addhstaiX): Fix default TTL handling.
2159
2160         * inet/getnetgrent.c (setup): Encrypt static pointer.
2161
2162 2007-10-28  Ulrich Drepper  <drepper@redhat.com>
2163
2164         [BZ #5204]
2165         * crypt/sha256c-test.c: Define TIMEOUT to 6 for ancient hardware.
2166         * crypt/sha512c-test.c: Likewise.
2167
2168         [BZ #5225]
2169         * stdio-common/vfscanf.c (_IO_vfwscanf): Don't misuse wp pointer
2170         to keep track of end of %[ format string element.
2171         * stdio-common/Makefile (tests): Add bug20.
2172         * stdio-common/bug20.c: New file.
2173
2174         [BZ #5222]
2175         * elf/dl-load.c (_dl_rtld_di_serinfo): Correct handling of short
2176         path elements in counting mode.
2177
2178 2007-10-27  Andreas Jaeger  <aj@suse.de>
2179
2180         [BZ #5040]
2181         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLRDHUP): Add value.
2182
2183         [BZ #3112]
2184         * sysdeps/ia64/backtrace.c (init): Free shared library if incorrect.
2185         (__cleanup): Free shared library when exiting.
2186         * sysdeps/i386/backtrace.c (init): Free shared library if incorrect.
2187         (__cleanup): Free shared library when exiting.
2188
2189 2006-04-14  H.J. Lu  <hongjiu.lu@intel.com>
2190
2191         [BZ #2549]
2192         * math/libm-test.inc (check_float_internal): Support
2193         denormalized return.
2194
2195 2007-10-23  Andreas Jaeger  <aj@suse.de>
2196
2197         [BZ #5208]
2198         * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use
2199         __LONG_LONG_PAIR to handle little endian byte order.
2200         Suggested by abhishekrai@google.com
2201
2202 2007-10-27  Ulrich Drepper  <drepper@redhat.com>
2203
2204         * malloc/arena.c [!NO_THREADS]: Use ATFORK_MEM if defined.
2205
2206 2007-10-26  Ulrich Drepper  <drepper@redhat.com>
2207
2208         * nscd/cache.c (prune_cache): Move test for modified file outside
2209         of locking.
2210
2211 2007-10-21  Andreas Jaeger  <aj@suse.de>
2212
2213         * manual/texinfo.tex: Update to latest version.
2214
2215         * manual/sysinfo.texi (System Parameters): Fix Formatting.
2216
2217         * manual/arith.texi (Status bit operations): Fix formatting.
2218
2219         * manual/errno.texi (Error Messages): Fix formatting.
2220
2221         * manual/sysinfo.texi (System Parameters): Fix formatting.
2222
2223         * manual/libc.texinfo: Update VERSION and UPDATED.
2224
2225 2007-10-19  Roland McGrath  <roland@redhat.com>
2226
2227         * elf/Makefile ($(objpfx)ld.so): Use $(AWK).
2228
2229 2007-10-06  David S. Miller  <davem@davemloft.net>
2230
2231         * configure.in: Add sparcv9v2 and sparc64v2.
2232         * scripts/config.sub: Likewise.
2233         * configure: Regenerate.
2234         * elf/elf.h (HWCAP_SPARC_N2): New.
2235         * sysdeps/sparc/dl-procinfo.h (_DL_HWCAP_COUNT): Bump to 8.
2236         * sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add 'v9v2'.
2237         (HWCAP_IMPORTANT): Add HWCAP_SPARC_N2.
2238         * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memcpy.S: New file.
2239         * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memset.S: New file.
2240         * sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: New file.
2241         * sysdeps/sparc/sparc64/sparcv9v2/memset.S: New file.
2242
2243 2007-10-18  Ulrich Drepper  <drepper@redhat.com>
2244
2245         * sunrpc/clnt_udp.c (clntudp_call): Don't block in recvfrom call
2246         even if the poll result indicates there is data to read.
2247         Patch by Jeff Moyer <jmoyer@redhat.com>.
2248
2249 2007-10-18  Roland McGrath  <roland@redhat.com>
2250
2251         * elf/elf.h (NT_PPC_VMX): New macro.
2252
2253 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
2254
2255         * version.h (VERSION): Set to 2.7.90.
2256
2257 2007-10-17  Jakub Jelinek  <jakub@redhat.com>
2258
2259         * sysdeps/x86_64/memset.S (bzero): Renamed to __bzero.  Add
2260         weak_alias.
2261
2262 2007-10-17  Roland McGrath  <roland@frob.com>
2263
2264         * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU__] (F_DUPFD_CLOEXEC): New.
2265         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Implement it.
2266
2267 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
2268
2269         * version.h (VERSION): Bump to 2.7.
2270         * include/features.h (__GLIBC_MINOR__): Bump to 7.
2271
2272         [BZ #5186]
2273         * time/tzset.c (__tz_convert): Don't force testing for a change of
2274         TZ if not called from localtime.  But then also see whether the
2275         file changed, in case __use_tzfile is set.
2276
2277         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define F_DUPFD_CLOEXEC.
2278         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
2279         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
2280         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
2281         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
2282         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
2283         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h:  Likewise.
2284         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
2285
2286 2007-10-17  Jakub Jelinek  <jakub@redhat.com>
2287
2288         * sysdeps/posix/getaddrinfo.c (getaddrinfo): When sorting addresses
2289         and admin selects to be able to replace the gai.conf file, lock
2290         data structures around the qsort call.
2291
2292 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
2293
2294         * sysdeps/x86_64/cacheinfo.c: Comment out code added in support of
2295         new memset.
2296         * sysdeps/x86_64/memset.S: Revert to old version for now.  The cost is
2297         too high for the improvements.  Implement bzero unconditionally for
2298         use in libc.
2299
2300 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
2301             Jakub Jelinek  <jakub@redhat.com>
2302
2303         * time/tzfile.c (__tzfile_read): Read POSIX TZ string if available
2304         even when time_t is 32-bit.
2305         (__tzfile_compute): Override POSIX TZ string STD/DST zone names if
2306         timezone data read by __tzfile_default.  Ensure __tzname[0] is
2307         always set after the search.
2308
2309 2007-10-16  Ulrich Drepper  <drepper@redhat.com>
2310
2311         * time/tzfile.c (__tzfile_read): Help the compiler recognize
2312         unreachable code on 32-bit machines.
2313
2314 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
2315
2316         [BZ #5184]
2317         * time/strftime_l.c: Include stdbool.h.
2318         (my_strftime): New wrapper, old function renamed to...
2319         (__strftime_internal): ... new function.  Add tzset_called
2320         argument, pass it down to recursive calls, don't call tzset ()
2321         if already true, set to true after call to tzset ().
2322
2323 2007-10-16  Ulrich Drepper  <drepper@redhat.com>
2324
2325         * time/tzfile.c (__tzfile_read): Take extra memory requested by caller
2326         into account when copying TZ string.
2327
2328 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
2329
2330         * time/tzfile.c (__tzfile_compute): For use_last case set i to
2331         num_transition rather than num_transitions - 1.
2332
2333 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
2334
2335         * sysdeps/x86_64/memset.S (memset): Fix sse2_nt_move
2336         PIC indirect jump.
2337
2338         * sysdeps/x86_64/memset.S: Jump from bzero to memset using
2339         a local label rather than HIDDEN_JUMPTARGET.
2340
2341 2007-10-15  Ulrich Drepper  <drepper@redhat.com>
2342
2343         * sysdeps/x86_64/cacheinfo.c (__x86_64_shared_cache_size): Define.
2344         (init_cacheinfo): Initialize it.
2345         * sysdeps/x86_64/memset.S: Use __x86_64_shared_cache_size.
2346         Always define bzero.
2347         Remove non-glibc code.
2348         * sysdeps/x86_64/bzero.S: Make an empty file.
2349
2350 2007-10-15  H.J. Lu  <hongjiu.lu@intel.com>
2351
2352         * sysdeps/x86_64/cacheinfo.c
2353         (__x86_64_preferred_memory_instruction): New.
2354         (init_cacheinfo): Initialize __x86_64_preferred_memory_instruction.
2355
2356         * sysdeps/x86_64/memset.S: Rewrite.
2357
2358 2007-10-15  Roland McGrath  <roland@redhat.com>
2359
2360         * po/libc.pot: Regenerated.
2361
2362 2007-10-15  Ulrich Drepper  <drepper@redhat.com>
2363
2364         * nss/getXXbyYY_r.c (REENTRANT_NAME): Mangle startp and start_fct
2365         pointers.
2366
2367         [BZ #3425]
2368         * resolv/nss_dns/dns-host.c (getanswer_r): Fail with
2369         NSS_STATUS_NOTFOUND if the server replied with only a CNAME and no
2370         address record to T_A/T_AAAA requests.
2371
2372 2007-10-14  Ulrich Drepper  <drepper@redhat.com>
2373
2374         * posix/glob.c: Reimplement link_exists_p to use fstatat64.
2375
2376         * posix/glob.c: Add some branch prediction throughout.
2377
2378         * nscd/nscd_getgr_r.c (nscd_getgr_r): Store result of successful
2379         read from nscd.
2380
2381         * sysdeps/posix/getaddrinfo.c (struct sort_result): Add
2382         service_order.
2383         (rfc3484_sort): Make sure that even if qsort doesn't support
2384         stable sorting out sorting here is stable by comparing service_order.
2385         (getaddrinfo): Initialize service_order.
2386         * posix/tst-rfc3484.c (do_test): Adjust for addition of
2387         service_order field to sorting structure.
2388         * posix/tst-rfc3484-2.c (do_test): Likewise.
2389
2390         * include/time.h: Declare __tzset_parse_tz and __tzset_compute.
2391         * time/tzset.c (tzset_internal): Break TZ string parsing out into
2392         __tzset_parse_tz and updating of daylight, timezone, tzname into
2393         update_vars.
2394         (__tz_compute): Renamed from tz_compute.  Take additional parameters.
2395         (__tz_convert): Updating of tm_isdst, tm_zone, and tm_gmtoff now
2396         happens in __tz_compute.
2397         * time/tzfile.c (__tzfile_read): Also read TZ string.
2398         (find_transition): Fold into __tzfile_compute.
2399         (__tzfile_compute): For times beyond the last transition try to
2400         use the TZ string.
2401         * timezone/tst-timezone.c: Information in daylight and tzname does
2402         change for Asia/Tokyo timezone with more concrete information.
2403         Remove the test.
2404
2405         * include/stdio.h: Add libc_hidden_proto for ftello.
2406         * libio/ftello.c: Add libc_hidden_def.
2407
2408         [BZ #1140]
2409         * time/tzfile.c (__tzfile_compute): Compute tzname[] values based
2410         on the specified time and not the last entries in the file.  Move
2411         code to determine tzname[] to...
2412         (find_transition): ...here.  Add ugly guess for times before the
2413         first transition.
2414
2415 2007-10-13  Ulrich Drepper  <drepper@redhat.com>
2416
2417         [BZ #3195]
2418         * nscd/nscd_getai.c (__nscd_getai): Set errno to 0 in case we found
2419         no entry.
2420         * nscd/nscd_getgr.c (nscd_getgr_r): Likewise.
2421         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
2422         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
2423         * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
2424
2425         * nscd/nscd_getgr_r.c (nscd_getgr_r): Optimize a bit: use simpler
2426         read mechanism when there are no group members and avoid no-op
2427         read syscall in this case.
2428
2429         [BZ #3242]
2430         * nscd/nscd_helper.c (wait_on_socket): Take timeout as parameter.
2431         (__readall): If reading failed due to EAGAIN error wait a bit
2432         and possibly try again.
2433         (__readvall): Likewise.
2434
2435 2007-10-13  Bruno Haible  <bruno@clisp.org>
2436
2437         * intl/dcigettext.c (_nl_find_msg): Unlock the conversions_lock
2438         when we cannot recode the message.
2439
2440 2007-10-13  Ulrich Drepper  <drepper@redhat.com>
2441
2442         [BZ #4359]
2443         * libio/__freading.c (__freading): Don't return true for
2444         write-only streams.  For read/write streams, check whether we
2445         performed a read operation already.
2446         * libio/Makefile (tests): Add tst-ext2.
2447         * libio/tst-ext2.c: New file.
2448
2449 2007-10-12  Ulrich Drepper  <drepper@redhat.com>
2450
2451         * locale/programs/repertoire.c (repertoire_read): Always free
2452         memory for repertoire file name [Coverity CID 270].
2453
2454         * elf/cache.c (save_aux_cache): Free memory allocated for
2455         temporary file name [Coverity CID 267].
2456
2457 2007-10-12  Jakub Jelinek  <jakub@redhat.com>
2458
2459         * misc/Makefile (headers): Add bits/error.h.
2460
2461 2007-10-12  Ulrich Drepper  <drepper@redhat.com>
2462
2463         * posix/fnmatch_loop.c: Take rule index returned as part of
2464         findidx return value into account when accessing weights.
2465         * posix/regcomp.c: Likewise.
2466         * posix/regexec.c: Likewise.
2467
2468         * locale/programs/ld-collate.c (collate_read): Optimize a bit.
2469         (skip_to): Fix problems with parameter of elifdef/elifndef.
2470
2471 2007-10-11  Ulrich Drepper  <drepper@redhat.com>
2472
2473         * iconv/gconv_simple.c: Add some branch prediction.
2474
2475 2007-10-12  Jakub Jelinek  <jakub@redhat.com>
2476
2477         * locale/programs/ld-collate.c (collate_read): If ignore_content
2478         and nowtok is tok_define, eat any tok_eol tokens.
2479
2480 2007-10-11  Jakub Jelinek  <jakub@redhat.com>
2481
2482         * sysdeps/gnu/netinet/tcp.h: Include sys/socket.h if __USE_MISC.
2483         (struct tcp_md5sig): Change tcpm_addr type to struct sockaddr_storage.
2484
2485         * inet/netinet/in.h: Don't include bits/socket.h.
2486         * sysdeps/unix/sysv/linux/bits/socket.h: Only check _SYS_SOCKET_H
2487         macro.
2488         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
2489
2490 2007-10-10  Ulrich Drepper  <drepper@redhat.com>
2491
2492         * locale/programs/locfile-token.h: Remove tok_elif, add tok_elifdef
2493         and tok_elifndef.
2494         * locale/programs/locfile-kw.gperf: Likewise.
2495         * locale/programs/ld-collate.c: Implement primitive preprocessor.
2496
2497 2007-10-10  Jakub Jelinek  <jakub@redhat.com>
2498
2499         * stdio-common/printf-parse.h: Include string.h and wchar.h.
2500         (__find_specwc): Change into __extern_always_inline function.
2501         (__find_specmb): Likewise.  Remove ps argument.  Use __strchrnul.
2502         (__parse_one_specmb): Remove ps argument.
2503         * stdio-common/vfprintf.c (vfprintf): Remove mbstate variable.
2504         Adjust __find_specmb and __parse_one_specmb callers.
2505         * stdio-common/printf-prs.c (parse_printf_format): Likewise.
2506         * stdio-common/printf-parsemb.c (__find_specwc, __find_specmb):
2507         Removed.
2508         (__parse_one_specmb): Remove ps argument, adjust __find_specmb
2509         caller.
2510
2511 2007-10-09  Ulrich Drepper  <drepper@redhat.com>
2512
2513         * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Work around problem
2514         with some Pentium Ds.
2515
2516 2007-10-08  Ulrich Drepper  <drepper@redhat.com>
2517
2518         * sysdeps/unix/sysv/linux/eventfd_read.c (eventfd_read): Use
2519         __read not read.
2520         * sysdeps/unix/sysv/linux/eventfd_write.c (eventfd_write): Use
2521         __write not write.
2522
2523 2007-10-07  Ulrich Drepper  <drepper@redhat.com>
2524
2525         [BZ #181]
2526         * locale/C-time.c: Set week_1stday data to 19971201.
2527         * locale/programs/ld-time.c (time_finish): Default for
2528         first_workday is Monday.
2529
2530         [BZ #2633]
2531         * wcsmbs/wchar.h: Move many C99 functions into std namespace.
2532
2533         [BZ #5103]
2534         * posix/glob.c (glob): Recognize patterns starting \/.
2535         * posix/tst-gnuglob.c (find_file): Handle absolute path names.
2536         (main): Add test for pattern starting \/.
2537
2538         * misc/error.h: Use __const instead of const.
2539         * misc/bits/error.h: Likewise.
2540
2541 2007-10-07  Andreas Jaeger  <aj@suse.de>
2542
2543         * include/bits/error.h: New file.
2544
2545         * misc/bits/error.h (error_at_line): Fix prototype.
2546
2547 2007-10-06  Ulrich Drepper  <drepper@redhat.com>
2548
2549         [BZ #3924]
2550         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix a few
2551         more little bugs in creating the stack frame when pltexit has to
2552         be called.
2553
2554         * nscd/nscd_helper.c (__nscd_cache_search): Prevent endless loops.
2555         * nscd/connections.c (verify_persistent_db): Recognize circular lists.
2556
2557         [BZ #4407]
2558         * sysdeps/ieee754/dbl-64/e_lgamma_r.c: Fix *signgamp for -0.0.
2559         * sysdeps/ieee754/flt-32/e_lgammaf_r.c: Likewise.
2560         * sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise.
2561         * math/libm-test.inc: Add test for this case.
2562
2563         [BZ #5010]
2564         * sunrpc/svc.c (struct svc_callout): Add sc_mapped element.
2565         (svc_register): Initialize sc_mapped.  Set to TRUE if call to
2566         map service succeeded.
2567         (svc_is_mapped): New function.
2568         (svc_unregister): Use it before trying to unmap service.
2569
2570 2007-10-05  Ulrich Drepper  <drepper@redhat.com>
2571
2572         * timezone/zic.c: Update from tzcode2007h.
2573
2574         [BZ #5063]
2575         * timezone/africa: Update from tzdata2007h.
2576         * timezone/antarctica: Likewise.
2577         * timezone/asia: Likewise.
2578         * timezone/australasia: Likewise.
2579         * timezone/europe: Likewise.
2580         * timezone/leapseconds: Likewise.
2581         * timezone/northamerica: Likewise.
2582         * timezone/southamerica: Likewise.
2583         * timzeone/zone.tab: Likewise.
2584
2585         [BZ #5104]
2586         * elf/do-lookup.h (do_lookup_x): Don't ignore STT_COMMON symbols.
2587
2588         [BZ #5113]
2589         * string/bits/string2.h (__strdup): Cast parameters to calloc to
2590         avoid warning with -Wconversion.
2591         (__strndup): Likewise.
2592         Half the patch by Christian Iseli <christian.iseli@licr.org>.
2593
2594         [BZ #5112]
2595         * nscd/connections.c (restart): Don't resync if database is
2596         disabled.  Patch mostly by Brian De Wolf <bldewolf@csupomona.edu>.
2597
2598         * sysdeps/gnu/netinet/tcp.h: Define TCP_MD5SIG, TCP_MD5SIG_MAXKEYLEN,
2599         struct tcp_md5sig.  Extend struct tcp_info according to recent kernels.
2600
2601         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add eventfd,
2602         evetnfd_read, eventfd_write.
2603         * sysdeps/unix/sysv/linux/eventfd.c: New file.
2604         * sysdeps/unix/sysv/linux/eventfd_read.c: New file.
2605         * sysdeps/unix/sysv/linux/eventfd_write.c: New file.
2606         * sysdeps/unix/sysv/linux/sys/eventfd.h: New file.
2607         * sysdeps/unix/sysv/linux/Versions: Export eventfd, eventfd_read,
2608         eventfd_write for GLIBC_2.7.
2609
2610         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add signalfd.
2611         * sysdeps/unix/sysv/linux/signalfd.c: New file.
2612         * sysdeps/unix/sysv/linux/sys/signalfd.h: New file.
2613         * sysdeps/unix/sysv/linux/Versions: Export signalfd for GLIBC_2.7.
2614
2615 2007-10-04  Jakub Jelinek  <jakub@redhat.com>
2616
2617         * stdlib/msort.c: Include stdint.h.
2618         (struct msort_param): New type.
2619         (msort_with_tmp): Use struct msort_param pointer for unchanging
2620         parameters.  Add optimized handling for several common sizes
2621         and indirect sorting mode.
2622         (qsort): Adjust msort_with_tmp callers.  For big S use indirect
2623         sorting.
2624         Suggested by Belazougui Djamel .
2625
2626         * stdlib/Makefile (tests): Add tst-qsort2.
2627         * stdlib/tst-qsort2.c: New test.
2628
2629 2007-10-04  Ulrich Drepper  <drepper@redhat.com>
2630
2631         * login/login_tty.c (login_tty): The Linux kernel can return EBUSY
2632         for dup2 in case another thread races with the current one.  Retry
2633         in this case.
2634
2635         * misc/error.h: Remove support for use outside of libc.  We have to
2636         include <features.h> now.  Include <bits/error.h> if possible.
2637         * misc/bits/error.h: New file.
2638
2639 2007-10-03  Jakub Jelinek  <jakub@redhat.com>
2640
2641         * string/bits/string3.h (memcpy, memmove, mempcpy, memset, bcopy,
2642         bzero, strcpy, stpcpy, strncpy, strcat, strncat): Use
2643         __extern_always_inline functions unconditionally, drop macros.
2644
2645         * misc/sys/cdefs.h (__REDIRECT_LDBL, __REDIRECT_NTH_LDBL): New macros.
2646         * wcsmbs/bits/wchar2.h (__swprintf_alias, __vswprintf_alias): Use
2647         __REDIRECT_NTH_LDBL macro rather than __REDIRECT_NTH.
2648
2649         * misc/sys/cdefs.h (__extern_always_inline): For GCC 4.3+
2650         add __artificial__ attribute.
2651
2652 2007-10-02  Ulrich Drepper  <drepper@redhat.com>
2653
2654         * string/strcoll_l.c (STRCOLL): Correct handling of switching from
2655         backward to forward direction.
2656
2657         * string/strcoll_l.c (STRCOLL): Correct test for alloca use.
2658
2659         [BZ #645]
2660         * locale/programs/ld-collate.c (collate_finish): Compare against last
2661         used section which is known to have rules defined.
2662         (collate_read): After order_start, correctly record order of sections
2663         and queue sections up.
2664
2665 2007-10-01  Ulrich Drepper  <drepper@redhat.com>
2666
2667         [BZ #5071]
2668         * malloc/malloc.c (mremap_chunk): Avoid resizing of new block has
2669         the same number of pages.
2670         Patch by Tomash Brechko <tomash.brechko@gmail.com>.
2671
2672         * locale/programs/ld-collate.c (collate_read): After initial copy
2673         statement, continue in state 0.
2674
2675         * include/stdio_ext.h (__fsetlocking): Define as macro.
2676
2677 2007-09-30  Ulrich Drepper  <drepper@redhat.com>
2678
2679         * locale/programs/ld-collate.c (collate_finish): Compare all bytes
2680         of section order.
2681
2682         * po/pt_BR.po: Fix typo.
2683
2684 2007-09-29  Ulrich Drepper  <drepper@redhat.com>
2685
2686         * iconvdata/Makefile (modules): Add ISO8859-9E.
2687         (distribute): Add iso8859-9e.c.
2688         (gen-8bit-gap-modules): Add iso8859-9e.
2689         * iconvdata/iso8859-9e.c: New file.
2690         * iconvdata/gconv-modules: Add entries for ISO-8859-9E.
2691         * iconvdata/TESTS: Likewise.
2692         * iconvdata/tst-tables.sh: Likewise.
2693
2694         * iconvdata/koi8-r.c (HAS_HOLES): Define to 0.
2695
2696         * locale/iso-639.def: Add several new entries.
2697
2698 2007-09-24  Jakub Jelinek  <jakub@redhat.com>
2699
2700         * sysdeps/generic/ldsodefs.h (struct dl_scope_free_list): Store
2701         void * pointers instead of struct link_map **.
2702         (_dl_scope_free): Change argument type to void *.
2703         * include/link.h (struct link_map): Change type of l_reldeps
2704         to struct link_map_reldeps, move l_reldepsact into that
2705         struct too.
2706         * elf/dl-deps.c: Include atomic.h.
2707         (_dl_map_object_deps): Only change l->l_initfini when it is
2708         fully populated, use _dl_scope_free for freeing it.  Optimize
2709         removal of libs from reldeps by using l_reserved flag, when
2710         some removal is needed, allocate a new list instead of
2711         reallocating and free the old with _dl_scope_free.  Adjust
2712         for l_reldeps and l_reldepsact changes.
2713         * elf/dl-lookup.c (add_dependency): Likewise.  Reorganize to allow
2714         searching in l_initfini and l_reldeps without holding dl_load_lock.
2715         * elf/dl-fini.c (_dl_sort_fini): Adjust for l_reldeps and
2716         l_reldepsact changes.
2717         * elf/dl-close.c (_dl_close_worker): Likewise.
2718         * elf/dl-open.c (_dl_scope_free): Change argument type to void *.
2719
2720 2007-09-28  Ulrich Drepper  <drepper@redhat.com>
2721
2722         * iconvdata/Makefile (modules): Add KOI8-RU.
2723         (distribute): Add koi8-ru.c.
2724         (gen-8bit-gap-modules): Add koi8-ru.
2725         * iconvdata/koi8-ru.c: New file.
2726         * iconvdata/gconv-modules: Add entries for KOI8-RU.
2727         * iconvdata/TESTS: Likewise.
2728         * iconvdata/tst-tables.sh: Likewise.
2729
2730         * iconvdata/koi8-r.c (HAS_HOLES): Define to 0.
2731
2732 2007-09-26  Jakub Jelinek  <jakub@redhat.com>
2733
2734         * misc/sys/cdefs.h (__warndecl, __errordecl): For GCC 4.3+ define
2735         with __warning__/__error__ attributes.
2736         (__warnattr): Define.
2737         * stdlib/bits/stdlib.h (__realpath_chk_warn, __ptsname_r_chk_warn,
2738         __mbstowcs_chk_warn, __wcstombs_chk_warn): New aliases with
2739         __warnattr.
2740         (realpath, ptsname_r, mbstowcs, wcstombs): Call __*_chk_warn instead
2741         of __*_chk if compile time detectable overflow is found.
2742         * libio/bits/stdio2.h (__fgets_chk_warn, __fread_chk_warn,
2743         __fgets_unlocked_chk_warn, __fread_unlocked_chk_warn): New aliases
2744         with __warnattr.
2745         (fgets, fread, fgets_unlocked, fread_unlocked): Call __*_chk_warn
2746         instead of __*_chk if compile time detectable overflow is found.
2747         (__gets_alias): Rename to...
2748         (__gets_warn): ... this.  Add __warnattr.
2749         (gets): Call __gets_warn instead of __gets_alias.
2750         * socket/bits/socket2.h (__recv_chk_warn, __recvfrom_chk_warn): New
2751         aliases with __warnattr.
2752         (recv, recvfrom): Call __*_chk_warn instead of __*_chk if compile
2753         time detectable overflow is found.
2754         * posix/bits/unistd.h (__read_chk_warn, __pread_chk_warn,
2755         __pread64_chk_warn, __readlink_chk_warn, __readlinkat_chk_warn,
2756         __getcwd_chk_warn, __confstr_chk_warn, __getgroups_chk_warn,
2757         __ttyname_r_chk_warn, __getlogin_r_chk_warn, __gethostname_chk_warn,
2758         __getdomainname_chk_warn): New aliases with __warnattr.
2759         (read, pread, pread64, readlink, readlinkat, getcwd, confstr,
2760         getgroups, ttyname_r, getlogin_r, gethostname, getdomainname): Call
2761         __*_chk_warn instead of __*_chk if compile time detectable overflow
2762         is found.
2763         (__getgroups_chk): Rename argument to __listlen from listlen.
2764         (__getwd_alias): Rename to...
2765         (__getwd_warn): ... this.  Add __warnattr.
2766         (getwd): Call __getwd_warn instead of __getwd_alias.
2767         * wcsmbs/bits/wchar2.h (__wmemcpy_chk_warn, __wmemmove_chk_warn,
2768         __wmempcpy_chk_warn, __wmemset_chk_warn, __wcsncpy_chk_warn,
2769         __wcpncpy_chk_warn, __fgetws_chk_warn, __fgetws_unlocked_chk_warn,
2770         __mbsrtowcs_chk_warn, __wcsrtombs_chk_warn, __mbsnrtowcs_chk_warn,
2771         __wcsnrtombs_chk_warn): New aliases with __warnattr.
2772         (wmemcpy, wmemmove, wmempcpy, wmemset, mbsrtowcs, wcsrtombs,
2773         mbsnrtowcs, wcsnrtombs): Call __*_chk_warn instead of __*_chk if
2774         compile time detectable overflow is found.
2775         (wcsncpy, wcpncpy): Likewise.  For constant __n fix check whether
2776         to use __*_chk or not.
2777         (fgetws, fgetws_unlocked): Divide __bos by sizeof (wchar_t), both
2778         in comparisons which function should be called and in __*_chk*
2779         arguments.  Call __*_chk_warn instead of __*_chk if compile time
2780         detectable overflow is found.
2781         (swprintf, vswprintf): Divide __bos by sizeof (wchar_t) in
2782         __*_chk argument.
2783         * debug/tst-chk1.c (do_test): Add a few more tests.
2784
2785 2007-09-24  Ulrich Drepper  <drepper@redhat.com>
2786
2787         [BZ #5058]
2788         * intl/gettextP.h (struct loaded_domain): Add conversions_lock member.
2789         * intl/loadmsgcat.c (_nl_load_domain): Initialize conversions_lock.
2790         (_nl_unload_domain): Finalize conversions_lock.
2791         * intl/dcigettext.c (_nl_find_msg): Take conversions_lock before
2792         handling table of known conversions.
2793
2794 2007-09-24  Jakub Jelinek  <jakub@redhat.com>
2795
2796         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Use
2797         close_not_cancel_no_status instead of close.
2798
2799 2007-09-13  Aurelien Jarno  <aurelien@aurel32.net>
2800
2801         [BZ #5028]
2802         * posix/regcomp.c (lookup_collation_sequence_value): Check that
2803         nrules != 0 for multibyte chars.
2804
2805 2007-09-23  Ulrich Drepper  <drepper@redhat.com>
2806
2807         * resolv/ns_print.c (ns_sprintrrf): Handle ns_t_a6 and ns_t_opt.
2808         Provide better error message in case the type is unknown.
2809
2810         [BZ #4963]
2811         * wcsmbs/wcsnlen.c: Don't reference before checking the length.
2812         * string/stratcliff.c: Make usable to test wide char functions.
2813         * wcsmbs/wcsatcliff.c: New file.
2814         * wcsmbs/Makefiel (tests): Add wcsatcliff.
2815
2816         [BZ #4972]
2817         * iconvdata/Makefile (modules): Add MAC-CENTRALEUROPE.
2818         (distribute): Add mac-centraleurope.c.
2819         (gen-8bit-gap-modules): Add mac-centraleurope.
2820         * iconvdata/mac-centraleurope.c: New file.
2821         * iconvdata/gconv-modules: Add entries for MAC-CENTRALEUROPE.
2822         * iconvdata/TESTS: Likewise.
2823         * iconvdata/tst-tables.sh: Likewise.
2824
2825         [BZ #5043]
2826         * iconv/iconv_open.c (iconv_open): For large codeset names use malloc.
2827
2828 2007-09-21  Ulrich Drepper  <drepper@redhat.com>
2829
2830         * sysdeps/x86_64/cacheinfo.c (__x86_64_data_cache_size_half): Renamed
2831         from __x86_64_core_cache_size_half.
2832         (init_cacheinfo): Compute shared cache size for AMD processors with
2833         shared L3 correctly.
2834         * sysdeps/x86_64/memcpy.S: Adjust for __x86_64_data_cache_size_half
2835         name change.
2836         Patch in large parts by Evandro Menezes.
2837
2838 2007-09-19  Ulrich Drepper  <drepper@redhat.com>
2839
2840         * elf/dl-lookup.c (add_dependency): Handle failing memory
2841         allocation for dependency list.  Remove unnecessary check.
2842
2843         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Avoid unnecessary
2844         open/close when determining source addresses.
2845
2846         * crypt/Makefile (libcrypt-routines): Add sha256-crypt, sha256,
2847         sha512-crypt, and sha512.
2848         (tests): Add sha256test, sha256c-test, sha512test, and sha512c-test.
2849         (distribute): Add sha256.h and sha512.h.
2850         * crypt/crypt-entry.c (crypt): Recognize the new $5$ and $6$ prefixes
2851         and call the appropriate code.
2852         * crypt/sha256-crypt.c: New file.
2853         * crypt/sha256.c: New file.
2854         * crypt/sha256.h: New file.
2855         * crypt/sha256c-test.c: New file.
2856         * crypt/sha256test.c: New file.
2857         * crypt/sha512-crypt.c: New file.
2858         * crypt/sha512.c: New file.
2859         * crypt/sha512.h: New file.
2860         * crypt/sha512c-test.c: New file.
2861         * crypt/sha512test.c: New file.
2862
2863 2007-09-19  Jakub Jelinek  <jakub@redhat.com>
2864
2865         * misc/bits/syslog.h (syslog): Remove extraneous argument from
2866         the inline, pass __USE_FORTIFY_LEVEL - 1 as second argument to
2867         __syslog_chk.
2868
2869 2007-09-18  Jakub Jelinek  <jakub@redhat.com>
2870
2871         * locale/programs/charmap-dir.c (charmap_aliases): Use %ms instead of
2872         %as in fscanf format strings.
2873
2874         * sysdeps/sparc/sparc32/elf/start.S: Remove cfi_* markup.
2875         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
2876         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__thread_start):
2877         Likewise.
2878         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__thread_start):
2879         Likewise.
2880
2881         * sysdeps/generic/ldsodefs.h (DL_LOOKUP_GSCOPE_LOCK): New definition.
2882         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Or in
2883         DL_LOOKUP_GSCOPE_LOCK into flags after THREAD_GSCOPE_SET_FLAG ().
2884         * elf/dl-sym.c (do_sym): Likewise.
2885         * include/link.h (struct link_map): Add l_serial field.
2886         * elf/dl-object.c (_dl_new_object): Initialize l_serial.
2887         * elf/dl-lookup.c (add_dependency): Add flags argument.
2888         Remember map->l_serial, if DL_LOOKUP_GSCOPE_LOCK is among
2889         flags, use THREAD_GSCOPE_RESET_FLAG before and
2890         THREAD_GSCOPE_SET_FLAG after
2891         __rtld_lock_lock_recursive (GL(dl_load_lock)) to avoid deadlock.
2892         Don't dereference map until it has been found on some list.
2893         If map->l_serial changed, return -1.
2894
2895 2007-09-17  Jakub Jelinek  <jakub@redhat.com>
2896
2897         * include/stdio.h (__isoc99_fscanf, __isoc99_scanf,
2898         __isoc99_sscanf, __isoc99_vscanf): New prototypes.
2899         (__isoc99_vsscanf, __isoc99_vfscanf): New prototypes, add
2900         libc_hidden_proto.
2901         * include/wchar.h (__isoc99_fwscanf, __isoc99_wscanf,
2902         __isoc99_swscanf, __isoc99_vwscanf): New prototypes.
2903         (__isoc99_vswscanf, __isoc99_vfwscanf): New prototypes,
2904         add libc_hidden_proto.
2905         * libio/stdio.h (fscanf, scanf, sscanf, vfscanf, vscanf,
2906         vsscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX
2907         conformance requested.
2908         * wcsmbs/wchar.h (fwscanf, wscanf, swscanf, vfwscanf, vwscanf,
2909         vswscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX
2910         conformance requested.
2911         * libio/bits/stdio-ldbl.h (fscanf, scanf, sscanf, vfscanf, vscanf,
2912         vsscanf): Redirect to __nldbl___isoc99_* if strict ISO C99 or POSIX
2913         conformance requested.
2914         * wcsmbs/bits/wchar-ldbl.h (fwscanf, wscanf, swscanf, vfwscanf,
2915         vwscanf, vswscanf): Redirect to __nldbl___isoc99_* if strict
2916         ISO C99 or POSIX conformance requested.
2917         * stdio-common/Versions (libc): Export __isoc99_scanf@@GLIBC_2.7,
2918         __isoc99_vscanf@@GLIBC_2.7, __isoc99_fscanf@@GLIBC_2.7,
2919         __isoc99_vfscanf@@GLIBC_2.7, __isoc99_sscanf@@GLIBC_2.7
2920         and __isoc99_vsscanf@@GLIBC_2.7.
2921         * stdio-common/Makefile (routines): Add isoc99_scanf, isoc99_vscanf,
2922         isoc99_fscanf, isoc99_vfscanf, isoc99_sscanf and isoc99_vsscanf.
2923         (tests): Add scanf14.
2924         (CFLAGS-vfprintf.c, CFLAGS-fprintf.c, CFLAGS-printf.c,
2925         CFLAGS-vfwprintf.c, CFLAGS-vfscanf.c, CFLAGS-vfwscanf.c,
2926         CFLAGS-fscanf.c, CFLAGS-scanf.c, CFLAGS-isoc99_vfscanf.c,
2927         CFLAGS-isoc99_vscanf.c, CFLAGS-isoc99_fscanf.c,
2928         CFLAGS-isoc99_scanf.c): Add $(exceptions).
2929         (CFLAGS-scanf15.c): Add various -I paths to prevent the compiler
2930         from using internal headers.
2931         * wcsmbs/Versions (libc): Export __isoc99_wscanf@@GLIBC_2.7,
2932         __isoc99_vwscanf@@GLIBC_2.7, __isoc99_fwscanf@@GLIBC_2.7,
2933         __isoc99_vfwscanf@@GLIBC_2.7, __isoc99_swscanf@@GLIBC_2.7
2934         and __isoc99_vswscanf@@GLIBC_2.7.
2935         * wcsmbs/Makefile (routines): Add isoc99_wscanf, isoc99_vwscanf,
2936         isoc99_fwscanf, isoc99_vfwscanf, isoc99_swscanf and isoc99_vswscanf.
2937         (CFLAGS-isoc99_wscanf.c, CFLAGS-isoc99_fwscanf.c,
2938         CFLAGS-isoc99_vwscanf.c, CFLAGS-isoc99_vfwscanf.c): Add $(exceptions).
2939         (CPPFLAGS): Add -D_IO_MTSAFE_IO if needed.
2940         * stdio-common/isoc99_scanf.c: New file.
2941         * stdio-common/isoc99_vsscanf.c: New file.
2942         * stdio-common/isoc99_vscanf.c: New file.
2943         * stdio-common/isoc99_vfscanf.c: New file.
2944         * stdio-common/isoc99_fscanf.c: New file.
2945         * stdio-common/isoc99_sscanf.c: New file.
2946         * wcsmbs/isoc99_fwscanf.c: New file.
2947         * wcsmbs/isoc99_vswscanf.c: New file.
2948         * wcsmbs/isoc99_swscanf.c: New file.
2949         * wcsmbs/isoc99_wscanf.c: New file.
2950         * wcsmbs/isoc99_vwscanf.c: New file.
2951         * wcsmbs/isoc99_vfwscanf.c: New file.
2952         * libio/libio.h (_IO_FLAGS2_SCANF_STD): Define.
2953         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Also
2954         clear _IO_FLAGS2_SCANF_STD bit from _flags2.
2955         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Don't
2956         handle %as, %aS and %a[ if _IO_FLAGS2_SCANF_STD is set in _flags2.
2957         * stdio-common/scanf14.c: New test.
2958         * stdio-common/scanf15.c: New test.
2959         * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add
2960         isoc99_scanf, isoc99_fscanf, isoc99_sscanf,
2961         isoc99_vscanf, isoc99_vfscanf, isoc99_vsscanf,
2962         isoc99_wscanf, isoc99_fwscanf, isoc99_swscanf,
2963         isoc99_vwscanf, isoc99_vfwscanf and isoc99_vswscanf.
2964         * sysdeps/ieee754/ldbl-opt/Versions (libc): Export
2965         __nldbl___isoc99_scanf@@GLIBC_2.7,
2966         __nldbl___isoc99_fscanf@@GLIBC_2.7,
2967         __nldbl___isoc99_sscanf@@GLIBC_2.7,
2968         __nldbl___isoc99_vscanf@@GLIBC_2.7,
2969         __nldbl___isoc99_vfscanf@@GLIBC_2.7,
2970         __nldbl___isoc99_vsscanf@@GLIBC_2.7,
2971         __nldbl___isoc99_wscanf@@GLIBC_2.7,
2972         __nldbl___isoc99_fwscanf@@GLIBC_2.7,
2973         __nldbl___isoc99_swscanf@@GLIBC_2.7,
2974         __nldbl___isoc99_vwscanf@@GLIBC_2.7,
2975         __nldbl___isoc99_vfwscanf@@GLIBC_2.7
2976         and __nldbl___isoc99_vswscanf@@GLIBC_2.7.
2977         * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__isoc99_scanf,
2978         __isoc99_fscanf, __isoc99_sscanf, __isoc99_vscanf,
2979         __isoc99_vfscanf, __isoc99_vsscanf, __isoc99_wscanf,
2980         __isoc99_fwscanf, __isoc99_swscanf, __isoc99_vwscanf,
2981         __isoc99_vfwscanf, __isoc99_vswscanf): Add NLDBL_DECL.
2982         * sysdeps/ieee754/ldbl-opt/nldbl-compat.c
2983         (__nldbl___isoc99_scanf, __nldbl___isoc99_fscanf,
2984         __nldbl___isoc99_sscanf, __nldbl___isoc99_vscanf,
2985         __nldbl___isoc99_vfscanf, __nldbl___isoc99_vsscanf,
2986         __nldbl___isoc99_wscanf, __nldbl___isoc99_fwscanf,
2987         __nldbl___isoc99_swscanf, __nldbl___isoc99_vwscanf,
2988         __nldbl___isoc99_vfwscanf, __nldbl___isoc99_vswscanf): New
2989         functions.
2990         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfscanf.c: New file.
2991         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_swscanf.c: New file.
2992         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vwscanf.c: New file.
2993         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_wscanf.c: New file.
2994         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_scanf.c: New file.
2995         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_sscanf.c: New file.
2996         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vsscanf.c: New file.
2997         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fwscanf.c: New file.
2998         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfwscanf.c: New file.
2999         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vswscanf.c: New file.
3000         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vscanf.c: New file.
3001         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fscanf.c: New file.
3002
3003         * stdio-common/Makefile (tests): Add scanf13.
3004         (scanf13-ENV): New.
3005         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Handle
3006         m modifier followed by l.
3007         (STRING_ARG): Add width argument.
3008         (_IO_vfscanf_internal) <case L_('c')>: Handle %mc.
3009         <case L_('C')>: Handle %mlc and %mC.
3010         <case L_('s'), case L_('S'), case L_('[')>: Adjust STRING_ARG
3011         arguments.
3012         * stdio-common/scanf13.c: New test.
3013
3014         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Clear
3015         the _IO_FLAGS2_FORTIFY bit from _flags2 rather than _flags.
3016
3017 2007-09-18  Ulrich Drepper  <drepper@redhat.com>
3018
3019         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Correct return value
3020         type and __THROW marker of splice, vmsplice, and tee.
3021         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
3022         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
3023         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
3024         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
3025         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
3026         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
3027         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
3028         * sysdeps/unix/sysv/linux/syscalls.list: Mark splice, vmsplice, and tee
3029         as cancellation points.
3030
3031 2003-11-01  Daniel Jacobowitz  <dan@debian.org>
3032
3033         * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion): Don't
3034         parse more than three parts of the version number.
3035
3036 2007-09-15  Ulrich Drepper  <drepper@redhat.com>
3037
3038         * stdio-common/vfscanf.c (_IO_vfwscanf): Add support for 'm'
3039         modifier.  Patch by Jakub Jelinek.
3040
3041 2007-08-26  Jakub Jelinek  <jakub@redhat.com>
3042
3043         * sysdeps/unix/sysv/linux/i386/Makefile (sysdep_routines): Add
3044         call_fallocate in misc subdir.
3045         * sysdeps/unix/sysv/linux/i386/call_fallocate.S: New file.
3046         * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate64): Remove.
3047         * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: Use __call_fallocate
3048         instead of __fallocate64.
3049         * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: Likewise.
3050
3051 2007-09-15  Jakub Jelinek  <jakub@redhat.com>
3052
3053         * rt/Versions (librt): Export __mq_open_2@@GLIBC_2.7.
3054         * rt/Makefile (headers): Add bits/mqueue2.h.
3055         * rt/mqueue.h: Include bits/mqueue2.h if -D_FORTIFY_SOURCE=2,
3056         optimizing with GCC and __va_arg_pack_len is defined.
3057         * rt/bits/mqueue2.h: New file.
3058         * rt/mq_open.c (__mq_open): Renamed from mq_open.
3059         (mq_open): New strong_alias.
3060         (__mq_open_2): New function.
3061         * sysdeps/unix/sysv/linux/mq_open.c (__mq_open): Renamed from mq_open.
3062         (mq_open): New strong_alias.
3063         (__mq_open_2): New function.
3064         * debug/Versions (libc): Export __fortify_fail@@GLIBC_PRIVATE.
3065         * Versions.def (librt): Add GLIBC_2.7 version.
3066         * debug/fortify_fail.c (__fortify_fail): Add libc_hidden_def.
3067         * include/stdio.h (__fortify_fail): Add libc_hidden_proto.
3068
3069         * misc/sys/cdefs.h (__errordecl, __va_arg_pack_len): Define.
3070         * io/fcntl.h: Include bits/fcntl2.h when __va_arg_pack_len
3071         is defined rather than when not C++.
3072         * io/bits/fcntl2.h (__open_alias, __open64_alias, __openat_alias,
3073         __openat64_alias): New redirects.
3074         (__open_too_many_args, __open_missing_mode, __open64_too_many_args,
3075         __open64_missing_mode, __openat_too_many_args, __openat_missing_mode,
3076         __openat64_too_many_args, __openat64_missing_mode): New __errordecls.
3077         (open, open64, openat, openat64): Rewrite as __extern_always_inline
3078         functions instead of function-like macros.
3079
3080 2007-09-14  H.J. Lu  <hongjiu.lu@intel.com>
3081
3082         * sysdeps/i386/i586/memcpy.S (__memcpy_chk): New definition.
3083         * sysdeps/i386/i586/mempcpy.S (__memcpy_chk): New definition.
3084         * sysdeps/i386/i586/memset.S (__memset_chk): New definition.
3085
3086 2007-09-15  Mike Frysinger  <vapier@gentoo.org>
3087
3088         * inet/inet_net.c: Reset digit to 0 for inputs starting with "0x".
3089         * inet/tst-network.c (tests): Add edge case tests for "0", "0x", "0x0".
3090
3091 2007-09-14  Mike Frysinger  <vapier@gentoo.org>
3092
3093         * inet/tst-network.c: Increment ERRORS for failing tests.
3094
3095 2007-09-07  Jakub Jelinek  <jakub@redhat.com>
3096
3097         * misc/sys/cdefs.h (__va_arg_pack): Define for GCC 4.3+.
3098         * misc/bits/syslog.h (syslog): When __va_arg_pack is defined,
3099         implement as __extern_always_inline function.
3100         (vsyslog): Define as __extern_always_inline function unconditionally.
3101         * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf):
3102         When __va_arg_pack is defined, implement as __extern_always_inline
3103         functions.
3104         (vsprintf, vsnprintf, vprintf, vfprintf): Define as
3105         __extern_always_inline functions unconditionally.
3106         * libio/bits/stdio.h (vprintf): Ifdef out the inline when
3107         bits/stdio2.h will be included.
3108         * wcsmbs/bits/wchar2.h (__swprintf_alias): New redirect.
3109         (swprintf, wprintf, fwprintf): When __va_arg_pack is defined,
3110         implement as __extern_always_inline functions.
3111         (vswprintf, vwprintf, vfwprintf): Define as
3112         __extern_always_inline functions unconditionally.
3113         * debug/tst-chk1.c (do_test): Enable remaining tests for C++.
3114
3115 2007-09-03  Jakub Jelinek  <jakub@redhat.com>
3116
3117         * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Only
3118         define in C++ for GCC 4.3+, in C++ always use __gnu_inline__
3119         attribute.
3120         * include/features.h (__USE_EXTERN_INLINES): Define only when
3121         __extern_inline is defined.
3122         * stdlib/stdlib.h: Include bits/stdlib.h when __extern_always_inline
3123         is defined instead of when not __cplusplus.
3124         * misc/sys/syslog.h: Include bits/syslog.h when __extern_always_inline
3125         is defined instead of when not __cplusplus.
3126         * socket/sys/socket.h: Include bits/socket2.h when
3127         __extern_always_inline is defined instead of when not __cplusplus.
3128         * libio/stdio.h: Include bits/stdio2.h when __extern_always_inline
3129         is defined instead of when not __cplusplus.
3130         * posix/unistd.h: Include bits/unistd.h when __extern_always_inline
3131         is defined instead of when not __cplusplus.
3132         * string/string.h: Include bits/string3.h when __extern_always_inline
3133         is defined instead of when not __cplusplus.
3134         * wcsmbs/wchar.h: Include bits/wchar2.h when __extern_always_inline
3135         is defined instead of when not __cplusplus.
3136         (btowc, wctob): Don't guard the inlines with ifndef __cplusplus.
3137         * io/fcntl.h: Don't include bits/fcntl2.h if __extern_always_inline
3138         is not defined.
3139         * misc/bits/syslog-ldbl.h: Guard *_chk stuff with
3140         defined __extern_always_inline instead of !defined __cplusplus.
3141         * libio/bits/stdio-ldbl.h: Likewise.
3142         * wcsmbs/bits/wchar-ldbl.h: Likewise.
3143         * misc/bits/syslog.h (syslog): Don't define for C++.
3144         (vsyslog): Use __extern_always_inline function for C++ instead of
3145         a macro.
3146         * libio/bits/stdio.h (__STDIO_INLINE): Define to __extern_inline
3147         whenever that macro is defined.
3148         (vprintf): Don't provide the inline for C++.
3149         (fread_unlocked, fwrite_unlocked): Don't define the macros for C++.
3150         * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf): Don't
3151         define the macros for C++.
3152         (vsprintf, vsnprintf, vprintf, vfprintf): Define as
3153         __extern_always_inline functions for C++.
3154         * io/sys/stat.h (stat, lstat, fstat, fstatat, mknod, mknodat,
3155         stat64, lstat64, fstat64, fstatat64): Don't define if not
3156         __USE_EXTERN_INLINES.
3157         * wcsmbs/bits/wchar2.h: Fix #error message.
3158         (swprintf, wprintf, fwprintf): Don't define the macros for C++.
3159         (vswprintf, vwprintf, vfwprintf): Define using
3160         __extern_always_inline functions for C++.
3161         * string/bits/string3.h: Don't #undef macros if __cplusplus.
3162         (memcpy, memmove, mempcpy, memset, bcopy, bzero, strcpy, stpcpy,
3163         strncpy, strcat, strncat): Define as __extern_always_inline
3164         functions instead of macros for C++.
3165         * math/bits/cmathcalls.h: Guard __extern_inline routines with
3166         defined __extern_inline.
3167         * sysdeps/alpha/fpu/bits/mathinline.h (__MATH_INLINE): Define
3168         to __extern_inline whenever that macro is defined.
3169         * sysdeps/ia64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
3170         * sysdeps/i386/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
3171         * sysdeps/i386/i486/bits/string.h (__STRING_INLINE): Likewise.
3172         * sysdeps/s390/bits/string.h (__STRING_INLINE): Likewise.
3173         * sysdeps/s390/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
3174         * sysdeps/powerpc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
3175         * sysdeps/x86_64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
3176         * sysdeps/sparc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
3177         * sysdeps/unix/sysv/linux/sys/sysmacros.h (gnu_dev_major,
3178         gnu_dev_minor, gnu_dev_makedev): Remove __extern_inline from
3179         prototypes.  Only provide __extern_inline routines if
3180         __USE_EXTERN_INLINES.
3181         * debug/Makefile: Add rules to build and run tst-{,lfs}chk{4,5,6}
3182         tests.
3183         * debug/tst-chk1.c (do_prepare, do_test): Allow compilation as C++.
3184         For now avoid some *printf tests in C++.  Skip all testing
3185         if __USE_FORTIFY_LEVEL is defined, but __extern_always_inline macro
3186         is not.
3187         * debug/tst-chk4.cc: New file.
3188         * debug/tst-chk5.cc: New file.
3189         * debug/tst-chk6.cc: New file.
3190         * debug/tst-lfschk4.cc: New file.
3191         * debug/tst-lfschk5.cc: New file.
3192         * debug/tst-lfschk6.cc: New file.
3193         * include/wchar.h (__vfwprintf_chk, __vswprintf_chk): Avoid
3194         prototypes in C++.
3195         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
3196         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
3197         __vfprintf_chk, __fgets_unlocked_chk, __fgets_chk): Likewise.
3198
3199 2007-09-13  Ulrich Drepper  <drepper@redhat.com>
3200
3201         * po/cs.po: Update from translation team.
3202
3203 2007-09-11  Roland McGrath  <roland@redhat.com>
3204
3205         * posix/Makefile ($(objpfx)getconf.speclist): Make it empty if cross
3206         compiling.
3207
3208 2007-09-07  Samuel Thibault  <samuel.thibault@ens-lyon.org>
3209
3210         * sysdeps/mach/hurd/bits/ioctls.h (TAB3): New macro.
3211
3212 2007-09-05  Roland McGrath  <roland@redhat.com>
3213
3214         * manual/signal.texi (Signaling Another Process): Typo fix.
3215         From Karl Berry <karl@freefriends.org>.
3216
3217 2007-08-29  Ulrich Drepper  <drepper@redhat.com>
3218
3219         * sysdeps/unix/sysv/linux/check_pf.c (IFA_F_OPTIMISTIC): Define to
3220         zero if not defined.
3221         (make_request): Recognize optimistic addresses and treat them like
3222         deprecated addresses.
3223         Reported by Neil Horman <nhorman@redhat.com>.
3224
3225 2007-08-28  Ulrich Drepper  <drepper@redhat.com>
3226
3227         * nscd/connections.c (send_ro_fd): Also transfer file size.
3228         * nscd/nscd_helper.c (get_mapping): If nscd also transfers the
3229         file size don't call fstat.
3230
3231         * nscd/nscd_helper.c (get_mapping): Avoid the pread call, just go
3232         ahead and map the file.  This should always be correct and we can
3233         catch problems later.
3234
3235 2007-08-28  Jakub Jelinek  <jakub@redhat.com>
3236
3237         * libio/bits/stdio2.h (__fread_chk, __fread_unlocked_chk): New
3238         prototypes.
3239         (__fread_alias, __fread_unlocked_alias): New aliases.
3240         (fread): New extern inline.
3241         (fread_unlocked): Likewise.  Undef macro before definition of
3242         the inline function.
3243         * debug/Makefile (routines): Add fread_chk and fread_u_chk.
3244         (CFLAGS-fread_chk.c, CFLAGS-fread_u_chk.c): Add.
3245         * debug/Versions (libc): Export __fread_chk@@GLIBC_2.7
3246         and __fread_unlocked_chk@@GLIBC_2.7.
3247         * debug/fread_chk.c: New file.
3248         * debug/fread_u_chk.c: New file.
3249         * debug/tst-chk1.c (do_test): Add fread and fread_unlocked tests.
3250
3251 2007-08-27  Jakub Jelinek  <jakub@redhat.com>
3252
3253         * sysdeps/unix/sysv/linux/syscalls.list
3254         (personality): Change caller to EXTRA.
3255
3256 2007-08-25  Ulrich Drepper  <drepper@redhat.com>
3257
3258         * iconvdata/iso-2022-kr.c (BODY): Fake initialization of array buf
3259         to keep gcc quiet.
3260         * iconvdata/iso-2022-cn.c (BODY): Likewise.
3261
3262         * locale/programs/ld-collate.c (collate_output): Avoid warning if
3263         NDEBUG is defined.
3264
3265         * Makerules: Use -p option with mkdir.
3266
3267         * sunrpc/key_prot.c (xdr_unixcred): Work around gcc alias warning.
3268         * nis/nis_xdr.c (_xdr_nis_server): Likewise.
3269         (_xdr_directory_obj): Likewise.
3270         (xdr_entry_obj): Likewise.
3271         (xdr_group_obj): Likewise.
3272         (xdr_link_obj): Likewise.
3273         (xdr_table_obj): Likewise.
3274         (_xdr_nis_result): Likewise.
3275         (_xdr_ns_request): Likewise.
3276         (_xdr_ib_request): Likewise.
3277         (_xdr_nis_taglist): Likewise.
3278         (xdr_cback_data): Likewise.
3279         * nis/yp_xdr.c (xdr_ypmaplist): Likewise.
3280         (xdr_ypresp_maplist): Likewise.
3281
3282         * stdio-common/Makefile: Avoid format string warning for tst-sprint.
3283
3284         * posix/regex_internal.h: Prevent some declarations and definitions
3285         to be seen when used in tests.
3286
3287         * posix/tst-rfc3484.c (__idna_to_unicode_lzlz): Initialize *OUTPUT.
3288         * posix/tst-rfc3484-2.c (__idna_to_unicode_lzlz): Likewise.
3289
3290         * debug/Makefile: Disable format checking when compiling tst-chk?.c.
3291
3292         * config.make.in (datarootdir): Add to shut up configure.
3293
3294         * sysdeps/x86_64/cacheinfo.c (handle_amd): Fix computation of
3295         associativity for fully-associative caches.
3296
3297         * sysdeps/x86_64/cacheinfo.c (handle_amd): Handle L3 cache
3298         requests.  Fill on more associativity values for L2.
3299         Patch mostly by Evandro Menezes.
3300
3301 2007-08-24  Ulrich Drepper  <drepper@redhat.com>
3302
3303         * sysdeps/unix/sysv/linux/x86_64/init-first.c
3304         (_libc_vdso_platform_setup): Avoid using exported variable by using
3305         alias.
3306
3307         * resolv/arpa/nameser.h (NS_OPT_DNSSEC_OK): Define.
3308
3309         * sysdeps/unix/sysv/linux/i386/syscalls.list: No reason to mark
3310         fallocate64 as EXTRA.  It is not referenced if the symbol isn't
3311         defined.
3312
3313 2007-08-23  Ulrich Drepper  <drepper@redhat.com>
3314
3315         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Correctly
3316         align stack for call if pltexit is to be used.
3317
3318         [BZ #3924]
3319         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Correctly
3320         align for function call in case pltexit has to be called later.
3321
3322         * sysdeps/i386/dl-trampoline.S (_dl_runtime_resolve): Avoid
3323         implicit atomic operation when storing function pointer.
3324         (_dl_runtime_profile): Likewise.
3325
3326 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
3327
3328         * nis/nis_table.c (nis_list): Don't fail if __follow_path returned
3329         NIS_NOTFOUND.
3330
3331 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
3332
3333         [BZ #4566]
3334         * string/strtok.c: Fix typo in comment.
3335
3336         [BZ #4582]
3337         * debug/segfault.c: Fix typos in comments.
3338
3339         [BZ #4588]
3340         * stdio-common/tempnam.c: Fix comment, it is not checked that
3341         TMPDIR points to a writable directory.
3342
3343         [BZ #4726]
3344         * resolv/res_send.c (__libc_res_nsend): Initialize all of the
3345         memory allocated for the name server address.
3346
3347         [BZ #4946]
3348         * nscd/connections.c (handle_request): Using sendfile always
3349         requires that mmap is used for the database.
3350         Patch by Petr Baudis <pasky@suse.cz>.
3351
3352         [BZ #4905]
3353         * nscd/hstcache.c (cache_addhst): When reloading an entry which
3354         suddenly has two or more addresses, ignore it and remove the old
3355         entry.
3356
3357         [BZ #4814]
3358         * resolv/res_hconf.c: Prepare for compiling outside libc.
3359         * nscd/res_hconf.c: New file.
3360         * nscd/Makefile (nscd-modules): Add res_hconf.  Add rules to build
3361         the new file.
3362         * nscd/gethstbynm2_r.c (NEED__RES_HCONF): Define.
3363         * nscd/gethstbyad_r.c (NEED__RES_HCONF): Likewise.
3364
3365         * nscd/hstcache.c (cache_addhst): Minimal optimization.
3366
3367         [BZ #4925]
3368         * debug/pcprofiledump.c: Turn on internationalization by calling
3369         setlocale.  Patch mostly by Benno Schulenberg.
3370
3371         [BZ #4936]
3372         * iconv/gconv.c (__gconv): If flush was successful, clear rest of
3373         the state.
3374         * iconvdata/Makefile: Add rules to build and run bug-iconv5.
3375         * iconvdata/bug-iconv5.c: New file.
3376
3377 2007-08-04  Carlos O'Donell  <carlos@systemhalted.org>
3378
3379         [BZ #4896]
3380         * elf/elf.h: Define R_PARISC_PLABEL21L, R_PARISC_PLABEL14R,
3381         R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT, R_PARISC_TLS_GD21L,
3382         R_PARISC_TLS_GD14R, R_PARISC_TLS_GDCALL, R_PARISC_TLS_LDM21L,
3383         R_PARISC_TLS_LDM14R, R_PARISC_TLS_LDMCALL, R_PARISC_TLS_LDO21L,
3384         R_PARISC_TLS_LDO14R, R_PARISC_TLS_DTPMOD32, R_PARISC_TLS_DTPMOD64,
3385         R_PARISC_TLS_DTPOFF32, R_PARISC_TLS_DTPOFF64, R_PARISC_TLS_LE21L,
3386         R_PARISC_TLS_LE14R, R_PARISC_TLS_IE21L, R_PARISC_TLS_IE14R,
3387         R_PARISC_TLS_TPREL32, R_PARISC_TLS_TPREL64.
3388
3389 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
3390
3391         [BZ #4937]
3392         * elf/do-lookup.h (do_lookup_x): Minimal improvement in hash
3393         lookup loop.  Suggested by John Reiser.
3394
3395 2007-08-21  Jakub Jelinek  <jakub@redhat.com>
3396
3397         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Include tls.h.
3398
3399 2007-08-20  Ulrich Drepper  <drepper@redhat.com>
3400
3401         * csu/libc-start.c: Don't handle VDSO_SETUP here.
3402         * sysdeps/unix/sysv/linux/init-first.c: Handle it here instead.
3403         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: Renamed to...
3404         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...this.  New file.
3405         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Move VDSO_SETUP code
3406         to...
3407         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...here.  New file.
3408
3409 2007-08-18  Ulrich Drepper  <drepper@redhat.com>
3410
3411         * po/nl.po: Update from translation team.
3412
3413 2007-08-16  Andreas Jaeger  <aj@suse.de>
3414
3415         * locale/localeinfo.h: Make _nl_category_name_idxs extern.
3416         Reported by Peter Festner <peter.festner@ewetel.net>.
3417
3418 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
3419
3420         * login/tst-grantpt.c (test_einval): Add 3rd argument to open.
3421
3422 2007-08-16  Jakub Jelinek  <jakub@redhat.com>
3423
3424         * elf/Makefile ($(objpfx)ld.so): Use readelf -s and awk instead of nm -u
3425         to check for undefined symbols.
3426
3427         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone):
3428         If the syscall fails, set errno to the actual returned error number
3429         rather than EINVAL.
3430         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If
3431         arguments are incorrect, set errno to EINVAL, if the syscall
3432         fails, set errno to the actual returned error number.
3433
3434         * stdlib/bits/stdlib-ldbl.h (__strtold_internal): Remove.
3435         * wcsmbs/bits/wchar-ldbl.h (__wcstold_internal): Remove.
3436
3437         * sysdeps/sparc/sparc32/sparcv9b/memcpy.S: Moved to...
3438         * sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S: ... here.  New
3439         file.
3440         (ASI_PNF, ASI_BLK_P): Don't define.
3441         * sysdeps/sparc/sparc32/sparcv9v/memcpy.S: Moved to...
3442         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S: ... here.  New
3443         file.
3444         * sysdeps/sparc/sparc32/sparcv9v/memset.S: Moved to...
3445         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S: ... here.  New
3446         file.
3447
3448 2007-08-15  Jakub Jelinek  <jakub@redhat.com>
3449
3450         * sysdeps/sparc/fpu/fraiseexcpt.c (__feraiseexcept): Fix raising
3451         FE_UNDERFLOW on Niagara CPUs.
3452
3453         * sysdeps/sparc/fpu/feholdexcpt.c (feholdexcept): Clear all
3454         exceptions.
3455
3456 2007-08-14  Jakub Jelinek  <jakub@redhat.com>
3457
3458         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup): No
3459         need to check GLRO(dl_hwcap) & HWCAP_SPARC_FLUSH on sparcv9.
3460         (sparc_fixup_plt): Add do_flush argument instead of figuring whether
3461         flush should be used or not inside of the function.
3462         (elf_machine_fixup_plt, elf_machine_rela): Adjust caller.
3463
3464         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone,
3465         __thread_start): Use HIDDEN_JUMPTARGET.
3466         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone,
3467         __thread_start): Likewise.
3468         * sysdeps/unix/sysv/linux/sparc/sysdep.h (JUMPTARGET): Define.
3469
3470         * sysdeps/ieee754/ldbl-64-128/strtold_l.c (__STRTOF): Declare.
3471         Add libc_hidden_proto.
3472         (STRTOF): Add libc_hidden_proto.
3473         (___new_strtold_l, ___new_wcstold_l): New weak aliases.
3474         (strtold_l, wcstold_l): Use them as second argument for
3475         long_double_symbol.
3476
3477 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
3478
3479         * elf/dl-misc.c: Undo last change.  The kernel won't allow it.
3480
3481 2007-08-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3482
3483         * stdlib/strtold_l.c: Include wchar.h if needed.  Add libc_hidden_def.
3484
3485 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
3486
3487         * po/bg.po: New file.  From the translation team.
3488
3489 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
3490
3491         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PSELECT,
3492         __ASSUME_PPOLL, __ASSUME_ATFCTS, __ASSUME_SET_ROBUST_LIST,
3493         __ASSUME_UTIMENSAT, __ASSUME_FALLOCATE): Update per-arch conditions
3494         when each feature was introduced.
3495
3496         * sysdeps/unix/sysv/linux/dl-vdso.c: Don't include dl-hash.h.
3497         * sysdeps/unix/sysv/linux/dl-vdso.h: Don't include dl-hash.h if NDEBUG.
3498         (CHECK_HASH): New macro.
3499         (PREPARE_VERSION): Use it.
3500
3501         * sysdeps/unix/sysv/linux/pselect.c (__generic_pselect): Only provide
3502         prototype if not __ASSUME_PSELECT.
3503         * sysdeps/unix/sysv/linux/ppoll.c (__generic_ppoll): Only provide
3504         prototype if not __ASSUME_PPOLL.
3505
3506         * sysdeps/unix/sysv/linux/dl-osinfo.h (ROUND): #undef after use.
3507
3508         * sysdeps/unix/clock_settime.c (freq, __pthread_clock_settime,
3509         hp_timing_settime): Don't define or declare if HANDLED_CPUTIME
3510         is defined.
3511
3512 2007-08-13  Ulrich Drepper  <drepper@redhat.com>
3513
3514         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
3515         (_libc_vdso_platform_setup): If vDSO is not available point
3516         __vdso_gettimeofday to the vsyscall.
3517         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S [SHARED]: Use
3518         __vdso_gettimeofday instead of vsyscall.
3519
3520 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
3521
3522         * nscd/servicescache.c: Include kernel-features.h.
3523         * nscd/gai.c: Likewise.
3524         * sysdeps/unix/sysv/linux/statfs64.c: Likewise.
3525         * sysdeps/unix/sysv/linux/fstatfs64.c: Likewise.
3526         * sysdeps/unix/sysv/linux/fxstatat.c: Likewise.
3527         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S: Likewise.
3528         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S: Likewise.
3529         * sysdeps/unix/sysv/linux/xstatconv.c: Likewise.
3530         * sysdeps/unix/sysv/linux/if_index.c: Likewise.
3531         * sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: Likewise.
3532         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
3533
3534 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
3535
3536         * elf/dl-dst.h: No need for _dl_dst_count, _dl_dst_substitute,
3537         and _dl_get_origin defines anymore.
3538
3539         * sysdeps/unix/sysv/linux/clock_gettime.c (maybe_syscall_gettime_cpu):
3540         Build fix for systems which might lack POSIX timer support.
3541
3542         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
3543         (_libc_vdso_platform_setup): Mangle function pointers before storing
3544         them.
3545         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INLINE_VSYSCALL):
3546         Demangle vdso pointer before use.
3547         (INTERNAL_VSYSCALL): Likewise.
3548
3549         * elf/cache.c (primes): Mark as const.
3550         Noted by Roland McGrath.
3551
3552 2007-08-01  Andreas Jaeger  <aj@suse.de>
3553             Jakub Jelinek  <jakub@redhat.com>
3554
3555         * elf/ldconfig.c (opt_ignore_aux_cache): Add new option.
3556         (options): Add option.
3557         (parse_opt): Handle option.
3558         (manual_link): Adjust process_file caller.  Call implicit_soname.
3559         (search_dir): Formatting.  Use and populate auxiliary cache.
3560         (main): Load and save auxiliary cache.
3561         * elf/readlib.c (process_file): Add stat_buf argument.  Pass struct
3562         stat64 from fstat64 to caller.
3563         (implicit_soname): New function.
3564         * elf/readelflib.c (process_elf_file): If DT_SONAME is not present,
3565         leave *soname as NULL.
3566         * elf/cache.c: Include libgen.h.
3567         (print_entry, print_cache, compare, save_cache, add_to_cache):
3568         Formatting and cleanups.
3569         (aux_cache_entry_id, aux_cache_entry, aux_cache_file_entry,
3570         aux_cache_file): New structures.
3571         (AUX_CACHEMAGIC): Define.
3572         (primes): New array.
3573         (aux_hash_size, aux_hash): New variables.
3574         (aux_cache_entry_id_hash, nextprime, init_aux_cache,
3575         search_aux_cache, insert_to_aux_cache, add_to_aux_cache,
3576         load_aux_cache, save_aux_cache): New functions.
3577         * sysdeps/generic/ldconfig.h (_PATH_LDCONFIG_AUX_CACHE): Define.
3578         (init_aux_cache, search_aux_cache, add_to_aux_cache,
3579         load_aux_cache, save_aux_cache, implicit_soname): New prototypes.
3580         (process_file): Adjust prototype.
3581
3582 2007-08-12  Jakub Jelinek  <jakub@redhat.com>
3583
3584         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Include stddef.h
3585         with __need_size_t.
3586
3587 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
3588
3589         * sysdeps/unix/sysv/linux/dl-vdso.c (_dl_vdso_vsym): Expect
3590         r_found_version structure as second parameter.
3591         * sysdeps/unix/sysv/linux/dl-vdso.h (PREPARE_VERSION): Define.
3592         (_dl_vdso_vsym): Change type of second parameter accordingly.
3593         * sysdeps/unix/sysv/linux/x86-64/libc-start.c
3594         (_libc_vdso_platform_setup): Adjust.
3595         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
3596         (_libc_vdso_platform_setup): Likewise.
3597
3598         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.c: Move to...
3599         * sysdeps/unix/sysv/linux/dl-vdso.c: ...here.
3600         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.h: Move to...
3601         * sysdeps/unix/sysv/linux/dl-vdso.h: ...here.
3602         * csu/libc-start.c: Pretty printing.
3603         Use VDSO_SETUP if defined.
3604         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Define VDSO_SETUP
3605         and let generic code call into _libc_vdso_platform_setup.
3606         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: New file.
3607         * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: New file.
3608         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Pretty printing.
3609         Define INLINE_VSYSCALL and INTERNAL_VSYSCALL.
3610         * sysdeps/unix/sysv/linux/x86_64/Versions: Export __vdso_clock_gettime
3611         for GLIBC_PRIVATE.
3612         * sysdeps/unix/sysv/linux/x86_64/Makefile [subdir=elf]
3613         (sysdep_rountines): Add dl-vdso.
3614
3615         * sysdeps/unix/sysv/linux/powerpc/Makefile: Use sysdep_routines instead
3616         of routines.
3617
3618         * sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h: Add
3619         attribute_hidden to __vdso_gettimeofday prototype.
3620
3621 2007-08-12  Roland McGrath  <roland@redhat.com>
3622
3623         * manual/stdio.texi (Variable Arguments Output): Fix xref to gcc manual.
3624         From: Karl Berry <karl@freefriends.org>.
3625
3626 2007-08-11  Ulrich Drepper  <drepper@redhat.com>
3627
3628         * elf/dl-misc.c (_dl_sysdep_read_whole_file): We really don't need
3629         an atime update for the files we read.
3630
3631 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
3632
3633         * shadow/lckpwdf.c (__lckpwdf): Use O_CLOEXEC if possible.
3634
3635         * nscd/connections.c: Use O_CLOEXEC if possible.  Use mkostemp
3636         instead of mkstemp.
3637
3638         * misc/Makefile (routines): Add mkostemp and mkostemp64.
3639         * misc/Versions: Export mkostemp and mkostemp64 for GLIBC_2.7.
3640         * misc/mkostemp.c: New file.
3641         * misc/mkostemp64.c: New file.
3642         * stdlib/stdlib.h: Declare the new functions.
3643         * sysdeps/posix/tempname.c: Add new parameter which is added to
3644         the flags for open.  Remove __GT_BIGFILE handling.
3645         * stdio-common/tempname.c: Likewise.
3646         * include/stdio.h: Adjust __gen_tempname prototype.
3647         Renumber __GT_* constants.
3648         * libio/oldtmpfile.c: Adjust for __gen_tempname interface change.
3649         * misc/mkdtemp.c: Likewise.
3650         * misc/mkstemp.c: Likewise.
3651         * misc/mkstemp64.c: Likewise.
3652         * misc/mktemp.c: Likewise.
3653         * stdio-common/tempnam.c: Likewise.
3654         * stdio-common/tmpfile.c: Likewise.
3655         * stdio-common/tmpfile64.c: Likewise.
3656         * stdio-common/tmpnam.c: Likewise.
3657         * stdio-common/tmpnam_r.c: Likewise.
3658
3659 2007-08-10  Roland McGrath  <roland@frob.com>
3660
3661         * sysdeps/mach/hurd/bits/ioctls.h (NLDLY, TABDLY, BSDLY, VTDLY):
3662         New macros.
3663         (NLDELAY, CRDELAY, TBDELAY, BSDELAY, VTDELAY): Define to those.
3664         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
3665
3666 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
3667
3668         * nss/nss_files/files-XXX.c (internal_setent): Use O_CLOEXEC if
3669         possible.
3670         * nss/nss_files/files-alias.c (internal_setent): Likewise.
3671         * nss/Makefile (libnss_files-routines): Add files-have_o_cloexec.
3672         * nss/nss_files/files-have_o_cloexec.c: New file.
3673
3674         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Use O_CLOEXEC if
3675         available.
3676
3677 2007-08-10  Jakub Jelinek  <jakub@redhat.com>
3678
3679         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c (___new_strtold_l,
3680         ___new_wcstold_l): New weak aliases.
3681         (strtold_l, wcstold_l): Use them as second argument for
3682         long_double_symbol.
3683
3684 2007-08-09  Ulrich Drepper  <drepper@redhat.com>
3685
3686         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: Use correct
3687         register in test for error.
3688
3689         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_CLOEXEC): Define.
3690         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_CLOEXEC): Likewise.
3691
3692         * po/sv.po: Update from translation team.
3693
3694 2007-08-06  Roland McGrath  <roland@redhat.com>
3695
3696         * include/stdlib.h: Add libc_hidden_proto for strto*, __strto*_l.
3697         Remove __strto*_l inlines.
3698         * include/wchar.h: Add libc_hidden_proto for wcsto*, __wcsto*_l.
3699         * stdlib/strtod.c: Add libc_hidden_def.
3700         * stdlib/strtod_l.c: Likewise.
3701         * stdlib/strtold.c [__LONG_DOUBLE_MATH_OPTIONAL]: Add libc_hidden_proto
3702         for __new_strtold and __new_wcstold.
3703         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c: Add libc_hidden_proto for
3704         __STRTOF, STRTOF.
3705         * stdlib/strtol.c: Add libc_hidden_def.
3706         * stdlib/strtol_l.c: Likewise.
3707         * sysdeps/wordsize-64/strtol.c: Add libc_hidden_ver for strtoll and
3708         strtoq.
3709
3710         * scripts/data/localplt-powerpc-linux-gnu.data: New file.
3711
3712         * scripts/data/localplt-x86_64-linux-gnu.data: File renamed to ...
3713         * scripts/data/localplt-generic.data: ... here.
3714         * elf/Makefile (check-data): Get generic file if no other.
3715         ($(objpfx)check-localplt.out): Make target unconditional.
3716
3717         * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion):
3718         Use ElfW(Nhdr).
3719
3720 2007-08-05  Ulrich Drepper  <drepper@redhat.com>
3721
3722         * po/zh_CN.po: Updated translation from translation team.
3723
3724 2007-08-05  Jakub Jelinek  <jakub@redhat.com>
3725
3726         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket):
3727         Don't use CGOTSETUP and CGOTRESTORE macros.
3728
3729 2007-08-04  Roland McGrath  <roland@redhat.com>
3730
3731         * posix/Makefile ($(objpfx)getconf.speclist): Fix typo.
3732
3733 2007-08-04  Jakub Jelinek  <jakub@redhat.com>
3734
3735         * io/bits/fcntl2.h (open, open64, openat, openat64): Add
3736         __extension__ around the whole statement expression.
3737
3738 2007-08-04  Ulrich Drepper  <drepper@redhat.com>
3739
3740         * sysdeps/unix/opendir.c (__alloc_dir): Correct order of DIR
3741         elements during initialization.
3742
3743         * po/pl.po: Updated translation from translation team.
3744         * po/tr.po: Likewise.
3745         * po/nl.po: Likewise.
3746
3747 2007-08-03  Ulrich Drepper  <drepper@redhat.com>
3748
3749         * rt/aio.h: Add __nonnull attributes.
3750
3751 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
3752
3753         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Properly handle -0.
3754         * stdlib/Makefile (tests): Add tst-strtod5.
3755         (tst-strtod5-ENV): New.
3756         * stdlib/tst-strtod5.c: New file.
3757
3758         * intl/dcigettext.c (_nl_find_msg): Free encoding if __gconv_open
3759         failed.
3760         * intl/finddomain.c (_nl_find_domain): Free normalized_codeset
3761         on failure.
3762
3763         * elf/dl-load.c (decompose_rpath): Free copy if result couldn't be
3764         allocated.
3765
3766 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
3767
3768         * rt/mqueue.h (mq_timedreceive, mq_timedsend): Fix nonnull argument
3769         numbers.
3770
3771 2007-08-02  Ulrich Drepper  <drepper@redhat.com>
3772
3773         * io/Makefile (aux): Add have_o_cloexec.
3774         * include/fcntl.h: Declare __have_o_cloexec.
3775         * io/have_o_cloexec.c: New file.
3776         * sysdeps/unix/opendir.c (__opendir): Use O_CLOEXEC is available.
3777         (__alloc_dir): If O_CLOEXEC has been used, don't duplicate the
3778         fcntl call if not necessary.
3779         * login/utmp_file.c (setutent_file): Use __have_o_cloexec instead
3780         of local variable.
3781
3782         * sysdeps/unix/opendir.c (__alloc_dir): Don't initialize ->data.
3783         Avoid memset, add explicit initialization.
3784         * sysdeps/unix/dirstream.h (struct __dirstream): Move data elemtn
3785         to the end and change into zero-sized array.
3786         Move lock member to fill a hole on 64-bit platforms.
3787
3788         * stdlib/stdlib.h: Remove __strto*_internal prototypes and strto*
3789         inline functions.
3790         * include/stdlib.h: Add __strto*_internal prototypes here.
3791         * wcsmbs/wchar.h: Remove __wcsto*_internal prototypes and wcsto*
3792         inline functions.
3793         * include/wchar.h: Add __wcsto*_internal prototypes.
3794         * sysdeps/generic/inttypes.h: No need to protect the declaration
3795         of the __strto*_internal and __wcsto*_internal members here.
3796
3797         * rt/mqueue.h: Change const to __const and add nonnull attributes.
3798
3799 2007-08-02  Roland McGrath  <roland@redhat.com>
3800
3801         * posix/Makefile ($(inst_libexecdir)/getconf): Make hard links to
3802         $(inst_bindir)/getconf if possible.
3803
3804         * posix/Makefile ($(objpfx)getconf.speclist): New target.
3805         (generated): Add it.
3806         ($(inst_libexecdir)/getconf): Use it.
3807
3808 2007-08-01  Ulrich Drepper  <drepper@redhat.com>
3809
3810         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Using
3811         /proc is faster and sufficient.  /sys is still needed for
3812         __get_nprocs_conf.
3813
3814 2007-08-01  Jakub Jelinek  <jakub@redhat.com>
3815
3816         * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate): Add fallocate
3817         syscall as __fallocate64.
3818         * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: New file.
3819         * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: New file.
3820
3821 2007-07-30  Jakub Jelinek  <jakub@redhat.com>
3822
3823         * stdlib/tst-strtod2.c (do_test): Use %tu in fmt string for ptrdiff_t
3824         value.
3825
3826         * stdio-common/tst-fmemopen2.c (do_test): Avoid fmt string warning
3827         if off_t is different rank from size_t.
3828
3829         * sysdeps/generic/unwind-dw2.c (extract_cie_info, execute_cfa_program,
3830         uw_frame_state_for): Avoid type punning warnings.
3831         * sysdeps/generic/unwind-dw2-fde-glibc.c
3832         (_Unwind_IteratePhdrCallback): Likewise.
3833         * sysdeps/generic/unwind-dw2-fde.c (_Unwind_Find_FDE): Likewise.
3834         (binary_search_single_encoding_fdes, binary_search_mixed_encoding_fdes,
3835         get_cie_encoding, linear_search_fdes): Don't mix char and unsigned char
3836         pointers.
3837
3838 2007-07-31  Ulrich Drepper  <drepper@redhat.com>
3839
3840         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs_conf): Count
3841         total processors using sysfs.
3842         (__get_nprocs): Use sysfs to determine which processors are online.
3843
3844 2007-07-31  Jakub Jelinek  <jakub@redhat.com>
3845
3846         * sysdeps/unix/sysv/linux/posix_fallocate.c (posix_fallocate): Fix
3847         syscall arguments count.
3848
3849         * stdio-common/tfformat.c (sprint_doubles): Add 12 new tests.
3850
3851 2007-07-30  Roland McGrath  <roland@redhat.com>
3852
3853         * manual/libc.texinfo: Update copyrights, formatting magic, and
3854         @dircategory.  From Karl Berry <karl@freefriends.org>.
3855
3856 2007-07-29  Ulrich Drepper  <drepper@redhat.com>
3857
3858         [BZ #4860]
3859         * io/Makefile (headers): Add bits/fcntl2.h.
3860
3861         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO_S): Optimize
3862         using gcc builtin.
3863         (__CPU_EQUAL_S): Likewise.
3864
3865         * posix/Makefile (routines): Add sched_cpualloc and sched_cpufree.
3866         (tests): Add tst-cpuset.
3867         * posix/sched_cpualloc.c: New file.
3868         * posix/sched_cpufree.c: New file.
3869         * posix/tst-cpuset.c: New file.
3870         * posix/Versions: Export __sched_cpualloc and __sched_cpufree for
3871         GLIBC_2.7.
3872         * sysdeps/unix/sysv/linux/bits/sched.h: Define __CPU_*_S macros.
3873         * posix/sched.h: Define old CPU_* macros in temers of __CPU_*_S
3874         macros.  Define CPU_*_S macros.
3875
3876 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
3877
3878         * posix/getconf.c (vars): Add missing _SC_LEVEL4_CACHE_LINESIZE
3879         entry.
3880
3881         [BZ #4858]
3882         * stdio-common/printf_fp.c (___printf_fp): Fix special case of
3883         #.0g and value rounded to 1.0.
3884         * stdio-common/tfformat.c (sprint_doubles): Add two new tests.
3885
3886 2007-07-26  Jakub Jelinek  <jakub@redhat.com>
3887
3888         * locale/programs/ld-monetary.c (monetary_finish): Avoid range check
3889         for int_frac_digits and frac_digits.
3890
3891         * login/logout.c (logout): Avoid aliasing violation.
3892         * login/logwtmp.c (logwtmp): Likewise.
3893
3894         * libio/genops.c (_IO_un_link): Avoid aliasing violation.
3895
3896         * nscd/selinux.c (preserve_capabilities): Initialize new_caps
3897         to avoid warning.
3898         * iconv/gconv_open.c (__gconv_open): Initialize ptr to avoid
3899         warning.
3900         * nis/nis_subr.c (nis_getnames): Initialize saveptr to avoid
3901         warning.
3902         * resolv/inet_ntop.c (inet_ntop6): Initialize best.len and cur.len
3903         to avoid warnings.
3904
3905         * nss/nsswitch.c (__nss_lookup_function): Don't cast &ni->known to
3906         void **.
3907         * nss/nsswitch.h (service_user): Use void * type for KNOWN field.
3908
3909         * nss/nss_files/files-hosts.c (LINE_PARSER): Cast host_addr to
3910         char * to avoid warning.
3911         * nis/nss_nis/nis-hosts.c (LINE_PARSER): Likewise.
3912
3913         * timezone/Makefile (CFLAGS-zdump.c): Add -fwrapv.
3914
3915         * locale/programs/ld-ctype.c (ctype_finish, set_class_defaults,
3916         allocate_arrays): Cast second argument to charmap_find_symbol
3917         to char * to avoid warnings.
3918
3919         * locale/programs/repertoire.c (repertoire_new_char): Change
3920         from_nr, to_nr and cnt to unsigned long, adjust printf format
3921         string.
3922
3923         * locale/programs/ld-collate.c (insert_value, handle_ellipsis):
3924         Cast second argument to new_element to char * to avoid warnings.
3925
3926         * locale/weightwc.h (findidx): Cast &extra[-i] to const int32_t *.
3927
3928         * intl/gettextP.h (struct loaded_domain): Change plural to const
3929         struct expression *.
3930         * intl/plural-eval.c (plural_eval): Change first argument to
3931         const struct expression *.
3932         * intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Change first
3933         argument to const struct expression **.
3934         * intl/plural-exp.h (EXTRACT_PLURAL_EXPRESSION, plural_eval): Adjust
3935         prototypes.
3936         * intl/loadmsgcat (_nl_unload_domain): Cast away const
3937         in call to __gettext_free_exp.
3938
3939         * posix/fnmatch.c (fnmatch): Rearrange code to avoid maybe
3940         unitialized wstring/wpattern var warnings.
3941
3942         * posix/runtests.c (struct a_test): Make data field const char *.
3943
3944         * stdio-common/tst-sprintf2.c (main): Don't declere u, v and buf
3945         vars if not LDBL_MANT_DIG >= 106.
3946
3947         * stdio-common/Makefile (CFLAGS-vfwprintf.c): Add -Wno-unitialized.
3948
3949         * stdio-common/vfprintf.c (vfprintf): Cast first arugment to
3950         __find_specmb to avoid warning.
3951
3952         * rt/tst-mqueue1.c (do_one_test): Add casts to avoid warnings.
3953
3954         * debug/test-strcpy_chk.c (do_tests, do_random_tests): Add casts
3955         to avoid warnings.
3956
3957         * sysdeps/ieee754/ldbl-96/s_roundl.c (huge): Add L suffix to
3958         initializer.
3959
3960         * sysdeps/unix/clock_gettime.c (clock_gettime): Only define
3961         tv var when it will be actually used.
3962
3963         * sunrpc/rpc_cmsg.c (xdr_callmsg): Cast IXDR_PUT_* to void
3964         to avoid warnings.
3965
3966         * iconvdata/gbk.c (BODY): Make buf and cp char instead of unsigned
3967         char array resp. pointer.
3968         * iconvdata/iso-2022-kr.c (BODY): Make buf unsigned char instead of
3969         char array.
3970         * iconvdata/cns11643.h (cns11643_to_ucs4): Change first argument
3971         to const unsigned char **.
3972         (ucs4_to_cns11643): Change second argument to unsigned char *.
3973         * iconvdata/euc-tw.c (BODY): Change endp type to
3974         const unsigned char *.
3975         * iconvdata/iso-ir-165.h (ucs4_to_isoir165): Change second argument
3976         to unsigned char *.
3977         * iconvdata/ibm1008_420.c (LOOP_NEED_FLAGS): Don't define.
3978         * iconvdata/iso-2022-cn.c (BODY): Change buf to unsigned char array.
3979         * iconvdata/iso-2022-cn-ext.c (BODY): Change buf, tmpbuf, tmp
3980         types to unsigned char pointers/arrays instead of char.
3981         * iconvdata/jis0201.h (ucs4_to_jisx0201): Change second argument
3982         to unsigned char *.
3983         * iconvdata/jis0208.h (ucs4_to_jisx0208): Likewise.
3984         * iconvdata/jis0212.h: Include assert.h.
3985         (ucs4_to_jisx0212): Change second argument to unsigned char *.
3986         assert that if cp[0] is not '\0', cp[1] is not '\0' either instead
3987         of trying to handle that.
3988         * iconvdata/euc-kr.c (euckr_from_ucs4): Initialize also cp[1] to
3989         shut up a warning.
3990         * iconvdata/euc-jp-ms.c (from_ucs4_lat1, from_ucs4_greek,
3991         from_ucs4_cjk, from_ucs4_cjkcpt, from_ucs4_extra): Change type to
3992         two dimensional const unsigned char arrays.
3993         (BODY): Cast "" to (const unsigned char *) for assignment to cp.
3994         Initialize endp to inptr to shut up a warning.
3995
3996 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
3997
3998         [BZ #4772]
3999         * time/strptime_l.c (__strptime_internal): Silently ignore
4000         strftime modifiers and field width in recursive calls.
4001
4002         * include/time.h (enum ptime_locale_status): Remove.
4003         (__strptime_internal): Remove decided and era_cnt arguments,
4004         add statep argument.
4005         * time/strptime_l.c (__strptime_internal): Remove decided
4006         and era_cnt arguments, add statep argument.  Don't recompute
4007         any fields in recursive calls, only update caller's tm
4008         and state, if recursive call fails, don't change tm nor
4009         any state.
4010         (get_alt_number): Adjust.
4011         (recursive): Adjust caller.
4012         (strptime): Likewise.
4013         * time/strptime.c (strptime): Likewise.
4014
4015 2007-07-19  Jakub Jelinek  <jakub@redhat.com>
4016
4017         * iconv/gconv_int.h (__GCONV_NULCONV): New internal only error code.
4018         * iconv/gconv_cache.c (__gconv_lookup_cache): Return __GCONV_NULCONV
4019         if from and to charsets are the same.
4020         * iconv/gconv_db.c (__gconv_find_transform): Likewise.
4021         * intl/dcigettext.c (_nl_find_msg): Return NULL even if __gconv_open
4022         returns __GCONV_NOCONV, but not for __GCONV_NULCONV.
4023
4024 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
4025
4026         * wcsmbs/wchar.h: Only define wint_t if __need_wint_t.
4027         Don't define wint_t when __need_mbstate_t unless it
4028         is necessary.
4029         (__mbstate_t): Use __WINT_TYPE__ rather than wint_t
4030         in the typedef if possible.
4031         * wctype/wctype.h (wint_t): Define by including
4032         wchar.h with __need_wint_t instead of including stddef.h
4033         with __need_wint_t and as fallback definining it ourselves.
4034         * iconv/gconv.h (__need_wint_t): Define before including
4035         wchar.h.
4036         * sysdeps/gnu/_G_config.h: Don't include gconv.h if not _LIBC
4037         or _GLIBCPP_USE_WCHAR_T.
4038         (__need_wchar_t): Don't define
4039         if not _LIBC or _GLIBCPP_USE_WCHAR_T.
4040         (__need_wint_t): Don't define before including stddef.h,
4041         define before including wchar.h only if _LIBC or
4042         _GLIBCPP_USE_WCHAR_T.
4043         (_G_iconv_t): Don't define if not _LIBC or _GLIBCPP_USE_WCHAR_T.
4044         * sysdeps/mach/hurd/_G_config.h: Likewise.
4045         * sysdeps/generic/_G_config.h: Likewise.
4046         * libio/libio.h (__wunderflow, __wuflow, __woverflow): Only
4047         prototype if _LIBC or _GLIBCPP_USE_WCHAR_T.
4048         (_IO_getwc_unlocked, _IO_putwc_unlocked): Only define
4049         if _LIBC or _GLIBCPP_USE_WCHAR_T.
4050
4051 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
4052
4053         * sysdeps/posix/posix_fallocate64.c: Undefine
4054         __posix_fallocate64_l64 before alias handling.
4055         * sysdeps/unix/sysv/linux/posix_fallocate.c: New file.
4056         * sysdeps/unix/sysv/linux/posix_fallocate64.c: New file.
4057         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate.c: New file.
4058         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate64.c: New file.
4059
4060         * io/tst-posix_fallocate.c: Include <fcntl.h>.
4061
4062 2007-07-23  Jakub Jelinek  <jakub@redhat.com>
4063
4064         * locale/programs/ld-collate.c (atwc): New variable.
4065         (add_to_tablewc): New toplevel function, moved from collate_output.
4066         (collate_output): Remove add_to_tablewc nested function.
4067
4068         * iconv/iconvconfig.c (hash_table, hash_size): New toplevel vars.
4069         (name_insert): New function.
4070         (write_output): Remove hash_table and hash_size vars and name_insert
4071         nested function.
4072
4073 2007-07-24  Roland McGrath  <roland@redhat.com>
4074
4075         * Makerules (install-others-programs-nosubdir): New target.
4076         (install-no-libc.a-nosubdir): Depend on it.
4077
4078         * iconv/Makefile (install-others-programs): Set this instead of
4079         install-others.
4080         * login/Makefile (install-others-programs): Likewise.
4081         * posix/Makefile (install-others-programs): Likewise.
4082
4083         * Makerules (install-no-libc.a-nosubdir): Clean up conditional
4084         dependencies.
4085
4086 2007-07-23  Ulrich Drepper  <drepper@redhat.com>
4087
4088         * io/Makefile (tests): Add tst-posix_fallocate.
4089         * io/tst-posix_fallocate.c: New file.
4090
4091         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4092         __ASSUME_FALLOCATE.
4093
4094 2007-07-22  Roland McGrath  <roland@frob.com>
4095
4096         * hurd/getdport.c: Add missing copyright year update.
4097
4098         * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU] (O_CLOEXEC): New macro.
4099         * hurd/port2fd.c (_hurd_port2fd): Implement O_CLOEXEC.
4100
4101 2007-07-22  Ulrich Drepper  <drepper@redhat.com>
4102
4103         * login/utmp_file.c (setutent_file): Use O_CLOEXEC if possible.
4104
4105         * libio/fileops.c (_IO_new_file_fopen): Recognize 'e' flag and set
4106         O_CLOEXEC is needed.
4107         * nis/nss_compat/compat-grp.c: Use 'e' flag when opening file.
4108         Avoid additional fcntl to set O_CLOEXEC if not needed.
4109         * nis/nss_compat/compat-initgroups.c: Likewise.
4110         * nis/nss_compat/compat-pwd.c: Likewise.
4111         * nis/nss_compat/compat-spwd.c: Likewise.
4112
4113 2007-07-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
4114
4115         [BZ #3665]
4116         * manual/errno.texi: Change ECANCELED value to 119.
4117
4118         [BZ #4610]
4119         * mach/lock-intern.h: Include <sys/cdefs.h>.
4120
4121         [BZ #4178]
4122         * sysdeps/mach/hurd/sigaction.c (__sigaction): Check ACT != NULL before
4123         reading A.
4124