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