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