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