* sysdeps/i386/dl-machine.h (elf_machine_rel): Implement
[platform/upstream/glibc.git] / ChangeLog
1 2009-03-14  Ulrich Drepper  <drepper@redhat.com>
2
3         * sysdeps/i386/dl-machine.h (elf_machine_rel): Implement
4         STT_GNU_IFUNC handling.
5         (elf_machine_rela): Likewise.
6
7 2009-03-13  Ulrich Drepper  <drepper@redhat.com>
8
9         * config.h.in (USE_MULTIARCH): Define.
10         * configure.in: Handle --enable-multi-arch.
11         * elf/dl-runtime.c (_dl_fixup): Handle STT_GNU_IFUNC.
12         (_dl_fixup_profile): Likewise.
13         * elf/do-lookup.c (dl_lookup_x): Likewise.
14         * sysdeps/x86_64/dl-machine.h: Handle STT_GNU_IFUNC.
15         * elf/elf.h (STT_GNU_IFUNC): Define.
16         * include/libc-symbols.h (libc_ifunc): Define.
17         * sysdeps/x86_64/cacheinfo.c: If USE_MULTIARCH is defined, use the
18         framework in init-arch.h to get CPUID values.
19         * sysdeps/x86_64/multiarch/Makefile: New file.
20         * sysdeps/x86_64/multiarch/init-arch.c: New file.
21         * sysdeps/x86_64/multiarch/init-arch.h: New file.
22         * sysdeps/x86_64/multiarch/sched_cpucount.c: New file.
23
24         * config.make.in (experimental-malloc): Define.
25         * configure.in: Handle --enable-experimental-malloc.
26         * malloc/Makefile: Handle experimental-malloc flag.
27         * malloc/malloc.c: Implement PER_THREAD and ATOMIC_FASTBINS features.
28         * malloc/arena.c: Likewise.
29         * malloc/hooks.c: Likewise.
30         * malloc/malloc.h: Define M_ARENA_TEST and M_ARENA_MAX.
31
32 2009-03-11  Ulrich Drepper  <drepper@redhat.com>
33
34         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Add branch
35         prediction.  A few size optimizations.
36
37 2009-03-10  Ulrich Drepper  <drepper@redhat.com>
38
39         * time/tzset.c: Optimize a bit for size.
40
41 2009-03-10  Jakub Jelinek  <jakub@redhat.com>
42
43         * include/stdio.h (fmemopen): Add libc_hidden_proto.
44         * libio/fmemopen.c (fmemopen): Add libc_hidden_def.
45
46         * elf/sprof.c: Avoid warning about multi-line comment.
47
48 2009-03-10  Ulrich Drepper  <drepper@redhat.com>
49
50         * time/tzset.c (__tzset_parse_tz): Use correct string when parsing
51         DST name.
52         * time/tst-posixtz.c: Add tests for quoted timezone names.
53
54 2009-03-10  Jakub Jelinek  <jakub@redhat.com>
55
56         * posix/unistd.h (_POSIX_VERSION, _POSIX2_VERSION, _POSIX2_C_BIND,
57         _POSIX2_C_DEV, _POSIX2_SW_DEV, _POSIX2_LOCALEDEF): Define to
58         200809L instead of 200112L.
59         (_XOPEN_VERSION): For __USE_XOPEN2K8 define to 700.
60         * posix/tst-sysconf.c (STDVER): Define to 200809L instead of 200112L.
61
62         * stdlib/quick_exit.c (quick_exit): Pass &__quick_exit_funcs
63         instead of __quick_exit_funcs to __run_exit_handlers.
64         * stdlib/at_quick_exit.c (at_quick_exit): Add attribute_hidden.
65         * stdlib/exit.h (__run_exit_handlers): Add noreturn attribute.
66         (__cxa_at_quick_exit): Remove attribute_hidden.
67         * stdlib/exit.c (exit): Pass &__exit_funcs instead of __exit_funcs
68         to __run_exit_handlers.
69         * stdlib/cxa_at_quick_exit.c (__cxa_at_quick_exit): Remove
70         attribute_hidden.
71
72 2009-03-10  Ulrich Drepper  <drepper@redhat.com>
73
74         * po/id.po: Update from translation team.
75
76 2009-02-18  Jakub Jelinek  <jakub@redhat.com>
77
78         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Use
79         .machine push; .machine "power6" and .machine pop around mtfsf
80         insns outside of _ARCH_PWR6 define.
81         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
82         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S:
83         Likewise.
84         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S:
85         Likewise.
86         * sysdeps/powerpc/fpu/tst-setcontext-fpscr.c (_SET_DI_FPSCR): Likewise.
87         * sysdeps/powerpc/fpu/fenv_libc.h (fesetenv_register,
88         relax_fenv_state): Likewise.
89
90 2009-03-08  Ulrich Drepper  <drepper@redhat.com>
91
92         * stdlib/Makefile (routines): Add quick_exit, at_quick_exit, and
93         cxa_at_quick_exit.
94         (static-only-routines): Add at_quick_exit.
95         * stdlib/Versions: Export quick_exit and __cxa_at_quick_exit for
96         GLIBC_2.10.
97         * stdlib/quick_exit.c: New file.
98         * stdlib/at_quick_exit.c: New file.
99         * stdlib/cxa_at_quick_exit.c: New file.
100         * stdlib/cxa_atexit.c (__cxa_atexit): Move body to new function.  Call
101         it appropriately.
102         (__internal_atexit): New function.
103         (__new_exitfn): Now takes parameter to point to the list to use.
104         * stdlib/cxa_finalize.c: Remove quick_exit handlers, don't call them.
105         * stdlib/exit.c (__run_exit_handlers): New function.  Split from...
106         (exit): ...here.  Just call __run_exit_handlers appropriately.
107         * stdlib/exit.h: Declare __quick_exit_funcs, __run_exit_handlers,
108         __internal_atexit, __cxa_at_quick_exit.  Adjust __new_exitfn.
109         * stdlib/on_exit.c: Adjust call to __new_exitfn.
110         * stdlib/stdlib.h: Declare at_quick_exit and quick_exit.
111
112         * po/id.po: Update from translation team.
113
114 2009-03-07  Ulrich Drepper  <drepper@redhat.com>
115
116         * po/ru.po: Update from translation team.
117
118 2009-03-04  Ulrich Drepper  <drepper@redhat.com>
119
120         * po/nl.po: Update from translation team.
121
122 2009-03-03  Ulrich Drepper  <drepper@redhat.com>
123
124         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Declare fallocate{,64}.
125         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
126         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
127         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
128         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
129         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
130         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
131
132         * po/pl.po: Update from translation team.
133
134 2009-03-02  Ulrich Drepper  <drepper@redhat.com>
135
136         [BZ #7083]
137         * sysdeps/unix/sysv/linux/fallocate.c: New file.
138         * sysdeps/unix/sysv/linux/fallocate64.c: New file.
139         * sysdeps/unix/sysv/linux/wordsize-64/fallocate64.c: New file.
140         * sysdeps/unix/sysv/linux/wordsize-64/fallocate.c: New file.
141         * sysdeps/unix/sysv/linux/i386/fallocate64.c: New file.
142         * sysdeps/unix/sysv/linux/i386/fallocate.c: New file.
143         * sysdeps/unix/sysv/linux/Versions: Export fallocate and fallocate64
144         for GLIBC_2.10.
145         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
146         Add fallocate and fallocate64.
147
148         * io/fcntl.h: Pretty printing.
149
150 2009-03-02  Richard Guenther  <rguenther@suse.de>
151
152         * misc/sys/cdefs.h (__extern_always_inline): Add __artificial__
153         attribute also for non-C99 inline semantics variant.
154
155 2009-02-12  Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>
156
157         * sysdeps/powerpc/powerpc32/power7/fpu/Implies: New file.
158         * sysdeps/powerpc/powerpc32/power7/Implies: Likewise.
159         * sysdeps/powerpc/powerpc64/power7/fpu/Implies: Likewise.
160         * sysdeps/powerpc/powerpc64/power7/Implies: Likewise.
161         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/fpu/Implies:
162         Likewise.
163         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/fpu/Implies:
164         Likewise.
165
166 2009-03-02  Ulrich Drepper  <drepper@redhat.com>
167
168         * po/cs.po: Update from translation team.
169
170 2009-02-28  Ulrich Drepper  <drepper@redhat.com>
171
172         * po/bg.po: Update from translation team.
173         * po/sv.po: Likewise.
174         * po/fi.po: Likewise.
175         * po/vi.po: Likewise.
176
177 2009-02-27  Roland McGrath  <roland@redhat.com>
178
179         * Makeconfig (%.v.i): Depend on Makeconfig.
180         Exclude % lines from initial #-comment removal.
181
182 2009-02-27  Ulrich Drepper  <drepper@redhat.com>
183
184         * po/ko.po: Update from translation team.
185
186 2009-02-26  Roland McGrath  <roland@redhat.com>
187
188         * shadow/lckpwdf.c (__lckpwdf): Move FLAGS inside block using it,
189         avoids unused warning.
190
191 2009-02-26  Andrew Stubbs  <ams@codesourcery.com>
192             SUGIOKA Toshinobu  <sugioka@itonet.co.jp>
193
194         * sysdeps/unix/sysv/linux/sh/sys/procfs.h: Don't include signal.h,
195         sys/ucontext.h and asm/elf.h.  Include sys/user.h.
196         * sysdeps/unix/sysv/linux/sh/sys/user.h: Don't include features.h
197         and asm/user.h.  Include asm/ptrace.h.
198         (PTRACE_GETREGS, PTRACE_SETREGS, PTRACE_GETFPREGS,
199         PTRACE_SETFPREGS, PTRACE_GETFDPIC, PTRACE_GETFDPIC_EXEC,
200         PTRACE_GETFDPIC_INTERP, PTRACE_GETDSPREGS, PTRACE_SETDSPREGS):
201         Undefine.
202         (start_thread): Don't undefine.
203         (elf_greg_t, ELF_NGREG, elf_fpregset_t, user_fpu_struct, user):
204         Define.
205
206 2009-02-26  Ulrich Drepper  <drepper@redhat.com>
207
208         * wctype/wctype.h: The *_l functions are in POSIX 2008.
209         * wcsmbs/wchar.h: mbsnrtowcs, open_wmemstream, wcpcpy, wcpncpy,
210         wcscasecmp, wcsdup, wcsncasecmp, wcsnlen, wcsnrtombs,
211         wcscasecmp_l, wcsncasecmp_l, wcscoll_l, and wcsxfrm_l.
212         * sysdeps/mach/hurd/bits/posix_opt.h: Reset value of macros from
213         200112L to 200809L.
214         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Likewise.
215         * posix/getconf.c (vars): Add _SC_THREAD_ROBUST_PRIO_INHERIT and
216         _SC_THREAD_ROBUST_PRIO_PROTECT entries.
217         * bits/confname.h: Add _SC_THREAD_ROBUST_PRIO_INHERIT and
218         _SC_THREAD_ROBUST_PRIO_PROTECT.
219         * posix/unistd.h: fexecve is in POSIX 2008.
220         * time/time.h: strftime_l is in POSIX 2008.
221         * io/sys/stat.h: futimens is in POSIX 2008.
222         * string/strings.h: strcasecmp_l and strncasecmp_l are in POSIX 2008.
223         * string/string.h: stpcpy, stpncpy, strndup, strnlen, strsignal,
224         strcoll_l, strerror_l, and strxfrm_l are in POSIX 2008.
225         * stdlib/stdlib.h: mkdtemp is in POSIX 2008.
226         * libio/stdio.h: dprintf, fmemopen, getdelim, getline,
227         open_memstream, and vdprintf are in POSIX 2008.
228
229 2009-02-25  Ulrich Drepper  <drepper@redhat.com>
230
231         * include/features.h: Define macros for XPG7/POSIX 2008.
232         * ctype/ctype.h: The *_l functions are in POSIX 2008.
233         * dirent/dirent.h: alphasort, dirfd, scandir, and fdopendir are in
234         POSIX 2008.
235         * locale/langinfo.h: nl_langinfo_l is in POSIX 2008.
236         * locale/xlocale.h: Define locale_t type.
237         * locale/locale.h: duplocale, freelocale, newlocale, uselocale are
238         in POSIX 2008.  Don't define locale_t here.
239         * stdlib/monetary.h: strfmon_l is in POSIX 2008.
240         * sysdeps/unix/sysv/linux/bits/stat.h: Protect UTIME_NOW and
241         UTIME_OMIT only with __USE_ATFILE.
242         * signal/signal.h: Declare psignal and psiginfo for POSIX 2008.
243         * stdio-common/psiginfo.c: New file.
244         * stdio-common/psiginfo-data.h: New file.
245         * stdio-common/psiginfo-define.h: New file.
246         * stdio-common/Makefile (routines): Add psiginfo.
247         * stdio-common/Versions: Export psiginfo for GLIBC_2.10.
248         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
249         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
250         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
251         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
252         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
253         * io/sys/stat.h: Move mknodat definition into same conditional as
254         mknod.
255         * time/sys/time.h: futimesat is not among the functions accepted
256         into the POSIX standard.
257
258         * include/features.h: If no feature selection given and we select
259         by default a POSIX mode, also define __USE_POSIX_IMPLICITLY.
260         * posix/Versions: Export __posix_getopt.
261         * posix/getopt.c (_getopt_initialize): Take additional parameter.
262         Use it to alternatively initialize __posixly_correct.
263         (_getopt_internal_r): Take addition parameter.  Pass on to
264         _getopt_initialize.
265         (_getopt_internal): Take addition parameter.  Pass on to
266         _getopt_internal_r.
267         (getopt): Pass additional zero to _getopt_internal.
268         (__posix_getopt): New function.
269         * posix/getopt.h: Add redirection for getopt.
270         * posix/getopt1.c (getopt_long): Pass additional zero to
271         _getopt_internal.
272         (getopt_long_only): Likewise.
273         (_getopt_long_r): Pass additional zero to _getopt_internal_r.
274         (_getopt_long_only_r): Likewise.
275         * posix/getopt_int.h: Adjust declarations of _getopt_internal and
276         _getopt_internal_r.
277
278 2009-02-24  Ulrich Drepper  <drepper@redhat.com>
279
280         * bits/confname.h: Define _SC_TRACE_EVENT_NAME_MAX, _SC_TRACE_NAME_MAX,
281         _SC_TRACE_SYS_MAX, _SC_TRACE_USER_EVENT_MAX, _SC_XOPEN_STREAMS.
282         * sysdeps/posix/sysconf.c (__sysconf): Handle
283         _SC_TRACE_EVENT_NAME_MAX, _SC_TRACE_NAME_MAX, _SC_TRACE_SYS_MAX,
284         _SC_TRACE_USER_EVENT_MAX, _SC_XOPEN_STREAMS.
285
286 2009-02-24  Roland McGrath  <roland@redhat.com>
287
288         [BZ #9895]
289         * README.template: Reworded not to use substituted version number.
290         Renamed to ...
291         * README: ... here (no longer generated).
292         * Makefile (README): Target removed.
293
294 2009-02-24  Ulrich Drepper  <drepper@redhat.com>
295
296         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf):
297         /proc/sys/kernel/rtsig_max doesn't exist anymore, use getrlimit
298         instead.
299
300         * io/sys/stat.h: The lstat functions have been mandatory since 2001.
301
302         * time/tzset.c (tzset_internal): Correct parsing of TZ envvar.
303
304 2009-02-22  Ulrich Drepper  <drepper@redhat.com>
305
306         * po/bg.po: Update from translation team.
307
308 2009-02-16  Jakub Jelinek  <jakub@redhat.com>
309
310         * stdlib/monetary.h: Uglify function parameter names.
311         * sunrpc/rpc/pmap_clnt.h: Likewise.
312         * sunrpc/rpc/svc.h: Likewise.
313         * sunrpc/rpc/xdr.h: Likewise.
314         * sunrpc/rpc/clnt.h: Likewise.
315         * resolv/netdb.h: Likewise.
316         * resolv/arpa/nameser.h: Likewise.
317         * resolv/resolv.h: Likewise.
318         * argp/argp.h: Likewise.
319         * locale/langinfo.h: Likewise.
320         * io/sys/stat.h: Likewise.
321         * posix/spawn.h: Likewise.
322         * nis/rpcsvc/nislib.h: Likewise.
323         * malloc/obstack.h: Likewise.
324         * sysdeps/ia64/bits/link.h: Likewise.
325         * sysdeps/i386/bits/link.h: Likewise.
326         * sysdeps/s390/bits/link.h: Likewise.
327         * sysdeps/powerpc/bits/link.h: Likewise.
328         * sysdeps/x86_64/bits/link.h: Likewise.
329         * sysdeps/sparc/bits/link.h: Likewise.
330         * sysdeps/sh/bits/link.h: Likewise.
331         * sysdeps/unix/sysv/linux/i386/sys/io.h: Likewise.
332         * sysdeps/unix/sysv/linux/x86_64/sys/io.h: Likewise.
333         * sysdeps/unix/sysv/linux/sparc/sys/eventfd.h: Likewise.
334         * sysdeps/unix/sysv/linux/sys/eventfd.h: Likewise.
335
336 2008-12-01  Fredrik Unger  <fred@tree.se>
337
338         * soft-fp/double.h [_FP_W_TYPE_SIZE >= 64] (FP_UNPACK_SEMIRAW_D,
339         FP_UNPACK_SEMIRAW_DP): Use _FP_UNPACK_RAW_1 instead of
340         _FP_UNPACK_RAW_2, fix up first argument.
341
342 2009-02-15  Ulrich Drepper  <drepper@redhat.com>
343
344         * sysdeps/unix/sysv/linux/getsysstats.c (next_line): New function.
345         (GET_NPROCS_PARSER): Change parameters and use next_line.
346         (__get_nprocs): Rewrite to not use stdio routines.
347         * sysdeps/unix/sysv/linux/sparc/getsysstats.c (GET_NPROCS_PARSER):
348         Change parameters and use next_line.
349
350 2009-02-13  Ulrich Drepper  <drepper@redhat.com>
351
352         [BZ #5381]
353         * nscd/nscd.h: Remove definitions and declarations for mem_in_flight.
354         Change mempool_alloc prototype.
355         * nscd/mem.c (gc): Don't handle mem_in_flight.
356         (mempool_alloc): Third parameter now only indicates whether this is the
357         first call (to allocate data) or not.  If it is, get db rdlock.
358         Release it on error.  Don't handle mem_in_flight.
359         * nscd/aicache.c (addhstaiX): Mark he parameter as const.
360         Adjust third parameter of mempool_alloc calls.
361         Nothing to do here in case mempool_alloc fails.
362         Avoid local variable shadowing parameter.  No need to get db rdlock
363         before calling cache_add.
364         * nscd/cache.c (cache_add): Adjust call to mempool_alloc.  There is
365         no mem_in_flight array anymore.
366         * nscd/connections.c: Remove definition and handling of mem_in_flight.
367         * nscd/grpcache.c (cache_addgr): Adjust third parameter of
368         mempool_alloc calls.  Mark he parameter as const.  Nothing to do here
369         in case mempool_alloc fails. No need to get db rdlock before calling
370         cache_add.
371         * nscd/hstcache.c (cache_addhst): Likewise.
372         * nscd/initgrcache.c (addinitgroupsX): Likewise.
373         * nscd/servicescache.c (cache_addserv): Likewise.
374         * nscd/pwdcache.c (cache_addpw): Likewise.  Remove some debugging code.
375
376 2009-02-11  Ulrich Drepper  <drepper@redhat.com>
377
378         * po/lt.po: Update from translation team.
379
380 2009-02-10  Ulrich Drepper  <drepper@redhat.com>
381
382         * elf/dl-load.c (open_verify): In case VALID_ELF_HEADER is
383         defined, allow additional data to be added using the optional
384         MORE_ELF_HEADER_DATA macro.
385         * sysdeps/unix/sysv/linux/ldsodefs.h (VALID_ELF_HEADER,
386         VALID_ELF_OSABI, VALID_ELF_ABIVERSION, MORE_ELF_HEADER_DATA): Define.
387
388 2009-02-08  Ulrich Drepper  <drepper@redhat.com>
389
390         * include/atomic.h: Define catomic_and if not already defined.
391         * sysdeps/x86_64/bits/atomic.h: Define catomic_and.
392         * sysdeps/i386/i486/bits/atomic.h: Likewise.
393
394 2009-02-07  Ulrich Drepper  <drepper@redhat.com>
395
396         * malloc/malloc.c (_int_free): Second argument is now mchunkptr.
397         Change all callers.
398         (_int_realloc): Likewise.  Third argument is now padded size
399         All _int_* functions are now static.
400
401         * malloc/hooks.c: Change all callers to _int_free and _int_realloc.
402         * malloc/arena.c: Likewise.
403         * include/malloc.h: Remove now unnecessary declarations of the _int_*
404         functions.
405
406         * sunrpc/rpc_common.c: We cannot move _null_auth into .rodata that
407         easily.
408
409         * malloc/malloc.c: Add branch prediction for use of the hooks.
410
411         * grp/compat-initgroups.c [NOT_IN_libc] (__libc_use_alloca): Define.
412
413 2009-02-06  Ulrich Drepper  <drepper@redhat.com>
414
415         [BZ #7095]
416         * bits/confname.h: Add SUSv7 macros for getconf environments.
417         * bits/environments.h: Likewise.
418         * sysdeps/unix/sysv/linux/i386/bits/environments.h: Likewise.
419         * sysdeps/unix/sysv/linux/powerpc/bits/environments.h: Likewise.
420         * sysdeps/unix/sysv/linux/s390/bits/environments.h: Likewise.
421         * sysdeps/unix/sysv/linux/sparc/bits/environments.h: Likewise.
422         * sysdeps/unix/sysv/linux/x86_64/bits/environments.h: Likewise.
423         * posix/confstr.c: Handle SUSv5 and SUSv7 environments.
424         * posix/getconf.c: Likewise.
425         * posix/sysconf.c: Likewise.
426         * sysdeps/posix/sysconf.c: Likewise.
427         * posix/Makefile (getconf.speclist): Also collect SUSv5 and SUSv7
428         environments.
429
430 2009-01-16  Petr Baudis  <pasky@suse.cz>
431
432         [BZ #9753]
433         * resolv/res_libc.c (__res_maybe_init): Call __res_vinit()
434         even if we currently have zero nscount.
435
436 2009-02-06  Ulrich Drepper  <drepper@redhat.com>
437
438         [BZ #9781]
439         * grp/compat-initgroups.c (compat_call): Switch to use malloc when
440         the input line is too long.
441
442         * po/Makefile (libc.pot): Add f_print as function taking c-format
443         parameter.
444
445         * debug/xtrace.sh: Unify translatable messages.
446         * elf/ldd.bash.in: Likewise.
447         * elf/sprof.c: Likewise.
448         * locale/programs/locale.c: Likewise.
449         * malloc/memusage.sh: Likewise.
450         * nss/getent.c: Likewise.
451
452 2009-02-06  Joseph Myers  <joseph@codesourcery.com>
453
454         * debug/pcprofiledump.c (print_version,
455         argp_program_version_hook): New function.
456         * elf/ldconfig.c (more_help): New function.
457         (argp): Use it.
458         * elf/sln.c (usage): New function.
459         (main): Support --help and --version.
460         * malloc/memusagestat.c (print_version): New function.
461         (argp_program_version_hook): New variable.
462         * nscd/nscd.c (more_help): New function.
463         (argp): Use it.
464         * posix/getconf.c (main): Send --version output to stdout.
465         Support --help.
466         * sunrpc/rpc_main.c (usage, options_usage): Take STREAM and STATUS
467         arguments.  All callers changed.
468         (print_version): New function.
469         (parseargs): Support --help and --version.
470         * sunrpc/rpcinfo.c (usage): Take STREAM argument.  All callers
471         changed.
472         (print_version): New function.
473         (main): Use getopt_long.  Support --help and --version.
474         * sysdeps/unix/sysv/linux/lddlibc4.c (main): Support --help and
475         --version.
476
477 2009-02-06  Ulrich Drepper  <drepper@redhat.com>
478
479         * malloc/memusage.c (DEFAULT_BUFFER_SIZE): Change to 32768.
480         (update_data): Fix handling of wrapping back
481         to the beginning of the buffer.
482
483         [BZ #9823]
484         * stdio-common/psignal.c (psignal): Fix test for empty string.
485
486 2009-02-05  Ulrich Drepper  <drepper@redhat.com>
487
488         * include/rpc/auth.h: Use libc_hidden_proto for _null_auth.
489         * sunrpc/rpc_common.c: Add libc_hidden_def for _null_auth.  Also
490         move _null_auth to .rodata.
491
492         * time/tzset.c (__tzset_parse_tz): DST offset must also allow hour
493         value of 24.
494
495         * intl/dcigettext.c (DCIGETTEXT): Avoid some code duplication.
496
497         * sysdeps/unix/opendir.c (__alloc_dir): We have a lot more memory
498         today than when the original code was written.  Use larger
499         buffers.  This also makes it unnecessary to have stat information,
500         if this causes extra efforts.
501         (__opendir): In case O_DIRECTORY works, don't call fstat just for
502         __alloc_dir.
503
504 2009-02-03  Andrew Stubbs  <ams@codesourcery.com>
505
506         * sysdeps/sh/sh4/dl-trampoline.S: Only set HAVE_FPU if __SH_FPU_ANY__
507         is set.
508         * sysdeps/sh/sh4/setjmp.S: Support SH4-NOFPU.
509         * sysdeps/sh/sh4/__longjmp.S: Likewise.
510         * sysdeps/unix/sysv/linux/sh/sh4/getcontext.S: Likewise.
511         * sysdeps/unix/sysv/linux/sh/sh4/setcontext.S: Likewise.
512         * sysdeps/unix/sysv/linux/sh/sh4/swapcontext.S: Likewise.
513         * sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: Likewise.
514
515 2009-02-04  Ulrich Drepper  <drepper@redhat.com>
516
517         * po/ru.po: Update from translation team.
518
519 2008-11-17  Nathan Sidwell  <nathan@codesourcery.com>
520
521         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h (struct sigevent):
522         Add _tid slot to maintain consistency with kernel.
523
524 2009-02-04  Ulrich Drepper  <drepper@redhat.com>
525
526         * libio/wfileops.c (_IO_wfile_underflow): Fix handling of
527         incomplete characters at end of input buffer.
528         * libio/Makefile (tests): Add tst-fgetwc.
529         * libio/tst-fgetwc.c: New file.
530         * libio/tst-fgetwc.input: New file.
531
532 2009-02-02  Andrew Stubbs  <ams@codesourcery.com>
533
534         * sysdeps/unix/sysv/linux/sh/Makefile (libm.so-no-z-defs): Define.
535
536 2009-02-02  Ulrich Drepper  <drepper@redhat.com>
537
538         [BZ #9793]
539         * iconv/gconv_trans.c (__gconv_transliterate): Don't change
540         *OUTBUFSTART unless the whole output fit into the buffer.
541         * iconv/Makefile (tests): Add tst-iconv4.
542         * iconv/tst-iconv4.c: New file.
543
544 2009-02-01  Ulrich Drepper  <drepper@redhat.com>
545
546         * sysdeps/x86_64/cacheinfo.c (intel_02_known): Add new descriptors.
547         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
548
549 2009-01-29  Andrew Stubbs  <ams@codesourcery.com>
550
551         * elf/Makefile (ld.so): Adjust the sed script to insert _begin in to
552         newer linker scripts.
553
554 2009-01-30  Ulrich Drepper  <drepper@redhat.com>
555
556         [BZ #7040]
557         * sysdeps/unix/sysv/linux/sys/inotify.h: Second parameter of
558         inotify_rm_watch should have type int.
559
560 2009-01-06  Steven Munroe  <sjmunroe@us.ibm.com>
561
562         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp):
563         Make aligned_restore_vmx a local symbol.
564         * sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp):
565         Likewise.
566
567 2009-01-30  Andreas Jaeger  <aj@suse.de>
568
569         * sysdeps/unix/sysv/linux/bits/shm.h (SHM_EXEC): Define.
570         * sysdeps/unix/sysv/linux/ia64/bits/shm.h (SHM_EXEC): Define.
571         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (SHM_EXEC): Define.
572         * sysdeps/unix/sysv/linux/s390/bits/shm.h (SHM_EXEC): Define.
573         * sysdeps/unix/sysv/linux/sh/bits/shm.h (SHM_EXEC): Define.
574         * sysdeps/unix/sysv/linux/sparc/bits/shm.h (SHM_EXEC): Define.
575         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h (SHM_EXEC): Define.
576
577 2009-01-11  Ryan S. Arnold  <rsa@us.ibm.com>
578
579         [BZ #9726]
580         * sysdeps/powerpc/fpu/tst-setcontext-fpscr.c (_SET_DI_FPSCR,
581         _SET_SI_FPSCR): Clobber fp0 to prevent erroneous test-case passes.
582
583 2009-01-08  Ryan S. Arnold  <rsa@us.ibm.com>
584
585         [BZ #9726]
586         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S
587         (__CONTEXT_FUNC_NAME): Fix mtfsf to use fp31 instead of fp0.
588         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S
589         (__CONTEXT_FUNC_NAME): Fix mtfsf to use fp31 instead of fp0.
590
591 2009-01-11  Thomas Schwinge  <tschwinge@gnu.org>
592
593         * sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Use
594         memcpy instead of memcmp.
595         (_dl_setup_pointer_guard): Likewise.
596
597 2009-01-30  Ulrich Drepper  <drepper@redhat.com>
598
599         * malloc/malloc.c (sYSMALLOc): Don't use assert when detecting
600         manipulated brk, use malloc_printerr.
601         * misc/sbrk.c (__sbrk): Better error handling for nonsense
602         requests.
603
604 2009-01-30  Jakub Jelinek  <jakub@redhat.com>
605
606         * string/string.h (memchr, strchr, strrchr, strpbrk, strstr, index,
607         rindex): For C++ add inlines so that they can be recognized as
608         builtins.
609         * string/strings.h: Define correct C++ prototypes for gcc 4.4.
610
611 2009-01-29  Ulrich Drepper  <drepper@redhat.com>
612             Jakub Jelinek  <jakub@redhat.com>
613
614         * string/string.h: Define correct C++ prototypes for gcc 4.4.
615         * wcsmbs/wchar.h: Likewise.
616
617 2009-01-29  Ulrich Drepper  <drepper@redhat.com>
618
619         * sysdeps/i386/stackinfo.h (stackinfo_get_sp): Define.
620         (stackinfo_sub_sp): Define.
621
622 2009-01-28  Ulrich Drepper  <drepper@redhat.com>
623
624         [BZ #9750]
625         * nscd/mem.c (gc): Use alloca_count to get the real stack usage.
626         * include/alloca.h (alloca_account): Define.
627         * sysdeps/x86_64/stackinfo.h (stackinfo_get_sp): Define.
628         (stackinfo_sub_sp): Define.
629
630         * nscd/connections.c (nscd_init): If database file access fails
631         check whether this is due to permission problems and bail in that
632         case.
633
634         [BZ #9741]
635         * nscd/mem.c (gc): Fix assignment of he_data in case malloc is used.
636         Reported by Jun'ichi Nomura <j-nomura@ce.jp.nec.com>.
637
638 2009-01-14  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
639
640         * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL):
641         Add "t" to clobber list.
642         (INTERNAL_SYSCALL_NCS): Likewise.
643
644 2009-01-28  Ulrich Drepper  <drepper@redhat.com>
645
646         * nss/getent.c (print_networks): Don't print comma between aliases.
647
648 2009-01-23  Ulrich Drepper  <drepper@redhat.com>
649
650         * sysdeps/unix/sysv/linux/tst-clone.c (do_test): Avoid warning.
651
652         * misc/hsearch_r.c (hcreate_r): We need at least three elements in
653         the hash table.
654         * misc/Makefile (tests): Add bug-hsearch1.
655         * misc/bug-hsearch1.c: New file.
656
657 2009-01-22  Roland McGrath  <roland@redhat.com>
658
659         * Makeconfig (%.v.i): Strip trailing # comments,
660         not only whole-line comments.
661
662 2009-01-10  Ulrich Drepper  <drepper@redhat.com>
663
664         * sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Take
665         one parameter.  If non-NULL use it to initialize return value.
666         (_dl_setup_pointer_guard): New function.
667         * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
668         * sysdeps/generic/ldsodefs.h: Declare _dl_random.
669         * elf/rtld.c (security_init): Pass _dl_random to
670         _dl_setup_stack_chk_guard.  Call _dl_setup_pointer_guard to initialize
671         pointer_chk_guard.
672         * elf/dl-sysdep.c (_dl_random): New variable.
673         (_dl_sysdep_start): Handle AT_RANDOM.
674         (_dl_show_auxv): Likewise.
675         * elf/dl-support.c (_dl_random): New variable.
676         (_dl_aux_init): Handle AT_RANDOM.
677         * csu/libc-start.c [!SHARED] (libc_start_main): Pass _dl_random
678         to _dl_setup_stack_chk_guard.
679
680         * elf/elf.h (AT_RANDOM): Define AT_BASE_PLATFORM and AT_RANDOM.
681
682 2009-01-10  Roland McGrath  <roland@redhat.com>
683
684         * nscd/nscd.c (parse_opt): Use argp_error for bad -i argument.
685
686 2009-01-08  Ulrich Drepper  <drepper@redhat.com>
687
688         * sysdeps/i386/fpu/libm-test-ulps: Adjust expm1 errors.
689
690         [BZ #9706]
691         * nss/nss_files/files-parse.c (strtou32): New function.
692         (INT_FIELD): Use strotu32 instead of strtoul to unify behavior
693         across 32-bit and 64-bit platforms.
694         (INT_FIELD_MAYBE_NULL): Likewise.
695
696 2009-01-08  Jakub Jelinek  <jakub@redhat.com>
697
698         [BZ #9720]
699         * sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who): Avoid
700         comma after RUSAGE_CHILDREN if not -D_GNU_SOURCE.
701         * sysdeps/unix/sysv/linux/sparc/bits/resource.h (enum __rusage_who):
702         Likewise.
703
704 2009-01-05  Paolo Bonzini  <bonzini@gnu.org>
705
706         [BZ #697]
707         * posix/regexec.c (prune_impossible_nodes): Handle sifted_states[0]
708         being NULL also if there are no backreferences.
709         * posix/rxspencer/tests: Add testcases.
710
711 2009-01-04  Paolo Bonzini  <bonzini@gnu.org>
712
713         [BZ #9697]
714         * posix/bug-regex17.c: Add testcases.
715         * posix/regcomp.c (re_compile_fastmap_iter): Rewrite COMPLEX_BRACKET
716         handling.
717
718 2009-01-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
719
720         * sysdeps/unix/sysv/linux/s390/bits/libc-vdso.h: New file.
721         * sysdeps/unix/sysv/linux/s390/gettimeofday.c: New file.
722         * sysdeps/unix/sysv/linux/s390/init-first.c: New file.
723         * sysdeps/unix/sysv/linux/s390/Makefile (sysdep_routines): Add dl-vdso
724         for elf subdir.
725         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INLINE_VSYSCALL,
726         INTERNAL_VSYSCALL, INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK,
727         INTERNAL_SYSCALL_NCS, HAVE_CLOCK_GETRES_VSYSCALL and
728         HAVE_CLOCK_GETTIME_VSYSCALL: Define.
729         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
730         * sysdeps/unix/sysv/linux/s390/Versions: New file.
731
732 2008-12-31  Paolo Bonzini  <bonzini@gnu.org>
733
734         * posix/regcomp.c (re_compile_fastmap_iter): Use __mbrtowc.
735         * posix/regex_internal.c (build_wcs_buffer, build_wcs_upper_buffer,
736         re_string_skip_chars, re_string_reconstruct): Likewise.
737         * posix/regex_internal.h [!_LIBC] (__mbrtowc): New #define.
738
739 2008-12-31  Rafael Avila de Espindola  <espindola@google.com>
740
741         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr2_r): Check and
742         adjust the buffer alignment.
743
744 2009-01-07  Samuel Thibault  <samuel.thibault@ens-lyon.org>
745
746         * sysdeps/mach/hurd/Makefile (sysdep_headers) [subdir=socket]:
747         Add net/ethernet.h net/if_arp.h net/if_ether.h net/if_ppp.h
748         net/route.h.
749
750         * hurd/report-wait.c (describe_number): Use __stpcpy to prepend
751         flavor to description only when flavor is not NULL.
752
753         * hurd/hurdsig.c (signal_allowed): Unlock _hurd_dtable_lock
754         mutex after SIGIO/SIGURG lookup loop.
755
756 2009-01-03  Samuel Thibault  <samuel.thibault@ens-lyon.org>
757
758         * bits/resource.h (PRIO_PROCESS, PRIO_PGRP, PRIO_USER): Add macros.
759
760 2009-01-03  Ulrich Drepper  <drepper@redhat.com>
761
762         * sysdeps/unix/sysv/linux/i386/sysdep.h: Describe 6th argument
763         handling.
764
765 2009-01-02  Ulrich Drepper  <drepper@redhat.com>
766
767         * sysdeps/unix/sysv/linux/kernel-features.h
768         (__ASSUME_FUTEX_CLOCK_REALTIME): Define.
769
770         * wcsmbs/wcsnrtombs.c (__wcsnrtombs): Create temporary state object
771         if no output is written.
772
773         * version.h: Bump to 2.10 development.
774
775         * posix/getconf.c: Update copyright year.
776         * nss/getent.c: Likewise.
777         * iconv/iconvconfig.c: Likewise.
778         * iconv/iconv_prog.c: Likewise.
779         * elf/ldconfig.c: Likewise.
780         * catgets/gencat.c: Likewise.
781         * csu/version.c: Likewise.
782         * elf/ldd.bash.in: Likewise.
783         * elf/sprof.c (print_version): Likewise.
784         * locale/programs/locale.c: Likewise.
785         * locale/programs/localedef.c: Likewise.
786         * nscd/nscd.c (print_version): Likewise.
787         * debug/xtrace.sh: Likewise.
788         * malloc/memusage.sh: Likewise.
789         * malloc/mtrace.pl: Likewise.
790         * debug/catchsegv.sh: Likewise.
791
792 2008-12-29  Mike Frysinger  <vapier@gentoo.org>
793
794         * iconvdata/Makefile (iconv-rules): Use LC_ALL=C when running awk
795         script.
796
797 2008-12-29  Ulrich Drepper  <drepper@redhat.com>
798
799         * sysdeps/posix/getaddrinfo.c (gaih_inet): When the
800         gethostbyname4_r function call succeeded, just leave the loop.
801
802         [BZ #9694]
803         * wcsmbs/wchar.h: Move undefs for local __need_* constants to the
804         very end.
805         * wctype/wctype.h: Get wint_t definition directly from <stddef.h>.
806         * wctype/Makefile (tests): Add bug-wctypeh.
807         * wctype/bug-wctypeh.c: New file.
808
809         * nscd/nscd_gethst_r.c (nscd_gethst_r): Don't use nscd if
810         LOCALDOMAIN is defined.
811         * nscd/nscd_getai.c (__nscd_getai): Likewise.
812
813         * sysdeps/x86_64/bits/select.h: New file.
814
815         * resolv/res_init.c (__res_vinit): Count all servers in statp->nscount.
816
817 2008-12-21  Bruno Haible  <bruno@clisp.org>
818
819         [BZ #9677]
820         * wcsmbs/mbsnrtowcs.c (__mbsnrtowcs): Create temporary state object
821         if no output is written.
822
823 2008-12-13  Klaus Dittrich  <kladit@arcor.de>
824
825         * login/utmp_file.c (pututline_file): Replace call to dup2 with
826         libc internal symbol __dup2 to avoid access through the PLT.
827
828 2008-12-08  Ulrich Drepper  <drepper@redhat.com>
829
830         [BZ #6545]
831         * sysdeps/unix/sysv/linux/bits/socket.h (SCM_CREDENTIALS): Make
832         available only for __USE_GNU.
833
834         * inet/Makefile (tests): Add tst-getni2.
835         * inet/tst-getni2.c: New file.
836
837         [BZ #7080]
838         * inet/getnameinfo.c (getnameinfo): Check for output buffers being
839         NULL when NI_NAMEREQD is set.
840         Patch mostly by Yang Hongyang <yanghy@cn.fujitsu.com>.
841         * inet/Makefile (tests): Add tst-getni1.
842         * inet/tst-getni1.c: New file.
843
844 2008-12-03  Petr Baudis  <pasky@suse.cz>
845
846         [BZ #7067]
847         * nscd/connections.c (invalidate_cache): Use prune_run_lock
848         instead of prune_lock.
849         (nscd_run_prune): Before calling prune_cache, take prune_run_lock.
850         * nscd/nscd.h (database_dyn): Add prune_run_cache.
851
852 2008-12-07  Ulrich Drepper  <drepper@redhat.com>
853
854         * resolv/res_send.c (send_dg): Use correct guards for SOCK_CLOEXEC
855         use.
856
857         * sysdeps/unix/sysv/linux/kernel-features.h: Fix typo in accept4
858         handling.
859
860         * resolv/res_init.c (__res_vinit): Always assign to statp->nscount
861         after reading name server list.
862
863         [BZ #7058]
864         * nis/nss_nis/nis-hosts.c (_nss_nis_gethostbyname4_r): Fix memory
865         handling for host name aliases.
866
867 2008-11-24  Arkadiusz MiÅ›kiewicz  <arekm@maven.pl>
868
869         * sysdeps/i386/dl-tlsdesc.S (_dl_tlsdesc_dynamic): Use LOAD_PIC_REG
870         instead of doing things manually.
871
872 2008-11-26  Chris Steel  <chris.steel.lnx@googlemail.com>
873
874         * posix/regex_internal.h (build_wcs_upper_buffer):
875         Return type is reg_error_t.
876
877 2008-12-05  Ulrich Drepper  <drepper@redhat.com>
878
879         * posix/globtest.sh: Use mktemp to create temporary file and
880         directory.
881
882         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_SET_S): Handle large
883         sets correctly.
884         (__CPU_CLR_S): Likewise.
885         (__CPU_ISSET_S): Likewise.
886
887 2008-12-05  Joseph Myers  <joseph@codesourcery.com>
888             Ulrich Drepper  <drepper@redhat.com>
889
890         * scripts/firstversion.awk: Use custom comparison function to compare
891         version numbers.
892         * scripts/versions.awk: Use sort invocation which can handle
893         multi-digit sub-version numbers.
894
895 2008-12-04  Ulrich Drepper  <drepper@redhat.com>
896
897         * locale/programs/ld-address.c (DEFINE_LANGUAGE_CODE2): Define.
898         * locale/iso-639.def: Add Chhattisgarhi entry.
899
900 2008-12-02  Ulrich Drepper  <drepper@redhat.com>
901
902         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname3_r): Recognize
903         ESRCH return value.
904         (_nss_dns_gethostbyname4_r): Likewise.
905         * resolv/res_init.c (__res_vinit): Initialize nscount to zero.
906         * sysdeps/posix/getaddrinfo.c (gaih_inet): In case we use
907         gethostbyname4_r, we don't have a separate IPv6 status, so copy
908         the no_data variable.
909
910         * resolv/res_init.c (__res_vinit): Fill in IPv4 name server
911         information at the correct index.
912
913         * socket/sys/socket.h: Declare accept4.
914         * socket/accept4.c: New file.
915         * sysdeps/unix/sysv/linux/accept4.c: New file.
916         * sysdeps/unix/sysv/linux/i386/accept4.S: New file.
917         * socket/Makefile (routines): Add accept4.
918         * socket/Versions: Export accept4 with version GLIBC_2.10.
919         * socket/paccept.c: Removed.
920         * sysdeps/unix/sysv/linux/paccept.c: Removed.
921         * sysdeps/unix/sysv/linux/i386/paccept.S: Removed.
922         * Versions.def: Define GLIBC_2.10 for libc.
923         * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_ACCEPT4.
924
925         * nscd/connections.c: Use accept4.
926
927         * sysdeps/unix/sysv/linux/i386/socket.S: Fix comment.
928
929 2008-12-01  Ulrich Drepper  <drepper@redhat.com>
930
931         * resolv/res_send.c (send_dg): Create sockets with non-blocking
932         flag already set.
933
934         * stdlib/setenv.c (unsetenv): Don't search environment if it does
935         not exist.
936         * stdlib/Makefile (tests): Add tst-unsetenv1.
937         * stdlib/tst-unsetenv1.c: New file.
938
939 2008-11-29  Ulrich Drepper  <drepper@redhat.com>
940
941         * login/utmp_file.c (file_writable): New variable.
942         (setutent_file): Don't try to open file for writing.
943         (pututline_file): Before writing, make descriptor writable if
944         necessary.
945
946 2008-11-26  Ulrich Drepper  <drepper@redhat.com>
947
948         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Only restrict search
949         to IPv4 or IPv6 if an interface has been found.
950
951 2008-11-26  Roland McGrath  <roland@redhat.com>
952
953         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Renamed to ...
954         * sysdeps/unix/sysv/linux/powerpc/ipc_priv.h: ... here.
955
956         * sysdeps/unix/sysv/linux/alpha/wordexp.c: Renamed to ...
957         * sysdeps/unix/sysv/linux/ia64/wordexp.c: ... here.
958         * sysdeps/unix/sysv/linux/sparc/sparc64/wordexp.c: Change #include.
959
960         * elf/elf.h (NT_386_IOPERM): New macro.
961         (NT_PPC_VSX): New macro.
962
963 2008-11-25  Roland McGrath  <roland@redhat.com>
964
965         * sysdeps/alpha, sysdeps/unix/bsd/osf/alpha,
966         sysdeps/unix/bsd/Attic/osf1/alpha, sysdeps/unix/sysv/linux/alpha,
967         sysdeps/unix/sysv/linux/alpha/alpha, sysdeps/unix/alpha,
968         sysdeps/mach/alpha, sysdeps/mach/hurd/alpha:
969         Subdirectories moved to ports repository.
970         * configure.in (base_machine): Remove alpha case.
971
972 2008-11-25  Thomas Schwinge  <tschwinge@gnu.org>
973
974         * sysdeps/mach/strerror_l.c: New file.
975
976 2008-11-13  Ryan S. Arnold  <rsa@us.ibm.com>
977
978         [BZ #6411]
979         * sysdeps/powerpc/fpu/Makefile: Added test case tst-setcontext-fpscr.
980         * sysdeps/powerpc/fpu/feholdexcpt.c (_FPU_MASK_ALL): Define to replace
981         magic numbers.
982         * sysdeps/powerpc/fpu/fenv_libc.h (fesetenv_register): Dynamically
983         choose mtfsf insn based on PPC_FEATURE_HAS_DFP.
984         (relax_fenv_state): Same as above.
985         (FPSCR_29): Reserve bit in ISA 2.05.
986         (FPSCR_NI): Provide define for compat.
987         * sysdeps/powerpc/fpu/fesetenv.c (_FPU_MASK_ALL): Define to replace
988         magic numbers.
989         * sysdeps/powerpc/fpu/feupdateenv.c (_FPU_MASK_ALL): Define to replace
990         magic numbers.
991         * sysdeps/powerpc/fpu/tst-setcontext-fpscr.c: New file.  Test case to
992         test setcontext and swapcontext with dynamic 64-bit FPSCR detection.
993         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp): Adjust
994         access to hwcap to account for hwcap size increase to uint64_t.
995         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S (__sigsetjmp ):
996         Likewise.
997         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S
998         (*setcontext): Likewise.
999         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/setcontext.S:
1000         New file.
1001         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/swapcontext.S:
1002         New file.
1003         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S
1004         (*setcontext): dynamically select mtfsf insn based on
1005         PPC_FEATURE_HAS_DFP. Adjust access to hwcap to account for hwcap size
1006         increase to uint64_t.
1007         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S
1008         (*swapcontext): dynamically select mtfsf insn based on
1009         PPC_FEATURE_HAS_DFP.  Adjust access to hwcap to account for hwcap size
1010         increase to uint64_t.
1011         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/setcontext.S:
1012         New file.
1013         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/swapcontext.S:
1014         New file.
1015         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
1016         (*setcontext): dynamically select mtfsf insn based on
1017         PPC_FEATURE_HAS_DFP.
1018         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
1019         (*swapcontext): dynamically select mtfsf insn based on
1020         PPC_FEATURE_HAS_DFP.
1021
1022 2008-11-13  Ulrich Drepper  <drepper@redhat.com>
1023
1024         * version.h: Bump for 2.9 release.
1025         * include/features.h (__GLIBC_MINOR__): Bump to 9.
1026
1027         [BZ #7029]
1028         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ALLOC_SIZE):
1029         Multiply with sizeof of __cpu_mask, not 8 unconditionally after
1030         all the rounding.
1031
1032 2008-11-11  Ulrich Drepper  <drepper@redhat.com>
1033
1034         [BZ #7009]
1035         * resolv/nss_dns/dns-host.c (gaih_getanswer_slice): Don't abort for
1036         unknown request types for now.
1037
1038 2008-11-11  Roland McGrath  <roland@redhat.com>
1039
1040         * sysdeps/x86_64/configure: New file.
1041
1042         * configure.in: Add AC_SUBST(libc_cv_cpp_asm_debuginfo).
1043         * configure: Regenerated.
1044
1045 2008-11-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1046
1047         * sysdeps/s390/s390-64/dl-trampoline.S (_dl_runtime_profile): Use the
1048         correct instruction to remove the stack frame.
1049
1050 2008-11-03  Michael Matz  <matz@suse.de>
1051
1052         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_32_acq,
1053         __arch_compare_and_exchange_val_64_acq): Add "memory" clobber.
1054
1055 2008-11-07  Jakub Jelinek  <jakub@redhat.com>
1056
1057         * include/stdio.h (__builtin_fwrite, __builtin_fwrite_unlocked):
1058         Remove.
1059
1060         * bits/libc-tsd.h (__libc_tsd_define, __libc_tsd_address,
1061         __libc_tsd_get, __libc_tsd_set): Add TYPE argument, use it as the type
1062         of the thread variable instead of void *.
1063         * sysdeps/mach/hurd/bits/libc-tsd.h (__libc_tsd_define,
1064         __libc_tsd_address, __libc_tsd_get, __libc_tsd_set): Likewise.
1065         * include/ctype.h (CTYPE_B, CTYPE_TOUPPER, CTYPE_TOLOWER): Adjust
1066         __libc_tsd_define arguments.
1067         (__ctype_b_loc, __ctype_toupper_loc, __ctype_tolower_loc): Adjust
1068         __libc_tsd_address arguments.  Remove union hack.
1069         * include/rpc/rpc.h (RPC_VARS): Adjust __libc_tsd_define arguments.
1070         * sunrpc/rpc_thread.c (RPC_VARS): Likewise.
1071         (__rpc_thread_destroy, rpc_thread_multi, __rpc_thread_variables):
1072         Adjust __libc_tsd_{set,get} arguments.
1073         * ctype/ctype-info.c (CTYPE_B, CTYPE_TOUPPER, CTYPE_TOLOWER): Adjust
1074         __libc_tsd_define arguments.
1075         * locale/uselocale.c (__uselocale): Adjust __libc_tsd_{set,get}
1076         arguments.
1077         * locale/lc-ctype.c (_nl_postload_ctype): Likewise.
1078         * locale/global-locale.c (__libc_tsd_LOCALE): Adjust type.
1079         (LOCALE): Adjust __libc_tsd_define arguments.
1080         * locale/localeinfo.h (_NL_CURRENT_LOCALE): Adjust __libc_tsd_get
1081         arguments.
1082         (LOCALE): Adjust __libc_tsd_define arguments.
1083         * sysdeps/mach/hurd/malloc-machine.h (MALLOC): Adjust __libc_tsd_define
1084         arguments.
1085         (tsd_setspecific, tsd_getspecific): Adjust __libc_tsd_{set,get}
1086         arguments.
1087
1088 2008-11-02  Ulrich Drepper  <drepper@redhat.com>
1089
1090         * malloc/malloc.c (public_rEALLOc): When new arena is used, copy
1091         really all bytes.  Patch by Denys Vlasenko <dvlasenk@redhat.com>.
1092
1093 2008-11-01  Ulrich Drepper  <drepper@redhat.com>
1094
1095         [BZ #6966]
1096         * misc/hsearch_r.c (hsearch_r): Fix secondary hash function.
1097
1098 2008-10-24  Joseph Myers  <joseph@codesourcery.com>
1099             Ulrich Drepper  <drepper@redhat.com>
1100
1101         * math/tgmath.h (__floating_type): Use __builtin_classify_type in
1102         definition for GCC 3.1 and later.
1103
1104 2008-10-31  Jakub Jelinek  <jakub@redhat.com>
1105
1106         * elf/dl-tls.c (__tls_get_addr): After calling _dl_update_slotinfo
1107         refetch dtv, as it might have changed.
1108         * elf/Makefile: Add rules to build and run tst-tls18.
1109         * elf/tst-tls18.c: New test.
1110         * elf/tst-tlsmod18a.c: New file.
1111
1112 2008-09-09  Aurelien Jarno  <aurelien@aurel32.net>
1113
1114         [BZ #6875]
1115         * iconvdata/gconv-modules: Add LATIN9 as an alias to ISO-8859-15.
1116
1117 2008-10-31  Ulrich Drepper  <drepper@redhat.com>
1118
1119         [BZ #6867]
1120         * sysdeps/powerpc/elf/rtld-global-offsets.sym: Fix typo.
1121
1122         [BZ #6919]
1123         * posix/spawnattr_getschedparam.c (posix_spawnattr_getschedparam):
1124         Fix length of copy operation.
1125
1126 2008-10-02  Pierre Habouzit <madcoder@debian.org>
1127
1128         * sysdeps/unix/sysv/linux/eventfd.c (eventfd): Use the eventfd2 syscall
1129         and fix its calling convention.
1130
1131 2008-10-07  Andreas Schwab  <schwab@suse.de>
1132
1133         [BZ #6942]
1134         * resolv/res_send.c (send_vc): Fix last change.
1135         (send_dg): Align here as well.
1136
1137 2008-10-31  Ulrich Drepper  <drepper@redhat.com>
1138
1139         * sysdeps/unix/sysv/linux/ulimit.c (__ulimit): Handle UL_GETFSIZE
1140         return value in case rlimit is RLIM_INFINITY.
1141
1142         [BZ #6947]
1143         * sysdeps/unix/sysv/linux/ulimit.c (__ulimit): Fix return value
1144         for UL_SETFSIZE.
1145         * resource/Makefile (tests): Add bug-ulimit1.
1146         * resource/bug-ulimit1.c: New file.
1147
1148         [BZ #6974]
1149         * sunrpc/rpc_main.c (mkfile_output): Properly handle filename
1150         without dot.  Properly terminate the string with a null byte.
1151         Based on a patch by Aurelien Jarno <aurelien@aurel32.net>.
1152
1153         [BZ #6980]
1154         * debug/getgroups_chk.c (__getgroups_chk): Return EINVAL error for
1155         negative sizees.
1156         * posix/bits/unistd.h (getgroups): Call __getgroups_chk for
1157         negative __size.
1158
1159         [BZ #6995]
1160         * sysdeps/powerpc/powerpc32/dl-machine.c: Fix typo in message.
1161
1162 2008-10-30  Ulrich Drepper  <drepper@redhat.com>
1163
1164         * grp/initgroups.c (internal_getgrouplist): Don't prematurely
1165         abort if there is no initgroups_dyn function.
1166
1167         * resolv/res_send.c (send_dg): On timeout, only return nonzero
1168         result if any of the queries really provided an answer.
1169
1170 2008-10-28  Ulrich Drepper  <drepper@redhat.com>
1171
1172         * po/lt.po: Update from translation team.
1173
1174 2008-10-26  Ulrich Drepper  <drepper@redhat.com>
1175
1176         * po/id.po: Update from translation team.
1177
1178 2008-10-24  Ulrich Drepper  <drepper@redhat.com>
1179
1180         * resolv/res_query.c (__libc_res_nquery): Add a few casts.
1181         Fix tests for existence of second reply.
1182
1183 2008-10-23  Ulrich Drepper  <drepper@redhat.com>
1184
1185         * po/id.po: New file.
1186         Contributed by the Indonesian translation team.
1187
1188 2008-10-22  Dmitry V. Levin  <ldv@altlinux.org>
1189
1190         * misc/syslog.c (openlog_internal): Fix __have_sock_cloexec
1191         initialization.
1192
1193 2008-10-17  Jakub Jelinek  <jakub@redhat.com>
1194
1195         * elf/Makefile: Add rules to build and run tst-tls17.
1196         * elf/tst-tls17.c: New test.
1197         * elf/tst-tlsmod17a.c: New file.
1198         * elf/tst-tlsmod17b.c: Likewise.
1199
1200 2008-10-17  Ulrich Drepper  <drepper@redhat.com>
1201
1202         * stdlib/divmod_1.c: Use correct type for dummy variable.
1203         * stdlib/mod_1.c: Likewise.
1204
1205 2008-10-16  Ulrich Drepper  <drepper@redhat.com>
1206
1207         * elf/dl-tls.c (_dl_update_slotinfo): Copy all of the initial DTV.
1208
1209 2008-10-16  Jakub Jelinek  <jakub@redhat.com>
1210
1211         * sysdeps/unix/sysv/linux/sys/signalfd.h (signalfd): Fix __THROW vs.
1212         __nonnull order for C++.
1213         * sysdeps/unix/sysv/linux/alpha/sys/signalfd.h (signalfd): Likewise.
1214         * sysdeps/unix/sysv/linux/sparc/sys/signalfd.h (signalfd): Likewise.
1215
1216 2008-10-01  Daniel Jacobowitz  <dan@codesourcery.com>
1217
1218         * stdlib/longlong.h: Update from GCC.
1219
1220 2008-10-09  Jakub Jelinek <jakub@redhat.com>
1221             David S. Miller  <davem@davemloft.net>
1222
1223         * sysdeps/sparc/sparc64/sparcv9v/memcpy.S: When not USE_BPR,
1224         make sure any registers used with 64-bit 'branch-on-register'
1225         instructions have their top 32-bits clear.
1226         * sysdeps/sparc/sparc64/sparcv9v/memset.S: Likewise.
1227         * sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: Likewise.
1228
1229 2008-09-18  Andreas Schwab  <schwab@suse.de>
1230
1231         [BZ #6942]
1232         * resolv/res_send.c (send_vc): Fix use of unaligned address.
1233         Properly handle partial reads.
1234
1235 2008-10-01  Mark Shinwell  <shinwell@codesourcery.com>
1236
1237         * elf/elf.h (STO_MIPS_PLT): New.
1238         (R_MIPS_COPY): New.
1239         (R_MIPS_JUMP_SLOT): New.
1240         (R_MIPS_NUM): Redefine to 128.
1241         (DT_MIPS_PLTGOT): New.
1242         (DT_MIPS_RWPLT): New.
1243         (DT_MIPS_NUM): Redefine to 0x35.
1244
1245 2008-10-01  Ulrich Drepper  <drepper@redhat.com>
1246
1247         * timezone/africa: Update from tzdata2008f.
1248         * timezone/asia: Likewise.
1249         * timezone/australasia: Likewise.
1250         * timezone/europe: Likewise.
1251         * timezone/leapseconds: Likewise.
1252         * timezone/northamerica: Likewise.
1253         * timezone/southamerica: Likewise.
1254         * timezone/zone.tab: Likewise.
1255
1256 2008-09-30  Ulrich Drepper  <drepper@redhat.com>
1257
1258         * nscd/connections.c: Disable use of paccept for now.
1259
1260 2008-09-29  Ulrich Drepper  <drepper@redhat.com>
1261
1262         * socket/Versions: Remove paccept export for GLIBC_2.9.
1263         * socket/Makefile (routines): Remove paccept.
1264         * socket/sys/socket.h: Remove paccept declaration.
1265
1266         * po/sv.po: Update from translation team.
1267
1268 2008-09-22  Deborah S. Townsend  <dstownse@us.ibm.com>
1269
1270         * sysdeps/s390/s390-64/s390x-mcount.S: Replace ahi with aghi.
1271         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
1272
1273 2008-09-16  Ulrich Drepper  <drepper@redhat.com>
1274
1275         * dlfcn/dlopen.c (dlopen_doit): Allow __RTLD_SPROF flag.
1276         Patch by Olivier Fourdan <ofourdan@redhat.com>.
1277
1278 2008-09-15  Ulrich Drepper  <drepper@redhat.com>
1279
1280         * sunrpc/rpc/svc.h: Declare svcfd_create.
1281         Patch by Michael Solberg <msolberg@redhat.com>.
1282
1283 2008-09-12  Flavio Leitner  <fleitner@redhat.com>
1284             Ulrich Drepper  <drepper@redhat.com>
1285
1286         * malloc/malloc.c (public_vALLOc): Try other arenas in case
1287         _int_valloc fails.
1288         (public_pVALLOc): Likewise.
1289
1290 2008-09-02  Andreas Jaeger  <aj@suse.de>
1291
1292         * sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h: Fix last
1293         commit.
1294
1295 2008-08-26  Aurelien Jarno  <aurelien@aurel32.net>
1296
1297         [BZ #6860]
1298         * hurd/hurd/signal.h (HURD_MSGPORT_RPC): Fix a typo.
1299
1300 2008-07-18  Daniel Jacobowitz  <dan@codesourcery.com>
1301
1302         * Makefile (check-data): Check data directory in add-ons.
1303         * elf/Makefile (check-data): Likewise.
1304
1305 2008-08-18  Roland McGrath  <roland@redhat.com>
1306
1307         * configure.in (--with-cpu): Check compiler support for -march/-mcpu.
1308         * configure: Regenerated.
1309         * config.make.in (cflags-cpu): New substituted variable.
1310         (with-cpu): Variable removed.
1311         * Makeconfig (+cflags): Use $(cflags-cpu), not $(with-cpu).
1312
1313 2008-08-14  Ryan S. Arnold  <rsa@us.ibm.com>
1314
1315         [BZ #6845]
1316         * sysdeps/powerpc/fpu/bits/mathinline.h (__signbitl): Copy new
1317         __signbitl definition and __LONG_DOUBLE_128__ guard from:
1318         * sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h: Remove as
1319         redundant.  Functions which call floating point assembler operations
1320         should go into a sysdeps powerpc/fpu directory.
1321
1322 2008-08-15  Ulrich Drepper  <drepper@redhat.com>
1323
1324         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_STACK.
1325         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
1326
1327 2008-08-14  Ulrich Drepper  <drepper@redhat.com>
1328
1329         * sysdeps/x86_64/memset.S: Reduce size of tables for PIC.
1330
1331         * sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): Undo all
1332         change related to AT_EXECFN.  We cannot use that string.
1333         * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Remove
1334         _dl_execfn member.
1335         * elf/dl-support.c: Remove _dl_execfn variable.
1336         (_dl_aux_init): Remove handling of AT_EXECFN.
1337         * elf/dl-sysdep.c (_dl_sysdep_start): Remove handling of AT_EXECFN.
1338         * elf/rtld.c (process_envvars): Remove use of __ASSUME_AT_EXECFN.
1339
1340 2008-08-13  Ulrich Drepper  <drepper@redhat.com>
1341
1342         [BZ #6544]
1343         * libio/fmemopen.c: Implement binary mode.  In this mode no NUL
1344         byte gets added to writes and seeks from the end use the length of
1345         the buffer and not the currently terminating NUL byte.
1346
1347         [BZ #6634]
1348         * login/utmp_file.c (getutent_r_file): Take additional parameter.
1349         Set to true if locking failed.
1350         (getutid_r_file): Adjust caller.
1351         (pututline_file): Likewise.  Return NULL in this case.
1352         Patch mostly by halesh.s@gmail.com.
1353
1354 2008-08-12  Ulrich Drepper  <drepper@redhat.com>
1355
1356         [BZ #6589]
1357         * sysdeps/unix/sysv/linux/ifaddrs.c (struct sockaddr_ll_max):
1358         Define.
1359         (struct ifaddrs_storage): Use it instead of sockaddr_ll.
1360
1361 2008-08-12  Ryan S. Arnold  <rsa@us.ibm.com>
1362
1363         [BZ #6839]
1364         * sysdeps/powerpc/powerpc32/dl-machine.c (CHECK_STATIC_TLS): Remove
1365         macro since it is now available in elf/dynamic-link.h.
1366
1367 2008-08-12  Roland McGrath  <roland@frob.com>
1368
1369         * hurd/hurd/signal.h (HURD_MSGPORT_RPC): Avoid -Wparenthesis triggers,
1370         in case used outside of libc.
1371         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>
1372
1373 2008-08-11  Ulrich Drepper  <drepper@redhat.com>
1374
1375         * resolv/res_mkquery.c (res_nmkquery): Call ns_name_compress
1376         directly instead of going through dn_comp.
1377
1378 2008-08-11  Aurelien Jarno  <aurel32@debian.org>
1379
1380         * sysdeps/mach/i386/machine-lock.h (__spin_unlock, __spin_try_lock):
1381         Fix asm constraints.
1382
1383 2008-08-07  Ulrich Drepper  <drepper@redhat.com>
1384
1385         [BZ #6790]
1386         * sysdeps/unix/sysv/linux/bits/in.h (IP_PMTUDISC_PROBE): Define.
1387         (IPV6_PMTUDISC_PROBE): Likewise.
1388
1389 2008-08-07  Pete Eberlein  <eberlein@us.ibm.com>
1390
1391         [BZ #6791]
1392         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h (PROT_SAO): Define.
1393
1394 2008-08-01  Steven Munroe  <sjmunroe@us.ibm.com>
1395             Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>
1396
1397         [BZ #6817]
1398         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags):
1399         Added the members 'vsx' and 'arch_2_06'.
1400         (_dl_powerpc_platforms): Add the member 'power7'.
1401         * sysdeps/powerpc/dl-procinfo.h: Modify _DL_HWCAP_FIRST
1402         to reflect the changes required by VSX and ISA 2.06.
1403         Modify _DL_PLATFORMS_COUNT to reflect the addition of
1404         'power7'.
1405         Defined PPC_PLATFORM_POWER7.
1406         (_dl_string_platform): Add support for POWER7.
1407         * sysdeps/powerpc/sysdep.h: Define bit masks for VSX
1408         capability and ISA 2.06.
1409
1410 2008-08-07  Ulrich Drepper  <drepper@redhat.com>
1411
1412         [BZ #6824]
1413         * sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h: Use correct
1414         macro to detect use of 128 bit long double.
1415         Patch by Ryan S. Arnold <rsa@us.ibm.com>.
1416
1417 2008-08-05  Ulrich Drepper  <drepper@redhat.com>
1418
1419         * scripts/gen-as-const.awk: Use 32-bit values on 32-bit platforms.
1420
1421         [BZ #5794]
1422         * sysdeps/i386/fpu/s_expm1l.S: Simply use exp implementation for large
1423         parameters.
1424         * sysdeps/x86_64/fpu/s_expm1l.S: Likewise.
1425         Patch by Denys Vlasenko <dvlasenk@redhat.com>.
1426
1427 2008-08-03  Ulrich Drepper  <drepper@redhat.com>
1428
1429         * nscd/connections.c (main_loop_poll): Pass a buffer which is
1430         guaranteed to be large enough to read inotify event.  Ignore
1431         EAGAIN error.  Better error message.  Add branch predicition.
1432         (main_loop_epoll): Likewise.
1433
1434 2008-08-02  Roland McGrath  <roland@frob.com>
1435
1436         * sysdeps/mach/i386/machine-lock.h (__spin_unlock, __spin_try_lock):
1437         Add memory clobbers.
1438
1439 2008-08-02  Ulrich Drepper  <drepper@redhat.com>
1440
1441         * manual/arith.texi: Avoid @strong{Note:}.
1442         * manual/creature.texi: Likewise.
1443         * manual/filesys.texi: Likewise.
1444         * manual/math.texi: Likewise.
1445         * manual/memory.texi: Likewise.
1446         * manual/resource.texi: Likewise.
1447         * manual/syslog.texi: Likewise.
1448         * manual/time.texi: Likewise.
1449
1450         * sysdeps/posix/clock_getres.c (hp_timing_getres): Remove inline
1451         to prevent warning.
1452
1453 2008-08-01  Ulrich Drepper  <drepper@redhat.com>
1454
1455         * sysdeps/unix/sysv/linux/Versions: Fix changes due to old patch for
1456         new epoll_create1 interface.
1457         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
1458         * sysdeps/unix/sysv/linux/sys/epoll.h: Likewise.
1459         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
1460
1461         * include/arpa/nameser.h (NS_GET16): Use const pointer.
1462         (NS_GET32): Likewise.
1463
1464         * sysdeps/unix/sysv/linux/kernel-features.h: s390 has the new
1465         syscalls, too.
1466
1467         * sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): We cannot
1468         use the AT_EXECFN value if it is no absolute path.
1469         * sysdeps/unix/sysv/linux/kernel-features.h: Never define
1470         __ASSUME_AT_EXECFN.
1471
1472         * Versions.def: Add GLIBC_2.9 to libresolv.
1473         * include/resolv.h: Remove hidden proto declarations for __ns_*
1474         functions.  Add them for __dn_count_labels and __p_secstodate.
1475         * include/arpa/nameser.h: Add a number of hidden proto declarations.
1476         Define ns_msg_getflags macro here.
1477         * resolv/res_debug.c: Add hidden definition for __dn_count_labels
1478         and __p_secstodate.
1479         * resolv/Versions: Export functions from <arpa/nameser.h> from
1480         libresolv in version GLIBC_2.9.
1481         * resolv/ns_name.c: Integrate changes from bind 9.5.0.  Add necessary
1482         hidden definitions.
1483         * resolv/ns_netint.c: Likewise.
1484         * resolv/ns_parse.c: Likewise.
1485         * resolv/ns_print.c: Likewise.
1486         * resolv/ns_samedomain.c: Likewise.
1487         * resolv/ns_ttl.c: Likewise.
1488         * resolv/arpa/nameser_compat.h: Likewise.
1489         * resolv/arpa/nameser.h: Likewise.  Remove macros which redirect
1490         function calls.
1491         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Use __ns_get16
1492         instead of ns_get16.
1493         * resolv/nss_dns/dns-host.c (getanswer_r): Use __ns_get16 and
1494         __ns_get32 instead of ns_get16 and ns_get32 respectively.
1495         (gaih_getanswer_slice): Likewise.
1496         * resolv/Makefile (libresolv-routines): Add ns_date.
1497         * resolv/ns_date.c: New file.
1498
1499         * elf/Makefile (check-localplt.out): Also check libresolv and
1500         libcrypt.
1501
1502 2008-07-31  Ulrich Drepper  <drepper@redhat.com>
1503
1504         * sysdeps/unix/sysv/linux/kernel-features.h: Define
1505         __ASSUME_O_CLOEXEC.
1506
1507 2008-07-30  Ulrich Drepper  <drepper@redhat.com>
1508
1509         * sysdeps/posix/getaddrinfo.c (gaih_inet): Raise size of initial
1510         buffer passed to NSS functions.
1511
1512         * nscd/connections.c (nscd_init): Typo in preprocessor directive.
1513
1514         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PACCEPT):
1515         Define.
1516
1517         * misc/syslog.c (openlog_internal): Fix compile problem.
1518
1519 2008-07-28  Roland McGrath  <roland@redhat.com>
1520
1521         * elf/dl-sysdep.c (_dl_show_auxv): Add AT_EXECFN to the table.
1522
1523 2008-07-28  Ulrich Drepper  <drepper@redhat.com>
1524
1525         * io/ftw.c (add_object): Remove inline to avoid warning.
1526
1527         * sysdeps/unix/sysv/linux/paccept.c: Fix compile problem.
1528
1529         * resolv/res_send.c (__libc_res_nsend): Take additional parameter.
1530         Use it instead of locally defined resplen2 variable.
1531         (res_nsend): Adjust for __libc_res_nsend interface change.
1532         (send_vc): Initialize *resplen2 if necessary.  Read length of
1533         package into an appropriately aligned variable.  Store converted length
1534         in new variable and use it appropriately.
1535         Add branch prediction help.
1536         * resolv/res_query.c (__libc_res_nquery): Take additional parameter
1537         and pass it on to __libc_res_nsend.  Adjust all callers.
1538         (__libc_res_nsearch): Likewise.
1539         (__libc_res_nqeurydomain): Likewise.
1540         * resolv/nss_dns/dns-host.c: Adjust for __libc_res_nsearch interface
1541         change.
1542         (_nss_dns_gethostbyname4): Don't unconditionally allocate tmp array.
1543         Define resplen2 variable and pass it to __libc_res_nsearch and then
1544         to gaih_getanswer.
1545         (getanswer_r): In case of incorrect DNS data don't overread buffer.
1546         Add branch prediction.
1547         (gaih_getanswer_slice): Likewise.  Check for invalid data types.
1548         (gaih_getanswer): Don't decode second slice if first one failed due
1549         to a too small buffer.  Don't let not found status of second
1550         decoder shadow results of the first.
1551         * resolv/gethnamaddr.c (gethostbyname2): Adjust for __libc_res_nsearch
1552         and __libc_res_nquery interface changes
1553         (gethostbyaddr): Adjust for __libc_res_nquery interface change.
1554         * include/resolv.h: Adjust prototypes for __libc_res_nquery,
1555         __libc_res_nsearch, and __libc_res_nsend.
1556         * resolv/nss_dns/dns-canon.c: Adjust for __libc_res_nquery interface
1557         change.
1558         * resolv/nss_dns/dns-network.c: Adjust for __libc_res_nquery and
1559         __libc_res_nsearch interface changes.
1560
1561 2008-07-27  Ulrich Drepper  <drepper@redhat.com>
1562
1563         * libio/iopopen.c (_IO_new_proc_open): Remove unnecessary volatile.
1564
1565         * posix/wordexp.c (exec_comm): Use pipe2 if possible to create
1566         file descriptors with close-on-exec set.
1567         (exec_comm_child): Fix the case where the write end of the pipe is
1568         STDOUT_FILENO already.  In case it is, clear close-on-exec.
1569
1570         * sysdeps/unix/sysv/linux/syscalls.list: Add __pipe2 alias.
1571         * io/pipe2.c: Likewise.
1572         * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_PIPE2
1573         instead of __ASSUME_PACCEPT.
1574         * include/unistd.h: Declare __have_pipe2.
1575         * libio/iopopen.c: Implement "e" flag.
1576         * libio/Makefile (tests): Add tst-popen1.
1577         * libio/tst-popen1.c: New file.
1578
1579         * sysdeps/unix/sysv/linux/bits/socket.h: Define PF_ISDN and AF_ISDN.
1580         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise.
1581
1582 2008-07-26  Ulrich Drepper  <drepper@redhat.com>
1583
1584         [BZ #6771]
1585         * libio/fileops.c (_IO_new_file_attach): Preserve errno around
1586         success call of _IO_SEEKOFF or calls which failed because the
1587         descriptor is for a pipe.
1588
1589         * sunrpc/key_call.c (getkeyserv_handle): Use FD_CLOEXEC instead of
1590         magic number.
1591
1592         * misc/syslog.c (openlog_internal): Use SOCK_CLOEXEC if possible.
1593
1594         * malloc/mtrace.c (mtrace): Use 'e' flag in fopen call.  Drop
1595         F_SETFD use if we know fopen set the flag.
1596
1597         * login/utmp_file.c (setutent_file): Minor optimization in case
1598         O_CLOEXEC is available.
1599
1600 2008-07-24  Tom "spot" Callaway  <tcallawa@redhat.com>
1601
1602         * Makeconfig: Define pie-ccflag and PIE-ccflag variables.
1603         * elf/Makefile: Use pie-ccflag variable.
1604         * nscd/Makefile: Likewise.
1605         * sysdeps/sparc/Makefile: Set $(pie-ccflag) to -fPIE.
1606
1607 2008-07-21  Andreas Krebbel  <krebbel1@de.ibm.com>
1608
1609         [BZ #6724]
1610         * Versions.def: Add GLIBC_2.9 version tag for libutil.
1611         * sysdeps/unix/sysv/linux/s390/bits/utmp.h: Copy of
1612         gnu/bits/utmp.h.  Check for __WORDSIZE_COMPAT32 removed.
1613         * sysdeps/unix/sysv/linux/s390/bits/utmpx.h: Copy of
1614         gnu/bits/utmpx.h.  Check for __WORDSIZE_COMPAT32 removed.
1615         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Add new files
1616         utmp32, utmpx32 and login32.
1617         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Add 2.9
1618         versions of struct utmp functions to libc and libutil.
1619         * sysdeps/unix/sysv/linux/s390/s390-32/utmp-compat.h: New file.
1620         * sysdeps/unix/sysv/linux/s390/s390-32/getutent.c: New file.
1621         * sysdeps/unix/sysv/linux/s390/s390-32/getutent_r.c: New file.
1622         * sysdeps/unix/sysv/linux/s390/s390-32/getutid.c: New file.
1623         * sysdeps/unix/sysv/linux/s390/s390-32/getutid_r.c: New file.
1624         * sysdeps/unix/sysv/linux/s390/s390-32/getutline.c: New file.
1625         * sysdeps/unix/sysv/linux/s390/s390-32/getutline_r.c: New file.
1626         * sysdeps/unix/sysv/linux/s390/s390-32/getutmp.c: New file.
1627         * sysdeps/unix/sysv/linux/s390/s390-32/getutxent.c: New file.
1628         * sysdeps/unix/sysv/linux/s390/s390-32/getutxid.c: New file.
1629         * sysdeps/unix/sysv/linux/s390/s390-32/getutxline.c: New file.
1630         * sysdeps/unix/sysv/linux/s390/s390-32/login.c: New file.
1631         * sysdeps/unix/sysv/linux/s390/s390-32/login32.c: New file.
1632         * sysdeps/unix/sysv/linux/s390/s390-32/pututxline.c: New file.
1633         * sysdeps/unix/sysv/linux/s390/s390-32/updwtmp.c: New file.
1634         * sysdeps/unix/sysv/linux/s390/s390-32/updwtmpx.c: New file.
1635         * sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h: New file.
1636         * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.c: New file.
1637         * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h: New file.
1638         * sysdeps/unix/sysv/linux/s390/s390-32/utmpx-convert.h: New file.
1639         * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.c: New file.
1640         * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h: New file.
1641
1642 2008-07-26  Ulrich Drepper  <drepper@redhat.com>
1643
1644         * scripts/gen-as-const.awk: Generate more widely usable code by
1645         using 64-bit arithmetic.
1646
1647         * stdio-common/printf_fp.c (___printf_fp): Give wide outout code
1648         the same treatment as narrow output code in last patch.
1649
1650         * sunrpc/clnt_udp.c (__libc_clntudp_bufcreate): Namespace cleanup.
1651
1652         [BZ #6763]
1653         * elf/dl-load.c (local_strdup): Remove inline.
1654         (_dl_map_object_from_fd): Don't allocate l_symbolic_searchlist.r_list.
1655         * elf/dl-object.c (_dl_new_object): Allocate symbolic searchlist as
1656         part of the object.
1657
1658         * sysdeps/unix/sysv/linux/dl-origin.c: Add const to avoid warning.
1659
1660 2008-07-25  Ulrich Drepper  <drepper@redhat.com>
1661
1662         * sysdeps/unix/sysv/linux/kernel-features.h: IA-64 and SPARC have
1663         the new syscalls, too.
1664
1665         * sysdeps/i386/i686/memcmp.S: Fix unwind information.
1666         Reported by Paul Pluzhnikov <ppluzhnikov@google.com>.
1667
1668         [BZ #6698]
1669         * stdio-common/_i18n_number.h (_i18n_number_rewrite): Take additional
1670         parameter for end of buffer.  If temporary copy is too large use
1671         malloc.
1672         * stdio-common/vfprintf.c: Adjust for _i18n_number_rewrite
1673         interface change.
1674         * stdio-common/printf_fp.c (__printf_fp): Likewise..  Account for
1675         string rewrite when allocating buffer.
1676
1677         * sysdeps/unix/sysv/linux/kernel-features.h: PPC has the new
1678         syscalls, too.
1679
1680         * nscd/connections.c (nscd_init): Clean up fcntl call.
1681
1682         * nscd/nscd_helper.c (open_socket): Use SOCK_CLOEXEC and
1683         SOCK_NONBLOCK if possible.
1684
1685         * sysdeps/unix/sysv/linux/opensock.c (__opensock): Use
1686         SOCK_CLOEXEC if available.
1687
1688         * include/rpc/clnt.h: Declare __libc_clntudp_bufcreate and
1689         __libc_clntudp_bufcreate_internal.
1690         * include/sys/socket.h: Declare __have_sock_cloexec.
1691         * socket/Makefile (aux): Add have_sock_cloexec.
1692         * socket/have_sock_cloexec.c: New file.
1693         * sunrpc/clnt_udp.h (clntudp_bufcreate): Now a wrapper around
1694         __libc_clntudp_bufcreate.
1695         (__libc_clntudp_bufcreate): Former implementation of clntudp_bufcreate
1696         which takes an additional parameter.  Create socket with non-blocking
1697         mode and close-on-exec flag set, if wanted.
1698         * sunrpc/Versions: Export __libc_clntudp_bufcreate@GLIBC_PRIVATE.
1699         * nis/ypclnt.c (yp_bind_client_create): Use __libc_clntpudp_bufcreate
1700         instead of clntudp_create.  The socket has already the close-on-exec
1701         flag set if SOCK_CLOEXEC is defined.
1702
1703 2008-07-24  Ulrich Drepper  <drepper@redhat.com>
1704
1705         * sysdeps/unix/sysv/linux/kernel-features.h: Define
1706         __ASSUME_PACCEPT, __ASSUME_IN_NONBLOCK, and __ASSUME_PACCEPT if
1707         appropriate.
1708         * nscd/connections.c: Avoid fcntl calls to set close-on-exec flag and
1709         non-blocking mode by using socket, paccept, and inotify_init1.
1710
1711         * Versions.def (glibc): Add GLIBC_2.9.
1712         * io/Makefile (routines): Add dup3 and pipe2.
1713         * io/Versions [glibc] (GLIBC_2.9): Add dup3 and pipe2.
1714         * io/dup3.c: New file.
1715         * io/pipe2.c: New file.
1716         * posix/unistd.h: Declare dup3 and pipe2.
1717         * socket/Makefile (routines): Add paccept.
1718         * socket/Versions [glibc] (GLIBC_2.9): Add paccept.
1719         * socket/paccept.c: New file.
1720         * socket/sys/socket.h: Declare paccept.
1721         * sysdeps/unix/syscalls.list: Add entry for dup3.
1722         * sysdeps/unix/sysv/linux/Versions [glibc] (GLIBC_2.9): Add
1723         epoll_create2 and inotify_init1.
1724         * sysdeps/unix/sysv/linux/eventfd.c: Use eventfd1 syscall if possible.
1725         * sysdeps/unix/sysv/linux/paccept.c: New file.
1726         * sysdeps/unix/sysv/linux/signalfd.c: Use signalfd4 syscall if
1727         possible.
1728         * sysdeps/unix/sysv/linux/socketcall.h: Add SOCKOP_paccept.
1729         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create2,
1730         inotify_init1, and pipe2 entries.
1731         * sysdeps/unix/sysv/linux/alpha/sys/epoll.h: New file.
1732         * sysdeps/unix/sysv/linux/alpha/sys/eventfd.h: New file.
1733         * sysdeps/unix/sysv/linux/alpha/sys/inotify.h: New file.
1734         * sysdeps/unix/sysv/linux/alpha/sys/signalfd.h: New file.
1735         * sysdeps/unix/sysv/linux/alpha/sys/timerfd.h: New file.
1736         * sysdeps/unix/sysv/linux/bits/socket.h: Define SOCK_CLOEXEC and
1737         SOCK_NONBLOCK.
1738         * sysdeps/unix/sysv/linux/i386/paccept.S: New file.
1739         * sysdeps/unix/sysv/linux/sparc/sys/epoll.h: New file.
1740         * sysdeps/unix/sysv/linux/sparc/sys/eventfd.h: New file.
1741         * sysdeps/unix/sysv/linux/sparc/sys/inotify.h: New file.
1742         * sysdeps/unix/sysv/linux/sparc/sys/signalfd.h: New file.
1743         * sysdeps/unix/sysv/linux/sparc/sys/timerfd.h: New file.
1744         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: New file.
1745         * sysdeps/unix/sysv/linux/sys/epoll.h: Define EPOLL_CLOEXEC and
1746         EPOLL_NONBLOCK.  Declare epoll_create2.
1747         * sysdeps/unix/sysv/linux/sys/eventfd.h: Define EFD_CLOEXEC and
1748         EFD_NONBLOCK.
1749         * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOEXEC and
1750         IN_NONBLOCK.  Declare inotify_init1.
1751         * sysdeps/unix/sysv/linux/sys/signalfd.h: Define SFD_CLOEXEC and
1752         SFD_NONBLOCK.
1753         * sysdeps/unix/sysv/linux/sys/timerfd.h: Define TFD_CLOEXEC and
1754         TFD_NONBLOCK.
1755
1756         * elf/elf.h: Define AT_EXECFN.
1757         * elf/rtld.c [!__ASSUME_AT_EXECFN] (process_envvars): Don't handle
1758         LD_ORIGIN_PATH.
1759         * elf/dl-sysdep.c (_dl_sysdep_start): Handle AT_EXECFN.
1760         * elf/dl-support.c: Define _dl_execfn.  Don't define _dl_origin_path
1761         if __ASSUME_AT_EXECFN is defined.
1762         (_dl_aux_init): Handle AT_EXECFN.
1763         * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_AT_EXECFN
1764         for 2.6.27 and up.
1765         * sysdeps/generic/ldsodefs.h (rtld_global_ro): Add _dl_execfn.
1766         Don't define _dl_origin_path if __ASSUME_AT_EXECFN is defined.
1767         * sysdeps/unix/sysv/linux/dl-origin.c (_dl_get_origin): Use
1768         _dl_execfn if available and avoid compatibility code if
1769         __ASSUME_AT_EXECFN is defined.
1770
1771         * sysdeps/unix/sysv/linux/dl-sysdep.h: Don't declare
1772         _dl_discover_osversion only for older kernels.
1773
1774 2008-07-22  Roland McGrath  <roland@frob.com>
1775
1776         * hurd/fd-read.c (_hurd_fd_read): Fix last change.
1777
1778 2008-07-21  Roland McGrath  <roland@frob.com>
1779
1780         * hurd/fd-read.c (_hurd_fd_read): Return EGRATUITOUS if the server
1781         returned too much data out of line.
1782
1783 2008-07-20  Ulrich Drepper  <drepper@redhat.com>
1784
1785         * locale/setlocale.c (setname): Remove inline to avoid compiler
1786         warning.
1787
1788         [BZ #6712]
1789         * locale/setlocale.c (setlocale): Take the setlocale lock earlier.
1790
1791 2008-07-15  Ulrich Drepper  <drepper@redhat.com>
1792
1793         * stdio-common/vfprintf.c (_IO_helper_overflow): In case _IO_sputn
1794         doesn't manage to write anything, fail.
1795
1796         * malloc/hooks.c (__malloc_check_init): Remove printf.
1797
1798 2008-07-14  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1799
1800         * sysdeps/mach/hurd/bits/fcntl.h: Include <sys/types.h>.
1801
1802 2008-07-12  Ulrich Drepper  <drepper@redhat.com>
1803
1804         * nscd/connections.c (main_loop_poll): Fix handling of read errors
1805         from inotify.
1806         (main_loop_epoll): Likewise.
1807
1808 2008-07-09  Ulrich Drepper  <drepper@redhat.com>
1809
1810         * resolv/res_send.c: Remove unnecessary res_pquery prototype.
1811
1812         * resolv/res_query.c (__libc_res_nquery): Issue debug message only
1813         if DEBUG is defined.
1814
1815         * resolv/res_query.c (__libc_res_nquery): Align buffer for T_AAAA
1816         query.  Adjust buffer size computation for padding.
1817
1818 2008-07-08  Ulrich Drepper  <drepper@redhat.com>
1819
1820         * stdio-common/Makefile: Add rules to build and run tst-setvbuf1.
1821         * stdio-common/tst-setvbuf1.c: New file.
1822         * stdio-common/tst-setvbuf1.expect: New file.
1823
1824         [BZ #6719]
1825         * libio/iosetvbuf.c (_IO_setvbuf): Correctly clear buffering flags
1826         when selecting fully-buffered stream.
1827         Patch by Wang Xin <wxinee@gmail.com>.
1828
1829 2008-07-06  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1830
1831         * sysdeps/mach/hurd/open.c: Include <stdio.h>.
1832         (__open_2): New function.
1833         (__open64_2): New alias to __open_2.
1834         * sysdeps/mach/hurd/openat.c: Include <stdio.h>.
1835         (__openat_2): New function.
1836         (__openat64_2): New alias to __openat_2.
1837
1838 2008-07-06  Ulrich Drepper  <drepper@redhat.com>
1839
1840         [BZ #6723]
1841         * time/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
1842
1843 2008-07-01  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1844
1845         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Define MSG_NOSIGNAL.
1846         * hurd/hurd/fd.h (__hurd_sockfail): Add extern inline function.
1847         * sysdeps/mach/hurd/recv.c (__recv): Use __hurd_sockfail instead of
1848         __hurd_dfail.
1849         * sysdeps/mach/hurd/recvfrom.c (__recvfrom): Likewise.
1850         * sysdeps/mach/hurd/recvmsg.c (__recvmsg): Likewise.
1851         * sysdeps/mach/hurd/send.c (__send): Likewise.
1852         * sysdeps/mach/hurd/sendto.c (__sendfrom): Likewise.
1853         * sysdeps/mach/hurd/sendmsg.c (__sendmsg): Likewise.
1854
1855 2008-03-04  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1856
1857         * sysdeps/mach/hurd/recv.c (__recv): Initialize NPORTS.
1858         * sysdeps/mach/hurd/recvfrom.c (__recvfrom): Likewise.
1859         * sysdeps/mach/hurd/recvmsg.c (__recvmsg): Likewise.
1860         * hurd/fd-read.c (_hurd_fd_read): Initialize NREAD.
1861         * hurd/get-host.c (_hurd_get_host_config): Likewise.
1862         * sysdeps/mach/hurd/dl-sysdep.c (__libc_read): Likewise.
1863
1864 2008-06-27  Ulrich Drepper  <drepper@redhat.com>
1865
1866         [BZ #6657]
1867         * time/strptime_l.c: Don't clear s.era_cnt after successful match
1868         of %EY.
1869         Patch by Petr Baudis.
1870
1871 2008-06-26  Ulrich Drepper  <drepper@redhat.com>
1872
1873         * resolv/res_debug.c (__p_type_syms): Add ns_t_dname entry.
1874         Patch by Peter Jones <pjones@redhat.com>.
1875
1876 2008-06-25  Ulrich Drepper  <drepper@redhat.com>
1877
1878         [BZ #6654]
1879         * stdlib/canonicalize.c (__realpath): readlink can write too much
1880         into the buffer on platforms without PATH_MAX.
1881
1882 2008-06-17  Carlos O'Donell  <carlos@codesourcery.com>
1883
1884         [BZ #6653]
1885         * posix/tst-regex.c (main): Rename to...
1886         (do_test): ... this. Remove cmdline option processing.
1887         (TIMEOUT): Define.
1888         (TEST_FUNCTION): Define.
1889         (CMDLINE_OPTIONS): Define.
1890
1891 2008-06-25  Ulrich Drepper  <drepper@redhat.com>
1892
1893         [BZ #5210]
1894         * configure.in: Add -Werror to -fstack-protector test to catch
1895         unsupported architectures.
1896         Patch by Gilles Esponasse <g.esp@free.fr>.
1897
1898 2008-06-17  Joseph Myers  <joseph@codesourcery.com>
1899
1900         * stdlib/tst-setcontext.c: Set back_in_main before exit if
1901         getcontext returns ENOSYS.
1902
1903 2008-06-18  Ulrich Drepper  <drepper@redhat.com>
1904
1905         * nscd/connections.c (main_loop_poll): Fix test for read error.
1906         (main_loop_epoll): Likewise.
1907
1908 2008-06-13  Ulrich Drepper  <drepper@redhat.com>
1909
1910         * sysdeps/posix/getaddrinfo.c: Move _res_hconf_init call to a
1911         better place so it is not called when nscd is used.
1912
1913         * nscd/connections.c: Also recognize and handle changes to the
1914         resolver configuration file.
1915
1916 2008-06-12  Ulrich Drepper  <drepper@redhat.com>
1917
1918         * time/strftime.c: Pass reference to tzset_called around to handle
1919         recursive calls.
1920
1921         [BZ #6612]
1922         * time/strftime.c (__strftime_internal): Call tzset() only
1923         when printing timezone-dependent values.
1924         Based on a patch by Petr Baudis <pasky@suse.cz>.
1925
1926         * resolv/nss_dns/dns-host.c (gaih_getanswer): Don't
1927         unconditionally use second gaih_getanswer_slice result.
1928
1929         * sysdeps/posix/getaddrinfo.c (gai_inet): Remove unnecessary test.
1930         (getaddrinfo): RES must always be non-NULL.
1931
1932 2008-06-12  Jakub Jelinek  <jakub@redhat.com>
1933
1934         * sysdeps/powerpc/powerpc64/fpu/s_llround.S (__llround): Avoid using
1935         cr[34] registers.
1936         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S (__llroundf): Likewise.
1937         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S (__llround):
1938         Likewise.
1939         * sysdeps/powerpc/powerpc32/fpu/s_lround.S (__lround): Avoid using cr3
1940         register.
1941
1942 2008-06-12  Ulrich Drepper  <drepper@redhat.com>
1943
1944         * nscd/nscd.h (struct database_dyn): Add inotify_descr and clear_cache
1945         fields.
1946         * nscd/connections.c (inotify_fd): New variable.
1947         (nscd_init): Try to open an inotify descriptor.
1948         If successful, watch files for databases using inotify instead of
1949         having prune threads stat the files.
1950         (nscd_run_prune): Recognize clear_cache flag being set and call
1951         prune_cache appropriately.
1952         (main_loop_poll): Add inotify descriptor to wait set and handle the
1953         reported changes.
1954         (main_loop_epoll): Likewise.
1955         * nscd/cache.c (prune_cache): Don't stat files for databases if
1956         inotify is used.
1957         * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]
1958         (CFLAGS-connections.c): Add -DHAVE_INOTIFY.
1959
1960         * nscd/grpcache.c (cache_addgr): Correctly compute size of
1961         fixed-size portion of the record.
1962         * nscd/servicescache.c (cache_addserv): Likewise.
1963         * nscd/pwdcache.c (cache_addpw): Likewise.
1964         * nscd/initgrcache.c (addinitgroupsX): Likewise.
1965
1966 2008-06-11  Ulrich Drepper  <drepper@redhat.com>
1967
1968         * nscd/mem.c (gc): Initialize obstack earlier so that if we jump
1969         out we don't use uninitialized memory.
1970
1971         * nscd/hstcache.c (cache_addhst): Send correct number of bytes to
1972         the client.
1973
1974 2008-06-10  Ulrich Drepper  <drepper@redhat.com>
1975
1976         * resolv/nss_dns/dns-host.c (gaih_getanswer_slice): Also log and
1977         ignore T_DNAME messages.
1978         * resolv/arpa/nameser_compat.h (T_DNAME): Define.
1979
1980 2008-06-05  Jakub Jelinek  <jakub@redhat.com>
1981
1982         * misc/regexp.h (compile): Use __REPB_PREFIX macro.
1983         Avoid segfault if first GETC returns eof/'\0'/'\n'.
1984
1985 2008-06-03  Jakub Jelinek  <jakub@redhat.com>
1986
1987         * nscd/nscd_getserv_r.c (__nscd_getservbyport_r): Pass cp
1988         instead of portstr to nscd_getserv_r.  Patch by
1989         Roman Kagan <rkagan@mail.ru>.
1990
1991 2008-05-26  Jim Meyering  <meyering@redhat.com>
1992
1993         Remove more useless "if" tests before "free".
1994         * include/inline-hashtab.h (htab_delete): Likewise.
1995         * libio/freopen.c (freopen): Likewise.
1996         * libio/freopen64.c (freopen64): Likewise.
1997         * locale/programs/ld-collate.c (collate_read): Likewise.
1998         * misc/fstab.c (libc_freeres_fn): Likewise.
1999         * posix/glob.c (globfree): Likewise.
2000
2001 2008-05-24  Ulrich Drepper  <drepper@redhat.com>
2002
2003         * string/Makefile (strop-tests): Add memmem.
2004         * string/test-memmem.c: New file.
2005         * string/test-string.h (BUF1PAGES): Define to 1 if undefined.
2006         (test_init): Size buf1 according to BUF1PAGES.
2007
2008 2008-05-24  Jakub Jelinek  <jakub@redhat.com>
2009
2010         * libio/stdio.h (vscanf): Fix -std=c99 redirect.
2011         * stdio-common/Makefile (tests): Add scanf16 and scanf17.
2012         (CFLAGS-scanf17.c): New.
2013         * stdio-common/scanf14.c (main): Add fscanf and scanf tests.
2014         * stdio-common/scanf15.c (main): Likewise.
2015         * stdio-common/scanf16.c: New file.
2016         * stdio-common/scanf17.c: New file.
2017
2018 2008-05-24  Ulrich Drepper  <drepper@redhat.com>
2019
2020         * resolv/res_send.c (send_dg): If we already have one of two
2021         answers and the server reports SERVFAIL, NOTIMP, or REFUSED, then
2022         use the one answer insted of failing.
2023
2024 2008-02-20  Ryan S. Arnold  <rsa@us.ibm.com>
2025
2026         * math/libm-test.inc (exp_test): Exclude expl(1000.0L) from
2027         being executed on PowerPC as the expected result exceeds IBM
2028         long double 128 __LDBL_MAX__.
2029
2030 2008-05-21  Roland McGrath  <roland@redhat.com>
2031
2032         * shlib-versions (sparc.*-.*-.*, sparc64.*-.*-.*): Add ABI lines.
2033
2034         * Makefile (check-data): Use $(abi-name) before other guesses.
2035         Look in $(add-ons) dirs before scripts/data/.
2036         * elf/Makefile (check-data): Likewise.
2037
2038         * scripts/soversions.awk: Grok ABI line.
2039         * Makeconfig ($(common-objpfx)soversions.mk): Likewise.
2040         Emit definition for abi-name variable.
2041
2042 2008-05-21  Ulrich Drepper  <drepper@redhat.com>
2043
2044         * string/endian.h: Define new fixed-size hto* and *toh macros only
2045         if [__USE_BSD].
2046
2047         * iconvdata/Depend: Add localedata.
2048
2049 2008-05-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
2050
2051         * bits/termios.h (ONLCR): Define under [__USE_XOPEN] too.
2052
2053 2008-05-08  David S. Miller  <davem@davemloft.net>
2054
2055         * sysdeps/unix/sysv/linux/sparc/sparc32/setcontext.S: Use
2056         HIDDEN_JUMPTARGET.
2057         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
2058         (__SYSCALL_CLOBBERS): Remove %g* registers.
2059         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
2060         (__SYSCALL_CLOBBERS): Likewise.
2061         * scripts/data/localplt-sparc-linux-gnu.data: New file.
2062         * scripts/data/localplt-sparc64-linux-gnu.data: New file.
2063
2064 2008-05-21  Jakub Jelinek  <jakub@redhat.com>
2065
2066         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
2067         (CALL_ERRNO_LOCATION): Define.
2068         (__SYSCALL_STRING, __CLONE_SYSCALL_STRING): Use it.
2069         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
2070         (CALL_ERRNO_LOCATION): Define.
2071         (__SYSCALL_STRING, __CLONE_SYSCALL_STRING): Use it.
2072         * sysdeps/unix/sysv/linux/sparc/sparc64/brk.S (__brk): Use
2073         HIDDEN_JUMPTARGET for __errno_location call in libc.so.
2074
2075 2008-05-20  Ulrich Drepper  <drepper@redhat.com>
2076
2077         * include/inline-hashtab.h (higher_prime_number): Fix type of mid
2078         variable.
2079
2080 2008-05-20  Jakub Jelinek  <jakub@redhat.com>
2081
2082         * sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h
2083         (FIRST_FRAME_POINTER): Define.
2084
2085 2008-05-09  David S. Miller  <davem@davemloft.net>
2086
2087         * sysdeps/sparc/sparc64/backtrace.c: New file.
2088
2089 2008-05-14  David S. Miller  <davem@davemloft.net>
2090
2091         * sysdeps/sparc/machine-gmon.h: New file.
2092         * sysdeps/sparc/sparc-mcount.S: Likewise.
2093         * sysdeps/sparc/Makefile: Add sparc-mcount target to
2094         sysdep_routines in gmon directory.
2095
2096 2008-05-19  Jakub Jelinek  <jakub@redhat.com>
2097
2098         * elf/soinit.c (__EH_FRAME_BEGIN__): Remove.
2099
2100 2008-05-19  Ulrich Drepper  <drepper@redhat.com>
2101
2102         * resolv/res_query.c (__libc_res_nquery): In case one of two
2103         answer was too short don't try to read that answer's header.
2104
2105         * resolv/res_send.c (send_dg): In case of timeout and there are
2106         two queries and one has been answered, return value indicating
2107         success.
2108
2109 2008-05-18  Ulrich Drepper  <drepper@redhat.com>
2110
2111         * nscd/cache.c (cache_add): Take additional parameter specifying
2112         whether this is in response of a cache refill.  Check alignment
2113         of package data.  Revamp waking of pruning thread.
2114         (prune_cache): Small optimization.
2115         * nscd/nscd.h: Adjust cache_add prototypes.
2116         * nscd/aicache.c: Adjust cache_add calls.
2117         * nscd/grpcache.c: Likewise.
2118         * nscd/hstcache.c: Likewise.
2119         * nscd/initgrcache.c: Likewise.
2120         * nscd/pwdcache.c: Likewise.
2121         * nscd/servicescache.c: Likewise.
2122         * nscd/connections.c (restart): Really disable cache use before
2123         exec attempt.  If it fails, reenable cache.
2124         (nscd_run_prune): Initialize wakeup_time.  After wakeup, set wakeup
2125         time to max to be able to notice concurrent cache additions.  Unlock
2126         prune_lock while performing gc.  Afterwards compute wakeup time with
2127         current wakeup_time value in mind.
2128
2129 2008-05-17  Ulrich Drepper  <drepper@redhat.com>
2130
2131         * nscd/mem.c (gc): Avoid stack overflow when allocating move list.
2132
2133         * nscd/mem.c (gc): Correctly determine highest used array element
2134         in mark.
2135
2136         * nscd/mem.c (markrange): Add assert to check entries are all
2137         aligned.  Small cleanup in bitmap use.
2138
2139         * nscd/nscd.h (mem_in_flight): Replace blockaddr field with
2140         blockoff of type nscd_ssize_t.
2141         * nscd/mem.c (gc): Simplify markrange call for on-flight blocks.
2142         (mempoll_alloc): Record block offset and not address.
2143
2144         * nscd/mem.c (gc): Fix test for stack overuse.
2145
2146         * nscd/aicache.c (addhstaiX): Fix a few small problems, cleanups,
2147         more asserts.
2148
2149         * sysdeps/posix/getaddrinfo.c (gaih_inet): If nscd reports no
2150         entry is available, believe it.
2151
2152         * resolv/nss_dns/dns-host.c (gaih_getanswer_slice): If there are
2153         no answers return NSS_STATUS_NOTFOUND.
2154         (gaih_getanswer): Don't call gaih_getanswer_slice if the answer
2155         buffer does not have any content.
2156
2157 2008-05-16  Ulrich Drepper  <drepper@redhat.com>
2158
2159         * string/strcasestr.c (CMP_FUNC): Use __strncasecmp, not strncasecmp.
2160
2161         * sysdeps/posix/getaddrinfo.c (gaih_inet): After gethostbyname4_r
2162         lookup, don't assign canon unconditionally.
2163
2164 2008-05-14  Ulrich Drepper  <drepper@redhat.com>
2165
2166         * string/Makefile (distribute): Add str-two-way.h.
2167
2168 2008-03-29  Eric Blake  <ebb9@byu.net>
2169
2170         Rewrite string searches to O(n) rather than O(n^2).
2171         * string/str-two-way.h: New file.  For linear fixed-allocation
2172         string searching.
2173         * string/memmem.c: New implementation.
2174         * string/strstr.c: New implementation.
2175         * string/strcasestr.c: New implementation.
2176
2177 2008-04-11  Paolo Bonzini  <bonzini@gnu.org>
2178
2179         * posix/regcomp.c (optimize_utf8): Add a note on why we test
2180         opr.ctx_type.
2181         (calc_first): Initialize constraint field.
2182         (duplicate_node_closure): Use it instead of special casing ANCHORS.
2183         Use search_duplicated_node to avoid loops.  Fix grammar.
2184         (duplicate_node): Merge constraint field for all node types.
2185         (calc_eclosure_iter): Look at constraint field for all node types.
2186         * posix/regex_internal.c (create_cd_newstate): Don't look at
2187         create_cd_newstate.
2188
2189 2008-05-14  Ulrich Drepper  <drepper@redhat.com>
2190
2191         [BZ #6428]
2192         * configure.in: Don't use $CFLAGS when assembling, use $ASFLAGS.
2193
2194         [BZ #6442]
2195         * string/endian.h: Add macros for fixed-size endian conversion.
2196         * bits/byteswap.h: Allow inclusion from <endian.h>.
2197         * sysdeps/i386/bits/byteswap.h: Likewise.
2198         * sysdeps/ia64/bits/byteswap.h: Likewise.
2199         * sysdeps/s390/bits/byteswap.h: Likewise.
2200         * sysdeps/x86_64/bits/byteswap.h: Likewise.
2201         * string/Makefile (tests): Add tst-endian.
2202         * string/tst-endian.c: New file.
2203
2204         * iconvdata/run-iconv-test.sh: Use = instead of == in test.
2205         Patch by Reuben Thomas.
2206
2207 2008-05-14  Joseph Myers  <joseph@codesourcery.com>
2208
2209         * iconvdata/Makefile (bug-iconv6-ENV, tst-iconv7-ENV): Define.
2210
2211 2008-05-14  Ulrich Drepper  <drepper@redhat.com>
2212
2213         * iconvdata/bug-iconv6.c (do_test): Use de_DE.UTF-8 locale.
2214
2215         [BZ #6461]
2216         * iconv/gconv_simple.c (BODY for __gconv_transform_ascii_internal):
2217         Add missing braces.
2218         (BODY for __gconv_transform_internal_ascii): Likewise.
2219
2220         [BZ #6472]
2221         * sysdeps/posix/getaddrinfo.c (get_scope): Loopback addresses have
2222         to be treated like link-local addresses.
2223         (match_prefix): Don't treat IPv4 loopback address special when
2224         converting to v4 mapped addressed.
2225
2226         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Call _res_hconf_init
2227         if necessary.
2228         * posix/tst-rfc3484.c: Add dummy definition of _res_hconf_init.
2229         * posix/tst-rfc3484-2.c: Likewise.
2230         * posix/tst-rfc3484-3.c: Likewise.
2231
2232         * sysdeps/posix/getaddrinfo.c: Implement handling of DCCP, UDPlite,
2233         and SCTP.
2234
2235         * nss/getent.c (ahosts_keys_int): Handle all known socket types.
2236
2237         * inet/netinet/in.h (IPPIPPROTO_DCCP, IPPROTO_UDPLITE): Define.
2238
2239         * sysdeps/unix/sysv/linux/bits/socket.h (SOCK_DCCP): Define.
2240
2241 2008-05-13  Ulrich Drepper  <drepper@redhat.com>
2242
2243         * po/lt.po: New file.  From Lituanian translation team.
2244
2245 2008-01-30  Alexandre Oliva  <aoliva@redhat.com>
2246
2247         Introduce TLS descriptors for i386 and x86_64.
2248         * include/inline-hashtab.h: New file, copied from 2005's
2249         libiberty, with fix for memory leak imported afterwards by
2250         Glauber de Oliveira Costa.
2251         * elf/tlsdeschtab.h: New file.
2252         * elf/dl-reloc.c (_dl_try_allocate_static_tls): Extract from...
2253         (_dl_allocate_static_tls): ... here.  Rearrange failure path.
2254         (CHECK_STATIC_TLS): Move to...
2255         * elf/dynamic-link.h: ... this file.
2256         (TRY_STATIC_TLS): New macro.
2257         * elf/dl-conflict.c (CHECK_STATIC_TLS, TRY_STATIC_TLS): Override.
2258         * elf/elf.h (R_386_TLS_GOTDESC, R_386_TLS_DESC_CALL,
2259         R_386_TLS_DESC): Define.
2260         (R_X86_64_PC64, R_X86_GOTOFF64, R_X86_64_GOTPC32): Merge from
2261         binutils.
2262         (R_X86_64_GOTPC32_TLSDESC, R_X86_64_TLSDESC_CALL,
2263         R_X86_64_TLSDESC): Define.
2264         (R_386_NUM, R_X86_64_NUM): Adjust.
2265         * sysdeps/i386/Makefile (sysdep-dl-routines, sysdep_routines,
2266         sysdep-rtld-routines): Add tlsdesc and dl-tlsdesc for elf subdir.
2267         (gen-as-const-headers): Add tlsdesc.sym to csu subdir.
2268         * sysdeps/i386/dl-lookupcfg.h: New file.  Introduce _dl_unmap to
2269         release tlsdesc_table.
2270         * sysdeps/i386/dl-machine.h: Include dl-tlsdesc.h.
2271         (elf_machine_type_class): Mark R_386_TLS_DESC as PLT class.
2272         (elf_machine_rel): Handle R_386_TLS_DESC.
2273         (elf_machine_rela): Likewise.
2274         (elf_machine_lazy_rel): Likewise.
2275         (elf_machine_lazy_rela): Likewise.
2276         * sysdeps/i386/dl-tls.h (struct dl_tls_index): Name it.
2277         * sysdeps/i386/dl-tlsdesc.S: New file.
2278         * sysdeps/i386/dl-tlsdesc.h: New file.
2279         * sysdeps/i386/tlsdesc.c: New file.
2280         * sysdeps/i386/tlsdesc.sym: New file.
2281         * sysdeps/i386/bits/linkmap.h (struct link_map_machine): Add
2282         tlsdesc_table.
2283         * sysdeps/x86_64/Makefile (sysdep-dl-routines, sysdep_routines,
2284         sysdep-rtld-routines): Add tlsdesc and dl-tlsdesc for elf subdir.
2285         (gen-as-const-headers): Add tlsdesc.sym to csu subdir.
2286         * sysdeps/x86_64/dl-lookupcfg.h: New file.  Introduce _dl_unmap to
2287         release tlsdesc_table.
2288         * sysdeps/x86_64/dl-machine.h: Include dl-tlsdesc.h.
2289         (elf_machine_runtime_setup): Set up lazy TLSDESC GOT entry.
2290         (elf_machine_type_class): Mark R_X86_64_TLSDESC as PLT class.
2291         (elf_machine_rel): Handle R_X86_64_TLSDESC.
2292         (elf_machine_rela): Likewise.
2293         (elf_machine_lazy_rel): Likewise.
2294         * sysdeps/x86_64/dl-tls.h (struct dl_tls_index): Name it.
2295         (__tls_get_addr): Do not declare for non-shared compiles.
2296         * sysdeps/x86_64/dl-tlsdesc.S: New file.
2297         * sysdeps/x86_64/dl-tlsdesc.h: New file.
2298         * sysdeps/x86_64/tlsdesc.c: New file.
2299         * sysdeps/x86_64/tlsdesc.sym: New file.
2300         * sysdeps/x86_64/bits/linkmap.h (struct link_map_machine): Add
2301         tlsdesc_table for both 32- and 64-bit structs.
2302
2303 2008-05-11  Ulrich Drepper  <drepper@redhat.com>
2304
2305         * elf/dl-tls.c (__tls_get_addr): Optimize by moving slow path in
2306         its own function.  This reduces the frame setup costs and more.
2307
2308 2008-02-11  Joseph Myers  <joseph@codesourcery.com>
2309
2310         [BZ #3406]
2311         * sysdeps/ieee754/flt-32/w_expf.c (o_threshold): Correct value.
2312         * math/libm-test.inc (exp_test): Test 88.72269439697265625.
2313
2314 2008-05-11  Ulrich Drepper  <drepper@redhat.com>
2315
2316         * io/openat.c (__openat_2): Also pass fd to __openat.
2317         * io/openat64.c (__openat64_2): Also pass fd to __openat64.
2318         Patch by Kristian Van Der Vliet <vanders@liqwyd.com>.
2319
2320         * string/tester.c (test_memcmp): Add a few more tests.
2321         Patch by Mats Erik Andersson <ynglingatal@comhem.se>.
2322
2323 2008-05-10  Ulrich Drepper  <drepper@redhat.com>
2324
2325         * nscd/cache.c (cache_add): Before returning with failure and this
2326         is the first use of the record, mark it as unusable.
2327         * nscd/aicache.c: Don't touch the dataset after cache_add returns
2328         reporting a failure.
2329         * nscd/grpcache.c: Likewise
2330         * nscd/hstcache.c: Likewise.
2331         * nscd/initgrcache.c: Likewise.
2332         * nscd/pwdcache.c: Likewise.
2333         * nscd/servicescache.c: Likewise.
2334
2335 2008-05-10  Roland McGrath  <roland@redhat.com>
2336
2337         [BZ #6505]
2338         * sysdeps/unix/sysv/linux/sys/user.h: Replace with #error stub.
2339
2340 2008-05-08  David S. Miller  <davem@davemloft.net>
2341
2342         * misc/truncate64.c (truncate64): Use __truncate not truncate.
2343
2344         * sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee751_j0l): Use __finitel.
2345         (__ieee754_y0l): Likewise.
2346         * sysdeps/ieee754/ldbl-128/e_j1l.c (__ieee754_j1l): Likewise.
2347         (__ieee754_y1l): Likewise.
2348         * sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l): Use __ldexpl.
2349         * sysdeps/ieee754/ldbl-128/s_log1pl.c: Kill bogus prototypes for
2350         frexpl and ldexpl.  math_private.h provides them and the latter
2351         is not even used.
2352         (__log1pl): Use __frexpl.
2353
2354 2008-05-10  Ulrich Drepper  <drepper@redhat.com>
2355
2356         * include/resolv.h: Adjust __libc_res_nquery and __libc_res_nsend
2357         prototypes.
2358         * include/arpa/nameser_compat.h: Define T_UNSPEC.
2359         * nis/Versions (libnss_nis): Export _nss_nis_gethostbyname4_r.
2360         (libnss_nisplus): Export _nss_nisplus_gethostbyname4_r.
2361         * nis/nss_nis/nis-hosts.c (LINE_PARSER): Change to also handle
2362         af==AF_UNSPEC.
2363         (_nss_nis_gethostbyname4_r): New function.
2364         * nis/nss_nisplus/nisplus-hosts.c (_nss_nisplus_parse_hostent):
2365         Change to also handle af==AF_UNSPEC.
2366         (get_tablename): New function.  Use it to avoid duplication.
2367         (_nss_nisplus_gethostbyname4_r): New function.
2368         * nscd/aicache.c (addhstaiX): Use gethostbyname4_r function is
2369         available.
2370         * nss/Versions (libnss_files): Export _nss_files_gethostbyname4_r.
2371         * nss/nss.h: Define struct gaih_addrtuple.
2372         * nss/nss_files/files-hosts.c (LINE_PARSER): Change to also handle
2373         af==AF_UNSPEC.
2374         (_nss_files_gethostbyname4_r): New function.
2375         * resolv/Versions (libnss_dns): Export _nss_dns_gethostbyname4_r.
2376         * resolv/gethnmaddr.c: Adjust __libc_res_nsearch and __libc_res_nquery
2377         calls.
2378         * resolv/res_query.c (__libc_res_nquery): Take two additional
2379         parameters for second answer buffer.  Handle type=T_UNSPEC to mean
2380         look up IPv4 and IPv6.
2381         Change all callers.
2382         * resolv/res_send.c (__libc_res_nsend): Take five aditional parameters
2383         for an additional query and answer buffer.  Pass to send_vc and
2384         send_dg.
2385         (send_vc): Send possibly two requests and receive two answers.
2386         (send_dg): Likewise.
2387         * resolv/nss_dns/dns-host.c: Adjust calls to __libc_res_nsearch and
2388         __libc_res_nquery.
2389         (_nss_dns_gethostbyname4_r): New function.
2390         (gaih_getanswer_slice): Likewise.
2391         (gaih_getanswer): Likewise.
2392         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Adjust
2393         __libc_res_nquery call.
2394         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
2395         (_nss_dns_getnetbyname_r): Adjust __libc_res_nsearch call.
2396         * sysdeps/posix/getaddrinfo.c: Use gethostbyname4_r function is
2397         available.
2398
2399 2008-05-05  David S. Miller  <davem@davemloft.net>
2400
2401         * sysdeps/sparc/sparc32/Makefile: Use -mcpu=v7 for initfini.s build.
2402         * sysdeps/sparc/sparc64/Makefile: Use -mcpu=v9 for initfini.s build.
2403
2404 2007-09-14  Samuel Thibault  <samuel.thibault@ens-lyon.org>
2405
2406         Fix termios bit macros.
2407         Move *DLY definitions where they belong, in termios.h.
2408         Add *[0-3] definitions.
2409         Fixes confusion between VT and FF.
2410         * sysdeps/mach/hurd/bits/ioctls.h (NL0, NL1, TAB0, TAB1, TAB2, CR0,
2411         CR1, CR2, CR3, FF0, FF1, BS0, BS1): Undefine these at start if they
2412         are already defined to avoid collision with termios.h.
2413         (NLDLY, TABDLY, TAB3, CRDLY, VTDLY, BSDLY): Remove macros.
2414         * bits/termios.h [__USE_MISC || __USE_XOPEN] (NL0, NL1, TAB0,
2415         TAB1, TAB2, CR0, CR1, CR2, CR3, FF0, FF1, BS0, BS1): Likewise.
2416         [__USE_BSD || __USE_XOPEN] (OCRNL, ONOCR, ONLRET): New macros.
2417         [__USE_MISC || __USE_XOPEN] (NLDLY, NL0, NL1, TABDLY, TAB0, TAB1, TAB2,
2418         TAB3, CRDLY, CR0, CR1, CR2, CR3, FFDLY, FF0, FF1, BSDLY, BS0, BS1,
2419         VTDLY, VT0, VT1): New macros.
2420         [__USE_GNU] (OLCUC): Change value of macro.
2421         [__USE_XOPEN] (OFILL): New macro.
2422         [__USE_BSD] (CRTSCTS): Change value.
2423         (CRTS_IFLOW, CCTS_OFLOW): Change into compatibility macros.
2424         [__USE_BSD] (CDTRCTS, CHWFLOW): New macros.
2425         (B7200, B14400, B28800, B76800): New macros.
2426
2427 2008-05-01  David S. Miller  <davem@davemloft.net>
2428
2429         * sysdeps/unix/sysv/linux/sparc/sparc32/ucontext_i.sym: New file.
2430         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile [$(subdir) = stdlib]:
2431         (gen-as-const-headers): Add it.
2432         * sysdeps/unix/sysv/linux/sparc/sparc32/getcontext.S: New file.
2433         * sysdeps/unix/sysv/linux/sparc/sparc32/makecontext.c: Likewise.
2434         * sysdeps/unix/sysv/linux/sparc/sparc32/setcontext.S: Likewise.
2435         * sysdeps/unix/sysv/linux/sparc/sparc32/swapcontext.S: Likewise.
2436
2437         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S: Add support for
2438         six system call parameters.
2439         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S: Likewise.
2440
2441 2008-04-30  Ulrich Drepper  <drepper@redhat.com>
2442
2443         * sysdeps/unix/sysv/linux/bits/resource.h: Define RUSAGE_THREAD and
2444         RUSAGE_LWP.
2445         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2446         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2447
2448 2008-04-30  Jakub Jelinek  <jakub@redhat.com>
2449
2450         * stdlib/tst-setcontext.c: Include unistd.h.
2451
2452 2008-04-25  David S. Miller  <davem@davemloft.net>
2453
2454         * sysdeps/unix/sysv/linux/sparc/sparc64/semctl.c (semctl):
2455         Pass "union semun" properly in to sys_ipc, it must be passed
2456         by value, not by reference.
2457
2458 2008-04-22  Jakub Jelinek  <jakub@redhat.com>
2459
2460         * nscd/Makefile (nscd-cflags): Set back to -fpie.
2461         * nscd/nscd.h (mem_in_flight): Add attribute_tls_model_ie.
2462         * nscd/connections.c (mem_in_flight): Likewise.
2463
2464         * nscd/nscd.h (dbs): Make hidden.
2465
2466         * sysdeps/unix/sysv/linux/times.c (__times): Fix check for EFAULT.
2467         Avoid returning -1, return 0 instead.
2468
2469 2008-04-19  Ulrich Drepper  <drepper@redhat.com>
2470
2471         * resolv/res_mkquery.c (__res_nopt): Use NS_PUT16 instead of ns_put16.
2472
2473 2008-04-15  Ulrich Drepper  <drepper@redhat.com>
2474
2475         [BZ #5209]
2476         * sysdeps/unix/sysv/linux/times.c: New file.
2477
2478         [BZ #5381]
2479         * nscd/nscd.h: Define enum in_flight, mem_in_flight, and
2480         mem_in_flight_list variables.  Add new parameter to mempool_alloc
2481         prototype.
2482         * nscd/mem.c (mempool_alloc): Take additional parameter.  Initialize
2483         appropriate mem_in_flight element.
2484         (gc): Take allocations which have not yet been committed to the
2485         database into account.
2486         * nscd/cache.c (cache_add): Add new parameter to mempool_alloc call.
2487         Reset mem_in_flight before returning.
2488         * nscd/connections.c (nscd_run_worker): Initialize mem_in_flight and
2489         cue it up in mem_in_flight_list.
2490         * nscd/aicache.c: Adjust mempool_alloc call.
2491         * nscd/grpcache.c: Likewise.
2492         * nscd/hstcache.c: Likewise.
2493         * nscd/initgrcache.c: Likewise.
2494         * nscd/pwdcache.c: Likewise.
2495         * nscd/servicescache.c: Likewise.
2496         * nscd/Makefile (nscd-flags): Until ld is fixed, use -fpic instead
2497         of -fpie.
2498
2499         * nscd/connections.c (handle_request): Provide better error message
2500         in case SELinux forbids the service.
2501
2502         * version.h (VERSION): Bump to 2.8.90.
2503
2504 2008-04-17  Jakub Jelinek  <jakub@redhat.com>
2505
2506         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include fcntl.h.
2507
2508 2008-04-11  Ulrich Drepper  <drepper@redhat.com>
2509
2510         * sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h (__signbitl):
2511         Also use for 32-bit.
2512         * sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c (__nearbyintl): Use
2513         __nextafter instead of nextafter to avoid local PLT.
2514         * sysdeps/powerpc/fpu/e_sqrt.c: Avoid call to fetestexcept.
2515         * sysdeps/powerpc/fpu/e_sqrtf.c: Likewise.
2516
2517         * scripts/data/localplt-powerpc64-linux-gnu.data: New file.
2518
2519         * sysdeps/powerpc/fpu/fenv_libc.h: Add libm_hidden_proto for
2520         __fe_nomask_env.
2521         * sysdeps/powerpc/fpu/fe_nomask.c: Add libm_hidden_def.  Include
2522         <fenv_libc.h> instead of <fenv.h>.
2523         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: Likewise.
2524         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: Likewise.
2525
2526         * sysdeps/powerpc/bits/fenv.h: Make safe for C++.
2527
2528         * sysdeps/unix/sysv/linux/powerpc/bits/mathinline.h: New file.
2529         * sysdeps/powerpc/fpu/fegetexcept.c (__fegetexcept): Rename
2530         function from fegetexcept and make old name weak alias.
2531         * include/fenv.h: Declare __fegetexcept.
2532         * sysdeps/powerpc/fpu/fedisblxcpt.c: Use __fegetexcept instead of
2533         fegetexcept.
2534         * sysdeps/powerpc/fpu/feenablxcpt.c: Likewise.
2535         * sysdeps/powerpc/fpu/fraiseexcpt.c (__feraiseexcept): Avoid call
2536         to fetestexcept.
2537         * sysdeps/ieee754/ldbl-128ibm/s_log1pl.c (__log1pl): Use __frexpl
2538         instead of frexpl to avoid local PLT.
2539         * math/s_significandl.c (__significandl): Use __ilogbl instead of
2540         ilogbl to avoid local PLT.
2541         * sysdeps/ieee754/ldbl-128ibm/s_expm1l.c (__expm1l): Use __ldexpl
2542         instead of ldexpl to avoid local PLT.
2543         * sysdeps/ieee754/ldbl-128ibm/e_expl.c (__ieee754_expl): Use
2544         __roundl not roundl to avoid local PLT.
2545         * sysdeps/ieee754/ldbl-128/e_j0l.c: Use function names which avoid
2546         local PLTs.  Use __sincosl instead of separate sinl and cosl
2547         calls.
2548         * sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise.
2549
2550         * sysdeps/unix/sysv/linux/configure.in: Bump minimal kernel
2551         version for ppc64 to 2.4.21 since without it makecontext will fail.
2552
2553         * elf/tls-macros.h [__powerpc64__] (__TLS_GET_ADDR): Define according
2554         to the ABI in use.
2555         [__powerpc64__] (TLS_LD): Use __TLS_GET_ADDR instead of
2556         .__tls_get_addr.
2557         [__powerpc64__] (TLS_GD): Likewise.
2558
2559 2007-11-20  Ryan S. Arnold  <rsa@us.ibm.com>
2560
2561         [BZ #4997]
2562         * sysdeps/powerpc/powerpc32/fpu/s_lround.S (__lround): Fixed erroneous
2563         result when x is +/-nextafter(+/-0.5,-/+1) i.e. all 1's in the
2564         mantissa.
2565         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S (__llround):
2566         Likewise.  Also account for when x is an odd number between 2^52
2567         and 2^53-1.
2568         * sysdeps/powerpc/powerpc64/fpu/s_llround.S (__llround): Likewise.
2569         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S (__llroundf): Likewise.
2570         * math/libm-test.inc (lround_test, llround_test): Added test cases to
2571         detect aforementioned erroneous conditions.
2572
2573 2008-04-11  Jakub Jelinek  <jakub@redhat.com>
2574
2575         * configure.in: Check for -fno-section-anchors in addition to
2576         -fno-toplevel-reorder.
2577
2578 2008-04-11  Ulrich Drepper  <drepper@redhat.com>
2579
2580         * include/features.h (__GLIBC_MINOR__): Bump to 8.
2581
2582         * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: Remove duplicate comment.
2583         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: Likewise.
2584         * sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: Likewise.
2585         * sysdeps/powerpc/powerpc64/fpu/s_lrint.S: Likewise.
2586         * sysdeps/powerpc/powerpc64/fpu/s_lround.S: Likewise.
2587         * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: Likewise.
2588
2589 2008-04-11  Jakub Jelinek  <jakub@redhat.com>
2590
2591         [BZ #5443]
2592         * time/era.c: Transform __libc_setlocale_lock into rwlock.
2593         * time/alt_digit.c: Likewise.
2594         * wcsmbs/wcsmbsload.c: Likewise.
2595
2596 2008-04-10  Ulrich Drepper  <drepper@redhat.com>
2597
2598         * version.h (VERSION): Bump to 2.8.
2599
2600         * timzeone/asia: Update from tzdata2008b.
2601         * timezone/backward: Likewise.
2602         * timezone/europe: Likewise.
2603         * timezone/northamerica: Likewise.
2604         * timezone/southamerica: Likewise.
2605         * timezone/iso3166.tab: Likewise.
2606         * timezone/leapseconds: Likewise.
2607         * timezone/zone.tab: Likewise.
2608         * timezone/private.h: Update from tzcode2008a.
2609         * timezone/zdump.c: Likewise.
2610         * timezone/zic.c: Likewise.
2611
2612 2008-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
2613
2614         [BZ #5741]
2615         * sysdeps/powerpc/powerpc64/dl-machine.h (PPC_DCBT, PPC_DCBF):
2616         Define additonal Data Cache Block instruction macros.
2617         (elf_machine_fixup_plt): Add dcbt for opd and plt entries.
2618         Replace dcbst with dcbf and sync with sync/isync.
2619
2620 2008-02-21  Alan Modra  <amodra@bigpond.net.au>
2621
2622         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_type_class):
2623         Always set ELF_RTYPE_CLASS_PLT.
2624         (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p): Delete.
2625
2626 2008-04-03  Steven Munroe  <sjmunroe@us.ibm.com>
2627
2628         * sysdeps/powerpc/powerpc32/power4/hp-timing.c: New file.
2629         * sysdeps/powerpc/powerpc32/power4/hp-timing.h: New file.
2630         * sysdeps/powerpc/powerpc64/hp-timing.h [_ARCH_PWR4] (HP_TIMING_NOW):
2631         For ISA 2.01 and later replace mftb with mfspr 268.
2632
2633 2008-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
2634
2635         [BZ #5768]
2636         * sysdeps/powerpc/fpu/Makefile (libm-tests): Add test-powerpc-snan.
2637         * sysdeps/powerpc/fpu/test-powerpc-snan.c: New file.
2638
2639 2008-02-18  Steven Munroe  <sjmunroe@us.ibm.com>
2640
2641         [BZ #5768]
2642         * sysdeps/powerpc/powerpc32/fpu/s_isnan.S: New file.
2643         * sysdeps/powerpc/powerpc32/fpu/s_isnan.c: Removed.
2644         * sysdeps/powerpc/powerpc64/fpu/s_isnan.S: New file.
2645         * sysdeps/powerpc/powerpc64/fpu/s_isnan.c: Removed.
2646
2647 2008-04-10  Jakub Jelinek  <jakub@redhat.com>
2648
2649         * stdlib/tst-makecontext.c (othervar): New variable.
2650         (cf): Test sign extending the argument to long.
2651
2652 2008-03-03  Steven Munroe  <sjmunroe@us.ibm.com>
2653
2654         * sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S: New file.
2655         * sysdeps/powerpc/powerpc32/power5/fpu/s_isnanf.S: New file.
2656         * sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S: New file.
2657         * sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S: New file.
2658         * sysdeps/powerpc/powerpc64/power5/fpu/s_isnan.S: New file.
2659         * sysdeps/powerpc/powerpc64/power6/fpu/s_isnan.S: New file.
2660         * sysdeps/powerpc/powerpc64/power6x/fpu/s_isnan.S: New file.
2661
2662 2008-02-22  Alan Modra  <amodra@bigpond.net.au>
2663
2664         * elf/Makefile (tests): Substitute tests-vis-yes here.
2665         (tests-vis-yes): Delete.
2666         (modules-name, modules-vis-yes): Similarly.
2667
2668 2008-02-12  Pete Eberlein  <eberlein@us.ibm.com>
2669
2670         [BZ #4407]
2671         * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (__ieee754_lgammal_r):
2672         Preserve sign in signgamp when x is zero.
2673
2674 2007-10-26  Steven Munroe  <sjmunroe@us.ibm.com>
2675
2676         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S: New File.
2677         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: Removed.
2678         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S: New File.
2679         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.c: Removed.
2680         * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S: New File.
2681         * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S: New File.
2682
2683 2008-04-09  Ulrich Drepper  <drepper@redhat.com>
2684
2685         [BZ #4314]
2686         * sysdeps/i386/i686/memcpy.S: Optimize copying of equally aligned
2687         buffers.
2688
2689         [BZ #5209]
2690         * sysdeps/unix/sysv/syscalls.list: The times syscall doesn't have
2691         a reserved error value.
2692
2693         * stdlib/tst-makecontext.c: Change parameter to cf to negative
2694         value to check for correct sign extension.
2695
2696         [BZ #5436]
2697         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
2698         Copy 64-bit parameter values even though this is not required in
2699         the standard.
2700
2701         * sysdeps/unix/sysv/linux/x86_64/vfork.S (__vfork): Record return
2702         PC save.
2703
2704 2008-02-14  Daniel Jacobowitz  <dan@codesourcery.com>
2705
2706         * sysdeps/unix/sysv/linux/i386/vfork.S (__vfork): Record return
2707         PC save.
2708
2709 2008-04-09  Jakub Jelinek  <jakub@redhat.com>
2710
2711         * nss_files/files-XXX.c (_nss_files_getXXent_r): Restore saved errno.
2712
2713 2008-04-09  Ulrich Drepper  <drepper@redhat.com>
2714
2715         [BZ #5998]
2716         * libio/iofwrite.c (_IO_fwrite): Return correct count if flushing
2717         in line-buffered stream failed.
2718         * libio/iofwrite_u.c (fwrite_unlocked): Likewise.
2719
2720 2008-04-08  Ulrich Drepper  <drepper@redhat.com>
2721
2722         [BZ #6024]
2723         * scripts/abi-versions.awk: If the version specified by
2724         --enable-oldest-abi is older than the first version for this
2725         architecture, use the default version.
2726
2727         * locale/programs/ld-collate.c (collate_read): Ignore script lines
2728         as well when ignoring the whole category.
2729
2730 2008-04-07  Ulrich Drepper  <drepper@redhat.com>
2731
2732         [BZ #6042]
2733         * sysdeps/unix/sysv/linux/net/ethernet.h: Add a few more
2734         ETHERTYPE_* definitions.
2735         Patch partly by Aurelien Jarno <aurelien@aurel32.net>.
2736
2737 2008-04-07  Jakub Jelinek  <jakub@redhat.com>
2738
2739         * stdlib/mbtowc.c (__no_r_state): Remove.
2740         (mbtowc): New static state variable.  Use it instead of
2741         __no_r_state.
2742         * stdlib/wctomb.c (__no_r_state): Remove extern decl.
2743         (__wctomb_state): New hidden variable.
2744         (wctomb): Use __wctomb_state instead of __no_r_state.
2745         * debug/wctomb_chk.c (__no_r_state): Remove extern decl.
2746         (__wctomb_state): New extern decl.
2747         (__wctomb_chk): Use __wctomb_state instead of __no_r_state.
2748
2749 2008-04-07  Ulrich Drepper  <drepper@redhat.com>
2750
2751         [BZ #5475]
2752         * resolv/res_init.c: Handle scope IDs in resolv.conf.
2753
2754 2008-04-07  Jakub Jelinek  <jakub@redhat.com>
2755
2756         * malloc/mtrace.pl: Use $@ instead of $* to keep perl 5.10 quiet.
2757
2758 2008-04-06  Ulrich Drepper  <drepper@redhat.com>
2759
2760         * po/nl.po: Update from translation team.
2761
2762 2008-03-31  Ulrich Drepper  <drepper@redhat.com>
2763
2764         [BZ #6007]
2765         * string/strfry.c: Handle empty strings again.
2766
2767 2008-03-30  Ulrich Drepper  <drepper@redhat.com>
2768
2769         [BZ #5443]
2770         * intl/dcigettext.c (__dcigettext): Get reader lock for locale data
2771         before looking for translation.
2772         * locale/duplocale.c: Transform __libc_setlocale_lock into rwlock.
2773         * locale/freelocale.c: Likewise.
2774         * locale/newlocale.c: Likewise.
2775         * locale/setlocale.c: Likewise.
2776         Based partially on a patch by ryo@np.css.fujitsu.com.
2777
2778 2008-03-30  Jakub Jelinek  <jakub@redhat.com>
2779
2780         * intl/dcigettext.c (_nl_find_msg): Reread nconversions after
2781         acquiring wrlock.  Do conv_tab allocation while holding lock.
2782         * intl/Makefile: Add rules to build and run tst-gettext6.
2783         * intl/tst-gettext6.c: New test.
2784         * intl/tst-gettext6.sh: New file.
2785
2786 2008-03-30  Ulrich Drepper  <drepper@redhat.com>
2787
2788         * po/nl.po: Update from translation team.
2789
2790         * sysdeps/unix/opendir.c (__alloc_dir): If allocation fails for size
2791         provided through st_blksize, try the default size before giving up.
2792
2793 2008-03-29  Ulrich Drepper  <drepper@redhat.com>
2794
2795         * stdio-common/vfprintf.c (vfprintf): Correct overflow test.
2796
2797         [BZ #5939]
2798         * sysdeps/posix/tempname.c (__gen_tempname): Correct flag selection.
2799
2800         * posix/getopt.c (_getopt_internal_r): Remove old POSIX-demanded
2801         error message.  POSIX today does not require the messages to be in
2802         a specific form.  Suggested by Jim Meyering <jim@meyering.net>.
2803
2804         [BZ #5979]
2805         * sunrpc/auth_unix.c: Unify printed strings.
2806         * sunrpc/clnt_tcp.c: Likewise.
2807         * sunrpc/clnt_udp.c: Likewise.
2808         * sunrpc/clnt_unix.c: Likewise.
2809         * sunrpc/svc_tcp.c: Likewise.
2810         * sunrpc/svc_udp.c: Likewise.
2811         * sunrpc/svc_unix.c: Likewise.
2812         * sunrpc/xdr.c: Likewise.
2813         * sunrpc/xdr_array.c: Likewise.
2814         * sunrpc/xdr_rec.c: Likewise.
2815         * sunrpc/xdr_ref.c: Likewise.
2816         * locale/programs/ld-time.c (time_finish): Unify messages.
2817         * locale/programs/locfile.c (handle_copy): Fix typo.
2818         * nscd/nscd.c (options): Fix typo.
2819
2820         [BZ #5995]
2821         * stdlib/strtod_l.c: Use correct sign for result in one more
2822         underflow case.
2823         Patch by Eric Blake <ebb9@byu.net>.
2824
2825 2008-03-27  Jakub Jelinek  <jakub@redhat.com>
2826
2827         * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Add open
2828         and creat system calls.
2829         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove open system
2830         call.
2831         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove open and creat
2832         system calls.
2833         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
2834         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
2835         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
2836
2837 2008-03-27  Ulrich Drepper  <drepper@redhat.com>
2838
2839         * sysdeps/unix/sysv/linux/bits/local_lim.h: Undefined ARG_MAX if
2840         <linux/limits.h> has defined it.
2841         * sysdeps/unix/sysv/linux/sys/param.h: Define NCARGS to the legacy
2842         ARG_MAX value and prevent ARG_MAX from being defined by the kernel
2843         headers.
2844         * sysdeps/unix/sysv/linux/sysconf.c: Define legacy_ARG_MAX and use
2845         it instead of ARG_MAX.
2846
2847 2008-03-25  Jakub Jelinek  <jakub@redhat.com>
2848
2849         * posix/gai.conf: Fix comment for scope nullbits.
2850         * sysdeps/posix/getaddrinfo.c (gaiconf_init): If /bits is not present,
2851         default to 128 bits for v4 mapped addresses.
2852
2853 2008-03-07  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2854
2855         * sysdeps/s390/fpu/fegetenv.c (fegetenv): Remove PTRACE_PEEKUSER
2856         ptrace call to get the ieee_instruction_pointer from the kernel.
2857         * sysdeps/s390/fpu/fesetenv.c (fesetenv): Remove PTRACE_POKEUSER
2858         ptrace call to set the ieee_instructtion_pointer.
2859         * sysdeps/unix/sysv/linux/s390/sys/user.h (struct _user_regs_struct):
2860         Add comment that ieee_instruction_pointer is always 0.
2861
2862 2008-03-09  Andreas Jaeger  <aj@suse.de>
2863
2864         [BZ #5857]
2865         * sysdeps/ieee754/dbl-64/s_rint.c (__rint): Handle j0==18.
2866         * sysdeps/ieee754/dbl-64/s_nearbyint.c (__nearbyint): Likewise.
2867         Patch by Mark Elliott <mark.h.elliott@lmco.com>.
2868
2869         * math/libm-test.inc (nearbyint_test): Add new test cases from #5857.
2870         (rint_test): Likewise.
2871
2872 2008-03-24  Ulrich Drepper  <drepper@redhat.com>
2873
2874         * nis/nis_call.c (nis_server_cache_search): Save errno around stat
2875         call.
2876         (__nisfind_server): Similar for open readColdStartFile call.
2877         Patch partially by Jim Meyering.
2878         * nss/nss_files/files-XXX.c (_nss_files_getXXent_r): Save errno
2879         around internal_setent call.
2880
2881         * po/vi.po: New Vietnamese translation.
2882
2883         * sysdeps/unix/sysv/linux/adjtime.c: Correctly use
2884         ADJ_OFFSET_SS_READ.
2885
2886         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags,
2887         remove CLONE_STOPPED.
2888
2889 2008-02-10  Jim Meyering  <meyering@redhat.com>
2890
2891         Remove useless "if" before "free":
2892         * elf/ldconfig.c (parse_conf_include): Likewise.
2893         * gmon/gmon.c (weak_alias): Likewise.
2894         * iconv/gconv_conf.c (__gconv_get_path): Likewise.
2895         * inet/rcmd.c (__validuser2_sa): Likewise.
2896         * intl/bindtextdom.c (set_binding_values): Likewise.
2897         * intl/loadmsgcat.c (_nl_load_domain, _nl_unload_domain): Likewise.
2898         * libio/genops.c (save_for_backup): Likewise.
2899         * libio/wgenops.c (save_for_wbackup): Likewise.
2900         * locale/programs/ld-collate.c (collate_read): Likewise.
2901         * locale/programs/linereader.c (get_string): Likewise.
2902         * nis/nss_compat/compat-pwd.c (give_pwd_free): Likewise.
2903         * nis/nss_compat/compat-spwd.c (give_spwd_free): Likewise.
2904         * resolv/res_debug.c (do_section): Likewise.
2905         * sunrpc/xdr_sizeof.c (x_inline, xdr_sizeof): Likewise.
2906         * sysdeps/mach/hurd/if_index.c (libc_hidden_def): Likewise.
2907         * sysdeps/posix/sprofil.c (__sprofil): Likewise.
2908         * time/lc-time-cleanup.c (_nl_cleanup_time): Likewise.
2909         * time/tzset.c (tzset_internal): Likewise.
2910
2911 2008-03-18  Jakub Jelinek  <jakub@redhat.com>
2912
2913         * sysdeps/unix/sysv/linux/dl-sysdep.h: Use __ASSEMBLER__ instead
2914         of ASSEMBLER.
2915
2916 2008-03-11  Ulrich Drepper  <drepper@redhat.com>
2917
2918         [BZ #5903]
2919         * iconv/iconv_charmap.c (charmap_conversion): Pass name of output file
2920         not stream for output file.  Open output file here.
2921         * iconv/iconv_prog.c (process_lock): Take pointer to output stream
2922         and output file name.
2923         (process_fd): Likewise.
2924         (process_file): Likewise.
2925         (main): Adjust callers of changed functions.
2926         * iconv/iconv_prog.h: Adjust prototype.
2927
2928 2008-03-09  Andreas Jaeger  <aj@suse.de>
2929
2930         [BZ #5753]
2931         * sysdeps/ia64/ieee754.h: Use protected namespace
2932         __BIG_ENDIAN/__LITTLE_ENDIAN.
2933         * sysdeps/ieee754/ieee754.h: Likewise.
2934         Patch by Aurelien Jarno <aurelien@aurel32.net>.
2935
2936 2008-03-08  Roland McGrath  <roland@frob.com>
2937
2938         * hurd/hurdsig.c (_hurd_internal_post_signal): When normal rules would
2939         ignore a signal that came from a machine exception, treat it as a
2940         fatal core-dump signal instead.
2941         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
2942
2943         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
2944         Clear DF bit in thread state's eflags.
2945         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
2946
2947 2008-03-08  Ulrich Drepper  <drepper@redhat.com>
2948
2949         [BZ #5774]
2950         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Consume closing brace
2951         of NAN(...) sequence.
2952         * stdlib/Makefile (tests): Add tst-strtod6.
2953         * stdlib/tst-strtod6.c: New file.
2954
2955         * inet/inet6_opt.c (inet6_opt_init): Check extlen for overflow.
2956
2957         [BZ #5762]
2958         * posix/getopt.c (_getopt_internal_r): Clarify error message by
2959         putting offending option character in quotes.  Clean up error
2960         messages.
2961         * po/be.po: Adjust msgstr in translation file.
2962         * po/bg.po: Likewise.
2963         * po/ca.po: Likewise.
2964         * po/cs.po: Likewise.
2965         * po/da.po: Likewise.
2966         * po/de.po: Likewise.
2967         * po/es.po: Likewise.
2968         * po/fr.po: Likewise.
2969         * po/hr.po: Likewise.
2970         * po/ko.po: Likewise.
2971         * po/nl.po: Likewise.
2972         * po/rw.po: Likewise.
2973         * po/sk.po: Likewise.
2974         * po/sv.po: Likewise.
2975         * po/tr.po: Likewise.
2976         * po/zh_CN.po: Likewise.
2977         * po/zh_TW.po: Likewise.
2978
2979         [BZ #5760]
2980         * inet/inet6_opt.c (inet6_opt_init): Fix ip6h_len computation.
2981         Patch by Roland Bless <roland@bless.de>.
2982
2983         * sysdeps/unix/sysv/linux/dl-sysdep.c: Avoid unnecessary code for
2984         .o file.
2985         * elf/Makefile (routines): Add dl-sysdep.
2986         (elide-routines.os): Likewise.
2987
2988 2008-03-07  Ulrich Drepper  <drepper@redhat.com>
2989
2990         [BZ #5786]
2991         * elf/dl-sysdep.c: Undefine ROUND after use.
2992         * sysdeps/generic/ldsodefs.h [HAVE_DL_DISCOVER_OSVERSION]
2993         (struct rtld_global_ro): Add _dl_tls_get_addr_soft element.
2994         * elf/rtld.c (rtld_global_ro): Initialize _dl_discover_osversion.
2995         * sysdeps/unix/sysv/linux/dl-osinfo.h: Move _dl_discover_osversion
2996         to ...
2997         * sysdeps/unix/sysv/linux/dl-sysdep.c: ...here.
2998         * sysdeps/unix/sysv/linux/dl-sysdep.h: Declare _dl_discover_osversion
2999         if necessary.
3000         * sysdeps/unix/sysv/linux/sysconf.c: Handle _SC_ARG_MAX here.
3001
3002         * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Add
3003         _dl_tls_get_addr_soft element.
3004         * elf/rtld.c (rtld_global_ro): Initialize _dl_tls_get_addr_soft.
3005         * elf/Versions (ld): Don't export _dl_tls_get_addr_soft.
3006         * dlfcn/dlinfo.c (dlinfo_doit): Access dl_tls_get_addr_soft through
3007         GLRO.
3008         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise.
3009         * elf/dl-tls.c (_dl_tls_get_addr_soft): Use attribute_hidden instead
3010         of internal_function.
3011
3012         * stdlib/Makefile (aux): Add tens_in_limb.
3013         * stdlib/strtod_l.c: Move _tens_in_limb definition to...
3014         * stdlib/tens_in_limb.c: ...here.  New file.
3015
3016         [BZ #5778]
3017         * sysdeps/unix/sysv/linux/pathconf.h: Declare
3018         __statfs_chown_restricted.
3019         * sysdeps/unix/sysv/linux/fpathconf.c: Call __statfs_chown_restricted
3020         for _PC_CHOWN_RESTRICTED.
3021         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
3022         Implement __statfs_chown_restricted.
3023         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Change
3024         _POSIX_CHOWN_RESTRICTED value to zero.
3025         * io/tst-fchownat.c: Correctly handle _POSIX_CHOWN_RESTRICTED
3026         defined to zero.
3027
3028         * sysdeps/x86_64/rtld-memset.c: New file.
3029
3030 2008-02-26  Harsha Jagasia  <harsha.jagasia@amd.com>
3031
3032         * sysdeps/x86_64/cacheinfo.c (NOT_USED_RIGHT_NOW): Remove ifdef guards.
3033
3034         * sysdeps/x86_64/memset.S: Rewrite non-SSE code path as tuned for AMD
3035         Barcelona machine.  Make default fall through branch of
3036         __x86_64_preferred_memory_instruction check as the integer code path.
3037
3038 2007-10-15  H.J. Lu  <hongjiu.lu@intel.com>
3039
3040         * sysdeps/x86_64/cacheinfo.c
3041         (__x86_64_preferred_memory_instruction): New variable.
3042         (init_cacheinfo): Initialize __x86_64_preferred_memory_instruction.
3043
3044         * sysdeps/x86_64/memset.S: Rewrite.
3045
3046 2008-03-04  Jakub Jelinek  <jakub@redhat.com>
3047
3048         * include/stdio.h (__asprintf_chk, __dprintf_chk,
3049         __obstack_printf_chk): New prototypes.
3050         (__vasprintf_chk, __vdprintf_chk,
3051         __obstack_vprintf_chk): Likewise.
3052         Add libc_hidden_proto.
3053         * libio/obprintf.c
3054         (_IO_obstack_jumps): No longer static, add attribute_hidden.
3055         * libio/bits/stdio-ldbl.h (__asprintf_chk, __dprintf_chk,
3056         __obstack_printf_chk, __vasprintf_chk, __vdprintf_chk,
3057         __obstack_vprintf_chk): Add __LDBL_REDIR_DECL.
3058         * libio/bits/stdio2.h (__asprintf_chk, __dprintf_chk,
3059         __obstack_printf_chk, __vasprintf_chk, __vdprintf_chk,
3060         __obstack_vprintf_chk): New prototypes.
3061         (asprintf, __asprintf, dprintf, obstack_printf, vasprintf, vdprintf,
3062         obstack_vprintf): New inlines.
3063         * debug/dprintf_chk.c: New file.
3064         * debug/vdprintf_chk.c: New file.
3065         * debug/asprintf_chk.c: New file.
3066         * debug/vasprintf_chk.c: New file.
3067         * debug/obprintf_chk.c: New file.
3068         * debug/tst-chk1.c (do_test): Add asprintf and obstack_printf tests.
3069         * debug/Versions (__asprintf_chk, __dprintf_chk, __obstack_printf_chk,
3070         __vasprintf_chk, __vdprintf_chk, __obstack_vprintf_chk): Export
3071         @@GLIBC_2.8.
3072         * debug/Makefile: Build asprintf_chk, vasprintf_chk, dprintf_chk,
3073         vdprintf_chk and obprintf_chk, set CFLAGS for them.
3074         * sysdeps/ieee754/ldbl-opt/nldbl-compat.c (__nldbl___vasprintf_chk,
3075         __nldbl___vdprintf_chk, __nldbl___obstack_vprintf_chk): Add
3076         libc_hidden_proto.
3077         * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__nldbl___vasprintf_chk,
3078         __nldbl___vdprintf_chk, __nldbl___obstack_vprintf_chk): New prototypes.
3079         * sysdeps/ieee754/ldbl-opt/Versions (__nldbl___asprintf_chk,
3080         __nldbl___vasprintf_chk, __nldbl___dprintf_chk, __nldbl___vdprintf_chk,
3081         __nldbl___obstack_printf_chk, __nldbl___obstack_vprintf_chk): Export
3082         @@GLIBC_2.8.
3083         * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add asprintf_chk,
3084         vasprintf_chk, dprintf_chk, vdprintf_chk, obstack_printf_chk and
3085         obstack_vprintf_chk.
3086         * sysdeps/ieee754/ldbl-opt/nldbl-obstack_vprintf_chk.c: New file.
3087         * sysdeps/ieee754/ldbl-opt/nldbl-dprintf_chk.c: New file.
3088         * sysdeps/ieee754/ldbl-opt/nldbl-obstack_printf_chk.c: New file.
3089         * sysdeps/ieee754/ldbl-opt/nldbl-asprintf_chk.c: New file.
3090         * sysdeps/ieee754/ldbl-opt/nldbl-vdprintf_chk.c: New file.
3091         * sysdeps/ieee754/ldbl-opt/nldbl-vasprintf_chk.c: New file.
3092
3093 2008-03-04  Ulrich Drepper  <drepper@redhat.com>
3094
3095         [BZ #5779]
3096         * misc/sys/queue.h: Add STAILQ_CONCAT and TAILQ_CONCAT definitions.
3097         Patch by Roy Marples <roy@marples.name>.
3098
3099         [BZ #5736]
3100         * malloc/malloc.c: Fix typo in comment.
3101
3102         [BZ #5627]
3103         * locale/iso-639.def: Add Shuswap.
3104
3105 2008-02-25  Jakub Jelinek  <jakub@redhat.com>
3106
3107         [BZ #5790]
3108         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr2_r): Don't
3109         overwrite *h_errnop/*errnop values from getanswer_r in case of
3110         failure.
3111
3112 2008-03-03  Ulrich Drepper  <drepper@redhat.com>
3113
3114         [BZ #5818]
3115         * nscd/connections.c (dbs): Add initializers for .suggested_module.
3116         (verify_persistent_db): Remove one unnecessary test and add a new one
3117         for bad configuration.
3118         (nscd_init): Improve error reported when persistent database cannot
3119         be reused.
3120         * nscd/nscd.h (DEFAULT_SUGGESTED_MODULE): Define.
3121         * nscd/nscd_conf.c (nscd_parse_file): Provide default values for
3122         .suggested_module and .max_db_size and case config file says the
3123         values are zero.
3124         * nscd/nscd_helper.c (get_mapping): Fail if hash table module is zero.
3125
3126         [BZ #5854]
3127         * nis/ypclnt.c (yp_order): Fix handling of return value of
3128         do_ypcall_tr call.
3129         Patch by Jeff Moyer <jmoyer@redhat.com>.
3130
3131         * po/fr.po: Update from translation team.
3132
3133 2008-02-22  Andreas Jaeger  <aj@suse.de>,
3134             Carlos O'Donell <carlos@systemhalted.org>
3135
3136         [BZ #5012]
3137         * FAQ.in: Describe why glibc needs to be compiled with
3138         optimization.
3139
3140 2008-02-19  Roland McGrath  <roland@redhat.com>
3141
3142         * elf/elf.h (SHT_GNU_ATTRIBUTES): New macro.
3143
3144 2008-02-15  Ulrich Drepper  <drepper@redhat.com>
3145
3146         [BZ #5737]
3147         * resolv/netdb.h: Make NI_MAXHOST and NI_MAXSERV available when
3148         __USE_MISC is defined.
3149
3150 2008-02-10  Ulrich Drepper  <drepper@redhat.com>
3151
3152         * sysdeps/unix/sysv/linux/sys/timerfd.h: New file.
3153         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers): Add
3154         sys/timerfd.h.
3155         * sysdeps/unix/sysv/linux/syscalls.list: Add timerfd_create,
3156         timerfd_gettime, timerfd_settime.
3157         * sysdeps/unix/sysv/linux/Versions: Add timerfd_create,
3158         timerfd_gettime, timerfd_settime for GLIBC_2.8.
3159
3160 2008-02-08  Roland McGrath  <roland@redhat.com>
3161
3162         * elf/elf.h (NT_PPC_SPE): New macro.
3163
3164 2008-02-06  Roland McGrath  <roland@redhat.com>
3165
3166         * Makerules ($(common-objpfx)sysd-rules):
3167         Depend on $(sysdep-makeconfigs).
3168
3169 2008-01-31  Roland McGrath  <roland@redhat.com>
3170
3171         [BZ #5442]
3172         * configure.in: Use -print-file-name if it yields a directory,
3173         for each of include and include-fixed.
3174         * configure: Regenerated.
3175
3176         * Makeconfig (sysd-rules-targets): New variable.
3177         * sysdeps/unix/make-syscalls.sh: Use it in the rules emitted.
3178         * sysdeps/unix/Makefile (omit-deps): Append variants for each target.
3179
3180 2008-01-30  Roland McGrath  <roland@redhat.com>
3181
3182         * manual/libc.texinfo: Update back-cover text.
3183
3184         * elf/elf.h (NT_386_TLS): New macro.
3185
3186 2008-01-29  Roland McGrath  <roland@redhat.com>
3187
3188         * Makeconfig (sysd-rules-patterns): New variable.
3189         * Makerules ($(common-objpfx)sysd-rules): Drive the loop from that.
3190         (check-inhibit-asm): New canned sequence, replaces ...
3191         (open-check-inhibit-asm, close-check-inhibit-asm): ... these, removed.
3192         * elf/rtld-Rules ($(objpfx)rtld-%.os): Use $(rtld-CPPFLAGS) in commands.
3193         (rtld-CPPFLAGS): Renamed from CPPFLAGS-rtld.
3194         (CFLAGS-rtld): Variable removed.
3195
3196 2008-01-24  Roland McGrath  <roland@redhat.com>
3197
3198         * configure.in: Let configure fragments set base_os.
3199         * configure: Regenerated.
3200
3201 2008-01-22  Ulrich Drepper  <drepper@redhat.com>
3202
3203         * po/ko.po: Update from translation team.
3204
3205 2008-01-12  H.J. Lu  <hongjiu.lu@intel.com>
3206
3207         * sysdeps/i386/fpu/ftestexcept.c (fetestexcept): Use short for fnstsw.
3208
3209 2008-01-12  Andreas Jaeger  <aj@suse.de>
3210
3211         [BZ #5040]
3212         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (enum EPOLL_EVENTS):
3213         Add EPOLLRDHUP.
3214
3215 2008-01-20  Samuel Thibault  <samuel.thibault@ens-lyon.org>
3216
3217         * hurd/hurdsock.c (_hurd_socket_server): Return the standard
3218         error EAFNOSUPPORT rather than non-standard EPFNOSUPPORT.
3219         * sunrpc/bindrsvprt.c (bindresvport): Likewise.
3220
3221 2007-10-23  Alexandre Oliva  <aoliva@redhat.com>
3222
3223         * include/link.h (FORCED_DYNAMIC_TLS_OFFSET): Define.
3224         * elf/dl-close.c (_dl_close): Check for it.
3225         * elf/dl-reloc.c (CHECK_STATIC_TLS): Likewise.
3226         (_dl_allocate_static_tls): Likewise.
3227         * elf/dl-tls.c (_dl_allocate_tls_init): Likewise.
3228         (__tls_get_addr): Protect from race conditions in setting l_tls_offset
3229         to it.
3230         * elf/tst-tls16.c: New file.
3231         * elf/tst-tlsmod16a.c: New file.
3232         * elf/tst-tlsmod16b.c: New file.
3233         * elf/Makefile: Add rules to build and run tst-tls16.
3234
3235 2008-01-16  Ulrich Drepper  <drepper@redhat.com>
3236
3237         [BZ #5628]
3238         * bits/shm.h: Fix comment describing shmid_ds.
3239         * sysdeps/gnu/bits/shm.h: Likewise.
3240         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
3241         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
3242         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
3243         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
3244         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
3245         * sysdeps/unix/sysv/linux/sh/bits/shm.h: Likewise.
3246         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
3247         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
3248         Patch by Hareesh Nagarajan <hareesh.nagarajan@gmail.com>.
3249
3250         [BZ #5607]
3251         * conform/data/fcntl.h-data: Fix posix_fadvise and posix_fallocate
3252         prototypes.
3253         * conform/data/limits.h-data: Adjust limits changed in v6 and add
3254         additional suffixes.
3255         * conform/data/mqueue.h-data: Fix typo in mq_curmsgs entry.
3256         Add optional functions mq_timedreceive and mq_timedsend.
3257         * conform/data/netdb.h-data: Add more AI_* and EAI_* constants.
3258         * conform/data/pthread.h-data: Fix prototype of
3259         pthread_condattr_setclock.  pthread_sigmask is not required in v6.
3260         * conform/data/semaphore.h-data: Allow time.h definitions.
3261         * conform/data/signal.h-data: Likewise.
3262         * conform/data/stdio.h-data: getw and putw are not required in v6.
3263         * conform/data/stdlib.h-data: Change setstate prototype.
3264         * conform/data/string.h-data: Fix strerror_r prototype.
3265         * conform/data/time.h-data: Fix typo in TIMER_ABSTIME definition.
3266         * conform/data/unistd.h-data: pthread_atfork not required in v6.
3267         Fix readlink prototype.
3268         * conform/data/netinet/in.h-data: Add const to in6addr_any and
3269         in6addr_loopback.
3270         * inet/netinet/in.h: Cleanup namespace.
3271         * posix/regex.h: Likewise.
3272         * resolv/netdb.h: Likewise.
3273         * sysdeps/unix/sysv/linux/bits/in.h: Likewise.
3274         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
3275         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
3276         * sysdeps/posix/getaddrinfo.c (default_labels): Adjust for change
3277         of names of in in6_addr.
3278         (default_precedence): Likewise.
3279         * sysdeps/unix/sysv/linux/cmsg_nxthdr.c: Include <stddef.h> for
3280         NULL definition.
3281
3282 2008-01-15  Ulrich Drepper  <drepper@redhat.com>
3283
3284         * conform/data/fmtmsg.h-data: Add missing allows.
3285         * conform/data/ftw.h-data: Likewise.
3286         * conform/data/inttypes.h-data: Likewise.
3287         * conform/data/math.h-data: Likewise.
3288         * conform/data/signal.h-data: Likewise.
3289         * conform/data/net/if.h-data: Likewise.
3290         * conform/data/netinet/in.h-data: Likewise.
3291         * conform/data/sys/socket.h-data: Likewise.
3292
3293         [BZ #5614]
3294         * string/bits/string2.h (__strtok_r_1c): Always update *__NEXTP.
3295         (__strtok_r): Simplify.
3296         * string/tester.c (test_strtok_r): Add test case for futile search
3297         with single-character seach string.
3298
3299 2008-01-12  Ulrich Drepper  <drepper@redhat.com>
3300
3301         * po/ko.po: Update from translation team.
3302
3303 2008-01-11  Andreas Jaeger  <aj@suse.de>
3304
3305         [BZ #5600]
3306         * sysdeps/unix/sysv/linux/sys/signalfd.h (struct
3307         signalfd_siginfo): Use 64-bit type for ssi_ptr to sync with Linux
3308         kernel header.
3309
3310 2008-01-10  Ulrich Drepper  <drepper@redhat.com>
3311
3312         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Store result of
3313         native interface lookup in all the relevant places.
3314
3315 2008-01-10  Jakub Jelinek  <jakub@redhat.com>
3316             Ulrich Drepper  <drepper@redhat.com>
3317
3318         * sysdeps/posix/getaddrinfo.c (sort_results): Remove service_order
3319         field.  Use sockaddr_in6 for source_addr.
3320         (get_scope): Change type of parameter to sockaddr_in6.  Adjust.
3321         (match_prefix): Likewise.
3322         (get_label): Likewise.
3323         (get_precedence): Likewise.
3324         (rfc3484_sort): Change to use indirect access to results array.
3325         Adjust to use of sockaddr_in6.  Replace service_order test with
3326         simple index comparison.
3327         (getaddrinfo): Define order array.  Initialize it.  Don't initialize
3328         service_order field.  Adjust qsort_t calls.  Access sorted result
3329         array indirectly through order array.
3330         * posix/tst-rfc3484.c: Adjust for change of rfc3484_sort.
3331         * posix/tst-rfc3484-2.c: Likewise.
3332         * posix/tst-rfc3484-3.c: Likewise.
3333
3334 2008-01-09  Ulrich Drepper  <drepper@redhat.com>
3335
3336         [BZ #5541]
3337         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Also free xports and
3338         pollfd structures.
3339         Patch by André Cruz.
3340
3341         [BZ #5545]
3342         * sunrpc/clnt_perr.c (clnt_sperror): Don't use fixed size buffer.
3343         (clnt_spcreateerror): Likewise.
3344
3345         [BZ #5553]
3346         * malloc/malloc.c (public_mALLOc): Set ar_ptr when trying main_arena.
3347         (public_mEMALIGn): Likewise.
3348         Patch mostly by Daniel Jacobowitz.
3349
3350 2008-01-09  Jakub Jelinek  <jakub@redhat.com>
3351
3352         * sysdeps/unix/sysv/linux/i386/makecontext.S (__makecontext): Avoid
3353         clobbering memory at or above uc_stack.ss_sp + uc_stack.ss_size.
3354         * stdlib/Makefile: Add rules to build and run tst-makecontext2.
3355         * stdlib/tst-makecontext2.c: New test.
3356
3357 2008-01-08  Jakub Jelinek  <jakub@redhat.com>
3358
3359         * iconv/loop.c (UPDATE_PARAMS): Define to empty statement if not
3360         defined.
3361         (REINIT_PARAMS): Likewise.  Undefine before end of file.
3362         (STANDARD_TO_LOOP_ERR_HANDLER): Use UPDATE_PARAMS before calling
3363         transliteration hooks and REINIT_PARAMS afterwards.
3364         * iconvdata/iso-2022-jp.c (BODY): Use a separate variable for
3365         status.
3366         (REINIT_PARAMS): Define.
3367         * iconvdata/ibm1364.c (REINIT_PARAMS): Likewise.
3368         * iconvdata/ibm930.c (REINIT_PARAMS): Likewise.
3369         * iconvdata/ibm933.c (REINIT_PARAMS): Likewise.
3370         * iconvdata/ibm935.c (REINIT_PARAMS): Likewise.
3371         * iconvdata/ibm937.c (REINIT_PARAMS): Likewise.
3372         * iconvdata/ibm939.c (REINIT_PARAMS): Likewise.
3373         * iconvdata/iso-2022-cn.c (REINIT_PARAMS): Likewise.
3374         * iconvdata/iso-2022-cn-ext.c (REINIT_PARAMS): Likewise.
3375         * iconvdata/iso-2022-jp-3.c (REINIT_PARAMS): Likewise.
3376         * iconvdata/iso-2022-kr.c (REINIT_PARAMS): Likewise.
3377         * iconvdata/Makefile: Add rules to build and run tst-iconv7.c.
3378         * iconvdata/tst-iconv7.c: New test.
3379
3380 2008-01-07  Ulrich Drepper  <drepper@redhat.com>
3381
3382         * libio/stdio.h (vscanf): Fix definition for loser compilers.
3383
3384 2008-01-05  Jakub Jelinek  <jakub@redhat.com>
3385
3386         [BZ #5112]
3387         * nscd/connections.c (restart): Fix condition.
3388
3389 2008-01-03  Jakub Jelinek  <jakub@redhat.com>
3390
3391         * ctype/ctype.h (__ctype_b_loc, __ctype_tolower_loc,
3392         __ctype_toupper_loc): Add __THROW.
3393
3394 2008-01-02  Ulrich Drepper  <drepper@redhat.com>
3395
3396         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Fix
3397         recognition of interface family.
3398
3399         * posix/getconf.c: Update copyright year.
3400         * nss/getent.c: Likewise.
3401         * iconv/iconvconfig.c: Likewise.
3402         * iconv/iconv_prog.c: Likewise.
3403         * elf/ldconfig.c: Likewise.
3404         * catgets/gencat.c: Likewise.
3405         * csu/version.c: Likewise.
3406         * elf/ldd.bash.in: Likewise.
3407         * elf/sprof.c (print_version): Likewise.
3408         * locale/programs/locale.c: Likewise.
3409         * locale/programs/localedef.c: Likewise.
3410         * nscd/nscd.c (print_version): Likewise.
3411         * debug/xtrace.sh: Likewise.
3412         * malloc/memusage.sh: Likewise.
3413         * malloc/mtrace.pl: Likewise.
3414         * debug/catchsegv.sh: Likewise.
3415
3416 2007-12-26  Ulrich Drepper  <drepper@redhat.com>
3417
3418         * nss/nsswitch.c (__nss_lookup): Actually use alternative name in
3419         second lookup.
3420
3421 2007-12-23  Ulrich Drepper  <drepper@redhat.com>
3422
3423         * sysdeps/x86_64/cacheinfo.c (intel_02_known): New entry 0x3f.
3424         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
3425
3426 2007-12-17  Roland McGrath  <roland@redhat.com>
3427
3428         * inet/ether_line.c (ether_line): Remove unused variable.
3429
3430 2007-12-17  Samuel Thibault  <samuel.thibault@ens-lyon.org>
3431
3432         * login/forkpty.c (forkpty): Add const qualifier to parameters termp
3433         and winp.
3434         * login/openpty.c (openpty): Likewise.
3435         * login/pty.h (openpty, forkpty): Likewise.
3436         * manual/terminal.texi (openpty, forkpty): Likewise.
3437
3438 2007-12-17  Ulrich Drepper  <drepper@redhat.com>
3439
3440         * malloc/malloc.c (public_cALLOc): For arenas other than
3441         main_arena, count all bytes inside the mprotect_size range of the
3442         heap as uninitialized.
3443
3444 2007-12-16  Ulrich Drepper  <drepper@redhat.com>
3445
3446         * elf/tst-execstack.c (do_test): Don't fail if SELinux forbids
3447         executable stacks.
3448
3449         * malloc/malloc.c (public_mTRIm): Iterate over all arenas and call
3450         mTRIm for all of them.
3451         (mTRIm): Additionally iterate over all free blocks and use madvise
3452         to free memory for all those blocks which contain at least one
3453         memory page.
3454         * malloc/tst-trim1.c: New file.
3455         * malloc/Makefile (tests): Add tst-trim1.
3456
3457         * malloc/malloc.c (do_check_malloc_state): Minimal cleanups.
3458
3459 2007-12-14  Ulrich Drepper  <drepper@redhat.com>
3460
3461         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL_ERROR_P):
3462         First cast argument to long
3463         * sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_gettimeofday):
3464         Return long.
3465         (__vdso_clock_gettime): Likewise.
3466         * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: Functions
3467         return long.
3468
3469 2007-12-13  Ulrich Drepper  <drepper@redhat.com>
3470
3471         * locale/nl_langinfo.c (nl_langinfo): Just call __nl_langinfo_l.
3472         * locale/nl_langinfo_l.c: Real implementation, copied from
3473         nl_langinfo.c.
3474         * include/langinfo.h: Add libc_hidden_proto for __nl_langinfo_l.
3475
3476 2007-12-01  Jim Meyering  <meyering@redhat.com>
3477
3478         * posix/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
3479         that would inhibit utf8-optimization of a regexp containing line-
3480         or buffer-anchors, e.g., `^', `$'.
3481
3482 2007-12-12  Ulrich Drepper  <drepper@redhat.com>
3483
3484         * time/bug-getdate1.c (do_test): Don't use century values which
3485         aren't valid on 32-bit systems.
3486
3487 2007-12-12  Jakub Jelinek  <jakub@redhat.com>
3488
3489         * sysdeps/i386/i486/bits/string.h (memmove): Define as macro.
3490         (memmove): Rename to __memmove_g, with __asm__ ("memmove").
3491         * sysdeps/s390/bits/string.h (__strlen_g, __strcpy_g, __strncpy_g,
3492         __strcat_g, __strncat_g): Add __asm__.
3493
3494 2007-12-12  Ulrich Drepper  <drepper@redhat.com>
3495
3496         [BZ #5477]
3497         * io/fchmodat.c: Fix typo in stub_warning use.
3498         Patch by Petr Salinger.
3499
3500 2007-12-11  Ulrich Drepper  <drepper@redhat.com>
3501
3502         * iconvdata/hp-thai8.c: New file.
3503         * iconvdata/Makefile: Add rules for hp-thai8.c.
3504         * iconvdata/tst-tables.sh: Add entry for HP-THAI8.
3505         * iconvdata/gconv-modules: Likewise.
3506
3507         [BZ #5464]
3508         * iconvdata/hp-greek8.c: New file.
3509         * iconvdata/Makefile: Add rules for hp-greek8.c.
3510         * iconvdata/tst-tables.sh: Add entry for HP-GREEK8.
3511         * iconvdata/gconv-modules: Likewise.
3512
3513         [BZ #5463]
3514         * iconvdata/hp-turkish8.c: New file.
3515         * iconvdata/Makefile: Add rules for hp-turkish8.c.
3516         * iconvdata/tst-tables.sh: Add entry for HP-TURKISH8.
3517         * iconvdata/gconv-modules: Likewise.
3518
3519         * malloc/arena.c (grow_heap): Split out code to shrink heap into...
3520         (shrink_heap): ... this new function.
3521         (heap_trim): Call shrink_heap instead of grow_heap.
3522
3523         * malloc/malloc.c (_int_malloc): sYSMALLOc might fail, in this
3524         case don't call alloc_perturb.
3525
3526 2007-12-10  Ulrich Drepper  <drepper@redhat.com>
3527
3528         * sysdeps/unix/sysv/linux/adjtime.c: Use ADJ_OFFSET_SS_READ if
3529         possible.
3530         * sysdeps/unix/sysv/linux/kernel-features.h
3531         (__ASSUME_ADJ_OFFSET_SS_READ): Define for 2.6.24.
3532         * sysdeps/unix/sysv/linux/sys/timex.h (ADJ_OFFSET_SS_READ): Define.
3533
3534 2007-12-08  Ulrich Drepper  <drepper@redhat.com>
3535
3536         [BZ #5424]
3537         * stdio-common/vfprintf.c: Do not overflow when adding to done.
3538         * stdio-common/Makefile (tests): Add bug22.
3539         * stdio-common/bug22.c: New file.
3540
3541         [BZ #5451]
3542         * time/getdate.c: Fix filling in default values.
3543         * time/bug-getdate1.c: New file.
3544         * time/Makefile: Add rules to build and run bug-getdate1.
3545
3546         * iconvdata/ebcdic-is-friss.c: Use 8bit-gap instead of 8bit-generic.
3547         * iconvdata/ebcdic-es.c: Likewise.
3548         * iconvdata/ebcdic-es-a.c: Likewise.
3549         * iconvdata/ebcdic-uk.c: Likewise.
3550         * iconvdata/iso8859-16.c: Likewise.
3551         * iconvdata/viscii.c: Likewise.
3552         * iconvdata/iso8859-9e.c: Likewise.
3553         * iconvdata/Makefile: Adjust appropriately.
3554
3555         [BZ #5428]
3556         * wcsmbs/wchar.h: Unconditionally undefine __need_mbstate and
3557         __need_wint_t.
3558
3559 2007-12-07  Ulrich Drepper  <drepper@redhat.com>
3560
3561         [BZ #5427]
3562         * iconvdata/hp-roman9.c: New file.
3563         * iconvdata/Makefile: Add rules for hp-roman9.c.
3564         * iconvdata/tst-tables.sh: Add HP-ROMAN9.
3565         * iconvdata/gconv-modules: Likewise.
3566
3567         * iconvdata/hp-roman8.c: Use 8bit-gap instead of 8bit-generic.
3568         * iconvdata/Makefile: Adjust appropriately.
3569
3570         [BZ #5441]
3571         * stdio-common/vfscanf.c (_IO_vfwscanf): Don't free ptrs_to_free
3572         structure, it's allocated with alloca.
3573         * stdio-common/Makefile (tests): Add bug21.
3574         * stdio-common/bug21.c: New file.
3575
3576 2007-12-06  Aurelien Jarno  <aurelien@aurel32.net>
3577
3578         [BZ #5452]
3579         * sysdeps/unix/sysv/linux/bits/sched.h: Use __extension__
3580         keyword for gcc's braced-groups.
3581
3582 2007-12-07  Ulrich Drepper  <drepper@redhat.com>
3583
3584         [BZ #5454]
3585         * inet/ether_line.c: Strip hostname of whitespaces.
3586         * inet/Makefile (tests): Add tst-ether_line.
3587         * inet/tst-ether_line.c: New file.
3588
3589 2007-12-03  Ulrich Drepper  <drepper@redhat.com>
3590
3591         [BZ #5439]
3592         * sysdeps/unix/sysv/linux/sys/signalfd.h: Fix use of __nonnull.
3593
3594         [BZ #5435]
3595         * sysdeps/unix/sysv/linux/i386/makecontext.S: Align stack.
3596
3597         * stdlib/tst-setcontext.c: Catch the case where the links gets
3598         messed up and we do not reach main again.
3599
3600         * po/ca.po: Update from translation team.
3601
3602 2007-11-26  Ulrich Drepper  <drepper@redhat.com>
3603
3604         * posix/unistd.h: Declare fsync also for __USE_XOPEN2K.
3605         * posix/regex.h (REG_ENOSYS): Likewise.
3606         * wcsmbs/wchar.h: Define __need_file also for __USE_XOPEN2K.
3607
3608 2007-11-25  Ulrich Drepper  <drepper@redhat.com>
3609
3610         * nscd/nscd.h (MAX_STACK_USE): Define.
3611         * nscd/mem.c (MAX_STACK_USE): Remove definition here.
3612         (gc): Initialize stack_used based on allocation in prune_cache.
3613         * nscd/cache.c (prune_cache): Use heap for mark array if necessary.
3614         Clear array before use.
3615
3616         * nscd/aicache.c (addhstaiX): Update statistics counter in case
3617         memory allocation failed.
3618         * nscd/hstcache.c (cache_addhst): Likewise.
3619         * nscd/grpcache.c (cache_addgr): Likewise.
3620         * nscd/servicescache.c (cache_addserv): Likewise.
3621         * nscd/pwdcache.c (cache_addpw): Likewise.
3622         * nscd/initgrcache.c (addinitgroupsX): Likewise.
3623
3624 2007-11-23  Ulrich Drepper  <drepper@redhat.com>
3625
3626         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Add open
3627         and creat system calls.
3628
3629         * sysdeps/unix/sysv/linux/check_native.c: Include <asm/types.h>.
3630
3631 2007-11-23  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3632
3633         * sysdeps/unix/sysv/linux/Makefile [subdir=inet] (sysdep_headers):
3634         Add netiucv/iucv.h.
3635         * sysdeps/unix/sysv/linux/netiucv/iucv.h: New file.
3636         * sysdeps/unix/sysv/linux/opensock.c (__opensock): Add AF_IUCV
3637         protocol.
3638         * sysdeps/unix/sysv/linux/sa_len.c (__libc_sa_len): Likewise.
3639         * sysdeps/unix/sysv/linux/s390/opensock.c: New file.
3640         * sysdeps/unix/sysv/linux/s390/sa_len.c: New file.
3641
3642 2007-11-22  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3643
3644         * sysdeps/s390/bits/string.h (strlen, strcpy, strncpy, strcat,
3645         strncat): Define as macros to avoid compile errors.
3646
3647         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list:  Add open and
3648         creat entries.
3649
3650 2007-11-22  Ulrich Drepper  <drepper@redhat.com>
3651
3652         [BZ #5382]
3653         * nscd/nscd.h (NSCD_THREAD_STACKSIZE): Define.
3654         * nscd/connections.c (start_threads): Use NSCD_THREAD_STACKSIZE.
3655         * nscd/mem.c (gc): Don't allocate arrays on the stack if they can
3656         overflow it.
3657         Partially based on a patch by Petr Baudis <pasky@suse.cz>.
3658
3659         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
3660         Return zero in case the thread library is not NPTL.
3661
3662         [BZ #5375]
3663         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Fix locking when
3664         initializing interface list.
3665
3666         [BZ #5378]
3667         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
3668         use result of nss_getgrgid_r if nothing was found.  For other
3669         error return with a failure.
3670         Partially based on a patch by Petr Baudis <pasky@suse.cz>.
3671
3672         * locale/programs/ld-collate.c (collate_read): Fix loop to match
3673         macro name.
3674
3675 2007-11-19  Ulrich Drepper  <drepper@redhat.com>
3676
3677         * sysdeps/posix/getaddrinfo.c (defaults_scopes, scopes): New variables.
3678         (get_scope): For IPv4 scope, use scopes table.
3679         (fini): Free scopes table if necessary.
3680         (free_scopelist): New function.
3681         (scopecmp): New function.
3682         (gaiconf_init): Also handle scopev4 entries.
3683         * posix/tst-rfc3484.c (do_test): Initialize scopes.
3684         * posix/tst-rfc3484-2.c (do_test): Likewise.
3685         * posix/gai.conf: Document scopev4 defaults.
3686         * posix/Makefile (tests): Add tst-rfc3484-3.
3687         * posix/tst-rfc3484-3.c: New file.
3688
3689         * sysdeps/posix/getaddrinfo.c (default_labels): Describe entry for
3690         Teredo tunnels.
3691         * posix/gai.conf: Update for current default tables.
3692
3693 2007-11-19  Ulrich Drepper  <drepper@redhat.com>
3694
3695         * po/tr.po: Update from translation team.
3696
3697 2007-11-18  Roland McGrath  <roland@frob.com>
3698
3699         * manual/arith.texi (Remainder Functions): Spelling fix.
3700         From Shaun Silk <genix@mysoul.com.au>.
3701
3702         * sysdeps/mach/hurd/bits/fcntl.h (O_CLOEXEC): Fix value.
3703
3704 2007-11-17  Ulrich Drepper  <drepper@redhat.com>
3705
3706         * po/zh_CN.po: Update from translation team.
3707
3708         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
3709         Add sys/signalfd.h and sys/eventfd.h.
3710
3711 2007-11-15  Bruno Haible  <bruno@clisp.org>
3712
3713         [BZ #5346]
3714         * intl/dcigettext.c (struct known_translation_t): Turn msgid into a
3715         union.
3716         (transcmp): Use the appropriate part of s1->msgid and s2->msgid.
3717         (DCIGETTEXT): Change the allocation of the 'search' variable so that
3718         it needs only fixed stack space. Delay the initialization of
3719         msgid_len until it is needed.
3720
3721 2007-11-15  Andreas Jaeger  <aj@suse.de>
3722
3723         * sysdeps/ieee754/dbl-64/sincos.tbl: Fix size of union.
3724         Reported by Christoph Quirin Lauter <christoph.lauter@ens-lyon.fr>.
3725
3726 2007-11-15  Ulrich Drepper  <drepper@redhat.com>
3727
3728         * po/ko.po: Update from translation team.
3729
3730 2007-11-14  Ulrich Drepper  <drepper@redhat.com>
3731
3732         * sysdeps/unix/sysv/linux/check_native.c (__check_native): Simplify
3733         significantly.  The device type is also part of the ifinfomsg data.
3734
3735         * po/sv.po: Update from translation team.
3736         * po/nl.po: Likewise.
3737
3738         * nscd/cache.c (prune_cache): If cache is empty, instruct caller
3739         to wake up in 24 hours.
3740
3741         * nscd/gai.c (__ioctl): Define.  Include check_native.c.
3742
3743 2007-11-13  Ulrich Drepper  <drepper@redhat.com>
3744
3745         * po/cs.po: Update from translation team.
3746         * po/pl.po: Likewise.
3747
3748         * include/ifaddrs.h: Remove in6ai_temporary.
3749         (struct in6addrinfo): Add index element.
3750         Declare __check_native.
3751         * inet/Makefile (aux): Add check_native.
3752         * sysdeps/unix/sysv/linux/check_native.c: New file.
3753         * sysdeps/unix/sysv/linux/check_pf.c: No need to recognize
3754         IFA_F_TEMPORARY.  Pass back ifa_index.
3755         * sysdeps/posix/getaddrinfo.c: Remove netlink compatibility code.
3756         (rfc3484_sort): Add new parameter.  Implement rule 7 correctly:
3757         call __check_native if necessary.
3758         (getaddrinfo): Fill in index field.  Use qsort_r instead of qsort
3759         to sort addresses.  Pass information about the results.
3760         * posix/tst-rfc3484.c: Adjust for addition of index field and change
3761         of rfc3484_sort interface.
3762         * posix/tst-rfc3484-2.c: Likewise.
3763
3764         * stdlib/stdlib.h: Define __compar_d_fn_t.  Declare qsort_r.
3765         * include/stdlib.h: Add hidden_proto for qsort_t and adjust protoype
3766         for _quicksort.
3767         * stdlib/msort.c (qsort): Now a wrapper around qsort_r.
3768         (qsort_r): Renamed from qsort.  Take additional parameter and pass it
3769         on as third parameter to compare function and _quicksort.
3770         * stdlib/qsort.c (_quicksort): Take additional parameter and pass on
3771         to the compare function.
3772         * stdlib/Versions [libc] (GLIBC_2.8): Add qsort_r.
3773         * Versions.def: Add GLIBC_2.8 for libc.
3774
3775         * posix/tst-rfc3484.c: Adjust for addition of prefixlen field.
3776         * posix/tst-rfc3484-2.c: Likewise.
3777
3778         * include/kernel-features.h: Moved to...
3779         * sysdeps/mach/hurd/kernel-features.h: ...here.
3780
3781 2007-09-13  H.J. Lu  <hongjiu.lu@intel.com>
3782
3783         * sysdeps/i386/i586/memcpy_chk.S: New file.
3784         * sysdeps/i386/i586/mempcpy_chk.S: Likewise.
3785         * sysdeps/i386/i586/memset_chk.S: Likewise.
3786
3787 2007-11-12  Ulrich Drepper  <drepper@redhat.com>
3788
3789         * include/ifaddrs.c (struct in6addrinfo): Add prefixlen field.
3790         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Always return
3791         list of interfaces.  Also store prefix length.
3792         * sysdeps/posix/getaddrinfo.c (sort_result): Add prefixlen element.
3793         (rfc3484_sort): In rule 9, for IPv4 addresses count only matching
3794         prefix if source and destination address are in the same subnet.
3795         (getaddrinfo): Always call __check_pf.  Fill in prefixlen field.
3796         Always look for matching record in in6ai list.
3797         Correct source_addr_len value for IPv6->IPv4 converted records.
3798
3799 2007-11-11  Roland McGrath  <roland@frob.com>
3800
3801         * include/kernel-features.h: New file.
3802
3803 2007-11-10  Ulrich Drepper  <drepper@redhat.com>
3804
3805         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Avoid unnecessary
3806         complications for 64-bit platforms.
3807
3808         * sysdeps/unix/sysv/linux/open64.c: Move __open64_2 implementation to..
3809         * sysdeps/unix/sysv/linux/open64_2.c: ...here.  New file.
3810         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines): Add
3811         open64_2.
3812         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add open and creat
3813         entries.
3814         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
3815         * sysdeps/wordsize-64/alphasort.c: New file.
3816         * sysdeps/wordsize-64/alphasort64.c: New file.
3817         * sysdeps/wordsize-64/fseeko.c: New file.
3818         * sysdeps/wordsize-64/fseeko64.c: New file.
3819         * sysdeps/wordsize-64/ftello.c: New file.
3820         * sysdeps/wordsize-64/ftello64.c: New file.
3821         * sysdeps/wordsize-64/ftw.c: New file.
3822         * sysdeps/wordsize-64/ftw64.c: New file.
3823         * sysdeps/wordsize-64/iofgetpos.c: New file.
3824         * sysdeps/wordsize-64/iofgetpos64.c: New file.
3825         * sysdeps/wordsize-64/iofopen.c: New file.
3826         * sysdeps/wordsize-64/iofopen64.c: New file.
3827         * sysdeps/wordsize-64/iofsetpos.c: New file.
3828         * sysdeps/wordsize-64/iofsetpos64.c: New file.
3829         * sysdeps/wordsize-64/lockf.c: New file.
3830         * sysdeps/wordsize-64/lockf64.c: New file.
3831         * sysdeps/wordsize-64/mkostemp.c: New file.
3832         * sysdeps/wordsize-64/mkostemp64.c: New file.
3833         * sysdeps/wordsize-64/mkstemp.c: New file.
3834         * sysdeps/wordsize-64/mkstemp64.c: New file.
3835         * sysdeps/wordsize-64/scandir.c: New file.
3836         * sysdeps/wordsize-64/scandir64.c: New file.
3837         * sysdeps/wordsize-64/tmpfile.c: New file.
3838         * sysdeps/wordsize-64/tmpfile64.c: New file.
3839         * sysdeps/wordsize-64/versionsort.c: New file.
3840         * sysdeps/wordsize-64/versionsort64.c: New file.
3841         * sysdeps/unix/sysv/linux/wordsize-64/aio_read.c: New file.
3842         * sysdeps/unix/sysv/linux/wordsize-64/aio_read64.c: New file.
3843         * sysdeps/unix/sysv/linux/wordsize-64/aio_write.c: New file.
3844         * sysdeps/unix/sysv/linux/wordsize-64/aio_write64.c: New file.
3845         * sysdeps/unix/sysv/linux/wordsize-64/creat64.c: New file.
3846         * sysdeps/unix/sysv/linux/wordsize-64/getdirentries.c: New file.
3847         * sysdeps/unix/sysv/linux/wordsize-64/getdirentries64.c: New file.
3848         * sysdeps/unix/sysv/linux/wordsize-64/lio_listio.c: New file.
3849         * sysdeps/unix/sysv/linux/wordsize-64/lio_listio64.c: New file.
3850         * sysdeps/unix/sysv/linux/wordsize-64/open64.c: New file.
3851         * sysdeps/unix/sysv/linux/wordsize-64/openat.c: New file.
3852         * sysdeps/unix/sysv/linux/wordsize-64/openat64.c: New file.
3853
3854         * crypt/sha256-crypt.c: Fix a comment.
3855         * crypt/sha512-crypt.c: Likewise.
3856
3857 2007-11-07  H.J. Lu  <hongjiu.lu@intel.com>
3858
3859         * sysdeps/x86_64/memset.S: Add sfence after movnti.
3860
3861 2007-11-07  Ulrich Drepper  <drepper@redhat.com>
3862
3863         [BZ #5277]
3864         * iconv/loop.c (STANDARD_TO_LOOP_ERR_HANDLER): If conversion failed
3865         because output buffer is too small break, don't loop.
3866         * iconvdata/Makefile (tests): Add bug-iconv6.
3867         * iconvdata/bug-iconv6.c: New file.
3868
3869 2007-11-06  Ulrich Drepper  <drepper@redhat.com>
3870
3871         * stdio-common/vfprintf.c (vfprintf): Compute necessary buffer size
3872         with size_t type.
3873         * stdio-common/printf_fp.c (__print_fp): Change chars_needed type to
3874         size_t.  Add casts where needed.
3875
3876         * nscd/selinux.c (nscd_request_avc_has_perm): When compiled with
3877         old headers, don't call avc_has_perm if we don't have the
3878         permission information.
3879
3880 2007-11-05  Daniel Jacobowitz  <dan@codesourcery.com>
3881
3882         * elf/rtld.c (dl_main): Use the page size to find the map start.
3883
3884 2007-11-05  Ulrich Drepper  <drepper@redhat.com>
3885
3886         * time/tzfile.c (__tzfile_read): Fix check for version 0 data files.
3887         Patch by Szymon Siwek <sls@poczta.wp.pl>.
3888
3889         * nscd/aicache.c (addhstaiX): Check herrno after IPv4 lookup only
3890         when the lookup call failed.
3891
3892         * nscd/nscd.h (struct database_dyn): Rename prunelock to prune_lock.
3893         Add prune_cond and wakeup_time.
3894         (CACHE_PRUNE_INTERNAL): Define.
3895         Update declarations of prune_cache and setup_thread.
3896         * nscd/connections.c (dbs): Update initializers.
3897         (CACHE_PRUNE_INTERNAL): Moved to nscd.h.
3898         (nscd_init): Default number of threads is now 4.
3899         (invalidate_cache): Take lock before calling prune_cache.
3900         (handle_request): If SELinux forbids the request, say so.
3901         (readylist_cond): Use static initializer.
3902         (nscd_run_prune): New function.  Used only by pruning threads.
3903         (nscd_run_worder): Renamed from nscd_run.  Remove support for pruning
3904         here.
3905         (fd_ready): Update nscd_run reference.
3906         (start_threads): No need to initialize readylist_cond.
3907         Start pruning threads separately.
3908         * nscd/nscd_setup_thread.c: Change return value type to int and always
3909         return 0.
3910         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Change return value type
3911         to int and return nonzero value if we can use the TID address hack.
3912         * nscd/cache.c (cache_add): If next wakeup time of cleanup thread for
3913         the database is later than the new entry's timeout, update the
3914         wakeup time and wake the cleanup thread.
3915         (prune_cache): Return seconds the next entry in the database is still
3916         valid.  Remove locking for pruning here.
3917         * nscd/nscd.conf: Document default number of threads.
3918
3919 2007-10-31  Ulrich Drepper  <drepper@redhat.com>
3920
3921         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Make sure
3922         stack is properly aligned for the target function.
3923         Correct unwind info.
3924
3925         * elf/rtld.c (dl_main): Initialize stack and pointer guard early
3926         when using auditing libraries.
3927
3928 2007-10-29  Ulrich Drepper  <drepper@redhat.com>
3929
3930         * resolv/Versions [libresolv] (GLIBC_PRIVATE): Add
3931         _nss_dns_getnetbyaddr2_r.
3932         * resolv/nss_dns/dns-host.c: Define _nss_dns_getnetbyaddr2_r.  Pass
3933         extra parameter to getanswer_r.
3934         (_nss_dns_getnetbyaddr_r): Now a wrapper around
3935         _nss_dns_getnetbyaddr2_r.
3936
3937         * nscd/Makefile (nscd-modules): Replace gethstbynm2_r with
3938         gethstbynm3_r.
3939         * nscd/gethstbynm2_r.c: Remove.
3940         * nscd/gethstbynm3_r.c: New file.
3941         * nscd/aicache.c (addhstaiX): Use __gethostbyaddr2_r instead of
3942         __gethostbyaddr_r.
3943         * nscd/gethstbyad_r.c: Generate __gethostbyaddr2_r function.  Define
3944         __gethostbyaddr_r compatibility wrapper.
3945         * nscd/hstcache.c (cache_addhst): Add ttl parameter.  Use it when
3946         determining timeout of entry.
3947         (lookup): Take new parameter and pass it to __gethostbyname3_r and
3948         __gethostbyaddr2_r.
3949         (addhstbyX): Pass reference to variable for TTL to lookup and
3950         cache_addhst.
3951         * nss/Versions [glibc] (GLIBC_PRIVATE): Export __nss_passwd_lookup2,
3952         __nss_group_lookup2, __nss_hosts_lookup2, __nss_services_lookup2,
3953         and __nss_next2.  Remove __nss_services_lookup.
3954         * nss/XXX-lookup.c: Name function now *_lookup2.  Add new parameter.
3955         Add compat wrapper.
3956         * nss/getXXbyYY_r.c: Changes to call new *_lookup2 functions and
3957         __nss_next2.
3958         * nss/getXXent_r.c: Likewise.
3959         * nss/getnssent_r.c: Likewise.
3960         * nss/nsswitch.c (__nss_lookup): Add new parameter.  If first function
3961         does not exist in module, try the optional second name.
3962         (__nss_next2): New function.
3963         (__nss_next): Now wrapper around __nss_next2.
3964         * nss/nsswitch.h: Adjust __nss_lookup prototype.
3965         Declare __nss_next2.
3966         Adjust definition of db_lookup_function type.
3967         * nss/service-lookup.c: Define NO_COMPAT.
3968         * include/netdb.h: Declare __gethostbyaddr2_r and __gethostbyname3_r.
3969         * inet/ether_hton.c: Use __nss_next2 instead of __nss_next.
3970         * inet/ether_ntoh.c: Likewise.
3971         * sunrpc/netname.c: Likewise.
3972         * sunrpc/publickey.c: Likewise.
3973         * inet/getnetgrent.c: Likewise.  Adjust calls to __nss_lookup.
3974         * inet/gethstbyad_r.c (DB_LOOKUP_FCT): Change to __nss_hosts_lookup2.
3975         * inet/gethstbynm2_r.c (DB_LOOKUP_FCT): Likewise.
3976         * inet/gethstbynm_r.c (DB_LOOKUP_FCT): Likewise.
3977         * inet/gethstent_r.c (DB_LOOKUP_FCT): Likewise.
3978
3979         * nscd/aicache.c (addhstaiX): Fix default TTL handling.
3980
3981         * inet/getnetgrent_r.c (setup): Encrypt static pointer.
3982
3983 2007-10-28  Ulrich Drepper  <drepper@redhat.com>
3984
3985         [BZ #5204]
3986         * crypt/sha256c-test.c: Define TIMEOUT to 6 for ancient hardware.
3987         * crypt/sha512c-test.c: Likewise.
3988
3989         [BZ #5225]
3990         * stdio-common/vfscanf.c (_IO_vfwscanf): Don't misuse wp pointer
3991         to keep track of end of %[ format string element.
3992         * stdio-common/Makefile (tests): Add bug20.
3993         * stdio-common/bug20.c: New file.
3994
3995         [BZ #5222]
3996         * elf/dl-load.c (_dl_rtld_di_serinfo): Correct handling of short
3997         path elements in counting mode.
3998
3999 2007-10-27  Andreas Jaeger  <aj@suse.de>
4000
4001         [BZ #5040]
4002         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLRDHUP): Add value.
4003
4004         [BZ #3112]
4005         * sysdeps/ia64/backtrace.c (init): Free shared library if incorrect.
4006         (__cleanup): Free shared library when exiting.
4007         * sysdeps/i386/backtrace.c (init): Free shared library if incorrect.
4008         (__cleanup): Free shared library when exiting.
4009
4010 2006-04-14  H.J. Lu  <hongjiu.lu@intel.com>
4011
4012         [BZ #2549]
4013         * math/libm-test.inc (check_float_internal): Support
4014         denormalized return.
4015
4016 2007-10-23  Andreas Jaeger  <aj@suse.de>
4017
4018         [BZ #5208]
4019         * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use
4020         __LONG_LONG_PAIR to handle little endian byte order.
4021         Suggested by abhishekrai@google.com
4022
4023 2007-10-27  Ulrich Drepper  <drepper@redhat.com>
4024
4025         * malloc/arena.c [!NO_THREADS]: Use ATFORK_MEM if defined.
4026
4027 2007-10-26  Ulrich Drepper  <drepper@redhat.com>
4028
4029         * nscd/cache.c (prune_cache): Move test for modified file outside
4030         of locking.
4031
4032 2007-10-21  Andreas Jaeger  <aj@suse.de>
4033
4034         * manual/texinfo.tex: Update to latest version.
4035
4036         * manual/sysinfo.texi (System Parameters): Fix Formatting.
4037
4038         * manual/arith.texi (Status bit operations): Fix formatting.
4039
4040         * manual/errno.texi (Error Messages): Fix formatting.
4041
4042         * manual/sysinfo.texi (System Parameters): Fix formatting.
4043
4044         * manual/libc.texinfo: Update VERSION and UPDATED.
4045
4046 2007-10-19  Roland McGrath  <roland@redhat.com>
4047
4048         * elf/Makefile ($(objpfx)ld.so): Use $(AWK).
4049
4050 2007-10-06  David S. Miller  <davem@davemloft.net>
4051
4052         * configure.in: Add sparcv9v2 and sparc64v2.
4053         * scripts/config.sub: Likewise.
4054         * configure: Regenerate.
4055         * elf/elf.h (HWCAP_SPARC_N2): New.
4056         * sysdeps/sparc/dl-procinfo.h (_DL_HWCAP_COUNT): Bump to 8.
4057         * sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add 'v9v2'.
4058         (HWCAP_IMPORTANT): Add HWCAP_SPARC_N2.
4059         * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memcpy.S: New file.
4060         * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memset.S: New file.
4061         * sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: New file.
4062         * sysdeps/sparc/sparc64/sparcv9v2/memset.S: New file.
4063
4064 2007-10-18  Ulrich Drepper  <drepper@redhat.com>
4065
4066         * sunrpc/clnt_udp.c (clntudp_call): Don't block in recvfrom call
4067         even if the poll result indicates there is data to read.
4068         Patch by Jeff Moyer <jmoyer@redhat.com>.
4069
4070 2007-10-18  Roland McGrath  <roland@redhat.com>
4071
4072         * elf/elf.h (NT_PPC_VMX): New macro.
4073
4074 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
4075
4076         * version.h (VERSION): Set to 2.7.90.
4077
4078 2007-10-17  Jakub Jelinek  <jakub@redhat.com>
4079
4080         * sysdeps/x86_64/memset.S (bzero): Renamed to __bzero.  Add
4081         weak_alias.
4082
4083 2007-10-17  Roland McGrath  <roland@frob.com>
4084
4085         * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU__] (F_DUPFD_CLOEXEC): New.
4086         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Implement it.
4087
4088 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
4089
4090         * version.h (VERSION): Bump to 2.7.
4091         * include/features.h (__GLIBC_MINOR__): Bump to 7.
4092
4093         [BZ #5186]
4094         * time/tzset.c (__tz_convert): Don't force testing for a change of
4095         TZ if not called from localtime.  But then also see whether the
4096         file changed, in case __use_tzfile is set.
4097
4098         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define F_DUPFD_CLOEXEC.
4099         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
4100         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
4101         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
4102         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
4103         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
4104         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h:  Likewise.
4105         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
4106
4107 2007-10-17  Jakub Jelinek  <jakub@redhat.com>
4108
4109         * sysdeps/posix/getaddrinfo.c (getaddrinfo): When sorting addresses
4110         and admin selects to be able to replace the gai.conf file, lock
4111         data structures around the qsort call.
4112
4113 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
4114
4115         * sysdeps/x86_64/cacheinfo.c: Comment out code added in support of
4116         new memset.
4117         * sysdeps/x86_64/memset.S: Revert to old version for now.  The cost is
4118         too high for the improvements.  Implement bzero unconditionally for
4119         use in libc.
4120
4121 2007-10-17  Ulrich Drepper  <drepper@redhat.com>
4122             Jakub Jelinek  <jakub@redhat.com>
4123
4124         * time/tzfile.c (__tzfile_read): Read POSIX TZ string if available
4125         even when time_t is 32-bit.
4126         (__tzfile_compute): Override POSIX TZ string STD/DST zone names if
4127         timezone data read by __tzfile_default.  Ensure __tzname[0] is
4128         always set after the search.
4129
4130 2007-10-16  Ulrich Drepper  <drepper@redhat.com>
4131
4132         * time/tzfile.c (__tzfile_read): Help the compiler recognize
4133         unreachable code on 32-bit machines.
4134
4135 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
4136
4137         [BZ #5184]
4138         * time/strftime_l.c: Include stdbool.h.
4139         (my_strftime): New wrapper, old function renamed to...
4140         (__strftime_internal): ... new function.  Add tzset_called
4141         argument, pass it down to recursive calls, don't call tzset ()
4142         if already true, set to true after call to tzset ().
4143
4144 2007-10-16  Ulrich Drepper  <drepper@redhat.com>
4145
4146         * time/tzfile.c (__tzfile_read): Take extra memory requested by caller
4147         into account when copying TZ string.
4148
4149 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
4150
4151         * time/tzfile.c (__tzfile_compute): For use_last case set i to
4152         num_transition rather than num_transitions - 1.
4153
4154 2007-10-16  Jakub Jelinek  <jakub@redhat.com>
4155
4156         * sysdeps/x86_64/memset.S (memset): Fix sse2_nt_move
4157         PIC indirect jump.
4158
4159         * sysdeps/x86_64/memset.S: Jump from bzero to memset using
4160         a local label rather than HIDDEN_JUMPTARGET.
4161
4162 2007-10-15  Ulrich Drepper  <drepper@redhat.com>
4163
4164         * sysdeps/x86_64/cacheinfo.c (__x86_64_shared_cache_size): Define.
4165         (init_cacheinfo): Initialize it.
4166         * sysdeps/x86_64/memset.S: Use __x86_64_shared_cache_size.
4167         Always define bzero.
4168         Remove non-glibc code.
4169         * sysdeps/x86_64/bzero.S: Make an empty file.
4170
4171 2007-10-15  H.J. Lu  <hongjiu.lu@intel.com>
4172
4173         * sysdeps/x86_64/cacheinfo.c
4174         (__x86_64_preferred_memory_instruction): New.
4175         (init_cacheinfo): Initialize __x86_64_preferred_memory_instruction.
4176
4177         * sysdeps/x86_64/memset.S: Rewrite.
4178
4179 2007-10-15  Roland McGrath  <roland@redhat.com>
4180
4181         * po/libc.pot: Regenerated.
4182
4183 2007-10-15  Ulrich Drepper  <drepper@redhat.com>
4184
4185         * nss/getXXbyYY_r.c (REENTRANT_NAME): Mangle startp and start_fct
4186         pointers.
4187
4188         [BZ #3425]
4189         * resolv/nss_dns/dns-host.c (getanswer_r): Fail with
4190         NSS_STATUS_NOTFOUND if the server replied with only a CNAME and no
4191         address record to T_A/T_AAAA requests.
4192
4193 2007-10-14  Ulrich Drepper  <drepper@redhat.com>
4194
4195         * posix/glob.c: Reimplement link_exists_p to use fstatat64.
4196
4197         * posix/glob.c: Add some branch prediction throughout.
4198
4199         * nscd/nscd_getgr_r.c (nscd_getgr_r): Store result of successful
4200         read from nscd.
4201
4202         * sysdeps/posix/getaddrinfo.c (struct sort_result): Add
4203         service_order.
4204         (rfc3484_sort): Make sure that even if qsort doesn't support
4205         stable sorting out sorting here is stable by comparing service_order.
4206         (getaddrinfo): Initialize service_order.
4207         * posix/tst-rfc3484.c (do_test): Adjust for addition of
4208         service_order field to sorting structure.
4209         * posix/tst-rfc3484-2.c (do_test): Likewise.
4210
4211         * include/time.h: Declare __tzset_parse_tz and __tzset_compute.
4212         * time/tzset.c (tzset_internal): Break TZ string parsing out into
4213         __tzset_parse_tz and updating of daylight, timezone, tzname into
4214         update_vars.
4215         (__tz_compute): Renamed from tz_compute.  Take additional parameters.
4216         (__tz_convert): Updating of tm_isdst, tm_zone, and tm_gmtoff now
4217         happens in __tz_compute.
4218         * time/tzfile.c (__tzfile_read): Also read TZ string.
4219         (find_transition): Fold into __tzfile_compute.
4220         (__tzfile_compute): For times beyond the last transition try to
4221         use the TZ string.
4222         * timezone/tst-timezone.c: Information in daylight and tzname does
4223         change for Asia/Tokyo timezone with more concrete information.
4224         Remove the test.
4225
4226         * include/stdio.h: Add libc_hidden_proto for ftello.
4227         * libio/ftello.c: Add libc_hidden_def.
4228
4229         [BZ #1140]
4230         * time/tzfile.c (__tzfile_compute): Compute tzname[] values based
4231         on the specified time and not the last entries in the file.  Move
4232         code to determine tzname[] to...
4233         (find_transition): ...here.  Add ugly guess for times before the
4234         first transition.
4235
4236 2007-10-13  Ulrich Drepper  <drepper@redhat.com>
4237
4238         [BZ #3195]
4239         * nscd/nscd_getai.c (__nscd_getai): Set errno to 0 in case we found
4240         no entry.
4241         * nscd/nscd_getgr.c (nscd_getgr_r): Likewise.
4242         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
4243         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
4244         * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
4245
4246         * nscd/nscd_getgr_r.c (nscd_getgr_r): Optimize a bit: use simpler
4247         read mechanism when there are no group members and avoid no-op
4248         read syscall in this case.
4249
4250         [BZ #3242]
4251         * nscd/nscd_helper.c (wait_on_socket): Take timeout as parameter.
4252         (__readall): If reading failed due to EAGAIN error wait a bit
4253         and possibly try again.
4254         (__readvall): Likewise.
4255
4256 2007-10-13  Bruno Haible  <bruno@clisp.org>
4257
4258         * intl/dcigettext.c (_nl_find_msg): Unlock the conversions_lock
4259         when we cannot recode the message.
4260
4261 2007-10-13  Ulrich Drepper  <drepper@redhat.com>
4262
4263         [BZ #4359]
4264         * libio/__freading.c (__freading): Don't return true for
4265         write-only streams.  For read/write streams, check whether we
4266         performed a read operation already.
4267         * libio/Makefile (tests): Add tst-ext2.
4268         * libio/tst-ext2.c: New file.
4269
4270 2007-10-12  Ulrich Drepper  <drepper@redhat.com>
4271
4272         * locale/programs/repertoire.c (repertoire_read): Always free
4273         memory for repertoire file name [Coverity CID 270].
4274
4275         * elf/cache.c (save_aux_cache): Free memory allocated for
4276         temporary file name [Coverity CID 267].
4277
4278 2007-10-12  Jakub Jelinek  <jakub@redhat.com>
4279
4280         * misc/Makefile (headers): Add bits/error.h.
4281
4282 2007-10-12  Ulrich Drepper  <drepper@redhat.com>
4283
4284         * posix/fnmatch_loop.c: Take rule index returned as part of
4285         findidx return value into account when accessing weights.
4286         * posix/regcomp.c: Likewise.
4287         * posix/regexec.c: Likewise.
4288
4289         * locale/programs/ld-collate.c (collate_read): Optimize a bit.
4290         (skip_to): Fix problems with parameter of elifdef/elifndef.
4291
4292 2007-10-11  Ulrich Drepper  <drepper@redhat.com>
4293
4294         * iconv/gconv_simple.c: Add some branch prediction.
4295
4296 2007-10-12  Jakub Jelinek  <jakub@redhat.com>
4297
4298         * locale/programs/ld-collate.c (collate_read): If ignore_content
4299         and nowtok is tok_define, eat any tok_eol tokens.
4300
4301 2007-10-11  Jakub Jelinek  <jakub@redhat.com>
4302
4303         * sysdeps/gnu/netinet/tcp.h: Include sys/socket.h if __USE_MISC.
4304         (struct tcp_md5sig): Change tcpm_addr type to struct sockaddr_storage.
4305
4306         * inet/netinet/in.h: Don't include bits/socket.h.
4307         * sysdeps/unix/sysv/linux/bits/socket.h: Only check _SYS_SOCKET_H
4308         macro.
4309         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
4310
4311 2007-10-10  Ulrich Drepper  <drepper@redhat.com>
4312
4313         * locale/programs/locfile-token.h: Remove tok_elif, add tok_elifdef
4314         and tok_elifndef.
4315         * locale/programs/locfile-kw.gperf: Likewise.
4316         * locale/programs/ld-collate.c: Implement primitive preprocessor.
4317
4318 2007-10-10  Jakub Jelinek  <jakub@redhat.com>
4319
4320         * stdio-common/printf-parse.h: Include string.h and wchar.h.
4321         (__find_specwc): Change into __extern_always_inline function.
4322         (__find_specmb): Likewise.  Remove ps argument.  Use __strchrnul.
4323         (__parse_one_specmb): Remove ps argument.
4324         * stdio-common/vfprintf.c (vfprintf): Remove mbstate variable.
4325         Adjust __find_specmb and __parse_one_specmb callers.
4326         * stdio-common/printf-prs.c (parse_printf_format): Likewise.
4327         * stdio-common/printf-parsemb.c (__find_specwc, __find_specmb):
4328         Removed.
4329         (__parse_one_specmb): Remove ps argument, adjust __find_specmb
4330         caller.
4331
4332 2007-10-09  Ulrich Drepper  <drepper@redhat.com>
4333
4334         * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Work around problem
4335         with some Pentium Ds.
4336
4337 2007-10-08  Ulrich Drepper  <drepper@redhat.com>
4338
4339         * sysdeps/unix/sysv/linux/eventfd_read.c (eventfd_read): Use
4340         __read not read.
4341         * sysdeps/unix/sysv/linux/eventfd_write.c (eventfd_write): Use
4342         __write not write.
4343
4344 2007-10-07  Ulrich Drepper  <drepper@redhat.com>
4345
4346         [BZ #181]
4347         * locale/C-time.c: Set week_1stday data to 19971201.
4348         * locale/programs/ld-time.c (time_finish): Default for
4349         first_workday is Monday.
4350
4351         [BZ #2633]
4352         * wcsmbs/wchar.h: Move many C99 functions into std namespace.
4353
4354         [BZ #5103]
4355         * posix/glob.c (glob): Recognize patterns starting \/.
4356         * posix/tst-gnuglob.c (find_file): Handle absolute path names.
4357         (main): Add test for pattern starting \/.
4358
4359         * misc/error.h: Use __const instead of const.
4360         * misc/bits/error.h: Likewise.
4361
4362 2007-10-07  Andreas Jaeger  <aj@suse.de>
4363
4364         * include/bits/error.h: New file.
4365
4366         * misc/bits/error.h (error_at_line): Fix prototype.
4367
4368 2007-10-06  Ulrich Drepper  <drepper@redhat.com>
4369
4370         [BZ #3924]
4371         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix a few
4372         more little bugs in creating the stack frame when pltexit has to
4373         be called.
4374
4375         * nscd/nscd_helper.c (__nscd_cache_search): Prevent endless loops.
4376         * nscd/connections.c (verify_persistent_db): Recognize circular lists.
4377
4378         [BZ #4407]
4379         * sysdeps/ieee754/dbl-64/e_lgamma_r.c: Fix *signgamp for -0.0.
4380         * sysdeps/ieee754/flt-32/e_lgammaf_r.c: Likewise.
4381         * sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise.
4382         * math/libm-test.inc: Add test for this case.
4383
4384         [BZ #5010]
4385         * sunrpc/svc.c (struct svc_callout): Add sc_mapped element.
4386         (svc_register): Initialize sc_mapped.  Set to TRUE if call to
4387         map service succeeded.
4388         (svc_is_mapped): New function.
4389         (svc_unregister): Use it before trying to unmap service.
4390
4391 2007-10-05  Ulrich Drepper  <drepper@redhat.com>
4392
4393         * timezone/zic.c: Update from tzcode2007h.
4394
4395         [BZ #5063]
4396         * timezone/africa: Update from tzdata2007h.
4397         * timezone/antarctica: Likewise.
4398         * timezone/asia: Likewise.
4399         * timezone/australasia: Likewise.
4400         * timezone/europe: Likewise.
4401         * timezone/leapseconds: Likewise.
4402         * timezone/northamerica: Likewise.
4403         * timezone/southamerica: Likewise.
4404         * timzeone/zone.tab: Likewise.
4405
4406         [BZ #5104]
4407         * elf/do-lookup.h (do_lookup_x): Don't ignore STT_COMMON symbols.
4408
4409         [BZ #5113]
4410         * string/bits/string2.h (__strdup): Cast parameters to calloc to
4411         avoid warning with -Wconversion.
4412         (__strndup): Likewise.
4413         Half the patch by Christian Iseli <christian.iseli@licr.org>.
4414
4415         [BZ #5112]
4416         * nscd/connections.c (restart): Don't resync if database is
4417         disabled.  Patch mostly by Brian De Wolf <bldewolf@csupomona.edu>.
4418
4419         * sysdeps/gnu/netinet/tcp.h: Define TCP_MD5SIG, TCP_MD5SIG_MAXKEYLEN,
4420         struct tcp_md5sig.  Extend struct tcp_info according to recent kernels.
4421
4422         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add eventfd,
4423         evetnfd_read, eventfd_write.
4424         * sysdeps/unix/sysv/linux/eventfd.c: New file.
4425         * sysdeps/unix/sysv/linux/eventfd_read.c: New file.
4426         * sysdeps/unix/sysv/linux/eventfd_write.c: New file.
4427         * sysdeps/unix/sysv/linux/sys/eventfd.h: New file.
4428         * sysdeps/unix/sysv/linux/Versions: Export eventfd, eventfd_read,
4429         eventfd_write for GLIBC_2.7.
4430
4431         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add signalfd.
4432         * sysdeps/unix/sysv/linux/signalfd.c: New file.
4433         * sysdeps/unix/sysv/linux/sys/signalfd.h: New file.
4434         * sysdeps/unix/sysv/linux/Versions: Export signalfd for GLIBC_2.7.
4435
4436 2007-10-04  Jakub Jelinek  <jakub@redhat.com>
4437
4438         * stdlib/msort.c: Include stdint.h.
4439         (struct msort_param): New type.
4440         (msort_with_tmp): Use struct msort_param pointer for unchanging
4441         parameters.  Add optimized handling for several common sizes
4442         and indirect sorting mode.
4443         (qsort): Adjust msort_with_tmp callers.  For big S use indirect
4444         sorting.
4445         Suggested by Belazougui Djamel .
4446
4447         * stdlib/Makefile (tests): Add tst-qsort2.
4448         * stdlib/tst-qsort2.c: New test.
4449
4450 2007-10-04  Ulrich Drepper  <drepper@redhat.com>
4451
4452         * login/login_tty.c (login_tty): The Linux kernel can return EBUSY
4453         for dup2 in case another thread races with the current one.  Retry
4454         in this case.
4455
4456         * misc/error.h: Remove support for use outside of libc.  We have to
4457         include <features.h> now.  Include <bits/error.h> if possible.
4458         * misc/bits/error.h: New file.
4459
4460 2007-10-03  Jakub Jelinek  <jakub@redhat.com>
4461
4462         * string/bits/string3.h (memcpy, memmove, mempcpy, memset, bcopy,
4463         bzero, strcpy, stpcpy, strncpy, strcat, strncat): Use
4464         __extern_always_inline functions unconditionally, drop macros.
4465
4466         * misc/sys/cdefs.h (__REDIRECT_LDBL, __REDIRECT_NTH_LDBL): New macros.
4467         * wcsmbs/bits/wchar2.h (__swprintf_alias, __vswprintf_alias): Use
4468         __REDIRECT_NTH_LDBL macro rather than __REDIRECT_NTH.
4469
4470         * misc/sys/cdefs.h (__extern_always_inline): For GCC 4.3+
4471         add __artificial__ attribute.
4472
4473 2007-10-02  Ulrich Drepper  <drepper@redhat.com>
4474
4475         * string/strcoll_l.c (STRCOLL): Correct handling of switching from
4476         backward to forward direction.
4477
4478         * string/strcoll_l.c (STRCOLL): Correct test for alloca use.
4479
4480         [BZ #645]
4481         * locale/programs/ld-collate.c (collate_finish): Compare against last
4482         used section which is known to have rules defined.
4483         (collate_read): After order_start, correctly record order of sections
4484         and queue sections up.
4485
4486 2007-10-01  Ulrich Drepper  <drepper@redhat.com>
4487
4488         [BZ #5071]
4489         * malloc/malloc.c (mremap_chunk): Avoid resizing of new block has
4490         the same number of pages.
4491         Patch by Tomash Brechko <tomash.brechko@gmail.com>.
4492
4493         * locale/programs/ld-collate.c (collate_read): After initial copy
4494         statement, continue in state 0.
4495
4496         * include/stdio_ext.h (__fsetlocking): Define as macro.
4497
4498 2007-09-30  Ulrich Drepper  <drepper@redhat.com>
4499
4500         * locale/programs/ld-collate.c (collate_finish): Compare all bytes
4501         of section order.
4502
4503         * po/pt_BR.po: Fix typo.
4504
4505 2007-09-29  Ulrich Drepper  <drepper@redhat.com>
4506
4507         * iconvdata/Makefile (modules): Add ISO8859-9E.
4508         (distribute): Add iso8859-9e.c.
4509         (gen-8bit-gap-modules): Add iso8859-9e.
4510         * iconvdata/iso8859-9e.c: New file.
4511         * iconvdata/gconv-modules: Add entries for ISO-8859-9E.
4512         * iconvdata/TESTS: Likewise.
4513         * iconvdata/tst-tables.sh: Likewise.
4514
4515         * iconvdata/koi8-r.c (HAS_HOLES): Define to 0.
4516
4517         * locale/iso-639.def: Add several new entries.
4518
4519 2007-09-24  Jakub Jelinek  <jakub@redhat.com>
4520
4521         * sysdeps/generic/ldsodefs.h (struct dl_scope_free_list): Store
4522         void * pointers instead of struct link_map **.
4523         (_dl_scope_free): Change argument type to void *.
4524         * include/link.h (struct link_map): Change type of l_reldeps
4525         to struct link_map_reldeps, move l_reldepsact into that
4526         struct too.
4527         * elf/dl-deps.c: Include atomic.h.
4528         (_dl_map_object_deps): Only change l->l_initfini when it is
4529         fully populated, use _dl_scope_free for freeing it.  Optimize
4530         removal of libs from reldeps by using l_reserved flag, when
4531         some removal is needed, allocate a new list instead of
4532         reallocating and free the old with _dl_scope_free.  Adjust
4533         for l_reldeps and l_reldepsact changes.
4534         * elf/dl-lookup.c (add_dependency): Likewise.  Reorganize to allow
4535         searching in l_initfini and l_reldeps without holding dl_load_lock.
4536         * elf/dl-fini.c (_dl_sort_fini): Adjust for l_reldeps and
4537         l_reldepsact changes.
4538         * elf/dl-close.c (_dl_close_worker): Likewise.
4539         * elf/dl-open.c (_dl_scope_free): Change argument type to void *.
4540
4541 2007-09-28  Ulrich Drepper  <drepper@redhat.com>
4542
4543         * iconvdata/Makefile (modules): Add KOI8-RU.
4544         (distribute): Add koi8-ru.c.
4545         (gen-8bit-gap-modules): Add koi8-ru.
4546         * iconvdata/koi8-ru.c: New file.
4547         * iconvdata/gconv-modules: Add entries for KOI8-RU.
4548         * iconvdata/TESTS: Likewise.
4549         * iconvdata/tst-tables.sh: Likewise.
4550
4551         * iconvdata/koi8-r.c (HAS_HOLES): Define to 0.
4552
4553 2007-09-26  Jakub Jelinek  <jakub@redhat.com>
4554
4555         * misc/sys/cdefs.h (__warndecl, __errordecl): For GCC 4.3+ define
4556         with __warning__/__error__ attributes.
4557         (__warnattr): Define.
4558         * stdlib/bits/stdlib.h (__realpath_chk_warn, __ptsname_r_chk_warn,
4559         __mbstowcs_chk_warn, __wcstombs_chk_warn): New aliases with
4560         __warnattr.
4561         (realpath, ptsname_r, mbstowcs, wcstombs): Call __*_chk_warn instead
4562         of __*_chk if compile time detectable overflow is found.
4563         * libio/bits/stdio2.h (__fgets_chk_warn, __fread_chk_warn,
4564         __fgets_unlocked_chk_warn, __fread_unlocked_chk_warn): New aliases
4565         with __warnattr.
4566         (fgets, fread, fgets_unlocked, fread_unlocked): Call __*_chk_warn
4567         instead of __*_chk if compile time detectable overflow is found.
4568         (__gets_alias): Rename to...
4569         (__gets_warn): ... this.  Add __warnattr.
4570         (gets): Call __gets_warn instead of __gets_alias.
4571         * socket/bits/socket2.h (__recv_chk_warn, __recvfrom_chk_warn): New
4572         aliases with __warnattr.
4573         (recv, recvfrom): Call __*_chk_warn instead of __*_chk if compile
4574         time detectable overflow is found.
4575         * posix/bits/unistd.h (__read_chk_warn, __pread_chk_warn,
4576         __pread64_chk_warn, __readlink_chk_warn, __readlinkat_chk_warn,
4577         __getcwd_chk_warn, __confstr_chk_warn, __getgroups_chk_warn,
4578         __ttyname_r_chk_warn, __getlogin_r_chk_warn, __gethostname_chk_warn,
4579         __getdomainname_chk_warn): New aliases with __warnattr.
4580         (read, pread, pread64, readlink, readlinkat, getcwd, confstr,
4581         getgroups, ttyname_r, getlogin_r, gethostname, getdomainname): Call
4582         __*_chk_warn instead of __*_chk if compile time detectable overflow
4583         is found.
4584         (__getgroups_chk): Rename argument to __listlen from listlen.
4585         (__getwd_alias): Rename to...
4586         (__getwd_warn): ... this.  Add __warnattr.
4587         (getwd): Call __getwd_warn instead of __getwd_alias.
4588         * wcsmbs/bits/wchar2.h (__wmemcpy_chk_warn, __wmemmove_chk_warn,
4589         __wmempcpy_chk_warn, __wmemset_chk_warn, __wcsncpy_chk_warn,
4590         __wcpncpy_chk_warn, __fgetws_chk_warn, __fgetws_unlocked_chk_warn,
4591         __mbsrtowcs_chk_warn, __wcsrtombs_chk_warn, __mbsnrtowcs_chk_warn,
4592         __wcsnrtombs_chk_warn): New aliases with __warnattr.
4593         (wmemcpy, wmemmove, wmempcpy, wmemset, mbsrtowcs, wcsrtombs,
4594         mbsnrtowcs, wcsnrtombs): Call __*_chk_warn instead of __*_chk if
4595         compile time detectable overflow is found.
4596         (wcsncpy, wcpncpy): Likewise.  For constant __n fix check whether
4597         to use __*_chk or not.
4598         (fgetws, fgetws_unlocked): Divide __bos by sizeof (wchar_t), both
4599         in comparisons which function should be called and in __*_chk*
4600         arguments.  Call __*_chk_warn instead of __*_chk if compile time
4601         detectable overflow is found.
4602         (swprintf, vswprintf): Divide __bos by sizeof (wchar_t) in
4603         __*_chk argument.
4604         * debug/tst-chk1.c (do_test): Add a few more tests.
4605
4606 2007-09-24  Ulrich Drepper  <drepper@redhat.com>
4607
4608         [BZ #5058]
4609         * intl/gettextP.h (struct loaded_domain): Add conversions_lock member.
4610         * intl/loadmsgcat.c (_nl_load_domain): Initialize conversions_lock.
4611         (_nl_unload_domain): Finalize conversions_lock.
4612         * intl/dcigettext.c (_nl_find_msg): Take conversions_lock before
4613         handling table of known conversions.
4614
4615 2007-09-24  Jakub Jelinek  <jakub@redhat.com>
4616
4617         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Use
4618         close_not_cancel_no_status instead of close.
4619
4620 2007-09-13  Aurelien Jarno  <aurelien@aurel32.net>
4621
4622         [BZ #5028]
4623         * posix/regcomp.c (lookup_collation_sequence_value): Check that
4624         nrules != 0 for multibyte chars.
4625
4626 2007-09-23  Ulrich Drepper  <drepper@redhat.com>
4627
4628         * resolv/ns_print.c (ns_sprintrrf): Handle ns_t_a6 and ns_t_opt.
4629         Provide better error message in case the type is unknown.
4630
4631         [BZ #4963]
4632         * wcsmbs/wcsnlen.c: Don't reference before checking the length.
4633         * string/stratcliff.c: Make usable to test wide char functions.
4634         * wcsmbs/wcsatcliff.c: New file.
4635         * wcsmbs/Makefiel (tests): Add wcsatcliff.
4636
4637         [BZ #4972]
4638         * iconvdata/Makefile (modules): Add MAC-CENTRALEUROPE.
4639         (distribute): Add mac-centraleurope.c.
4640         (gen-8bit-gap-modules): Add mac-centraleurope.
4641         * iconvdata/mac-centraleurope.c: New file.
4642         * iconvdata/gconv-modules: Add entries for MAC-CENTRALEUROPE.
4643         * iconvdata/TESTS: Likewise.
4644         * iconvdata/tst-tables.sh: Likewise.
4645
4646         [BZ #5043]
4647         * iconv/iconv_open.c (iconv_open): For large codeset names use malloc.
4648
4649 2007-09-21  Ulrich Drepper  <drepper@redhat.com>
4650
4651         * sysdeps/x86_64/cacheinfo.c (__x86_64_data_cache_size_half): Renamed
4652         from __x86_64_core_cache_size_half.
4653         (init_cacheinfo): Compute shared cache size for AMD processors with
4654         shared L3 correctly.
4655         * sysdeps/x86_64/memcpy.S: Adjust for __x86_64_data_cache_size_half
4656         name change.
4657         Patch in large parts by Evandro Menezes.
4658
4659 2007-09-19  Ulrich Drepper  <drepper@redhat.com>
4660
4661         * elf/dl-lookup.c (add_dependency): Handle failing memory
4662         allocation for dependency list.  Remove unnecessary check.
4663
4664         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Avoid unnecessary
4665         open/close when determining source addresses.
4666
4667         * crypt/Makefile (libcrypt-routines): Add sha256-crypt, sha256,
4668         sha512-crypt, and sha512.
4669         (tests): Add sha256test, sha256c-test, sha512test, and sha512c-test.
4670         (distribute): Add sha256.h and sha512.h.
4671         * crypt/crypt-entry.c (crypt): Recognize the new $5$ and $6$ prefixes
4672         and call the appropriate code.
4673         * crypt/sha256-crypt.c: New file.
4674         * crypt/sha256.c: New file.
4675         * crypt/sha256.h: New file.
4676         * crypt/sha256c-test.c: New file.
4677         * crypt/sha256test.c: New file.
4678         * crypt/sha512-crypt.c: New file.
4679         * crypt/sha512.c: New file.
4680         * crypt/sha512.h: New file.
4681         * crypt/sha512c-test.c: New file.
4682         * crypt/sha512test.c: New file.
4683
4684 2007-09-19  Jakub Jelinek  <jakub@redhat.com>
4685
4686         * misc/bits/syslog.h (syslog): Remove extraneous argument from
4687         the inline, pass __USE_FORTIFY_LEVEL - 1 as second argument to
4688         __syslog_chk.
4689
4690 2007-09-18  Jakub Jelinek  <jakub@redhat.com>
4691
4692         * locale/programs/charmap-dir.c (charmap_aliases): Use %ms instead of
4693         %as in fscanf format strings.
4694
4695         * sysdeps/sparc/sparc32/elf/start.S: Remove cfi_* markup.
4696         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
4697         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__thread_start):
4698         Likewise.
4699         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__thread_start):
4700         Likewise.
4701
4702         * sysdeps/generic/ldsodefs.h (DL_LOOKUP_GSCOPE_LOCK): New definition.
4703         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Or in
4704         DL_LOOKUP_GSCOPE_LOCK into flags after THREAD_GSCOPE_SET_FLAG ().
4705         * elf/dl-sym.c (do_sym): Likewise.
4706         * include/link.h (struct link_map): Add l_serial field.
4707         * elf/dl-object.c (_dl_new_object): Initialize l_serial.
4708         * elf/dl-lookup.c (add_dependency): Add flags argument.
4709         Remember map->l_serial, if DL_LOOKUP_GSCOPE_LOCK is among
4710         flags, use THREAD_GSCOPE_RESET_FLAG before and
4711         THREAD_GSCOPE_SET_FLAG after
4712         __rtld_lock_lock_recursive (GL(dl_load_lock)) to avoid deadlock.
4713         Don't dereference map until it has been found on some list.
4714         If map->l_serial changed, return -1.
4715
4716 2007-09-17  Jakub Jelinek  <jakub@redhat.com>
4717
4718         * include/stdio.h (__isoc99_fscanf, __isoc99_scanf,
4719         __isoc99_sscanf, __isoc99_vscanf): New prototypes.
4720         (__isoc99_vsscanf, __isoc99_vfscanf): New prototypes, add
4721         libc_hidden_proto.
4722         * include/wchar.h (__isoc99_fwscanf, __isoc99_wscanf,
4723         __isoc99_swscanf, __isoc99_vwscanf): New prototypes.
4724         (__isoc99_vswscanf, __isoc99_vfwscanf): New prototypes,
4725         add libc_hidden_proto.
4726         * libio/stdio.h (fscanf, scanf, sscanf, vfscanf, vscanf,
4727         vsscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX
4728         conformance requested.
4729         * wcsmbs/wchar.h (fwscanf, wscanf, swscanf, vfwscanf, vwscanf,
4730         vswscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX
4731         conformance requested.
4732         * libio/bits/stdio-ldbl.h (fscanf, scanf, sscanf, vfscanf, vscanf,
4733         vsscanf): Redirect to __nldbl___isoc99_* if strict ISO C99 or POSIX
4734         conformance requested.
4735         * wcsmbs/bits/wchar-ldbl.h (fwscanf, wscanf, swscanf, vfwscanf,
4736         vwscanf, vswscanf): Redirect to __nldbl___isoc99_* if strict
4737         ISO C99 or POSIX conformance requested.
4738         * stdio-common/Versions (libc): Export __isoc99_scanf@@GLIBC_2.7,
4739         __isoc99_vscanf@@GLIBC_2.7, __isoc99_fscanf@@GLIBC_2.7,
4740         __isoc99_vfscanf@@GLIBC_2.7, __isoc99_sscanf@@GLIBC_2.7
4741         and __isoc99_vsscanf@@GLIBC_2.7.
4742         * stdio-common/Makefile (routines): Add isoc99_scanf, isoc99_vscanf,
4743         isoc99_fscanf, isoc99_vfscanf, isoc99_sscanf and isoc99_vsscanf.
4744         (tests): Add scanf14.
4745         (CFLAGS-vfprintf.c, CFLAGS-fprintf.c, CFLAGS-printf.c,
4746         CFLAGS-vfwprintf.c, CFLAGS-vfscanf.c, CFLAGS-vfwscanf.c,
4747         CFLAGS-fscanf.c, CFLAGS-scanf.c, CFLAGS-isoc99_vfscanf.c,
4748         CFLAGS-isoc99_vscanf.c, CFLAGS-isoc99_fscanf.c,
4749         CFLAGS-isoc99_scanf.c): Add $(exceptions).
4750         (CFLAGS-scanf15.c): Add various -I paths to prevent the compiler
4751         from using internal headers.
4752         * wcsmbs/Versions (libc): Export __isoc99_wscanf@@GLIBC_2.7,
4753         __isoc99_vwscanf@@GLIBC_2.7, __isoc99_fwscanf@@GLIBC_2.7,
4754         __isoc99_vfwscanf@@GLIBC_2.7, __isoc99_swscanf@@GLIBC_2.7
4755         and __isoc99_vswscanf@@GLIBC_2.7.
4756         * wcsmbs/Makefile (routines): Add isoc99_wscanf, isoc99_vwscanf,
4757         isoc99_fwscanf, isoc99_vfwscanf, isoc99_swscanf and isoc99_vswscanf.
4758         (CFLAGS-isoc99_wscanf.c, CFLAGS-isoc99_fwscanf.c,
4759         CFLAGS-isoc99_vwscanf.c, CFLAGS-isoc99_vfwscanf.c): Add $(exceptions).
4760         (CPPFLAGS): Add -D_IO_MTSAFE_IO if needed.
4761         * stdio-common/isoc99_scanf.c: New file.
4762         * stdio-common/isoc99_vsscanf.c: New file.
4763         * stdio-common/isoc99_vscanf.c: New file.
4764         * stdio-common/isoc99_vfscanf.c: New file.
4765         * stdio-common/isoc99_fscanf.c: New file.
4766         * stdio-common/isoc99_sscanf.c: New file.
4767         * wcsmbs/isoc99_fwscanf.c: New file.
4768         * wcsmbs/isoc99_vswscanf.c: New file.
4769         * wcsmbs/isoc99_swscanf.c: New file.
4770         * wcsmbs/isoc99_wscanf.c: New file.
4771         * wcsmbs/isoc99_vwscanf.c: New file.
4772         * wcsmbs/isoc99_vfwscanf.c: New file.
4773         * libio/libio.h (_IO_FLAGS2_SCANF_STD): Define.
4774         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Also
4775         clear _IO_FLAGS2_SCANF_STD bit from _flags2.
4776         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Don't
4777         handle %as, %aS and %a[ if _IO_FLAGS2_SCANF_STD is set in _flags2.
4778         * stdio-common/scanf14.c: New test.
4779         * stdio-common/scanf15.c: New test.
4780         * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add
4781         isoc99_scanf, isoc99_fscanf, isoc99_sscanf,
4782         isoc99_vscanf, isoc99_vfscanf, isoc99_vsscanf,
4783         isoc99_wscanf, isoc99_fwscanf, isoc99_swscanf,
4784         isoc99_vwscanf, isoc99_vfwscanf and isoc99_vswscanf.
4785         * sysdeps/ieee754/ldbl-opt/Versions (libc): Export
4786         __nldbl___isoc99_scanf@@GLIBC_2.7,
4787         __nldbl___isoc99_fscanf@@GLIBC_2.7,
4788         __nldbl___isoc99_sscanf@@GLIBC_2.7,
4789         __nldbl___isoc99_vscanf@@GLIBC_2.7,
4790         __nldbl___isoc99_vfscanf@@GLIBC_2.7,
4791         __nldbl___isoc99_vsscanf@@GLIBC_2.7,
4792         __nldbl___isoc99_wscanf@@GLIBC_2.7,
4793         __nldbl___isoc99_fwscanf@@GLIBC_2.7,
4794         __nldbl___isoc99_swscanf@@GLIBC_2.7,
4795         __nldbl___isoc99_vwscanf@@GLIBC_2.7,
4796         __nldbl___isoc99_vfwscanf@@GLIBC_2.7
4797         and __nldbl___isoc99_vswscanf@@GLIBC_2.7.
4798         * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__isoc99_scanf,
4799         __isoc99_fscanf, __isoc99_sscanf, __isoc99_vscanf,
4800         __isoc99_vfscanf, __isoc99_vsscanf, __isoc99_wscanf,
4801         __isoc99_fwscanf, __isoc99_swscanf, __isoc99_vwscanf,
4802         __isoc99_vfwscanf, __isoc99_vswscanf): Add NLDBL_DECL.
4803         * sysdeps/ieee754/ldbl-opt/nldbl-compat.c
4804         (__nldbl___isoc99_scanf, __nldbl___isoc99_fscanf,
4805         __nldbl___isoc99_sscanf, __nldbl___isoc99_vscanf,
4806         __nldbl___isoc99_vfscanf, __nldbl___isoc99_vsscanf,
4807         __nldbl___isoc99_wscanf, __nldbl___isoc99_fwscanf,
4808         __nldbl___isoc99_swscanf, __nldbl___isoc99_vwscanf,
4809         __nldbl___isoc99_vfwscanf, __nldbl___isoc99_vswscanf): New
4810         functions.
4811         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfscanf.c: New file.
4812         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_swscanf.c: New file.
4813         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vwscanf.c: New file.
4814         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_wscanf.c: New file.
4815         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_scanf.c: New file.
4816         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_sscanf.c: New file.
4817         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vsscanf.c: New file.
4818         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fwscanf.c: New file.
4819         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfwscanf.c: New file.
4820         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vswscanf.c: New file.
4821         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vscanf.c: New file.
4822         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fscanf.c: New file.
4823
4824         * stdio-common/Makefile (tests): Add scanf13.
4825         (scanf13-ENV): New.
4826         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Handle
4827         m modifier followed by l.
4828         (STRING_ARG): Add width argument.
4829         (_IO_vfscanf_internal) <case L_('c')>: Handle %mc.
4830         <case L_('C')>: Handle %mlc and %mC.
4831         <case L_('s'), case L_('S'), case L_('[')>: Adjust STRING_ARG
4832         arguments.
4833         * stdio-common/scanf13.c: New test.
4834
4835         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Clear
4836         the _IO_FLAGS2_FORTIFY bit from _flags2 rather than _flags.
4837
4838 2007-09-18  Ulrich Drepper  <drepper@redhat.com>
4839
4840         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Correct return value
4841         type and __THROW marker of splice, vmsplice, and tee.
4842         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
4843         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
4844         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
4845         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
4846         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
4847         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
4848         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
4849         * sysdeps/unix/sysv/linux/syscalls.list: Mark splice, vmsplice, and tee
4850         as cancellation points.
4851
4852 2003-11-01  Daniel Jacobowitz  <dan@debian.org>
4853
4854         * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion): Don't
4855         parse more than three parts of the version number.
4856
4857 2007-09-15  Ulrich Drepper  <drepper@redhat.com>
4858
4859         * stdio-common/vfscanf.c (_IO_vfwscanf): Add support for 'm'
4860         modifier.  Patch by Jakub Jelinek.
4861
4862 2007-08-26  Jakub Jelinek  <jakub@redhat.com>
4863
4864         * sysdeps/unix/sysv/linux/i386/Makefile (sysdep_routines): Add
4865         call_fallocate in misc subdir.
4866         * sysdeps/unix/sysv/linux/i386/call_fallocate.S: New file.
4867         * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate64): Remove.
4868         * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: Use __call_fallocate
4869         instead of __fallocate64.
4870         * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: Likewise.
4871
4872 2007-09-15  Jakub Jelinek  <jakub@redhat.com>
4873
4874         * rt/Versions (librt): Export __mq_open_2@@GLIBC_2.7.
4875         * rt/Makefile (headers): Add bits/mqueue2.h.
4876         * rt/mqueue.h: Include bits/mqueue2.h if -D_FORTIFY_SOURCE=2,
4877         optimizing with GCC and __va_arg_pack_len is defined.
4878         * rt/bits/mqueue2.h: New file.
4879         * rt/mq_open.c (__mq_open): Renamed from mq_open.
4880         (mq_open): New strong_alias.
4881         (__mq_open_2): New function.
4882         * sysdeps/unix/sysv/linux/mq_open.c (__mq_open): Renamed from mq_open.
4883         (mq_open): New strong_alias.
4884         (__mq_open_2): New function.
4885         * debug/Versions (libc): Export __fortify_fail@@GLIBC_PRIVATE.
4886         * Versions.def (librt): Add GLIBC_2.7 version.
4887         * debug/fortify_fail.c (__fortify_fail): Add libc_hidden_def.
4888         * include/stdio.h (__fortify_fail): Add libc_hidden_proto.
4889
4890         * misc/sys/cdefs.h (__errordecl, __va_arg_pack_len): Define.
4891         * io/fcntl.h: Include bits/fcntl2.h when __va_arg_pack_len
4892         is defined rather than when not C++.
4893         * io/bits/fcntl2.h (__open_alias, __open64_alias, __openat_alias,
4894         __openat64_alias): New redirects.
4895         (__open_too_many_args, __open_missing_mode, __open64_too_many_args,
4896         __open64_missing_mode, __openat_too_many_args, __openat_missing_mode,
4897         __openat64_too_many_args, __openat64_missing_mode): New __errordecls.
4898         (open, open64, openat, openat64): Rewrite as __extern_always_inline
4899         functions instead of function-like macros.
4900
4901 2007-09-14  H.J. Lu  <hongjiu.lu@intel.com>
4902
4903         * sysdeps/i386/i586/memcpy.S (__memcpy_chk): New definition.
4904         * sysdeps/i386/i586/mempcpy.S (__memcpy_chk): New definition.
4905         * sysdeps/i386/i586/memset.S (__memset_chk): New definition.
4906
4907 2007-09-15  Mike Frysinger  <vapier@gentoo.org>
4908
4909         * inet/inet_net.c: Reset digit to 0 for inputs starting with "0x".
4910         * inet/tst-network.c (tests): Add edge case tests for "0", "0x", "0x0".
4911
4912 2007-09-14  Mike Frysinger  <vapier@gentoo.org>
4913
4914         * inet/tst-network.c: Increment ERRORS for failing tests.
4915
4916 2007-09-07  Jakub Jelinek  <jakub@redhat.com>
4917
4918         * misc/sys/cdefs.h (__va_arg_pack): Define for GCC 4.3+.
4919         * misc/bits/syslog.h (syslog): When __va_arg_pack is defined,
4920         implement as __extern_always_inline function.
4921         (vsyslog): Define as __extern_always_inline function unconditionally.
4922         * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf):
4923         When __va_arg_pack is defined, implement as __extern_always_inline
4924         functions.
4925         (vsprintf, vsnprintf, vprintf, vfprintf): Define as
4926         __extern_always_inline functions unconditionally.
4927         * libio/bits/stdio.h (vprintf): Ifdef out the inline when
4928         bits/stdio2.h will be included.
4929         * wcsmbs/bits/wchar2.h (__swprintf_alias): New redirect.
4930         (swprintf, wprintf, fwprintf): When __va_arg_pack is defined,
4931         implement as __extern_always_inline functions.
4932         (vswprintf, vwprintf, vfwprintf): Define as
4933         __extern_always_inline functions unconditionally.
4934         * debug/tst-chk1.c (do_test): Enable remaining tests for C++.
4935
4936 2007-09-03  Jakub Jelinek  <jakub@redhat.com>
4937
4938         * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Only
4939         define in C++ for GCC 4.3+, in C++ always use __gnu_inline__
4940         attribute.
4941         * include/features.h (__USE_EXTERN_INLINES): Define only when
4942         __extern_inline is defined.
4943         * stdlib/stdlib.h: Include bits/stdlib.h when __extern_always_inline
4944         is defined instead of when not __cplusplus.
4945         * misc/sys/syslog.h: Include bits/syslog.h when __extern_always_inline
4946         is defined instead of when not __cplusplus.
4947         * socket/sys/socket.h: Include bits/socket2.h when
4948         __extern_always_inline is defined instead of when not __cplusplus.
4949         * libio/stdio.h: Include bits/stdio2.h when __extern_always_inline
4950         is defined instead of when not __cplusplus.
4951         * posix/unistd.h: Include bits/unistd.h when __extern_always_inline
4952         is defined instead of when not __cplusplus.
4953         * string/string.h: Include bits/string3.h when __extern_always_inline
4954         is defined instead of when not __cplusplus.
4955         * wcsmbs/wchar.h: Include bits/wchar2.h when __extern_always_inline
4956         is defined instead of when not __cplusplus.
4957         (btowc, wctob): Don't guard the inlines with ifndef __cplusplus.
4958         * io/fcntl.h: Don't include bits/fcntl2.h if __extern_always_inline
4959         is not defined.
4960         * misc/bits/syslog-ldbl.h: Guard *_chk stuff with
4961         defined __extern_always_inline instead of !defined __cplusplus.
4962         * libio/bits/stdio-ldbl.h: Likewise.
4963         * wcsmbs/bits/wchar-ldbl.h: Likewise.
4964         * misc/bits/syslog.h (syslog): Don't define for C++.
4965         (vsyslog): Use __extern_always_inline function for C++ instead of
4966         a macro.
4967         * libio/bits/stdio.h (__STDIO_INLINE): Define to __extern_inline
4968         whenever that macro is defined.
4969         (vprintf): Don't provide the inline for C++.
4970         (fread_unlocked, fwrite_unlocked): Don't define the macros for C++.
4971         * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf): Don't
4972         define the macros for C++.
4973         (vsprintf, vsnprintf, vprintf, vfprintf): Define as
4974         __extern_always_inline functions for C++.
4975         * io/sys/stat.h (stat, lstat, fstat, fstatat, mknod, mknodat,
4976         stat64, lstat64, fstat64, fstatat64): Don't define if not
4977         __USE_EXTERN_INLINES.
4978         * wcsmbs/bits/wchar2.h: Fix #error message.
4979         (swprintf, wprintf, fwprintf): Don't define the macros for C++.
4980         (vswprintf, vwprintf, vfwprintf): Define using
4981         __extern_always_inline functions for C++.
4982         * string/bits/string3.h: Don't #undef macros if __cplusplus.
4983         (memcpy, memmove, mempcpy, memset, bcopy, bzero, strcpy, stpcpy,
4984         strncpy, strcat, strncat): Define as __extern_always_inline
4985         functions instead of macros for C++.
4986         * math/bits/cmathcalls.h: Guard __extern_inline routines with
4987         defined __extern_inline.
4988         * sysdeps/alpha/fpu/bits/mathinline.h (__MATH_INLINE): Define
4989         to __extern_inline whenever that macro is defined.
4990         * sysdeps/ia64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
4991         * sysdeps/i386/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
4992         * sysdeps/i386/i486/bits/string.h (__STRING_INLINE): Likewise.
4993         * sysdeps/s390/bits/string.h (__STRING_INLINE): Likewise.
4994         * sysdeps/s390/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
4995         * sysdeps/powerpc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
4996         * sysdeps/x86_64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
4997         * sysdeps/sparc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
4998         * sysdeps/unix/sysv/linux/sys/sysmacros.h (gnu_dev_major,
4999         gnu_dev_minor, gnu_dev_makedev): Remove __extern_inline from
5000         prototypes.  Only provide __extern_inline routines if
5001         __USE_EXTERN_INLINES.
5002         * debug/Makefile: Add rules to build and run tst-{,lfs}chk{4,5,6}
5003         tests.
5004         * debug/tst-chk1.c (do_prepare, do_test): Allow compilation as C++.
5005         For now avoid some *printf tests in C++.  Skip all testing
5006         if __USE_FORTIFY_LEVEL is defined, but __extern_always_inline macro
5007         is not.
5008         * debug/tst-chk4.cc: New file.
5009         * debug/tst-chk5.cc: New file.
5010         * debug/tst-chk6.cc: New file.
5011         * debug/tst-lfschk4.cc: New file.
5012         * debug/tst-lfschk5.cc: New file.
5013         * debug/tst-lfschk6.cc: New file.
5014         * include/wchar.h (__vfwprintf_chk, __vswprintf_chk): Avoid
5015         prototypes in C++.
5016         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
5017         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
5018         __vfprintf_chk, __fgets_unlocked_chk, __fgets_chk): Likewise.
5019
5020 2007-09-13  Ulrich Drepper  <drepper@redhat.com>
5021
5022         * po/cs.po: Update from translation team.
5023
5024 2007-09-11  Roland McGrath  <roland@redhat.com>
5025
5026         * posix/Makefile ($(objpfx)getconf.speclist): Make it empty if cross
5027         compiling.
5028
5029 2007-09-07  Samuel Thibault  <samuel.thibault@ens-lyon.org>
5030
5031         * sysdeps/mach/hurd/bits/ioctls.h (TAB3): New macro.
5032
5033 2007-09-05  Roland McGrath  <roland@redhat.com>
5034
5035         * manual/signal.texi (Signaling Another Process): Typo fix.
5036         From Karl Berry <karl@freefriends.org>.
5037
5038 2007-08-29  Ulrich Drepper  <drepper@redhat.com>
5039
5040         * sysdeps/unix/sysv/linux/check_pf.c (IFA_F_OPTIMISTIC): Define to
5041         zero if not defined.
5042         (make_request): Recognize optimistic addresses and treat them like
5043         deprecated addresses.
5044         Reported by Neil Horman <nhorman@redhat.com>.
5045
5046 2007-08-28  Ulrich Drepper  <drepper@redhat.com>
5047
5048         * nscd/connections.c (send_ro_fd): Also transfer file size.
5049         * nscd/nscd_helper.c (get_mapping): If nscd also transfers the
5050         file size don't call fstat.
5051
5052         * nscd/nscd_helper.c (get_mapping): Avoid the pread call, just go
5053         ahead and map the file.  This should always be correct and we can
5054         catch problems later.
5055
5056 2007-08-28  Jakub Jelinek  <jakub@redhat.com>
5057
5058         * libio/bits/stdio2.h (__fread_chk, __fread_unlocked_chk): New
5059         prototypes.
5060         (__fread_alias, __fread_unlocked_alias): New aliases.
5061         (fread): New extern inline.
5062         (fread_unlocked): Likewise.  Undef macro before definition of
5063         the inline function.
5064         * debug/Makefile (routines): Add fread_chk and fread_u_chk.
5065         (CFLAGS-fread_chk.c, CFLAGS-fread_u_chk.c): Add.
5066         * debug/Versions (libc): Export __fread_chk@@GLIBC_2.7
5067         and __fread_unlocked_chk@@GLIBC_2.7.
5068         * debug/fread_chk.c: New file.
5069         * debug/fread_u_chk.c: New file.
5070         * debug/tst-chk1.c (do_test): Add fread and fread_unlocked tests.
5071
5072 2007-08-27  Jakub Jelinek  <jakub@redhat.com>
5073
5074         * sysdeps/unix/sysv/linux/syscalls.list
5075         (personality): Change caller to EXTRA.
5076
5077 2007-08-25  Ulrich Drepper  <drepper@redhat.com>
5078
5079         * iconvdata/iso-2022-kr.c (BODY): Fake initialization of array buf
5080         to keep gcc quiet.
5081         * iconvdata/iso-2022-cn.c (BODY): Likewise.
5082
5083         * locale/programs/ld-collate.c (collate_output): Avoid warning if
5084         NDEBUG is defined.
5085
5086         * Makerules: Use -p option with mkdir.
5087
5088         * sunrpc/key_prot.c (xdr_unixcred): Work around gcc alias warning.
5089         * nis/nis_xdr.c (_xdr_nis_server): Likewise.
5090         (_xdr_directory_obj): Likewise.
5091         (xdr_entry_obj): Likewise.
5092         (xdr_group_obj): Likewise.
5093         (xdr_link_obj): Likewise.
5094         (xdr_table_obj): Likewise.
5095         (_xdr_nis_result): Likewise.
5096         (_xdr_ns_request): Likewise.
5097         (_xdr_ib_request): Likewise.
5098         (_xdr_nis_taglist): Likewise.
5099         (xdr_cback_data): Likewise.
5100         * nis/yp_xdr.c (xdr_ypmaplist): Likewise.
5101         (xdr_ypresp_maplist): Likewise.
5102
5103         * stdio-common/Makefile: Avoid format string warning for tst-sprint.
5104
5105         * posix/regex_internal.h: Prevent some declarations and definitions
5106         to be seen when used in tests.
5107
5108         * posix/tst-rfc3484.c (__idna_to_unicode_lzlz): Initialize *OUTPUT.
5109         * posix/tst-rfc3484-2.c (__idna_to_unicode_lzlz): Likewise.
5110
5111         * debug/Makefile: Disable format checking when compiling tst-chk?.c.
5112
5113         * config.make.in (datarootdir): Add to shut up configure.
5114
5115         * sysdeps/x86_64/cacheinfo.c (handle_amd): Fix computation of
5116         associativity for fully-associative caches.
5117
5118         * sysdeps/x86_64/cacheinfo.c (handle_amd): Handle L3 cache
5119         requests.  Fill on more associativity values for L2.
5120         Patch mostly by Evandro Menezes.
5121
5122 2007-08-24  Ulrich Drepper  <drepper@redhat.com>
5123
5124         * sysdeps/unix/sysv/linux/x86_64/init-first.c
5125         (_libc_vdso_platform_setup): Avoid using exported variable by using
5126         alias.
5127
5128         * resolv/arpa/nameser.h (NS_OPT_DNSSEC_OK): Define.
5129
5130         * sysdeps/unix/sysv/linux/i386/syscalls.list: No reason to mark
5131         fallocate64 as EXTRA.  It is not referenced if the symbol isn't
5132         defined.
5133
5134 2007-08-23  Ulrich Drepper  <drepper@redhat.com>
5135
5136         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Correctly
5137         align stack for call if pltexit is to be used.
5138
5139         [BZ #3924]
5140         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Correctly
5141         align for function call in case pltexit has to be called later.
5142
5143         * sysdeps/i386/dl-trampoline.S (_dl_runtime_resolve): Avoid
5144         implicit atomic operation when storing function pointer.
5145         (_dl_runtime_profile): Likewise.
5146
5147 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
5148
5149         * nis/nis_table.c (nis_list): Don't fail if __follow_path returned
5150         NIS_NOTFOUND.
5151
5152 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
5153
5154         [BZ #4566]
5155         * string/strtok.c: Fix typo in comment.
5156
5157         [BZ #4582]
5158         * debug/segfault.c: Fix typos in comments.
5159
5160         [BZ #4588]
5161         * stdio-common/tempnam.c: Fix comment, it is not checked that
5162         TMPDIR points to a writable directory.
5163
5164         [BZ #4726]
5165         * resolv/res_send.c (__libc_res_nsend): Initialize all of the
5166         memory allocated for the name server address.
5167
5168         [BZ #4946]
5169         * nscd/connections.c (handle_request): Using sendfile always
5170         requires that mmap is used for the database.
5171         Patch by Petr Baudis <pasky@suse.cz>.
5172
5173         [BZ #4905]
5174         * nscd/hstcache.c (cache_addhst): When reloading an entry which
5175         suddenly has two or more addresses, ignore it and remove the old
5176         entry.
5177
5178         [BZ #4814]
5179         * resolv/res_hconf.c: Prepare for compiling outside libc.
5180         * nscd/res_hconf.c: New file.
5181         * nscd/Makefile (nscd-modules): Add res_hconf.  Add rules to build
5182         the new file.
5183         * nscd/gethstbynm2_r.c (NEED__RES_HCONF): Define.
5184         * nscd/gethstbyad_r.c (NEED__RES_HCONF): Likewise.
5185
5186         * nscd/hstcache.c (cache_addhst): Minimal optimization.
5187
5188         [BZ #4925]
5189         * debug/pcprofiledump.c: Turn on internationalization by calling
5190         setlocale.  Patch mostly by Benno Schulenberg.
5191
5192         [BZ #4936]
5193         * iconv/gconv.c (__gconv): If flush was successful, clear rest of
5194         the state.
5195         * iconvdata/Makefile: Add rules to build and run bug-iconv5.
5196         * iconvdata/bug-iconv5.c: New file.
5197
5198 2007-08-04  Carlos O'Donell  <carlos@systemhalted.org>
5199
5200         [BZ #4896]
5201         * elf/elf.h: Define R_PARISC_PLABEL21L, R_PARISC_PLABEL14R,
5202         R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT, R_PARISC_TLS_GD21L,
5203         R_PARISC_TLS_GD14R, R_PARISC_TLS_GDCALL, R_PARISC_TLS_LDM21L,
5204         R_PARISC_TLS_LDM14R, R_PARISC_TLS_LDMCALL, R_PARISC_TLS_LDO21L,
5205         R_PARISC_TLS_LDO14R, R_PARISC_TLS_DTPMOD32, R_PARISC_TLS_DTPMOD64,
5206         R_PARISC_TLS_DTPOFF32, R_PARISC_TLS_DTPOFF64, R_PARISC_TLS_LE21L,
5207         R_PARISC_TLS_LE14R, R_PARISC_TLS_IE21L, R_PARISC_TLS_IE14R,
5208         R_PARISC_TLS_TPREL32, R_PARISC_TLS_TPREL64.
5209
5210 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
5211
5212         [BZ #4937]
5213         * elf/do-lookup.h (do_lookup_x): Minimal improvement in hash
5214         lookup loop.  Suggested by John Reiser.
5215
5216 2007-08-21  Jakub Jelinek  <jakub@redhat.com>
5217
5218         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Include tls.h.
5219
5220 2007-08-20  Ulrich Drepper  <drepper@redhat.com>
5221
5222         * csu/libc-start.c: Don't handle VDSO_SETUP here.
5223         * sysdeps/unix/sysv/linux/init-first.c: Handle it here instead.
5224         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: Renamed to...
5225         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...this.  New file.
5226         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Move VDSO_SETUP code
5227         to...
5228         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...here.  New file.
5229
5230 2007-08-18  Ulrich Drepper  <drepper@redhat.com>
5231
5232         * po/nl.po: Update from translation team.
5233
5234 2007-08-16  Andreas Jaeger  <aj@suse.de>
5235
5236         * locale/localeinfo.h: Make _nl_category_name_idxs extern.
5237         Reported by Peter Festner <peter.festner@ewetel.net>.
5238
5239 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
5240
5241         * login/tst-grantpt.c (test_einval): Add 3rd argument to open.
5242
5243 2007-08-16  Jakub Jelinek  <jakub@redhat.com>
5244
5245         * elf/Makefile ($(objpfx)ld.so): Use readelf -s and awk instead of nm -u
5246         to check for undefined symbols.
5247
5248         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone):
5249         If the syscall fails, set errno to the actual returned error number
5250         rather than EINVAL.
5251         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If
5252         arguments are incorrect, set errno to EINVAL, if the syscall
5253         fails, set errno to the actual returned error number.
5254
5255         * stdlib/bits/stdlib-ldbl.h (__strtold_internal): Remove.
5256         * wcsmbs/bits/wchar-ldbl.h (__wcstold_internal): Remove.
5257
5258         * sysdeps/sparc/sparc32/sparcv9b/memcpy.S: Moved to...
5259         * sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S: ... here.  New
5260         file.
5261         (ASI_PNF, ASI_BLK_P): Don't define.
5262         * sysdeps/sparc/sparc32/sparcv9v/memcpy.S: Moved to...
5263         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S: ... here.  New
5264         file.
5265         * sysdeps/sparc/sparc32/sparcv9v/memset.S: Moved to...
5266         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S: ... here.  New
5267         file.
5268
5269 2007-08-15  Jakub Jelinek  <jakub@redhat.com>
5270
5271         * sysdeps/sparc/fpu/fraiseexcpt.c (__feraiseexcept): Fix raising
5272         FE_UNDERFLOW on Niagara CPUs.
5273
5274         * sysdeps/sparc/fpu/feholdexcpt.c (feholdexcept): Clear all
5275         exceptions.
5276
5277 2007-08-14  Jakub Jelinek  <jakub@redhat.com>
5278
5279         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup): No
5280         need to check GLRO(dl_hwcap) & HWCAP_SPARC_FLUSH on sparcv9.
5281         (sparc_fixup_plt): Add do_flush argument instead of figuring whether
5282         flush should be used or not inside of the function.
5283         (elf_machine_fixup_plt, elf_machine_rela): Adjust caller.
5284
5285         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone,
5286         __thread_start): Use HIDDEN_JUMPTARGET.
5287         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone,
5288         __thread_start): Likewise.
5289         * sysdeps/unix/sysv/linux/sparc/sysdep.h (JUMPTARGET): Define.
5290
5291         * sysdeps/ieee754/ldbl-64-128/strtold_l.c (__STRTOF): Declare.
5292         Add libc_hidden_proto.
5293         (STRTOF): Add libc_hidden_proto.
5294         (___new_strtold_l, ___new_wcstold_l): New weak aliases.
5295         (strtold_l, wcstold_l): Use them as second argument for
5296         long_double_symbol.
5297
5298 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
5299
5300         * elf/dl-misc.c: Undo last change.  The kernel won't allow it.
5301
5302 2007-08-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
5303
5304         * stdlib/strtold_l.c: Include wchar.h if needed.  Add libc_hidden_def.
5305
5306 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
5307
5308         * po/bg.po: New file.  From the translation team.
5309
5310 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
5311
5312         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PSELECT,
5313         __ASSUME_PPOLL, __ASSUME_ATFCTS, __ASSUME_SET_ROBUST_LIST,
5314         __ASSUME_UTIMENSAT, __ASSUME_FALLOCATE): Update per-arch conditions
5315         when each feature was introduced.
5316
5317         * sysdeps/unix/sysv/linux/dl-vdso.c: Don't include dl-hash.h.
5318         * sysdeps/unix/sysv/linux/dl-vdso.h: Don't include dl-hash.h if NDEBUG.
5319         (CHECK_HASH): New macro.
5320         (PREPARE_VERSION): Use it.
5321
5322         * sysdeps/unix/sysv/linux/pselect.c (__generic_pselect): Only provide
5323         prototype if not __ASSUME_PSELECT.
5324         * sysdeps/unix/sysv/linux/ppoll.c (__generic_ppoll): Only provide
5325         prototype if not __ASSUME_PPOLL.
5326
5327         * sysdeps/unix/sysv/linux/dl-osinfo.h (ROUND): #undef after use.
5328
5329         * sysdeps/unix/clock_settime.c (freq, __pthread_clock_settime,
5330         hp_timing_settime): Don't define or declare if HANDLED_CPUTIME
5331         is defined.
5332
5333 2007-08-13  Ulrich Drepper  <drepper@redhat.com>
5334
5335         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
5336         (_libc_vdso_platform_setup): If vDSO is not available point
5337         __vdso_gettimeofday to the vsyscall.
5338         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S [SHARED]: Use
5339         __vdso_gettimeofday instead of vsyscall.
5340
5341 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
5342
5343         * nscd/servicescache.c: Include kernel-features.h.
5344         * nscd/gai.c: Likewise.
5345         * sysdeps/unix/sysv/linux/statfs64.c: Likewise.
5346         * sysdeps/unix/sysv/linux/fstatfs64.c: Likewise.
5347         * sysdeps/unix/sysv/linux/fxstatat.c: Likewise.
5348         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S: Likewise.
5349         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S: Likewise.
5350         * sysdeps/unix/sysv/linux/xstatconv.c: Likewise.
5351         * sysdeps/unix/sysv/linux/if_index.c: Likewise.
5352         * sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: Likewise.
5353         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
5354
5355 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
5356
5357         * elf/dl-dst.h: No need for _dl_dst_count, _dl_dst_substitute,
5358         and _dl_get_origin defines anymore.
5359
5360         * sysdeps/unix/sysv/linux/clock_gettime.c (maybe_syscall_gettime_cpu):
5361         Build fix for systems which might lack POSIX timer support.
5362
5363         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
5364         (_libc_vdso_platform_setup): Mangle function pointers before storing
5365         them.
5366         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INLINE_VSYSCALL):
5367         Demangle vdso pointer before use.
5368         (INTERNAL_VSYSCALL): Likewise.
5369
5370         * elf/cache.c (primes): Mark as const.
5371         Noted by Roland McGrath.
5372
5373 2007-08-01  Andreas Jaeger  <aj@suse.de>
5374             Jakub Jelinek  <jakub@redhat.com>
5375
5376         * elf/ldconfig.c (opt_ignore_aux_cache): Add new option.
5377         (options): Add option.
5378         (parse_opt): Handle option.
5379         (manual_link): Adjust process_file caller.  Call implicit_soname.
5380         (search_dir): Formatting.  Use and populate auxiliary cache.
5381         (main): Load and save auxiliary cache.
5382         * elf/readlib.c (process_file): Add stat_buf argument.  Pass struct
5383         stat64 from fstat64 to caller.
5384         (implicit_soname): New function.
5385         * elf/readelflib.c (process_elf_file): If DT_SONAME is not present,
5386         leave *soname as NULL.
5387         * elf/cache.c: Include libgen.h.
5388         (print_entry, print_cache, compare, save_cache, add_to_cache):
5389         Formatting and cleanups.
5390         (aux_cache_entry_id, aux_cache_entry, aux_cache_file_entry,
5391         aux_cache_file): New structures.
5392         (AUX_CACHEMAGIC): Define.
5393         (primes): New array.
5394         (aux_hash_size, aux_hash): New variables.
5395         (aux_cache_entry_id_hash, nextprime, init_aux_cache,
5396         search_aux_cache, insert_to_aux_cache, add_to_aux_cache,
5397         load_aux_cache, save_aux_cache): New functions.
5398         * sysdeps/generic/ldconfig.h (_PATH_LDCONFIG_AUX_CACHE): Define.
5399         (init_aux_cache, search_aux_cache, add_to_aux_cache,
5400         load_aux_cache, save_aux_cache, implicit_soname): New prototypes.
5401         (process_file): Adjust prototype.
5402
5403 2007-08-12  Jakub Jelinek  <jakub@redhat.com>
5404
5405         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Include stddef.h
5406         with __need_size_t.
5407
5408 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
5409
5410         * sysdeps/unix/sysv/linux/dl-vdso.c (_dl_vdso_vsym): Expect
5411         r_found_version structure as second parameter.
5412         * sysdeps/unix/sysv/linux/dl-vdso.h (PREPARE_VERSION): Define.
5413         (_dl_vdso_vsym): Change type of second parameter accordingly.
5414         * sysdeps/unix/sysv/linux/x86-64/libc-start.c
5415         (_libc_vdso_platform_setup): Adjust.
5416         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
5417         (_libc_vdso_platform_setup): Likewise.
5418
5419         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.c: Move to...
5420         * sysdeps/unix/sysv/linux/dl-vdso.c: ...here.
5421         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.h: Move to...
5422         * sysdeps/unix/sysv/linux/dl-vdso.h: ...here.
5423         * csu/libc-start.c: Pretty printing.
5424         Use VDSO_SETUP if defined.
5425         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Define VDSO_SETUP
5426         and let generic code call into _libc_vdso_platform_setup.
5427         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: New file.
5428         * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: New file.
5429         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Pretty printing.
5430         Define INLINE_VSYSCALL and INTERNAL_VSYSCALL.
5431         * sysdeps/unix/sysv/linux/x86_64/Versions: Export __vdso_clock_gettime
5432         for GLIBC_PRIVATE.
5433         * sysdeps/unix/sysv/linux/x86_64/Makefile [subdir=elf]
5434         (sysdep_rountines): Add dl-vdso.
5435
5436         * sysdeps/unix/sysv/linux/powerpc/Makefile: Use sysdep_routines instead
5437         of routines.
5438
5439         * sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h: Add
5440         attribute_hidden to __vdso_gettimeofday prototype.
5441
5442 2007-08-12  Roland McGrath  <roland@redhat.com>
5443
5444         * manual/stdio.texi (Variable Arguments Output): Fix xref to gcc manual.
5445         From: Karl Berry <karl@freefriends.org>.
5446
5447 2007-08-11  Ulrich Drepper  <drepper@redhat.com>
5448
5449         * elf/dl-misc.c (_dl_sysdep_read_whole_file): We really don't need
5450         an atime update for the files we read.
5451
5452 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
5453
5454         * shadow/lckpwdf.c (__lckpwdf): Use O_CLOEXEC if possible.
5455
5456         * nscd/connections.c: Use O_CLOEXEC if possible.  Use mkostemp
5457         instead of mkstemp.
5458
5459         * misc/Makefile (routines): Add mkostemp and mkostemp64.
5460         * misc/Versions: Export mkostemp and mkostemp64 for GLIBC_2.7.
5461         * misc/mkostemp.c: New file.
5462         * misc/mkostemp64.c: New file.
5463         * stdlib/stdlib.h: Declare the new functions.
5464         * sysdeps/posix/tempname.c: Add new parameter which is added to
5465         the flags for open.  Remove __GT_BIGFILE handling.
5466         * stdio-common/tempname.c: Likewise.
5467         * include/stdio.h: Adjust __gen_tempname prototype.
5468         Renumber __GT_* constants.
5469         * libio/oldtmpfile.c: Adjust for __gen_tempname interface change.
5470         * misc/mkdtemp.c: Likewise.
5471         * misc/mkstemp.c: Likewise.
5472         * misc/mkstemp64.c: Likewise.
5473         * misc/mktemp.c: Likewise.
5474         * stdio-common/tempnam.c: Likewise.
5475         * stdio-common/tmpfile.c: Likewise.
5476         * stdio-common/tmpfile64.c: Likewise.
5477         * stdio-common/tmpnam.c: Likewise.
5478         * stdio-common/tmpnam_r.c: Likewise.
5479
5480 2007-08-10  Roland McGrath  <roland@frob.com>
5481
5482         * sysdeps/mach/hurd/bits/ioctls.h (NLDLY, TABDLY, BSDLY, VTDLY):
5483         New macros.
5484         (NLDELAY, CRDELAY, TBDELAY, BSDELAY, VTDELAY): Define to those.
5485         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
5486
5487 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
5488
5489         * nss/nss_files/files-XXX.c (internal_setent): Use O_CLOEXEC if
5490         possible.
5491         * nss/nss_files/files-alias.c (internal_setent): Likewise.
5492         * nss/Makefile (libnss_files-routines): Add files-have_o_cloexec.
5493         * nss/nss_files/files-have_o_cloexec.c: New file.
5494
5495         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Use O_CLOEXEC if
5496         available.
5497
5498 2007-08-10  Jakub Jelinek  <jakub@redhat.com>
5499
5500         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c (___new_strtold_l,
5501         ___new_wcstold_l): New weak aliases.
5502         (strtold_l, wcstold_l): Use them as second argument for
5503         long_double_symbol.
5504
5505 2007-08-09  Ulrich Drepper  <drepper@redhat.com>
5506
5507         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: Use correct
5508         register in test for error.
5509
5510         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_CLOEXEC): Define.
5511         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_CLOEXEC): Likewise.
5512
5513         * po/sv.po: Update from translation team.
5514
5515 2007-08-06  Roland McGrath  <roland@redhat.com>
5516
5517         * include/stdlib.h: Add libc_hidden_proto for strto*, __strto*_l.
5518         Remove __strto*_l inlines.
5519         * include/wchar.h: Add libc_hidden_proto for wcsto*, __wcsto*_l.
5520         * stdlib/strtod.c: Add libc_hidden_def.
5521         * stdlib/strtod_l.c: Likewise.
5522         * stdlib/strtold.c [__LONG_DOUBLE_MATH_OPTIONAL]: Add libc_hidden_proto
5523         for __new_strtold and __new_wcstold.
5524         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c: Add libc_hidden_proto for
5525         __STRTOF, STRTOF.
5526         * stdlib/strtol.c: Add libc_hidden_def.
5527         * stdlib/strtol_l.c: Likewise.
5528         * sysdeps/wordsize-64/strtol.c: Add libc_hidden_ver for strtoll and
5529         strtoq.
5530
5531         * scripts/data/localplt-powerpc-linux-gnu.data: New file.
5532
5533         * scripts/data/localplt-x86_64-linux-gnu.data: File renamed to ...
5534         * scripts/data/localplt-generic.data: ... here.
5535         * elf/Makefile (check-data): Get generic file if no other.
5536         ($(objpfx)check-localplt.out): Make target unconditional.
5537
5538         * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion):
5539         Use ElfW(Nhdr).
5540
5541 2007-08-05  Ulrich Drepper  <drepper@redhat.com>
5542
5543         * po/zh_CN.po: Updated translation from translation team.
5544
5545 2007-08-05  Jakub Jelinek  <jakub@redhat.com>
5546
5547         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket):
5548         Don't use CGOTSETUP and CGOTRESTORE macros.
5549
5550 2007-08-04  Roland McGrath  <roland@redhat.com>
5551
5552         * posix/Makefile ($(objpfx)getconf.speclist): Fix typo.
5553
5554 2007-08-04  Jakub Jelinek  <jakub@redhat.com>
5555
5556         * io/bits/fcntl2.h (open, open64, openat, openat64): Add
5557         __extension__ around the whole statement expression.
5558
5559 2007-08-04  Ulrich Drepper  <drepper@redhat.com>
5560
5561         * sysdeps/unix/opendir.c (__alloc_dir): Correct order of DIR
5562         elements during initialization.
5563
5564         * po/pl.po: Updated translation from translation team.
5565         * po/tr.po: Likewise.
5566         * po/nl.po: Likewise.
5567
5568 2007-08-03  Ulrich Drepper  <drepper@redhat.com>
5569
5570         * rt/aio.h: Add __nonnull attributes.
5571
5572 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
5573
5574         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Properly handle -0.
5575         * stdlib/Makefile (tests): Add tst-strtod5.
5576         (tst-strtod5-ENV): New.
5577         * stdlib/tst-strtod5.c: New file.
5578
5579         * intl/dcigettext.c (_nl_find_msg): Free encoding if __gconv_open
5580         failed.
5581         * intl/finddomain.c (_nl_find_domain): Free normalized_codeset
5582         on failure.
5583
5584         * elf/dl-load.c (decompose_rpath): Free copy if result couldn't be
5585         allocated.
5586
5587 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
5588
5589         * rt/mqueue.h (mq_timedreceive, mq_timedsend): Fix nonnull argument
5590         numbers.
5591
5592 2007-08-02  Ulrich Drepper  <drepper@redhat.com>
5593
5594         * io/Makefile (aux): Add have_o_cloexec.
5595         * include/fcntl.h: Declare __have_o_cloexec.
5596         * io/have_o_cloexec.c: New file.
5597         * sysdeps/unix/opendir.c (__opendir): Use O_CLOEXEC is available.
5598         (__alloc_dir): If O_CLOEXEC has been used, don't duplicate the
5599         fcntl call if not necessary.
5600         * login/utmp_file.c (setutent_file): Use __have_o_cloexec instead
5601         of local variable.
5602
5603         * sysdeps/unix/opendir.c (__alloc_dir): Don't initialize ->data.
5604         Avoid memset, add explicit initialization.
5605         * sysdeps/unix/dirstream.h (struct __dirstream): Move data elemtn
5606         to the end and change into zero-sized array.
5607         Move lock member to fill a hole on 64-bit platforms.
5608
5609         * stdlib/stdlib.h: Remove __strto*_internal prototypes and strto*
5610         inline functions.
5611         * include/stdlib.h: Add __strto*_internal prototypes here.
5612         * wcsmbs/wchar.h: Remove __wcsto*_internal prototypes and wcsto*
5613         inline functions.
5614         * include/wchar.h: Add __wcsto*_internal prototypes.
5615         * sysdeps/generic/inttypes.h: No need to protect the declaration
5616         of the __strto*_internal and __wcsto*_internal members here.
5617
5618         * rt/mqueue.h: Change const to __const and add nonnull attributes.
5619
5620 2007-08-02  Roland McGrath  <roland@redhat.com>
5621
5622         * posix/Makefile ($(inst_libexecdir)/getconf): Make hard links to
5623         $(inst_bindir)/getconf if possible.
5624
5625         * posix/Makefile ($(objpfx)getconf.speclist): New target.
5626         (generated): Add it.
5627         ($(inst_libexecdir)/getconf): Use it.
5628
5629 2007-08-01  Ulrich Drepper  <drepper@redhat.com>
5630
5631         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Using
5632         /proc is faster and sufficient.  /sys is still needed for
5633         __get_nprocs_conf.
5634
5635 2007-08-01  Jakub Jelinek  <jakub@redhat.com>
5636
5637         * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate): Add fallocate
5638         syscall as __fallocate64.
5639         * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: New file.
5640         * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: New file.
5641
5642 2007-07-30  Jakub Jelinek  <jakub@redhat.com>
5643
5644         * stdlib/tst-strtod2.c (do_test): Use %tu in fmt string for ptrdiff_t
5645         value.
5646
5647         * stdio-common/tst-fmemopen2.c (do_test): Avoid fmt string warning
5648         if off_t is different rank from size_t.
5649
5650         * sysdeps/generic/unwind-dw2.c (extract_cie_info, execute_cfa_program,
5651         uw_frame_state_for): Avoid type punning warnings.
5652         * sysdeps/generic/unwind-dw2-fde-glibc.c
5653         (_Unwind_IteratePhdrCallback): Likewise.
5654         * sysdeps/generic/unwind-dw2-fde.c (_Unwind_Find_FDE): Likewise.
5655         (binary_search_single_encoding_fdes, binary_search_mixed_encoding_fdes,
5656         get_cie_encoding, linear_search_fdes): Don't mix char and unsigned char
5657         pointers.
5658
5659 2007-07-31  Ulrich Drepper  <drepper@redhat.com>
5660
5661         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs_conf): Count
5662         total processors using sysfs.
5663         (__get_nprocs): Use sysfs to determine which processors are online.
5664
5665 2007-07-31  Jakub Jelinek  <jakub@redhat.com>
5666
5667         * sysdeps/unix/sysv/linux/posix_fallocate.c (posix_fallocate): Fix
5668         syscall arguments count.
5669
5670         * stdio-common/tfformat.c (sprint_doubles): Add 12 new tests.
5671
5672 2007-07-30  Roland McGrath  <roland@redhat.com>
5673
5674         * manual/libc.texinfo: Update copyrights, formatting magic, and
5675         @dircategory.  From Karl Berry <karl@freefriends.org>.
5676
5677 2007-07-29  Ulrich Drepper  <drepper@redhat.com>
5678
5679         [BZ #4860]
5680         * io/Makefile (headers): Add bits/fcntl2.h.
5681
5682         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO_S): Optimize
5683         using gcc builtin.
5684         (__CPU_EQUAL_S): Likewise.
5685
5686         * posix/Makefile (routines): Add sched_cpualloc and sched_cpufree.
5687         (tests): Add tst-cpuset.
5688         * posix/sched_cpualloc.c: New file.
5689         * posix/sched_cpufree.c: New file.
5690         * posix/tst-cpuset.c: New file.
5691         * posix/Versions: Export __sched_cpualloc and __sched_cpufree for
5692         GLIBC_2.7.
5693         * sysdeps/unix/sysv/linux/bits/sched.h: Define __CPU_*_S macros.
5694         * posix/sched.h: Define old CPU_* macros in temers of __CPU_*_S
5695         macros.  Define CPU_*_S macros.
5696
5697 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
5698
5699         * posix/getconf.c (vars): Add missing _SC_LEVEL4_CACHE_LINESIZE
5700         entry.
5701
5702         [BZ #4858]
5703         * stdio-common/printf_fp.c (___printf_fp): Fix special case of
5704         #.0g and value rounded to 1.0.
5705         * stdio-common/tfformat.c (sprint_doubles): Add two new tests.
5706
5707 2007-07-26  Jakub Jelinek  <jakub@redhat.com>
5708
5709         * locale/programs/ld-monetary.c (monetary_finish): Avoid range check
5710         for int_frac_digits and frac_digits.
5711
5712         * login/logout.c (logout): Avoid aliasing violation.
5713         * login/logwtmp.c (logwtmp): Likewise.
5714
5715         * libio/genops.c (_IO_un_link): Avoid aliasing violation.
5716
5717         * nscd/selinux.c (preserve_capabilities): Initialize new_caps
5718         to avoid warning.
5719         * iconv/gconv_open.c (__gconv_open): Initialize ptr to avoid
5720         warning.
5721         * nis/nis_subr.c (nis_getnames): Initialize saveptr to avoid
5722         warning.
5723         * resolv/inet_ntop.c (inet_ntop6): Initialize best.len and cur.len
5724         to avoid warnings.
5725
5726         * nss/nsswitch.c (__nss_lookup_function): Don't cast &ni->known to
5727         void **.
5728         * nss/nsswitch.h (service_user): Use void * type for KNOWN field.
5729
5730         * nss/nss_files/files-hosts.c (LINE_PARSER): Cast host_addr to
5731         char * to avoid warning.
5732         * nis/nss_nis/nis-hosts.c (LINE_PARSER): Likewise.
5733
5734         * timezone/Makefile (CFLAGS-zdump.c): Add -fwrapv.
5735
5736         * locale/programs/ld-ctype.c (ctype_finish, set_class_defaults,
5737         allocate_arrays): Cast second argument to charmap_find_symbol
5738         to char * to avoid warnings.
5739
5740         * locale/programs/repertoire.c (repertoire_new_char): Change
5741         from_nr, to_nr and cnt to unsigned long, adjust printf format
5742         string.
5743
5744         * locale/programs/ld-collate.c (insert_value, handle_ellipsis):
5745         Cast second argument to new_element to char * to avoid warnings.
5746
5747         * locale/weightwc.h (findidx): Cast &extra[-i] to const int32_t *.
5748
5749         * intl/gettextP.h (struct loaded_domain): Change plural to const
5750         struct expression *.
5751         * intl/plural-eval.c (plural_eval): Change first argument to
5752         const struct expression *.
5753         * intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Change first
5754         argument to const struct expression **.
5755         * intl/plural-exp.h (EXTRACT_PLURAL_EXPRESSION, plural_eval): Adjust
5756         prototypes.
5757         * intl/loadmsgcat (_nl_unload_domain): Cast away const
5758         in call to __gettext_free_exp.
5759
5760         * posix/fnmatch.c (fnmatch): Rearrange code to avoid maybe
5761         unitialized wstring/wpattern var warnings.
5762
5763         * posix/runtests.c (struct a_test): Make data field const char *.
5764
5765         * stdio-common/tst-sprintf2.c (main): Don't declere u, v and buf
5766         vars if not LDBL_MANT_DIG >= 106.
5767
5768         * stdio-common/Makefile (CFLAGS-vfwprintf.c): Add -Wno-unitialized.
5769
5770         * stdio-common/vfprintf.c (vfprintf): Cast first arugment to
5771         __find_specmb to avoid warning.
5772
5773         * rt/tst-mqueue1.c (do_one_test): Add casts to avoid warnings.
5774
5775         * debug/test-strcpy_chk.c (do_tests, do_random_tests): Add casts
5776         to avoid warnings.
5777
5778         * sysdeps/ieee754/ldbl-96/s_roundl.c (huge): Add L suffix to
5779         initializer.
5780
5781         * sysdeps/unix/clock_gettime.c (clock_gettime): Only define
5782         tv var when it will be actually used.
5783
5784         * sunrpc/rpc_cmsg.c (xdr_callmsg): Cast IXDR_PUT_* to void
5785         to avoid warnings.
5786
5787         * iconvdata/gbk.c (BODY): Make buf and cp char instead of unsigned
5788         char array resp. pointer.
5789         * iconvdata/iso-2022-kr.c (BODY): Make buf unsigned char instead of
5790         char array.
5791         * iconvdata/cns11643.h (cns11643_to_ucs4): Change first argument
5792         to const unsigned char **.
5793         (ucs4_to_cns11643): Change second argument to unsigned char *.
5794         * iconvdata/euc-tw.c (BODY): Change endp type to
5795         const unsigned char *.
5796         * iconvdata/iso-ir-165.h (ucs4_to_isoir165): Change second argument
5797         to unsigned char *.
5798         * iconvdata/ibm1008_420.c (LOOP_NEED_FLAGS): Don't define.
5799         * iconvdata/iso-2022-cn.c (BODY): Change buf to unsigned char array.
5800         * iconvdata/iso-2022-cn-ext.c (BODY): Change buf, tmpbuf, tmp
5801         types to unsigned char pointers/arrays instead of char.
5802         * iconvdata/jis0201.h (ucs4_to_jisx0201): Change second argument
5803         to unsigned char *.
5804         * iconvdata/jis0208.h (ucs4_to_jisx0208): Likewise.
5805         * iconvdata/jis0212.h: Include assert.h.
5806         (ucs4_to_jisx0212): Change second argument to unsigned char *.
5807         assert that if cp[0] is not '\0', cp[1] is not '\0' either instead
5808         of trying to handle that.
5809         * iconvdata/euc-kr.c (euckr_from_ucs4): Initialize also cp[1] to
5810         shut up a warning.
5811         * iconvdata/euc-jp-ms.c (from_ucs4_lat1, from_ucs4_greek,
5812         from_ucs4_cjk, from_ucs4_cjkcpt, from_ucs4_extra): Change type to
5813         two dimensional const unsigned char arrays.
5814         (BODY): Cast "" to (const unsigned char *) for assignment to cp.
5815         Initialize endp to inptr to shut up a warning.
5816
5817 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
5818
5819         [BZ #4772]
5820         * time/strptime_l.c (__strptime_internal): Silently ignore
5821         strftime modifiers and field width in recursive calls.
5822
5823         * include/time.h (enum ptime_locale_status): Remove.
5824         (__strptime_internal): Remove decided and era_cnt arguments,
5825         add statep argument.
5826         * time/strptime_l.c (__strptime_internal): Remove decided
5827         and era_cnt arguments, add statep argument.  Don't recompute
5828         any fields in recursive calls, only update caller's tm
5829         and state, if recursive call fails, don't change tm nor
5830         any state.
5831         (get_alt_number): Adjust.
5832         (recursive): Adjust caller.
5833         (strptime): Likewise.
5834         * time/strptime.c (strptime): Likewise.
5835
5836 2007-07-19  Jakub Jelinek  <jakub@redhat.com>
5837
5838         * iconv/gconv_int.h (__GCONV_NULCONV): New internal only error code.
5839         * iconv/gconv_cache.c (__gconv_lookup_cache): Return __GCONV_NULCONV
5840         if from and to charsets are the same.
5841         * iconv/gconv_db.c (__gconv_find_transform): Likewise.
5842         * intl/dcigettext.c (_nl_find_msg): Return NULL even if __gconv_open
5843         returns __GCONV_NOCONV, but not for __GCONV_NULCONV.
5844
5845 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
5846
5847         * wcsmbs/wchar.h: Only define wint_t if __need_wint_t.
5848         Don't define wint_t when __need_mbstate_t unless it
5849         is necessary.
5850         (__mbstate_t): Use __WINT_TYPE__ rather than wint_t
5851         in the typedef if possible.
5852         * wctype/wctype.h (wint_t): Define by including
5853         wchar.h with __need_wint_t instead of including stddef.h
5854         with __need_wint_t and as fallback definining it ourselves.
5855         * iconv/gconv.h (__need_wint_t): Define before including
5856         wchar.h.
5857         * sysdeps/gnu/_G_config.h: Don't include gconv.h if not _LIBC
5858         or _GLIBCPP_USE_WCHAR_T.
5859         (__need_wchar_t): Don't define
5860         if not _LIBC or _GLIBCPP_USE_WCHAR_T.
5861         (__need_wint_t): Don't define before including stddef.h,
5862         define before including wchar.h only if _LIBC or
5863         _GLIBCPP_USE_WCHAR_T.
5864         (_G_iconv_t): Don't define if not _LIBC or _GLIBCPP_USE_WCHAR_T.
5865         * sysdeps/mach/hurd/_G_config.h: Likewise.
5866         * sysdeps/generic/_G_config.h: Likewise.
5867         * libio/libio.h (__wunderflow, __wuflow, __woverflow): Only
5868         prototype if _LIBC or _GLIBCPP_USE_WCHAR_T.
5869         (_IO_getwc_unlocked, _IO_putwc_unlocked): Only define
5870         if _LIBC or _GLIBCPP_USE_WCHAR_T.
5871
5872 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
5873
5874         * sysdeps/posix/posix_fallocate64.c: Undefine
5875         __posix_fallocate64_l64 before alias handling.
5876         * sysdeps/unix/sysv/linux/posix_fallocate.c: New file.
5877         * sysdeps/unix/sysv/linux/posix_fallocate64.c: New file.
5878         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate.c: New file.
5879         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate64.c: New file.
5880
5881         * io/tst-posix_fallocate.c: Include <fcntl.h>.
5882
5883 2007-07-23  Jakub Jelinek  <jakub@redhat.com>
5884
5885         * locale/programs/ld-collate.c (atwc): New variable.
5886         (add_to_tablewc): New toplevel function, moved from collate_output.
5887         (collate_output): Remove add_to_tablewc nested function.
5888
5889         * iconv/iconvconfig.c (hash_table, hash_size): New toplevel vars.
5890         (name_insert): New function.
5891         (write_output): Remove hash_table and hash_size vars and name_insert
5892         nested function.
5893
5894 2007-07-24  Roland McGrath  <roland@redhat.com>
5895
5896         * Makerules (install-others-programs-nosubdir): New target.
5897         (install-no-libc.a-nosubdir): Depend on it.
5898
5899         * iconv/Makefile (install-others-programs): Set this instead of
5900         install-others.
5901         * login/Makefile (install-others-programs): Likewise.
5902         * posix/Makefile (install-others-programs): Likewise.
5903
5904         * Makerules (install-no-libc.a-nosubdir): Clean up conditional
5905         dependencies.
5906
5907 2007-07-23  Ulrich Drepper  <drepper@redhat.com>
5908
5909         * io/Makefile (tests): Add tst-posix_fallocate.
5910         * io/tst-posix_fallocate.c: New file.
5911
5912         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5913         __ASSUME_FALLOCATE.
5914
5915 2007-07-22  Roland McGrath  <roland@frob.com>
5916
5917         * hurd/getdport.c: Add missing copyright year update.
5918
5919         * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU] (O_CLOEXEC): New macro.
5920         * hurd/port2fd.c (_hurd_port2fd): Implement O_CLOEXEC.
5921
5922 2007-07-22  Ulrich Drepper  <drepper@redhat.com>
5923
5924         * login/utmp_file.c (setutent_file): Use O_CLOEXEC if possible.
5925
5926         * libio/fileops.c (_IO_new_file_fopen): Recognize 'e' flag and set
5927         O_CLOEXEC is needed.
5928         * nis/nss_compat/compat-grp.c: Use 'e' flag when opening file.
5929         Avoid additional fcntl to set O_CLOEXEC if not needed.
5930         * nis/nss_compat/compat-initgroups.c: Likewise.
5931         * nis/nss_compat/compat-pwd.c: Likewise.
5932         * nis/nss_compat/compat-spwd.c: Likewise.
5933
5934 2007-07-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
5935
5936         [BZ #3665]
5937         * manual/errno.texi: Change ECANCELED value to 119.
5938
5939         [BZ #4610]
5940         * mach/lock-intern.h: Include <sys/cdefs.h>.
5941
5942         [BZ #4178]
5943         * sysdeps/mach/hurd/sigaction.c (__sigaction): Check ACT != NULL before
5944         reading A.
5945
5946         [BZ #4126]
5947         * sysdeps/mach/hurd/sigsuspend.c (sigsuspend_not_cancel): Define alias
5948         to __sigsuspend.
5949
5950         * sysdeps/mach/i386/sysdep.h: Include <dl-sysdep.h> and <tls.h>.
5951
5952 2006-06-13  Thomas Schwinge  <tschwinge@gnu.org>
5953
5954         * sysdeps/mach/hurd/tls.h: Change `ASSEMBLER' conditional to
5955         `__ASSEMBLER__'.
5956         * sysdeps/mach/hurd/i386/tls.h: Likewise.
5957
5958 2007-07-21  Ulrich Drepper  <drepper@redhat.com>
5959
5960         * nscd/nscd_helper.c (get_mapping): Use MSG_CMSG_CLOEXEC for
5961         descriptor received from nscd.
5962
5963         * sysdeps/unix/sysv/linux/bits/socket.h: Define MSG_CMSG_CLOEXEC.
5964
5965         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define O_CLOEXEC.
5966         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
5967         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
5968         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
5969         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
5970         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
5971
5972 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
5973
5974         [BZ #4816]
5975         * manual/signal.texi (Non-atomic Example): Make memory var volatile.
5976
5977         [BZ #4813]
5978         * login/forkpty.c (forkpty): Close master and slave fds on
5979         fork failure.  Patch by
5980         Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>.
5981
5982 2007-07-18  Jakub Jelinek  <jakub@redhat.com>
5983
5984         * include/features.h (__USE_ISOC95): New define.
5985         * wcsmbs/wchar.h (fwprintf, fwscanf, wprintf, wscanf, swprintf,
5986         swscanf, vfwprintf, vwprintf, vswprintf, fwide): Define even
5987         for -std=iso9899:199409.
5988         * CONFORMANCE: Remove comments about unsupported AMD1.
5989
5990 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
5991
5992         * sysdeps/ia64/sched_cpucount.c: New file.
5993         * sysdeps/powerpc/sched_cpucount.c: New file.
5994
5995         * sysdeps/unix/sysv/linux/bits/sched.h (__sched_cpucount): Add
5996         __BEGIN_DECLS/__END_DECLS around the prototype.
5997         * bits/sched.h (__sched_cpucount): Likewise.  Make second argument
5998         pointer to const cpu_set_t.
5999
6000         * bits/types.h: Don't include stddef.h, don't define __need_size_t.
6001         * signal/signal.h <__USE_BSD || __USE_XOPEN_EXTENDED>: Define
6002         __need_size_t and include stddef.h.
6003         * sysvipc/sys/msg.h: Likewise.
6004         * posix/sched.h: Likewise.
6005         * hurd/hurd/signal.h (__need_size_t): Define.
6006
6007         * CONFORMANCE: ctype.h and wctype.h no longer define size_t,
6008         neither does signal.h in pedantic ISO C namespaces.  stdio.h
6009         no longer defines wint_t or wchar_t.
6010
6011         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): New function.
6012         * debug/vfwprintf_chk.c (__vfwprintf_chk): Use
6013         _IO_acquire_lock_clear_flags2 instead of _IO_acquire_lock.
6014         * debug/vprintf_chk.c (__vprintf_chk): Likewise.
6015         * debug/vwprintf_chk.c (__vwprintf_chk): Likewise.
6016         * debug/vfprintf_chk.c (__vfprintf_chk): Likewise.
6017         * debug/fwprintf_chk.c (__fwprintf_chk): Likewise.
6018         * debug/printf_chk.c (__printf_chk): Likewise.
6019         * debug/fprintf_chk.c (__fprintf_chk): Likewise.
6020         * debug/wprintf_chk.c (__wprintf_chk): Likewise.
6021
6022         * sysdeps/pthread/bits/stdio-lock.h (_IO_acquire_lock_clear_flags2):
6023         Define.
6024
6025         * bits/confname.h (_CS_POSIX_V6_WIDTH_RESTRICTED_ENVS): Define.
6026         * posix/getconf.c (vars): Add POSIX_V6_WIDTH_RESTRICTED_ENVS.
6027
6028 2007-07-16  Jakub Jelinek  <jakub@redhat.com>
6029
6030         [BZ #4792]
6031         * stdlib/stdlib.h (realloc): Remove __attribute_malloc__.
6032         * malloc/malloc.h (realloc): Likewise.
6033
6034         * libio/iopopen.c (_IO_new_proc_open): Don't close child_std_end
6035         if one of proc_file_chain streams has that fileno.
6036         * stdio-common/Makefile (tests): Add tst-popen2.
6037         * stdio-common/tst-popen2.c: New test.
6038
6039 2007-07-14  Jakub Jelinek  <jakub@redhat.com>
6040
6041         * elf/ldconfig.c: Allow GPLv2 or any later version.
6042         * elf/readlib.c: Likewise.
6043         * elf/chroot_canon.c: Likewise.
6044         * elf/cache.c: Likewise.
6045         * nscd/mem.c: Likewise.
6046         * nscd/getpwuid_r.c: Likewise.
6047         * nscd/grpcache.c: Likewise.
6048         * nscd/aicache.c: Likewise.
6049         * nscd/getsrvbynm_r.c: Likewise.
6050         * nscd/nscd.c: Likewise.
6051         * nscd/servicescache.c: Likewise.
6052         * nscd/getsrvbypt_r.c: Likewise.
6053         * nscd/initgrcache.c: Likewise.
6054         * nscd/gethstbyad_r.c: Likewise.
6055         * nscd/gethstbynm2_r.c: Likewise.
6056         * nscd/getgrnam_r.c: Likewise.
6057         * nscd/nscd_setup_thread.c: Likewise.
6058         * nscd/getpwnam_r.c: Likewise.
6059         * nscd/gai.c: Likewise.
6060         * nscd/connections.c: Likewise.
6061         * nscd/dbg_log.c: Likewise.
6062         * nscd/cache.c: Likewise.
6063         * nscd/hstcache.c: Likewise.
6064         * nscd/nscd_conf.c: Likewise.
6065         * nscd/getgrgid_r.c: Likewise.
6066         * nscd/pwdcache.c: Likewise.
6067         * catgets/gencat.c: Likewise.
6068         * locale/programs/linereader.h: Likewise.
6069         * locale/programs/locarchive.c: Likewise.
6070         * locale/programs/ld-paper.c: Likewise.
6071         * locale/programs/locfile-kw.h: Likewise.
6072         * locale/programs/ld-address.c: Likewise.
6073         * locale/programs/xmalloc.c: Likewise.
6074         * locale/programs/ld-time.c: Likewise.
6075         * locale/programs/localedef.c: Likewise.
6076         * locale/programs/simple-hash.c: Likewise.
6077         * locale/programs/xstrdup.c: Likewise.
6078         * locale/programs/ld-numeric.c: Likewise.
6079         * locale/programs/locfile-kw.gperf: Likewise.
6080         * locale/programs/ld-collate.c: Likewise.
6081         * locale/programs/charmap-kw.gperf: Likewise.
6082         * locale/programs/charmap.h: Likewise.
6083         * locale/programs/charmap-kw.h: Likewise.
6084         * locale/programs/config.h: Likewise.
6085         * locale/programs/locfile.c: Likewise.
6086         * locale/programs/ld-ctype.c: Likewise.
6087         * locale/programs/charmap.c: Likewise.
6088         * locale/programs/ld-messages.c: Likewise.
6089         * locale/programs/repertoire.h: Likewise.
6090         * locale/programs/locale.c: Likewise.
6091         * locale/programs/ld-name.c: Likewise.
6092         * locale/programs/linereader.c: Likewise.
6093         * locale/programs/locfile.h: Likewise.
6094         * locale/programs/3level.h: Likewise.
6095         * locale/programs/ld-monetary.c: Likewise.
6096         * locale/programs/ld-measurement.c: Likewise.
6097         * locale/programs/charmap-dir.c: Likewise.
6098         * locale/programs/ld-identification.c: Likewise.
6099         * locale/programs/localedef.h: Likewise.
6100         * locale/programs/charmap-dir.h: Likewise.
6101         * locale/programs/repertoire.c: Likewise.
6102         * locale/programs/simple-hash.h: Likewise.
6103         * locale/programs/ld-telephone.c: Likewise.
6104         * locale/programs/locale-spec.c: Likewise.
6105         * locale/programs/locfile-token.h: Likewise.
6106         * posix/getconf.c: Likewise.
6107         * iconv/dummy-repertoire.c: Likewise.
6108         * iconv/iconv_charmap.c: Likewise.
6109         * iconv/iconvconfig.c: Likewise.
6110         * iconv/iconv_prog.c: Likewise.
6111         * malloc/memusagestat.c: Likewise.
6112         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Likewise.
6113
6114 2007-07-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
6115
6116         * sysdeps/sh/bsd-setjmp.S (setjmp): Use correct argument registers.
6117         * sysdeps/sh/bsd-_setjmp.S (_setjmp): Likewise.
6118         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Do correct sanity
6119         check for the first argument.
6120
6121 2007-07-12  Jakub Jelinek  <jakub@redhat.com>
6122
6123         [BZ #4775]
6124         * math/tgmath.h (__tgmath_real_type_sub): Formatting.
6125         (__tgmath_real_type): Fix if expr is const int or other const
6126         qualified integral type.
6127         (__TGMATH_UNARY_REAL_ONLY): Rewritten to avoid using statement
6128         expressions and handle const qualified arguments.
6129         (__TGMATH_BINARY_FIRST_REAL_ONLY, __TGMATH_UNARY_REAL_IMAG,
6130         __TGMATH_UNARY_REAL_IMAG_RET_REAL): Likewise.
6131         (__TGMATH_UNARY_REAL_RET_ONLY): Rewritten to avoid using
6132         statement expressions.
6133         (__TGMATH_BINARY_REAL_ONLY, __TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY,
6134         __TGMATH_TERNARY_REAL_ONLY, __TGMATH_BINARY_REAL_IMAG): Likewise.
6135         (__TGMATH_UNARY_IMAG): Define.
6136         (conj, cproj): Use __TGMATH_UNARY_IMAG macro.
6137         * math/Makefile (tests): Add test-tgmath2.
6138         (CFLAGS-test-tgmath2.c): Add.
6139         * math/test-tgmath.c (fy, dy, ly, fz, dz, lz, count_cdouble,
6140         count_cfloat, count_cldouble): New variables.
6141         (NCCALLS): Define.
6142         (main): Check number of complex calls as well.
6143         (F(compile_test)): Add complex tests and tests with const qualified
6144         arguments.
6145         (y, z, ccount): Define.
6146         (F(cacos), F(casin), F(catan), F(ccos), F(csin), F(ctan), F(cacosh),
6147         F(casinh), F(catanh), F(ccosh), F(csinh), F(ctanh), F(cexp), F(clog),
6148         F(csqrt), F(cpow), F(cabs), F(carg), F(creal), F(cimag), F(conj),
6149         F(cproj)): New functions.
6150         * math/test-tgmath2.c: New test.
6151
6152 2007-07-11  Jakub Jelinek  <jakub@redhat.com>
6153
6154         [BZ #4776]
6155         * elf/dl-load.c (_dl_rtld_di_serinfo): Output / in LD_LIBRARY_PATH,
6156         RPATH etc. as "/" rather than "", don't segfault on empty paths,
6157         instead output ".".
6158         * dlfcn/Makefile (distribute): Add glreflib3.c.
6159         (module-names): Add glreflib3.
6160         ($(objpfx)tst-dlinfo.out): Depend on glreflib3.so rather than
6161         glreflib1.so.
6162         (LDFLAGS_glreflib3.so): New.
6163         * dlfcn/tst-dlinfo.c (do_test): Load glreflib3.so instead of
6164         glreflib1.so.
6165         * dlfcn/glreflib3.c: New file.
6166
6167         * intl/finddomain.c (_nl_find_domain): If _nl_explode_name
6168         returned -1, return NULL.
6169         * intl/explodename.c (_nl_explode_name): Return -1 if
6170         _nl_normalize_codeset failed.
6171
6172 2007-07-07  Steven Munroe  <sjmunroe@us.ibm.com>
6173
6174         * sysdeps/powerpc/powerpc32/power6/memset.S: Update comments.
6175         Specify .machine power6 to get ISA-V2.0 branch hints.  Unroll loops
6176         and avoid branch misspredicts for > 31 bytes memset case.
6177         * sysdeps/powerpc/powerpc64/power6/memset.S: Likewise.
6178         Remove toc ref to __cache_line_size.
6179
6180         * sysdeps/powerpc/powerpc32/power4/memcmp.S: Specify .machine power4
6181         to get ISA-V2.0 branch hints.
6182         * sysdeps/powerpc/powerpc32/power4/memcpy.S: Likewise
6183         * sysdeps/powerpc/powerpc32/power4/memset.S: Likewise
6184         * sysdeps/powerpc/powerpc32/power6/memcpy.S: Likewise.
6185         * sysdeps/powerpc/powerpc64/power4/memcmp.S: Likewise.
6186         * sysdeps/powerpc/powerpc64/power4/memcpy.S: Likewise.
6187         * sysdeps/powerpc/powerpc64/power4/memset.S: Likewise.
6188         Remove toc ref to __cache_line_size.
6189
6190         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S:
6191         Include math_ldbl_opt.h.
6192
6193 2007-07-10  Ulrich Drepper  <drepper@redhat.com>
6194
6195         [BZ #4773]
6196         * time/strptime_l.c (__strptime_internal): Implement greedy
6197         matching of weekday and month names.
6198
6199 2007-07-09  Roland McGrath  <roland@redhat.com>
6200
6201         * elf/elf.h (NT_GNU_ABI_TAG): New macro.
6202         (ELF_NOTE_ABI): Use it.
6203         (NT_GNU_HWCAP, NT_GNU_BUILD_ID): New macros.
6204
6205 2007-07-09  Ulrich Drepper  <drepper@redhat.com>
6206
6207         * sysdeps/x86_64/cacheinfo.c (intel_02_known): Add new entries.
6208         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
6209
6210 2007-07-07  Ulrich Drepper  <drepper@redhat.com>
6211
6212         [BZ #4745]
6213         * stdio-common/vfscanf.c (_IO_vfscanf): Add additional test for EOF
6214         in loop to look for conversion specifier to avoid testing of
6215         wrong errno value.
6216         * stdio-common/Makefile (tests): Add bug18, bug18a, bug19, bug19a.
6217         * stdio-common/bug18.c: New file.
6218         * stdio-common/bug18a.c: New file.
6219         * stdio-common/bug19.c: New file.
6220         * stdio-common/bug19a.c: New file.
6221
6222 2007-07-05  Mike Frysinger  <vapier@gentoo.org>
6223
6224         * Makeconfig ($(common-objpfx)gnu/lib-names.stmp): Use LC_ALL=C when
6225         running awk script.
6226
6227 2007-07-01  Jakub Jelinek  <jakub@redhat.com>
6228
6229         * elf/dl-sysdep.c (_dl_important_hwcaps): Add integer overflow check.
6230         * elf/dl-minimal.c (__libc_memalign): Likewise.  Handle malloc (0).
6231         Return NULL if mmap failed instead of asserting it does not.
6232         (calloc): Check for integer overflow.
6233
6234         * elf/dl-minimal.c (__strtoul_internal): Fix parsing of numbers bigger
6235         than LONG_MAX / 10.
6236
6237 2007-07-03  Jakub Jelinek  <jakub@redhat.com>
6238
6239         [BZ #4702]
6240         * nis/nss-default.c: Include errno.h.
6241         (init): Preserve errno.
6242
6243 2007-07-02  Ulrich Drepper  <drepper@redhat.com>
6244
6245         * sysdeps/unix/sysv/linux/bits/socket.h (PF_UNIX): Update comment.
6246
6247 2007-06-30  Ulrich Drepper  <drepper@redhat.com>
6248
6249         * sysdeps/unix/sysv/linux/bits/socket.h: Add PF_RXRPC and AF_RXRPC.
6250
6251 2007-06-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>
6252
6253         * sysdeps/unix/sysv/linux/bits/socket.h: Add PF_IUCV and AF_IUCV.
6254
6255 2007-06-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>
6256
6257         * sysdeps/s390/dl-procinfo.c: New file.
6258         * sysdeps/s390/dl-procinfo.h: New file.
6259         * sysdeps/unix/sysv/linux/s390/dl-procinfo.h: New file.
6260
6261 2007-06-29  Jakub Jelinek  <jakub@redhat.com>
6262
6263         * elf/dl-load.c (open_verify): Find .note.ABI-tag notes even
6264         in PT_NOTE segments with multiple notes.
6265         * elf/readelflib.c (process_elf_file): Likewise.
6266
6267 2007-06-22  Ulrich Drepper  <drepper@redhat.com>
6268
6269         * nis/nis_domain_of.c (__nis_domain_of): Make the code a bit more
6270         ISO C compliant.
6271
6272 2007-06-19  Ulrich Drepper  <drepper@redhat.com>
6273
6274         * elf/dl-close.c (free_mem): Free _dl_scope_free_list.
6275
6276 2007-06-13  Jakub Jelinek  <jakub@redhat.com>
6277
6278         * include/link.h: Don't include rtld-lowlevel.h.
6279         (struct link_map): Remove l_scope_lock.
6280         * sysdeps/generic/ldsodefs.h: Don't include rtld-lowlevel.h.
6281         (_dl_scope_free_list): New field (variable) in _rtld_global.
6282         (DL_LOOKUP_SCOPE_LOCK): Remove.
6283         (_dl_scope_free): New prototype.
6284         * elf/dl-runtime.c (_dl_fixup): Don't use __rtld_mrlock_*lock.
6285         Don't pass DL_LOOKUP_SCOPE_LOCK to _dl_lookup_symbol_x.
6286         (_dl_profile_fixup): Likewise.
6287         * elf/dl-sym.c (do_sym): Likewise.  Use wrapped _dl_lookup_symbol_x
6288         whenever !RTLD_SINGLE_THREAD_P, use THREAD_GSCOPE_SET_FLAG and
6289         THREAD_GSCOPE_RESET_FLAG around it.
6290         * elf/dl-close.c (_dl_close_worker): Don't use
6291         __rtld_mrlock_{change,done}.  Call _dl_scope_free on the old
6292         scope.  Make sure THREAD_GSCOPE_WAIT () happens if any old
6293         scopes were queued or if l_scope_mem has been abandoned.
6294         * elf/dl-open.c (_dl_scope_free): New function.
6295         (dl_open_worker): Use it.  Don't use __rtld_mrlock_{change,done}.
6296         * elf/dl-support.c (_dl_scope_free_list): New variable.
6297         * elf/dl-lookup.c (add_dependency): Remove flags argument.
6298         Remove DL_LOOKUP_SCOPE_LOCK handling.
6299         (_dl_lookup_symbol_x): Adjust caller.  Remove DL_LOOKUP_SCOPE_LOCK
6300         handling.
6301         * elf/dl-object.c (_dl_new_object): Don't use
6302         __rtld_mrlock_initialize.
6303
6304 2007-06-19  Ulrich Drepper  <drepper@redhat.com>
6305
6306         * sysdeps/generic/ldsodefs.h (rtld_global): Reorder some elements
6307         to fill in holes
6308         (rtld_global_ro): Likewise.
6309
6310 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
6311
6312         * elf/dl-addr.c (_dl_addr): Skip PT_LOAD checking if l_contiguous.
6313         Move PT_LOAD checking to...
6314         (_dl_addr_inside_object): ... here, new function.
6315         * elf/dl-sym.c (do_sym): If not l_contiguous,
6316         call _dl_addr_inside_object.
6317         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise.
6318         * dlfcn/dlinfo.c (dlinfo_doit): Likewise.
6319         * elf/dl-open.c (dl_open_worker): Likewise.
6320         (_dl_addr_inside_object): New function if IS_IN_rtld.
6321         * elf/dl-load.c (_dl_map_object_from_fd): Set l_contiguous if no
6322         holes are present or are PROT_NONE protected.
6323         * include/link.h (struct link_map): Add l_contiguous field.
6324         * sysdeps/generic/ldsodefs.h (_dl_addr_inside_object): New prototype.
6325
6326 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
6327             Tomas Janousek  <tjanouse@redhat.com>
6328             Ulrich Drepper  <drepper@redhat.com>
6329
6330         [BZ #4647]
6331         * resolv/res_send.c (send_dg): Remove socket_pf.  Use ipv6_unavail
6332         member in __res_state, only convaddr4to6 if nssocks[ns] is a PF_INET6
6333         socket.
6334         * resolv/resolv.h (__res_state): Add ipv6_unavail member.  Make
6335         unused member a bitmap.
6336         * resolv/res_init.c (__res_vinit): Reset ipv6_unavail if IPv6
6337         servers are configured.
6338
6339 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
6340
6341         * elf/rtld.c (dl_main): Don't call init_tls more than once.
6342
6343 2007-06-17  Andreas Schwab  <schwab@suse.de>
6344
6345         * sysdeps/generic/initfini.c: Tell gcc about the nonstandard sections.
6346
6347 2007-06-16  Andreas Jaeger  <aj@suse.de>
6348
6349         [BZ #4125]
6350         * sysdeps/unix/sysv/linux/sys/ptrace.h
6351         (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK,
6352         PTRACE_O_TRACEVFORK, PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC,
6353         PTRACE_O_TRACEVFORKDONE, PTRACE_O_TRACEEXIT, PTRACE_O_MASK,
6354         PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK, PTRACE_EVENT_CLONE,
6355         PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE, PTRACE_EVENT_EXIT):
6356         Define.
6357         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise.
6358         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise.
6359         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise.
6360         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise.
6361
6362 2007-06-16  Ulrich Drepper  <drepper@redhat.com>
6363
6364         [BZ #4599]
6365         * sysdeps/unix/sysv/linux/check_pf.c (make_request): When
6366         determining whether there are IPv4/IPv6 addresses, ignore loopback
6367         addresses.
6368
6369 2007-06-14 Uros Bizjak <ubizjak@gmail.com>
6370
6371         * soft-fp/soft-fp.h (CMPtype): Define to "int" if undefined.
6372         * soft-fp/eqdf2.c (__eqdf2): Use CMPtype instead of int
6373         as the return type.  Change type of "r" variable to CMPtype.
6374         * soft-fp/eqsf2.c (__eqsf2): Likewise.
6375         * soft-fp/eqtf2.c (__eqtf2): Likewise.
6376         * soft-fp/gedf2.c (__gedf2): Likewise.
6377         * soft-fp/gesf2.c (__gesf2): Likewise.
6378         * soft-fp/getf2.c (__getf2): Likewise.
6379         * soft-fp/ledf2.c (__ledf2): Likewise.
6380         * soft-fp/lesf2.c (__lesf2): Likewise.
6381         * soft-fp/letf2.c (__letf2): Likewise.
6382         * soft-fp/unorddf2 (__unorddf2): Likewise.
6383         * soft-fp/unordsf2 (__unordsf2): Likewise.
6384         * soft-fp/unordtf2 (__unordtf2): Likewise.
6385
6386 2007-06-09  Ulrich Drepper  <drepper@redhat.com>
6387
6388         * elf/do-lookup.h (do_lookup_x): Read r_nlist before r_list and
6389         make sure gcc doesn't mess around with this.
6390
6391 2007-06-08  Ulrich Drepper  <drepper@redhat.com>
6392
6393         * elf/dl-lookup.c (_dl_lookup_symbol_x): Remove use of r_nlist.
6394
6395 2007-06-08  Jakub Jelinek  <jakub@redhat.com>
6396
6397         * elf/dl-close.c (_dl_close_worker): Remove all to be removed
6398         libraries from the global scope at once and call THREAD_GSCOPE_WAIT
6399         at most once per _dl_close_worker.
6400
6401 2007-06-08  Ulrich Drepper  <drepper@redhat.com>
6402
6403         * sysdeps/unix/sysv/linux/bits/sched.h: Make second parameter of
6404         __sched_cpucount as const.
6405         * posix/sched_cpucount.c: Adjust.
6406
6407         * posix/sched_cpucount.c (__sched_cpucount): Allow using special
6408         instruction for counting bits.
6409         * sysdeps/x86_64/sched_cpucount.c: New file.
6410
6411 2007-06-07  Ulrich Drepper  <drepper@redhat.com>
6412
6413         * configure.in: Avoid variable named BASH.
6414         * config.make.in: Likewise.
6415         Patch in part by Mike Frysinger.
6416
6417 2007-06-06  Jakub Jelinek  <jakub@redhat.com>
6418
6419         [BZ #4586]
6420         * sysdeps/i386/ldbl2mpn.c (__mpn_extract_long_double): Treat
6421         pseudo-zeros as zero.
6422         * sysdeps/x86_64/ldbl2mpn.c: New file.
6423         * sysdeps/ia64/ldbl2mpn.c: New file.
6424
6425 2007-06-04  Jakub Jelinek  <jakub@redhat.com>
6426
6427         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Remove
6428         unused ily variable.  Fix nextafterl on +-__LDBL_MAX__ and +-Inf.
6429         Remove unreachable code at the end.
6430
6431 2007-06-01  Steven Munroe  <sjmunroe@us.ibm.com>
6432
6433         * sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c: Correct description of
6434         ldbl-128ibm in comment.
6435         (fpclassifyl): Correct classification of denormals.
6436         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Correct
6437         return value for MIN denormal. Rewrite using long double math too
6438         correctly handle denormals and canonicalize the results.
6439
6440 2007-06-05  Jakub Jelinek  <jakub@redhat.com>
6441
6442         * sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
6443         (__mpn_construct_long_double): Fix conversion where result ought
6444         to be smaller than __LDBL_MIN__, or the low double should be
6445         denormal.  Fix decision where to negate low double - honor round
6446         to even rules.
6447         * stdio-common/tst-sprintf2.c: Include string.h.
6448         (COMPARE_LDBL): Define.
6449         (TEST): Also test whether a string hexadecimal float representation
6450         can be parsed back to the number.
6451         (main): Add a couple of further tests.
6452
6453 2007-06-04  Jakub Jelinek  <jakub@redhat.com>
6454
6455         * sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
6456         (PRINT_FPHEX_LONG_DOUBLE): Fix printing numbers where lower double
6457         is non-zero, but smaller than 2 * __DBL_MIN__.
6458         * stdio-common/tst-sprintf2.c: New test.
6459         * stdio-common/Makefile (tests): Add tst-sprintf2.
6460
6461         * math/test-misc.c (main): Don't run last batch of tests with
6462         IBM long double format.
6463
6464 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
6465
6466         * sysdeps/powerpc/powerpc32/970/fpu/Implies: New file.
6467         * sysdeps/powerpc/powerpc32/power5/fpu/Implies: New file.
6468         * sysdeps/powerpc/powerpc32/power5+/fpu/Implies: New file.
6469         * sysdeps/powerpc/powerpc32/power6/fpu/Implies: New file.
6470         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
6471         * sysdeps/powerpc/powerpc64/970/fpu/Implies: New file.
6472         * sysdeps/powerpc/powerpc64/power5/fpu/Implies: New file.
6473         * sysdeps/powerpc/powerpc64/power5+/fpu/Implies: New file.
6474         * sysdeps/powerpc/powerpc64/power6/fpu/Implies: New file.
6475         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
6476         * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/fpu/Implies: New file.
6477         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/fpu/Implies:
6478         New file.
6479         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/fpu/Implies:
6480         New file.
6481         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/fpu/Implies:
6482         New file.
6483         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/Implies:
6484         New file.
6485         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/fpu/Implies:
6486         New file.
6487         * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/fpu/Implies: New file.
6488         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/fpu/Implies:
6489         New file.
6490         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/fpu/Implies:
6491         New file.
6492         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/fpu/Implies:
6493         New file.
6494         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/Implies:
6495         New file.
6496         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/fpu/Implies:
6497         New file.
6498
6499 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
6500
6501         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: Move.
6502         * sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S: To here.
6503         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: Move.
6504         * sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S: To here.
6505         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: Move.
6506         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: To here.
6507         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: Move.
6508         * sysdeps/powerpc/powerpc32/power4/fpu/s_llroundf.S: To here.
6509
6510 2007-05-22  Steven Munroe  <sjmunroe@us.ibm.com>
6511
6512         * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S
6513         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
6514         * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S
6515         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
6516         * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S
6517         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
6518         * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S
6519         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
6520
6521 2007-05-21  Steven Munroe  <sjmunroe@us.ibm.com>
6522
6523         * sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c: New file.
6524         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: New file.
6525         * sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c: New file.
6526         * sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c: New file.
6527
6528 2007-03-15  Steven Munroe  <sjmunroe@us.ibm.com>
6529
6530         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S
6531         [LONG_DOUBLE_COMPAT]: Add compat_symbol for llrintl@@GLIBC_2_1.
6532
6533 2006-02-13  Steven Munroe  <sjmunroe@us.ibm.com>
6534
6535         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S: New File
6536         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S: New File
6537         * sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S: New File
6538         * sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: New File
6539
6540 2006-10-20  Steven Munroe  <sjmunroe@us.ibm.com>
6541
6542         * sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c: New file.
6543         * sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c: New file.
6544
6545 2006-10-03  Steven Munroe  <sjmunroe@us.ibm.com>
6546
6547         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: New file.
6548         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: New file.
6549
6550         * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: Moved.
6551         * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: Likewise.
6552         * sysdeps/powerpc/powerpc32/power4/fpu/Makefile: To here.
6553         * sysdeps/powerpc/powerpc32/power4/fpu/mpa.c: Likewise.
6554
6555 2006-09-29  Steven Munroe  <sjmunroe@us.ibm.com>
6556
6557         * sysdeps/powerpc/powerpc32/power6x/fpu/s_lrint.S: New file.
6558         * sysdeps/powerpc/powerpc32/power6x/fpu/s_lround.S: New file.
6559         * sysdeps/powerpc/powerpc64/power6x/fpu/s_llrint.S: New file.
6560         * sysdeps/powerpc/powerpc64/power6x/fpu/s_llround.S: New file.
6561
6562 2006-09-28  Steven Munroe  <sjmunroe@us.ibm.com>
6563
6564         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S: New file.
6565         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: New file.
6566         * sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S: New file.
6567         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
6568         * sysdeps/powerpc/powerpc64/power5+/fpu/s_llround.S: New file.
6569         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
6570
6571 2006-08-31  Steven Munroe  <sjmunroe@us.ibm.com>
6572
6573         * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: New file.
6574         * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: New file.
6575         * sysdeps/powerpc/powerpc64/power4/fpu/Makefile: New file.
6576         * sysdeps/powerpc/powerpc64/power4/fpu/mpa.c: New file.
6577
6578 2006-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
6579
6580         * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceil.S: New file.
6581         * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceilf.S: New file.
6582         * sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S: New file.
6583         * sysdeps/powerpc/powerpc32/power5+/fpu/s_floorf.S: New file.
6584         * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S: New file.
6585         * sysdeps/powerpc/powerpc32/power5+/fpu/s_roundf.S: New file.
6586         * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S: New file.
6587         * sysdeps/powerpc/powerpc32/power5+/fpu/s_truncf.S: New file.
6588         * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S: New file.
6589         * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceilf.S: New file.
6590         * sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S: New file.
6591         * sysdeps/powerpc/powerpc64/power5+/fpu/s_floorf.S: New file.
6592         * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S: New file.
6593         * sysdeps/powerpc/powerpc64/power5+/fpu/s_roundf.S: New file.
6594         * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S: New file.
6595         * sysdeps/powerpc/powerpc64/power5+/fpu/s_truncf.S: New file.
6596
6597 2006-03-20  Steven Munroe  <sjmunroe@us.ibm.com>
6598
6599         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: New file.
6600         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: New file.
6601
6602 2007-06-01  Steven Munroe  <sjmunroe@us.ibm.com>
6603
6604         * sysdeps/powerpc/powerpc32/power6/memset.S: New file.
6605         * sysdeps/powerpc/powerpc64/power6/memset.S: New file.
6606
6607 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
6608
6609         * sysdeps/powerpc/powerpc32/970/Implies: New file.
6610         * sysdeps/powerpc/powerpc32/power5/Implies: New file.
6611         * sysdeps/powerpc/powerpc32/power5+/Implies: New file.
6612         * sysdeps/powerpc/powerpc32/power6/Implies: New file.
6613         * sysdeps/powerpc/powerpc32/power6x/Implies: New file.
6614         * sysdeps/powerpc/powerpc64/970/Implies: New file.
6615         * sysdeps/powerpc/powerpc64/power5/Implies: New file.
6616         * sysdeps/powerpc/powerpc64/power5+/Implies: New file.
6617         * sysdeps/powerpc/powerpc64/power6/Implies: New file.
6618         * sysdeps/powerpc/powerpc64/power6x/Implies: New file.
6619
6620 2007-05-21  Steven Munroe  <sjmunroe@us.ibm.com>
6621
6622         * sysdeps/powerpc/powerpc32/power4/memset.S: New file
6623
6624 2007-03-13  Steven Munroe  <sjmunroe@us.ibm.com>
6625
6626         * sysdeps/powerpc/powerpc64/memcpy.S: Improve aligned loop to minimize
6627         branch miss-predicts. Ensure that cache line crossing does not impact
6628         dispatch grouping.
6629
6630 2006-12-13  Steven Munroe  <sjmunroe@us.ibm.com>
6631
6632         * sysdeps/powerpc/powerpc64/power4/memcopy.h: Replace with include
6633         "../../powerpc32/power4/memcopy.h".
6634         * sysdeps/powerpc/powerpc64/power4/wordcopy.c: Replace with include
6635         "../../powerpc32/power4/wordcopy.c".
6636
6637 2006-10-03  Steven Munroe  <sjmunroe@us.ibm.com>
6638
6639         * sysdeps/powerpc/powerpc32/powerpc64/Makefile: Moved.
6640         * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: Likewise.
6641         * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: Likewise.
6642         * sysdeps/powerpc/powerpc32/power4/Makefile: To here.
6643         * sysdeps/powerpc/powerpc32/power4/memcopy.h: Likewise.
6644         * sysdeps/powerpc/powerpc32/power4/wordcopy.c: Likewise.
6645
6646 2006-09-10  Steven Munroe  <sjmunroe@us.ibm.com>
6647
6648         * sysdeps/powerpc/powerpc32/power6/memcpy.S: New file.
6649
6650 2006-08-31  Steven Munroe  <sjmunroe@us.ibm.com>
6651
6652         * sysdeps/powerpc/powerpc32/power6/wordcopy.c: New file.
6653         * sysdeps/powerpc/powerpc32/powerpc64/Makefile: New file.
6654         * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: New file.
6655         * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: New file.
6656         * sysdeps/powerpc/powerpc64/power4/Makefile: New file.
6657         * sysdeps/powerpc/powerpc64/power4/memcopy.h: New file.
6658         * sysdeps/powerpc/powerpc64/power4/wordcopy.c: New file.
6659         * sysdeps/powerpc/powerpc64/power6/wordcopy.c: New file.
6660
6661 2006-07-06  Steven Munroe  <sjmunroe@us.ibm.com>
6662
6663         * sysdeps/powerpc/powerpc64/power6/memcpy.S: New file.
6664
6665 2006-03-20  Steven Munroe  <sjmunroe@us.ibm.com>
6666
6667         * sysdeps/powerpc/powerpc32/power4/memcmp.S: New file.
6668         * sysdeps/powerpc/powerpc32/power4/memcpy.S: New file.
6669         * sysdeps/powerpc/powerpc32/power4/memset.S: New file.
6670         * sysdeps/powerpc/powerpc32/power4/strncmp.S: New file.
6671         * sysdeps/powerpc/powerpc64/power4/memcmp.S: New file.
6672         * sysdeps/powerpc/powerpc64/power4/memcpy.S: New file.
6673         * sysdeps/powerpc/powerpc64/power4/strncmp.S: New file.
6674
6675 2007-05-29  Roland McGrath  <roland@redhat.com>
6676
6677         * po/Makefile (po-sed-cmd): New variable.
6678         (libc.pot.files): Move sed command text in there, avoid \ inside ''.
6679
6680 2007-05-29  Ulrich Drepper  <drepper@redhat.com>
6681
6682         * crypt/md5-crypt.c: Fix comment.
6683
6684         * nscd/nscd_helper.c (get_mapping): Handle short replies instead
6685         of crashing.  When this is the case or if the reply is malformed,
6686         don't try to close the new file descriptor since it does not
6687         exist.
6688         Patch in part by Guillaume Chazarain <guichaz@yahoo.fr>.
6689
6690 2007-05-28  Jakub Jelinek  <jakub@redhat.com>
6691
6692         * sysdeps/unix/sysv/linux/futimes.c (miss_utimensat): Don't define
6693         if __NR_utimensat is not defined.
6694
6695 2007-05-26  Ulrich Drepper  <drepper@redhat.com>
6696
6697         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Include <sysdep.h>.
6698
6699 2007-05-25  Jakub Jelinek  <jakub@redhat.com>
6700
6701         * io/bits/fcntl2.h (__open_2): Add nonnull attribute.
6702         (open): Fix comment typos.  Don't call __open_2 if flags
6703         is a compile time constant without O_CREAT.
6704         (__open64_2): Add nonnull attribute.
6705         (open64): Fix comment typos.  Don't call __open64_2 if flags
6706         is a compile time constant without O_CREAT.
6707         (__openat_2): Add nonnull attribute, fix nonnull attribute
6708         on redirect.
6709         (openat): Fix comment typos.  Don't call __openat_2 if flags
6710         is a compile time constant without O_CREAT.
6711         (__openat64_2): Add nonnull attribute, fix nonnull attribute
6712         on redirect.
6713         (openat64): Fix comment typos.  Don't call __openat64_2 if flags
6714         is a compile time constant without O_CREAT.
6715
6716 2007-05-24  Ulrich Drepper  <drepper@redhat.com>
6717
6718         * Makerules (sysd-rules): Define PTW for ptw-* files.
6719         * Versions: Define GLIBC_2.7 for libc.
6720         * include/stdio.h: Declare __fortify_fail.
6721         * debug/fortify_fail.c: New file.
6722         * debug/Makefile (routines): Add fortify_fail.
6723         * debug/chk_fail.c: Use __fortify_fail.
6724         * debug/stack_chk_fail.c: Likewise.
6725         * io/Versions: Export __open_2, __open64_2, __openat_2, and
6726         __openat64_2 for GLIBC_2.7.
6727         * io/fcntl.h: When compiling with fortification, include bits/fcntl2.h.
6728         * io/open.c: Define *_2 variant of function which checks for O_CREAT
6729         and fails if necessary.
6730         * io/open64.c: Likewise.
6731         * io/openat.c: Likewise.
6732         * io/openat64.c: Likewise.
6733         * sysdeps/unix/sysv/linux/open64.c: Likewise.
6734         * sysdeps/unix/sysv/linux/openat.c: Likewise.
6735         * sysdeps/unix/sysv/linux/openat64.c: Likewise.
6736         * io/bits/fcntl2.h: New file.
6737         * include/fcntl.h: Declare __open_2, __open64_2, __openat_2, and
6738         __openat64_2.
6739         * include/bits/fcntl2.h: New file.
6740         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
6741         Add open_2.
6742         * sysdeps/unix/sysv/linux/open_2.c: New file.
6743
6744 2007-05-21  Ulrich Drepper  <drepper@redhat.com>
6745
6746         * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Pass correct value
6747         as second parameter to handle_intel.
6748
6749         * nscd/aicache.c (addhstaiX): If reported TTL is zero don't cache
6750         the entry.
6751
6752         * sysdeps/unix/sysv/linux/x86_64/sysconf.c: Move cache information
6753         handling to ...
6754         * sysdeps/x86_64/cacheinfo.c: ... here.  New file.
6755         * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add
6756         cacheinfo.
6757         * sysdeps/x86_64/memcpy.S: Complete rewrite.
6758         * sysdeps/x86_64/mempcpy.S: Adjust appropriately.
6759         Patch by Evandro Menezes <evandro.menezes@amd.com>.
6760
6761         * sysdeps/unix/sysv/linux/i386/epoll_pwait.S: New file.
6762
6763 2007-05-21  Jakub Jelinek  <jakub@redhat.com>
6764
6765         [BZ #4525]
6766         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add epoll_pwait.
6767         * sysdeps/unix/sysv/linux/epoll_pwait.c: New file.
6768         * sysdeps/unix/sysv/linux/syscalls.list (epoll_pwait): Remove.
6769
6770         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (epoll_pwait): Declare.
6771
6772         [BZ #4514]
6773         * stdio-common/vfprintf.c (vfprintf): Don't shadow workstart variable,
6774         reinitialize workend at the start of each do_positional format spec
6775         loop, free workstart before do_positional loops.
6776         (printf_unknown): Fix size of work_buffer.
6777         * stdio-common/tst-sprintf.c (main): Add 3 new testcases.
6778
6779         * malloc/hooks.c (MALLOC_STATE_VERSION): Bump.
6780         (public_sET_STATe): If ms->version < 3, put all chunks into
6781         unsorted chunks and clear {fd,bk}_nextsize fields of largebin
6782         chunks.
6783
6784         * malloc/malloc.c [MALLOC_DEBUG]: Revert 2007-05-13 changes.
6785         * malloc/hooks.c: Likewise.
6786         * malloc/arena.c: Likewise.
6787         * malloc/malloc.c (do_check_malloc_state): Don't assert
6788         n_mmaps is not greater than n_mmaps_max.  This removes the need
6789         for the previous change.
6790
6791         * malloc/Makefile (CFLAGS-malloc.c): Revert accidental
6792         2007-05-07 commit.
6793
6794 2007-05-19  Ulrich Drepper  <drepper@redhat.com>
6795
6796         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PRIVATE_FUTEX):
6797         Define for kernel >= 2.6.22.
6798
6799 2007-05-18  Ulrich Drepper  <drepper@redhat.com>
6800
6801         * elf/dl-close.c (_dl_close_worker): When removing object from
6802         global scope, wait for all lookups to finish afterwards.
6803         * elf/dl-open.c (add_to_global): When global scope array must
6804         grow, allocate a new one and free old array only after all
6805         lookups finish.
6806         * elf/dl-runtime.c (_dl_fixup): Protect using global scope.
6807         (_dl_lookup_symbol_x): Likewise.
6808         * elf/dl-support.c: Define _dl_wait_lookup_done.
6809         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add
6810         _dl_wait_lookup_done.
6811
6812         * malloc/malloc.c (do_check_chunk): Correct check for mmaped block
6813         not overlapping with arena.
6814
6815         * malloc/mcheck.c (reallochook): If size==0, free the block.
6816
6817         * rt/tst-shm.c: Use fstat64 instead of fstat.
6818
6819         * sysdeps/unix/sysv/linux/i386/sync_file_range.S: Fix case where
6820         __NR_sync_file_range is not defined.
6821
6822 2007-05-17  Ulrich Drepper  <drepper@redhat.com>
6823
6824         Dummy files to prevent stub versions from being used.
6825         * sysdeps/x86_64/fpu/k_cosl.c: New file.
6826         * sysdeps/x86_64/fpu/k_rem_pio2l.c: New file.
6827         * sysdeps/x86_64/fpu/k_sinl.c: New file.
6828         * sysdeps/x86_64/fpu/k_tanl.c: New file.
6829
6830         * version.h (VERSION): Set to 2.6.90.
6831
6832 2007-05-14  Ulrich Drepper  <drepper@redhat.com>
6833
6834         * version.h (VERSION): Define to 2.6.
6835         * include/features.h (__GLIBC_MINOR__): Define to 6.
6836
6837         * malloc/malloc.c: Use all small bin slots on 64-bit archs.
6838
6839         * malloc/malloc.c (largebin_index): Really have 32 buckets with 64
6840         sizes.
6841
6842 2007-05-13  Ulrich Drepper  <drepper@redhat.com>
6843
6844         * malloc/malloc.c [MALLOC_DEBUG]: Keep track of current maximum
6845         number of mmaps.  n_mmaps_max is the target.
6846         * malloc/hooks.c: Likewise.
6847         * malloc/arena.c: Likewise.
6848
6849 2007-05-12  Andreas Jaeger  <aj@suse.de>
6850
6851         * sysdeps/unix/sysv/linux/tst-getcpu.c: Include <unistd.h> for
6852         getpid.
6853
6854 2007-05-11  Ulrich Drepper  <drepper@redhat.com>
6855
6856         * elf/dl-close.c (_dl_close_worker): Help gcc to optimize by
6857         adding new variables.
6858
6859         * elf/dl-open.c (add_to_global): Introduce variable ns to help gcc
6860         optimize.  Completely extend global scope array before making the
6861         new entries visible.
6862
6863 2007-05-10  Ulrich Drepper  <drepper@redhat.com>
6864
6865         * sysdeps/unix/sysv/linux/tst-getcpu.c: New file.
6866         * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (tests): Add
6867         tst-getcpu.
6868
6869         * include/link.h: Move l_version and l_nversion members around to
6870         fill gaps.
6871
6872         * scripts/check-c++-types.sh: Don't use -fnu89-inline option.
6873
6874         * sysdeps/unix/sysv/linux/sched_setaffinity.c
6875         (__sched_setaffinity_new): If syscall was successful and
6876         RESET_VGETCPU_CACHE is defined, use it before returning.
6877         * sysdeps/unix/sysv/linux/x86_64/sched_setaffinity.c: New file.
6878
6879         * io/sys/stat.h: Make sure struct timespec is defined for
6880         __USE_ATFILE.
6881
6882         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Define UTIME_NOW and
6883         UTIME_OMIT.
6884         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
6885         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
6886         * sysdeps/unix/sysv/linux/alpha/bits/stat.h: Likewise.
6887         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
6888         * sysdeps/unix/sysv/linux/bits/stat.h: Likewise.
6889         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
6890         * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_UTIMENSAT.
6891         * io/sys/stat.h: Declare utimensat, futimens.
6892         * io/utimensat.c: New file.
6893         * io/futimens.c: New file.
6894         * sysdeps/unix/sysv/linux/utimensat.c: New file.
6895         * sysdeps/unix/sysv/linux/futimens.c: New file.
6896         * io/Makefile (routines): Add utimensat, futimens.
6897         * io/Versions: Add utimensat, futimens to GLIBC_2.6.
6898         * sysdeps/unix/sysv/linux/lutimes.c: New file.
6899         * sysdeps/unix/sysv/linux/futimes.c: Use utimensat syscall if
6900         available.
6901
6902         * include/sys/cdefs.h: Redefine __nonnull so that test for
6903         incorrect parameters in the libc code itself are not omitted.
6904
6905 2007-05-09  Jakub Jelinek  <jakub@redhat.com>
6906
6907         * sysdeps/ia64/fpu/fraiseexcpt.c (feraiseexcept): Don't raise overflow
6908         exception in addition to inexact when asked to raise only FE_INEXACT.
6909
6910         [BZ #3427]
6911         * sysdeps/s390/fpu/feholdexcpt.c (feholdexcept): Don't clear exceptions
6912         in *envp.
6913
6914 2007-05-07  Ulrich Drepper  <drepper@redhat.com>
6915
6916         [BZ #4403]
6917         * string/strfry.c (strfry): Make result more random.
6918
6919 2007-05-07  Richard Henderson  <rth@redhat.com>
6920
6921         * sysdeps/alpha/fpu/bits/mathinline.h (__isnanl): Don't define
6922         if __NO_LONG_DOUBLE_MATH.
6923         * sysdeps/unix/sysv/linux/alpha/ioperm.c: If BWX insns not
6924         available in the compiler, add .arch directive to the assembly.
6925
6926 2007-05-07  Jakub Jelinek  <jakub@redhat.com>
6927
6928         * sysdeps/alpha/fpu/s_nearbyint.c (nearbyintl): Fix version on
6929         compat_symbol to GLIBC_2_1.
6930         * sysdeps/alpha/fpu/s_fmin.S (fminl): Likewise.
6931         * sysdeps/alpha/fpu/s_trunc.c (truncl): Likewise.
6932         * sysdeps/alpha/fpu/s_fmax.S (fmaxl): Likewise.
6933         * sysdeps/alpha/fpu/s_lrint.c (lrintl, llrintl): Likewise.
6934         * sysdeps/alpha/fpu/s_lround.c (lroundl, llroundl): Likewise.
6935         * sysdeps/alpha/fpu/s_round.c (roundl): Likewise.
6936         * sysdeps/alpha/fpu/s_isnan.c (isnanl): Provide compat_symbol in
6937         libc, not libm.
6938         (__isnanl): New compat_symbol.
6939
6940 2007-05-07  Ulrich Drepper  <drepper@redhat.com>
6941             Jakub Jelinek  <jakub@redhat.com>
6942
6943         * malloc/arena.c (heap_info): Add mprotect_size field, adjust pad.
6944         (new_heap): Initialize mprotect_size.
6945         (grow_heap): When growing, only mprotect from mprotect_size till
6946         new_size if mprotect_size is smaller.  When shrinking, use PROT_NONE
6947         MMAP for __libc_enable_secure only, otherwise use MADV_DONTNEED.
6948
6949 2007-04-30  Steven Munroe  <sjmunroe@us.ibm.com>
6950             Peter Bergner  <bergner@us.ibm.com>
6951
6952         * sysdeps/powerpc/bits/fenv.h: Declare __fe_mask_env extern.
6953         Define FE_NOMASK_ENV as FE_EANBLED_ENV.  Define FE_MASK_ENV.
6954         * sysdeps/powerpc/fpu/Makefile: Add fe_mask to libm-support.
6955         * sysdeps/powerpc/fpu/fe_mask.c: New file.
6956         * sysdeps/powerpc/fpu/fe_nomask.c: Correct comment.
6957         * sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept):
6958         Call __fe_mask_env() if all FP exceptions disabled.
6959         * sysdeps/powerpc/fpu/feholdexcpt.c (feholdexcept): Copy high 32-bits
6960         from old FPSCR to new fenv to propagate DFP rounding modes.
6961         Call __fe_mask_env() if FP exceptions previously enabled.
6962         * sysdeps/powerpc/fpu/fesetenv.c (fesetenv): Change mask to merge
6963         exceptions from env.  Use __fe_nomask_env() or __fe_mask_env() when
6964         transitioning from all exceptions disabled to any exception enabled
6965         or visa versa.
6966         * sysdeps/powerpc/fpu/feupdateenv.c (__feupdateenv): Change mask to
6967         merge exceptions from env.  Call __fe_nomask_env or __fe_mask_env
6968         when transitioning from all exceptions disabled to any exception
6969         enabled or visa versa.
6970         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Moved to...
6971         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: ...here.
6972         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: Moved to...
6973         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: ...here.
6974         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_mask.c: New file.
6975         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c: New file.
6976
6977 2007-05-06  Ulrich Drepper  <drepper@redhat.com>
6978
6979         [BZ #4465]
6980         * posix/unistd.h: Remove __THROW from fdatasync.
6981
6982 2007-05-06  Mike Frysinger  <vapier@gentoo.org>
6983
6984         [BZ #4465]
6985         * sysdeps/unix/sysv/linux/syscalls.list (fdatasync): Add "C" to args.
6986
6987 2007-05-06  Ulrich Drepper  <drepper@redhat.com>
6988
6989         * stdio-common/vfprintf.c (process_string_arg): Optimize
6990         ridiculous precision in wide char code printing multi-byte string.
6991         Reported by Jim Meyering <jim@meyering.net>.
6992
6993         [BZ #4131]
6994         * elf/dl-addr.c (_dl_addr): Compare address with actual segment
6995         boundaries to work around systems with overlapping binary loading.
6996         Based on a patch by Suzuki <suzuki@in.ibm.com>.
6997
6998 2007-05-04  Ulrich Drepper  <drepper@redhat.com>
6999
7000         * stdio-common/vfprintf.c (process_string_arg): Adjust call to
7001         __mbsnrtowcs after last change.
7002
7003         * locale/programs/linereader.c (get_symname): Fix adding final NUL.
7004         (get_ident): Likewise.
7005
7006 2007-05-03  Jakub Jelinek  <jakub@redhat.com>
7007
7008         * soft-fp/op-common.h (FP_TRUNC): Replace raising of FP_EX_INEXACT
7009         with setting the sticky bit.
7010         * math/test-misc.c (main): Add more truncation tests.
7011
7012 2007-04-14  Uros Bizjak  <ubizjak@gmail.com>
7013
7014         * soft-fp/floatunsidf.c (__floatunsidf): Use DFtype instead of
7015         double in the function declaration.
7016         * soft-fp/floatundidf.c (__floatundidf): Use DFtype instead of
7017         double in the function declaration.
7018         * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
7019         float in the function declaration.
7020         * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
7021         float in the function declaration.
7022
7023         * soft-fp/extended.h (FP_UNPACK_RAW_E): Do not increase X##_e for
7024         denormal operands.  Do not generate FP_EX_DENORM exception.
7025         (FP_UNPACK_RAW_EP): Ditto.
7026         (FP_UNPACK_SEMIRAW_E): Use FP_UNPACK_RAW_E instead of
7027         undefined _FP_UNPACK_RAW_E.
7028         (FP_UNPACK_SEMIRAW_EP): Use FP_UNPACK_RAW_EP instead of
7029         undefined _FP_UNPACK_RAW_EP.
7030         (FP_PACK_SEMIRAW_E): Use FP_PACK_RAW_E instead of
7031         undefined _FP_PACK_RAW_E.
7032         (FP_PACK_SEMIRAW_EP): Use FP_PACK_RAW_EP instead of
7033         undefined _FP_PACK_RAW_EP.
7034
7035         * soft-fp/op-2.h (_FP_FRAC_COPY_2_2): Define as alias to
7036         _FP_FRAC_COPY_2.
7037         * soft-fp/op-4.h (_FP_FRAC_COPY_2_2): Define as alias to
7038         _FP_FRAC_COPY_4.
7039
7040 2007-04-16  Uros Bizjak  <ubizjak@gmail.com>
7041             Jakub Jelinek  <jakub@redhat.com>
7042
7043         * soft-fp/op-common.h (FP_EXTEND): Do not abort when
7044         _FP_EXPBIAS_##dfs == _FP_EXPBIAS_##sfs.  Handle denormals for
7045         this case.
7046         * soft-fp/op-common.h (FP_TRUNC): Ditto.
7047
7048 2007-05-03  Jakub Jelinek  <jakub@redhat.com>
7049
7050         * math/test-misc.c (main): Add tests for rounding long double
7051         values close to smallest double denormalized value to double.
7052
7053 2007-04-30  Joseph Myers  <joseph@codesourcery.com>
7054
7055         * soft-fp/op-common.h (FP_TRUNC): Correct off-by-one error in
7056         condition for truncating to 0.  Set sticky bit for such
7057         truncation.
7058
7059 2007-05-02  Jakub Jelinek  <jakub@redhat.com>
7060
7061         * stdio-common/vfprintf.c (process_string_arg): Use a VLA rather than
7062         fixed length array for ignore.
7063
7064 2007-04-30  Ulrich Drepper  <drepper@redhat.com>
7065
7066         [BZ #4438]
7067         * stdio-common/vfprintf.c (process_string_arg): Don't overflow the
7068         stack for large precisions.
7069         * stdio-common/test-vfprintf.c (main): Add test for large
7070         precision.
7071
7072 2007-04-30  Jakub Jelinek  <jakub@redhat.com>
7073
7074         * stdio-common/printf_fp.c (___printf_fp): Don't print negative sign
7075         for exponent 0.
7076         * stdio-common/tfformat.c (sprint_doubles): Add a new test.
7077
7078         [BZ #4439]
7079         * resolv/inet_ntop.c (inet_ntop4): Take terminating '\0' into
7080         account in the size check.
7081         * resolv/tst-inet_ntop.c: New test.
7082         * resolv/Makefile (tests): Add tst-inet_ntop.
7083
7084 2007-04-30  Ulrich Drepper  <drepper@redhat.com>
7085             Jakub Jelinek  <jakub@redhat.com>
7086
7087         [BZ #4349]
7088         * malloc/malloc.c: Keep separate list for first blocks on the bin
7089         lists with a given size.  This helps skipping over list elements
7090         we know won't fit in two places.
7091         Inspired by a patch by Tomash Brechko <tomash.brechko@gmail.com>.
7092
7093 2007-04-28  Ulrich Drepper  <drepper@redhat.com>
7094
7095         [BZ #4102]
7096         * sysdeps/posix/getaddrinfo.c (default_labels): Assign separate
7097         label to Teredo tunnel addresses 2001://32.
7098
7099 2007-04-27  Ulrich Drepper  <drepper@redhat.com>
7100
7101         * locale/programs/ld-collate.c (collate_read): Allow order_start
7102         after copy.
7103
7104         * locale/programs/ld-collate.c (collate_read): Fix printing of
7105         error message.
7106
7107         [BZ #3213]
7108         * locale/C-translit.h.in: Add entry for U2044.
7109
7110         [BZ #4342]
7111         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Allow
7112         hexa-decimal floats without exponent.
7113         * stdio-common/tstscanf.c (main): Adjust Test 8 test for success.
7114
7115 2007-04-25  Ulrich Drepper  <drepper@redhat.com>
7116
7117         * sysdeps/unix/sysv/linux/bits/sched.h: Declare sched_getcpu.
7118         * sysdeps/unix/sysv/linux/sched_getcpu.c: New file.
7119         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: New file.
7120         * sysdeps/unix/sysv/linux/Versions: Export sched_getcpu for
7121         GLIBC_2.6.
7122         * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (sysdep_routines):
7123         Add sched_getcpu.
7124
7125 2007-04-25  Jakub Jelinek  <jakub@redhat.com>
7126
7127         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Return -1 instead
7128         of 0 after the out_fail label.
7129
7130 2007-04-25  Ulrich Drepper  <drepper@redhat.com>
7131
7132         [BZ #4406]
7133         * iconv/gconv_charset.h (strip): Allow ':'.
7134         * iconv/iconv_open.c (iconv_open): Adjust comment.
7135
7136 2007-04-25  Jakub Jelinek  <jakub@redhat.com>
7137
7138         * libio/bits/stdio.h (fgetc_unlocked): Add extern inline optimized
7139         version.
7140
7141 2007-04-23  Jakub Jelinek  <jakub@redhat.com>
7142
7143         [BZ #4381]
7144         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Ensure sufficient
7145         alignment of buffer and tmp_buffer.
7146         * nis/nss_nis/nis-hosts.c (internal_nis_gethostent_r,
7147         internal_gethostbyname2_r, _nss_nis_gethostbyaddr_r): Ensure sufficient
7148         alignment of buffer.
7149         * resolv/nss_dns/dns-hosts.c (getanswer_r): Likewise.  Handle buflen
7150         bigger than INT_MAX.
7151         * resolv/nss_dns/dns-network.c (getanswer_r): Likewise.  Add errnop and
7152         h_errnop arguments.  Fail if buflen is too small.
7153         (_nss_dns_getnetbyname_r, _nss_dns_getnetbyaddr_r): Adjust callers.
7154
7155 2007-04-23  Jakub Jelinek  <jakub@redhat.com>
7156
7157         [BZ #4405]
7158         * iconvdata/gconv-modules (E13B): Add a missing slash to the alias
7159         name.  Patch by Aurelien Jarno <aurelien@aurel32.net>.
7160
7161 2007-04-22  Roland McGrath  <roland@redhat.com>
7162
7163         * elf/elf.h (NT_PRXFPREG): New macro.
7164
7165 2007-04-19  Andreas Jaeger  <aj@suse.de>
7166
7167         [BZ #3905]
7168         * bits/in.h (IPV6_ROUTER_ALERT, IPV6_MTU_DISCOVER, IPV6_MTU,
7169         IPV6_RECVERR, IPV6_V6ONLY, IPV6_JOIN_ANYCAST, IPV6_LEAVE_ANYCAST):
7170         Added.
7171
7172 2007-04-19  Ulrich Drepper  <drepper@redhat.com>
7173
7174         * include/sys/mman.h: Mark madvise hidden.
7175         * misc/madvise.c: Add libc_hidden_def.
7176
7177 2007-04-06  Jakub Jelinek  <jakub@redhat.com>
7178
7179         * nis/nis_domain_of.c (__nis_domain_of): New function.
7180         * include/rpcsvc/nislib.h (__nis_domain_of): New prototype.
7181         * nis/nis_lookup.c (nis_lookup): Use __nis_domain_of.
7182         * nis/nis_call.c (rec_dirsearch): Likewise.
7183         (first_shoot): Likewise.  Remove search_parent_first argument.
7184         (struct nis_server_cache): Rename search_parent_first field
7185         to search_parent.
7186         (nis_server_cache_search, nis_server_cache_add): Rename
7187         search_parent_first argument to search_parent.
7188         (__nisfind_server): Likewise.  If search_parent, call
7189         __nis_domain_of.
7190
7191 2007-04-18  Ulrich Drepper  <drepper@redhat.com>
7192
7193         * sysdeps/posix/getaddrinfo.c: Remove commented-out code.
7194
7195 2007-04-17  Ulrich Drepper  <drepper@redhat.com>
7196
7197         [BZ #4368]
7198         * stdlib/stdlib.h: Remove obsolete part of comment for realpath.
7199
7200 2007-04-16  Ulrich Drepper  <drepper@redhat.com>
7201
7202         [BZ #4364]
7203         * posix/unistd.h (_XOPEN_VERSION): Define appropriately for SUSv3.
7204
7205 2007-04-15  Jakub Jelinek  <jakub@redhat.com>
7206
7207         * locale/programs/locarchive.c (INITIAL_NUM_NAMES,
7208         INITIAL_SIZE_STRINGS, INITIAL_NUM_LOCREC): Update to accomodate
7209         current number of locales in SUPPORTED.
7210         (create_archive): Initialize serial.
7211         (enlarge_archive): Preserve aliases rather than duplicating
7212         their locrecs.
7213
7214 2007-04-13  Jakub Jelinek  <jakub@redhat.com>
7215
7216         * libio/genops.c (_IO_default_finish): Call _IO_lock_fini
7217         after _IO_un_link, not before it.
7218
7219         * stdio-common/printf_fp.c (___printf_fp): Fix exponent -4
7220         special case handling when wcp == wstartp + 1.  Fix a comment typo.
7221         * stdio-common/tfformat.c (sprint_doubles): Add a new testcase.
7222
7223 2007-03-30  Jakub Jelinek  <jakub@redhat.com>
7224
7225         * libio/libio.h (__underflow, __uflow, __overflow, __wunderflow,
7226         __wuflow, __woverflow, _IO_getc, _IO_putc, _IO_peekc_locked, _IO_padn,
7227         _IO_sgetn, _IO_seekoff, _IO_seekpos, _IO_getwc, _IO_putwc, _IO_wpadn):
7228         Remove __THROW.
7229         * libio/fileops.c (new_do_write, _IO_file_xsgetn_mmap,
7230         _IO_file_xsgetn_maybe_mmap): Likewise.
7231         * libio/oldfileops.c (old_do_write): Likewise.
7232         * libio/libioP.h (_IO_switch_to_get_mode, _IO_switch_to_wget_mode,
7233         _IO_init_marker, _IO_init_wmarker, _IO_default_uflow,
7234         _IO_wdefault_uflow, _IO_default_setbuf, _IO_default_seekpos,
7235         _IO_do_write, _IO_new_do_write, _IO_old_do_write, _IO_wdo_write,
7236         _IO_flush_all_lockp, _IO_flush_all, _IO_cleanup,
7237         _IO_flush_all_linebuffered, _IO_new_fgetpos, _IO_old_fgetpos,
7238         _IO_new_fsetpos, _IO_old_fsetpos, _IO_new_fgetpos64,
7239         _IO_old_fgetpos64, _IO_new_fsetpos64, _IO_old_fsetpos64,
7240         _IO_file_setbuf, _IO_file_seekoff, _IO_file_xsputn, _IO_file_xsgetn,
7241         _IO_file_underflow, _IO_file_underflow_mmap,
7242         _IO_file_underflow_maybe_mmap, _IO_file_overflow, _IO_file_attach,
7243         _IO_file_open, _IO_file_fopen, _IO_file_write, _IO_file_read,
7244         _IO_file_sync, _IO_file_close_it, _IO_file_finish,
7245         _IO_new_file_attach, _IO_new_file_close_it, _IO_new_file_finish,
7246         _IO_new_file_fopen, _IO_new_file_setbuf, _IO_file_setbuf_mmap,
7247         _IO_new_file_sync, _IO_new_file_underflow, _IO_new_file_overflow,
7248         _IO_new_file_seekoff, _IO_new_file_write, _IO_new_file_xsputn,
7249         _IO_old_file_setbuf, _IO_old_file_seekoff, _IO_old_file_xsputn,
7250         _IO_old_file_underflow, _IO_old_file_overflow, _IO_old_file_attach,
7251         _IO_old_file_fopen, _IO_old_file_write, _IO_old_file_sync,
7252         _IO_old_file_close_it, _IO_old_file_finish, _IO_wfile_xsputn,
7253         _IO_wfile_setbuf, _IO_wfile_sync, _IO_wfile_underflow,
7254         _IO_wfile_overflow, _IO_wfile_seekoff, _IO_old_proc_open,
7255         _IO_old_proc_close, _IO_getdelim, _IO_flush_all_internal,
7256         _IO_adjust_column_internal, _IO_default_uflow_internal,
7257         _IO_default_xsgetn_internal, _IO_wdefault_xsputn_internal,
7258         _IO_wdefault_xsgetn_internal, _IO_wdefault_uflow_internal,
7259         _IO_file_setbuf_internal, _IO_file_seekoff_internal,
7260         _IO_file_xsputn_internal, _IO_file_xsgetn_internal,
7261         _IO_file_close_it_internal, _IO_file_underflow_internal,
7262         _IO_file_overflow_internal, _IO_file_attach_internal,
7263         _IO_file_fopen_internal, _IO_file_sync_internal,
7264         _IO_file_finish_internal, _IO_wfile_xsputn_internal,
7265         _IO_wfile_seekoff_internal, _IO_wfile_sync_internal,
7266         _IO_switch_to_wget_mode_internal, _IO_padn_internal,
7267         _IO_switch_to_get_mode_internal, _IO_seekoff_unlocked,
7268         _IO_seekpos_unlocked): Likewise.
7269         (_IO_strtod, _IO_dtoa, _IO_outfloat, _IO_read, _IO_write,
7270         _IO_lseek, _IO_close, _IO_fstat): Remove unused prototypes.
7271
7272 2007-04-16  Jakub Jelinek  <jakub@redhat.com>
7273
7274         * locale/programs/locarchive.c (show_archive_content): Fix sizeof
7275         argument in xmalloc size computation.
7276
7277 2007-04-01  Jakub Jelinek  <jakub@redhat.com>
7278
7279         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (__nextafterl): Use
7280         math_opt_barrier and math_force_eval macros.
7281
7282 2007-03-27  Jakub Jelinek  <jakub@redhat.com>
7283
7284         [BZ #3306]
7285         * math/math_private.h (math_opt_barrier, math_force_eval): Define.
7286         * sysdeps/i386/fpu/math_private.h: New file.
7287         * sysdeps/x86_64/fpu/math_private.h: New file.
7288         * math/s_nexttowardf.c (__nexttowardf): Use math_opt_barrier and
7289         math_force_eval macros.  Use "+m" constraint on asm rather than
7290         "=m" and "m".
7291         * math/s_nextafter.c (__nextafter): Likewise.
7292         * sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c (__nexttoward):
7293         Likewise.
7294         * sysdeps/ieee754/flt-32/s_nextafterf.c (__nextafterf): Likewise.
7295         * sysdeps/ieee754/ldbl-128/s_nexttoward.c (__nexttoward): Likewise.
7296         * sysdeps/ieee754/ldbl-96/s_nexttoward.c (__nexttoward): Likewise.
7297         * sysdeps/i386/fpu/s_nextafterl.c (__nextafterl): Use
7298         math_opt_barrier and math_force_eval macros.
7299         * sysdeps/ieee754/ldbl-128/s_nextafterl.c (__nextafterl): Likewise.
7300         * sysdeps/ieee754/ldbl-96/s_nextafterl.c (__nextafterl): Likewise.
7301         * sysdeps/i386/fpu/s_nexttoward.c: Include float.h.
7302         (__nexttoward): Use math_opt_barrier and
7303         math_force_eval macros.  Use "+m" constraint on asm rather than
7304         "=m" and "m".  Only use asm to force double result if
7305         FLT_EVAL_METHOD is 2.
7306         * sysdeps/i386/fpu/s_nexttowardf.c: Include float.h.
7307         (__nexttowardf): Use math_opt_barrier and
7308         math_force_eval macros.  Use "+m" constraint on asm rather than
7309         "=m" and "m".  Only use asm to force double result if
7310         FLT_EVAL_METHOD is not 0.
7311         * sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c: Include float.h.
7312         (__nexttowardf): Use math_opt_barrier and
7313         math_force_eval macros.  If FLT_EVAL_METHOD is not 0, force
7314         x to float using asm.
7315         * sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c: Include float.h.
7316         (__nldbl_nexttowardf): Use math_opt_barrier and
7317         math_force_eval macros.  If FLT_EVAL_METHOD is not 0, force
7318         x to float using asm.
7319         * sysdeps/ieee754/ldbl-96/s_nexttowardf.c: Include float.h.
7320         (__nexttowardf): Use math_opt_barrier and math_force_eval
7321         macros.  If FLT_EVAL_METHOD is not 0, force x to float using asm.
7322         * math/bug-nextafter.c (zero, inf): New variables.
7323         (main): Add new tests.
7324         * math/bug-nexttoward.c (zero, inf): New variables.
7325         (main): Add new tests.
7326
7327 2007-03-22  Jakub Jelinek  <jakub@redhat.com>
7328
7329         [BZ #3427]
7330         * sysdeps/x86_64/fpu/feholdexcpt.c (feholdexcept): Clear all
7331         exceptions both in SW and MXCSR.
7332         * sysdeps/x86_64/fpu/feupdateenv.c: New file.
7333         * sysdeps/x86_64/fpu/feenablxcpt.c (feenableexcept): Remove dead code.
7334         * sysdeps/x86_64/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
7335         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
7336         in MXCSR if SSE is available.
7337         * sysdeps/i386/fpu/feupdateenv.c: Include unistd.h, dl-procinfo.h
7338         and ldsodefs.h.
7339         (__feupdateenv): Query exceptions also from MXCSR if SSE is available.
7340         Fix comment typo.
7341         * sysdeps/ia64/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions.
7342         Return 0 rather than 1.
7343         * sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Fix comment typo.
7344         Remove incorrect part of a comment.  Fix argument to feraiseexcept.
7345         * math/test-fenv.c (feholdexcept_tests): New function.
7346         (main): Call it.
7347
7348 2007-01-05  Richard B. Kreckel  <kreckel@ginac.de>
7349
7350         [BZ #3427]
7351         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
7352         in SW.
7353
7354 2007-04-13  Jakub Jelinek  <jakub@redhat.com>
7355
7356         [BZ #4344]
7357         * elf/ldconfig.c (search_dir): Fix 2 off-by-2 errors.
7358         Reported by David Anderson <davea42@earthlink.net>.
7359
7360 2007-04-07  Ulrich Drepper  <drepper@redhat.com>
7361
7362         * posix/sys/wait.h: Remove unnecessary forward declaration.
7363
7364 2007-04-05  Jakub Jelinek  <jakub@redhat.com>
7365
7366         * nis/nis_call.c (__nisfind_server): Replace (*dir)->do_servers
7367         with obj->do_servers after first_shoot.
7368
7369 2007-04-03  Ulrich Drepper  <drepper@redhat.com>
7370
7371         * posix/Makefile (routines): Add sched_cpucount.
7372         (tests): Add tst-cpucount.
7373         * posix/sched_cpucount.c: New file.
7374         * posix/tst-cpucount.c: New file.
7375         * posix/Versions: Export __sched_cpucount with version GLIBC_2.6.
7376         * bits/sched.h: Define __CPU_COUNT.  Declare __sched_cpucount.
7377         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
7378         * posix/sched.h: Define CPU_COUNT.
7379
7380 2007-03-27  Jakub Jelinek  <jakub@redhat.com>
7381
7382         * posix/fnmatch.c (STRUCT): Define.
7383         (fnmatch): Pass NULL as last argument to internal_fn{,w}match.
7384         * posix/fnmatch_loop.c (struct STRUCT): New type.
7385         (FCT): Add ends argument.  If ends != NULL and normal * is
7386         seen in the pattern, store current pattern and string pointers
7387         and return.  Adjust recursive calls.
7388         (EXT): Adjust FCT callers.
7389         (STRUCT): Undef at the end of the file.
7390         * posix/Makefile (tests): Add tst-fnmatch2.
7391         * posix/tst-fnmatch2.c: New test.
7392
7393 2007-04-01  Jakub Jelinek  <jakub@redhat.com>
7394
7395         * sysdeps/ia64/fpu/fesetround.c (fesetround): Return 0 on success
7396         and 1 on failure.
7397
7398         * sysdeps/unix/sysv/linux/sync_file_range.c (sync_file_range):
7399         Change last argument to unsigned int.
7400
7401 2007-03-23  Jakub Jelinek  <jakub@redhat.com>
7402
7403         * scripts/check-local-headers.sh: Filter out sys/capability.h.
7404
7405 2007-03-22  Jakub Jelinek  <jakub@redhat.com>
7406
7407         * config.h.in (HAVE_LIBCAP): Add.
7408         * nscd/selinux.h: Include sys/capability.h rather than non-existent
7409         sys/capabilities.h.
7410         * nscd/selinux.c (preserve_capabilities): Use cap_free instead of
7411         free_caps.  Cast away const from 4th cap_set_flag argument.
7412
7413 2007-03-26  Ulrich Drepper  <drepper@redhat.com>
7414
7415         * sysdeps/unix/sysv/linux/Versions: Move sync_file_range to
7416         GLIBC_2.6.
7417         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
7418         Add sync_file_range.
7419         Reported by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
7420
7421 2007-03-19  Steven Munroe  <sjmunroe@us.ibm.com>
7422
7423         * sysdeps/powerpc/bits/atomic.h
7424         [!MUTEX_HINT_ACQ]: Define MUTEX_HINT_ACQ.
7425         [!MUTEX_HINT_REL]: Define MUTEX_HINT_REL.
7426         (__arch_compare_and_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
7427         (__arch_compare_and_exchange_val_32_rel): Add MUTEX_HINT_REL to lwarx.
7428         (__arch_atomic_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
7429         (__arch_atomic_exchange_rel_32_rel): Add MUTEX_HINT_REL to lwarx.
7430         * sysdeps/powerpc/powerpc32/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6X]:
7431         Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
7432         (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
7433         (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
7434         * sysdeps/powerpc/powerpc64/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6D]:
7435         Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
7436         (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
7437         (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
7438         (__arch_compare_and_exchange_bool_64_acq): Add MUTEX_HINT_ACQ to lwarx.
7439         (__arch_compare_and_exchange_bool_64_rel): Add MUTEX_HINT_REL to lwarx.
7440         (__arch_compare_and_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
7441         (__arch_compare_and_exchange_val_64_rel): Add MUTEX_HINT_REL to lwarx.
7442         (__arch_atomic_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
7443         (__arch_atomic_exchange_rel_64_rel): Add MUTEX_HINT_REL to lwarx.
7444
7445 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
7446
7447         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
7448         (__cache_line_size): Define the variable here.  Add
7449         attribute_hidden, remove weak_extern.
7450         (__libc_start_main): Set __cache_line_size
7451         unconditionally.
7452         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
7453         (__cache_line_size): Define the variable here.  Add
7454         attribute_hidden, remove weak_extern.
7455         (DL_PLATFORM_AUXV): Set __cache_line_size
7456         unconditionally.
7457         * sysdeps/powerpc/powerpc32/dl-machine.c (__cache_line_size): Remove
7458         weak_extern, add attribute_hidden.
7459         (__elf_machine_runtime_setup): Assume __cache_line_size is always
7460         defined in ld.so.
7461         * sysdeps/powerpc/powerpc32/memset.S (__cache_line_size): Remove
7462         definition.
7463         * sysdeps/powerpc/powerpc64/memset.S (__cache_line_size): Likewise.
7464
7465 2007-03-26  Jakub Jelinek  <jakub@redhat.com>
7466
7467         [BZ #4276]
7468         * timezone/africa: Update from tzdata2007d.
7469         * timezone/asia: Likewise.
7470         * timezone/australasia: Likewise.
7471         * timezone/backward: Likewise.
7472         * timezone/europe: Likewise.
7473         * timezone/iso3166.tab: Likewise.
7474         * timezone/leapseconds: Likewise.
7475         * timezone/northamerica: Likewise.
7476         * timezone/southamerica: Likewise.
7477         * timezone/zone.tab: Likewise.
7478
7479         * timezone/private.h: Update from tzcode2007d.
7480         * timezone/zdump.c: Likewise.
7481         * timezone/zic.c: Likewise.
7482
7483 2007-03-21  Jakub Jelinek  <jakub@redhat.com>
7484
7485         * nis/nis_call.c: Include bits/libc-lock.h, sys/stat.h, unistd.h.
7486         (nis_server_cache, nis_server_cache_lock, nis_cold_start_mtime): New
7487         variables.
7488         (nis_server_cache_search, nis_server_cache_add): New functions.
7489         (__nisfind_server): Use them.  Add dbp and flags argument, if
7490         call __nisbind_create.
7491         (__nisbind_create): Add server_used and current_ep arguments,
7492         only call __nis_findfastest if server_used is ~0.
7493         (__do_niscall2, __prepare_niscall): Adjust callers.
7494         (ckey_cache, ckey_cache_size, ckey_cache_allocated, ckey_cache_pid,
7495         ckey_cache_euid, ckey_cache_lock): New variables.
7496         (get_ckey): New function.
7497         (__nisbind_connect): If not dbp->use_udp, pass IPPROTO_TCP to
7498         __pmap_getnisport.  Save __pmap_getnisport result in
7499         dbp->addr.sin_port if non-zero.  Use get_ckey to create conversation
7500         key.
7501         * nis/nis_lookup.c (nis_lookup): Likewise.
7502         * nis/nis_table.c (nis_list): Likewise.
7503         * nis/rpcsvc/nislib.h (__nisbind_create, __nisfind_server): Adjust
7504         prototypes.
7505
7506         * nis/nss_nisplus/nisplus-pwd.c (_nss_nisplus_getpwnam_r,
7507         _nss_nisplus_getpwuid_r): Pass USE_DGRAM flag to nis_list.
7508         * nis/nss_nisplus/nisplus-service.c (_nss_nisplus_getservbyname_r,
7509         _nss_nisplus_getservbyport_r): Likewise.
7510         * nis/nss_nisplus/nisplus-network.c (_nss_nisplus_getnetbyname_r,
7511         _nss_nisplus_getnetbyaddr_r): Likewise.
7512         * nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_getspnam_r): Likewise.
7513         * nis/nss_nisplus/nisplus-ethers.c (_nss_nisplus_gethostton_r,
7514         _nss_nisplus_getntohost_r): Likewise.
7515         * nis/nss_nisplus/nisplus-rpc.c (_nss_nisplus_getrpcbyname_r,
7516         _nss_nisplus_getrpcbynumber_r): Likewise.
7517
7518 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
7519
7520         * configure.in (libc_cv_gnu89_inline): Only do compile test.
7521         * configure: Rebuilt.
7522
7523         * soft-fp/double.h (_FP_UNION_D): Use _FP_W_TYPE for frac
7524         bit-fields.
7525         * soft-fp/extended.h (_FP_UNION_E): Likewise.
7526
7527 2006-06-07  Joseph Myers  <joseph@codesourcery.com>
7528
7529         [BZ #2831]
7530         * soft-fp/quad.h (_FP_UNION_Q): Use _FP_W_TYPE for frac
7531         bit-fields.
7532
7533 2007-03-18  Jakub Jelinek  <jakub@redhat.com>
7534
7535         * nscd/gai.c: Include alloca.h.
7536         (__libc_use_alloca): Define.
7537
7538 2007-03-16  Jakub Jelinek  <jakub@redhat.com>
7539
7540         * elf/dl-open.c (dl_open_worker): Declare l in 2 different
7541         smaller scopes.
7542         * elf/dl-dst.h (DL_DST_REQ_STATIC): Add l as macro argument.
7543         (DL_DST_REQUIRED): Adjust user.
7544
7545         * include/dlfcn.h (struct link_map): New forward decl.
7546
7547         * inet/getnameinfo.c: Include stddef.h.
7548         (getnameinfo): Use offsetof.
7549
7550         * time/tst-mktime2.c (do_test): Don't rely on signed wrap.
7551
7552         * stdio-common/vfprintf.c (_itoa): Undef before redefining.
7553
7554         * string/strerror_l.c: Include stdlib.h.
7555
7556         * configure.in (libc_cv_gnu89_inline): Test for -fgnu89-inline.
7557         * config.make.in (gnu89-inline-CFLAGS): New variable.
7558         * Makeconfig (CFLAGS): Use $(gnu89-inline-CFLAGS) together with
7559         -std=gnu99.
7560         * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Define.
7561         * argp/argp.h: Use it.
7562         * bits/mathinline.h: Likewise.
7563         * bits/sigset.h: Likewise.
7564         * bits/string.h: Likewise.
7565         * ctype/ctype.h: Likewise.
7566         * hurd/hurd.h: Likewise.
7567         * hurd/hurd/fd.h: Likewise.
7568         * hurd/hurd/port.h: Likewise.
7569         * hurd/hurd/signal.h: Likewise.
7570         * hurd/hurd/threadvar.h: Likewise.
7571         * hurd/hurd/userlink.h: Likewise.
7572         * io/sys/stat.h: Likewise.
7573         * libio/bits/stdio.h: Likewise.
7574         * libio/bits/stdio2.h: Likewise.
7575         * mach/lock-intern.h: Likewise.
7576         * mach/mach/mig_support.h: Likewise.
7577         * math/bits/cmathcalls.h: Likewise.
7578         * posix/bits/unistd.h: Likewise.
7579         * socket/bits/socket2.h: Likewise.
7580         * stdlib/bits/stdlib.h: Likewise.
7581         * stdlib/stdlib.h: Likewise.
7582         * string/argz.h: Likewise.
7583         * string/bits/string2.h: Likewise.
7584         * string/bits/string3.h: Likewise.
7585         * sysdeps/alpha/fpu/bits/mathinline.h: Likewise.
7586         * sysdeps/generic/inttypes.h: Likewise.
7587         * sysdeps/generic/machine-lock.h: Likewise.
7588         * sysdeps/generic/machine-sp.h: Likewise.
7589         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
7590         * sysdeps/i386/i486/bits/string.h: Likewise.
7591         * sysdeps/ia64/fpu/bits/mathinline.h: Likewise.
7592         * sysdeps/mach/alpha/machine-lock.h: Likewise.
7593         * sysdeps/mach/alpha/machine-sp.h: Likewise.
7594         * sysdeps/mach/i386/machine-lock.h: Likewise.
7595         * sysdeps/mach/powerpc/machine-lock.h: Likewise.
7596         * sysdeps/mach/powerpc/machine-sp.h: Likewise.
7597         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
7598         * sysdeps/s390/bits/string.h: Likewise.
7599         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
7600         * sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
7601         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
7602         * sysdeps/unix/sysv/linux/bits/sigset.h: Likewise.
7603         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
7604         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Likewise.
7605         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
7606         * wcsmbs/bits/wchar2.h: Likewise.
7607         * wcsmbs/wchar.h: Likewise.
7608         * stdlib/gmp.h: Likewise.  Include <features.h> to get
7609         __extern_inline definition.
7610
7611 2007-03-15  Jakub Jelinek  <jakub@redhat.com>
7612
7613         * locale/programs/ld-ctype.c (find_translit): Return NULL if ctype is
7614         NULL.
7615
7616         [BZ #3919]
7617         * math/libm-test.inc (log_test): Test -Inf and NaN.
7618         (log10_test, log1p_test, log2_test): Test -Inf.
7619         * sysdeps/i386/fpu/e_log.S (__ieee754_log): Don't raise
7620         FE_INVALID when argument is qNaN.
7621         * sysdeps/i386/fpu/e_logl.S (__ieee754_logl): Likewise.
7622         * sysdeps/i386/fpu/e_logf.S (__ieee754_logf): Likewise.
7623         * sysdeps/x86_64/fpu/e_logl.S (__ieee754_logl): Likewise.
7624         * sysdeps/x86_64/fpu/e_log10l.S (__ieee754_log10l): Replace
7625         andb $1, %ah with testb $1, %ah, don't test for parity, instead
7626         testb $4, %ah and jump if non-zero.
7627         * sysdeps/x86_64/fpu/e_log2l.S (__ieee754_log2l): Likewise.
7628         * sysdeps/x86_64/fpu/s_log1pl.S (__log1pl): Likewise.
7629
7630         [BZ #4101]
7631         * argp/argp-help.c (hol_cluster_cmp): Fix comparisons used to find
7632         ancestors with the same depths.
7633         Patch by Niels Moeller <nisse@lysator.liu.se>.
7634         (filter_doc): Don't crash if argp is NULL.
7635         * argp/Makefile (tests): Add tst-argp2.
7636         * argp/tst-argp2.c: New test.
7637
7638         [BZ #4130]
7639         * login/utmp_file.c (setutent_file): Use O_LARGEFILE for
7640         open_not_cancel_2.
7641         (updwtmp_file): Likewise.
7642
7643         [BZ #4181]
7644         * inet/inet6_opt.c (add_padding): Only insert padding if npad > 0.
7645         (inet6_opt_append): Don't check extlen is big enough if extbuf
7646         is NULL.
7647         (inet6_opt_finish): Likewise.
7648         * inet/Makefile (tests): Add test-inet6_opt.
7649         * inet/test-inet6_opt.c: New test.
7650
7651         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Never
7652         reallocate the buffer, instead fail for MSG_TRUNC or for EBUSY
7653         NLMSG_ERR.  Instead use a page sized buffer.
7654         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Use page sized
7655         buffer.
7656
7657 2007-03-14  Richard Henderson  <rth@redhat.com>
7658
7659         * sysdeps/alpha/fpu/s_llround.c: New file.
7660         * sysdeps/alpha/fpu/s_llroundf.c: New file.
7661         * sysdeps/alpha/fpu/s_lround.c: New file.
7662         * sysdeps/alpha/fpu/s_lroundf.c: New file.
7663         * sysdeps/alpha/fpu/s_round.c: New file.
7664         * sysdeps/alpha/fpu/s_roundf.c: New file.
7665         * sysdeps/alpha/fpu/s_trunc.c: New file.
7666         * sysdeps/alpha/fpu/s_truncf.c: New file.
7667
7668         * sysdeps/alpha/fpu/s_ceil.c: Rewrite without branches.
7669         * sysdeps/alpha/fpu/s_ceilf.c: Likewise.
7670         * sysdeps/alpha/fpu/s_floor.c: Likewise.
7671         * sysdeps/alpha/fpu/s_floorf.c: Likewise.
7672         * sysdeps/alpha/fpu/s_rint.c: Likewise.
7673         * sysdeps/alpha/fpu/s_rintf.c: Likewise.
7674
7675         * sysdeps/alpha/fpu/s_fmax.S: New file.
7676         * sysdeps/alpha/fpu/s_fmaxf.S: New file.
7677         * sysdeps/alpha/fpu/s_fmin.S: New file.
7678         * sysdeps/alpha/fpu/s_fminf.S: New file.
7679         * sysdeps/alpha/fpu/s_isnan.c: New file.
7680         * sysdeps/alpha/fpu/s_isnanf.c: New file.
7681         * sysdeps/alpha/fpu/s_llrint.c: New file.
7682         * sysdeps/alpha/fpu/s_llrintf.c: New file.
7683         * sysdeps/alpha/fpu/s_lrint.c: New file.
7684         * sysdeps/alpha/fpu/s_lrintf.c: New file.
7685         * sysdeps/alpha/fpu/s_nearbyint.c: New file.
7686         * sysdeps/alpha/fpu/s_nearbyintf.c: New file.
7687
7688         * sysdeps/alpha/fpu/bits/mathinline.h (__floorf, __floor): Remove.
7689         (__fdimf, fdimf, __fdim, fdim): Remove.
7690         (__signbitf, __signbit, __signbitl): Use gcc builtin if available.
7691         (__isnanf, __isnan, __isnanl): New.
7692
7693 2007-03-13  Richard Henderson  <rth@redhat.com>
7694
7695         * sysdeps/ieee754/ldbl-128/Makefile: New file.
7696
7697 2007-03-13  Richard Henderson  <rth@redhat.com>
7698
7699         * sysdeps/alpha/Makefile (sysdep-CFLAGS): Force dynamic rounding.
7700         * sysdeps/alpha/fpu/bits/mathinline.h (__signbitl): New.
7701         * sysdeps/alpha/fpu/libm-test-ulps: Regenerate.
7702         * sysdeps/unix/sysv/linux/alpha/alphaev6/fpu/Implies: New file.
7703         * sysdeps/unix/sysv/linux/alpha/alphaev67/fpu/Implies: New file.
7704         * sysdeps/unix/sysv/linux/alpha/fpu/Implies: New file.
7705
7706 2007-03-13  Richard Henderson  <rth@redhat.com>
7707
7708         * elf/dl-support.c (_dl_aux_init): Honor DL_PLATFORM_AUXV.
7709         * sysdeps/unix/sysv/linux/alpha/dl-auxv.h: New file.
7710         * sysdeps/unix/sysv/linux/alpha/dl-support.c: New file.
7711         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c (__libc_alpha_cache_shape):
7712         Move to dl-auxv.h; initialize instead of extern weak.
7713         (DL_PLATFORM_AUXV): Move to dl-auxv.h; don't test for undef
7714         weak symbol.
7715         * sysdeps/unix/sysv/linux/alpha/sysconf.c (__libc_alpha_cache_shape):
7716         Extern instead of initialized.
7717
7718 2007-03-13  Richard Henderson  <rth@redhat.com>
7719
7720         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add support for
7721         __sigsuspend_nocancel.
7722
7723 2007-03-06  Ulrich Drepper  <drepper@redhat.com>
7724
7725         * sysdeps/posix/getaddrinfo.c (get_scope): Correct test for
7726         172.16/12 address range.
7727
7728 2007-03-02  Jakub Jelinek  <jakub@redhat.com>
7729
7730         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Retry with
7731         a new netlink socket if NLMSG_ERR -EBUSY is seen after some MSG_TRUNC
7732         message.
7733
7734 2007-03-01  Jakub Jelinek  <jakub@redhat.com>
7735
7736         [BZ #4069]
7737         * sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Check for NaN
7738         earlier.
7739         * math/libm-test.inc (pow_test): Add more tests involving NaNs.
7740
7741         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Avoid invalid exception
7742         for x qNaN and y either +-inf or non-integer value.
7743         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Likewise.
7744         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
7745         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
7746
7747 2007-02-10  Mike Frysinger  <vapier@gentoo.org>
7748
7749         * sysdeps/unix/sysv/linux/sh/Makefile: Remove sys/io.h
7750         from sysdep_headers.
7751
7752 2007-02-28  Jakub Jelinek  <jakub@redhat.com>
7753
7754         * time/tzfile.c (find_transition): Instead of a linear search try to
7755         guess the transition index, use a linear search if the result is at
7756         most 10 transitions away from the guess or binary search otherwise.
7757
7758 2007-02-27  Jakub Jelinek  <jakub@redhat.com>
7759
7760         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Fix
7761         memory reallocation.
7762
7763 2007-02-21  Ulrich Drepper  <drepper@redhat.com>
7764
7765         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Add branch predictions
7766         and fix some typos.
7767         Optimize use of TOLOWER.
7768
7769         [BZ #3325]
7770         * sysdeps/i386/fpu/e_fmodf.S: Revert last changes, keep using fprem.
7771         * sysdeps/i386/fpu/e_fmodl.c: Likewise.
7772         * sysdeps/i386/fpu/e_fmod.S: Likewise.
7773
7774         [BZ #3458]
7775         * sysdeps/unix/sysv/linux/posix_madvise.c: New file.
7776         * sysdeps/unix/sysv/linux/syscalls.list: Remove posix_madvise entry.
7777
7778         [BZ #4076]
7779         * io/ftw.c (ftw_startup): Handle special case of FTW_CHDIR in /.
7780         (open_dir_stream): Likewise.
7781         * io/Makefile (tests): Add bug-ftw5.
7782         * io/bug-ftw5.c: New file.
7783
7784         * nscd/hstcache.c (cache_addhst): Remove unnecessary conditional.
7785         * nscd/servicescache.c (cache_addserv): Likewise.
7786
7787         * nscd/grpcache.c (cache_addgr): In case a record changed on
7788         refresh, adjust key_copy.
7789
7790         [BZ #4074]
7791         * nscd/pwdcache.c (cache_addpw): In case a record changed on
7792         refresh, adjust key_copy.
7793
7794         [BZ #4070]
7795         * stdio-common/printf_fp.c (___printf_fp): Handle a few more
7796         special cases.
7797         * stdio-common/tfformat.c (sprint_doubles): Some more tests.
7798
7799 2007-02-19  Ulrich Drepper  <drepper@redhat.com>
7800
7801         * stdio-common/printf_fp.c (___printf_fp): Cleanups and minor
7802         optimization.
7803
7804         * stdio-common/vfscanf.c: Small cleanups throughout.
7805
7806 2007-02-18  Ulrich Drepper  <drepper@redhat.com>
7807
7808         [BZ #3325]
7809         * sysdeps/i386/fpu/e_fmodf.S: Use fprem1 instead of fprem.
7810         * sysdeps/i386/fpu/e_fmodl.c: Likewise.
7811         * sysdeps/i386/fpu/e_fmod.S: Likewise.
7812         Patch by Jared Casper <jaredcasper@gmail.com>.
7813
7814         * sysdeps/unix/closedir.c: Outside libc don't use locking.
7815         * sysdeps/unix/opendir.c: Likewise.
7816         * sysdeps/unix/readdir.c: Likewise.
7817
7818         [BZ #2211]
7819         * stdio-common/vfscanf.c: Handle localized digits etc for floating
7820         point numbers.
7821         Patch mostly by Hamed Malek <hamed@farsiweb.info>.
7822
7823         * stdio-common/vfscanf.c: Fix problems in width accounting.
7824         * stdio-common/tst-sscanf.c (double_tests): New tests.
7825         (main): Hook them up.
7826
7827         * stdio-common/vfscanf.c: Remove unused WIDTH handling.
7828         More simplifications of floating-point reader.
7829
7830         * stdio-common/Makefile (tests): Add tst-swscanf.
7831         * stdio-common/tst-sscanf.c: Make tests usable for swscanf
7832         testing.
7833         * stdio-common/tst-swscanf.c: New file.
7834
7835 2007-02-17  Ulrich Drepper  <drepper@redhat.com>
7836
7837         [BZ #2633]
7838         * libio/stdio.h: Define struct _IO_FILE in global namespace.
7839         * setjmp/setjmp.h: Define __jmp_buf_tag in global namespace.
7840         Remove using for __jmp_buf_tag.
7841         * locale/locale.h (struct lconv): Also define in std namespace.
7842         * wcsmbs/wchar.h: Move using declaration for tm out of namespace.
7843
7844         [BZ #3842]
7845         * sysdeps/posix/euidaccess.c [_LIBC] (euidaccess): Remove shortcut
7846         using __libc_enable_secure.
7847
7848         [BZ #3818]
7849         * sysdeps/unix/sysv/linux/sys/acct.h (struct acct_v3): Define.
7850
7851         [BZ #3745]
7852         * locale/programs/ld-collate.c (handle_ellipsis): Fix generation
7853         of names for ellipsises.
7854
7855         [BZ #3348]
7856         * malloc/memusage.sh: Cleanups.
7857         * debug/xtrace.sh: Quoting and trap changes.
7858
7859 2007-02-16  Ulrich Drepper  <drepper@redhat.com>
7860
7861         * locale/iso-3166.def: Add Jersey, Guernsey, and Isle Of Man entries.
7862
7863         * locale/iso-3166.def: Update entry for Serbia.
7864         * locale/iso-4217.def: Define RSD, remove CSD.
7865
7866         * sysdeps/x86_64/bits/atomic.h: One more change, this time for 16-
7867         and 64-bit operations.
7868
7869         [BZ #4040]
7870         * sysdeps/i386/i486/bits/atomic.h: One more change, this time for
7871         16-bit operations.
7872
7873         * nscd/nscd.c (parse_opt): One more conversion to use send instead
7874         of writev.
7875
7876 2007-02-15  Ulrich Drepper  <drepper@redhat.com>
7877
7878         [BZ #3991]
7879         * assert/assert.h (assert): Simplify.
7880         (assert_perror): Likewise.
7881         Patch by Israel G. Lugo <ilugo@bridonsecurity.com>.
7882
7883         * nscd/nscd_helper.c (open_socket): Don't send padding bytes from
7884         reqdata.
7885
7886         * sysdeps/unix/sysv/linux/x86_64/send.c (__libc_send): Cosmetic
7887         change: don't pass NULL in place of an integer.
7888
7889 2007-02-02  Bruno Haible  <bruno@clisp.org>
7890
7891         [BZ #3954]
7892         * iconvdata/ksc5601.c (__ksc5601_sym_to_ucs, __ksc5601_sym_from_ucs):
7893         Add mapping for U+327E.
7894         * iconvdata/ksc5601.h (KSC5601_SYMBOL): Increment.
7895         * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
7896         mapping of 0xD9 0xE8.
7897         * iconvdata/uhc.c (BODY for FROM_LOOP, BODY for TO_LOOP): Disable
7898         mapping of U+327E.
7899         Reported by Jungshik Shin <jungshik@google.com>.
7900
7901         [BZ #3955]
7902         * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
7903         mapping of 0xD9 0xE6 and of 0xD9 0xE7.
7904         Reported by Jungshik Shin <jungshik@google.com>.
7905
7906 2007-02-14  Ulrich Drepper  <drepper@redhat.com>
7907
7908         * sysdeps/x86_64/bits/atomic;h: Fix asm parameters for some
7909         byte variants.
7910
7911         [BZ #4040]
7912         * sysdeps/i386/i486/bits/atomic.h: Fix asm parameters for some
7913         byte variants.  Patch mostly be tom@tommay.net.
7914
7915 2007-02-14  Jakub Jelinek  <jakub@redhat.com>
7916
7917         [BZ #3996]
7918         * posix/glob.c (attribute_hidden): Define if not defined.
7919         (glob): Unescape dirname, filename or username when needed and not
7920         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
7921         is NULL.  Handle unescaped [ in pattern without closing ].
7922         Don't pass GLOB_CHECK down to recursive glob for directories.
7923         (__glob_pattern_type): New function.
7924         (__glob_pattern_p): Implement using __glob_pattern_type.
7925         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
7926         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
7927         Remove unreachable code.
7928         * posix/globtest.sh: Add a couple of new tests.
7929
7930 2007-02-13  Ulrich Drepper  <drepper@redhat.com>
7931
7932         * po/ru.po: Update from translation team.
7933
7934 2007-02-12  Jakub Jelinek  <jakub@redhat.com>
7935
7936         * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __amdfam10__
7937         to the list of i486+ CPUs.
7938         * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
7939
7940 2007-02-12  Ulrich Drepper  <drepper@redhat.com>
7941
7942         * elf/rtld.c (RESOLVE_MAP): Always return bootstrap_map reference.
7943         * elf/Makefile ($(objpfx)ld.so): Check that ld.so has no undefined
7944         references.
7945
7946 2007-02-09  Ulrich Drepper  <drepper@redhat.com>
7947
7948         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Remove incorrect comment.
7949
7950         * resolv/res_init.c (res_setoptions): Recognize edns0 option.
7951         * resolv/res_mkquery.c: Define __res_nopt.
7952         * resolv/res_query.c (__libc_res_nquery): If RES_USE_EDNS0 is set
7953         try adding EDNS0 record.
7954         * resolv/res_send.c (send_dg): If request failed with FORMERR and
7955         EDNS0 record was send make sure we don't try it again.
7956         * resolv/resolv.h: Define RES_F_EDNS0ERR and RES_USE_EDNS0.
7957         * include/resolv.h: Declare __res_nopt.
7958
7959 2007-02-08  Jakub Jelinek  <jakub@redhat.com>
7960
7961         [BZ #3944]
7962         * time/strptime_l.c (__strptime_internal): Set have_mon for
7963         %b/%B/%h.  Set have_mon and have_mday if tm_mon and tm_mday
7964         have been computed from tm_yday and tm_year.  Don't crash
7965         in day_of_the_week or day_of_the_year if not have_mon
7966         and tm_mon contains bogus value.
7967         * time/Makefile (tests): Add tst-strptime3.
7968         * time/tst-strptime3.c: New test.
7969
7970 2007-02-05  Jakub Jelinek  <jakub@redhat.com>
7971
7972         [BZ #3957]
7973         * posix/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
7974         bit for RE_HAT_LISTS_NOT_NEWLINE.
7975         (build_charclass_op): Remove bogus comment.
7976         * posix/Makefile (tests): Add bug-regex27 and bug-regex28.
7977         * posix/bug-regex27.c: New test.
7978         * posix/bug-regex28.c: New test.
7979
7980 2007-02-03  Ulrich Drepper  <drepper@redhat.com>
7981
7982         * po/sv.po: Update from translation team.
7983
7984 2007-02-02  Ulrich Drepper  <drepper@redhat.com>
7985
7986         * nscd/nscd_helper.c (open_socket): Minor size optimization.
7987
7988 2007-02-02  Jakub Jelinek  <jakub@redhat.com>
7989
7990         * include/locale.h (__uselocale): Add libc_hidden_proto.
7991         * locale/uselocale.c (__uselocale): Add libc_hidden_def.
7992
7993         * nscd/nscd_helper.c (open_socket): Use __gettimeofday instead of
7994         gettimeofday.
7995
7996 2007-02-01  Ulrich Drepper  <drepper@redhat.com>
7997
7998         * sysdeps/unix/sysv/linux/i386/sysdep.h (PTR_MANGLE): Roll value before
7999         returning.
8000         (PTR_DEMANGLE): Real definition now that it's not the same as
8001         PRT_MANGLE anymore.
8002         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
8003
8004         * string/strerror_l.c: New file.
8005         * string/Makefile (routines): Add strerror_l.
8006         * string/string.h: Declare strerror_l.
8007         * string/Versions: Export strerror_l for GLIBC_2.6.
8008
8009 2007-01-31  Ulrich Drepper  <drepper@redhat.com>
8010
8011         * nscd/nscd_helper.c (open_socket): Now takes request type and key
8012         as parameter.  Construct request record.  Try sending request
8013         before the first poll use, it usually succeeds.  Adjust all
8014         callers.
8015         * nscd/nscd-client.h: Define MAXKEYLEN.
8016         * nscd/connections.c (nscd_run): Don't define MAXKEYLEN here.
8017
8018 2007-01-31  Jakub Jelinek  <jakub@redhat.com>
8019
8020         * nscd/nscd-client.h (__nscd_cache_search): Remove const qualifier
8021         from return value.
8022         * nscd/nscd_helper.c: Include string.h.
8023         (__nscd_cache_search): Remove const qualifier from return value.
8024         On strict alignment architectures check hash entry and data head
8025         alignment.
8026         * nscd/nscd_getpw_r.c (nscd_getpw_r): Don't crash or fail because
8027         mmapped data during GC cycle contains garbage.  If
8028         __nscd_drop_map_ref fails, decrement mapped->counter when returning
8029         error or if retrying with NO_MAPPING, only __nscd_unmap if counter
8030         dropped to 0.
8031         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
8032         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise.
8033         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
8034         * nscd/nscd_getai.c (__nscd_getai): Likewise.
8035         * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
8036
8037 2007-01-30  Ulrich Drepper  <drepper@redhat.com>
8038
8039         * misc/hsearch_r.c (hdestroy_r): Remove unnecessary test.
8040
8041 2007-01-26  Ulrich Drepper  <drepper@redhat.com>
8042
8043         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Use register
8044         names not numbers in cfi_*.
8045
8046 2007-01-26  Andreas Jaeger  <aj@suse.de>
8047
8048         * sysdeps/unix/sysv/linux/sys/personality.h (ADDR_NO_RANDOMIZE,
8049         ADDR_LIMIT_3GB, PER_LINUX_32BIT, PER_LINUX32_3GB): Add.
8050         Correct values of PER_HPUX and PER_OSF4.
8051
8052 2007-01-24  Ulrich Drepper  <drepper@redhat.com>
8053
8054         * elf/dl-minimal.c: Undefine _itoa first.
8055         * stdio-common/_itoa.h: Define _itoa and _fitoa for 64-bit platforms.
8056         * malloc/mtrace.c: Revert last change.
8057         * posix/wordexp.c: Likewise.
8058
8059 2007-01-24  Jakub Jelinek  <jakub@redhat.com>
8060
8061         * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __nocona__, __core2__
8062         and __geode__ to the list of i486+ CPUs.
8063         * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
8064
8065 2007-01-23  Ulrich Drepper  <drepper@redhat.com>
8066
8067         * stdio-common/_itoa.c: Include <limits.h>.
8068         * stdio-common/_itowa.c: Likewise.
8069
8070 2007-01-22  Ulrich Drepper  <drepper@redhat.com>
8071
8072         * stdio-common/_itowa.c: Don't compile _itowa for 64-bit
8073         platforms.
8074         * stdio-common/_itoa.c: Don't compile in _itoa and _fitoa for
8075         64-bit platforms.
8076         * malloc/mtrace.c (tr_where): Use _fitoa_word instead of _fitoa if
8077         possible.
8078         * posix/wordexp.c (parse_arith): Use _itoa_word instead of _itoa
8079         if possible.
8080
8081         [BZ #3902]
8082         * stdio-common/_itoa.c (_itoa): Make sure at least a zero is emitted.
8083         * stdio-common/Makefile (tests): Add bug17.
8084         * stdio-common/bug17.c: New file.
8085
8086 2007-01-19  Ulrich Drepper  <drepper@redhat.com>
8087
8088         * iconvdata/brf.c: New file.
8089         * iconvdata/testdata/BRF: New file.
8090         * iconvdata/testdata/BRF..UTF8: New file.
8091         Contributed by Samuel Thibault <samuel.thibault@ens-lyon.org>.
8092         * iconvdata/Makefile: Add rules to build BRF.
8093         * iconvdata/TESTS: Add BRF entry.
8094         * iconvdata/gconv-modules: Likewise.
8095         * iconvdata/tst-tables.sh: Likewise.
8096
8097 2007-01-18  Anton Nikishaev  <anton.nik@gmail.com>
8098
8099         * wcsmbs/wchar.h (wcstoll): Fix comment, function returns value of
8100         type `long long int', not `long int'.
8101         (wcstoq): Likewise.
8102
8103 2007-01-18  Ulrich Drepper  <drepper@redhat.com>
8104
8105         * scripts/gen-as-const.awk: Add cast to long to avoid int promotion
8106         of values on 64-bit platforms which are too large.
8107
8108 2007-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
8109             Joe Kerian  <jkerian@us.us.ibm.com>
8110
8111         [BZ #2749]
8112         * sysdeps/ieee754/ldbl-128ibm/s_copysignl.c: Include
8113         <math_ldbl_opt.h>.  Remove weak_alias.  Use long_double_symbol macro.
8114         (__copysignl): Use signbit() for comparison.
8115         * sysdeps/ieee754/ldbl-128ibm/s_fabsl.c (__fabsl): Correct parms for
8116         SET_LDOUBLE_WORDS64.
8117
8118         [BZ #2423, #2749]
8119         * sysdeps/ieee754/ldbl-128ibm/s_ceill.c: Don't include <fenv_libc.h>.
8120         (__ceill): Remove calls to fegetround(), fesetround().
8121         * sysdeps/ieee754/ldbl-128ibm/s_floorl.c: Likewise.
8122         * sysdeps/ieee754/ldbl-128ibm/s_roundl.c: Likewise.
8123         * sysdeps/ieee754/ldbl-128ibm/s_truncl.c: Likewise.
8124
8125 2007-01-17  Jakub Jelinek  <jakub@redhat.com>
8126
8127         * nscd/nscd_getserv_r.c (nscd_getserv_r): Fix pastos.
8128
8129         * sysdeps/unix/sysv/linux/getdents.c (offsetof): Remove.
8130
8131 2007-01-17  Ulrich Drepper  <drepper@redhat.com>
8132
8133         * sysdeps/unix/sysv/linux/fatal-prepare.h: Use PTHFCT_CALL to
8134         demangle pointer.
8135         * csu/libc-start.c: Likewise.
8136
8137 2007-01-16  Ulrich Drepper  <drepper@redhat.com>
8138
8139         * sysdeps/posix/system.c: Remove NO_WAITPID support, it cannot
8140         really work anyway.
8141
8142 2007-01-15  Ulrich Drepper  <drepper@redhat.com>
8143
8144         * nscd/connections.c (servinfo): Renamed to reqinfo.  Change all
8145         users.
8146         (handle_request): Remove unnecessary tests.
8147
8148         * nscd/cache.c (cache_add): Record the failure to add to the cache.
8149
8150 2007-01-15  Jakub Jelinek  <jakub@redhat.com>
8151
8152         * soft-fp/op-common.h (FP_TRUNC): When truncating a NaN, clear
8153         workbits in semi-raw fraction.
8154
8155         * math/test-misc.c: Add new tests.
8156
8157 2007-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
8158
8159         * math/basic-test.c: Include test-skeleton.c.
8160         (TEST_TRUNC): Define.
8161         (truncdfsf_test, trunctfsf_test, trunctfdf_test): New.
8162         (main): Rename to ...
8163         (do_test): ...this.  Run new tests.
8164         (TEST_FUNCTION): Define.
8165
8166 2006-10-05  Steven Munroe  <sjmunroe@us.ibm.com>
8167             Joe Kerian  <jkerian@us.us.ibm.com>
8168
8169         [BZ #2749]
8170         * soft-fp/op-4.h (__FP_FRAC_SUB_3, __FP_FRAC_SUB_4): Correct borrow
8171         handling for high words.
8172         * soft-fp/op-common.h (_FP_OVERFLOW_SEMIRAW): Always set inexact
8173         and overflow for infinity.
8174
8175 2007-01-15  Ulrich Drepper  <drepper@redhat.com>
8176
8177         * nscd/connections.c (handle_request): Add a __builtin_expect.
8178
8179         * nscd/connections.c (serv2db): Change type into structure which
8180         also says whether this is a request for data.  Renamed to
8181         servinfo.  All users changed.
8182         (handle_request): Much simpler test whether we should search the cache.
8183
8184         * nscd/connections.c (handle_request): Fix thinko in selinux test
8185         invocation.
8186
8187         * sysdeps/generic/ldsodefs.h: Define DL_LOOKUP_SCOPE_LOCK.
8188         * elf/dl-lookup.c (add_dependency): If scope map is locked, unlock
8189         it before getting dl_load_lock and then relock.
8190         (_dl_lookup_symbol_x): Pass flags to add_dependency.
8191         When rerunning _dl_lookup_symbol_x, compute symbol_scope again in
8192         case we unlocked the scope.
8193         * elf/dl-runtime.c (_dl_fixup): Pass DL_LOOKUP_SCOPE_LOCK to
8194         _dl_lookup_symbol_x in case we locked the scope.
8195         (_dl_profile_fixup): Likewise.
8196         * elf/dl-sym.c (do_sym): In flags passed to call_dl_lookup, also
8197         set DL_LOOKUP_SCOPE_LOCK.
8198
8199 2007-01-13  Ulrich Drepper  <drepper@redhat.com>
8200
8201         * inet/Makefile: Define CFLAGS-getsrvbynm_r.c and
8202         CFLAGS-getsrvbynpt_r.c.
8203         * nscd/getsrvbynm_r.c: New file.
8204         * nscd/getsrvbypt_r.c: New file.
8205         * nscd/nscd_getserv_r.c: New file.
8206         * nscd/servicescache.c: New file.
8207         * nscd/Makefile (routines): Add nscd_getserv_r.
8208         (nscd-modules): Add getsrvbynm_r, getsrvbypt_r, and servicescache.
8209         Define CFLAGS-servicescache.c, CFLAGS-getsrvbynm_r.c, and
8210         CFLAGS-getsrvbypt_r.c.
8211         * nscd/cache.c (prune_cache): Rewrite to get re-add function from
8212         table.  Add entries for services database.
8213         * nscd/connections.c (serv2str): Mark as const.  Add entries for
8214         services database.
8215         (dbs): Add .reset_res and servdb initialization.
8216         (serv2db): Add entries for services database.
8217         (verify_persistent_db): Accept dbnr == servdb.
8218         (invalidate_cache): Rewrite database name recognition to use a table.
8219         Call res_init() if .reset_res is set for database.
8220         (handle_request): Add code to handle services database.
8221         * nscd/gai.c: Don't define __getservbyname_r.
8222         * nscd/nscd-client.h (request_type): Remove LASTDBREQ, add
8223         GETSERVBYNAME, GETSERVBYPORT, GETFDSERV.
8224         (serv_response_header): Define.
8225         (struct datahead): Add serv_response_header member.
8226         * nscd/nscd.c (parse_opt): Rewrite parsing of -i parameter value
8227         using table.
8228         * nscd/nscd.conf: Add entries for services database.
8229         * nscd/nscd.h: Adjust declaration of dbnames and serv2str.
8230         Declare serv_iov_disabled.
8231         Declare addservbyname, readdservbyname, addservbyport, and
8232         readdservbyport.
8233         * nscd/nscd_conf.c (dbnames): Mark as const.  Add services entry.
8234         (find_db): Fix error message.
8235         * nscd/nscd_proto.h: Declare __nss_not_use_nscd_services,
8236         __nscd_getservbyname_r, and __nscd_getservbyport_r.
8237         * nscd/selinux.c (perms): Add entries for services database.
8238         * nss/Versions: Export __nss_services_lookup with GLIBC_PRIVATE.
8239         * nss/nsswitch.c (__nss_disable_nscd): Also disable services database.
8240
8241         * nscd/grpcache.c: Remove obsolete code.  Cleanups.
8242         * nscd/hstcache.c: Likewise.
8243         * nscd/pwdcache.c: Likewise.
8244
8245         * nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): Correct
8246         computation of keylen.
8247
8248         * include/string.h: Only redefine strndupa if this is really for
8249         libc code.
8250
8251 2007-01-12  Ulrich Drepper  <drepper@redhat.com>
8252
8253         * nscd/nscd_gethst_r.c: Minor cleanups.
8254
8255         * nscd/connections.c (handle_request): Check selinux permissions
8256         for all non-admin commands.
8257
8258         * sysdeps/i386/i486/bits/atomic.h: Define
8259         atomic_compare_and_exchange_val_acq,
8260         atomic_compare_and_exchange_bool_acq, and atomic_exchange_and_add
8261         using __sync_* built-ins for gcc >= 4.1.
8262         * sysdeps/x86_64/bits/atomic.h: Likewise.
8263
8264         [BZ #3840]
8265         * scripts/check-local-headers.sh: Restrict to testing .o.d, .os.d,
8266         and .oS.d files.
8267
8268 2007-01-05  Steven Munroe  <sjmunroe@us.ibm.com>
8269
8270         * stdlib/tst-makecontext.c: Include errno.h.  Change main()
8271         to do_test().  Define TEST_FUNCTION. Include test-skeleton.c.
8272         (do_test): Check errno and exit(0) if ENOSYS.
8273
8274 2007-01-11  Jakub Jelinek  <jakub@redhat.com>
8275
8276         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix handling of multi-byte
8277         thousands separators.
8278         * stdlib/Makefile: Add rules to build and run tst-strtod4.
8279         * stdlib/tst-strtod4.c: New test.
8280
8281         [BZ #3855]
8282         * stdlib/strtod_l.c (____STRTOF_INTERNAL): 0x. not followed by
8283         hexadecimal digit should accept just the initial 0.
8284         * stdlib/tst-strtod2.c (tests): New variable.
8285         (do_test): Run several tests rather than just one.
8286
8287 2007-01-11  Jakub Jelinek  <jakub@redhat.com>
8288
8289         * sysdeps/i386/soft-fp/sfp-machine.h: Remove.
8290         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
8291
8292 2007-01-10  Ulrich Drepper  <drepper@redhat.com>
8293
8294         * io/fts.c: Make sure fts_cur is always valid after return from
8295         fts_read.
8296         Patch by Miloslav Trmac <mitr@redhat.com>.
8297
8298 2006-10-27  Richard Sandiford  <richard@codesourcery.com>
8299
8300         * elf/elf.h (R_MIPS_GLOB_DAT): Define.
8301         (R_MIPS_NUM): Bump by 1.
8302
8303 2007-01-03  Jakub Jelinek  <jakub@redhat.com>
8304
8305         * posix/execvp.c: Include alloca.h.
8306         (allocate_scripts_argv): Renamed to...
8307         (scripts_argv): ... this.  Don't allocate buffer here nor count
8308         arguments.
8309         (execvp): Use alloca if possible.
8310         * posix/Makefile: Add rules to build and run tst-vfork3 test.
8311         * posix/tst-vfork3.c: New test.
8312
8313 2007-01-03  Ulrich Drepper  <drepper@redhat.com>
8314
8315         * string/Makefile (tst-strxfrm2-ENV): Define.
8316         * stdlib/Makefile (tst-strtod3-ENV): Define.
8317
8318 2007-01-02  Ulrich Drepper  <drepper@redhat.com>
8319
8320         * posix/getconf.c: Update copyright year.
8321         * nss/getent.c: Likewise.
8322         * iconv/iconvconfig.c: Likewise.
8323         * iconv/iconv_prog.c: Likewise.
8324         * elf/ldconfig.c: Likewise.
8325         * catgets/gencat.c: Likewise.
8326         * csu/version.c: Likewise.
8327         * elf/ldd.bash.in: Likewise.
8328         * elf/sprof.c (print_version): Likewise.
8329         * locale/programs/locale.c: Likewise.
8330         * locale/programs/localedef.c: Likewise.
8331         * nscd/nscd.c (print_version): Likewise.
8332         * debug/xtrace.sh: Likewise.
8333         * malloc/memusage.sh: Likewise.
8334         * malloc/mtrace.pl: Likewise.
8335         * debug/catchsegv.sh: Likewise.
8336
8337 2006-12-24  Ulrich Drepper  <drepper@redhat.com>
8338
8339         * malloc/malloc.c (sYSMALLOc): Remove some unnecessary alignment
8340         attempts.
8341
8342 2006-12-23  Ulrich Drepper  <drepper@redhat.com>
8343
8344         * posix/wordexp.c: Remove some unnecessary tests.
8345
8346 2006-12-22  Gavin Romig-Koch  <gavin@redhat.com>
8347
8348         * nis/nss_compat/compat-grp.c (internal_getgrgid_r): Don't
8349         blacklist the group till after we look it up.
8350
8351 2006-12-21  Ulrich Drepper  <drepper@redhat.com>
8352
8353         * include/atomic.h (atomic_forced_read): New macro.
8354
8355 2006-12-20  SUGIOKA Toshinobu  <sugioka@itonet.co.jp>
8356
8357         * sysdeps/unix/sysv/linux/sh/bits/shm.h: New file.
8358
8359 2006-12-19  Jakub Jelinek  <jakub@redhat.com>
8360
8361         * nss/getXXbyYY_r.c: Include atomic.h.
8362         (INTERNAL (REENTRANT_NAME)): Write startp after start_fct,
8363         add atomic_write_barrier () in between.
8364
8365         * stdlib/Makefile (tests): Add tst-makecontext.
8366         * stdlib/tst-makecontext.c: New test.
8367
8368         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
8369         (__makecontext): Don't realign uc_mcontext.uc_regs.
8370
8371 2006-11-28  Jakub Jelinek  <jakub@redhat.com>
8372
8373         * elf/dl-support.c: Include dl-procinfo.h.
8374         * sysdeps/powerpc/dl-procinfo.h (PPC_PLATFORM_POWER4,
8375         PPC_PLATFORM_PPC970, PPC_PLATFORM_POWER5, PPC_PLATFORM_POWER5_PLUS,
8376         PPC_PLATFORM_POWER6, PPC_PLATFORM_CELL_BE, PPC_PLATFORM_POWER6X):
8377         Define.
8378         (_dl_string_platform): Use PPC_PLATFORM_* macros instead of
8379         hardcoded constants.
8380         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_platform): Use
8381         PPC_PLATFORM_* macros for array designators.
8382
8383 2006-11-11  Steven Munroe  <sjmunroe@us.ibm.com>
8384
8385         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 3 new cap
8386         names to the beginning.
8387         (_dl_powerpc_platforms): Add "power6x".
8388         * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
8389         (HWCAP_IMPORTANT): Add PPC_FEATURE_HAS_DFP.
8390         (_DL_PLATFORMS_COUNT): Increase.
8391         (_dl_string_platform): Handle power6x case.
8392         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_PA6T, PPC_FEATURE_HAS_DFP,
8393         PPC_FEATURE_POWER6_EXT): Define.
8394         (PPC_FEATURE_POWER5, PPC_FEATURE_POWER5_PLUS): Correct Comment.
8395
8396 2006-12-18  Jakub Jelinek  <jakub@redhat.com>
8397
8398         [BZ #3747]
8399         * stdlib/jrand48_r.c (__jrand48_r): Make sure result is in the
8400         [-2^31 .. 2^31) range.
8401         * stdlib/tst-rand48.c (main): Fix expected values for 64-bit
8402         targets.
8403         * stdlib/tst-rand48-2.c: New test.
8404         * stdlib/Makefile (tests): Add tst-rand48-2.
8405
8406 2006-12-14  Jakub Jelinek  <jakub@redhat.com>
8407
8408         * misc/tst-pselect.c (do_test): Fix sigblock argument.
8409
8410 2006-12-14  Ulrich Drepper  <drepper@redhat.com>
8411
8412         * misc/tst-pselect.c (do_test): Make sure the helper process is
8413         terminating when the test is aborted.
8414
8415 2006-12-13  Ulrich Drepper  <drepper@redhat.com>
8416
8417         * sysdeps/unix/sysv/linux/bits/statvfs.h: Define ST_RELATIME.
8418         * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags):
8419         Handle relatime mount option.
8420
8421         [BZ #2337]
8422         * libio/Makefile (tests): Add tst-setvbuf1.
8423         * libio/tst-setvbuf1.c: New file.
8424
8425 2006-12-08  Jakub Jelinek  <jakub@redhat.com>
8426
8427         [BZ #2337]
8428         * libio/genops.c (__uflow): Fix a typo.
8429         * libio/wfiledoalloc.c (_IO_wfile_doallocate): Don't stat
8430         nor set _IO_LINE_BUF bit here.  Size the wide buffer based on
8431         the narrow buffer size.
8432
8433 2006-11-24  Jakub Jelinek  <jakub@redhat.com>
8434
8435         [BZ #2337]
8436         * libio/libio.h (_IO_FLAGS2_USER_WBUF): Define.
8437         * libio/wgenops.c (_IO_wsetb, _IO_wdefault_finish): Test and set
8438         _IO_FLAGS2_USER_WBUF bit in _flags2 instead of _IO_USER_BUF bit
8439         in _flags.
8440         * libio/wstrops.c (_IO_wstr_overflow, enlarge_userbuf,
8441         _IO_wstr_finish): Likewise.
8442         * libio/wmemstream.c (open_wmemstream): Likewise.
8443         * libio/fileops.c (_IO_new_file_close_it): Call _IO_set[bgp]
8444         even for wide streams.
8445
8446 2006-12-13  Jakub Jelinek  <jakub@redhat.com>
8447
8448         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Include
8449         kernel-features.h.
8450
8451 2006-12-11  Ulrich Drepper  <drepper@redhat.com>
8452
8453         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Parse thousand
8454         separators also if no non-zero digits found.
8455         * stdlib/Makefile (tests): Add tst-strtod3.
8456
8457 2006-12-09  Ulrich Drepper  <drepper@redhat.com>
8458
8459         [BZ #3632]
8460         * include/features.h: Fix comment about default value for
8461         _POSIX_C_SOURCE.
8462
8463         [BZ #3664]
8464         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix test to recognize
8465         empty parsed strings.
8466         * stdlib/Makefile (tests): Add tst-strtod2.
8467         * stdlib/tst-strtod2.c: New file.
8468
8469         [BZ #3673]
8470         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix exp_limit
8471         computation.
8472         * stdlib/Makefile (tests): Add tst-atof2.
8473         * stdlib/tst-atof2.c: New file.
8474
8475         [BZ #3674]
8476         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Adjust exponent value
8477         correctly if removing trailing zero of hex-float.
8478         * stdlib/Makefile (tests): Add tst-atof1.
8479         * stdlib/tst-atof1.c: New file.
8480
8481 2006-12-09  Jakub Jelinek  <jakub@redhat.com>
8482
8483         * misc/mntent_r.c (__hasmntopt): Check p[optlen] even when p == rest.
8484         Start searching for next comma at p rather than rest.
8485         * misc/Makefile (tests): Add tst-mntent2.
8486         * misc/tst-mntent2.c: New test.
8487
8488         * misc/getusershell.c (initshells): Check for integer overflows.
8489         Make strings buffer one bigger as fgets always succeeds when second
8490         argument is 1.  Don't use calloc for shells array.  Disallow
8491         / as shell.
8492
8493 2006-12-08  Ulrich Drepper  <drepper@redhat.com>
8494
8495         * malloc/memusage.c: Handle realloc with new size of zero and
8496         non-NULL pointer correctly.
8497         (me): Really write first record twice.
8498         (struct entry): Make format bi-arch safe.
8499         (dest): Write out more realloc statistics.
8500         * malloc/memusagestat.c (struct entry): Make format bi-arch safe.
8501
8502 2006-12-05  Jakub Jelinek  <jakub@redhat.com>
8503
8504         * nis/nis_subr.c (nis_getnames): Revert last change.
8505
8506 2006-12-04  Jakub Jelinek  <jakub@redhat.com>
8507
8508         * sysdeps/unix/sysv/linux/ttyname.c: Include termios.h.
8509         (ttyname): Use tcgetattr instead of isatty, don't set errno to ENOTTY.
8510         * sysdeps/unix/sysv/linux/ttyname_r.c: Include termios.h.
8511         (__ttyname_r): Use tcgetattr instead of isatty, don't set errno to
8512         ENOTTY.
8513         * io/Makefile: Add rules to build and run tst-ttyname_r test.
8514         * io/tst-ttyname_r.c: New test.
8515
8516 2006-12-03  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
8517
8518         * sysdeps/unix/sysv/linux/sh/sys/io.h: Removed.
8519
8520 2006-11-30  H.J. Lu  <hongjiu.lu@intel.com>
8521
8522         * sysdeps/i386/i686/memcmp.S: Use jump table as the base of
8523         jump table entries.
8524
8525 2006-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
8526
8527         * sysdeps/unix/sysv/linux/i386/clone.S: Provide CFI for the outermost
8528         `clone' function to ensure proper unwinding stop of gdb.
8529         * sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.
8530
8531 2006-12-01  Ulrich Drepper  <drepper@redhat.com>
8532
8533         * nscd/nscd.init: Remove obsolete and commented-out -S option
8534         handling.
8535
8536 2006-11-23  Jakub Jelinek  <jakub@redhat.com>
8537
8538         [BZ #3514]
8539         * manual/string.texi (strncmp): Fix pastos from wcscmp description.
8540
8541         [BZ #3515]
8542         * manual/string.texi (strtok): Remove duplicate paragraph.
8543
8544 2006-12-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
8545
8546         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Fix compatibility with
8547         libgcc not supporting `rflags' unwinding (register # >= 17).
8548
8549 2006-11-30  Jakub Jelinek  <jakub@redhat.com>
8550
8551         * sunrpc/svc_run.c (svc_run): Set my_pollfd to new_pollfd if realloc
8552         succeeded.
8553
8554 2006-11-29  Daniel Jacobowitz  <dan@codesourcery.com>
8555             Jakub Jelinek  <jakub@redhat.com>
8556             Jan Kratochvil  <jan.kratochvil@redhat.com>
8557
8558         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (restore_rt): Add correct
8559         unwind information.
8560         * sysdeps/unix/sysv/linux/x86_64/Makefile: Provide symbols for
8561         'restore_rt' even in the 'signal' directory.
8562         * sysdeps/unix/sysv/linux/x86_64/ucontext_i.sym: Extend the regs list.
8563
8564 2006-11-27  Jakub Jelinek  <jakub@redhat.com>
8565
8566         [BZ #3559]
8567         * sunrpc/svc_run.c (svc_run): Fail instead of segfaulting if
8568         malloc crashed.  Don't allocate memory unnecessarily in each
8569         loop.
8570
8571 2006-10-21  Jakub Jelinek  <jakub@redhat.com>
8572
8573         * resolv/mapv4v6addr.h (map_v4v6_address): Fix last change.
8574
8575 2006-11-20  Ulrich Drepper  <drepper@redhat.com>
8576
8577         * resolv/mapv4v6addr.h (map_v4v6_address): Optimize a bit.
8578
8579 2006-11-18  Bruno Haible  <bruno@clisp.org>
8580
8581         * sysdeps/unix/sysv/linux/i386/getgroups.c (__getgroups): Invoke
8582         __sysconf only after having tried to call getgroups32.
8583
8584 2006-11-19  Ulrich Drepper  <drepper@redhat.com>
8585
8586         * nss/nss_files/files-hosts.c (LINE_PARSER): Support IPv6-style
8587         addresses for IPv4 queries if they can be mapped.
8588
8589 2006-11-16  Jakub Jelinek  <jakub@redhat.com>
8590
8591         * sysdeps/x86_64/fpu/s_copysignf.S (__copysignf): Switch to .text.
8592         * sysdeps/x86_64/fpu/s_copysign.S (__copysign): Likewise.
8593         (signmask): Add .size directive.
8594         (othermask): Add .type directive.
8595
8596 2006-11-14  Ulrich Drepper  <drepper@redhat.com>
8597
8598         * po/nl.po: Update from translation team.
8599
8600         * timezone/zdump.c: Redo fix for BZ #3137.
8601
8602 2006-11-14  Jakub Jelinek  <jakub@redhat.com>
8603
8604         * nss/nss_files/files-alias.c (get_next_alias): Set line back
8605         to first_unused after parsing :include: file.
8606
8607 2006-11-10  Ulrich Drepper  <drepper@redhat.com>
8608
8609         * timezone/africa: Update from tzdata2006o.
8610         * timezone/antarctica: Likewise.
8611         * timezone/asia: Likewise.
8612         * timezone/australasia: Likewise.
8613         * timezone/backward: Likewise.
8614         * timezone/europe: Likewise.
8615         * timezone/iso3166.tab: Likewise.
8616         * timezone/northamerica: Likewise.
8617         * timezone/southamerica: Likewise.
8618         * timezone/zone.tab: Likewise.
8619
8620         * time/tzfile.c (__tzfile_read): Extend to handle new file format
8621         on machines with 64-bit time_t.
8622
8623         * timezone/checktab.awk: Update from tzcode2006o.
8624         * timezone/ialloc.c: Likewise.
8625         * timezone/private.h: Likewise.
8626         * timezone/scheck.c: Likewise.
8627         * timezone/tzfile.h: Likewise.
8628         * timezone/tzselect.ksh: Likewise.
8629         * timezone/zdump.c: Likewise.
8630         * timezone/zic.c: Likewise.
8631
8632         [BZ #3483]
8633         * elf/ldconfig.c (main): Call setlocale and textdomain.
8634         Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
8635
8636         [BZ #3480]
8637         * manual/argp.texi: Fix typos.
8638         * manual/charset.texi: Likewise.
8639         * manual/errno.texi: Likewise.
8640         * manual/filesys.texi: Likewise.
8641         * manual/lang.texi: Likewise.
8642         * manual/maint.texi: Likewise.
8643         * manual/memory.texi: Likewise.
8644         * manual/message.texi: Likewise.
8645         * manual/resource.texi: Likewise.
8646         * manual/search.texi: Likewise.
8647         * manual/signal.texi: Likewise.
8648         * manual/startup.texi: Likewise.
8649         * manual/stdio.texi: Likewise.
8650         * manual/sysinfo.texi: Likewise.
8651         * manual/syslog.texi: Likewise.
8652         * manual/time.texi: Likewise.
8653         Patch by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8654
8655         [BZ #3465]
8656         * sunrpc/clnt_raw.c: Minimal message improvements.
8657         * sunrpc/pm_getmaps.c: Likewise.
8658         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
8659         * nis/nis_print_group_entry.c: Likewise.
8660         * locale/programs/repertoire.c: Likewise.
8661         * locale/programs/charmap.c: Likewise.
8662         * malloc/memusage.sh: Likewise.
8663         * elf/dl-deps.c: Likewise.
8664         * locale/programs/ld-collate.c: Likewise.
8665         * libio/vswprintf.c: Likewise.
8666         * malloc/memusagestat.c: Likewise.
8667         * sunrpc/auth_unix.c: Likewise.
8668         * sunrpc/rpc_main.c: Likewise.
8669         * nscd/cache.c: Likewise.
8670         * locale/programs/repertoire.c: Unify output messages.
8671         * locale/programs/charmap.c: Likewise.
8672         * locale/programs/ld-ctype.c: Likewise.
8673         * locale/programs/ld-monetary.c: Likewise.
8674         * locale/programs/ld-numeric.c: Likewise.
8675         * locale/programs/ld-time.c: Likewise.
8676         * elf/ldconfig.c: Likewise.
8677         * nscd/selinux.c: Likewise.
8678         * elf/cache.c: Likewise.
8679         Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
8680
8681         [BZ #3451]
8682         * sysdeps/i386/fpu/bits/mathinline.h (floor): Make rounding mode
8683         change atomic.
8684         (ceil): Likewise.
8685
8686 2006-11-10  Jakub Jelinek  <jakub@redhat.com>
8687
8688         * string/strxfrm_l.c (STRXFRM): Fix trailing \1 optimization
8689         if N is one bigger than return value.
8690         * string/tst-strxfrm2.c (do_test): Also test strxfrm with l1 + 1
8691         and l1 last arguments, if buf is defined, verify the return value
8692         equals to strlen (buf) and verify no byte beyond passed length
8693         is modified.
8694
8695 2006-11-10  Ulrich Drepper  <drepper@redhat.com>
8696
8697         * po/sv.po: Update from translation team.
8698
8699 2006-11-09  Ulrich Drepper  <drepper@redhat.com>
8700
8701         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word): Add
8702         noinline attribute.
8703
8704 2006-11-10  Jakub Jelinek  <jakub@redhat.com>
8705
8706         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Add
8707         noinline attribute.
8708
8709         * sysdeps/gnu/siglist.c (__old_sys_siglist, __old_sys_sigabbrev):
8710         Use __new_sys_siglist instead of _sys_siglist_internal as
8711         second macro argument.
8712         (_old_sys_siglist): Use declare_symbol_alias macro instead of
8713         strong_alias.
8714
8715 2006-11-09  Ulrich Drepper  <drepper@redhat.com>
8716
8717         [BZ #3493]
8718         * posix/unistd.h (sysconf): Remove const attribute.
8719
8720         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Fix test for
8721         temporary or deprecated addresses.
8722         Patch by Sridhar Samudrala <sri@us.ibm.com>.
8723
8724         * string/Makefile (tests): Add tst-strxfrm2.
8725         * string/tst-strxfrm2.c: New file.
8726
8727 2006-10-09  Jakub Jelinek  <jakub@redhat.com>
8728
8729         * elf/dl-debug.c (_dl_debug_initialize): Check r->r_map for 0
8730         rather than r->r_brk.
8731
8732 2006-11-08  Jakub Jelinek  <jakub@redhat.com>
8733
8734         * string/strxfrm_l.c (STRXFRM): Do the trailing \1 removal
8735         optimization even if needed > n.
8736
8737         * elf/dl-load.c (decompose_rpath): Return bool rather than void.
8738         If l->l_name is on inhibit_rpath list, set sps->dirs to -1 and
8739         return false, otherwise return true.
8740         (cache_rpath): Return decompose_rpath return value.
8741
8742 2006-11-07  Jakub Jelinek  <jakub@redhat.com>
8743
8744         * include/libc-symbols.h (declare_symbol): Rename to...
8745         (declare_symbol_alias): ... this.  Add ORIGINAL argument, imply
8746         strong_alias (ORIGINAL, SYMBOL) in asm to make sure it preceedes
8747         .size directive.
8748         * sysdeps/gnu/errlist-compat.awk: Adjust for declare_symbol_alias
8749         changes.
8750         * sysdeps/gnu/siglist.c: Likewise.
8751
8752 2006-11-03  Steven Munroe  <sjmunroe@us.ibm.com>
8753
8754         * sysdeps/powerpc/fpu/bits/mathinline.h
8755         [__LIBC_INTERNAL_MATH_INLINES]: Moved to ...
8756         * sysdeps/powerpc/fpu/math_private.h: ...here.  New file.
8757
8758 2006-11-05  Ulrich Drepper  <drepper@redhat.com>
8759
8760         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word):
8761         Update handling of cache descriptor 0x49 for new models.
8762         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word):
8763         Likewise.
8764
8765 2006-11-02  Jakub Jelinek  <jakub@redhat.com>
8766
8767         * malloc/memusage.c (dest): Reset not_me back to false after
8768         printing statistics.
8769
8770 2006-11-02  Ulrich Drepper  <drepper@redhat.com>
8771
8772         * configure.in: Work around ld --help change and avoid -z relro
8773         test completely if the architecture doesn't care about security.
8774
8775 2006-11-01  Ulrich Drepper  <drepper@redhat.com>
8776
8777         * po/sv.po: Update from translation team.
8778
8779 2006-10-31  Ulrich Drepper  <drepper@redhat.com>
8780
8781         * stdlib/atexit.c (atexit): Don't mark as hidden when used to
8782         generate compatibility version.
8783
8784 2006-10-29  Ulrich Drepper  <drepper@redhat.com>
8785
8786         * configure.in: Relax -z relro requirement a bit.
8787
8788         * po/sv.po: Update from translation team.
8789
8790 2006-10-29  Jakub Jelinek  <jakub@redhat.com>
8791
8792         * elf/dl-sym.c (do_sym): Use RTLD_SINGLE_THREAD_P.
8793         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Likewise.
8794         * elf/dl-close.c (_dl_close_worker): Likewise.
8795         * elf/dl-open.c (_dl_open_worker): Likewise.
8796         * sysdeps/generic/sysdep-cancel.h (RTLD_SINGLE_THREAD_P): Define.
8797
8798 2006-10-27  Ulrich Drepper  <drepper@redhat.com>
8799
8800         * configure.in: Require assembler support for visibility, compiler
8801         support for visibility and aliases, linker support for various -z
8802         options.
8803         * Makeconfig: Remove conditional code which now is unnecessary.
8804         * config.h.in: Likewise.
8805         * config.make.in: Likewise.
8806         * dlfcn/Makefile: Likewise.
8807         * elf/Makefile: Likewise.
8808         * elf/dl-load.c: Likewise.
8809         * elf/rtld.c: Likewise.
8810         * include/libc-symbols.h: Likewise.
8811         * include/stdio.h: Likewise.
8812         * io/Makefile: Likewise.
8813         * io/fstat.c: Likewise.
8814         * io/fstat64.c: Likewise.
8815         * io/fstatat.c: Likewise.
8816         * io/fstatat64.c: Likewise.
8817         * io/lstat.c: Likewise.
8818         * io/lstat64.c: Likewise.
8819         * io/mknod.c: Likewise.
8820         * io/mknodat.c: Likewise.
8821         * io/stat.c: Likewise.
8822         * io/stat64.c: Likewise.
8823         * libio/stdio.c: Likewise.
8824         * nscd/Makefile: Likewise.
8825         * stdlib/Makefile: Likewise.
8826         * stdlib/atexit.c: Likewise.
8827         * sysdeps/generic/ldsodefs.h: Likewise.
8828         * sysdeps/i386/dl-machine.h: Likewise.
8829         * sysdeps/i386/sysdep.h: Likewise.
8830         * sysdeps/i386/i686/memcmp.S: Likewise.
8831         * sysdeps/powerpc/powerpc32/sysdep.h: Likewise.
8832         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
8833         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
8834
8835         * Makerules: USE_TLS support is now default.
8836         * tls.make.c: Likewise.
8837         * csu/Versions: Likewise.
8838         * csu/libc-start.c: Likewise.
8839         * csu/libc-tls.c: Likewise.
8840         * csu/version.c: Likewise.
8841         * dlfcn/dlinfo.c: Likewise.
8842         * elf/dl-addr.c: Likewise.
8843         * elf/dl-cache.c: Likewise.
8844         * elf/dl-close.c: Likewise.
8845         * elf/dl-iteratephdr.c: Likewise.
8846         * elf/dl-load.c: Likewise.
8847         * elf/dl-lookup.c: Likewise.
8848         * elf/dl-object.c: Likewise.
8849         * elf/dl-open.c: Likewise.
8850         * elf/dl-reloc.c: Likewise.
8851         * elf/dl-support.c: Likewise.
8852         * elf/dl-sym.c: Likewise.
8853         * elf/dl-sysdep.c: Likewise.
8854         * elf/dl-tls.c: Likewise.
8855         * elf/ldconfig.c: Likewise.
8856         * elf/rtld.c: Likewise.
8857         * elf/tst-tls-dlinfo.c: Likewise.
8858         * elf/tst-tls1.c: Likewise.
8859         * elf/tst-tls10.h: Likewise.
8860         * elf/tst-tls14.c: Likewise.
8861         * elf/tst-tls2.c: Likewise.
8862         * elf/tst-tls3.c: Likewise.
8863         * elf/tst-tls4.c: Likewise.
8864         * elf/tst-tls5.c: Likewise.
8865         * elf/tst-tls6.c: Likewise.
8866         * elf/tst-tls7.c: Likewise.
8867         * elf/tst-tls8.c: Likewise.
8868         * elf/tst-tls9.c: Likewise.
8869         * elf/tst-tlsmod1.c: Likewise.
8870         * elf/tst-tlsmod13.c: Likewise.
8871         * elf/tst-tlsmod13a.c: Likewise.
8872         * elf/tst-tlsmod14a.c: Likewise.
8873         * elf/tst-tlsmod2.c: Likewise.
8874         * elf/tst-tlsmod3.c: Likewise.
8875         * elf/tst-tlsmod4.c: Likewise.
8876         * elf/tst-tlsmod5.c: Likewise.
8877         * elf/tst-tlsmod6.c: Likewise.
8878         * include/errno.h: Likewise.
8879         * include/link.h: Likewise.
8880         * include/tls.h: Likewise.
8881         * locale/global-locale.c: Likewise.
8882         * locale/localeinfo.h: Likewise.
8883         * malloc/arena.c: Likewise.
8884         * malloc/hooks.c: Likewise.
8885         * malloc/malloc.c: Likewise.
8886         * resolv/Versions: Likewise.
8887         * sysdeps/alpha/dl-machine.h: Likewise.
8888         * sysdeps/alpha/libc-tls.c: Likewise.
8889         * sysdeps/generic/ldsodefs.h: Likewise.
8890         * sysdeps/generic/tls.h: Likewise.
8891         * sysdeps/i386/dl-machine.h: Likewise.
8892         * sysdeps/ia64/dl-machine.h: Likewise.
8893         * sysdeps/ia64/libc-tls.c: Likewise.
8894         * sysdeps/mach/hurd/fork.c: Likewise.
8895         * sysdeps/mach/hurd/i386/tls.h: Likewise.
8896         * sysdeps/powerpc/powerpc32/dl-machine.c: Likwise.
8897         * sysdeps/powerpc/powerpc32/dl-machine.h: Likewise.
8898         * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
8899         * sysdeps/s390/libc-tls.c: Likewise.
8900         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
8901         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
8902         * sysdeps/sh/dl-machine.h: Likewise.
8903         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
8904         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
8905         * sysdeps/x86_64/dl-machine.h: Likewise.
8906
8907         * elf/dl-close.c (_dl_close_worker): Renamed from _dl_close and
8908         split out locking and parameter checking.
8909         (_dl_close): Call _dl_close_worker after locking and checking.
8910         * elf/dl-open.c (_dl_open): Call _dl_close_worker instead of
8911         _dl_close.
8912         * elf/Makefile: Add rules to build and run tst-thrlock.
8913         * elf/tst-thrlock.c:  New file.
8914
8915         [BZ #3426]
8916         * stdlib/stdlib.h: Adjust comment for canonicalize_file_name to
8917         reality.
8918
8919         [BZ #3429]
8920         * elf/dl-open.c (dl_open_worker): Keep holding dl_load_lock until
8921         we are sure we do not need it anymore for _dl_close.  Also move
8922         the asserts inside the lock region.
8923         Patch mostly by Suzuki <suzuki@in.ibm.com>.
8924
8925 2006-10-27  Jakub Jelinek  <jakub@redhat.com>
8926
8927         * elf/dl-lookup.c (_dl_debug_bindings): Remove unused symbol_scope
8928         argument.
8929         (_dl_lookup_symbol_x): Adjust caller.
8930
8931         * sysdeps/generic/ldsodefs.h (struct link_namespaces): Remove
8932         _ns_global_scope.
8933         * elf/rtld.c (dl_main): Don't initialize _ns_global_scope.
8934
8935         * elf/dl-libc.c: Revert l_scope name changes.
8936         * elf/dl-load.c: Likewise.
8937         * elf/dl-object.c: Likewise.
8938         * elf/rtld.c: Likewise.
8939         * elf/dl-close.c (_dl_close): Likewise.
8940         * elf/dl-open.c (dl_open_worker): Likewise.  If not SINGLE_THREAD_P,
8941         always use __rtld_mrlock_{change,done}.  Always free old scope list
8942         here if not l_scope_mem.
8943         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Revert l_scope name
8944         change.  Never free scope list here.  Just __rtld_mrlock_lock before
8945         the lookup and __rtld_mrlock_unlock it after the lookup.
8946         * elf/dl-sym.c: Likewise.
8947         * include/link.h (struct r_scoperec): Remove.
8948         (struct link_map): Replace l_scoperec with l_scope, l_scoperec_mem
8949         with l_scope_mem and l_scoperec_lock with l_scope_lock.
8950
8951 2006-10-25  Ulrich Drepper  <drepper@redhat.com>
8952
8953         * sysdeps/gnu/netinet/tcp.h: Define TCP_CONGESTION.
8954
8955 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
8956
8957         * configure.in: Disable building profile libraries by default.
8958
8959 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
8960
8961         * sunrpc/xdr_mem.c (xdrmem_setpos): Don't compare addresses
8962         as signed longs, check for x_base + pos overflow.
8963         * sunrpc/Makefile (tests): Add tst-xdrmem2.
8964         * sunrpc/tst-xdrmem2.c: New test.
8965
8966 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
8967
8968         * elf/dl-lookup.c (_dl_lookup_symbol_x): Add warning to
8969         _dl_lookup_symbol_x code.
8970
8971 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
8972
8973         * elf/dl-runtime.c: Include sysdep-cancel.h.
8974         (_dl_fixup, _dl_profile_fixup): Use __rtld_mrlock_* and
8975         scoperec->nusers only if !SINGLE_THREAD_P.  Use atomic_*
8976         instead of catomic_* macros.
8977         * elf/dl-sym.c: Include sysdep-cancel.h.
8978         (do_sym): Use __rtld_mrlock_* and scoperec->nusers only
8979         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
8980         * elf/dl-close.c: Include sysdep-cancel.h.
8981         (_dl_close): Use __rtld_mrlock_* and scoperec->nusers only
8982         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
8983         * elf/dl-open.c: Include sysdep-cancel.h.
8984         (dl_open_worker): Use __rtld_mrlock_* and scoperec->nusers only
8985         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
8986
8987 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
8988
8989         [BZ #3313]
8990         * malloc/malloc.c (malloc_consolidate): Set maxfb to address of last
8991         fastbin rather than end of fastbin array.
8992
8993 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
8994
8995         * sysdeps/i386/i486/bits/atomic.h (catomic_decrement): Use correct
8996         body macro.
8997         * sysdeps/x86_64/bits/atomic.h
8998         (__arch_c_compare_and_exchange_val_64_acq): Add missing casts.
8999         (catomic_decrement): Use correct body macro.
9000
9001 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
9002
9003         * include/atomic.h: Add a unique prefix to all local variables
9004         in macros.
9005         * csu/tst-atomic.c (do_test): Test also catomic_* macros.
9006
9007 2006-10-16  Ulrich Drepper  <drepper@redhat.com>
9008
9009         [BZ #3369]
9010         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Fix typos in rules 4
9011         and 7.
9012
9013 2006-10-14  Ulrich Drepper  <drepper@redhat.com>
9014
9015         * resolv/arpa/nameser.h: Document that ns_t_a6 is deprecated.
9016
9017 2006-10-13  Ulrich Drepper  <drepper@redhat.com>
9018
9019         [BZ #3313]
9020         * malloc/malloc.c (malloc_consolidate): Don't use get_fast_max to
9021         determine highest fast bin to consolidate, always look into all of
9022         them.
9023         (do_check_malloc_state): Only require for empty bins for large
9024         sizes in main arena.
9025
9026         * libio/stdio.h: Add more __wur attributes.
9027
9028         * elf/dl-minimal.c (realloc): Optimize last patch.
9029
9030 2006-10-12  Richard Sandiford  <richard@codesourcery.com>
9031
9032         [BZ #3352]
9033         * elf/dl-minimal.c (realloc): Let malloc() return a new pointer,
9034         and use memcpy() if it does.
9035
9036 2006-11-12  Andreas Jaeger  <aj@suse.de>
9037
9038         [BZ #2510]
9039         * manual/search.texi (Hash Search Function): Clarify.
9040         (Array Search Function): Clarify.
9041
9042 2006-11-12  Joseph Myers  <joseph@codesourcery.com>
9043
9044         [BZ #2830]
9045         * math/atest-exp.c (main): Cast hex value to mp_limb_t before
9046         shifting.
9047         * math/atest-exp2.c (read_mpn_hex): Likewise.
9048         * math/atest-sincos.c (main): Likewise.
9049
9050 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
9051
9052         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_pwait.
9053         * sysdeps/unix/sysv/linux/sys/epoll.h: Declare epoll_pwait.
9054         * sysdeps/unix/sysv/linux/Versions (libc): Add epoll_pwait for
9055         version GLIBC_2.6.
9056         * Versions.def: Add GLIBC_2.6 for libc.
9057
9058         * sysdeps/unix/sysv/linux/i386/sysdep.h (DOARGS_6): Fix offset.
9059
9060         * sysdeps/i386/i486/bits/atomic.h: Add catomic_* support.
9061
9062 2006-10-11  Jakub Jelinek  <jakub@redhat.com>
9063
9064         * malloc/malloc.c (_int_malloc): Remove unused any_larger variable.
9065
9066         * nis/nis_defaults.c (__nis_default_access): Don't call getenv twice.
9067
9068         * nis/nis_subr.c (nis_getnames): Use __secure_getenv instead of getenv.
9069         * sysdeps/generic/unsecvars.h: Add NIS_PATH.
9070
9071 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
9072
9073         * include/atomic.c: Define catomic_* operations.
9074         * sysdeps/x86_64/bits/atomic.h: Likewise.  Fix a few minor problems.
9075         * stdlib/cxa_finalize.c: Use catomic_* operations instead of atomic_*.
9076         * malloc/memusage.c: Likewise.
9077         * gmon/mcount.c: Likewise.
9078         * elf/dl-close.c: Likewise.
9079         * elf/dl-open.c: Likewise.
9080         * elf/dl-profile.c: Likewise.
9081         * elf/dl-sym.c: Likewise.
9082         * elf/dl-runtime.c: Likewise.
9083         * elf/dl-fptr.c: Likewise.
9084         * resolv/res_libc.c: Likewise.
9085
9086 2006-10-10  Ulrich Drepper  <drepper@redhat.com>
9087
9088         * nis/nis_subr.c (nis_getnames): Add trailing dot to NIS_PATH
9089         components which lack them.
9090
9091         * nis/nis_subr.c (nis_getnames): Make sure that we always return
9092         at least one entry consisting of the parameter concatenated with
9093         the domain.
9094
9095 2006-10-10  Roland McGrath  <roland@frob.com>
9096
9097         * sysdeps/mach/hurd/utimes.c: Use a union to avoid an improper cast.
9098         * sysdeps/mach/hurd/futimes.c: Likewise.
9099         * sysdeps/mach/hurd/lutimes.c: Likewise.
9100
9101 2006-10-09  Ulrich Drepper  <drepper@redhat.com>
9102             Jakub Jelinek  <jakub@redhat.com>
9103
9104         Implement reference counting of scope records.
9105         * elf/dl-close.c (_dl_close): Remove all scopes from removed objects
9106         from the list in objects which remain.  Always allocate new scope
9107         record.
9108         * elf/dl-open.c (dl_open_worker): When growing array for scopes,
9109         don't resize, allocate a new one.
9110         * elf/dl-runtime.c: Update reference counters before using a scope
9111         array.
9112         * elf/dl-sym.c: Likewise.
9113         * elf/dl-libc.c: Adjust for l_scope name change.
9114         * elf/dl-load.c: Likewise.
9115         * elf/dl-object.c: Likewise.
9116         * elf/rtld.c: Likewise.
9117         * include/link.h: Include <rtld-lowlevel.h>.  Define struct
9118         r_scoperec.  Replace r_scope with pointer to r_scoperec structure.
9119         Add l_scoperec_lock.
9120         * sysdeps/generic/ldsodefs.h: Include <rtld-lowlevel.h>.
9121         * sysdeps/generic/rtld-lowlevel.h: New file.
9122
9123         * include/atomic.h: Rename atomic_and to atomic_and_val and
9124         atomic_or to atomic_or_val.  Define new macros atomic_and and
9125         atomic_or which do not return values.
9126         * sysdeps/x86_64/bits/atomic.h: Define atomic_and and atomic_or.
9127         Various cleanups.
9128         * sysdeps/i386/i486/bits/atomic.h: Likewise.
9129
9130         * po/sv.po: Update from translation team.
9131
9132 2006-10-07  Ulrich Drepper  <drepper@redhat.com>
9133
9134         * Versions.def: Add GLIBC_2.6 to libpthread.
9135
9136         * include/shlib-compat.h (SHLIB_COMPAT): Expand parameters before use.
9137         (versioned_symbol): Likewise.
9138         (compat_symbol): Likewise.
9139
9140         * po/tr.po: Update from translation team.
9141
9142 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
9143
9144         * nis/Banner: Removed.  It's been integral part forever and the
9145         author info is incomplete anyway.
9146         * libio/Banner: Likewise.
9147
9148         * nis/nis_table.c (nis_list): If __follow_path fails in the new
9149         code, make sure the nis_freeresult call doesn't crash and that the
9150         result is reported correctly.
9151
9152 2006-09-27  Jakub Jelinek  <jakub@redhat.com>
9153
9154         * nis/nis_table.c (nis_list): Handle FOLLOW_PATH | ALL_RESULTS
9155         when callback is NULL.
9156
9157         * nis/Versions (libnss_nisplus): Add
9158         _nss_nisplus_initgroups_dyn@@GLIBC_PRIVATE.
9159         * nis/Makefile (libnss_nisplus-routines): Add nisplus-initgroups.
9160         * nis/nss_nisplus/nisplus-grp.c (tablename_val, tablename_len,
9161         _nss_create_tablename): Rename to...
9162         (grp_tablename_val, grp_tablename_len, _nss_grp_create_tablename):
9163         ... these.  No longer static.
9164         (internal_setgrent): Adjust users.
9165         (_nss_nisplus_getgrnam_r, _nss_nisplus_getgrgid_r): Likewise.
9166         Don't use locking around _nss_grp_create_tablename call.
9167         * nis/nss_nisplus/nisplus-initgroups.c: New file.
9168
9169 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
9170
9171         * version.h (VERSION): Bump to 2.5.90 for new development tree.
9172
9173 2006-10-06  Andreas Jaeger  <aj@suse.de>
9174
9175         * include/features.h (__GLIBC_MINOR__): It's glibc 2.5 now.
9176
9177 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
9178
9179         * po/pl.po: Update from translation team.
9180
9181         * nscd/nscd.c (main): Fix typo in message.
9182         Patch by Jakub Bogsz <qboosh@pld-linux.org>.
9183
9184 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
9185
9186         [BZ #3291]
9187         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
9188         errno.h, signal.h, unistd.h and sysdep-cancel.h.
9189         (__sigprocmask): Define.
9190
9191 2006-10-02  Ulrich Drepper  <drepper@redhat.com>
9192
9193         * elf/rtld.c (dl_main): Don't use prelinking if LD_DYNAMIC_WEAK is
9194         used.
9195
9196 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
9197
9198         * nscd/mem.c (mempool_alloc): Round array size to 16 bytes
9199         in oldtotal and newtotal calculation.
9200         * nscd/nscd-client.h (struct mapped_database): Add datasize
9201         field.
9202         * nscd/nscd_helper.c (get_mapping): Initialize datasize field.
9203         (__nscd_get_map_ref): Get a new mapping even if mapping's data_size
9204         increased.
9205         (__nscd_cache_search): Add checks to make sure we never reference
9206         data beyond the current mapping.
9207
9208 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
9209
9210         * sysdeps/posix/getaddrinfo.c (match_prefix): Make mask and val
9211         variables const to avoid compiler warnings.
9212
9213         * io/fts.c (fts_close): Remove redundant checks.
9214         (fts_build): Likewise.
9215         (fts_palloc): Likewise.
9216
9217         * manual/message.texi (Advanced gettext functions,
9218         Using gettextized software): Fix typos.
9219
9220 2006-09-30  Ulrich Drepper  <drepper@redhat.com>
9221
9222         * posix/glob.c (glob_in_dir): Add some comments and asserts to
9223         explain why there are no leaks.
9224
9225 2006-09-29  Ulrich Drepper  <drepper@redhat.com>
9226
9227         * libio/wmemstream.c: Include <wchar.h>.
9228         * libio/bug-wmemstream1.c: Likewise.
9229         * libio/tst-wmemstream1.c: Likewise.
9230         * libio/tst-wmemstream2.c: Likewise.
9231
9232         * version.h (RELEASE): Bump to 2.5.
9233         * README: Regenerated.
9234
9235         * locale/iso-3166.def: Add Aaland Islands and Montenegro.
9236
9237         [BZ #3273]
9238         * nscd/nscd_initgroups.c (__nscd_getgrouplist): It is OK to have
9239         found no group members.
9240         Patch by Petr Baudis.
9241
9242 2006-09-29  Jakub Jelinek  <jakub@redhat.com>
9243
9244         * elf/rtld.c (_dl_start_final): If not USE___THREAD, don't
9245         assert bootstrap_map.l_tls_modid is zero.
9246         (_dl_start): Initialize bootstrap_map.l_tls_modid to 0
9247         if USE___THREAD.
9248
9249 2006-09-27  Ulrich Drepper  <drepper@redhat.com>
9250
9251         * libio/stdio.h: Move open_wmemstream prototype to ...
9252         * wcsmbs/wchar.h: ... here.
9253
9254 2006-09-25  Jakub Jelinek  <jakub@redhat.com>
9255
9256         [BZ #3252]
9257         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Handle only
9258         fchownat syscall and __ASSUME_LCHOWN_SYSCALL case inline, call
9259         __{,l}chown to handle the rest.
9260         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Handle only
9261         fchownat syscall and __ASSUME_32BITUIDS case inline, call
9262         __{,l}chown to handle the rest.
9263         * sysdeps/unix/sysv/linux/sparc/sparc32/fchownat.c: Include
9264         i386/fchownat.c.
9265         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c: Likewise.
9266         * sysdeps/unix/sysv/linux/sh/fchownat.c: Likewise.
9267
9268         [BZ #3253]
9269         * posix/glob.c (glob_in_dir): Don't alloca one struct globlink at a
9270         time, rather allocate increasingly bigger arrays of pointers, if
9271         possible with alloca, if too large with malloc.
9272
9273 2006-09-24  Jakub Jelinek  <jakub@redhat.com>
9274
9275         * sysdeps/powerpc/fpu/libm-test-ulps: Updated.
9276
9277         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Fix 2 typos.
9278
9279 2006-09-24  Ulrich Drepper  <drepper@redhat.com>
9280
9281         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Implement rule 4,
9282         home addresses.
9283         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Recognize
9284         IFA_F_HOMEADDRESS flag for interfaces.
9285         * include/ifaddrs.h (struct in6addrinfo): Define
9286         in6ai_homeaddress.
9287
9288 2006-09-21  Jakub Jelinek  <jakub@redhat.com>
9289
9290         [BZ #3225]
9291         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (PTR_MANGLE3,
9292         PTR_DEMANGLE3): Define.
9293         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (PTR_MANGLE3,
9294         PTR_DEMANGLE3): Likewise.
9295         * sysdeps/powerpc/powerpc32/__longjmp-common.S (__longjmp): Use them.
9296         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp):
9297         Likewise.
9298         * sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp): Likewise.
9299
9300 2006-09-20  Jakub Jelinek  <jakub@redhat.com>
9301
9302         * po/libc.pot: Regenerated.
9303         * po/be.po: Updated.
9304         * po/ca.po: Likewise.
9305         * po/cs.po: Likewise.
9306         * po/da.po: Likewise.
9307         * po/de.po: Likewise.
9308         * po/el.po: Likewise.
9309         * po/en_GB.po: Likewise.
9310         * po/es.po: Likewise.
9311         * po/fi.po: Likewise.
9312         * po/fr.po: Likewise.
9313         * po/gl.po: Likewise.
9314         * po/hr.po: Likewise.
9315         * po/hu.po: Likewise.
9316         * po/ja.po: Likewise.
9317         * po/ko.po: Likewise.
9318         * po/nb.po: Likewise.
9319         * po/nl.po: Likewise.
9320         * po/pl.po: Likewise.
9321         * po/pt_BR.po: Likewise.
9322         * po/ru.po: Likewise.
9323         * po/rw.po: Likewise.
9324         * po/sk.po: Likewise.
9325         * po/sv.po: Likewise.
9326         * po/tr.po: Likewise.
9327         * po/zh_CN.po: Likewise.
9328         * po/zh_TW.po: Likewise.
9329
9330         [BZ #3137]
9331         * iconv/iconv_prog.c (main): Fix spelling in error message.
9332         * iconv/iconvconfig.c (main): Likewise.
9333         * locale/programs/ld-collate.c (handle_ellipsis): Likewise.
9334         * locale/programs/ld-ctype.c (charclass_symbolic_ellipsis): Likewise.
9335         * locale/programs/localedef.c (main): Likewise.
9336         * locale/programs/repertoire.c (repertoire_read): Likewise.
9337         * timezone/zdump.c (main): Likewise.
9338         * nscd/connections.c (handle_request): Fix spelling in log message.
9339         Patch by Malcolm Parsons <malcolm.parsons@gmail.com>.
9340
9341 2006-09-20  Ulrich Drepper  <drepper@redhat.com>
9342
9343         * inet/inet6_option.c: Also emit linker warnings for the RFC 2292
9344         interfaces.
9345
9346 2006-09-20  Andreas Jaeger  <aj@suse.de>
9347
9348         * math/libm-test.inc (lrint_test_upward): Fix typo.
9349
9350 2006-06-17  Joseph S. Myers  <joseph@codesourcery.com>
9351
9352         [BZ #2592]
9353         * math/libm-test.inc (lrint_test_tonearest): New function.
9354         (lrint_test_towardzero): New function.
9355         (lrint_test_downward): New function.
9356         (lrint_test_upward): New function.
9357         (main): Run these new tests.
9358         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Correct rounding
9359         of values near to 0.
9360         (two52): Use double not long double.
9361         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
9362         * sysdeps/ieee754/flt-32/s_llrintf.c (__llrintf): Likewise.
9363         (two23): Use float not double.
9364         * sysdeps/ieee754/flt-32/s_lrintf.c (__lrintf): Likewise.
9365         (two23): Use float not double.
9366         * sysdeps/ieee754/ldbl-128/s_llrintl.c (__llrintl): Likewise.
9367         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
9368         * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Likewise.
9369         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
9370
9371 2006-09-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9372
9373         * sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c (__makecontext):
9374         Cast sp to unsigned long to avoid compiler warning.
9375         Use __makecontext_ret function instead of a trampoline on the stack.
9376         (__makecontext_ret): New function.
9377         * sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c: Likewise.
9378
9379 2006-09-19  Jakub Jelinek  <jakub@redhat.com>
9380
9381         * elf/dl-cache.c (HWCAP_CHECK): If _DL_PLATFORMS_COUNT, but
9382         platform == -1, reject any libs with non-zero _DL_HWCAP_PLATFORM
9383         bits.
9384
9385 2006-09-19  Ulrich Drepper  <drepper@redhat.com>
9386
9387         * elf/dl-close.c (_dl_close): If dependency is not unloaded make
9388         sure no reference to the unloaded map's search list remains in the
9389         dependency's scope.
9390
9391 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
9392
9393         * elf/Makefile: Add rules to build and run unload7 test.
9394         * elf/unload7.c: New test.
9395         * elf/unload7mod1.c: New file.
9396         * elf/unload7mod2.c: New file.
9397
9398 2006-09-18  Jakub Jelinek  <jakub@redhat.com>
9399
9400         * sysdeps/unix/sysv/linux/sys/ptrace.h (PT_GETEVENTMSG): Fix pasto.
9401         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h (PTRACE_SETOPTIONS,
9402         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
9403         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h (PTRACE_SETOPTIONS,
9404         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
9405         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h (PTRACE_SETOPTIONS,
9406         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
9407         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h (PTRACE_SETOPTIONS,
9408         PTRACE_GETEVENTMSG): Likewise.
9409         (PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Change to the arch independent
9410         values.
9411
9412 2006-09-17  Mike Frysinger  <vapier@gentoo.org>
9413
9414         * sysdeps/unix/sysv/linux/sys/ptrace.h (PTRACE_SETOPTIONS,
9415         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
9416         * sysdeps/unix/sysv/linux/ptrace.c (ptrace): Check PTRACE_SETOPTIONS,
9417         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO and PTRACE_SETSIGINFO.
9418
9419 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
9420
9421         * sysdeps/powerpc/powerpc32/register-dump.h (register_dump): Don't
9422         write '\0' to the fd.
9423         * sysdeps/mach/hurd/powerpc/register-dump.h (register_dump): Likewise.
9424         * sysdeps/powerpc/powerpc64/register-dump.h (register_dump): Likewise.
9425         Change regs to unsigned long pointer from unsigned int, fix fscr
9426         offset.
9427
9428 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
9429
9430         * io/Makefile (CFLAGS-fstatat.c): Set.
9431         (CFLAGS-fstatat64.c): Likewise.
9432         (CFLAGS-mknodat.c): Likewise.
9433
9434         * sysdeps/ieee754/ldbl-128ibm/s_llrintl.c: Comment fixes.
9435         * sysdeps/ieee754/ldbl-128ibm/s_llroundl.c: Likewise.
9436         * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c: Rewritten.
9437         * sysdeps/ieee754/ldbl-128ibm/s_lroundl.c: Rewritten.
9438
9439 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
9440             Steven Munroe  <sjmunroe@us.ibm.com>
9441
9442         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 4 new cap
9443         names to the beginning.  Rename "cell" to "cellbe".
9444         (_dl_powerpc_platforms): New.
9445         * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
9446         (HWCAP_IMPORTANT): Remove power{4,5,5+} and cell.
9447         (_DL_PLATFORMS_COUNT, _DL_FIRST_PLATFORM): Define.
9448         (_DL_HWCAP_PLATFORM): Define to new mask.
9449         (_dl_platform_string, _dl_string_platform): New functions.
9450         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_BOOKE, PPC_FEATURE_SMT,
9451         PPC_FEATURE_ICACHE_SNOOP, PPC_FEATURE_ARCH_2_05): Define.
9452
9453 2006-09-12  Jakub Jelinek  <jakub@redhat.com>
9454
9455         [BZ #2526]
9456         * README.libm: Fix a thinko in sqrt algorithm description.
9457
9458         [BZ #3143]
9459         * manual/string.texi (argz_delete): Fix prototype.
9460         Patch by <alpt@freaknet.org>.
9461
9462 2006-08-26  Joseph Myers  <joseph@codesourcery.com>
9463
9464         [BZ #3138]
9465         * io/test-lfs.c (do_prepare): Give name_len type size_t.
9466         * io/tst-fcntl.c (do_prepare): Likewise.
9467         * posix/tst-exec.c (do_prepare): Likewise.
9468         * posix/tst-preadwrite.c (do_prepare): Likewise.
9469         * posix/tst-spawn.c (do_prepare): Likewise.
9470         * posix/tst-truncate.c (do_prepare): Likewise.
9471         * rt/tst-aio.c (do_prepare): Likewise.
9472         * rt/tst-aio64.c (do_prepare): Likewise.
9473         * stdlib/test-canon2.c (do_prepare): Give test_dir_len type
9474         size_t.
9475
9476 2006-09-09  Ulrich Drepper  <drepper@redhat.com>
9477
9478         [BZ #2821]
9479         * time/mktime.c (guess_time_tm): Fix overflow detection.
9480         * time/Makefile (tests): Add bug-mktime1.
9481         * time/bug-mktime1.c: New file.
9482
9483         [BZ #3189, #3188]
9484         * misc/sys/mman.h (remap_file_pages): Make available for _GNU_SOURCE.
9485         (mremap): Likewise.
9486
9487 2006-09-07  Jakub Jelinek  <jakub@redhat.com>
9488
9489         [BZ #1006]
9490         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela):
9491         Ensure relocation doesn't clobber any bits outside of the
9492         immediate field for R_SPARC_TLS_LE_HIX22, R_SPARC_WDISP30,
9493         R_SPARC_HI22 and R_SPARC_H44.
9494
9495         [BZ #2775]
9496         * malloc/malloc.c (sYSMALLOc): Only call grow_heap if
9497         (long) (MINSIZE + nb - old_size) is positive.
9498
9499         * malloc/arena.c (grow_heap): When growing bail even if new_size
9500         is negative.
9501
9502         [BZ #3155]
9503         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S (__lrint): Don't access
9504         stack below r1.
9505
9506 2006-09-06  Jakub Jelinek  <jakub@redhat.com>
9507
9508         * posix/regex_internal.c (re_string_reconstruct): Handle
9509         offset < pstr->valid_raw_len && pstr->offsets_needed case.
9510         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
9511         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
9512         re_string_context_at.
9513         * posix/Makefile: Add rules to build and run bug-regex26 test.
9514         * posix/bug-regex26.c: New test.
9515
9516         * locale/programs/ld-collate.c (collate_read): Goto sym_equiv_free
9517         rather than col_sym_free.  Move seqp declaration earlier.
9518
9519         * resolv/gai_suspend.c (gai_suspend): Make sure result is initialized.
9520
9521 2006-09-05  Jakub Jelinek  <jakub@redhat.com>
9522
9523         * nscd/initgrcache.c (addinitgroupsX): Move any_success
9524         decl before first goto out.
9525
9526 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
9527
9528         * Makerules (shlib.lds): If have-hash-style, put .hash section
9529         at the end of the RO segment.
9530
9531 2006-09-04  Ulrich Drepper  <drepper@redhat.com>
9532
9533         * elf/do-lookup.h (do_lookup_x): Initialize symidx in case the new
9534         style hash table format is used.
9535
9536 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
9537
9538         * resolv/res_mkquery.c (res_nmkquery): Set hp->id to statp->id after
9539         randomization rather than before.
9540         * resolv/res_init.c (res_randomid): Don't call gettimeofday here.
9541
9542 2006-08-31  Jakub Jelinek  <jakub@redhat.com>
9543
9544         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Add ld.so.
9545
9546         * malloc/malloc.c (_int_malloc): Use full list insert and not
9547         shortcut which assumes the list is empty for large requests
9548         too.
9549
9550         * elf/tst-addr1.c (do_test): Allow i.dli_sname "_IO_printf".
9551
9552 2006-08-30  Jakub Jelinek  <jakub@redhat.com>
9553
9554         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (splice): Add offin
9555         and offout arguments to the prototype.
9556         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (splice): Likewise.
9557         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (splice): Likewise.
9558         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (splice): Likewise.
9559         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (splice): Likewise.
9560         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (splice): Likewise.
9561         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (splice): Likewise.
9562         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (splice): Likewise.
9563         * sysdeps/unix/sysv/linux/syscalls.list (splice): Adjust args string.
9564
9565 2006-08-28  Ulrich Drepper  <drepper@redhat.com>
9566
9567         * elf/dl-load.c (_dl_init_paths): Expand DSTs.
9568
9569         * elf/dl-open.c (dl_open_worker): Allow $LIB and $PLATFORM in
9570         dlopen parameters.
9571
9572 2006-08-28  Jakub Jelinek  <jakub@redhat.com>
9573
9574         * inet/getnameinfo.c (getnameinfo): For AF_INET, check errno
9575         only if herrno is NETDB_INTERNAL.  Handle errors other than
9576         ERANGE outside of the loops, handle TRY_AGAIN.
9577
9578         * locale/programs/ld-ctype.c (translit_flatten): Issue error
9579         if other's ctype category was missing.
9580         * locale/programs/ld-collate.c (collate_read): Return if
9581         copy_locale's collate category is missing.
9582
9583 2006-08-27  Ulrich Drepper  <drepper@redhat.com>
9584
9585         [BZ #2684]
9586         * malloc/malloc.c (public_rEALLOc): Try harder by using other
9587         arenas if allocation failed.
9588         Patch mostly by Jan Edler <jan.edler@indexengines.com>.
9589
9590 2006-08-26  Ulrich Drepper  <drepper@redhat.com>
9591
9592         * malloc/malloc.c (bin_at): Rewrite to be more clear and to not
9593         waste bins[0..1].
9594         (malloc_state): Reduce bins size by 2.
9595         (_int_malloc): Fix test for large enough buffer for early termination.
9596         When no unsorted block matches perfectly and an exiting block has
9597         to be split, use full list insert and not shortcut which assumes
9598         the list is empty.
9599
9600         * locale/programs/ld-ctype.c (ctype_read): Better patch for read
9601         failure.
9602
9603 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
9604
9605         * locale/programs/ld-ctype.c (ctype_read): If CTYPE is NULL, don't
9606         do anything.
9607
9608         * sysdeps/generic/ldsodefs.h (DL_ADDR_SYM_MATCH): For undefined
9609         symbol require exact match (these are PLTs).
9610         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
9611         (_dl_ppc64_addr_sym_match): Likewise.
9612
9613         [BZ #2683]
9614         * elf/dl-addr.c (_dl_addr): Don't ignore all undefined symbols.
9615         If symbol has a value use it.
9616         * elf/tst-dladdr1.c: New file.
9617         * elf/Makefile: Add rules to build and run tst-addr1.
9618
9619 2006-08-24  Jakub Jelinek  <jakub@redhat.com>
9620
9621         * malloc/malloc.c (sYSMALLOc): Avoid infinite loop if MMAP
9622         keeps failing and heap growth or new heap creation isn't
9623         successful either.
9624         * malloc/tst-malloc.c (main): Add new tests.
9625
9626 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
9627
9628         [BZ #2734]
9629         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use same conditions
9630         as in the x86-64 code to use bswap.
9631
9632 2006-05-21  Joseph S. Myers  <joseph@codesourcery.com>
9633
9634         [BZ #2680]
9635         * posix/unistd.h (getlogin_r): Condition on __USE_POSIX199506, not
9636         __USE_UNIX98.
9637         * posix/bits/unistd.h: Likewise.
9638
9639 2006-05-15  Mike Frysinger  <vapier@gentoo.org>
9640
9641         [BZ #2751]
9642         * string/strchr.c: Add cast to avoid warning.
9643
9644 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
9645
9646         * malloc/malloc.c (DEFAULT_MMAP_THRESHOLD_MAX): For 32-bit
9647         platforms define as 512K.  For 64-bit platforms as 32MB.  The lower
9648         limit is needed to avoid the exploding of the address space
9649         requirement for secondary heaps.
9650         * malloc/arena.c (HEAP_MAX_SIZE): Define using
9651         DEFAULT_MMAP_THRESHOLD_MAX if it is defined.
9652
9653 2006-07-30  Joseph S. Myers  <joseph@codesourcery.com>
9654
9655         [BZ #3018]
9656         * Makerules (depfiles): Handle extra-test-objs the same as
9657         extra-objs.
9658         (common-mostlyclean): Likewise.
9659         * dlfcn/Makefile (extra-objs): Add modules to extra-test-objs
9660         instead.
9661         * elf/Makefile (extra-objs): Likewise.
9662         * stdlib/Makefile (extra-objs): Likewise.
9663
9664 2006-08-14  Eric Blake  <ebb9@byu.net>
9665
9666         [BZ #3044]
9667         * misc/error.h: Assume C89 or better.
9668         * misc/error.c: Likewise.
9669
9670 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
9671
9672         [BZ #3040]
9673         * sysdeps/unix/sysv/linux/openat.c: Fix compilation if
9674         __ASSUME_ATFCTS is defined.
9675
9676 2006-08-19  Ulrich Drepper  <drepper@redhat.com>
9677
9678         * malloc/malloc.c (_int_malloc): Limit number of unsorted blocks
9679         to sort in each call.
9680
9681         * nis/nss_nis/nis-service.c (internal_nis_getservent_r): . If map
9682         is empty simply return and use next service.
9683         * nis/nss_nis/nis-rpc.c (internal_nis_getrpcent_r): Likewise.
9684
9685         * locale/programs/charmap.c (charmap_read): Add new parameter.  It
9686         tells us when not finding a charmap file is an error.
9687         * locale/programs/charmap.h: Adjust charmap_read prototype.
9688         * iconv/iconv_prog.c (main): Tell charmap_read it's no error if we
9689         cannot find a charmap.
9690         * locale/programs/localedef.c (main): Adjust charmap_read call.
9691
9692 2006-08-15  Jakub Jelinek  <jakub@redhat.com>
9693
9694         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Use
9695         sysdeps/posix/pause.c implementation instead.
9696
9697 2006-08-09  Jakub Jelinek  <jakub@redhat.com>
9698
9699         * sysdeps/unix/nice.c (nice): Transform EACCES errno from setpriority
9700         to EPERM.
9701
9702 2006-08-13  Andreas Schwab  <schwab@suse.de>
9703
9704         * sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_runtime_resolve):
9705         Don't clobber caller's LRSAVE.
9706         (_dl_prof_resolve): Likewise.
9707
9708 2006-08-14  Ulrich Drepper  <drepper@redhat.com>
9709
9710         [BZ #1996]
9711         * libio/memstream.c (open_memstream): Allocate initial buffer with
9712         calloc.
9713         * libio/wmemstream.c (open_wmemstream): Likewise.
9714         * libio/strops.c: Pretty printing.
9715         (_IO_str_overflow): Clear uninitialized part of the new buffer.
9716         (enlarge_userbuf): New function.
9717         (_IO_str_seekoff): Call it if seek position is larger than current
9718         buffer.
9719         * libio/wstrops.c: Likewise.
9720         * libio/vasprintf.c: Add comment as to why we do not have to use
9721         calloc instead of malloc to allocate initial buffer.
9722         * libio/Makefile (tests): Add bug-memstream1 and bug-wmemstream1.
9723         * libio/bug-memstream1.c: New file.
9724         * libio/bug-wmemstream1.c: New file.
9725
9726 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
9727
9728         * libio/wstrops.c: Remove dead macro definitions and comments.
9729         * libio/strops.c: Likewise.
9730
9731         [BZ #2764]
9732         * login/utmpname.c (__utmpname): Remove unnecessary test.
9733
9734 2006-06-08  Joseph Myers  <jsm28@gcc.gnu.org>
9735
9736         [BZ #2832]
9737         * math/gen-libm-test.pl (clean_up_number): Do not remove trailing
9738         0s from integers.
9739
9740 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
9741
9742         [BZ #2987]
9743         * sysdeps/unix/sysv/linux/clock_settime.c: Add code to use syscall
9744         for CPU clocks.
9745         * sysdeps/unix/clock_settime.c: Add support for platform-specific
9746         setting of CPU clocks.
9747
9748 2006-06-23  Paul Eggert  <eggert@cs.ucla.edu>
9749
9750         [BZ #2841]
9751         * sysdeps/generic/stdint.h (UINT8_C, UINT16_C): Don't append 'U',
9752         since C99 requires the result to promote to 'int' when uint_least8_t
9753         and uint_least16_t promote to 'int'.
9754
9755 2006-08-12  Ulrich Drepper  <drepper@redhat.com>
9756
9757         [BZ #3013]
9758         * locale/programs/ld-ctype.c (ctype_output): Adjust alignments, fix
9759         lenght of one output field, correct bitmask creation.
9760         * locale/programs/ld-time.c: Add alignment.
9761
9762         [BZ #2997]
9763         * misc/error.c: Add space between program name and message if file
9764         name is missing.
9765
9766 2006-08-03  Eric Blake  <ebb9@byu.net>
9767
9768         [BZ #2998]
9769         * misc/error.c (error_tail) [_LIBC]: Avoid invalid free.
9770
9771 2006-08-09  Ulrich Drepper  <drepper@redhat.com>
9772
9773         * malloc/memusagestat.c: Silence warnings.
9774
9775         * malloc/malloc.c: Dynamically size mmap treshold if the program
9776         frees mmaped blocks.
9777         Patch by Valerie Henson and Arjan van de Ven.
9778
9779 2006-08-08  Jakub Jelinek  <jakub@redhat.com>
9780
9781         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_DIRECT): Protect with
9782         __USE_GNU.
9783
9784         * stdlib/strtol_l.c (__strtol_ul_max_tab, __strtol_ul_rem_tab,
9785         __strtol_ull_max_tab, __strtol_ull_rem_tab): Declare.
9786         (DEF): Don't put the var into .gnu.linkonce.r.* section.
9787         Only provide var definitions in strtol_l (or for *ull*
9788         in strtoll_l).
9789
9790         * stdio-common/bug16.c (tests): New array.
9791         (do_tests): Allow the first hexadecimal digit
9792         to be 1, 2, 4 or 8.  Do 3 additional tests.
9793
9794         * sysdeps/s390/fpu/libm-test-ulps: Update.
9795
9796         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c (fchownat): Use
9797         fchownat syscall if available.
9798         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Likewise.
9799         * sysdeps/unix/sysv/linux/sh/fchownat.c (fchownat): Likewise.
9800         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Likewise.
9801
9802 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
9803
9804         * nis/nis_xdr.c: Avoid some function calls.
9805
9806 2006-08-07  Jakub Jelinek  <jakub@redhat.com>
9807             Ulrich Drepper  <drepper@redhat.com>
9808
9809         * nis/nis_call.c (rec_dirsearch) [case LOWER_NAME]: Don't take
9810         short cut if only one name component is stripped away.
9811
9812 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
9813
9814         * nis/nis_call.c: Minor cleanups throughout.
9815         (rec_dirsearch) [case HIGHER_NAME]: Correctly size ndomain array.
9816         (first_shoot): Add search_parent_first parameter.  Only if it is set
9817         search parent server first.
9818         If directory for table found through cold start cache is not the same
9819         as referenced in the cache, don't use it.
9820         (__nisfind_server): Take additional parameter.  Pass it on to
9821         first_shoot.
9822         (__prepare_niscall): Adjust __nisfind_server call.
9823         * nis/rpcsvc/nislib.h: Adjust __nisfind_server prototype.
9824         * nis/nis_table.c: Adjust __nisfind_server call.
9825         * nis/nis_lookup.c: Likewise.
9826         (nis_lookup): Don't loop endlessly if name is reduced to ".".
9827
9828 2006-08-03  Ulrich Drepper  <drepper@redhat.com>
9829
9830         [BZ #2182]
9831         * math/s_cacosh.c: Return values from positive branch.
9832         * math/s_cacoshf.c: Likewise.
9833         * math/s_cacoshl.c: Likewise.
9834
9835         [BZ #2883]
9836         * sysvipc/sys/msg.h: Change return value to ssize_t.
9837         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
9838         * sysvipc/msgrcv.c: Likewise.
9839         * include/sys/msg.h: Likewise.
9840
9841         * grp/initgroups.c (internal_getgrouplist): Remove unnecessary
9842         test introduced in patch for bz #661.
9843         (getgrouplist): Simplify code a bit.  Don't allocate one additional
9844         element for NEWGROUPS.
9845
9846         [BZ #2908]
9847         * stdio-common/printf_fphex.c (__printf_fphex): When rounding up
9848         'f', use '1' as leading digit not '\1'.
9849         * stdio-common/Makefile (tests): Add bug16.
9850         * stdio-common/bug16.c: New file.
9851
9852         [BZ #2914]
9853         * sysdeps/unix/sysv/linux/gethostid.c: Don't define OLD_HOSTIDFILE
9854         and don't try to open it.  The patch introducing the macro
9855         contained a bug and used the same file name as the new file
9856         instead of using /var/adm/hostid.  Nobody complaint so I'm taking
9857         this out completely.
9858
9859         [BZ #2926]
9860         * assert/assert.h: Move cast to void inside ?: to quiet gcc.
9861         Patch by Jerry James <Jerry.James@usu.edu>.
9862
9863         * rt/Makefile (tests): Add tst-clock2.
9864         * rt/tst-clock2.c: New file.
9865
9866         [BZ #2978]
9867         * resolv/gai_notify.c (__gai_notify_only): Copy memory for thread
9868         function and its parameters and pass it to new thread.
9869         (__gai_notify): Add support for alternative waiting for completion.
9870         * resolv/gai_suspend.c (gai_suspend): Add support for alternative
9871         waiting for completion.
9872         * resolv/getaddrinfo_a.c: Likewise.
9873         * resolv/gai_misc.h (struct waitlist): Don't add cond if alternative
9874         waiting for completion is used.
9875         * resolv/gai_misc.c: Allow overwriting code to start helper thread.
9876         * resolv/gai_cancel.c: Include <gai_misc.h> not "gai_misc.h".
9877         * resolv/gai_error.c: Likewise.
9878         * resolv/gai_sigqueue.c: Likewise.
9879
9880 2006-08-02  Thomas Schwinge  <tschwinge@gnu.org>
9881
9882         * hurd/getdport.c (__getdport): Don't return EBADF; instead set
9883         errno to EBADF and return MACH_PORT_NULL.
9884
9885 2006-06-23  Joseph Myers  <joseph@codesourcery.com>
9886
9887         [BZ #2980]
9888         * posix/Makefile (CFLAGS-waitid.c): Add -fasynchronous-unwind-tables.
9889
9890 2006-08-02  Ulrich Drepper  <drepper@redhat.com>
9891
9892         * elf/dl-addr.c (_dl_addr): If GNU-style hash tables are present,
9893         walk them instead of the symbol table.
9894
9895 2006-08-01  Ulrich Drepper  <drepper@redhat.com>
9896
9897         [BZ #2098]
9898         * nscd/initgrcache.c (addinitgroupsX): Judge successful lookups by
9899         status of NSS calls, not the number of returned entries.
9900
9901         * sysdeps/unix/sysv/linux/syscalls.list: Remove add_key,
9902         request_key, keyctl.
9903
9904 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
9905
9906         * sysdeps/unix/sysv/linux/dl-osinfo.h: Remove unnecessary include.
9907
9908 2006-07-16  Jeff Bailey  <jbailey@ubuntu.com>
9909
9910         * elf/tst-auditmod1.c: Fix typo in #error.
9911
9912 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
9913
9914         * elf/tst-auditmod1.c: Remove code for unsupported architectures.
9915
9916         * iconvdata/run-iconv-test.sh: Run cmp in C locale.
9917
9918 2006-07-20  Adam Nemet  <anemet@caviumnetworks.com>
9919
9920         * stdlib/test-canon.c (do_test): Close fd before unlinking file so
9921         that the directory is empty even on non-POSIX filesystems.
9922
9923 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
9924
9925         * elf/dl-open.c (dl_open_worker): Add branch prediction.
9926
9927         * nis/nss_compat/compat-grp.c: Avoid unnecessary setgrent calls into
9928         the backend NSS module.  If backend setgrent call failed, don't have
9929         internal_setgrent fail.  Just remember this until it is needed.
9930         * nis/nss_compat/compat-pwd.c: Likewise.
9931         * nis/nss_compat/compat-spwd.c: Likewise.
9932
9933 2006-07-30  Roland McGrath  <roland@redhat.com>
9934
9935         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed.
9936         * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: File removed.
9937         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: File removed.
9938         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: File removed.
9939
9940         * sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): New macro.
9941         (nanosleep_not_cancel): New macro.
9942         (sigsuspend_not_cancel): new macro.
9943         * sysdeps/unix/sysv/linux/sigsuspend.c [__ASSUME_REALTIME_SIGNALS]
9944         (do_sigsuspend): Define as inline.
9945         (__sigsuspend): Always use do_sigsuspend.
9946         [! NO_CANCELLATION] (__sigsuspend_nocancel): New function.
9947         * include/signal.h: Declare __sigsuspend_nocancel.
9948         * sysdeps/posix/pause.c
9949         [! NO_CANCELLATION] (__pause_nocancel): New function.
9950
9951         * include/unistd.h (__pause_nocancel): Add attribute_hidden.
9952         * include/time.h (__nanosleep_nocancel): Likewise.
9953
9954 2006-07-30  Ulrich Drepper  <drepper@redhat.com>
9955
9956         * locale/programs/localedef.c (add_to_readlist): Rename local
9957         variables to avoid confusion.
9958
9959         * locale/programs/charmap.c (charmap_read): Emit error message if
9960         charmap couldn't be found or read.
9961
9962 2006-07-28  Ulrich Drepper  <drepper@redhat.com>
9963
9964         * sysdeps/unix/sysv/linux/kernel-features.h: Define
9965         __ASSUME_FUTEX_LOCK_PI.
9966         * include/time.h: Declare __nanosleep_nocancel.
9967         * include/unistd.h: Declare __pause_nocancel.
9968
9969         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Use this instead of
9970         LDFLAGS.  Add -lgcc_eh and libc_nonshared (again) to make sure we
9971         get the __stack_chk_fail_local definition when it's needed.
9972
9973 2006-07-26  Ulrich Drepper  <drepper@redhat.com>
9974
9975         * dlfcn/Makefile: Add rules to build and run bug-atexit3.
9976         * dlfcn/bug-atexit3.c: New file.
9977         * dlfcn/bug-atexit3-lib.cc: New file.
9978
9979         * dlfcn/dlmopen.c (dlmopen_doit): Don't allow RTLD_GLOBAL to be
9980         used when the namespace is not the base namespace.
9981
9982 2006-07-26  Gavin Romig-Koch  <gavin@redhat.com>
9983
9984         * stdlib/cxa_atexit.c (__new_exitfn_called): New variable.
9985         (__new_exitfn): Bump it in every successful call.
9986         * stdlib/cxa_finalize.c (__cxa_finalize): If destructor registered
9987         more exit handlers, call them right away.
9988         * stdlib/exit.h: Declare __new_exitfn_called.
9989
9990 2006-07-25  Ulrich Drepper  <drepper@redhat.com>
9991
9992         * stdlib/cxa_finalize.c (__cxa_finalize): Fix race condition when
9993         calling registered handler.
9994
9995         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fix comment.
9996         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
9997         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
9998         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
9999         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
10000         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
10001         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
10002         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
10003
10004 2006-07-10  Ulrich Drepper  <drepper@redhat.com>
10005
10006         * elf/dl-lookup.c (dl_new_hash): New functions.
10007         (_dl_lookup_symbol_x): Rename hash to old_hash and don't compute
10008         value here.  Compute new-style hash value.  Pass new hash value
10009         and reference to variable with the old value to do_lookup_x.
10010         (_dl_setup_hash): If DT_GNU_HASH is defined, use it and not
10011         old-style hash table.
10012         (_dl_debug_bindings): Pass new hash value and reference to variable
10013         with the old value to do_lookup_x.
10014         * elf/do-lookup.h (do_lookup_x): Accept additional parameter with
10015         new-style hash value and change old-style hash value parameter to
10016         be a reference.  Reoganize functions to determine whether
10017         new-style hash table is available.  Only fall back on old-style
10018         table.  If old-style hash value is needed, compute it here.
10019         * elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH
10020         entry.
10021         * elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT,
10022         DT_TLSDEC_GOT.  Adjust DT_ADDRNUM.
10023         * include/link.h (struct link_map): Add l_gnu_bitmask_idxbits,
10024         l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero.
10025         * Makeconfig: If linker supports --hash-style option add it to all
10026         linker command lines to build DSOs.
10027         * config.make.in: Define have-hash-style.
10028         * configure.in: Test whether linker supports --hash-style option.
10029
10030         * elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const.
10031         * sysdeps/generic/ldsodefs.h: Adjust prototype.
10032
10033 2006-06-27  Ulrich Drepper  <drepper@redhat.com>
10034
10035         * elf/dl-load.c (open_path): Fix test to determine whether DSO is
10036         auditing.
10037
10038         * elf/dl-load.c (_dl_map_object): Try harder to avoid looking at
10039         RPATH of main map twice.
10040
10041 2006-06-22  Ulrich Drepper  <drepper@redhat.com>
10042
10043         * intl/dcigettext.c (DCIGETTEXT): If _nl_find_msg returns -1 don't
10044         look further, return original strings.
10045         (_nl_find_msg): Do not return found translation if the conversion
10046         failed.  Either signal the string is unusable or that something went
10047         wrong and the original should be used.
10048
10049 2006-06-21  Ulrich Drepper  <drepper@redhat.com>
10050
10051         * string/_strerror.c (__strerror_r): Add __builtin_expect.
10052
10053 2006-06-14  Jakub Jelinek  <jakub@redhat.com>
10054
10055         [BZ #2766]
10056         * misc/insremque.c (insque): Handle prev == NULL.
10057         * misc/Makefile (tests): Add tst-insremque.
10058         * misc/tst-insremque.c: New test.
10059
10060 2006-06-17  Ulrich Drepper  <drepper@redhat.com>
10061
10062         [BZ #2792]
10063         * elf/dl-deps.c (expand_dst): Rename __cnt variable to not
10064         conflict with DL_DST_REQUIRED.
10065
10066 2006-06-16  Ulrich Drepper  <drepper@redhat.com>
10067
10068         * nis/nis_subr.c (nis_getnames): Fix the implementation to better
10069         match what Solaris does.
10070
10071 2006-06-04  Ulrich Drepper  <drepper@redhat.com>
10072
10073         * sysdeps/posix/spawni.c (__spawni): Use local_seteuid and
10074         local_setegid instead of seteuid and setegid.
10075         * sysdeps/generic/local-setxid.h: New file.
10076         * sysdeps/unix/sysv/linux/local-setxid.h: New file.
10077
10078         * sysdeps/posix/spawni.c (__spawni): Use non-cancelable interfaces.
10079
10080         * string/Makefile (tests): Add bug-envz1.
10081         * string/bug-envz1.c: New file.
10082
10083 2006-06-02  Jakub Jelinek  <jakub@redhat.com>
10084
10085         * posix/regex_internal.c (re_string_skip_chars): If no character has
10086         been converted at all, set *last_wc to WEOF.  If mbrtowc failed, set wc
10087         to the byte which couldn't be converted.
10088         (re_string_reconstruct): Don't clear valid_raw_len before calling
10089         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
10090         tip_context using re_string_context_at.
10091         * posix/Makefile: Add rules to build and run bug-regex25 test.
10092         * posix/bug-regex25.c: New test.
10093
10094 2006-06-02  Ryan S. Arnold  <rsa@us.ibm.com>
10095
10096         [BZ #2703]
10097         * string/envz.c (envz_strip): Correct erroneously reversed src
10098         and dest parameters to memmove() invocation.
10099
10100 2006-05-30  Jakub Jelinek  <jakub@redhat.com>
10101
10102         * nscd/nscd.h (prune_cache): Add fd argument to prototype.
10103         * nscd/nscd.c (parse_opt): Read response from INVALIDATE request
10104         to make sure the database has been already invalidated.
10105         * nscd/cache.c (prune_cache): Add fd argument.  Write response to fd
10106         after the cache has been invalidated.  Use pthread_mutex_lock rather
10107         than pthread_mutex_trylock if fd != -1.
10108         * nscd/connections.c (invalidate_cache): Add fd argument, write
10109         response to fd if not calling prune_cache, pass fd to prune_cache.
10110         (handle_request): Adjust invalidate_cache caller.
10111         (nscd_run): Pass -1 as fd to prune_cache.
10112
10113 2006-05-30  Ulrich Drepper  <drepper@redhat.com>
10114
10115         * sysdeps/posix/getaddrinfo.c (gaiconf_init): Initialize bits in
10116         the correct place.
10117
10118 2006-05-29  Ulrich Drepper  <drepper@redhat.com>
10119
10120         * nscd/nscd.h (struct database_dyn): Add prunelock field.
10121         * nscd/cache.c (prune_cache): Take prunelock before starting the
10122         work.  Just return in case it is already taken.
10123         * nscd/connections.c (dbs): Initialize .prunelock.
10124
10125 2006-05-25  Ulrich Drepper  <drepper@redhat.com>
10126
10127         * nis/nis_removemember.c (nis_removemember): Avoid unnecessary
10128         copying.  No need to allocate new array for group members.  Just
10129         move the pointers and update the size.
10130
10131         * nis/nis_addmember.c (nis_addmember): Avoid unnecessary copying.
10132         Avoid memory leak in case realloc fails.  Simplification for
10133         better code generation.
10134
10135         Avoid deprecation warning because of libc_hidden_proto for
10136         inet6_option_alloc.
10137         * inet/inet6_option.c (option_alloc): Renamed from
10138         inet6_option_alloc.  Made static.
10139         (inet6_option_alloc): Now a simple wrapper around option_alloc.
10140         (inet6_option_append): Call option_alloc.
10141         * include/netinet/in.h: Remove libc_hidden_proto for
10142         inet6_option_alloc.
10143
10144         * nis/nis_callback.c (__nis_create_callback): Always call xdr_free
10145         for cleanup when cb!=NULL [Coverity CID 233].
10146
10147 2006-05-24  Ulrich Drepper  <drepper@redhat.com>
10148
10149         [BZ #2693]
10150         * inet/Makefile (routines): Add inet6_opt and inet6_rth.
10151         * inet/Versions (libc, GLIBC_2.5): Add inet6_opt_init,
10152         inet6_opt_append, inet6_opt_finish, inet6_opt_set_val, inet6_opt_next,
10153         inet6_opt_find, inet6_opt_get_val, inet6_rth_space, inet6_rth_init,
10154         inet6_rth_add, inet6_rth_reverse, inet6_rth_segments,
10155         and inet6_rth_getaddr.
10156         * inet/netinet/ip6.h (struct ip6_rthdr0): Make ip6r0_addr a flexible
10157         array.
10158         * inet/netinet/in.h (struct ip6_mtuinfo): Define.
10159         Mark inet6_option_* interfaces as deprecated.
10160         Declare inet6_opt_init, inet6_opt_append, inet6_opt_finish,
10161         inet6_opt_set_val, inet6_opt_next, inet6_opt_find, inet6_opt_get_val,
10162         inet6_rth_space, inet6_rth_init, inet6_rth_add, inet6_rth_reverse,
10163         inet6_rth_segments, and inet6_rth_getaddr.
10164         * inet/inet6_opt.c: New file.
10165         * inet/inet6_rth.c: New file.
10166
10167         * inet/netinet/icmp6.h: Pretty printing.
10168
10169         [BZ #2683]
10170         * elf/dl-addr.c (_dl_addr): Don't match undefined references.
10171
10172 2006-05-23  Ulrich Drepper  <drepper@redhat.com>
10173
10174         * nis/nis_lookup.c (nis_lookup): Use __prepare_niscall instead of
10175         doing it all here.  When server does not know the answer do not
10176         fail immediate, try parent first.
10177
10178         * nis/nis_domain_of_r.c (nis_domain_of_r): Add missing buffer
10179         overflow test.
10180
10181 2006-05-20  Ulrich Drepper  <drepper@redhat.com>
10182
10183         * nis/nis_call.c (__prepare_niscall): New function.  Split out
10184         from __do_niscall.
10185         * nis/nis_table.c (__create_ib_request): Renamed from create_ib_request
10186         and exported.
10187         (__follow_path): New function.  Split out from nis_list.
10188         * nis/nis_xdr.h: Add libnsl_hidden_proto for _xdr_ib_request and
10189         _xdr_nis_result.
10190         * nis/nis_xdr.c: Add libnsl_hidden_def for _xdr_ib_request and
10191         _xdr_nis_result.
10192         * nis/libnsl.h: Declare __prepare_niscall, __create_ib_request,
10193         and __follow_path.
10194         * nis/Versions: Export __prepare_niscall, __create_ib_request,
10195         __follow_path, __do_niscall3, _xdr_ib_request, and _xdr_nis_result
10196         from libnsl for version GLIBC_PRIVATE.
10197         * nis/nisplus-parser.h: Remove _nss_nisplus_parse_pwent_chk.
10198         Remove entry parameter from _nss_nisplus_parse_pwent and
10199         _nss_nisplus_parse_grent.
10200         * nis/nss_nisplus/nisplus-parser.c: Likewise.
10201         * nis/nss_nisplus/nisplus-pwd.c: Remove support for SETENT_BATCH_READ
10202         again.  Rewrite getpwent handling to not use nis_first_entry and
10203         nis_next_entry.  Roll out own niscall handling.
10204         * nis/nss_nisplus/nisplus-grp.c: Likewise.
10205
10206         * sunrpc/xdr_rec.c: Fix typo in comment.
10207
10208 2006-05-19  Ulrich Drepper  <drepper@redhat.com>
10209
10210         * nis/nis_call.c (__do_niscall3): Avoid code duplication in error
10211         handling.
10212
10213         * nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
10214         to allocate memory for my_pollfd.  Better initialization of
10215         cb_is_running.  Use TEMP_FAILURE_RETRY.
10216
10217         * malloc/memusage.sh (memusageso): Add quotes.
10218         (memusagestat): Likewise.
10219         * debug/xtrace.sh (pcprofileso): Likewise.
10220         (pcprofiledump): Likewise.
10221         * debug/Makefile ($(objpfx)xtrace): Use $LIB in SLIBDIR
10222         replacement.
10223         * malloc/Makefile ($(objpfx)memusage): Likewise.
10224
10225         * nis/nis_callback.c (__nis_create_callback): Calls to
10226         svcudp_bufcreate and svctcp_create can fail.  Free ->xprt if
10227         asprintf call fails.
10228
10229         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_sendreq): Make sure
10230         no uninitialized memory is passed to sendto.
10231
10232 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
10233
10234         * nis/nis_callback.c (__nis_create_callback): Use asprinf instead
10235         of snprintf+strdup.  Handle OOM.
10236         * nis/nis_callback.c (__nis_create_callback): Allocate cb and
10237         cb->serv together.  Remove now obsolete free calls.
10238         (__nis_destroy_callback): Remove now obsolete free call.
10239
10240 2006-05-18  David Woodhouse  <dwmw2@redhat.com>
10241
10242         * sysdeps/posix/getaddrinfo.c: Add unique labels to the default
10243         RFC3484 precedence table for fec0::/10 and fc00::/7 (site-local
10244         and ULA respectively). Set precedence for IPv4 address to 10 as
10245         defined in RFC3484 for preferring IPv6.
10246         * posix/gai.conf: Update to match the new default tables.
10247
10248 2006-05-18  Jakub Jelinek  <jakub@redhat.com>
10249
10250         * nis/nss_compat/compat-pwd.c (internal_setpwent): If nss_set*ent
10251         returned NSS_STATUS_UNAVAIL, still return NSS_STATUS_SUCCESS.
10252         * nis/nss_compat/compat-spwd.c (internal_setspent): Likewise.
10253         * nis/nss_compat/compat-grp.c (internal_setgrent): Likewise.
10254
10255         * nis/nss_compat/compat-initgroups.c (nss_setgrent, nss_endgrent):
10256         Removed.
10257         (init_nss_interface): Remove initialization of these variables.
10258
10259 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
10260
10261         * nis/nis_call.c (rec_dirsearch): Little optimization: pull
10262         nis_free_directory forward to avoid duplication.
10263
10264 2006-05-17  Ulrich Drepper  <drepper@redhat.com>
10265
10266         * nis/nis_call.c (rec_dirsearch): Handle __nis_finddirectory and
10267         rec_dirsearch returning NULL.
10268         (first_shoot): Handle __nis_finddirectory returning NULL.
10269         (__nisfind_server): Fix leak when rec_dirsearch returns NULL.
10270
10271         * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOSE, IN_MOVE,
10272         IN_ONLYDIR, IN_DONT_FOLLOW, and IN_MASK_ADD.
10273
10274 2006-05-17  Jakub Jelinek  <jakub@redhat.com>
10275
10276         * sunrpc/key_call.c (getkeyserv_handle): Call auth_destroy if
10277         pid changed.
10278
10279 2006-05-15  Ulrich Drepper  <drepper@redhat.com>
10280
10281         * include/rpc/pmap_prot.h: Mark all functions as hidden.
10282
10283         * nscd/nscd_initgroups.c: Mark __gr_map_handle as hidden.
10284         * nscd/nscd_getgr_r.c: Likewise.
10285
10286         * include/rpc/pmap_rmt.h: Mark all functions as hidden.
10287
10288         * nscd/nscd_getai.c (__hst_map_handle): Mark as hidden.
10289         * nscd/nscd_gethst_r.c (__hst_map_handle): Likewise.
10290
10291         * stdlib/longlong.h (__clz_tab): Mark as hidden.
10292
10293         * iconv/gconv_int.h: Mark __gconv_lock as hidden.
10294
10295         * include/rpc/key_prot.h: Mark all _internal functions as hidden.
10296
10297         * include/rpc/auth.h: Mark xdr_des_block_internal and
10298         xdr_opaque_auth_internal as hidden.
10299
10300         * sysdeps/unix/sysv/linux/getdents.c: Mark __have_no_getdents64 as
10301         hidden.
10302
10303         * include/rpc/xdr.h: Mark all _internal functions as hidden.
10304
10305         * misc/getusershell.c (okshells): Don't use static initializers,
10306         do it dynamically.
10307
10308         * stdlib/fmtmsg.c (keywords): Change type of len element to
10309         uint32_t to not waste space on 64bit machines.
10310
10311         * locale/setlocale.c: Change _nl_category_names into a string.
10312         Add new _nl_category_name_idxs.  Change all users.
10313         * locale/localeinfo.h: Adjust declaration of _nl_category_names.
10314         Declare _nl_category_name_idxs.
10315         * locale/findlocale.c: Adjust for _nl_category_names change.
10316         * locale/loadlocale.c: Likewise.
10317         * locale/newlocale.c: Likewise.
10318         * intl/dcigettext.c: Likewise.
10319
10320         * iconv/gconv_conf.c (add_alias): Move actual alias handling to...
10321         (add_alias2): ...here.  New function.
10322         (__gconv_read_conf): Simplify builtin alias handling.
10323         (builtin_aliases): Convert to string to avoid relocations.
10324         * iconv/gconv_builtin.h: Add comment about correct formatting.
10325
10326 2006-05-15  Jakub Jelinek  <jakub@redhat.com>
10327
10328         * resolv/res_debug.c (loc_ntoa): Make error const.
10329
10330 2006-05-14  Andreas Schwab  <schwab@suse.de>
10331
10332         * math/complex.h [__LDBL_COMPAT]: Use __REDIRECT_NTH.
10333
10334 2006-05-12  Jakub Jelinek  <jakub@redhat.com>
10335
10336         * sysdeps/unix/sysv/linux/sched_getaffinity.c: Include sys/param.h.
10337         (__sched_getaffinity_new): Don't crash if cpusetsize is smaller than
10338         sizeof (cpu_set_t).
10339
10340 2006-05-11  Ulrich Drepper  <drepper@redhat.com>
10341
10342         * resolv/res_debug.c (loc_ntoa): Define error as array, not pointer.
10343
10344         * include/arpa/nameser.h: Declare _ns_flagdata as hidden.
10345
10346         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_master.
10347         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_master.
10348
10349         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypbind_resp.
10350         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypbind_resp.
10351
10352         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_cback_data.
10353         * include/rpcsvc/nis_callback.h: Add libnsl_hidden_proto for
10354         xdr_cback_data.
10355
10356         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypupdate_args.
10357         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
10358         xdr_ypupdate_args.
10359
10360         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_order.
10361         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_order.
10362
10363         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_maplist.
10364         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_maplist.
10365
10366         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_obj_p.
10367         * include/rpcsvc/nis_callback.h: New file.
10368
10369         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_val.
10370         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_val.
10371
10372         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
10373         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
10374
10375         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypmaplist.
10376         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypmaplist.
10377
10378         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
10379         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
10380
10381         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypdelete_args.
10382         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
10383         xdr_ypdelete_args.
10384
10385         * nis/nis_xdr.h: Mark all functions as hidden.  Remove
10386         __BEGIN_DECLS and __END_DECLS, the header is not installed.
10387
10388         * nis/nis_error.c: Remove table of strings.  Use position
10389         independent mechanism.
10390         * nis/nis_error.h: New file.
10391
10392 2006-05-11  Jakub Jelinek  <jakub@redhat.com>
10393
10394         * locale/programs/ld-time.c (time_finish): If wide era name or
10395         format aren't provided, set both wname and wformat to L"".
10396
10397 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
10398
10399         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Only store
10400         results if the call was succesful.
10401
10402         * nis/nss-nis.h: Mark __yperr2nss_tab and __yperr2nss_count as hidden.
10403
10404         * nis/nss-nisplus.h: Mark __niserr2nss_tab and __niserr2nss_count
10405         as hidden.
10406
10407 2006-05-10  Jakub Jelinek  <jakub@redhat.com>
10408
10409         * misc/sys/queue.h: Remove uses of all QUEUEDEBUG_* macros.
10410
10411 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
10412
10413         * posix/wordexp.c (parse_glob): No need to check ifs for NULL, the
10414         caller makes sure this is not the case.
10415         (wordexp): Simplify ifs_white creation.  [Coverity CID 231]
10416
10417 2006-05-09  Ulrich Drepper  <drepper@redhat.com>
10418
10419         * posix/wordexp.c: Remove numerous NULL pointer tests before FREE
10420         calls.
10421
10422         * io/ftw.c (open_dir_stream): Return right away if REALLOC fails.
10423         [Coverity CID 229, 230]
10424
10425         * argp/argp-help.c (hol_entry_help): Handle STATE==NULL in ARG and
10426         DGETTEXT calls.
10427         (hol_help): Likewise.  [Coverity CID 226, 227]
10428
10429         * string/argz-replace.c (__argz_replace): Unconditionally call
10430         free on SRC.  [Coverity CID 225]
10431
10432         * nis/nis_creategroup.c (nis_creategroup): No need to duplicate
10433         the return value of __nis_default_owner and __nis_default_group,
10434         it has been especially allocated.  [Coverity CID 224]
10435
10436         * nis/nis_defaults.c (searchXYX): New functions.  Used by both
10437         searchgroup and searchowner.  Significantly simplified.
10438         (__nis_default_owner): Remove duplication.  Do not locally copy the
10439         string before duplicating it.
10440         (__nis_default_group): Likewise.
10441
10442         * nis/nis_lookup.c (nis_lookup): After calling nis_free_directory,
10443         we must clear the variable before calling __nisfind_server.
10444
10445         * nis/nis_lookup.c (nis_lookup): Always free memory allocated with
10446         nis_getnames.  [Coverity CID 223]
10447
10448         * locale/programs/locfile.c (locfile_read): Use alloca instead of
10449         xmalloc to allocate local repertoire name.  [Coverity CID 222]
10450
10451         * iconv/iconv_charmap.c (use_to_charmap): No need to dynamically
10452         allocate memory for the input to add_bytes.  [Coverity CID 221]
10453
10454         * posix/wordexp.c (w_addword): Free word if realloc fails and it
10455         was allocated here.  [Coverity CID 219, 220]
10456
10457         * posix/getconf.c (print_all): Free confstr data after printing.
10458         [Coverity CID 218]
10459
10460         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if
10461         list allocation fails.  [Coverity CID 215]
10462
10463         * nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition.
10464         [Coverity CID 213]
10465
10466         * argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if
10467         string is NULL.  [Coverity CID 212]
10468         * argp/Makefile: Add rules to build and run bug-argp1.
10469         * argp/bug-argp1.c: New file.
10470
10471         * io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find
10472         end of string.
10473         * stdlib/canonicalize.c (__realpath): Likewise.
10474
10475         * locale/programs/ld-time.c (time_finish): Don't dereference NULL
10476         pointer.  [Coverity CID 206]
10477
10478         * elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map
10479         in statically linked code.
10480         * elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in
10481         statically built code, be prepared to have no link map.
10482         [Coverity CID 205]
10483
10484         * argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in
10485         dgettext calls. [Coverity CID 204]
10486
10487         * argp/argp-help.c (struct uparams): Remove valid member.  Change
10488         the one user.
10489         (uparam_names): Reduce size.  Avoid relative relocations.
10490         Moved to read-only segment.
10491         (fill_in_uparams): Update for new layout.
10492
10493         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be
10494         assumed to always be != NULL. [Coverity CID 202]
10495
10496         * argp/argp-help.c (hol_entry_help): Remove some dead code
10497         [Coverity CID 200].
10498
10499         * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize
10500         away a few more unconditional yperr2nss calls.
10501         (_nss_nis_getservbyname_r): Likewise.
10502
10503 2006-05-06  Ulrich Drepper  <drepper@redhat.com>
10504
10505         * sysdeps/generic/ldsodefs.h: Remove support for non-core
10506         architectures.
10507
10508         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Make sure
10509         that unused memory passed to sendto is nevertheless initialized.
10510
10511         [BZ #2499]
10512         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Avoid
10513         possibly unaligned memory accesses.
10514
10515         * include/arpa/nameser.h: Also optimize NS_PUT16 and NS_PUT32.
10516         * resolv/res_mkquery.c: Use NS_PUT16 and NS_PUT32 instead of __putshort
10517         and __putlong respectively.  Correct buffer overflow check for
10518         NS_NOTIFY_OP.
10519
10520         * resolv/res_send.c (send_vc): Use ns_put16 instead of putshort.
10521
10522         * resolv/res_send.c (res_queriesmatch): Fix typo in comment.
10523         (send_dg): Rewrite error handling to be more compact and avoid
10524         double recomputation of timeouts.  Pass MSG_NOSIGNAL to send.
10525
10526         * include/arpa/nameser.h: Add optimizations for NS_GET16 and NS_GET32.
10527
10528         * resolv/res_send.c (res_nameinquery): Use NS_GET16 directly
10529         instead of ns_get16.
10530         (res_queriesmatch): Likewise.  Minor optimization.
10531
10532         [BZ #2499]
10533         * resolv/res_query.c (__libc_res_nquery): If answerp != NULL,
10534         __libc_res_nsend might reallocate the buffer for the answer.  In
10535         this case we have to reload the HP pointer.
10536
10537 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
10538
10539         * stdio-common/vfscanf.c (memory_error): Remove definition.  Add
10540         some branch prediction hints.
10541
10542         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Define SPLICE_F_*.
10543         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
10544         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
10545         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
10546         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
10547         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
10548         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
10549         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
10550
10551 2006-05-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
10552
10553         * sysdeps/s390/s390-32/elf/start.S: Replace pc relative relocation
10554         by a GOT relocation to make Scrt1.o position independent.
10555         * sysdeps/s390/s390-64/elf/start.S: Likewise.
10556
10557         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S: Add support for
10558         six system call parameters.
10559         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
10560
10561 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
10562
10563         * sunrpc/svcauth_des.c (cache_init): Use calloc instead of
10564         malloc&bzero.
10565
10566         * sunrpc/svc_udp.c (BZERO): Remove definition.
10567         (CALLOC): Define.
10568         (svc_enablecache): Use CALLOC instead of ALLOC&BZERO.
10569
10570         * sunrpc/des_impl.c: Remove ALT_ECB support.  We never used it.
10571         (des_SPtrans): Use uint32_t type.
10572         (des_skb): Likewise.
10573
10574         * sunrpc/xdr_ref.c (xdr_reference): Use calloc instead of malloc&bzero.
10575
10576 2006-05-05  Jakub Jelinek  <jakub@redhat.com>
10577
10578         [BZ #2509]
10579         * stdio-common/tst-printf.sh: Adjust for tst-printf.c change even
10580         on 32-bit arches.
10581
10582 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
10583
10584         * locale/programs/ld-address.c (address_finish): Fix one more
10585         place where the iso639 array might be accessed beyond the limits.
10586
10587 2006-05-04  Ulrich Drepper  <drepper@redhat.com>
10588
10589         * nis/nis_table.c (nis_list): Avoid clearing res twice before
10590         filling it for the first time.
10591
10592         * nis/nis_table.c (get_tablepath): Renamed from __get_tablepath.
10593         Adjust all callers.
10594         Free res object content before returning.
10595
10596         * sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero.
10597
10598         * sunrpc/key_call.c (__rpc_thread_key_cleanup): Also free
10599         client->cl_auth.
10600
10601         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Don't skip entire
10602         cleanup for initial thread, just the free call on TVP.
10603
10604         * nscd/gai.c (__getline): Define.
10605
10606
10607 See ChangeLog.16 for earlier changes.