Update.
[glibc.git] / ChangeLog
blob4505b9600bfa8c03e3c434464f104120194259e4
1 2004-10-06  Maciej W. Rozycki  <macro@mips.com>
3         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
4         (__SYSCALL_CLOBBERS): Add "memory".
5         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h
6         (__SYSCALL_CLOBBERS): Likewise.
7         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h
8         (__SYSCALL_CLOBBERS): Likewise.
10 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
12         * include/libc-symbols.h: Define libresolv_hidden_proto and friends.
13         * include/resolv.h: Add libresolv_hidden_proto for symbols defined,
14         used, and exported in libresolv.
15         * resolv/base64.c: Add libresolv_hidden_def.
16         * resolv/gethnamaddr.c: Likewise.
17         * resolv/ns_name.c: Likewise.
18         * resolv/ns_netint.c: Likewise.
19         * resolv/res_comp.c: Likewise.
20         * resolv/res_data.c: Likewise.
21         * resolv/res_debug.c: Likewise.
22         * resolv/res_mkquery.c: Likewise.
23         * resolv/res_query.c: Likewise.
24         * resolv/res_send.c: Likewise.
26 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
28         * elf/dl-minimal.c (__chk_fail): New.  Add rtld_hidden_def.
29         * sysdeps/unix/sysv/linux/readonly-area.c: New file.
30         * sysdeps/i386/i686/memmove.S (__memmove_chk): Add checking
31         routine.
32         * sysdeps/i386/i686/memcpy.S (__memcpy_chk): Likewise.
33         * sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
34         * sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
35         * sysdeps/i386/i686/memmove-chk.S: New file.
36         * sysdeps/i386/i686/memcpy-chk.S: Likewise.
37         * sysdeps/i386/i686/mempcpy-chk.S: Likewise.
38         * sysdeps/i386/i686/memset-chk.S: Likewise.
39         * sysdeps/generic/strcat-chk.c (__strcat_chk): Don't __chk_fail
40         if exactly fitting into buffer.
41         * sysdeps/generic/strncat-chk.c (__strncat_chk): Likewise.
42         * sysdeps/generic/readonly-area.c: New file.
43         * sysdeps/generic/strncpy-chk.c (__strncpy_chk): Only test
44         destlen once.
45         * sysdeps/x86_64/memset.S (__memset_chk): Add checking routine.
46         * sysdeps/x86_64/memcpy.S (__memcpy_chk): Likewise.
47         * sysdeps/x86_64/mempcpy.S (__memcpy_chk): Define to __mempcpy_chk.
48         * sysdeps/x86_64/memcpy-chk.S: New file.
49         * sysdeps/x86_64/mempcpy-chk.S: Likewise.
50         * sysdeps/x86_64/memset-chk.S: Likewise.
51         * sysdeps/x86_64/strcpy-chk.S: Likewise.
52         * sysdeps/x86_64/stpcpy-chk.S: Likewise.
53         * argp/argp-xinl.c (__OPTIMIZE__): Define to 1 instead of nothing.
54         * argp/argp-fs-xinl.c (__OPTIMIZE__): Likewise.
55         * debug/tst-chk1.c: New test.
56         * debug/tst-chk2.c: Likewise.
57         * debug/tst-chk3.c: Likewise.
58         * debug/test-strcpy_chk.c: Likewise.
59         * debug/test-stpcpy_chk.c: Likewise.
60         * debug/vsprintf_chk.c (__vsprintf_chk): If flags > 0, request
61         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
62         * debug/Makefile (routines): Add printf_chk, fprintf_chk, vprintf_chk,
63         vfprintf_chk, gets_chk and readonly-area.
64         (CFLAGS-*_chk.c): Set.
65         (tests): Add tst-chk1, tst-chk2, tst-chk3, test-strcpy_chk and
66         test-stpcpy_chk.
67         * debug/vprintf_chk.c: New file.
68         * debug/printf_chk.c: Likewise.
69         * debug/vfprintf_chk.c: Likewise.
70         * debug/fprintf_chk.c: Likewise.
71         * debug/gets_chk.c: Likewise.
72         * debug/chk_fail.c (__chk_fail): Add libc_hidden_def.
73         * debug/snprintf_chk.c (__snprintf_chk): Fix order of arguments
74         passed to __vsnprintf_chk.
75         * debug/Versions (libc): Export __printf_chk, __fprintf_chk,
76         __vprintf_chk, __vfprintf_chk and __gets_chk @GLIBC_2.3.4.
77         * debug/vsnprintf_chk.c (__vsnprintf_chk): Don't call
78         __vsnprintf, instead create a temporary file with
79         _IO_strn_jumps jumptable.  If flags > 0, request
80         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
81         * libio/Makefile (headers): Add bits/stdio2.h.
82         * libio/stdio.h: Include <bits/stdio2.h> if __USE_FORTIFY_LEVEL.
83         (sprintf, snprintf, vsprintf, vsnprintf): Remove defines.
84         * libio/strfile.h (_IO_strnfile): New type.
85         (_IO_strn_jumps): New extern.
86         * libio/vsnprintf.c (_IO_strnfile): Remove.
87         (_IO_strn_jumps): Remove static.
88         * libio/bits/stdio2.h: New file.
89         * libio/vswprintf.c (_IO_strnfile): Rename type to...
90         (_IO_wstrnfile): ...this.  Adjust all uses.
91         * libio/libio.h (_IO_FLAGS2_CHECK_PERCENT_N): Define.
92         * stdio-common/vfprintf.c (STR_LEN): Define.
93         (vfprintf): Add readonly_format variable.
94         Handle _IO_FLAGS2_CHECK_PERCENT_N.
95         (buffered_vfprintf): Copy _flags2.
96         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
97         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
98         __vfprintf_chk): New prototypes.
99         (__vsprintf_chk, __vsnprintf_chk): Add libc_hidden_proto.
100         * include/string.h (__memcpy_chk, __memmove_chk, __mempcpy_chk,
101         __memset_chk, __strcpy_chk, __stpcpy_chk, __strncpy_chk, __strcat_chk,
102         __strncat_chk): New prototypes.
103         * include/bits/string3.h: New file.
104         * include/sys/cdefs.h (__chk_fail): Add libc_hidden_proto
105         and rtld_hidden_proto.
106         * string/Makefile (headers): Add bits/string3.h.
107         * string/bits/string3.h (bcopy, bzero): New defines.
108         (memset, memcpy, memmove, strcpy, strncpy, strcat, strncat): Change
109         macros so that inlines are used only if unknown destination size
110         or side-effects in destination argument.
111         (mempcpy, stpcpy): Likewise.  Protect with #ifdef __USE_GNU.
113 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
115         * debug/Makefile (routines): Add *_chk.
116         * debug/Versions (libc): Export __chk_fail, __memcpy_chk,
117         __memmove_chk, __mempcpy_chk, __memset_chk, __stpcpy_chk,
118         __strcat_chk, __strcpy_chk, __strncat_chk, __strncpy_chk,
119         __sprintf_chk, __vsprintf_chk, __snprintf_chk, __vsnprintf_chk
120         @GLIBC_2.3.4.
121         * debug/chk_fail.c: New file.
122         * debug/snprintf_chk.c: Likewise.
123         * debug/sprintf_chk.c: Likewise.
124         * debug/vsnprintf_chk.c: Likewise.
125         * debug/vsprintf_chk.c: Likewise.
126         * include/features.h (_FORTIFY_SOURCE): Document, handle.
127         (__USE_FORTIFY_LEVEL): Define.
128         (__GNUC_PREREQ): Move to earlier location.
129         * include/sys/cdefs.h (__chk_fail): New prototype.
130         * libio/bits/stdio.h (sprintf, vsprintf, snprintf, vsnprintf):
131         Define if __USE_FORTIFY_LEVEL.
132         * misc/sys/cdefs.h (__bos, __bos0): Define.
133         * string/string.h: Include <bits/string3.h> if __USE_FORTIFY_LEVEL.
134         * bits/string/string3.h: New header.
135         * sysdeps/generic/memcpy_chk.c: New file.
136         * sysdeps/generic/memmove_chk.c: Likewise.
137         * sysdeps/generic/mempcpy_chk.c: Likewise.
138         * sysdeps/generic/memset_chk.c: Likewise.
139         * sysdeps/generic/stpcpy_chk.c: Likewise.
140         * sysdeps/generic/strcat_chk.c: Likewise.
141         * sysdeps/generic/strcpy_chk.c: Likewise.
142         * sysdeps/generic/strncat_chk.c: Likewise.
143         * sysdeps/generic/strncpy_chk.c: Likewise.
145 2004-10-17  Roland McGrath  <roland@frob.com>
147         * manual/memory.texi (Page Lock Functions): Typo fix.
148         Reported by Carlos Maziero <maziero@ppgia.pucpr.br>
150 2004-10-16  Alfred M. Szmidt  <ams@kemisten.nu>
152         * sysdeps/mach/hurd/Makefile (link-libc-static): Use
153         `$(static-gnulib') instead of `$(gnulib)'.
155 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
157         * sunrpc/rpc_clntout.c: Avoid including rcsid into binary.
158         * sunrpc/rpc_cout.c: Likewise.
159         * sunrpc/rpc_hout.c: Likewise.
160         * sunrpc/rpc_main.c: Likewise.
161         * sunrpc/rpc_parse.c: Likewise.
162         * sunrpc/rpc_sample.c: Likewise.
163         * sunrpc/rpc_scan.c: Likewise.
164         * sunrpc/rpc_svcout.c: Likewise.
165         * sunrpc/rpc_tblout.c: Likewise.
166         * sunrpc/rpc_util.c: Likewise.
168 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
170         * sysdeps/unix/sysv/linux/i386/sysdep.h (PUSHARGS_6, DOARGS_6,
171         POPARGS_6, _PUSHARGS_6, _DOARGS_6, _POPARGS_6): Define.
172         * sysdeps/unix/sysv/linux/i386/syscall.S (syscall): Handle 6 argument
173         syscalls.
175 2004-10-15  Ulrich Drepper  <drepper@redhat.com>
177         * nscd/nscd.h (_PATH_NSCD_PASSWD_DB): Move to /var/db.
178         (_PATH_NSCD_GROUP_DB): Likewise.
179         (_PATH_NSCD_HOSTS_DB): Likewise.
180         (_PATH_NSCD_XYZ_DB_TMP): New #define, point to /var/run.
181         * nscd/connections.c (nscd_init): Non-persistent database files
182         are created with the _PATH_NSCD_XYZ_DB_TMP path.
183         * nscd/nscd.init: Create /var/db/nscd if necessary.
185 2004-10-15  Richard Henderson  <rth@redhat.com>
187         * sysdeps/unix/sysv/linux/alpha/register-dump.h: New file.
188         * sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h (SIGCONTEXT): Add
189         _code argument, pass sigcontext by pointer.
190         (SIGCONTEXT_EXTRA_ARGS): Likewise.
191         (GET_PC, GET_FRAME, GET_STACK): Expect ctx as pointer.
193 2004-10-14  Richard Henderson  <rth@redhat.com>
195         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
196         elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
197         instead of static.
199         * sysdeps/unix/sysv/linux/adjtime.c (ADJTIME): Use prototype
200         style definition.
201         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): If
202         __ASSUME_TIMEVAL64, define __adjtime directly rather than
203         via strong_alias.
205 2004-10-14  Ulrich Drepper  <drepper@redhat.com>
207         * nscd/Makefile: When using compilers without -fpie support, also
208         link with -lselinux if necessary.
209         Patch by Arkadiusz Miskiewicz <arekm@pld-linux.org>.
211         * nscd/connections.c (nscd_init): Remove file if not persistent
212         and not shared.  Patch by Jerome Borsboom <j.borsboom@erasmusmc.nl>.
214 2004-10-14  Jakub Jelinek  <jakub@redhat.com>
216         * sysdeps/unix/sysv/linux/i386/setresuid.c: Handle
217         defined __NR_setresuid32 && !defined __NR_setresuid.
218         * sysdeps/unix/sysv/linux/i386/setresgid.c: Handle
219         defined __NR_setresgid32 && !defined __NR_setresgid.
221         * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit,
222         __signbitl, sqrtf, sqrt, sqrtl, fdim, fdimf): Use __NTH macro.
224         * sysdeps/generic/errno-loc.c: Don't undef #errno
225         if RTLD_PRIVATE_ERRNO.
226         * include/errno.h (__errno_location): If RTLD_PRIVATE_ERRNO,
227         add attribute_hidden.
229         * dlfcn/dlinfo.c (dlinfo_doit): Replace iteration over GL(dl_loaded)
230         chain with iteration over all namespaces' _ns_loaded chains.
231         * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_preferred_address):
232         Likewise.
233         * sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Likewise.
235         * elf/rtld.c (_dl_start): Fix one last dl_loaded.
236         * elf/dl-load.c (_dl_map_object_from_fd): Avoid definition of
237         label when it is not needed.
238         * elf/dl-close.c (_dl_close): Typo: & -> &&.
240 2004-10-12  Jakub Jelinek  <jakub@redhat.com>
242         * sysdeps/generic/segfault.c: Include alloca.h and stdint.h.
243         Don't include frame.h.
244         (CURRENT_STACK_FRAME, INNER_THAN, ADVANCE_STACK_FRAME): Remove.
245         (catch_segfault): Use backtrace function.
247         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Fix comment.
248         * sysdeps/unix/sysv/linux/ia64/register-dump.h: New file.
249         * sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h (GET_PC): Return sc_ip
250         field.
252 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
254         Add support for namespaces in the dynamic linker.
255         * dlfcn/Makefile (libdl-routines): Add dlmopen.
256         * dlfcn/Versions [libdl, GLIBC_2.3.4]: Add dlmopen.
257         * dlfcn/dlfcn.h: Define Lmid_t, LM_ID_BASE, and LM_ID_NEWLM.
258         Declare dlmopen.  Document RTLD_DI_LMID.
259         * dlfcn/dlinfo.c: Handle RTLD_DI_LMID.
260         * dlfcn/dlmopen.c: New file.
261         * dlfcn/dlopen.c: Pass new parameter to _dl_open.
262         * dlfcn/dlopenold.c: Likewise.
263         * elf/dl-addr.c: Adjust for removal of GL(dl_loaded).
264         * elf/dl-caller.c: Likewise.
265         * elf/dl-close.c: Likewise.
266         * elf/dl-conflict.c: Likewise.
267         * elf/dl-debug.c: Likewise.
268         * elf/dl-lookup.c: Likewise.
269         * elf/dl-sym.c: Likewise.
270         * elf/dl-version.c: Likewise.
271         * elf/do-lookup.h: Likewise.
272         * elf/rtld.c: Likewise.
273         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
274         * elf/dl-depsc: Likewise.  Add new parameter to _dl_map_object.
275         * elf/dl-fini.c: Call destructors in all namespaces.
276         * elf/dl-iteratephdr.c: Compute total nloaded.  Adjust for removal of
277         GL(dl_loaded).
278         * elf/dl-libc.c: Pass new parameter to _dl_open.  Adjust for removal
279         of GL(dl_loaded).
280         * elf/dl-load.c (_dl_map_object_from_fd): Don't load ld.so a second
281         time.  Reuse the one from the main namespace in all others.
282         Pass new parameter to _dl_new_object.
283         Adjust for removal of GL(dl_loaded).
284         * elf/dl-object.c: Take new parameter.  Use it to initialize l_ns.
285         Adjust for removal of GL(dl_loaded).
286         * elf/dl-open.c (_dl_open): Take new parameter.
287         Adjust for removal of GL(dl_loaded).
288         * elf/dl-support.c: Replace global _dl_loaded etc variables with
289         _dl_ns variable.
290         * include/dlfcn.h: Adjust prototype of _dl_open.
291         Define __LM_ID_CALLER.
292         * include/link.h: Add l_real, l_ns, and l_direct_opencount elements.
293         * sysdeps/generic/dl-tls.c: Bump TLS_STATIC_SURPLUS.  Since libc is
294         using TLS we need memory appropriate to the number of namespaces.
295         * sysdeps/generic/ldsodefs.h (struct rtld_global): Replace _dl_loaded,
296         _dl_nloaded, _dl_global_scope, _dl_main_searchlist, and
297         _dl_global_scope_alloc with _dl_ns element.  Define DL_NNS.
298         Adjust prototypes of _dl_map_object and member in rtld_global_ro.
299         * malloc/malloc.c: Include <dlfcn.h>.
300         * malloc/arena.c (ptmalloc_init): If libc is not in primary namespace,
301         never use brk.
302         * elf/Makefile: Add rules to build and run tst-dlmopen1 and
303         tst-dlmopen2.
304         * elf/tst-dlmopen1.c: New file.
305         * elf/tst-dlmopen1mod.c: New file.
306         * elf/tst-dlmopen2.c: New file.
308         * elf/dl-close.c: Improve reference counting by tracking direct loads.
309         * elf/dl-lookup.c (add_dependency): Likewise.
310         * elf/dl-open.c (dl_open_worker): Likewise.
311         * elf/rtld.c (dl_main): Likewise.
313 2004-09-09  GOTO Masanori  <gotom@debian.or.jp>
315         [BZ #77]
316         * elf/dl-close.c: Count down l_opencount to check not only for
317         l_reldeps, but also l_initfini.
319 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
321         * elf/dl-close.c (_dl_close): Update bug reporting instructions.
323 2004-10-11  Ulrich Drepper  <drepper@redhat.com>
325         * timezone/asia: Update from tzdata2004e.
326         * timezone/southamerica: Likewise.
327         * timezone/private.h: Update from tzcode2004e.
328         * timezone/zdump.c: Likewise.
330         * stdio-common/vfscanf.c: Add support for reading localized
331         digits.  Patch mainly by Hamed Malek <hamed@bamdad.org>.
333         * resolv/res_init.c (res_thread_freeres): Reset _res.options.
334         [BZ #434]
336         * resolv/res_send.c (send_dg): Use nonblocking sockets.  Add
337         appropriate poll/select calls and restart operation if necessary.
338         Also handle EINTR.
340         * elf/tst-dlopenrpath.c (do_test): Enable code which was disabled
341         for debugging.
343         * elf/dl-sym.c (do_sym): Avoid using global variable.
345         * elf/dl-addr.c (_dl_addr): Really use match everywhere.
347 2004-10-09  Andreas Schwab  <schwab@suse.de>
349         * sysdeps/m68k/memcopy.h (WORD_COPY_BWD): Remove use of cast as
350         lvalue.
352         * sysdeps/m68k/fpu/bits/mathinline.h: Remove __THROW from inline
353         definitions.
355 2004-10-07  Andreas Schwab  <schwab@suse.de>
357         * misc/sys/uio.h: Change __vector to __iovec to avoid clash with
358         altivec.
360 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
362         * gmon/Makefile (CFLAGS-mcount.c): Move before inclusion of "Rules".
363         * sysdeps/powerpc/powerpc64/Makefile (CFLAGS-mcount.c): Add
364         -msoft-float.
365         * sysdeps/powerpc/powerpc64/sysdep.h (SAVE_ARG, REST_ARG): New macros.
366         (CALL_MCOUNT): Replace with a gas macro implementation.
367         (EALIGN): Delete PROF version.
368         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Invoke CALL_MCOUNT.
369         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Likewise.
370         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
371         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
372         * sysdeps/powerpc/powerpc64/memcpy.S: Likewise.
373         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
374         * sysdeps/powerpc/powerpc64/stpcpy.S: Likewise.
375         * sysdeps/powerpc/powerpc64/strchr.S: Likewise.
376         * sysdeps/powerpc/powerpc64/strcmp.S: Likewise.
377         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
378         * sysdeps/powerpc/powerpc64/strlen.S: Likewise.
379         * sysdeps/powerpc/powerpc64/strncmp.S: Likewise.
380         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Likewise.
381         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Likewise.
382         * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Likewise.
383         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Likewise.
384         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Likewise.
385         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: Likewise.
386         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: Likewise.
387         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: Likewise.
388         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: Likewise.
389         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Likewise.
390         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Likewise.
391         * sysdeps/powerpc/powerpc64/fpu/s_round.S: Likewise.
392         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Likewise.
393         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Likewise.
394         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Likewise.
396         * sysdeps/powerpc/powerpc64/setjmp-common.S: Add extra entry point
397         past _mcount call.
398         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Use it.
399         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
401 2004-10-06  Ulrich Drepper  <drepper@redhat.com>
403         * resolv/res_mkquery.c (res_nmkquery): Reject randombits value if
404         low 16 bits are zero.
406 2004-10-06  Jakub Jelinek  <jakub@redhat.com>
408         * posix/tst-getaddrinfo2.c: Include stdlib.h and string.h.
409         (do_test): Use %p instead of 0x%08X to print a pointer.
411         * malloc/malloc.c: Include stdio-common/_itoa.h.
413 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
415         * elf/rtld.c (dl_main): Use _dl_debug_printf instead of _dl_printf
416         for prelink message.
418 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
420         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Include dl-sysdep.h.
421         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
423 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
425         * grp/initgroups.c: Remove duplicate group IDs.
426         * grp/compat-initgroups.c: Likewise.
427         * nscd/initgrcache.c: Likewise.
429 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
431         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (__sysconf): Return 200112L
432         for _SC_CPUTIME or _SC_THREAD_CPUTIME.
434         * nscd/Makefile (nscd-cflags): Set to -DIS_IN_nscd=1, plus
435         -fpie if building PIE.
436         (CFLAGS-*.c): Use it.
438         * nscd/Makefile (relro-LDFLAGS): Add -Wl,-z,now if have-z-relro.
439         ($(objpfx)nscd): Add $(relro-LDFLAGS).
441         * sysdeps/unix/sysv/linux/i386/sysconf.c: Include hp-timing.h.
442         (__sysconf): Return -1 for _SC_CPUTIME or _SC_THREAD_CPUTIME if
443         !HP_TIMING_AVAIL.
445 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
447         * nscd/Makefile (distribute): Remove TODO.
448         * nscd/TODO: Removed.
450 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
452         * nscd/gai.c: Define __no_netlink_support if NEED_NETLINK is
453         defined and __ASSUME_NETLINK_SUPPORT is zero.
454         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gai.c): Add
455         -DNEED_NETLINK.
457         * malloc/mtrace.pl: Avoid calling location unless it is needed for
458         output.  Patch by Edward Bishop <binutils@gmail.com>.
460         * nscd/Makefile (CFLAGS-gai.c): Add -fpie.
462 2004-10-04  H.J. Lu  <hongjiu.lu@intel.com>
464         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c
465         (clock_getcpuclockid): Add missing retval.
467         * sysdeps/unix/sysv/linux/ia64/sysconf.c (linux_sysconf): Fix a typo.
469 2004-10-04  Roland McGrath  <roland@redhat.com>
471         * include/errno.h [RTLD_PRIVATE_ERRNO] (errno): Rename the real symbol
472         to rtld_errno.
473         * sysdeps/generic/errno.c [RTLD_PRIVATE_ERRNO] (rtld_errno): Define it,
474         and don't define any other errno names.
475         * sysdeps/unix/alpha/sysdep.h [RTLD_PRIVATE_ERRNO]: Use rtld_errno in
476         place of errno.
477         * sysdeps/unix/i386/sysdep.S: Likewise.
478         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
479         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
480         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
481         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
482         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
483         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
484         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
485         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
486         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
487         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
488         * sysdeps/unix/x86_64/sysdep.S: Likewise.
490         * sysdeps/generic/errno.c [! USE___THREAD] (errno): Use `nocommon'
491         attribute instead of `section'.
493 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
495         * sysdeps/unix/sysv/linux/ia64/sysconf.c: New file.
496         * sysdeps/unix/sysv/linux/ia64/Dist: Add has_cpuclock.c.
497         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: Move actual
498         testing code to...
499         * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c: ...here.  New file.
500         * sysdeps/unix/sysv/linux/i386/sysconf.c: Add dynamic check for
501         _SC_CPUTIME and _SC_THREAD_CPUTIME.
503         * nscd/connections.c (start_threads): Use sysconf in case
504         _POSIX_CLOCK_SELECTION or _POSIX_MONOTONIC_CLOCK is not greater zero.
506         * nscd/Makefile (nscd-modules): Add gai.
507         * nscd/gai.c: New file.
508         * nscd/nscd.c: Remove getaddrinfo stub definition.
510         * assert/assert.h: Give up on using __builtin_expect.
512         * elf/rtld.c (dl_main): Only skip => output in ldd mode if both
513         strings are identical.
515 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
517         * malloc/arena.c (aligned_heap_area): New variable.
518         (new_heap): If aligned_heap_area != NULL, attempt to use that
519         first.  If HEAP_MAX_SIZE << 1 area is already HEAP_MAX_SIZE bytes
520         aligned, remember the second half in aligned_heap_area.
521         (delete_heap): Clear aligned_heap_area if deleting the area right
522         before aligned_heap_area.
524 2004-10-03  Juerg Billeter  <j@bitron.ch>
526         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Return -1 if nscd
527         can't be used.  [BZ #424]
529 2004-10-03  Ulrich Drepper  <drepper@redhat.com>
531         Dynamically create new threads if necessary.
532         * nscd/connections.c (fd_ready): If no thread available for processing
533         the request, create a new one unless the limit is reached.
534         (start_threads): Check errors from pthread_create.
535         * nscd/nscd.h: Declare max_nthreads.
536         * nscd/nscd_conf.c: Parse max-nthreads entry.
537         * nscd/nscd.conf: Add max-threads entry.
538         * nscd/nscd_stat.c: Print current and maximum number of threads.
540         Implement paranoia mode.
541         * nscd/connections.c (nscd_init): Mark database and socket descriptors
542         as close on exec.
543         (restart): New function.
544         (restart_p): New function.
545         (nscd_run): Add missing descrement of nready in case readylist is
546         empty.
547         (main_loop_poll): Call restart_p and restart.
548         (main_loop_epoll): Likewise.
549         (begin_drop_privileges): Save original UID and GID.
550         * nscd/nscd.c: Define new variables paranoia, restart_time,
551         restart_interval, oldcwd, old_gid, old_uid.
552         (main): Disable paranoia mode if we are not forking.
553         (check_pid): When re-execing, the PID file contains the same PID as
554         the current process.  Do not fail in this case.
555         * nscd/nscd.conf: Add paranoia and restart-interval entries.
556         * nscd/nscd.h: Define RESTART_INTERVAL.  Declare new variables.
557         * nscd/nscd_conf.c: Parse paranoia and restart-internal configurations.
558         * nscd/nscd_stat.c: Print paranoia and restart-internal values.
560         * nscd/connections.c: Implement alternative loop for main thread
561         which uses epoll.
562         * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]
563         (CFLAGS-connections.c): Add -DHAVE_EPOLL.
565 2004-10-02  Ulrich Drepper  <drepper@redhat.com>
567         * nscd/Makefile (CFLAGS-initgrcache.c): Add to CFLAGS-* variables,
568         don't replace old content.
570         * nscd/connections.c: Rewrite handling of incoming connections.  All
571         are handled by one thread which then hands off the descriptors for the
572         real work to the worker threads.
573         * nscd/Makefile: Link nscd with librt.
575         * nscd/selinux.c: Pretty printing.
577         * nscd/dbg_log.c (dbg_log): Don't add unnecessary newline to
578         output.  Let syslog do the formatting if debug_level == 0.
580         * nscd/nscd_helper.c (get_mapping): No need to check timestamp if
581         nscd_certainly_running is nonzero.
583 2004-10-02  Simon Josefsson  <jas@extundo.com>
585         [BZ #420]
586         * sysdeps/generic/memmem.c [!_LIBC]: Define __builtin_expect, to
587         make the file usable inside gnulib.
589 2004-10-01  Ulrich Drepper  <drepper@redhat.com>
591         * malloc/malloc.c (public_vALLOc): Add missing use of hooks.
592         (public_pVALLOc): Likewise.
594         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Always add the
595         group the caller provided unless there is a real problem.
597         * posix/bug-glob1.c (prepare): Fix creation of symlink.
599 2004-09-30  Ulrich Drepper  <drepper@redhat.com>
601         * posix/Makefile: Add rules to build and run bug-glob1.
602         * posix/bug-glob1.c: New file.
604         * iconv/iconv_prog.c (main): Print progress information to stderr.
606         * nscd/nscd.c (termination_handler): Reset timestamp so that
607         clients immediately stop using the database.
609         * nscd/nscd-client.h (__nscd_get_map_ref): Drop volatile from last
610         parameter.
611         (__nscd_drop_map_ref): Change second parameter to be a reference to
612         a variable.  Update variable when cycle count changed.
613         * nscd/nscd_helper.c (__nscd_get_map_ref): Remove volatile here, too.
614         * nscd/nscd_getai.c: Correctly use __nscd_drop_map_ref.  Reinitialize
615         all variables and avoid memory leak in case of retries.
616         * nscd/nscd_getgr_r.c: Likewise.
617         * nscd/nscd_gethst_r.c: Likewise.
618         * nscd/nscd_getpw_r.c: Likewise.
619         * nscd/nscd_initgroups.c: Likewise.
621         * nscd/nscd.h: Add declaration of addinitgroups and
622         readdinitgroups.
624 2004-09-30  Andreas Jaeger  <aj@suse.de>
626         * nscd/Makefile (CFLAGS-nscd_initgroups.c): Set to -fpie.
627         (CFLAGS-initgrcache.c): Set to -fexceptions.
629 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
631         * sysdeps/generic/glob.c (glob_in_dir): Don't blindly trust
632         readdir results; for symlinks or files of unknown type check using
633         stat whether the file exists.
635         * posix/tst-gnuglob.c (find_file): Handle leading "./".  Fix
636         recognition of files.
638 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
640         * time/tzfile.c (tzfile_mtime): New variable.
641         (__tzfile_read): Reread the file if mtime is different.
643 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
645         * sysdeps/alpha/fpu/bits/mathinline.h (__fdimf, __fdim, fdimf, fdim):
646         Handle +inf/+inf.
647         * sysdeps/powerpc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
648         * sysdeps/sparc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
650 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
652         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use correct constant for
653         testing result of __nscd_get_map_ref.
655 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
657         * sysdeps/i386/fpu/s_fdim.S (__fdim): Handle +inf/+inf.
658         * sysdeps/i386/fpu/s_fdimf.S (__fdimf): Likewise.
659         * sysdeps/i386/fpu/s_fdiml.S (__fdiml): Likewise.
661 004-09-29  Ulrich Drepper  <drepper@redhat.com>
663         * grp/initgroups.c: Move compat_call implementation...
664         * grp/compat-initgroups.c: ...to here.  New file.
665         * grp/Makefile (distribute): Add compat-initgroups.c.
666         (CFLAGS-initgroups.c): Add -DUSE_NSCD=1.
667         * mscd/initgrcache.c: New file.
668         * nscd/nscd_initgroups.c: New file.
669         * nscd/Makefile (routines): Add nscd_initgroups.
670         (nscd-modules): Add initgrcache.
671         * nscd/cache.c (prune_cache): Add support for INITGROUPS entries.
672         * nscd/connections.c: Handle INITGROUPS requests.
673         * nscd/nscd-client.h: Define INITGROUPS, initgr_response_header.
674         Add initgrdata element to struct datahead.  Fix typo in comment.
675         * nscd/nscd_proto.h: Declare __nscd_getgrouplist.  Fix parameter
676         type in __nscd_getgrgrid_r.
677         * nscd/selinux.c (perms): Add INITGROUPS entry.
679         * nscd/nscd_getai.c: No need to include <sys/mman.h>.
681         * sunrpc/get_myaddr.c (get_myaddress): Account for interfaces without
682         assigned addresses.
683         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
684         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
685         * sunrpc/clnt_udp.c (is_network_up): Likewise.
687         * nscd/nscd.c: Define getaddrinfo hidden so that it is never found
688         outside.
690         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_segvflags):
691         Renamed from si_flags due to conflict with si_flags from <elf.h>.
693 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
695         * nscd/nscd_getai.c: Use NO_MAPPING instead of MAP_FAILED for test
696         of failing __nscd_get_map_ref.  Fix a few typos.
698         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Make sure
699         SIGSETXID is not blocked.
700         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Likewise.
701         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
702         * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise.
703         * sysdeps/generic/sigfillset.c (sigfillset): Don't set SIGSETXID.
705         * sunrpc/get_myaddr.c (get_myaddress): Fix test for failing
706         getifaddrs call.
707         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
708         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
709         * sunrpc/Makefile (xtests): Add tst-getmyaddr.
710         * sunrpc/tst-getmyaddr.c: New file.
712         * malloc/arena.c (ptmalloc_init): Allow MALLOC_CHECK_==0 to
713         disable all checking.
715         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_flags): Add
716         support to get this value.
718 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
720         * io/utime.h (utime): Allow second argument to be NULL.
722 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
724         * sysdeps/posix/getaddrinfo.c (gaih_inet): If NAME is a numerical IP
725         address and AI_CANONNAME is set, return copy of NAME as ai_canonname.
727 2004-09-27  Andreas Jaeger  <aj@suse.de>
729         * sysdeps/i386/dl-machine.h (elf_machine_rela_relative): Replace
730         static inline by auto inline, add always_inline attribute.
731         (elf_machine_rel): Likewise.
732         (elf_machine_rela): Likewise.
733         (elf_machine_lazy_rel): Likewise.
734         (elf_machine_lazy_rela): Likewise.
735         (elf_machine_rel_relative): Likewise.
737 2004-09-27  Ulrich Drepper  <drepper@redhat.com>
739         * sunrpc/xdr_intXX_t.c: Add xdr_quad_t and xdr_u_quad_t aliases.
740         * sunrpc/rpc/xdr.h: Declare xdr_quad_t and xdr_u_quad_t.
741         * sunrpc/rpc_parse.c (get_type): Use "quad_t" for TOK_HYPER.
742         Otherwise isvectordef will loop infinitely if typedef hyper int64_t
743         is seen.
744         (unsigned_dec): Use "u_quad_t" for similar reasons.
745         * sunrpc/Versions: Export xdr_quad_t and xdr_u_quad_t.
747 2004-09-27  Roland McGrath  <roland@redhat.com>
749         * sysdeps/generic/bits/waitstatus.h (__WIFSIGNALED): Simplify bit
750         twiddling in last change.
752         * posix/tst-waitid.c (do_test): Add tests for waitpid with WCONTINUED.
754         [BZ #409]
755         * posix/sys/wait.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
756         * stdlib/stdlib.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
757         * sysdeps/generic/bits/waitstatus.h (__W_CONTINUED): New macro.
758         [WCONTINUED] (__WIFCONTINUED): New macro.
759         (__WIFSIGNALED): Rewritten to exclude __W_CONTINUED value, and have no
760         branches.
762         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Add fifth argument to
763         all three syscall uses, not just one!
765 2004-09-26  Richard Henderson  <rth@redhat.com>
767         * sysdeps/alpha/alphaev6/memcpy.S: Mark .prologue.
768         * sysdeps/unix/alpha/sysdep.h (LEAF, ENTRY): Align entry points
769         to 16 byte boundaries.
771 2004-09-26  Ulrich Drepper  <drepper@redhat.com>
773         * elf/readlib.c (process_file): Before complaining about too-short
774         file, check that it potentially be an ELF file.  Also complain about
775         empty files.  [BZ #151].
777         * scripts/test-installation.pl: Fix ld.so recognition for new
778         LD_TRACE_LOADED_OBJECTS output format.
779         Patch by <jsberg04+computing.glibc@ftml.net>  [BZ #407].
781         * elf/dl-support.c (_dl_non_dynamic_init): Fix cleaning of
782         environment.  [BZ #384]
784         * sunrpc/clnt_udp.c (is_network_up): Use getifaddrs instead of ioctl.
785         * sunrpc/get_myaddr.c (get_myaddress): Likewise.
786         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
787         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.  Change interface
788         to avoid buffer overrun and remove now useless parameters.
789         (clnt_broadcast): Adjust caller.  [BZ #381].
791         * sysdeps/generic/s_fdim.c: Handle +inf/+inf
792         * sysdeps/generic/s_fdimf.c: Likewise.
793         * sysdeps/generic/s_fdiml.c: Likewise.
794         * sysdeps/i386/i686/fpu/s_fdim.S: Likewise.
795         * sysdeps/i386/i686/fpu/s_fdimf.S: Likewise.
796         * sysdeps/i386/i686/fpu/s_fdiml.S: Likewise.
797         * sysdeps/powerpc/fpu/s_fdim.c: Likewise.
798         * sysdeps/powerpc/fpu/s_fdimf.c: Likewise.
799         * sysdeps/x86_64/fpu/s_fdiml.S: Likewise.
800         * math/libm-test.inc (fdim_test): Add test case.  [BZ #376].
802         * sysdeps/generic/bits/types.h: Fix __SQUAD_TYPE and __UQUAD_TYPE
803         for compilers without __GLIBC_HAVE_LONG_LONG.  [BZ #362]
805         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Remove incorrect
806         requirement on socktype and protocol.
807         (gaih_inet): If numeric port number is given, return records for all
808         possible socket types.
809         * posix/tst-getaddrinfo2.c: New file.
810         * posix/Makefile (tests): Add tst-getaddrinfo2.  [BZ #358]
812 2004-09-25  Ulrich Drepper  <drepper@redhat.com>
814         * locale/loadlocale.c (_nl_intern_locale_data): Recognize LC_CTYPE
815         data where _nl_value_type_LC_CTYPE does not contain the type
816         information.  Add range checks.
817         Reported by John Lumby <johnlumby@hotmail.com> [BZ #356].
819         * libio/vasprintf.c (_IO_vasprintf): Fix condition to decide
820         whether to realloc or not.
821         Reported by Pavel Kankovsky <peak@argo.troja.mff.cuni.cz> [BZ #346].
823         * intl/dcigettext.c (DCIGETTEXT): Protect tfind/tsearch calls.
824         * intl/dcigettext.c (_nl_find_msg): Call _nl_load_domain also if
825         decided < 0.
826         * intl/finddomain.c (_nl_find_domain): Likewise.
827         * intl/loadmsgcat.c (_nl_load_domain): Set decided to 1 only once we
828         are done.  First set to -1 to signal initialization is ongoing.
829         Protect against concurrent callers with recursive lock.
830         * intl/finddomain.c (_nl_find_domain): Protect calls to
831         _nl_make_l10nflist.  [BZ #322]
833         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If determinination of
834         source address fails, initialized source_addr_len field so that
835         duplicate address recognition does not copy junk.
837 2004-09-25  Jakub Jelinek  <jakub@redhat.com>
839         * sysdeps/unix/sysv/linux/i386/setuid.c (__setuid): Remove second
840         result declaration.
842 2004-09-22  Andreas Schwab  <schwab@suse.de>
844         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Adjust whitespace.
846 2004-09-24  Ulrich Drepper  <drepper@redhat.com>
848         * misc/daemon.c (daemon): Don't succeed if /dev/null cannot be
849         opened.
851         * nis/ypclnt.c (do_ypcall): Add one missing unlock.  Simplify the
852         code a bit.
854         * misc/daemon.c (daemon): Define errno in case /dev/null is not
855         the correct device.
857         * nis/ypclnt.c (yp_bind_file): Optimize a bit.  Minimal cleanups.
859 2004-09-23  Andreas Jaeger  <aj@suse.de>
861         * locale/weight.h (findidx): Remove static, it's not supported
862         anymore with GCC 4.0 in a block scope.
863         * locale/weightwc.h (findidx): Likewise.
864         * posix/regcomp.c (seek_collating_symbol_entry): Likewise.
865         (lookup_collation_sequence_value): Likewise.
866         (build_range_exp): Likewise.
867         (build_collating_symbol): Likewise.
868         * iconv/iconvconfig.c (write_output): Likewise.
869         * elf/do-rel.h (elf_dynamic_do_rel): Likewise.
871         * sysdeps/x86_64/dl-machine.h (elf_machine_rela_relative): Remove
872         static, add always_inline attribute.
873         (elf_machine_rela): Likewise.
874         (elf_machine_lazy_rel): Likewise.
876         * elf/dynamic-link.h (elf_get_dynamic_info): Make static dependend
877         on !RESOLVE so that it's not defined in local scope.
879 2004-09-23  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
881         * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL_NCS): Define.
883 2004-09-23  Thorsten Kukuk  <kukuk@suse.de>
885         * sysdeps/unix/sysv/linux/sys/mount.h: Sync MS_RMT_MASK flag
886         and BLK* ioctls with linux kernel headers.
888 2004-09-23  Ulrich Drepper  <drepper@redhat.com>
890         * sysdeps/generic/bits/dlfcn.h: Add RTLD_DEEPBIND.
891         * elf/dl-object.c (_dl_new_object): Add new parameter mode.  If mode
892         has RTLD_DEEPBIND set add local searchlist before global scope.
893         * sysdeps/generic/ldsodefs.h (_dl_new_object): Adjust prototype.
894         * elf/rtld.c: Adjust callers of _dl_new_object.
895         * elf/dl-load.c: Likewise.
896         (_dl_map_object_from_fd): If RTLD_DEEPBIND is used, don't do anything
897         for DF_SYMBOLIC.
898         * elf/dl-open.c (dl_open_writer): Pass RTLD_DEEPBIND flag on to
899         _dl_map_object_deps.
900         * elf/tst-deep1.c: New file.
901         * elf/tst-deep1mod1.c: New file.
902         * elf/tst-deep1mod2.c: New file.
903         * elf/tst-deep1mod3.c: New file.
904         * elf/Makefile: Add rules to build and run new tests.
906         * elf/dl-deps.c: Pretty printing.
908 2004-09-23  Jakub Jelinek  <jakub@redhat.com>
910         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
911         argument to numbers from syscall names.
912         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
913         (INTERNAL_SYSCALL_NCS): Renamed from...
914         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
915         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
916         (INTERNAL_SYSCALL_NCS): Define.
917         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
918         (INTERNAL_SYSCALL_NCS): Likewise.
919         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
920         Change name argument to numbers from syscall names.
921         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
922         (INTERNAL_SYSCALL_NCS): Define.
924 2004-09-22  Ulrich Drepper  <drepper@redhat.com>
926         * malloc/malloc.c (malloc_printerr): Use syslog if writev failed.
928         * string/string.h: Add __nonnull annotations.
929         * stdlib/stdlib.h: Likewise.
931 2004-09-20  H.J. Lu  <hongjiu.lu@intel.com>
933         * sysdeps/unix/sysv/linux/ia64/sysdep.h (DO_INLINE_SYSCALL):
934         Renamed to ...
935         (DO_INLINE_SYSCALL_NCS): This.
936         (DO_INLINE_SYSCALL): New.
937         (INLINE_SYSCALL): Updated.
938         (INTERNAL_SYSCALL_NCS): Updated.
940 2004-09-21  Ulrich Drepper  <drepper@redhat.com>
942         * elf/sprof.c (load_shobj): Add support for reading symbol table
943         from debuginfo file.
945         * elf/ldd.bash.in: Fix syntax errors.
947 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
949         * sysdeps/unix/sysv/linux/dl-execstack.c
950         (_dl_make_stack_executable): Remove some duplication.
952         * nscd/nscd.c (options): Mark S option as hidden.
953         (parse_opt): When S option is used, print warning message.
954         * nscd/grpcache.c (adgrptbyX): Don't handle secure mode.
955         * nscd/hstcache.c (addhstbyX): Don't handle secure mode.
956         * nscd/aicache.c (addhstaiX): Don't handle secure mode.
957         * nscd/pwdcache.c (addpwbyX): Don't handle secure mode.
959 2004-09-20  Roland McGrath  <roland@frob.com>
961         * elf/dl-load.c (__stack_prot): Only use PROT_GROWSUP/PROT_GROWSDOWN
962         in initializer #if defined.
964 2004-09-18  Paul Eggert  <eggert@cs.ucla.edu>
966         [BZ #391]
967         * stdlib/getsubopt.c: Merge fixes from gnulib.
968         (__strchrnul) [!_LIBC]: Define and include "strchrnul.c".
969         (getsubopt): Use prototypes, not K&R style.
970         Fix bug: memcmp(A,B,N) was being invoked on a memory block B
971         whose size might be smaller than N.  Use strncmp to avoid the bug.
973 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
975         * configure.in: If selinux has not explictly been requested, don't
976         comment on it missing.
978         * elf/dl-load.c: Define __stack_prot.
979         * sysdeps/unix/sysv/linux/dl-execstack.c: Don't define
980         __stack_prot here, just declare it.
982 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
984         * configure.in (libc_cv_z_relro): Only set to yes if linker script
985         contains DATA_SEGMENT_RELRO_END.
987 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
989         * elf/dl-load.c (_dl_map_object_from_fd): Add some error checking.
990         Reorder code slightly.
991         * elf/rtld.c (dl_main): No need to check whether l_info[DT_HASH]
992         is non-null, _dl_setup_hash will do that.
994 2004-09-19  Ulrich Drepper  <drepper@redhat.com>
996         * sysdeps/unix/sysv/linux/setegid.c [HAVE_PTR__NPTL_SETXID]: Call
997         callback to set IDs in all other threads as well.
998         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
999         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
1000         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
1001         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
1002         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
1003         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1004         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1005         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1006         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1007         * sysdeps/unix/sysv/linux/setuid.c: New file.
1008         * sysdeps/unix/sysv/linux/setgid.c: New file.
1009         * sysdeps/unix/sysv/linux/setreuid.c: New file.
1010         * sysdeps/unix/sysv/linux/setregid.c: New file.
1011         * sysdeps/unix/sysv/linux/setresuid.c: New file.
1012         * sysdeps/unix/sysv/linux/setresgid.c: New file.
1013         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NCS.
1014         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
1015         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
1016         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
1017         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
1018         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c: Use x86 version.
1019         * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c: Likewise.
1020         * sysdeps/unix/sysv/linux/sparc/sparc32/setresgid.c: New file.
1021         * sysdeps/unix/sysv/linux/sparc/sparc32/setresuid.c: New file.
1022         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove setresgid
1023         and setresuid.
1024         * nscd/aicache.c: Use pthread_seteuid_np instead of seteuid.
1025         * nscd/grpcache.c: Likewise.
1026         * nscd/hstcache.c: Likewise.
1027         * nscd/pwdcache.c: Likewise.
1029         * resolv/res_mkquery.c (res_nmkquery): Fix typo.
1031 2004-09-18  Ulrich Drepper  <drepper@redhat.com>
1033         * sysdeps/unisx/sysv/linux/dl-execstack.c: Get protection flag
1034         from memory.
1035         * elf/dl-load.c (_dl_map_object_from_fd): Add PROT_EXEC flag to
1036         __stack_flags.
1038         * sysdeps/posix/getaddrinfo.c (gaih_inet): Do not use
1039         gethostbyname3_r if we are not looking for the canonical name.
1041         * resolv/res_mkquery.c (res_nmkquery): Randomize request ID every
1042         time.
1044 2004-09-18  Roland McGrath  <roland@redhat.com>
1046         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Pass fifth argument to
1047         system call.
1049 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1051         * include/link.h (struct link_map): Add l_used element.
1052         * sysdeps/generic/ldsodefs.h: Define DL_DEBUG_UNUSED.
1053         * elf/rtld.c (process_dl_debug): Recognize unused.
1054         (dl_main): When unused debug flag is set check for unused direct
1055         dependencies.
1056         When printing dependencies and SONAME starts with /, omit the SONAME =>
1057         part.
1058         * elf/dl-lookup.c (_dl_lookup_symbol_x): Mark object in which the
1059         symbol has been found as used.
1060         * elf/ldd.bash.in: Add -u option.
1062 2004-09-18  Jakub Jelinek  <jakub@redhat.com>
1064         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
1065         Do nothing if __NR_set_tid_address is not defined.  [BZ #390]
1067 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1069         * sysdeps/posix/getaddrinfo.c: Use gethostbyname3_r NSS function
1070         in case it is available.
1072 2004-09-17  Jakub Jelinek  <jakub@redhat.com>
1074         * nscd/nscd.c (parse_opt): Write arg string instead of (void *)
1075         key to the socket.
1077 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1079         * misc/sys/cdefs.h: Define __nonnull using nonnull function attribute
1080         for gcc 3.3 and higher.
1081         * io/fcntl.h: Add __nonnull where appropriate.
1082         * io/ftw.h: Likewise.
1083         * io/utime.h: Likewise.
1084         * io/sys/poll.h: Likewise.
1085         * io/sys/sendfile.h: Likewise.
1086         * io/sys/stat.h: Likewise.
1087         * io/sys/statfs.h: Likewise.
1088         * io/sys/statvfs.h: Likewise.
1089         * posix/unistd.h: Likewise.
1090         * catgets/nl_types.h: Likewise.
1091         * crypt/crypt.h: Likewise.
1092         * debug/execinfo.h: Likewise.
1094 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
1096         * posix/glob.h: Remove cruft to make header usable outside glibc.
1097         The maintenance headache is too big.
1099         * configure.in: Add test for required SELinux features.
1100         * config.make.in: Add have-selinux entry.
1101         * config.h.in: Add HAVE_SELINUX entry.
1102         * nscd/Makefile (nscd-modules): Add selinux.
1103         (CFLAGS-selinux.c): Add -fpie.
1104         Define selinux-LIBS and use in link line.
1105         * nscd/connections.c (handle_request): Check access SELinux permissions
1106         before processing request.
1107         * nscd/nscd.c (main): Initialize selinux_enabled and stop avc thread.
1108         * nscd/nscd_stat.c: Transmit and print AVC statistics.
1109         * nscd/selinux.c: New file.
1110         * nscd/selinux.h: New file.
1111         Patch mostly by Matthew Rickard <mjricka@epoch.ncsc.mil>.
1113 2004-09-16  Jakub Jelinek  <jakub@redhat.com>
1115         * nscd/nscd_helper.c (__nscd_unmap, get_mapping): Use __munmap
1116         instead of munmap.
1118         * nscd/Makefile (CFLAGS-aicache.c): Set to -fpie.
1120 2004-09-16  Thorsten Kukuk  <kukuk@suse.de>
1122         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check
1123         __nss_not_use_nscd_hosts variable if nscd should be used or not.
1125 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
1127         * nscd/nscd_proto.h: Define NSS_NSCD_RETRY.
1128         Add __nscd_getai prototype.
1129         * nss/getXXbyYY_r.c: Remode definition of NSS_NSCD_RETRY.
1130         * nscd/nscd-client.h: Remove __nscd_getai prototype.
1131         * nscd/nscd_getai.c: Include nscd_proto.h.
1133         * elf/ldd.bash.in: Add support for SELinux environments.
1134         Patch by Stephen Smalley <sds@epoch.ncsc.mil>.
1136 2004-09-16  Roland McGrath  <roland@redhat.com>
1138         * configure.in (--with-headers): Let argument contain a : separated
1139         list of directories to use, not just one.
1140         * configure: Regenerated.
1142 2004-09-15  Richard Henderson  <rth@redhat.com>
1144         * sysdeps/alpha/fpu/libm-test-ulps: Update.
1145         * scripts/data/c++-types-alpha-linux-gnu.data: New file.
1147 2004-09-15  Ulrich Drepper  <drepper@redhat.com>
1149         * nscd/aicache.c: Prefer using gethostbyname3_r NSS callback to also
1150         get ttl and canonical name.  Use these two values.
1151         * resolv/Versions: Export _nss_dns_gethostbyname3_r from libnss_dns.
1152         * resolv/nss_dns/dns-host.c (getanswer_r): Take two new parameters.
1153         If nonnull fill with TTL and pointer to canonical name respectively.
1154         (_nss_dns_gethostbyaddr_r): Pass NULL in new parameters of getanswer_r.
1155         (_nss_dns_gethostbyname2_r): Just wrapper around
1156         _nss_dns_gethostbyname3_r.
1157         (_nss_dns_gethostbyname3_r): Renamed from _nss_dns_gethostbyname2_r.
1158         Take two new parameters which as passed to getanswer_r.
1160         * nscd/Makefile (rountines): Add nscd_getai.
1161         (nscd-modules): Add aicache.
1162         * nscd/aicache.c: New file.
1163         * nscd/nscd_getai.c: New file.
1164         * nscd/cache.c (prune_cache): Handle GETAI request type.
1165         * nscd/connections.c: Add GETAI support in request handling.
1166         * nscd/nscd-client.h (request_type): Add GETAI.
1167         Define ai_response_header and struct nscd_ai_result types.
1168         (struct datahead): Add aidata field.
1169         Declare __nscd_getai.
1170         * nscd/nscd.c: Add getaddrinfo definition to catch problems.
1171         * nscd/nscd.h: Declare addhstai and readdhstai.
1173         * sysdeps/posix/getaddrinfo.c: Add support for using cached results.
1174         * posix/Makefile (CFLAGS-getaddrinfo.c): Add -DUSE_NSCD.
1176         * nscd/nscd-client.h  (struct datahead): Use uint8_t instead of bool.
1178 2004-09-14  Ulrich Drepper  <drepper@redhat.com>
1180         * misc/sys/cdefs.h: Remove debugging text from __P and __PMT.
1182 2004-09-13  Ulrich Drepper  <drepper@redhat.com>
1184         * misc/sys/cdefs.h: Restore old definition of __P.
1185         * csu/munch.awk: Remove uses of __P and __PMT.
1186         * gmon/gmon.c: Likewise.
1187         * hesiod/hesiod.h: Likewise.
1188         * include/stdio.h: Likewise.
1189         * io/fts.c: Likewise.
1190         * libio/genops.c: Likewise.
1191         * libio/libioP.h: Likewise.
1192         * libio/fileops.c: Likewise.
1193         * libio/iolibio.h: Likewise.
1194         * libio/libio.h: Likewise.
1195         * libio/memstream.c: Likewise.
1196         * libio/oldfileops.c: Likewise.
1197         * libio/oldstdfiles.c: Likewise.
1198         * libio/iopopen.c: Likewise.
1199         * libio/vsnprintf.c: Likewise.
1200         * libio/vswprintf.c: Likewise.
1201         * libio/wgenops.c: Likewise.
1202         * libio/oldiopopen.c: Likewise.
1203         * locale/programs/xmalloc.c: Likewise.
1204         * locale/programs/xstrdup.c: Likewise.
1205         * malloc/mtrace.c: Likewise.
1206         * misc/getttyent.c: Likewise.
1207         * misc/getusershell.c: Likewise.
1208         * nis/rpcsvc/ypupd.h: Likewise.
1209         * posix/fnmatch.h: Likewise.
1210         * posix/glob.h: Likewise.
1211         * resolv/arpa/nameser.h: Likewise.
1212         * resolv/gethnamaddr.c: Likewise.
1213         * resolv/resolv.h: Likewise.
1214         * resolv/inet_net_ntop.c: Likewise.
1215         * resolv/inet_net_pton.c: Likewise.
1216         * resolv/res_init.c: Likewise.
1217         * resolv/nss_dns/dns-network.c: Likewise.
1218         * stdio-common/vfprintf.c: Likewise.
1219         * stdio-common/reg-printf.c: Likewise.
1220         * sysdeps/generic/chflags.c: Likewise.
1221         * sysdeps/generic/fchflags.c: Likewise.
1222         * sysdeps/generic/glob.c: Likewise.
1223         * sysdeps/generic/printf_fphex.c: Likewise.
1224         * sysdeps/generic/memcmp.c: Likewise.
1225         * sysdeps/generic/memcopy.h: Likewise.
1226         * sysdeps/generic/morecore.c: Likewise.
1227         * sysdeps/generic/sstk.c: Likewise.
1228         * sysdeps/posix/sigvec.c: Likewise.
1229         * sysdeps/posix/ttyname_r.c: Likewise.
1230         * sysdeps/standalone/arm/bits/errno.h: Likewise.
1231         * sysdeps/standalone/standalone.h: Likewise.
1232         * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise.
1233         * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
1234         * sysdeps/unix/arm/start.c: Likewise.
1235         * sysdeps/unix/bsd/sigaction.c: Likewise.
1236         * sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise.
1237         * sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise.
1238         * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise.
1239         * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise.
1240         * sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise.
1241         * sysdeps/unix/sparc/start.c: Likewise.
1242         * sysdeps/unix/sysv/getdents.c: Likewise.
1243         * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise.
1244         * sysdeps/unix/sysv/irix4/getgroups.c: Likewise.
1245         * sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
1246         * sysdeps/unix/sysv/irix4/getrusage.c: Likewise.
1247         * sysdeps/unix/sysv/irix4/pathconf.c: Likewise.
1248         * sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
1249         * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise.
1250         * sysdeps/unix/sysv/irix4/start.c: Likewise.
1251         * sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
1252         * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise.
1253         * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise.
1254         * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
1255         * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise.
1256         * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
1257         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
1258         * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise.
1259         * sysdeps/unix/sysv/sysv4/setsid.c: Likewise.
1260         * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
1261         * sysdeps/unix/sysv/sysv4/waitpid.c: Likewise.
1262         * sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise.
1263         * time/tzset.c: Likewise.
1264         * time/strftime_l.c: Likewise.
1265         * time/strptime_l.c: Likewise.
1266         * crypt/md5.h: Likewise.
1268 2004-09-13  Andreas Jaeger  <aj@suse.de>
1270         * configure.in: Support GCC 4.x.
1271         * configure: Regenerated.
1273 2004-09-13  Thorsten Kukuk  <kukuk@suse.de>
1275         * nscd/nscd_stat.c: Don't access dbs[cnt].head for disabled services.
1277         * nscd/nscd.init: Fix path to socket.
1279 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
1281         * nscd/nscd_helper.c (get_mapping): Correctly check cmsg length.
1282         Avoid file descriptor leak in case of size mismatch.
1284         * nscd/nscd-client.h: Fix database structure layout for biarch.
1285         * nscd/mem.c (gc): Add casts to avoid warnings.
1287         * nss/getent.c: Don't preconstruct help message.  Do it only when
1288         needed.
1290         * locale/programs/locale.c: Simplify help message printing.
1292 2004-09-12  Roland McGrath  <roland@frob.com>
1294         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]: Add decls
1295         missing in last change.
1297 2004-09-11  Thorsten Kukuk  <kukuk@suse.de>
1299         * nis/nss_compat/compat-grp.c: Check that buflen is greater zero
1300         before writing data into the buffer with negative offset.
1301         * nis/nss_compat/compat-initgroups.c: Likewise.
1302         * nis/nss_compat/compat-pwd.c: Likewise.
1303         * nis/nss_compat/compat-spwd.c Likewise.
1305 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
1307         * misc/syslog.c (vsyslog): Fix copying of PID in case of
1308         out-of-memory situation.  [BZ #365].
1310         * sysdeps/alpha/fpu/bits/mathinline.h: Use __NTH instead of
1311         __THROW in inline function definitions.
1313         * posix/spawn.h [__USE_GNU]: Define POSIX_SPAWN_USEVFORK.
1314         * posix/spawnattr_setflags.c: Check whether any unknown bit is set
1315         in FLAGS parameter and fail if this is the case.
1316         * sysdeps/posix/spawni.c: Use vfork if POSIX_SPAWN_USEVFORK flag is
1317         set.
1319         * nscd/pwdcache.c (cache_addpw): Sync also negative results to disk.
1320         * nscd/grpcache.c (cache_addgr): Likewise.
1321         * nscd/hstcache.c (cache_addhst): Likewise.
1323 2004-09-11  Roland McGrath  <roland@frob.com>
1325         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]:
1326         Set _dl_phdr and _dl_phnum.
1327         (init1): When bootstrap task, bail early and never examine *D.
1329 2004-09-11  Alfred M. Szmidt  <ams@kemisten.nu>
1331         * sysdeps/mach/hurd/i386/tls.h (__i386_set_gdt) [!HAVE_I386_SET_GDT]:
1332         Cast THR, SEL and DESC to `void'.
1334 2004-09-11  Ulrich Drepper  <drepper@redhat.com>
1336         * nscd/connections.c (nscd_run): Call setup_thread only for enabled
1337         databases.
1339         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Use __NTH for __cmsg_nxthdr.
1341 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
1343         * nscd/nscd.c (pagesize_m1): New variable.
1344         (main): Initialize it.
1345         * nscd/nscd.h: Declare pagesize_m1.
1346         * nscd/hstcache.c: Pass correctly aligned address to msync.
1347         * nscd/grpcache.c: Likewise.
1348         * nscd/pwdcache.c: Likewise.
1350 2004-09-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1352         * sysdeps/unix/sysv/linux/sh/pthread_cond_wait.S: Decrement
1353         __nwaiters.  If pthread_cond_destroy has been called and this is
1354         the last waiter, signal pthread_cond_destroy caller and avoid
1355         using the pthread_cond_t structure after unlock.
1356         * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise.
1358 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
1360         * sysdeps/unix/sysv/linux/kernel-features.h: Don't define
1361         __ASSUME_CLONE_STOPPED.
1363 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
1365         * misc/sys/cdefs.h (__REDIRECT_NTH): Change order of __THROW and
1366         __asm__ for C++.  [BZ #377]
1368 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
1370         * nscd/nscd_stat.c: Improve output by also printing .shared and
1371         .persistent.
1373         * nscd/connections.c: Allow cache sharing to be really disabled.
1375 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
1377         * malloc/malloc.c (_int_free): Only do arena boundary check for
1378         contiguous arenas.
1380 2004-09-10  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
1382         * stdlib/longlong.h [__M32R__] (add_ssaaaa, sub_ddmmss): Fix broken
1383         instruct operands.
1384         * elf/elf.h: Add R_M32R_* relocs.
1386 2004-09-09  Ulrich Drepper  <drepper@redhat.com>
1388         * misc/sys/cdefs.h: Despite what the gcc manual says, gcc 3.2
1389         seems not to support the nothrow attribute.  Use it only for gcc
1390         3.3 and higher.
1392         * malloc/hooks.c (top_check): Print top chunk corruption as normal
1393         error message.
1395         * malloc/malloc.c (malloc_printerr): Don't make informational
1396         message look like error message.
1398 2004-09-09  Andreas Jaeger  <aj@suse.de>
1400         * nscd/Makefile (CFLAGS-nscd_setup_thread.c): Set to -fpie.
1402 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1404         * sysdeps/unix/sysv/linux/bits/socket.h (__SCM_CONNECT): Removed.
1406         * malloc/malloc.c (_int_free): Add inexpensive double free and
1407         memory corruption tests.
1408         (malloc_printf_nc): Renamed to malloc_printerr.  Second parameter
1409         is no format string anymore.  Don't use stdio.  Adjust all callers.
1410         * malloc/hooks.c: Adjust malloc_printf_nc callers.
1412 2004-09-08  Roland McGrath  <roland@redhat.com>
1414         * malloc/mcheck.c: Don't use __P.
1415         Use prototypes definitions for static functions.
1417 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1419         * sysdeps/ia64/fpu/bits/mathinline.h: Use __NTH instead of __THROW.
1421 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1422             Jakub Jelinek  <jakub@redhat.com>
1424         * nscd/nscd-client.h: Add a few #includes.
1426         * nscd/Makefile (nscd-modules): Add nscd_setup_thread.
1427         * nscd/connections.c (nscd_run): Call setup_thread for maintenance
1428         threads.
1429         * nscd/nscd-client.h (struct database_pers_head): Add
1430         nscd_certainly_running field.
1431         * nscd/nscd.h: Declare setup_thread.
1432         * nscd/nscd_helper.c (__nscd_get_map_ref): Avoid the time test if
1433         nscd_certainly_running is nonzero.
1434         * sysdeps/generic/nscd_setup_thread.c: New file.
1435         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: New file.
1437 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1439         * nscd/connections.c: Implement r/o sharing of nscd's cache with client
1440         processes via shared memory.
1441         * nscd/nscd-client.h: Likewise.
1442         * nscd/nscd.h: Likewise.
1443         * nscd/nscd_conf.c: Likewise.
1444         * nscd/nscd_getgr_r.c: Likewise.
1445         * nscd/nscd_getpw_r.c: Likewise.
1446         * nscd/nscd_gethst_r.c: Likewise.
1447         * nscd/nscd.conf: Add new config parameters.
1448         * nscd/Makefile (aux): Add nscd_helper.
1449         * nscd/nscd_helper.c: New file.
1450         * nscd/mem.c (gc): Indicate beginning and end of the gc cycle.
1452         * nscd/hstcache.c: Simplify a lot.  We cache only the request itself,
1453         no derived information.
1454         * connections.c (nscd_init): Fix bug in testing size of the persistent.
1456         * nis/Makefile (aux): Add nis_hash.
1457         * nis/nis_hash.c: New file.  Split out from nis_util.c.
1458         * nis/nis_util.c: Move __nis_hash code in separate file.
1460         * csu/tst-atomic.c: Improve atomic_increment_val test which would
1461         not have found a ppc bug.
1463         * sysdeps/s390/fpu/bits/mathinline.h: Remove unnecessary includes.
1465         * malloc/arena.c: Remove __MALLOC_P uses.
1466         * malloc/malloc.c: Likewise.
1468         * malloc/mtrace.c: Remove __P uses.
1469         * malloc/mcheck-init.c: Likewise.
1471 2004-09-07  Jakub Jelinek  <jakub@redhat.com>
1473         * sysdeps/powerpc/powerpc64/configure.in: New file.
1474         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
1475         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
1476         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
1477         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
1478         BODY_PREFIX): Define.
1479         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
1480         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
1481         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
1482         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
1483         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
1485 2004-09-07  Ulrich Drepper  <drepper@redhat.com>
1487         * malloc/malloc.h: Don't define __THROW if it is already defined.
1489         * sysdeps/powerpc/bits/atomic.h (atomic_increment): Define.
1490         (atomic_decrement): Define.
1492         * sysdeps/powerpc/bits/atomic.h: Implement atomic_increment_val and
1493         atomic_decrement_val.
1494         * sysdeps/powerpc/powerpc32/bits/atomic.h: Likewise.
1495         * sysdeps/powerpc/powerpc64/bits/atomic.h: Likewise.
1497         * csu/tst-atomic.c (do_test): Add tests of atomic_increment_val
1498         and atomic_decrement_val.
1500         * include/atomic.h: Define atomic_increment_val, atomic_decrement_val,
1501         and atomic_delay is not already defined.
1502         * sysdeps/i386/i486/bits/atomic.h: Define atomic_delay.
1503         * sysdeps/x86_64/bits/atomic.h: Likewise.
1505         * miscd/sys/cdefs.h (__NTH): New macro.
1506         (__THROW): Define using nothrow attribute for C code and gcc >= 3.2.
1507         (__REDIRECT_NTH): New macro.
1508         * argp/argp.h: Use __NTH and __REDIRECT_NTH where necessary.
1509         * ctype/ctype.h: Likewise.
1510         * dirent/dirent.h: Likewise.
1511         * io/fcntl.h: Likewise.
1512         * io/sys/sendfile.h: Likewise.
1513         * io/sys/stat.h: Likewise.
1514         * io/sys/statfs.h: Likewise.
1515         * io/sys/statvfs.h: Likewise.
1516         * libio/bits/stdio.h: Likewise.
1517         * misc/sys/mman.h: Likewise.
1518         * posix/unistd.h: Likewise.
1519         * resource/sys/resource.h: Likewise.
1520         * rt/aio.h: Likewise.
1521         * signal/signal.h: Likewise.
1522         * stdlib/stdlib.h: Likewise.
1523         * string/argz.h: Likewise.
1524         * string/string.h: Likewise.
1525         * sysdeps/generic/inttypes.h: Likewise.
1526         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
1527         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
1528         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
1529         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
1530         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
1531         * sysdeps/unix/sysv/linux/bits/sys/sysmacros.h: Likewise.
1532         * wcsmbs/wchar.h: Likewise.
1534         * sysdeps/generic/glob.c: Use __PMT isntead of __P where appropriate.
1536         * resolv/gethnamaddr.c (getanswer): Remove __P use in variable
1537         definition.
1539         * io/sys/poll.h: Remove __THROW from poll prototype, it's a
1540         cancellation point.
1542         * io/fts.c (fts_open): Remove uses of __P.
1544         * include/stdlib.h: No need to use __THROW in this header.
1546 2004-09-06  Roland McGrath  <roland@frob.com>
1548         * sysdeps/mach/hurd/dl-sysdep.c (__writev): Does use assert on FD
1549         validity, since __assert_fail gets to here anyway.  Just fail.
1551 2004-09-06  Ulrich Drepper  <drepper@redhat.com>
1553         * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix problem with
1554         AF_UNSPEC lookup with AI_CANONNAME of name which has only IPv6
1555         addresses.
1557 2004-09-05  Richard Henderson  <rth@redhat.com>
1559         * sysdeps/alpha/fpu/fraiseexcpt.c: Remove file.
1560         * sysdeps/unix/sysv/linux/kernel-features.h
1561         (__ASSUME_IEEE_RAISE_EXCEPTION): New.
1562         * sysdeps/unix/sysv/linux/alpha/fraiseexcpt.c: New file.
1563         * sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h: New file.
1564         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use it.
1565         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
1567 2004-09-05  Richard Henderson  <rth@redhat.com>
1569         * sysdeps/alpha/div.S: Save and restore FPCR around fp operations.
1570         * sysdeps/alpha/divl.S, sysdeps/alpha/divq.S, sysdeps/alpha/divqu.S,
1571         sysdeps/alpha/ldiv.S, sysdeps/alpha/reml.S, sysdeps/alpha/remq.S,
1572         sysdeps/alpha/remqu.S: Likewise.
1573         * sysdeps/alpha/div_libc.h (FRAME): Increase to 64.
1575 2004-09-05  Ulrich Drepper  <drepper@redhat.com>
1577         * nscd/cache.c (cache_add): Correctly log GETHOSTBYADDR and
1578         GETHOSTBYADDRv6 requests.
1580 2004-09-04  Ulrich Drepper  <drepper@redhat.com>
1582         * nscd/pwdcache.c (cache_addpw): Use correct key length in
1583         cache_add calls.
1584         * nscd/grpcache.c (cache_addgr): Likewise.
1586 2004-09-03  Alfred M. Szmidt  <ams@kemisten.nu>
1588         * sysdeps/mach/hurd/i386/tls.h (THREAD_DTV): Changed type of _DTV
1589         to `dtv_t *'.
1591 2004-09-03  Ulrich Drepper  <drepper@redhat.com>
1593         * nscd/nscd.c (parse_opt): Use writev instead of two write for
1594         invalidate command.
1596 2004-09-02  Ulrich Drepper  <drepper@redhat.com>
1598         * nscd/connections.c (nscd_run): Check early for invalid request types.
1600 2004-09-02  Roland McGrath  <roland@frob.com>
1602         * sysdeps/mach/hurd/i386/tls.h (TLS_INIT_TP_EXPENSIVE): New macro.
1603         (INSTALL_NEW_DTV, THREAD_DTV): Rewritten to fetch the right word.
1604         (THREAD_SELF): New macro.
1606 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
1608         [BZ #357]
1609         * stdlib/tst-setcontext.c (test_stack): Added test for stack clobber.
1610         (main): Call test_stack.
1611         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
1612         (__getcontext): Push stack frame then save parms in local frame.
1613         Improve instruction scheduling.
1614         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
1615         (__swapcontext): Likewise.
1617 2004-09-01  Andreas Schwab  <schwab@suse.de>
1619         * sysdeps/unix/sysv/linux/ia64/sys/ucontext.h [g++ >= 3.5]: Use
1620         __builtin_offsetof.
1622 2004-09-01  Jakub Jelinek  <jakub@redhat.com>
1624         [BZ #361]
1625         * posix/fnmatch_loop.c (FCT): For backslash between brackets, branch
1626         to normal_bracket after fetching the next character.
1627         * posix/tst-fnmatch.input: Add 25 new tests.
1628         Reported by Markus Oberhumer <markus@oberhumer.com>.
1630 2004-09-01  Ulrich Drepper  <drepper@redhat.com>
1632         * elf/rtld.c (dl_main): First check existence of ld.so.preload
1633         with access.
1635 2004-09-01  Roland McGrath  <roland@redhat.com>
1637         * sysdeps/unix/sysv/linux/bits/waitflags.h
1638         (WSTOPPED, WEXITED, WCONTINUED, WNOWAIT): New macros.
1639         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_WAITID_SYSCALL):
1640         New macro.
1641         * sysdeps/unix/sysv/linux/waitid.c: New file.  Use new syscall when
1642         available, or fall back to the waitpid-based generic code.
1644 2004-08-14  Alfred M. Szmidt  <ams@kemisten.nu>
1646         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Let gcc
1647         clobber the `ebp' register.
1648         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Removed.
1649         Reverts change from 2004-05-07 by Jeroen Dekkers.
1651         * sysdeps/mach/hurd/i386/init-first.c (init): Changed the type of
1652         NEWSP from `void *' to `int *'.  Changed all casts accordingly.
1654 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
1656         * wcsmbs/wcsmbsload.c (__wcsmbs_getfct): Move attribute_hidden
1657         before return type.
1658         * locale/localename.c (__current_locale_name): Likewise.
1660 2004-08-30  Roland McGrath  <roland@frob.com>
1662         * scripts/extract-abilist.awk: If `lastversion' variable defined, omit
1663         later sets from output.
1664         * Makerules (check-abi): Pass option to set that with value of
1665         LIB-abi-frozen variable if one is set.
1667         * abilist/libcidn.abilist: New file (empty).
1669 2004-08-30  Jakub Jelinek  <jakub@redhat.com>
1671         * posix/bits/posix1_lim.h (_POSIX_CHILD_MAX, _POSIX_OPEN_MAX): If
1672         not __USE_XOPEN2K, use the Unix98 mandated values.
1674 2004-08-27  Roland McGrath  <roland@redhat.com>
1676         * configure.in (usetls): Default to yes.
1677         * configure: Regenerated.
1679 2004-08-26  Roland McGrath  <roland@redhat.com>
1681         * configure.in (add_ons_automatic): New variable, set to yes or no
1682         indicating --enable-add-ons with no explicit list.
1683         (running add-on fragments): Allow a fragment to modify $libc_add_on
1684         and have that affect its place in the list of add-ons to use.
1685         * configure: Regenerated.
1687 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
1689         * nscd/cache.c: Major rewrite.  The data is now optionally kept in
1690         a mmaped memory region which is automatically mirrored on disk.
1691         This implements persistent data storage.  The Memory handled
1692         needed to be completely revamped, it now uses a garbage collection
1693         mechanism instead of malloc.
1694         * nscd/connections.c: Likewise.
1695         * nscd/nscd.c: Likewise.
1696         * nscd/nscd.h: Likewise.
1697         * nscd/nscd_conf.c: Likewise.
1698         * nscd/nscd_stat.c: Likewise.
1699         * nscd/grpcache.c: Likewise.
1700         * nscd/hstcache.c:: Likewise.
1701         * nscd/pwdcache.c:: Likewise.
1702         * nscd/Makefile: Add rules to build mem.c.
1703         * nscd/mem.c: New file.
1704         * nscd/nscd.conf: Describe new configuration options.
1706 2004-08-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1708         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
1709         NO_SGIDEFS_H isn't defined.
1710         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
1711         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
1713         * sysdeps/unix/sysv/linux/sh/pread.c: Define NO_SGIDEFS_H and
1714         _MIPS_SIM.
1715         * sysdeps/unix/sysv/linux/sh/pwrite.c: Likewise.
1716         * sysdeps/unix/sysv/linux/sh/pread64.c: Likewise.
1717         * sysdeps/unix/sysv/linux/sh/pwrite64.c: Likewise.
1719 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
1721         * nscd/connections.c (nscd_run): atomic_increment was not missing.
1723         * sysdeps/gnu/Makefile (libdl-sysdep_routines): Don't add eval.
1724         Patch by Greg Schafer.
1726 2004-08-25  Richard Henderson  <rth@redhat.com>
1728         * sysdeps/alpha/elf/start.S (_start): Use $15 as frame unwind
1729         instead of $31.  Zero $15.
1730         * sysdeps/unix/sysv/linux/alpha/clone.S (thread_start): Likewise.
1732 2004-08-25  Ulrich Drepper  <drepper@redhat.com>
1734         * sysdeps/powerpc/powerpc64/bits/atomic.h
1735         (__arch_compare_and_exchange_bool_32_acq): Fix case where oldval
1736         is negative.
1737         (__arch_compare_and_exchange_bool_32_rel): Likewise.
1739         * nscd/connections.c: Make socket nonblocking so that threads
1740         don't get stuck on accept.  Fix locking.
1742         * nscd/grpcache.c (cache_addgr): Use copy of original key in hash
1743         entry with alternative key.
1744         * nscd/pwdcache.c (cache_addpw): Likewise.
1746 2004-08-25  Richard Sandiford  <rsandifo@redhat.com>
1748         * sysdeps/mips/dl-machine.h (_dl_start_user): Don't set
1749         __libc_stack_end.
1751 2004-08-23  Ulrich Drepper  <drepper@redhat.com>
1753         * sysdeps/gnu/netinet/udp.h: Cosmetic changes.  Remove unnecessary
1754         __BEGIN_DECLS/__END_DECLS.
1756 2004-08-23  Andreas Jaeger  <aj@suse.de>
1758         [BZ #341]
1759         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_NOATIME): Define.
1760         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (O_NOATIME): Likewise.
1761         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (O_NOATIME): Likewise.
1762         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (O_NOATIME): Likewise.
1763         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (O_NOATIME): Likewise.
1764         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_NOATIME): Likewise.
1765         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (O_NOATIME): Likewise.
1766         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (O_NOATIME): Likewise.
1767         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_NOATIME): Likewise.
1768         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (O_NOATIME): Likewise.
1769         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (O_NOATIME): Likewise.
1770         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_NOATIME): Likewise.
1771         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (O_NOATIME): Likewise.
1773 2004-08-21  Ulrich Drepper  <drepper@redhat.com>
1775         * malloc/hooks.c (DEFAULT_CHECK_ACTION): Moved to malloc.c.
1776         (check_action): Likewise.
1777         When printing error messages, use malloc_printf_nc now instead of
1778         fiddling with the streams cancellation flag in every place.
1779         * malloc/malloc.c (DEFAULT_CHECK_ACTION): New definition.  Change
1780         default to 3.
1781         (check_action): New variable.
1782         (unlink): Print error message and eventually terminate in case list
1783         is corrupted.
1784         (malloc_printf_nc): New function.  Use it in _int_free.
1785         Change proposed by Arjan van de Ven.
1787         * dlfcn/Makefile: Don't build eval.c anymore.
1789 2004-08-20  Roland McGrath  <roland@frob.com>
1791         * csu/Makefile ($(objpfx)version-info.h): Use printf in place
1792         of echo -e for POSIX.2 portability.
1793         Reported by Paul Jarc <prj@po.cwru.edu>.
1795 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
1797         * sysdeps/posix/getaddrinfo.c (gaih_inet): Minor optimizations in
1798         list generation.
1800         * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't use
1801         getcanonname_r function if AI_CANONNAME flag is not set in
1802         request.
1804         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss):
1805         Initialize mysize with limits only if latter is >= 0.  Use mysize
1806         in malloc call.
1808 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
1810         * sysdeps/posix/getaddrinfo.c (gaih_inet): Cast canon to (char *)
1811         to avoid warning.
1813         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Initialize
1814         status to NSS_STATUS_UNAVAIL.
1816 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
1818         * sysdeps/posix/getaddrinfo.c (gaih_inet): Use h->h_name in the
1819         cannoname lookup since it has the FQDN even if the original NAME
1820         value has not.
1822 2004-08-18  Ulrich Drepper  <drepper@redhat.com>
1824         * sysdeps/posix/getaddrinfo.c (gaih_inet): Store NAME parameter
1825         pointer in new variable ORIG_NAME and use this pointer when
1826         determination of canonical name failed, not the possibly IDN
1827         translated value of NAME.
1829 2004-08-17  Ulrich Drepper  <drepper@redhat.com>
1831         * resolv/resolv.h (RES_DEFAULT): Add RES_NOIP6DOTINT.
1832         * resolv/res_init.c (res_setoptions): Recognize ip6-dotint option.
1833         Reset RES_NOIP6DOTINT flag in this case..
1835         * sysdeps/posix/getaddrinfo.c: Fix memory handling of
1836         ai_canonname.
1838 2004-08-16  Ulrich Drepper  <drepper@redhat.com>
1840         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Don't use
1841         CNAME records, we better follow the chain of CNAME records which
1842         can be accomplished with A/AAAA lookups.
1844 2004-08-15  Roland McGrath  <roland@redhat.com>
1846         * sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who):
1847         Remove __RUSAGE_BOTH constant and RUSAGE_BOTH macro.
1848         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
1849         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
1850         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
1852 2004-08-15  Roland McGrath  <roland@frob.com>
1854         * sysdeps/i386/i686/Makefile (elide-routines.os): Append hp-timing to
1855         this, not ...
1856         (static-only-routines): ... this.
1857         * sysdeps/ia64/Makefile: Likewise.
1858         * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
1859         * sysdeps/sparc/sparc64/Makefile: Likewise.
1860         * sysdeps/x86_64/Makefile: Likewise.
1861         * sysdeps/i386/i686/hp-timing.c: Revert copyright terms change.
1862         * sysdeps/ia64/hp-timing.c: Likewise.
1863         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
1864         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
1866         * csu/elf-init.c: Update copyright terms including special exception
1867         for these trivial files, which are statically linked into executables
1868         that use dynamic linking for the significant library code.
1869         * io/fstat.c: Likewise.
1870         * io/fstat64.c: Likewise.
1871         * io/lstat.c: Likewise.
1872         * io/lstat64.c: Likewise.
1873         * io/stat.c: Likewise.
1874         * io/stat64.c: Likewise.
1875         * stdlib/atexit.c: Likewise.
1876         * sysdeps/alpha/elf/initfini.c: Likewise.
1877         * sysdeps/alpha/elf/start.S: Likewise.
1878         * sysdeps/arm/elf/start.S: Likewise.
1879         * sysdeps/cris/elf/start.S: Likewise.
1880         * sysdeps/generic/initfini.c: Likewise.
1881         * sysdeps/generic/mknod.c: Likewise.
1882         * sysdeps/hppa/elf/initfini.c: Likewise.
1883         * sysdeps/hppa/elf/start.S: Likewise.
1884         * sysdeps/i386/elf/start.S: Likewise.
1885         * sysdeps/i386/i686/hp-timing.c: Likewise.
1886         * sysdeps/ia64/elf/initfini.c: Likewise.
1887         * sysdeps/ia64/elf/start.S: Likewise.
1888         * sysdeps/ia64/hp-timing.c: Likewise.
1889         * sysdeps/m68k/elf/start.S: Likewise.
1890         * sysdeps/mach/start.c: Likewise.
1891         * sysdeps/mips/elf/start.S: Likewise.
1892         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
1893         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
1894         * sysdeps/s390/s390-32/elf/start.S: Likewise.
1895         * sysdeps/s390/s390-32/initfini.c: Likewise.
1896         * sysdeps/s390/s390-64/elf/start.S: Likewise.
1897         * sysdeps/s390/s390-64/initfini.c: Likewise.
1898         * sysdeps/sh/elf/initfini.c: Likewise.
1899         * sysdeps/sh/elf/start.S: Likewise.
1900         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
1901         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
1902         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
1903         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
1904         * sysdeps/standalone/i386/start.S: Likewise.
1905         * sysdeps/standalone/i960/start.S: Likewise.
1906         * sysdeps/standalone/m68k/m68020/start.S: Likewise.
1907         * sysdeps/unix/arm/start.c: Likewise.
1908         * sysdeps/unix/bsd/osf/alpha/start.S: Likewise.
1909         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
1910         * sysdeps/unix/sparc/start.c: Likewise.
1911         * sysdeps/unix/start.c: Likewise.
1912         * sysdeps/unix/sysv/aix/start.s: Likewise.
1913         * sysdeps/unix/sysv/irix4/start.c: Likewise.
1914         * sysdeps/x86_64/elf/initfini.c: Likewise.
1915         * sysdeps/x86_64/elf/start.S: Likewise.
1917 2004-08-15  Roland McGrath  <roland@redhat.com>
1919         [BZ #227]
1920         * sysdeps/unix/sysv/linux/kernel-features.h
1921         (__ASSUME_BRK_PAGE_ROUNDED): New macro.
1922         * sysdeps/unix/sysv/linux/dl-sysdep.c (frob_brk)
1923         [! __ASSUME_BRK_PAGE_ROUNDED]: Adjust the break up if it falls within
1924         the partial page after the dynamic linker's own data segment.
1926 2004-08-15  Ulrich Drepper  <drepper@redhat.com>
1928         * sysdeps/posix/getaddrinfo.c (gaih_inet): Optimize generation of
1929         v4-mapped addresses a bit.
1930         (gethosts): Move alloca out of macro, so that it is done only once.
1932         * sysdeps/posix/getaddrinfo.c (gaih_addrtuple): Change type of
1933         addr to avoid casts.
1934         (gethosts): Removed.
1935         (gethosts2): Renamed to gethosts.  Make it usable for family !=
1936         AF_UNSPEC.  Fix AI_V4MAPPED.
1937         (gaih_inet): Remove use of old gethosts.  Always use what used to be
1938         gethosts2.  If entry is found, try to use the same NSS module's
1939         getcanonname_r function.  Use gethostbyaddr for AI_CANONNAME only
1940         if getcanonname_r was not available.  Fix filtering of AI_V4MAPPED
1941         addresses.  Numerous cleanups.
1942         * resolv/nss_dns/dns-canon.c: New file.
1943         * resolv/Makefile (libnss_dns-routines): Add dns-canon.
1944         * resolv/Versions (libnss_dns): Add _nss_dns_getcanonname_r.
1946         * elf/Makefile: Add rules to build and run tst-dlopenrpath.
1947         * elf/tst-dlopenrpath.c: New file.
1948         * elf/tst-dlopenrpathmod.c: New file.
1950         * intl/tst-gettext.sh: Adjust for change of de.po file to UTF-8.
1951         * intl/tst-gettext.c: Likewise.
1953         * nss/getent.c (ahosts_keys_int): Correctly print IPv6 addresses.
1955         * nss/getent.c: Allow queries for getaddrinfo with AF_INET and
1956         AF_INET6.
1958 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
1960         * po/de.po: Update from translation team.
1962 2004-08-14  Roland McGrath  <roland@frob.com>
1964         * sysdeps/mach/configure: Regenerated.
1965         * sysdeps/mach/hurd/configure: Regenerated.
1967 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
1969         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If RFC3484 sorting is
1970         performed, make sure it is still the first entry after sorting
1971         that has the ai_canonname information.
1973         * sysdeps/posix/getaddrinfo.c (gaih_inet): Really set ai_canonname
1974         only in one entry.
1976 2004-08-13  Daniel Jacobowitz  <dan@debian.org>
1978         * scripts/output-format.sed: Handle default case of three-argument
1979         OUTPUT_FORMAT.
1981         * sysdeps/arm/machine-gmon.h (mcount_internal): Mark as
1982         __attribute_used__.
1984 2004-08-13  Ulrich Drepper  <drepper@redhat.com>
1986         * nss/getent.c (ahosts_keys): ai_canonname is NULL for all but the
1987         first returned entry.  Print name only if not NULL.
1989         * nis/nss_nis/nis-netgrp.c: Remove locking by using data in struct
1990         __netgrent object passed in instead of global variables.
1991         Optimize.
1992         * nis/nss_nisplus/nisplus-netgrp.c: Remove locking by using data
1993         in struct __netgrent object passed in instead of global variables.
1994         * inet/netgroup.h (struct __netgrent): Add service_user field.
1995         Move cursor in anonymous union, add new field location to that
1996         union.
1997         * inet/getnetgrent_r.c: Extensive rewrite to really enable
1998         concurrent uset of set/get/endnetgrent and innetgr.
1999         Reported by Chuck Simmons.
2001         * inet/netgroup.h (struct name_list): Replace name pointer with
2002         zero-sized array.
2003         * inet/getnetgrent_r.c: Adjust code for change in name_list
2004         layout.  Numerous strdup and free calls removed.
2006         * elf/sprof.c (read_symbols): When comparing aliases, prefer
2007         non-hidden over hidden symbols and strong over weak symbols
2008         if both don't start with '_'.
2010         * malloc/malloc.c: Use strong_alias instead of weak_alias wherever
2011         possible.
2013 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2015         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
2016         RUSAGE_ enums as __RUSAGE_ and adjust macros accordingly.
2017         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2018         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2019         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
2020         Define non-standard RLIMIT_ enums as __RLIMIT_ and adjust macros
2021         accordingly.
2023 2004-08-11  Andreas Schwab  <schwab@suse.de>
2025         * resolv/res_libc.c: Move definition of __res_initstamp ...
2026         * resolv/res_init.c: ... here.
2028 2004-08-10  GOTO Masanori  <gotom@debian.or.jp>
2030         * locale/C-time.c: Change default ERA value from NULL to "".
2031         * locale/tst-C-locale.c: Add test case for ERA keywords.
2033 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
2035         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
2036         RLIMIT__ enums as __RLIMIT_ and adjust macros accordingly.
2037         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2038         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2040 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2042         * sysdeps/unix/sysv/linux/bits/resource.h (RLIMIT_SIGPENDING,
2043         RLIMIT_MSGQUEUE): Add.
2044         (RLIMIT_NLIMITS, RLIM_NLIMITS): Adjust.
2045         * sysdeps/unix/sysv/linux/alpha/bits/resource.h (RLIMIT_SIGPENDING,
2046         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2047         (RLIM_NLIMITS): Adjust.
2048         * sysdeps/unix/sysv/linux/sparc/bits/resource.h (RLIMIT_SIGPENDING,
2049         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2050         (RLIM_NLIMITS): Adjust.
2051         * sysdeps/unix/sysv/linux/mips/bits/resource.h (RLIMIT_SIGPENDING,
2052         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2053         (RLIM_NLIMITS): Adjust.
2055 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2057         * resolv/res_query.c (__libc_res_nsearch): Protect the debugging
2058         printf with #ifdef DEBUG and RES_DEBUG check.
2060         * sysdeps/unix/sysv/linux/bits/shm.h: Move __END_DECLS after
2061         __USE_MISC #endif.
2062         * sysdeps/generic/bits/shm.h: Add __BEGIN_DECLS for __getpagesize
2063         declaration.
2064         * sysdeps/gnu/bits/shm.h: Likewise.
2065         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
2066         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
2067         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
2068         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
2069         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
2071 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
2073         * po/ca.po: Update from translation team.
2075 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
2077         * sysdeps/unix/sysv/linux/bits/shm.h: Add __BEGIN_DECLS for
2078         __getpagesize declaration.
2080 2004-08-11  Roland McGrath  <roland@redhat.com>
2082         * configure.in (libc_cv_cpp_asm_debuginfo): Add missing braces around
2083         commands inside &&.
2084         Reported by Andreas Schwab <schwab@suse.de>.
2085         * configure: Regenerated.
2087         * posix/tst-waitid.c (do_test): Ignore SIGCHLD before cleanup SIGKILL.
2089 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
2091         * time/tzset.c (tzset_internal): Add new parameter which is
2092         nonzero if called through tzset.  Use TZDEFAULT name including
2093         name comparison if the new parameter is zero.  This means implicit
2094         tzset calls will not cause files to be opened and read by tzfile.c
2095         all the time.
2097 2004-08-11  Jakub Jelinek  <jakub@redhat.com>
2099         * rt/tst-timer2.c (do_test): If timer_create fails, just continue.
2100         * rt/tst-timer4.c (do_test): If one of the timer_create calls fails,
2101         return 1 immediately.
2103         * time/tzfile.c (__tzfile_read): Free transitions only if it will
2104         not be reused.
2106         * sysdeps/ieee754/dbl-64/mpa.c: Include <sys/param.h>.
2107         * sysdeps/ieee754/dbl-64/mpa.h (MAX, MIN): Macros removed.
2109         * stdio-common/tst-popen.c: Include <string.h>.
2111         * resolv/res_send.c (__libc_res_nsend): Only define TMPBUF #if DEBUG.
2113         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Remove noreturn
2114         attribute.  Return NULL instead of calling pthread_exit at the end.
2116 2004-08-11  Roland McGrath  <roland@redhat.com>
2118         * iconvdata/testdata/ISO-2022-JP-3: Regenerated.
2120 2004-08-10  Alfred M. Szmidt  <ams@kemisten.nu>
2122         * sysdeps/generic/bits/in.h (struct ip_mreq): Remove definition.
2124 2004-08-10  Jakub Jelinek  <jakub@redhat.com>
2126         * libio/bits/stdio.h (fread_unlocked): Cast 0 to (size_t).
2127         (fwrite_unlocked): When checking if size * n is <= 8, cast each
2128         argument to size_t individually.  Cast n to (void) instead of
2129         (size_t), surround with (), return (size_t) 0 if one of n or size
2130         is 0.  [BZ #316]
2131         * stdio-common/Makefile (tests): Add tst-unlockedio.
2132         * stdio-common/tst-unlockedio.c: New test.
2134 2004-08-09  Roland McGrath  <roland@frob.com>
2136         * manual/install.texi (Supported Configurations): Replace bug-glibc
2137         mention with web URL.
2138         * INSTALL: Regenerated.
2139         * locale/iso-3166.def: Likewise, in comment.
2140         * locale/iso-4217.def: Likewise.
2141         * locale/iso-639.def: Likewise.
2142         * posix/cpio.h: Remove bug reporting comment.
2144 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
2146         * libio/bits/stdio.h (fread_unlocked): Add a couple of (size_t)
2147         casts to handle funny calls with floating point argument values
2148         and signed values correctly and without warning.
2149         (fwrite_unlocked): Likewise.  [BZ #309]
2151         * malloc/memusage.c (me): Use creat64, not creat.
2152         * malloc/memusagestat.c: Fix handling of very large sizes.  [BZ #285]
2153         Patch by Guy Maor <guymaor@yahoo.com>.
2155         * elf/ldconfig.c (options): Mark parameter option names as
2156         translatable.  [BZ #253]  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
2158         * iconv/gconv_charset.h (strip): Also allow comma which is what is
2159         used to separate options.  [BZ #194]
2161 2004-08-09  Roland McGrath  <roland@redhat.com>
2163         * FAQ.in: Refer to web pages instead of bug-glibc.
2164         * FAQ: Regenerated.
2166         * time/strptime_l.c: #include <stdbool.h>, `bool' used in last change.
2168 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
2170         * time/tzset.c (tzset_internal): If TZ is not set do not compare
2171         old and new tz value since it might be /etc/localtime in both
2172         cases although the file changed.  [BZ #154]
2173         Patch by Christian Franke <franke@computer.org>.
2175         * time/tzfile.c (__tzfile_read): Determine dev/ino of file.
2176         Compare with values of previously opened file.  Don't do anything
2177         is they match.
2179 2004-08-08  Ulrich Drepper  <drepper@redhat.com>
2181         * elf/dl-load.c (_dl_map_object): If __RTLD_CALLMAP flag is set,
2182         reset loader before the actual loading.
2183         * elf/dl-open.c (dl_open_worker): If file name contains no path
2184         element determine map of caller.  Pass caller map in this case to
2185         _dl_map_object.  Set __RTLD_CALLMAP in mode.
2186         * include/dlfcn.h (__RTLD_CALLMAP): Define.  [BZ #116]
2187         Patch by Greg Wolodkin <greg@mathworks.com>.
2189         * misc/syslog.c (openlog_internal): Always try both UDP and TCP.
2190         [BZ #108]  Patch mainly by Bjorn Andersson <bjorn@iki.fi>.
2192         * configure.in: Also recognize i786. [BZ #106]
2193         Patch by <pluto@pld-linux.org>.
2195         * resolv/res_query.c (__libc_res_nsearch): Correctly test whether
2196         name contains any dots. [BZ #95]
2198         * resolv/res_send.c: Compiling with DEBUG defined works again.
2199         * resolv/gethnamaddr.c (dprintf): Renamed to Dprintf.  Adjust all
2200         callers.
2202         * resolv/tst-leaks.c (TIMEOUT): Define so that if no server is
2203         available the process is not killed. [BZ #41]
2205         * intl/tst-gettext.c (main): Improve some messages. [BZ #33]
2207         * time/strptime_l.c (__strptime_internal): Fix handling of %Ey.
2208         [BZ #28]
2210         * po/sv.po: Update from translation team.
2212 2004-08-07  Ulrich Drepper  <drepper@redhat.com>
2214         * inet/netinet/in.h: Add more const to the setipv4soucefilter,
2215         getsourcefilter, and setsourcefilter parameter list.
2216         * sysdeps/generic/setipv4sourcefilter.c: Likewise.
2217         * sysdeps/generic/getsourcefilter.c: Likewise.
2218         * sysdeps/generic/setsourcefilter.c: Likewise.
2219         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: Likewise.
2220         * sysdeps/unix/sysv/linux/getsourcefilter.c: Likewise.
2221         * sysdeps/unix/sysv/linux/setsourcefilter.c: Likewise.
2223         * po/tr.po: Update from translation team.
2225 2004-08-06  Ulrich Drepper  <drepper@redhat.com>
2227         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): Fix typo.
2228         Reported by Paolo Bonzini.
2230 2004-08-06  Jakub Jelinek  <jakub@redhat.com>
2232         * sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add
2233         always_inline.
2234         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_runtime_setup,
2235         elf_machine_fixup_plt, elf_machine_plt_conflict): Likewise.
2237         * sysdeps/unix/sysv/linux/netatalk/at.h: Include bits/sockaddr.h
2238         before including linux/atalk.h.
2240         * resolv/res_libc.c: Include atomic.h.
2242         * intl/finddomain.c (free_mem): Rename to...
2243         (_nl_finddomain_subfreeres): ... this.  Add
2244         __libc_freeres_fn_section.
2245         * intl/loadmsgcat.c (_nl_unload_domain): Add
2246         __libc_freeres_fn_section.
2247         * intl/gettextP.h (_nl_unload_domain): Move into #ifdef _LIBC.
2248         Add attribute_hidden.
2249         (_nl_findomain_subfreeres): New prototype.
2250         * iconv/gconv_db.c (free_mem): Call _nl_findomain_subfreeres.
2252 2004-07-30  Guido Guenther  <agx@sigxcpu.org>
2254         * nss/getent.c (passwd_keys): Use strtoul instead of isdigit to
2255         test if the key is numeric or not.
2256         (group_keys): Likewise.
2258 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2260         * inet/netinet/in.h: Define struct ip_msfilter, IP_MSFILTER_SIZE,
2261         struct group_filter, and GROUP_FILTER_SIZE.
2262         * include/sys/socket.h: Declare __getsockopt.
2263         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: New file.
2264         * sysdeps/unix/sysv/linux/getipv4sourcefilter.c: New file.
2265         * sysdeps/unix/sysv/linux/setsourcefilter.c: New file.
2266         * sysdeps/unix/sysv/linux/getsourcefilter.c: New file. [BZ #211]
2268         * po/ko.po: Update from translation team.
2270 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2272         * hesiod/hesiod.c (__hesiod_res_get): Use calloc instead of malloc +
2273         memset.
2274         (__hesiod_res_set): Free nsaddrs.
2276         * include/resolv.h (__res_maybe_init): Add prototype.
2277         * resolv/resolv.h (struct __res_state): Add _u._ext.initstamp field.
2278         * resolv/Versions (libc): Add __res_maybe_init@@GLIBC_PRIVATE.
2279         * resolv/res_libc.c (__res_initstamp, lock): New variables.
2280         (res_init): Increase __res_initstamp.
2281         (__res_maybe_init): New function.
2282         * resolv/res_init.c (__res_vinit): Initialize _u._ext.initstamp.
2283         * hesiod/hesiod.c (__hesiod_res_get): Use __res_maybe_init instead
2284         of RES_INIT check and {res_ninit,__res_ninit,res_init} call.
2285         * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise.
2286         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
2287         _nss_dns_gethostbyaddr_r): Likewise.
2288         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
2289         _nss_dns_getnetbyaddr_r): Likewise.
2290         * resolv/gethnamaddr.c (gethostbyname, gethostbyname2,
2291         gethostbyaddr): Likewise.
2292         * resolv/res_data.c (fp_nquery, res_mkquery, res_mkupdate,
2293         res_isourserver, res_sendsigned, res_update, res_search,
2294         res_querydomain): Likewise.
2295         * nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)): Likewise.
2296         * nss/digits_dots.c (__nss_hostname_digits_dots): Likewise.
2297         * nss/getnssent_r.c (__nss_setent, __nss_endent, __nss_getent_r):
2298         Likewise.
2300 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2302         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set ai_family for
2303         V4-mapped IPv6 addresses and req->ai_family==AF_INET.
2304         Reported by A. Guru <a.guru@sympatico.ca>.
2306         * po/sv.po: Update from translation team.
2307         * po/sk.po: Likewise.
2308         * po/pl.po: Likewise.
2310 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2311             Ulrich Drepper  <drepper@redhat.com>
2313         * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Don't read more input
2314         characters than necessary.
2316 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2318         * wcsmbs/Makefile (tests): Add tst-mbsrtowcs.
2319         * wcsmbs/tst-mbsrtowcs.c: New file.
2321         * po/fr.po: Update from translation team.
2323 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2325         * resolv/inet_pton.c (inet_pton4): Disallow octal numbers.  Reported
2326         by A. Guru <a.guru@sympatico.ca>.  [BZ #295]
2328 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2330         * po/nl.po: Update from translation team.
2332         * sysdeps/posix/getaddrinfo.c (gaih_inet): Recognize all the IPv4
2333         numeric address formats inet_addr knows.
2334         (getaddrinfo): Allow AI_NUMERICSERV flag.
2335         If neither IPv4 nor IPv6 interface is present we cannot make any
2336         decision for AI_ADDRCONFIG.  Fail if AI_NUMERICSERV is set and the
2337         string is not just a number.  Remove useless freeaddrinfo call.
2338         * resolv/netdb.h (AI_NUMERICSERV): Define.
2339         Based on a patch by a.guru@sympatico.ca.
2341 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2343         * stdlib/strfmon_l.c (__vstrfmon_l): Memset whole info structure
2344         instead of trying to initialize some, but not all, fields one by
2345         one.
2346         * stdio-common/printf_size.c (printf_size): Initialize fb_info
2347         structure with *info instead of trying to initialize some, but not
2348         all, fields from it.
2350         * nscd/connections.c (handle_request): Check if req->type is in
2351         LASTDBREQ .. LASTREQ range instead of req.
2353         * locale/programs/linereader.c (lr_create): Initialize
2354         lr->return_widestr to 0.
2356         * elf/dl-close.c (free_slotinfo): Add __libc_freeres_fn_section.
2357         (free_mem): Call free_slotinfo just once.
2359         * stdio-common/tst-fmemopen.c (main): Check for MAP_FAILED instead
2360         of NULL.
2362         * locale/localeinfo.h (_nl_locale_subfreeres): New prototype.
2363         * locale/setlocale.c (free_category): Add __libc_freeres_fn_section.
2364         (free_mem): Rename to _nl_locale_subfreeres.
2365         * iconv/gconv_db.c: Include locale/localeinfo.h.
2366         (free_derivation, free_modules_db): Add __libc_freeres_fn_section.
2367         (free_mem): Call _nl_locale_subfreeres.
2368         * iconv/gconv_dl.c (do_release_all): Add __libc_freeres_fn_section.
2370 2004-08-04  Roland McGrath  <roland@frob.com>
2372         * Makeconfig ($(common-objpfx)config.status):
2373         Fix typo: $(add_ons) -> $(add-ons).
2374         (Makeconfig-add-on): New variable.  When doing $(sysdep-makeconfigs)
2375         include, use black magic to get it set to an add-on's name during the
2376         include of the add-on's Makeconfig.
2378         * configure.in: Use variable name `libc_add_on' when sourcing add-on
2379         configure fragments, so they can refer to this.
2380         * configure: Regenerated.
2382 2004-08-04  Roland McGrath  <roland@redhat.com>
2384         * posix/tst-waitid.c (test_child): Sleep a second before stopping.
2385         (do_test): Bump sleep to three seconds.
2386         (sigchld, check_sigchld): New functions.
2387         (do_test): Handle SIGCHLD and check for getting the right details.
2389         * posix/tst-waitid.c (do_test): Kill the child process when bailing
2390         out early on some failure.
2391         [WCONTINUED]: Test WCONTINUED functionality.
2393 2004-08-03  Ulrich Drepper  <drepper@redhat.com>
2395         * nscd/connections.c (handle_request): Print more descriptive
2396         message for invalid request types.
2398 2004-08-02  Jakub Jelinek  <jakub@redhat.com>
2400         * iconvdata/ibm932.c (BODY): Avoid binary search for ch >= 0xffff.
2401         Always treat high as highest number in range + 1.
2402         * iconvdata/ibm943.c (BODY): Likewise.
2404 2004-07-31  Bruno Haible  <bruno@clisp.org>
2406         * iconvdata/JISX0213.TXT: Updated to JISX0213 plane 1 version 2004.
2407         * iconvdata/jisx0213.c (__jisx0213_to_ucs_main,
2408         __jisx0213_to_ucs_pagestart, __jisx0213_from_ucs_level1,
2409         __jisx0213_from_ucs_level2): Regenerated.
2410         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): New function.
2411         * iconvdata/iso-2022-jp-3.c (JISX0213_1_2000_set): Renamed from
2412         JISX0213_1_set.
2413         (JISX0213_1_2004_set): New enum value.
2414         (BODY for FROM_LOOP): Treat ESC $ ( Q like ESC $ ( O.
2415         (BODY for TO_LOOP): For JISX 0213 plane 1 characters, emit ESC $ ( O
2416         when possible, ESC $ ( Q when needed.
2417         * iconvdata/testdata/EUC-JISX0213: Add the 10 new characters.
2418         * iconvdata/testdata/EUC-JISX0213..UTF8: Update.
2419         * iconvdata/testdata/SHIFT_JISX0213: Add the 10 new characters.
2420         * iconvdata/testdata/SHIFT_JISX0213..UTF8: Update.
2421         * iconvdata/testdata/ISO-2022-JP-3: Add the 10 new JISX0213 characters.
2422         * iconvdata/testdata/ISO-2022-JP-3..UTF8: Update.
2424 2004-07-22  Bruno Haible  <bruno@clisp.org>
2426         * iconvdata/gconv-modules (ISO-8859-7): Add alias ISO_8859-7:2003.
2428 2004-07-29  David S. Miller  <davem@redhat.com>
2430         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy): Optimize
2431         better for smaller than 256 byte copies.  Also, use only one
2432         unrolled loop instead of two for the large copy case.
2434 2004-07-30  Richard Henderson  <rth@redhat.com>
2436         * sysdeps/alpha/divq.S: Save t3 before it gets clobbered.
2437         * sysdeps/alpha/remq.S: Likewise.
2438         * sysdeps/alpha/div.S, sysdeps/alpha/ldiv.S: Rewrite with the
2439         new division algorithms in divl.S and divq.S respectively.
2441 2004-07-28  GOTO Masanori  <gotom@debian.or.jp>
2443         * timezone/asia: Update from tzdata2004b.
2444         * timezone/backward: Likewise.
2445         * timezone/europe: Likewise.
2446         * timezone/iso3166.tab: Likewise.
2447         * timezone/leapseconds: Likewise.
2448         * timezone/northamerica: Likewise.
2449         * timezone/southamerica: Likewise.
2450         * timezone/zone.tab: Likewise.
2452         * timezone/private.h: Update from tzcode2004b.
2453         * timezone/zic.c: Likewise.
2455 2004-07-27  Ulrich Drepper  <drepper@redhat.com>
2457         * nscd/grpcache.c (cache_addgr): If necessary, add entry also
2458         under the name the user provided.
2459         * nscd/pwdcache.c (cache_addpw): Likewise.
2461 2004-07-26  Roland McGrath  <roland@redhat.com>
2463         * sysdeps/posix/waitid.c [WEXITED]: Clear WEXITED bit in OPTIONS for
2464         call to __waitpid.
2466 2004-07-26  Ulrich Drepper  <drepper@redhat.com>
2468         * nscd/hstcache.c (cache_addhst): Fix two scenarios which lead to
2469         memory leaks.
2471         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Assign pointer for
2472         new buffer at the right time.
2473         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
2475 2004-07-25  Ulrich Drepper  <drepper@redhat.com>
2477         * inet/Versions [libc, GLIBC_2.3.4]: Add getipv4sourcefilter,
2478         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
2479         * inet/Makefile (routines): Likewise.
2480         * inet/netinet/in.h: Add prototypes for getipv4sourcefilter,
2481         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
2482         * sysdeps/generic/getipv4sourcefilter.c: New file.
2483         * sysdeps/generic/setipv4sourcefilter.c: New file.
2484         * sysdeps/generic/getsourcefilter.c: New file.
2485         * sysdeps/generic/setsourcefilter.c: New file.
2487 2004-07-17  Steven Munroe  <sjmunroe@us.ibm.com>
2489         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
2490         for POWER4 machines.
2492 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
2494         [BZ #274]
2495         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): Fix used >=
2496         BITS_PER_MP_LIMB shifting up.
2497         * stdlib/tst-strtod.c (main): Add new tests.
2499 2004-07-23  Jakub Jelinek  <jakub@redhat.com>
2501         [BZ #282]
2502         * libio/iopopen.c (_IO_new_popen): Use _IO_init instead of
2503         _IO_no_init.  Remove wd from struct locked_FILE.
2504         (_IO_wproc_jumps): Remove.
2505         Reported by Andrew Josey <a.josey@opengroup.org>.
2506         * stdio-common/Makefile (tests): Add tst-popen.
2507         * stdio-common/tst-popen.c: New test.
2509 2004-07-23  Ulrich Drepper  <drepper@redhat.com>
2511         * posix/bits/posix1_lim.h: Fix values for _POSIX_CHILD_MAX and
2512         _POSIX_OPEN_MAX.  Add _POSIX_HOST_NAME_MAX, _POSIX_SYMLINK_MAX,
2513         _POSIX_SYMLOOP_MAX, and _POSIX_RE_DUP_MAX.
2514         Reported by Andrew Josey.
2516         * include/features.h: Document _POSIX_C_SOURCE == 200112L.
2518         * grp/grp.h: Define gid_t if __USE_XOPEN2K is defined.
2519         * pwd/pwd.h: Define uid_t and gid_t if __USE_XOPEN2K is defined.
2520         * io/sys/stat.h: Define dev_t, gid_t, ino_t, mode_t, nlink_t,
2521         off_t, time_t, and uid_t if __USE_XOPEN2K is defined.
2522         * signal/signal.h: Define pid_t if __USE_XOPEN2K is defined.
2523         * posix/unistd.h: Define gid_t, off_t, pid_t, uid_t, and
2524         useconds_t if __USE_XOPEN2K is defined.
2525         * io/utime.h: Define time_t if __USE_XOPEN2K is defined.
2526         * libio/stdio.h: Declare fseeko and ftello if __USE_XOPEN2K is defined.
2528 2004-07-19  Thorsten Kukuk  <kukuk@suse.de>
2530         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
2531         allocate memory for large temporary variables with alloca.
2533 2004-07-22  Ulrich Drepper  <drepper@redhat.com>
2535         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Compatibility
2536         code must have version GLIBC_2.0.  Patch by Dwayne McConnell.
2538         * nscd/nscd_getgr_r.c (nscd_getgr_r): Avoid read call with NULL
2539         pointer and zero length.
2541 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
2543         * nscd/cache.c (prune_cache): Print correct list when debugging.
2545 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
2547         * resolv/res_libc.c (res_init): If RES_INIT is set and
2548         _res.nscount > 0, call __res_nclose and free nsaddrs.
2549         * resolv/Makefile: Add rules to build and run tst-leaks2.
2550         * resolv/tst-leaks2.c: New test.
2552 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
2554         * intl/libintl.h: Don't define macros for C++.
2555         Patch by Goto Masanori.
2557 2004-07-22  GOTO Masanori  <gotom@debian.or.jp>
2559         [BZ #276]
2560         * include/arpa/inet.h: Change inet_aton type from in_addr_t to int.
2561         * inet/arpa/inet.h: Likewise.
2562         * resolv/inet_addr.c: Likewise.
2564 2004-07-21  Alexandre Oliva  <aoliva@redhat.com>
2566         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: Add semtimedop.
2568 2004-07-20  Roland McGrath  <roland@redhat.com>
2570         * configure.in (add_ons): Substitute this.  Move $add_ons handling
2571         after AC_CANONICAL_HOST and default setting of $machine et al.
2572         Don't set $subdirs from $add_ons.
2573         Instead, source add-on/configure fragments early on.
2574         (base_machine): If it's already set, don't set it based on $machine.
2575         (libc_config_ok): New variable, set to no.  If an add-on fragment sets
2576         it to yes, skip the  tuple sanity check as if --enable-hacker-mode.
2577         (sysnames): Try appending add-on names after machine as well.
2578         * config.make.in (add-ons): Set from @add_ons@ instead of @subdirs@.
2579         * Makeconfig ($(common-objpfx)config.status): Also depend on configure
2580         files in $(add_ons) dirs.
2582         * sysdeps/unix/sysv/linux/bits/in.h (struct ip_mreq): Remove
2583         definition, now in netinet/in.h proper.
2585 2004-07-20  Alexandre Oliva  <aoliva@redhat.com>
2587         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
2588         Sort by syscalls.  Make sure we get headers such as sgidefs.h from
2589         the build tree before just-installed ones.
2591         * sysdeps/mips/atomicity.h: Use standard names for ABI macros,
2592         include sgidefs.h where appropriate.
2593         * sysdeps/mips/dl-machine.h: Likewise.
2594         * sysdeps/mips/machine-gmon.h: Likewise.
2595         * sysdeps/mips/bits/setjmp.h: Likewise.
2596         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
2597         * sysdeps/mips/mips64/__longjmp.c: Likewise.
2598         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
2599         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
2600         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
2601         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
2602         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
2603         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
2604         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
2605         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
2606         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
2607         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
2608         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
2609         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
2610         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
2611         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
2612         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
2613         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
2614         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
2615         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
2616         Likewise.
2617         * sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h):
2618         Likewise.
2620         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Update to use
2621         _dl_lookup_symbol_x.
2622         (elf_machine_runtime_link_map): Don't INTUSE _dl_signal_error.
2624 2004-07-20  Ulrich Drepper  <drepper@redhat.com>
2626         * inet/netinet/in.h: Define struct ip_mreq and struct
2627         ip_mreq_source.
2628         Define struct group_req and struct group_source_req.
2629         * sysdeps/unix/sysv/linux/bits/in.h: Define IP_UNBLOCK_SOURCE,
2630         IP_BLOCK_SOURCE, IP_ADD_SOURCE_MEMBERSHIP,
2631         IP_DROP_SOURCE_MEMBERSHIP, IP_MSFILTER, MCAST_JOIN_GROUP,
2632         MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, MCAST_LEAVE_GROUP,
2633         MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP, and
2634         MCAST_MSFILTER.
2635         Define MCAST_INCLUDE and MCAST_EXCLUDE.
2637         * iconvdata/gconv-modules: Add alias for IBM874 [BZ #244].
2639 2004-07-19  Jakub Jelinek  <jakub@redhat.com>
2641         [BZ #258]
2642         * math/libm-test.inc (max_value, min_value): New variables.
2643         (initialize): Initialize them.
2644         (pow_test): Add a couple of new tests.
2645         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Don't generate invalid
2646         exception if |y| >= 1U<<31.
2647         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Don't generate invalid
2648         exception if |y| >= 1L<<63.
2649         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
2650         If y*log2(x) overflows to +-inf, return still +inf/+0 instead of NaN.
2651         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
2653 2004-07-18  Ulrich Drepper  <drepper@redhat.com>
2655         * nscd/pwdcache.c (cache_addpw): Optimize case of unsuccessful
2656         lookup a bit.
2657         * nscd/grpcache.c (cache_addgr): Likewise.
2658         * nscd/hstcache.c (cache_addhst): Likewise.
2660 2004-07-10  GOTO Masanori  <gotom@debian.or.jp>
2662         * sysdeps/s390/s390-32/elf/start.S: Remove symbol _fp_hw.
2663         * sysdeps/s390/s390-64/elf/start.S: Likewise.
2665 2004-04-16  Andreas Schwab  <schwab@suse.de>
2667         * sysdeps/ia64/bits/atomic.h: Cast first argument of
2668         __sync_bool_compare_and_swap_si correct to void*.
2670 2004-07-17  Ulrich Drepper  <drepper@redhat.com>
2672         * iconv/iconv_prog.c (print_known_names): Make machine-readable
2673         output even less cluttered.
2675 2004-07-16  Steven Munroe  <sjmunroe@us.ibm.com>
2677         [BZ #269]
2678         * setjmp/Makefile (tests): Add bug269-setjmp.
2679         * setjmp/bug269-setjmp.c: New file.
2680         * sysdeps/powerpc/powerpc64/__longjmp-common.S [SHARED && !IS_IN_rtld]:
2681         Store R2 from jmpbuf in callers TOC save area.
2682         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [SHARED && !IS_IN_rtld]:
2683         Store R2 in TOC save area.
2684         * sysdeps/powerpc/powerpc64/setjmp-common.S [SHARED && !IS_IN_rtld]:
2685         Copy TOC save area from previous frame as R2 (TOC) in jmpbuf.
2687 2004-07-16  Jakub Jelinek  <jakub@redhat.com>
2689         * locale/newlocale.c: Include bits/libc-lock.h.
2690         (__libc_setlocale_lock): Extern decl.
2691         (__newlocale): Use it.
2692         Reported by Ulrich Weigand <Ulrich.Weigand@de.ibm.com>.
2694 2004-07-15  Jakub Jelinek  <jakub@redhat.com>
2696         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Remove
2697         static inline __attribute ((always_inline)).  Don't define if
2698         NO_CANCELLATION.
2699         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
2700         __fcntl_nocancel.
2701         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c (__fcntl_nocancel):
2702         Remove static inline __attribute ((always_inline)).  Don't define
2703         if NO_CANCELLATION.
2704         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
2705         __fcntl_nocancel.
2706         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Define to
2707         __libc_fcntl if NO_CANCELLATION and __ASSUME_FCNTL64 == 0.
2708         Don't define at all if NO_CANCELLATION and __ASSUME_FCNTL64 > 0.
2709         (__libc_fcntl): Don't define if __fcntl_nocancel is a macro.
2711         [BZ #262]
2712         * sysdeps/i386/elf/start.S (_start): Use @GOT instead of @GOTOFF
2713         for main.
2714         * elf/Makefile: Add rules to build and run tst-pie1.
2715         * elf/tst-pie1.c: New test.
2716         * elf/tst-piemod1.c: New file.
2718 2004-07-14  Jakub Jelinek  <jakub@redhat.com>
2720         [BZ #266]
2721         * manual/string.texi (l64a): Note that the static buffer is 7 bytes
2722         long.  Rewrite example code so that it takes into account l64a output
2723         shorter than 6 characters.
2724         Reported by Julian Graham <julian.graham@aya.yale.edu>.
2726 2004-07-14  Kaz  Kojima  <kkojima@rr.iij4u.or.jp>
2728         * sysdeps/sh/dl-machine.h: Don't reset _dl_starting_up here.
2729         (elf_machine_rela_relative): Remove unused valiable.
2731 2004-07-12  Paul Eggert  <eggert@cs.ucla.edu>
2733         [BZ #263]
2734         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Don't store
2735         outside the buffer if the read returns 0.  __strtod_l can't set
2736         endp to NULL, so remove a test for that case.
2738 2004-07-12  Roland McGrath  <roland@redhat.com>
2740         * manual/signal.texi (Interrupted Primitives): Make clear that
2741         TEMP_FAILURE_RETRY evaluates its expression as long int and compares
2742         it to -1 to define "failure".
2744 2004-07-10  Ulrich Drepper  <drepper@redhat.com>
2746         * elf/ldconfig.c: Define PROCINFO_CLASS as static before including
2747         ldsodefs.h.
2748         * sysdeps/generic/ldsodefs.h: Only define PROCINFO_CLASS if it is not
2749         already defined.
2750         * sysdeps/i386/dl-procinfo.c: Define PROCINFO_CALLS only if not
2751         already defined.
2753         * elf/rtld.c (print_statistics): Mark with noinline attribute.
2754         * sysdeps/i386/dl-machine.h (elf_machine_rel): Mark with always_inline
2755         attribute.
2756         (elf_machine_rel_relative): Likewise.
2758         * include/string.h: Add libc_hidden_proto for __strtok_r and
2759         __strsep_g.
2760         * sysdeps/generic/strsep.c: Add libc_hidden_def.
2761         * sysdeps/generic/strtok_r.c: Likewise.
2762         * sysdeps/i386/strtok_r.S: Add alias for internal symbol.
2763         * sysdeps/i386/i686/strtok_r.S: Likewise.
2764         * sysdeps/x86_64/strtok_r.S: Likewise.
2766 2004-07-09  Alexandre Oliva  <aoliva@redhat.com>
2768         * inet/getnetgrent_r.c (internal_setnetgrent): Make it hidden
2769         instead of internal-linkage, such that we can alias to it.
2770         (internal_endnetgrent, internal_getnetgrent_r): Likewise.
2772 2004-07-09  Ulrich Drepper  <drepper@redhat.com>
2774         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Move attribute
2775         to the front for gcc 3.5+.
2776         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
2777         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
2778         * include/fcntl.h: Don't declare __fcntl_nocancel here if
2779         NO_CANCELLATION is defined.
2781 2004-07-07  Jakub Jelinek  <jakub@redhat.com>
2783         * elf/dl-fini.c (_dl_fini): Add nloaded variable, load
2784         GL(dl_nloaded) into it while still in critical section.
2786 2004-07-06  Thorsten Kukuk  <kukuk@suse.de>
2788         * nss/getent.c (print_group, print_passwd): Use %lu format for
2789         `unsigned long int' values.
2791         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Fix syntax
2792         error typos in goto statements.
2794 2004-07-07  Roland McGrath  <roland@frob.com>
2796         * Makefile (dist-separate): New variable.
2797         (glibc-%.tar rule): Make separate tar files for add-ons listed there.
2798         Depend on their configure files.
2799         (dist-do-separate-dirs): New canned sequence to do that.
2800         (dist-separate-libidn, dist-separate-linuxthreads): New variables.
2801         (dist): Depend on add-on tar files based on $(dist-separate).
2802         (dist-version): New variable, default to $(version).
2803         (tag-for-dist, dist): Use that in place of $(version) in deps.
2805 2004-07-07  Ulrich Drepper  <drepper@redhat.com>
2807         * elf/dl-fini.c (_dl_fini): Move the unlock of the ld.so lock
2808         before the loop running the destructors.
2810 2004-05-18  Andreas Schwab  <schwab@suse.de>
2812         * elf/dl-load.c (_dl_map_object_from_fd): Use the end address of
2813         the first segment for mprotect, not l_text_end.
2815 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
2817         * elf/dl-profile.c (_dl_start_profile): Compact error handling.
2818         Remove hashfraction variable.  Make kcount and kcountsize local
2819         variables.
2821         * elf/dl-init.c: Don't define and use _dl_starting_up if
2822         HAVE_INLINED_SYSCALLS is defined and the variable is not used.
2823         * elf/dl-support.c: Likewise.
2824         * elf/rtld.c: Likewise.
2825         * elf/dl-misc.c (_dl_debug_vdprintf): Use writev syscall directly
2826         if HAVE_INLINED_SYSCALLS is defined.
2827         * sysdeps/powerpc/powerpc64/dl-machine.h: Don't reset _dl_starting_up
2828         here.
2829         * sysdeps/powerpc/powerpc32/dl-start.S: Likewise.
2830         * sysdeps/unix/sysv/linux/configure.in: Define HAVE_INLINED_SYSCALLS.
2831         * config.h.in: Add entry for HAVE_INLINED_SYSCALLS.
2833         * sysdeps/posix/profil.c: If compiled for ld.so, omit code which
2834         is needed to stop profiling.
2835         * elf/dl-open.c (dl_open_worker): If a newly opened object is to be
2836         profile make sure it cannot be unloaded.
2838         * sysdeps/unix/sysv/linux/dl-origin.c: Inline readlink syscall.
2840         * sysdeps/unix/sysv/linux/fcntl.c: If compiled without cancellation
2841         support, make sure the helper function is inlined.
2842         * sysdeps/unix/sysv/linux/pread.c: Likewise.
2843         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
2844         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
2845         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
2847 2004-07-05  Jakub Jelinek  <jakub@redhat.com>
2849         * include/string.h (ffs): Add libc_hidden_builtin_proto.
2850         * sysdeps/rs6000/ffs.c (ffs): Add libc_hidden_builtin_def.
2851         * sysdeps/alpha/alphaev67/ffs.S (ffs): Likewise.
2852         * sysdeps/alpha/ffs.S (ffs): Likewise.
2853         * sysdeps/s390/ffs.c (ffs): Likewise.
2854         * sysdeps/powerpc/ffs.c (ffs): Likewise.
2855         * sysdeps/i386/ffs.c (ffs): Likewise.
2856         * sysdeps/i386/i686/ffs.c (ffs): Likewise.
2857         * sysdeps/m68k/ffs.c (ffs): Likewise.
2858         * sysdeps/generic/ffs.c (ffs): Likewise.
2859         * sysdeps/m88k/ffs.c (ffs): Likewise.
2860         * sysdeps/am29k/ffs.c (ffs): Likewise.
2861         * sysdeps/i960/ffs.c (ffs): Likewise.
2862         * sysdeps/x86_64/ffs.c (ffs): Likewise.
2864         * Makerules (check-abi): Use diff -p -U 0 instead of diff -pu0.
2866         * sysdeps/powerpc/novmx-longjmp.c (__libc_longjmp,
2867         __libc_siglongjmp): Remove symbol_version.
2868         * sysdeps/powerpc/longjmp.c (__libc_longjmp, __libc_siglongjmp):
2869         Export @@GLIBC_PRIVATE, not @@GLIBC_2.3.4.
2870         * sysdeps/powerpc/sigjmp.c (__sigjmp_save): Use strong_alias
2871         unconditionally.
2872         * sysdeps/powerpc/novmx-sigjmp.c (__sigjmp_save): Remove.
2873         * sysdeps/powerpc/powerpc32/__longjmp.S (__longjmp): Use
2874         strong_alias instead of default_symbol_version, remove
2875         symbol_version.
2876         * sysdeps/powerpc/powerpc64/__longjmp.S (__longjmp): Likewise.
2877         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__novmx__setjmp): Change
2878         into strong_alias to __novmxsetjmp.
2879         (__vmx__setjmp): Similarly with __vmxsetjmp.
2880         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
2881         default_symbol_version and symbol_version.
2882         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__novmx__setjmp): Change
2883         into strong_alias to __novmxsetjmp.
2884         (__vmx__setjmp): Similarly with __vmxsetjmp.
2885         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
2886         default_symbol_version and symbol_version.
2888         * nscd/nscd_getgr_r.c: Include stdio-common/_itoa.h.
2890 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
2892         * elf/rtld.c (dl_main): Mark dyn_temp with attribute_relro.
2894 2004-07-04  Matthew Reppert  <arashi@kai.vm.bytemark.co.uk>
2896         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Use libc_hidden_ver
2897         instead of libc_hidden_def.
2899 2004-07-01  Roland McGrath  <roland@redhat.com>
2901         * aclocal.m4: Add provide for AC_CONFIG_AUX_DIR_DEFAULT.
2903         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Move top-level
2904         $(..)shlib-versions file to last in deps list.  This lets add-ons give
2905         more-specific matches that override defaults in the top-level file.
2907         * sysdeps/unix/sysv/linux/configure.in: If arch_minimum_kernel was
2908         already set, don't set it or libc_cv_gcc_unwind_find_fde.
2909         * sysdeps/unix/sysv/linux/configure: Regenerated.
2911 2004-07-01  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2913         * sysdeps/s390/fpu/bits/mathinline.h [__LIBC_INTERNAL_MATH_INLINES]
2914         (__ieee754_sqrt): Define as __MATH_INLINE using sqdbr instruction.
2915         (__ieee754_sqrtf): Define as __MATH_INLINE using sqebr instruction.
2916         * sysdeps/s390/fpu/e_sqrt.c: New file.
2917         * sysdeps/s390/fpu/e_sqrtf.c: New file.
2918         * sysdeps/s390/Implies: New file.
2919         * sysdeps/s390/s390-32/Implies: Remove ieee754, move
2920         ieee754/dbl-64 and ieee754/flt-32 to s390/Implies.
2921         * sysdeps/s390/s390-64/Implies: Likewise.
2923 2004-06-30  Jakub Jelinek  <jakub@redhat.com>
2925         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Include tls.h.
2926         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
2928         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (thread_start):
2929         DO_CALL (exit, 1) instead of branching to _exit.
2930         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (thread_start):
2931         Likewise.
2933         * sysdeps/s390/fpu/bits/mathinline.h: New file.
2935         * include/glob.h (glob64): Add libc_hidden_proto.
2936         * sysdeps/generic/glob64.c (glob64): Add libc_hidden_def.
2937         * sysdeps/gnu/glob64.c (glob64): Likewise.
2938         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Likewise.
2940 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
2942         * sysdeps/i386/fpu/libm-test-ulps: Update for GCC 3.4.
2943         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
2945 2004-06-11  Dwayne Grant McConnell  <dgm69@us.ibm.com>
2947         * sysdeps/powerpc/fpu/s_lround.c: Removed.
2948         * sysdeps/powerpc/fpu/s_lroundf.c: Removed.
2949         * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: New file.
2950         * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: New file.
2951         * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: New file.
2952         * sysdeps/powerpc/powerpc32/fpu/s_floor.S: New file.
2953         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: Removed.
2954         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: New file.
2955         * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: New file.
2956         * sysdeps/powerpc/powerpc32/fpu/s_lround.S: New file.
2957         * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: New file.
2958         * sysdeps/powerpc/powerpc32/fpu/s_rint.S: New file.
2959         * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: New file.
2960         * sysdeps/powerpc/powerpc32/fpu/s_round.S: New file.
2961         * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: New file.
2962         * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: New file.
2964 2004-06-30  Ulrich Drepper  <drepper@redhat.com>
2966         * include/net/if.h: Handle if_nameindex and if_freenameindex with
2967         libc_proto_hidden.
2968         * sysdeps/unix/sysv/linux/netlinkaccess.h: New file.
2969         * sysdeps/unix/sysv/linux/ifaddrs.c: Export netlink handling functions.
2970         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Implement using
2971         netlink if possible.  Fall back on ioctl method if necessary.
2972         * sysdeps/unix/sysv/linux/Dist: Add netlinkaccess.h.
2974         * include/unistd.h: Declare __truncate.
2975         * sysdeps/generic/truncate.c: Also define __truncate.
2976         * sysdeps/mach/hurd/truncate.c: Likewise.
2977         * sysdeps/unix/common/syscalls.list: Likewise.
2978         * sysdeps/unix/sysv/linux/truncate64.c: Use __truncate, not truncate.
2980 2004-06-29  Ulrich Drepper  <drepper@redhat.com>
2982         * stdio-common/printf-parsemb.c (__parse_one_specmb): Initialize
2983         info.extra.  Patch by Marcus Meissner.
2985 2004-06-29  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2987         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
2988         Fix branch offset for a PLT entry.
2990 2004-06-20  Jim Meyering  <jim@meyering.net>
2992         * malloc/obstack.h (obstack_base): Cast to `void *', to align with
2993         documentation.
2995 2004-06-28  Ulrich Drepper  <drepper@redhat.com>
2997         * inet/bug-if1.c (do_test): Simply use 0 as invalid index.
2998         Workaround for [BZ #232].
3000         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Use extend_alloca.
3002 2004-06-28  GOTO Masanori  <gotom@debian.or.jp>
3004         * iconv/gconv_simple.c: Use get16/put16 for user given buffer
3005         in ucs2/ucs2reverse when unaligned memory access is attempted.
3006         * iconv/tst-iconv5.c: New file.
3007         * iconv/Makefile (tests): Add tst-iconv5.
3009 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
3011         * inet/bug-if1.c: Include <string.h>.
3013 2004-06-19  Roland McGrath  <roland@redhat.com>
3015         * sysdeps/posix/waitid.c (do_waitid) [DO_WAITID]: Define function
3016         under this macro name instead.
3017         [NO_DO_WAITID]: Don't define it at all.
3018         (do_waitid) [WNOWAIT, WEXITED]: If these POSIX.1 waitid flag bits are
3019         defined, then return ENOTSUP for combinations of selection bits other
3020         than WEXITED and WEXITED|WSTOPPED, which this version cannot support.
3022         * posix/tst-waitid.c: New file.
3023         * posix/Makefile (tests): Add it.
3025 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
3027         * sysdeps/unix/alpha/sysdep.h (inline_syscall6): Fix a typo.
3029         [BZ #231]
3030         * sysdeps/unix/alpha/sysdep.S (__syscall_error): Avoid !samegp
3031         relocation in librt.so.
3033         [BZ #230]
3034         * sysdeps/alpha/dl-machine.h (_dl_start_user): Use ldah/ldl to load
3035         _dl_skip_args.  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
3037 2004-06-27  Ulrich Drepper  <drepper@redhat.com>
3039         * elf/ldconfig.c (add_dir): Take chroot into account.
3040         Based on changes by HJ Lu and Hideki Iwamoto.
3042         * nscd/connections.c (invalidate_cache): If the host cache has to
3043         be invalidated, re-read resolv.conf.
3045         * resolv/resolv.h (RES_NOIP6DOTINT): Define.
3046         * resolv/res_init.c (res_setoptions): Handle no-ip6-dotint option.
3047         * resolv/gethnamaddr.c (gethostbyaddr): Don't lookup with .ip6.int
3048         if RES_NOIP6DOTINT flag is set.
3049         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
3051 2004-06-25  Jakub Jelinek  <jakub@redhat.com>
3053         * sysdeps/unix/sysv/linux/powerpc/fcntl.c: Move to...
3054         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fcntl.c: ... here.
3055         * sysdeps/unix/sysv/linux/powerpc/lockf64.c: Move to...
3056         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lockf64.c: ... here.
3057         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: New file.
3059         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_GETLK, F_SETLK,
3060         F_SETLKW): Fix values for -m32 -D_FILE_OFFSET_BITS=64.
3062 2004-06-21  Jakub Jelinek  <jakub@redhat.com>
3064         [BZ #231]
3065         * sysdeps/unix/alpha/Makefile: New file.
3066         * sysdeps/unix/alpha/rt-sysdep.S: New file.
3067         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
3069 2004-06-18  Ulrich Drepper  <drepper@redhat.com>
3071         * sysdeps/posix/getaddrinfo.c (gaih_inet): For AI_CANONNAME,
3072         determine the canonical name only for the first returned entry.
3074         * inet/bug-if1.c: New file.
3075         * inet/Makefile (tests): Add bug-if1.
3077 2004-06-18  Roland McGrath  <roland@frob.com>
3079         * Makerules (compile-mkdep-flags): Add -MT $@.
3081         * Makefile (dist, tag-for-dist): New targets.
3082         (files-for-dist, tag-of-stem): New variables.
3083         (glibc-%.tar glibc-linuxthreads-%.tar): New pattern rule.
3084         Make tar files using cvs export.
3085         (%.bz2, %.gz, tag-%): New pattern rules.
3086         (distribute): Variable removed.
3087         (+subdir_targets): Remove distinfo targets.
3088         (echo_subdirs, echo-distinfo, parent_echo-distinfo): Targets removed.
3089         (rpm/%): Pattern rule removed.
3090         * rpm/Makefile, rpm/rpmrc, rpm/template: Ancient cruft files removed.
3091         * Rules (subdir_echo-headers, subdir_echo-distinfo, subdir_dist):
3092         Targets removed.
3093         * Makerules (dist, subdir_distinfo): Targets removed.
3094         ($(objpfx)distinfo): Depend on $(distribute).
3095         * Make-dist: File removed.
3097         * NEWS: Fix a typo.  Update bug-reporting instructions.
3099 2004-06-17  Thorsten Kukuk  <kukuk@suse.de>
3101         * sysdeps/unix/sysv/linux/sched_setaffinity.c
3102         (__sched_setaffinity_new): Set errno to EINVAL and return -1 if
3103         cpuset is wrongly set.
3105 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
3107         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
3108         for POWER4 machines.
3110 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
3112         [BZ #218]
3113         * sunrpc/pmap_prot2.c (xdr_pmaplist): When freeing, remember pml_next
3114         in a local variable, point rp to that local variable afterwards.
3116 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
3118         * sysdeps/ieee754/dbl-64/e_sqrt.c (__ieee754_sqrt): Handle special
3119         cases properly.
3121 2004-06-17  Ulrich Drepper  <drepper@redhat.com>
3123         * sysdeps/unix/sysv/linux/if_index.c (if_indextoname): Correct
3124         error value for unknown interface. [BZ #198]
3126 2004-06-13  Jakub Jelinek  <jakub@redhat.com>
3128         * sysdeps/i386/bits/string.h (memcpy): Add () around arguments.
3129         (memchr, __memrchr, strlen, strcmp, strncmp, __strchr_g, __strchr_c,
3130         __strchrnul_g, __strchrnul_c, strspn, strcspn, strpbrk): Add memory
3131         the asm uses as its input, either of size __n where __n is known or
3132         0xfffffff.
3133         (strstr): Add "memory" clobber.
3135 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
3137         [BZ #219]
3138         * nss/nsswitch.c (free_mem): Don't try to close a library handle
3139         if the handle is invalid.  Patch by David Kimdon <kimdon@esrf.fr>.
3141 2004-06-11  Dmitry V. Levin  <ldv@altlinux.org>
3143         [BZ #217]
3144         * debug/xtrace.sh: Fix typo in error diagnostics.
3146 2004-06-14  Andreas Schwab  <schwab@suse.de>
3148         * stdio-common/psignal.c (psignal): Don't use BUF when asprintf
3149         failed.
3151 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
3153         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Fix pasto
3154         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
3155         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Fix pasto
3156         that clobbers r19.
3157         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Fix pasto
3158         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
3159         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S:
3160         Fix setting of sigcontext.v_regs.  Fix pasto that clobbers r19.
3161         Fix pasto that overflowed sigcontext.v_reserve.
3162         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S:
3163         Fix pasto that clobbers r19.
3164         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Fix setting
3165         of sigcontext.v_regs.  Fix pasto that clobbers r19.  Fix pasto that
3166         overflowed sigcontext.v_reserve.
3168 2004-05-04  H.J. Lu  <hongjiu.lu@intel.com>
3170         [BZ #150]
3171         * sysdeps/generic/strtol_l.c (DEF): Use ".gnu.linkonce.r."
3172         instead of ".gnu.linkonce.ro." as the prefix for linkonce
3173         read-only section name.
3175 2004-06-14  Richard Henderson  <rth@redhat.com>
3177         * sysdeps/alpha/div_libc.h (_ITOFS): Use "sp" not "$sp".
3178         (_ITOFT, _FTOIT, _ITOFT2): Likewise.
3180 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
3182         * sysdeps/s390/s390-32/backtrace.c (init): Guard with #ifdef SHARED.
3183         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
3184         (__backtrace): Don't call init #ifndef SHARED.
3185         * sysdeps/s390/s390-64/backtrace.c (init): Guard with #ifdef SHARED.
3186         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
3187         (__backtrace): Don't call init #ifndef SHARED.
3188         * sysdeps/ia64/backtrace.c (init): Guard with #ifdef SHARED.
3189         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
3190         (__backtrace): Don't call init #ifndef SHARED.
3192 2004-06-11  Roland McGrath  <roland@redhat.com>
3194         * sysdeps/arm/strlen.S [__ARMEB__]: Compute correctly for big-endian.
3195         From Krzysztof Halasa <khc@pm.waw.pl>.
3197 2004-06-10  Jakub Jelinek  <jakub@redhat.com>
3199         * elf/tls-macros.h [__s390x__] (TLS_LD, TLS_GD): Clobber also r14.
3201 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
3203         [BZ #199]
3204         * crypt/md5-crypt.c (__md5_crypt): Only update buflen if realloc
3205         succeeds.  Reported by Miles Ohlrich <miles@cray.com>.
3207         * elf/chroot_canon.c (chroot_canon): Avoid segfault if first malloc
3208         fails.  Avoid memory leak if realloc fails.
3210 2004-06-09  Jakub Jelinek  <jakub@redhat.com>
3212         * sysdeps/generic/setenv.c (setenv): Return -1/EINVAL if name is
3213         NULL, "" or contains '=' character in it.  Reported by
3214         Michael T Kerrisk <mtk-lists@gmx.net>.
3215         * stdlib/tst-environ.c: Include errno.h.
3216         (main): Add tests for these arguments to setenv/unsetenv.
3218 2004-06-07  Roland McGrath  <roland@frob.com>
3220         * NEWS: Update bug reporting instructions.  Fix some typos.
3222 2004-06-05  Ulrich Drepper  <drepper@redhat.com>
3224         * stdio-common/_itoa.h: Don't expand _itoa inline for libc.
3225         * stdio-common/_itoa.c: Add _itoa implementation.
3227         * nscd/nscd_gethst_r.c (__nscd_open_socket): Change implementation
3228         to also send request.  Add parameter to allow this.
3229         Change callers.
3230         * nscd/nscd_getgr_r.c: Change __nscd_open_socket caller.
3231         * nscd/nscd_getpw_r.c: Likewise.
3232         * nscd/nscd-client.h: Change __nscd_open_socket prototype.
3234 2004-06-05  Andreas Jaeger  <aj@suse.de>
3236         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
3237         Handle more than 6 args correctly.  Based on a patch by Masahide
3238         Washizawa <washi@jp.ibm.com>.
3240 2004-06-04  Ulrich Drepper  <drepper@redhat.com>
3242         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use __nss_not_use_nscd_hosts
3243         in all places, not __nss_not_use_nscd_group.
3244         Reported by Philippe Gregoire.
3246 2004-06-03  Ulrich Drepper  <drepper@redhat.com>
3248         * sysdeps/i386/i486/bits/atomic.h: Optimize a bit.
3250 2004-05-07  Dmitry V. Levin  <ldv@altlinux.org>
3252         * argp/argp-help.c (__argp_error, __argp_failure): Check result
3253         of __asprintf call and don't use string if it failed.
3254         * stdio-common/psignal.c (psignal): Likewise.
3255         * locale/programs/localedef.c (more_help): Likewise.
3256         * resolv/res_hconf.c (arg_service_list, arg_trimdomain_list,
3257         arg_bool, parse_line): Check result of __asprintf calls and
3258         don't use string if they failed.
3259         * sunrpc/svc_simple.c (registerrpc, universal): Likewise.
3260         * elf/ldconfig.c (parse_conf_include): Check result of __asprintf
3261         call and exit if it failed.
3263 2004-05-10  Jakub Jelinek  <jakub@redhat.com>
3265         * sysdeps/posix/sysconf.c (__sysconf) <cases _SC_REALTIME_SIGNALS,
3266         _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
3267         _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES,
3268         _SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION,
3269         _SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS,
3270         _SC_THREADS, _SC_THREAD_SAFE_FUNCTIONS, _SC_THREAD_ATTR_STACKADDR,
3271         _SC_THREAD_ATTR_STACKSIZE, _SC_THREAD_PRIORITY_SCHEDULING,
3272         _SC_THREAD_PRIO_INHERIT, _SC_THREAD_PRIO_PROTECT,
3273         _SC_THREAD_PROCESS_SHARED>: Return _POSIX_* value instead of 1.
3274         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf)
3275         <case _SC_MONOTONIC_CLOCK>: Return _POSIX_VERSION instead of 1.
3277 2004-05-07  Jeroen Dekkers  <jeroen@dekkers.cx>
3279         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Add
3280         -momit-leaf-frame-pointer.
3282         * inet/test-ifaddrs.c (addr_string): Surround AF_PACKET case with
3283         #ifdef AF_PACKET.
3285         * sysdeps/mach/hurd/getcwd.c
3286         (_hurd_canonicalize_directory_name_intern): Only realloc when
3287         size is <= 0.
3289         * sysdeps/mach/hurd/mmap.c (__mmap): Fail when addr or offset
3290         isn't page aligned.
3292         * sysdeps/mach/hurd/spawni.c (EXPAND_DTABLE): Set dtablesize to
3293         new size.
3295         * sysdeps/mach/hurd/Versions (GLIBC_PRIVATE): Add __libc_read,
3296         __libc_write and __libc_lseek64.
3298 2004-05-29  Roland McGrath  <roland@redhat.com>
3300         * elf/Makefile (shared-only-routines): Add dl-caller.
3302 2004-05-28  Ulrich Drepper  <drepper@redhat.com>
3304         * sysdeps/powerpc/configure.in: New file.
3306 2004-05-28  Steven Munroe  <sjmunroe@us.ibm.com>
3308         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Add .machine
3309         "altivec" to enable VMX instructions.
3310         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
3311         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
3312         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
3313         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
3314         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
3315         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
3316         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
3317         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
3318         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
3320 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
3322         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Define using
3323         __builtin_expm1l for GCC 3.5+.
3324         (__expl): Define using __builtin_expl for GCC 3.4+.
3325         (exp, expf, expl): Don't define for GCC 3.4+.
3326         (tan, tanf, tanl): Don't define for GCC 3.5+.
3327         (__atan2l): Define using __builtin_atan2l for GCC 3.4+.
3328         (atan2, atan2f, atan2l): Don't define for GCC 3.4+ or !__FAST_MATH__.
3329         (fmod, fmodf, fmodl): Don't define for GCC 3.5+ or !__FAST_MATH__.
3330         (fabsf, fabsl): Only provide if __USE_MISC or __USE_ISOC99.
3331         (sin, sinf, sinl, cos, cosf, cosl, log, logf, logl): Don't define
3332         for GCC 3.4+.
3333         (log10, log10f, log10l, asin, asinf, asinl, acos, acosf, acosl):
3334         Don't define for GCC 3.5+.
3335         (atan, atanf, atanl): Don't define for GCC 3.4+ or !__FAST_MATH__.
3336         (log1p, log1pf, log1pl, logb, logbf, logbl, log2, log2f, log2l): Don't
3337         define for GCC 3.5+.
3338         (drem, dremf, dreml): Don't define for GCC 3.5+ or !__FAST_MATH__.
3339         * sysdeps/sparc/fpu/bits/mathinline.h (sqrt, sqrtf, sqrtl): Don't
3340         define for GCC 3.2+.
3342 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
3344         * string/bits/string2.h (__bzero): Define even for GCC 3.0+.
3345         * sysdeps/alpha/stpcpy.S (stpcpy): Add libc_hidden_builtin_def.
3346         * sysdeps/alpha/alphaev67/stpcpy.S (stpcpy): Likewise.
3347         * sysdeps/powerpc/powerpc32/stpcpy.S (stpcpy): Likewise.
3348         * sysdeps/powerpc/powerpc64/stpcpy.S (stpcpy): Likewise.
3349         * sysdeps/sparc/sparc32/stpcpy.S (stpcpy): Likewise.
3350         * sysdeps/sparc/sparc64/stpcpy.S (stpcpy): Likewise.
3351         * sysdeps/i386/stpcpy.S (stpcpy): Likewise.
3352         * sysdeps/i386/i586/stpcpy.S (stpcpy): Likewise.
3353         * sysdeps/generic/stpcpy.c (stpcpy): Likewise.
3354         * sysdeps/x86_64/stpcpy.S (stpcpy): Likewise.
3355         * sysdeps/i386/i586/memcpy.S (memcpy): Remove
3356         libc_hidden_builtin_def if MEMPCPY_P.
3357         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
3358         * sysdeps/i386/i686/mempcpy.S (mempcpy): Add libc_hidden_builtin_def.
3359         * sysdeps/i386/i586/mempcpy.S (mempcpy): Likewise.
3360         * sysdeps/generic/mempcpy.c (mempcpy): Likewise.
3361         * sysdeps/x86_64/mempcpy.S (mempcpy): Likewise.
3363 2004-05-26  Roland McGrath  <roland@frob.com>
3365         * sysdeps/generic/bits/in.h
3366         (IMPLINK_IP, IMPLINK_LOWEXPER, IMPLINK_HIGHEXPER): Macros removed.
3367         These are long obsolete in BSD systems where they originated.
3368         * conform/data/netinet/in.h-data: Remove `allow IMPLINK_*'
3370 2004-05-26  Jakub Jelinek  <jakub@redhat.com>
3372         * include/string.h (mempcpy, stpcpy): Add libc_hidden_builtin_proto.
3373         * string/bits/string2.h (memset): Disable macro for GCC 3.0+.
3374         (__mempcpy): Use __builtin_mempcpy for GCC 3.4+.
3375         (strchr): For GCC 3.2+, only use __rawmemchr if second argument is
3376         constant '\0' and first argument is not constant.
3377         (__stpcpy): Use __builtin_stpcpy for GCC 3.4+.
3378         (strncpy): Remove #ifdef _USE_STRING_ARCH_mempcpy variant.
3379         For GCC 3.2+ use __builtin_strncpy.
3380         (strncat): For GCC 3.2+ use __builtin_strncat.
3381         (strcmp): For GCC 3.2+ use __builtin_strcmp if both arguments are
3382         constant.
3383         (strcspn, strspn, strpbrk): For GCC 3.2+, use builtin function
3384         if both arguments are constant.
3386 2004-05-26  Ulrich Drepper  <drepper@redhat.com>
3388         * nss/nss_files/files-hosts.c: Fix condition for looking up IPv4
3389         mapped addresses in gethostbyaddr.
3391 2004-05-25  Ulrich Drepper  <drepper@redhat.com>
3393         * nss/digits_dots.c (__nss_hostname_digits_dots): Remove typep and
3394         flags parameter, convert afp to simple int parameter.  Adjust code.
3395         typep was never != NULL and flags therefore also unused.  *afp is
3396         never modified.
3397         * nss/nsswitch.h: Adjust __nss_hostname_digits_dots prototype.
3398         * nss/getXXbyYY.c: Remove HAVE_TYPE handling.  Adjust af parameter
3399         handling for __nss_hostname_digits_dots calls.
3400         * nss/getXXbyYY_r.c: Likewise.
3402         * elf/dl-load.c (_dl_map_object_from_fd): Map DSOs with MAP_DENYWRITE.
3404 2004-05-25  Steven Munroe  <sjmunroe@us.ibm.com>
3406         * sysdeps/powerpc/fpu/Makefile: Make ld.so a dependency of libm.so.
3407         * sysdeps/powerpc/fpu/bits/mathinline.h [__LIBC_INERNAL_MATH_INLINES]
3408         (__ieee754_sqrt): Define as __MATH_INLINE using fsqrt instruction.
3409         (__ieee754_sqrtf): Define as __MATH_INLINE using fsqrts instruction.
3410         * sysdeps/powerpc/fpu/e_sqrt.c (__slow_ieee754_sqrt): Moved
3411         implementation from w_sqrt.c.
3412         * sysdeps/powerpc/fpu/e_sqrtf.c (__slow_ieee754_sqrtf): Moved
3413         implementation from w_sqrtf.c.
3414         * sysdeps/powerpc/fpu/w_sqrt.c (__sqrt): Wrapper implementation
3415         using inline __ieee754_sqrt().
3416         * sysdeps/powerpc/fpu/w_sqrtf.c (__sqrtf): Wrapper implementation
3417         using inline __ieee754_sqrtf().
3418         * sysdeps/powerpc/powerpc32/sysdep.h [__ASSEMBLER__]: Include
3419         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
3420         * sysdeps/powerpc/sysdep.h [__ASSEMBLER__] (PPC_FEATURE_*): Define
3421         PPC_FEATURE_*  independent of __ASSEMBLER__.
3423 2004-05-25  Jakub Jelinek  <jakub@redhat.com>
3425         * sysdeps/pthread/aio_notify.c: Use <> instead of "" for aio_misc.h
3426         include.
3427         (aio_start_notify_thread): Define if not defined.
3428         (notify_func_wrapper): Use it.
3429         * sysdeps/pthread/aio_misc.c: Use <> instead of "" for aio_misc.h
3430         include.
3431         (aio_create_helper_thread): Define if not defined.
3432         (__aio_create_helper_thread): New function.
3433         (__aio_enqueue_request): Use aio_create_helper_thread.
3435         * nis/ypclnt.c (ypall_data, ypall_foreach): Remove.
3436         (struct ypresp_all_data): New type.
3437         (__xdr_ypresp_all): Change second argument to
3438         struct ypresp_all_data *.  Replace ypall_foreach and
3439         ypall_data with objp->foreach and objp->data.
3440         (yp_all): Remove status variable, add data.  Replace
3441         all uses of status with data.status.  Initialize data.foreach
3442         and data.data instead of ypall_foreach and ypall_data.
3444 2004-05-24  Jakub Jelinek  <jakub@redhat.com>
3446         * elf/dl-lookup.c (add_dependency): Set DF_1_NODELETE bit
3447         in l_flags_1, not in l_flags.
3449 2004-04-10  Robert Millan  <robertmh@gnu.org>
3451         * sysdeps/unix/sysv/linux/bits/in.h: Cosmetic fixes to get in sync
3452         with sysdeps/generic/bits/in.h.
3454 2004-05-25  Roland McGrath  <roland@frob.com>
3456         * sysdeps/generic/unwind-dw2-fde-glibc.c: Change copyright terms from
3457         GCC GPL to standard glibc LGPL.
3459 2004-05-24  Ulrich Drepper  <drepper@redhat.com>
3461         * manual/string.texi (Copying and Concatenation): Fixed second
3462         concat example.
3463         Reported by Fabian Pietsch <fabian@zzznowman.dyndns.org>.
3465 2004-05-23  Ulrich Drepper  <drepper@redhat.com>
3467         * malloc/obstack.c: Don't allow linking with _obstack.
3469 2004-05-23  Andreas Schwab  <schwab@suse.de>
3471         * sysdeps/m68k/m68020/bits/atomic.h: Use "+m" constraint instead
3472         of separate "m" constraints.
3474 2004-05-15  Chris Demetriou  <cgd@broadcom.com>
3476         * sysdeps/mips/dl-machine.h (ELF_DL_FRAME_SIZE)
3477         (ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS): For the N32
3478         and 64 ABIs, save and restore regs $10 and $11 (a6 and a7).
3480 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
3482         * malloc/obstack.c (_obstack) [!defined _LIBC]: Remove; not used.
3483         Add comment explaining why libc still defines it.
3485 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
3487         * malloc/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
3488         obstack_alignment_mask, obstack_alloc, obstack_base,
3489         obstack_blank, obstack_blank_fast, obstack_chunk_size,
3490         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
3491         obstack_grow0, obstack_init, obstack_int_grow,
3492         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
3493         obstack_next_free, obstack_object_size, obstack_ptr_grow,
3494         obstack_ptr_grow_fast, obstack_room): Remove declarations of
3495         nonexistent functions.
3497 2004-05-18  Steven Munroe  <sjmunroe@us.ibm.com>
3499         * sysdeps/powerpc/powerpc64/sysdep.h [__ASSEMBLER__]: Include
3500         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
3501         [PIC]: Redundent for powerpc64, removed.
3502         (ENTRY): Generate size and alignment for opd entry.
3503         (EALIGN): Generate size and alignment for opd entry.
3504         (END): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
3505         (END_GEN_TB): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
3507 2004-05-19  Ulrich Drepper  <drepper@redhat.com>
3509         * misc/regexp.h: Say the functions have been withdrawn.
3511         * wcsmbs/tst-wcpncpy.c: Add more tests.
3513 2004-05-18  Roland McGrath  <roland@frob.com>
3515         * sysdeps/generic/unwind.h: Change copyright terms from GCC GPL to
3516         standard glibc LGPL.
3517         * sysdeps/generic/unwind-dw2.c: Likewise.
3518         * sysdeps/generic/unwind-dw2-fde.c: Likewise.
3519         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
3520         * sysdeps/generic/unwind-pe.h: Likewise.
3522 2004-05-15  Petter Reinholdtsen  <pere@hungry.com>
3524         * locale/iso-3166.def: Remove YUGOSLAVIA and insert "SERBIA AND
3525         MONTENEGRO" which have taken over the code 819.  Patch from
3526         Danilo Segan. [BZ #40]
3528 2004-05-15  Jakub Jelinek  <jakub@redhat.com>
3530         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
3531         (SYSCALL_ERROR_HANDLER): Rename __sparc.get_pic.l7 to
3532         __sparc_get_pic_l7.
3534 2004-05-15  Joseph S. Myers  <jsm@polyomino.org.uk>
3536         * catgets/gencat.c: Update bug reporting instructions.
3537         * csu/version.c: Likewise.
3538         * debug/catchsegv.sh: Likewise.
3539         * debug/pcprofiledump.c: Likewise.
3540         * debug/xtrace.sh: Likewise.
3541         * elf/ldd.bash.in: Likewise.
3542         * iconv/iconv_prog.c: Likewise.
3543         * iconv/iconvconfig.c: Likewise.
3544         * locale/programs/locale.c: Likewise.
3545         * locale/programs/localedef.c: Likewise.
3546         * login/programs/pt_chown.c: Likewise.
3547         * malloc/memusage.sh: Likewise.
3548         * malloc/memusagestat.c: Likewise.
3549         * malloc/mtrace.pl: Likewise.
3550         * manual/crypt.texi: Likewise.
3551         * manual/install.texi: Likewise.
3552         * nss/makedb.c: Likewise.
3554 2004-05-14  Jakub Jelinek  <jakub@redhat.com>
3556         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Only
3557         CHECK_STATIC_TLS if sym != NULL.
3558         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
3559         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
3561 2004-05-12  Andreas Schwab  <schwab@suse.de>
3563         * posix/regex_internal.c (build_wcs_buffer): Also set pstr->mbs
3564         when translating.
3566 2004-05-13  H.J. Lu  <hongjiu.lu@intel.com>
3568         * Rules (xtests): Depend on tests.
3570 2004-05-13  Jakub Jelinek  <jakub@redhat.com>
3572         * libio/genops.c (_IO_default_xsputn): Avoid one overflow per char if
3573         count is negative, yet write_ptr < write_end.
3574         (_IO_default_xsgetn): Avoid one underflow per char if count is
3575         negative, yet read_ptr < read_end.
3577 2004-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
3579         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h (XTABS): Define XTABS
3580         equal to TAB3.
3582 2004-05-12  Ulrich Drepper  <drepper@redhat.com>
3584         * elf/dl-lookup.c (_dl_lookup_symbol_x): Correct _dl_signal_cerror
3585         call.
3587 2004-05-10  Roland McGrath  <roland@frob.com>
3589         * hurd/hurdlookup.c (__hurd_file_name_split): Return ENOENT for "".
3590         (__hurd_directory_name_split): Likewise.
3592 2004-05-10  Ulrich Drepper  <drepper@redhat.com>
3594         * po/fr.po: Update from translation team.
3596 2004-05-10  Andreas Jaeger  <aj@suse.de>
3598         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
3599         Correctly compute alignment.
3600         Patch by Michael Matz <matz@suse.de>.
3602 2004-05-09  Ulrich Drepper  <drepper@redhat.com>
3604         * sysdeps/generic/sigpause.c: Prevent sigpause prototype.
3605         * sysdeps/posix/sigpause.c: Likewise.
3606         * signal/signal.h: Don't define sigpause macro unless needed.
3608 2004-05-08  Jakub Jelinek  <jakub@redhat.com>
3610         * configure.in (libc_cv_libgcc_s_suffix): New check.
3611         (libc_cv_as_needed): Use -lgcc_s$libc_cv_libgcc_s_suffix.
3612         * config.make.in (libgcc_s_suffix): Set.
3613         * Makeconfig (libgcc_eh): Use -lgcc_s$(libgcc_s_suffix).
3615 2004-05-08  Ulrich Drepper  <drepper@redhat.com>
3617         * signal/signal.h: Use BSD sigpause only if BSD behavior is preferred.
3619 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
3621         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_1,
3622         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
3623         Load argument values into temporary variables.
3624         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_1,
3625         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
3626         Likewise.
3628 2004-05-07  Ulrich Drepper  <drepper@redhat.com>
3630         * sysdeps/unix/sysv/linux/Makefile: mq_send.c and mq_receive.c
3631         need to be compiled with exceptions.
3633 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
3635         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Fix memory handling.
3636         * sysdeps/generic/ifreq.c (__ifreq): Fix memory handling.
3638         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Make clear that
3639         realloc cannot fail.
3641         * nss/nss_files/files-netgrp.c (EXPAND): Free buffer which cannot
3642         be expanded.
3644         * nis/nis_table.c: Clean up memory handling.
3645         * nis/nis_subr.c (nis_getnames): Clean up memory handling.
3646         * nis/nis_removemember.c (nis_removemember): Add comment
3647         explaining use of realloc.
3649         * math/tgmath.h (fabs): Use __TGMATH_UNARY_REAL_IMAG_RET_REAL.
3650         (carg): Likewise.
3651         Patch by Lev S Bishop <lev.bishop@yale.edu>.
3653         * math/bug-tgmath1.c (main): Test fabs and carg as well.
3655 2004-05-06  Richard Henderson  <rth@redhat.com>
3657         * elf/elf.h (AT_L1I_CACHESHAPE, AT_L1D_CACHESHAPE,
3658         AT_L2_CACHESHAPE, AT_L3_CACHESHAPE): New.
3659         * sysdeps/unix/sysv/linux/alpha/Versions: Export
3660         __libc_alpha_cache_shape as a private symbol.
3661         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c: New file.
3662         * sysdeps/unix/sysv/linux/alpha/sysconf.c: New file.
3664 2004-05-06  Richard Henderson  <rth@redhat.com>
3666         * sysdeps/alpha/div_libc.h (_ITOFS, _ITOFT, _FTOIT, _ITOFT2): New.
3667         * sysdeps/alpha/divl.S: Use them.
3668         * sysdeps/alpha/divq.S: Likewise.
3669         * sysdeps/alpha/divqu.S: Likewise.
3670         * sysdeps/alpha/reml.S: Likewise.
3671         * sysdeps/alpha/remq.S: Likewise.
3672         * sysdeps/alpha/remqu.S: Likewise.
3674 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
3676         * math/tgmath.h (__TGMATH_UNARY_REAL_IMAG_RET_REAL):Define.
3677         (cimag): Use it.
3678         (creal): Likewise.
3679         * math/Makefile (tests): Add bug-tgmath1.
3680         * math/bug-tgmath1.c: New file.
3682 2004-05-05  Jakub Jelinek  <jakub@redhat.com>
3684         * sysdeps/alpha/atomicity.h: Remove.
3685         * sysdeps/generic/atomicity.h: Remove.
3687 2004-05-05  H.J. Lu  <hongjiu.lu@intel.com>
3689         * sysdeps/i386/i486/bits/string.h (strpbrk): Cast return to
3690         char *.
3692 2004-04-22  David Mosberger  <davidm@hpl.hp.com>
3694         * sysdeps/unix/sysv/linux/ia64/Makefile (librt-routines): Mention
3695           rt-sysdep.
3696         * sysdeps/unix/sysv/linux/ia64/rt-sysdep.S: New file.
3698         * sysdeps/ia64/strcat.c: New file.
3699         * sysdeps/ia64/strcat.S: Delete.
3701 2004-05-04  Jakub Jelinek  <jakub@redhat.com>
3703         * sysdeps/unix/sysv/linux/ia64/sysdep.S (USE___THREAD): Remove
3704         defined.
3706 2004-04-23  Jakub Jelinek  <jakub@redhat.com>
3708         * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Add
3709         libc_hidden_proto.  Define to __GI___libm_error_support for
3710         assembly going into libc.so.
3711         * sysdeps/ia64/fpu/libc_libm_error.c (__libm_error_support): Add
3712         libc_hidden_def.
3714         * include/libc-symbols.h (HIDDEN_BUILTIN_JUMPTARGET): Define.
3715         * sysdeps/ia64/bcopy.S (bcopy): Use it for jump to memmove.
3717         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Access
3718         gprel errno if RTLD_PRIVATE_ERRNO or __thread __libc_errno/errno
3719         if USE___THREAD.
3721 2004-05-03  Jakub Jelinek  <jakub@redhat.com>
3723         * sysdeps/unix/bsd/bits/fcntl.h (F_SETOWN, F_GETOWN): Define if
3724         __USE_BSD or __USE_UNIX98.
3725         * sysdeps/unix/bsd/ultrix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3726         * sysdeps/unix/bsd/bsd4.4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3727         * sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h (F_SETOWN, F_GETOWN):
3728         Likewise.
3729         * sysdeps/unix/common/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3730         * sysdeps/unix/sysv/aix/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3731         * sysdeps/unix/sysv/irix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3732         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (F_SETOWN, F_GETOWN):
3733         Likewise.
3734         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_SETOWN, F_GETOWN):
3735         Likewise.
3736         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (F_SETOWN, F_GETOWN):
3737         Likewise.
3738         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (F_SETOWN, F_GETOWN):
3739         Likewise.
3740         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (F_SETOWN, F_GETOWN):
3741         Likewise.
3742         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (F_SETOWN, F_GETOWN):
3743         Likewise.
3744         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (F_SETOWN, F_GETOWN):
3745         Likewise.
3746         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (F_SETOWN, F_GETOWN):
3747         Likewise.
3748         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (F_SETOWN, F_GETOWN):
3749         Likewise.
3750         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (F_SETOWN, F_GETOWN):
3751         Likewise.
3752         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (F_SETOWN, F_GETOWN):
3753         Likewise.
3754         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (F_SETOWN, F_GETOWN):
3755         Likewise.
3756         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_SETOWN, F_GETOWN):
3757         Likewise.
3758         * sysdeps/generic/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3759         * sysdeps/mach/hurd/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3760         * io/sys/stat.h (S_ISSOCK, S_IFSOCK): Likewise.
3762 2004-05-01  Jakub Jelinek  <jakub@redhat.com>
3764         * posix/Versions (libc): Remove __libc_wait, __libc_waitpid,
3765         __libc_pause, __libc_nanosleep, __libc_pread, __libc_pread64,
3766         __libc_pwrite64, __waitid and __pselect @@GLIBC_PRIVATE.
3767         * stdlib/Versions (libc): Remove __on_exit@@GLIBC_PRIVATE.
3768         * sysdeps/unix/sysv/linux/Versions (libc): Remove
3769         __libc_sigaction@@GLIBC_PRIVATE.
3770         * sysdeps/unix/sysv/linux/x86_64/Versions (libc): Remove
3771         __modify_ldt@@GLIBC_PRIVATE.
3772         * socket/Versions (libc): Remove __libc_accept, __libc_send,
3773         __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv,
3774         __libc_sendto and __libc_connect @@GLIBC_PRIVATE.
3775         * stdio-common/Versions (libc): Remove
3776         _itoa_upper_digits@@GLIBC_PRIVATE.
3777         * resolv/Versions (libresolv): Remove __ns_samename@@GLIBC_PRIVATE.
3778         * misc/Versions (libc): Remove __libc_fsync, __libc_msync,
3779         __libc_readv and __libc_writev @@GLIBC_PRIVATE.
3780         * termios/Versions (libc): Remove __libc_tcdrain@@GLIBC_PRIVATE.
3781         * io/Versions (libc): Remove __libc_open, __libc_close, __libc_read,
3782         __libc_write, __libc_lseek, __libc_fcntl, __libc_open64 and
3783         __libc_lseek64 @@GLIBC_PRIVATE.
3785 2004-04-30  Jakub Jelinek  <jakub@redhat.com>
3787         * elf/dl-load.c (open_verify): Move e_phentsize check after e_type
3788         check.
3790 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
3792         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: New file.
3793         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: New file.
3794         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: New file.
3795         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: New file.
3796         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: Removed.
3797         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: New file.
3798         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: Removed.
3799         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: New file.
3800         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: New file.
3801         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: New file.
3802         * sysdeps/powerpc/powerpc64/fpu/s_lround.S: New file.
3803         * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: New file.
3804         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: New file.
3805         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: New file.
3806         * sysdeps/powerpc/powerpc64/fpu/s_round.S: New file.
3807         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: New file.
3808         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: New file.
3809         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: New file.
3811         * math/test-misc.c [LDBL_MANT_DIG == 106](main): Correct LDBL_MAX
3812         mantissa for AIX long double format.
3813         * misc/qefgcvt.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Define for AIX
3814         long double format.
3815         * misc/qefgcvt_r.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Likewise.
3816         * stdlib/fpioconst.c [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
3817         (_fpioconst_pow10): AIX long double format has same exponent range as
3818         double.
3819         * stdlib/fpioconst.h [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
3820         (LDBL_MAX_10_EXP_LOG): AIX long double format has same exponent range
3821         as double.
3823 2004-04-23  Art Haas  <ahaas@airmail.net>
3825         * sysdeps/unix/sysv/linux/kernel-features.h: Add 'defined'.
3827 2004-04-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
3829         * sysdeps/unix/sysv/linux/mq_getattr.c: Include <stddef.h>.
3830         * sysdeps/unix/sysv/linux/mq_notify.c: Likewise.
3831         * sysdeps/unix/sysv/linux/mq_open.c: Likewise.
3832         * sysdeps/unix/sysv/linux/mq_receive.c: Likewise.
3833         * sysdeps/unix/sysv/linux/mq_send.c: Likewise.
3835 2004-04-29  Philip Blundell  <pb@nexus.co.uk>
3837         * sysdeps/arm/dl-machine.h (RTLD_START): Avoid unnecessary GOT
3838         entries.
3840 2004-04-29  Jakub Jelinek  <jakub@redhat.com>
3842         * manual/resource.texi (sched_setaffinity, sched_getaffinity): Fix
3843         prototypes and description [BZ #131].
3845         * string/bits/string2.h (strpbrk): Cast NULL to char * [BZ #130].
3846         Patch by Ed Catmur <ed@catmur.co.uk>.
3847         * string/tst-inlcall.c (main): Add test for strpbrk.
3849         [BZ #140]
3850         * sysdeps/unix/sysv/linux/sys/sysctl.h: Remove linux/compiler.h
3851         include.
3852         (_LINUX_KERNEL_H, _LINUX_TYPES_H, _LINUX_LIST_H): Only define if not
3853         yet defined, #undef back after including linux/sysctl.h if defined
3854         here.
3855         (__LINUX_COMPILER_H, __user): Define if not yet defined, #undef
3856         back after including linux/sysctl.h if defined here.
3858         * sysdeps/sparc/sparc64/soft-fp/qp_qtoi.c (_Qp_qtoi): Use %f31
3859         for single precision register, add it to __asm clobbers [BZ #139].
3860         * sysdeps/sparc/sparc64/soft-fp/qp_qtoui.c (_Qp_qtoui): Use %f31
3861         for single precision register, add it to __asm clobbers.
3862         * sysdeps/sparc/sparc64/soft-fp/qp_qtoux.c (_Qp_qtoux): Use fqtox
3863         instead of fqtoi in QP_HANDLE_EXCEPTIONS.
3864         * sysdeps/sparc/sparc64/soft-fp/qp_qtox.c (_Qp_qtox): Likewise.
3865         Reported by M. H. VanLeeuwen <vanl@megsinet.net>.
3867 2004-04-23  Andreas Schwab  <schwab@suse.de>
3869         * sysdeps/unix/sysv/linux/m68k/register-dump.h: Use
3870         __attribute_used__.
3872 2004-04-22  Philip Blundell  <philb@gnu.org>
3874         * sysdeps/arm/dl-machine.h (elf_machine_rela): Don't use INTUSE
3875         when calling _dl_signal_error.
3876         (elf_machine_rel): Likewise.
3878 2004-04-21  Ulrich Drepper  <drepper@redhat.com>
3880         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Define _GI___sigsetjmp
3881         and use it internally instead of __sigsetjmp.
3882         * sysdeps/ia64/fpu/s_frexpf.c (frexpf): Use _GI___libm_frexp_4f.
3883         * sysdeps/ia64/fpu/s_frexpl.c (frexpl): Use _GI___libm_frexp_4l.
3884         * sysdeps/ia64/fpu/libm_frexp4.S: Define _GI___libm_frexp_4.
3885         * sysdeps/ia64/fpu/libm_frexp4f.S: Define _GI___libm_frexp_4f.
3886         * sysdeps/ia64/fpu/libm_frexp4l.S: Define _GI___libm_frexp_4l.
3887         * sysdeps/ia64/fpu/s_frexp.c (frexp): Use _GI___libm_frexp_4.
3888         * sysdeps/ia64/fpu/libm_support.h: Declare _GI___libm_frexp_4,
3889         _GI___libm_frexp_4f, _GI___libm_frexp_4l.
3890         * sysdeps/ia64/fpu/bits/mathinline.h: New file.
3891         * sysdeps/unix/sysv/linux/ia64/__start_context.S: Use
3892         HIDDEN_JUMPTARGET for exit call.
3893         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use HIDDEN_JUMPTARGET for
3894         _exit call.
3895         * sysdeps/ia64/bcopy.S: Use HIDDEN_JUMPTARGET for memmove call.
3896         * sysdeps/ia64/strcat.S: Use HIDDEN_JUMPTARGET for strlen and
3897         strcpy calls.
3899 2004-04-21  Jakub Jelinek  <jakub@redhat.com>
3901         * posix/tst-chmod.c (do_test): Fix a typo.
3903         * elf/lateglobal.c (main): Fix error checks.
3904         Patch by Stephen Clarke <stephen.clarke@st.com>.
3906         * manual/ctype.texi (isblank, iswblank): Mark as ISO functions,
3907         mention they have been added in ISO C99.
3908         Reported by Ben Pfaff <blp@cs.stanford.edu>.
3910 2004-03-31  H.J. Lu  <hongjiu.lu@intel.com>
3912         * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: Fix typo.
3914 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
3916         * sysdeps/unix/sysv/linux/shm_open.c (shm_unlink): Change EPERM into
3917         EACCES.
3919 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
3921         * stdio-common/vfscanf.c (_IO_vfscanf): Revert last %% whitespace
3922         handling change.
3923         * stdio-common/tst-sscanf.c (int_tests): Adjust.
3925         * nis/nss-nis.c: Include stdlib.h.
3927         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Shut up a
3928         warning.
3929         * sysdeps/sparc/sparc64/memcmp.S (memcmp): Remove BP_SYM () from
3930         libc_hidden_builtin_def.
3932 2004-04-20  Jim Meyering  <jim@meyering.net>
3934         * misc/error.c (error_tail): Don't leak upon realloc failure.
3936 2004-04-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3938         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
3939         Use RETURN_ADDRESS instead of __builtin_return_address.
3941 2004-04-19  Ulrich Drepper  <drepper@redhat.com>
3943         * sysdeps/unix/sysv/linux/mq_unlink.c: Rewrite to produce more
3944         compact code.
3946 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
3948         * stdio-common/vfscanf.c (_IO_vfscanf): When skipping whitespace,
3949         do input_error () instead of conv_error () and don't look at errno.
3950         Don't eat any whitespace before %% if skip_space == 0.
3951         * stdio-common/tst-sscanf.c (int_tests): New array.
3952         (main): Run int_tests.
3955 See ChangeLog.14 for earlier changes.