[BZ #472]
[glibc.git] / ChangeLog
blobf72b2529002541d40467a788f1b3d8b9acd8e106
1 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
3         * debug/execinfo.h: Remove __THROW from backtrace prototype.
5 2004-10-22  Jakub Jelinek  <jakub@redhat.com>
7         * sysdeps/i386/Makefile (CFLAGS-backtrace.c): Add -fexceptions.
8         * sysdeps/i386/backtrace.c: Include <bits/libc-lock.h>, <dlfcn.h>,
9         <stdlib.h> and <unwind.h>.  Remove <bp-checks.h> include.
10         (struct trace_arg): New type.
11         (unwind_backtrace, unwind_getip, unwind_getcfa, unwind_getgr): New
12         fn pointers resp. macros.
13         (init, backtrace_helper): New functions.
14         (__backtrace): Rewritten to use _Unwind_Backtrace first and fall
15         back to frame pointer walking.
17 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
19         * sysdeps/unix/sysv/linux/Versions: Things are still in flux, it
20         seems.  Undo last additions.
22 2004-10-21  Ulrich Drepper  <drepper@redhat.com>
24         * posix/execvp.c (execvp): Also ignore ENODEV and ETIMEDOUT errno
25         values.
27 2004-10-20  Roland McGrath  <roland@redhat.com>
29         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Check also
30         $(config-sysdirs) for shlib-versions files.
32         * Makeconfig ($(common-objpfx)soversions.i): Replace shell loop with
33         use of ...
34         * scripts/soversions.awk: ... this new file.  Collect lib info and
35         match any DEFAULT line before emitting anything, so DEFAULT can come
36         later in the concatenation of shlib-versions files.
38         * manual/errno.texi (Error Codes): Add ENOKEY, EKEYEXPIRED,
39         EKEYREVOKED, EKEYREJECTED.
40         * sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.3.4): New errlist.
41         * sysdeps/gnu/errlist.c: Regenerated
43         * sysdeps/gnu/errlist-compat.awk: Don't bail if Versions gives a count
44         higher than ERR_MAX reports.  Instead, emit a #define ERR_MAX.
45         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.h): New target.
46         (generated): Add errlist-compat.h.
47         * sysdeps/gnu/errlist.awk: Make output #include <errlist-compat.h> to
48         define ERR_MAX and use that for table size.
50 2004-10-20  Ulrich Drepper  <drepper@redhat.com>
52         * sysdeps/unix/sysv/linux/syscalls.list: Add entries for setaltroot,
53         key_add, key_request, and keyctl syscalls.
54         * sysdeps/unix/sysv/linux/Versions: Export them.
56 2004-10-19  Roland McGrath  <roland@frob.com>
58         * sysdeps/mach/readonly-area.c: New file.
60 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
62         * elf/Versions [ld, GLIBC_PRIVATE]: Add _dl_debug_state.
63         * elf/dl-debug.c (_dl_debug_state): Add rtld_hidden_def.
64         * sysdeps/generic/ldsodefs.h (_dl_debug_state): Don't mark as
65         hidden but use rtld_hidden_proto.
67 2004-10-19  Alfred M. Szmidt  <ams@gnu.org>
69         * sysdeps/generic/readonly-area.c (__readonly_str): Renamed to ...
70         (__readonly_area): ... this.
72 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
74         * sysdeps/generic/strcpy_chk.c (__strcpy_chk): Speed up by checking
75         destlen only every 4 bytes.
77 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
79         * nss/getent.c (hosts_keys): Let inet_pton decide whether the
80         string is an address or not.
82 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
84         * elf/dl-addr.c (_dl_addr): Don't look at STT_TLS symbols.
85         Use DL_SYMBOL_ADDRESS to set dli_saddr.
87         * debug/Makefile (catchsegv): Prefix $LIB with a backslash.
89 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
91         * debug/Makefile ($(objpfx)catchsegv): To support multilib
92         platforms, use $LIB in path to slibdir.
94 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
96         * debug/catchsegv.sh: Update copyright year.
97         Use mktemp to create segv_output file.
99 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
101         * elf/dl-libc.c (__libc_dlsym_private, __libc_register_dl_open_hook):
102         New functions.
103         (__libc_dlopen_mode): Call __libc_register_dl_open_hook and
104         __libc_register_dlfcn_hook.
105         * dlfcn/Makefile (routines, elide-routines.os): Set.
106         Add rules to build and test tststatic2.
107         * dlfcn/tststatic2.c: New test.
108         * dlfcn/modstatic2.c: New test module.
109         * dlfcn/dladdr.c: Call _dlfcn_hook from libdl.so if not NULL.
110         Define __ prefixed routine in libc.a and in libdl.a just call it.
111         * dlfcn/dladdr1.c: Likewise.
112         * dlfcn/dlclose.c: Likewise.
113         * dlfcn/dlerror.c: Likewise.
114         * dlfcn/dlinfo.c: Likewise.
115         * dlfcn/dlmopen.c: Likewise.
116         * dlfcn/dlopen.c: Likewise.
117         * dlfcn/dlopenold.c: Likewise.
118         * dlfcn/dlsym.c: Likewise.
119         * dlfcn/dlvsym.c: Likewise.
120         * dlfcn/sdladdr.c: New file.
121         * dlfcn/sdladdr1.c: New file.
122         * dlfcn/sdlclose.c: New file.
123         * dlfcn/sdlerror.c: New file.
124         * dlfcn/sdlinfo.c: New file.
125         * dlfcn/sdlopen.c: New file.
126         * dlfcn/sdlsym.c: New file.
127         * dlfcn/sdlvsym.c: New file.
128         * dlfcn/Versions (libdl): Export _dlfcn_hook@GLIBC_PRIVATE.
129         * include/dlfcn.h (DL_CALLER_DECL, DL_CALLER RETURN_ADDRESS): Define.
130         (struct dlfcn_hook): New type.
131         (_dlfcn_hook): New extern decl.
132         (__dlopen, __dlclose, __dlsym, __dlerror, __dladdr, __dladdr1,
133         __dlinfo, __dlmopen, __libc_dlsym_private,
134         __libc_register_dl_open_hook, __libc_register_dlfcn_hook): New
135         prototypes.
136         (__dlvsym): Use DL_CALLER_DECL.
137         * include/libc-symbols.h: Define libdl_hidden_proto and friends.
139         * malloc/arena.c (_dl_open_hook): Extern decl.
140         (ptmalloc_init): Don't call _dl_addr when dlopened from statically
141         linked programs but don't use brk for them either.
143 2004-10-18  Roland McGrath  <roland@redhat.com>
145         * dlfcn/bug-dlsym1.c (main): Remove bogus setenv call.
147 2004-10-18  Ulrich Drepper  <drepper@redhat.com>
149         * elf/dl-open.c (dl_open_worker): Avoid dereferencing map in
150         statically linked code if there might none be found.
152 2004-10-06  Maciej W. Rozycki  <macro@mips.com>
154         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
155         (__SYSCALL_CLOBBERS): Add "memory".
156         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h
157         (__SYSCALL_CLOBBERS): Likewise.
158         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h
159         (__SYSCALL_CLOBBERS): Likewise.
161 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
163         * include/libc-symbols.h: Define libresolv_hidden_proto and friends.
164         * include/resolv.h: Add libresolv_hidden_proto for symbols defined,
165         used, and exported in libresolv.
166         * resolv/base64.c: Add libresolv_hidden_def.
167         * resolv/gethnamaddr.c: Likewise.
168         * resolv/ns_name.c: Likewise.
169         * resolv/ns_netint.c: Likewise.
170         * resolv/res_comp.c: Likewise.
171         * resolv/res_data.c: Likewise.
172         * resolv/res_debug.c: Likewise.
173         * resolv/res_mkquery.c: Likewise.
174         * resolv/res_query.c: Likewise.
175         * resolv/res_send.c: Likewise.
177 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
179         * elf/dl-minimal.c (__chk_fail): New.  Add rtld_hidden_def.
180         * sysdeps/unix/sysv/linux/readonly-area.c: New file.
181         * sysdeps/i386/i686/memmove.S (__memmove_chk): Add checking
182         routine.
183         * sysdeps/i386/i686/memcpy.S (__memcpy_chk): Likewise.
184         * sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
185         * sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
186         * sysdeps/i386/i686/memmove-chk.S: New file.
187         * sysdeps/i386/i686/memcpy-chk.S: Likewise.
188         * sysdeps/i386/i686/mempcpy-chk.S: Likewise.
189         * sysdeps/i386/i686/memset-chk.S: Likewise.
190         * sysdeps/generic/strcat-chk.c (__strcat_chk): Don't __chk_fail
191         if exactly fitting into buffer.
192         * sysdeps/generic/strncat-chk.c (__strncat_chk): Likewise.
193         * sysdeps/generic/readonly-area.c: New file.
194         * sysdeps/generic/strncpy-chk.c (__strncpy_chk): Only test
195         destlen once.
196         * sysdeps/x86_64/memset.S (__memset_chk): Add checking routine.
197         * sysdeps/x86_64/memcpy.S (__memcpy_chk): Likewise.
198         * sysdeps/x86_64/mempcpy.S (__memcpy_chk): Define to __mempcpy_chk.
199         * sysdeps/x86_64/memcpy-chk.S: New file.
200         * sysdeps/x86_64/mempcpy-chk.S: Likewise.
201         * sysdeps/x86_64/memset-chk.S: Likewise.
202         * sysdeps/x86_64/strcpy-chk.S: Likewise.
203         * sysdeps/x86_64/stpcpy-chk.S: Likewise.
204         * argp/argp-xinl.c (__OPTIMIZE__): Define to 1 instead of nothing.
205         * argp/argp-fs-xinl.c (__OPTIMIZE__): Likewise.
206         * debug/tst-chk1.c: New test.
207         * debug/tst-chk2.c: Likewise.
208         * debug/tst-chk3.c: Likewise.
209         * debug/test-strcpy_chk.c: Likewise.
210         * debug/test-stpcpy_chk.c: Likewise.
211         * debug/vsprintf_chk.c (__vsprintf_chk): If flags > 0, request
212         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
213         * debug/Makefile (routines): Add printf_chk, fprintf_chk, vprintf_chk,
214         vfprintf_chk, gets_chk and readonly-area.
215         (CFLAGS-*_chk.c): Set.
216         (tests): Add tst-chk1, tst-chk2, tst-chk3, test-strcpy_chk and
217         test-stpcpy_chk.
218         * debug/vprintf_chk.c: New file.
219         * debug/printf_chk.c: Likewise.
220         * debug/vfprintf_chk.c: Likewise.
221         * debug/fprintf_chk.c: Likewise.
222         * debug/gets_chk.c: Likewise.
223         * debug/chk_fail.c (__chk_fail): Add libc_hidden_def.
224         * debug/snprintf_chk.c (__snprintf_chk): Fix order of arguments
225         passed to __vsnprintf_chk.
226         * debug/Versions (libc): Export __printf_chk, __fprintf_chk,
227         __vprintf_chk, __vfprintf_chk and __gets_chk @GLIBC_2.3.4.
228         * debug/vsnprintf_chk.c (__vsnprintf_chk): Don't call
229         __vsnprintf, instead create a temporary file with
230         _IO_strn_jumps jumptable.  If flags > 0, request
231         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
232         * libio/Makefile (headers): Add bits/stdio2.h.
233         * libio/stdio.h: Include <bits/stdio2.h> if __USE_FORTIFY_LEVEL.
234         (sprintf, snprintf, vsprintf, vsnprintf): Remove defines.
235         * libio/strfile.h (_IO_strnfile): New type.
236         (_IO_strn_jumps): New extern.
237         * libio/vsnprintf.c (_IO_strnfile): Remove.
238         (_IO_strn_jumps): Remove static.
239         * libio/bits/stdio2.h: New file.
240         * libio/vswprintf.c (_IO_strnfile): Rename type to...
241         (_IO_wstrnfile): ...this.  Adjust all uses.
242         * libio/libio.h (_IO_FLAGS2_CHECK_PERCENT_N): Define.
243         * stdio-common/vfprintf.c (STR_LEN): Define.
244         (vfprintf): Add readonly_format variable.
245         Handle _IO_FLAGS2_CHECK_PERCENT_N.
246         (buffered_vfprintf): Copy _flags2.
247         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
248         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
249         __vfprintf_chk): New prototypes.
250         (__vsprintf_chk, __vsnprintf_chk): Add libc_hidden_proto.
251         * include/string.h (__memcpy_chk, __memmove_chk, __mempcpy_chk,
252         __memset_chk, __strcpy_chk, __stpcpy_chk, __strncpy_chk, __strcat_chk,
253         __strncat_chk): New prototypes.
254         * include/bits/string3.h: New file.
255         * include/sys/cdefs.h (__chk_fail): Add libc_hidden_proto
256         and rtld_hidden_proto.
257         * string/Makefile (headers): Add bits/string3.h.
258         * string/bits/string3.h (bcopy, bzero): New defines.
259         (memset, memcpy, memmove, strcpy, strncpy, strcat, strncat): Change
260         macros so that inlines are used only if unknown destination size
261         or side-effects in destination argument.
262         (mempcpy, stpcpy): Likewise.  Protect with #ifdef __USE_GNU.
264 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
266         * debug/Makefile (routines): Add *_chk.
267         * debug/Versions (libc): Export __chk_fail, __memcpy_chk,
268         __memmove_chk, __mempcpy_chk, __memset_chk, __stpcpy_chk,
269         __strcat_chk, __strcpy_chk, __strncat_chk, __strncpy_chk,
270         __sprintf_chk, __vsprintf_chk, __snprintf_chk, __vsnprintf_chk
271         @GLIBC_2.3.4.
272         * debug/chk_fail.c: New file.
273         * debug/snprintf_chk.c: Likewise.
274         * debug/sprintf_chk.c: Likewise.
275         * debug/vsnprintf_chk.c: Likewise.
276         * debug/vsprintf_chk.c: Likewise.
277         * include/features.h (_FORTIFY_SOURCE): Document, handle.
278         (__USE_FORTIFY_LEVEL): Define.
279         (__GNUC_PREREQ): Move to earlier location.
280         * include/sys/cdefs.h (__chk_fail): New prototype.
281         * libio/bits/stdio.h (sprintf, vsprintf, snprintf, vsnprintf):
282         Define if __USE_FORTIFY_LEVEL.
283         * misc/sys/cdefs.h (__bos, __bos0): Define.
284         * string/string.h: Include <bits/string3.h> if __USE_FORTIFY_LEVEL.
285         * bits/string/string3.h: New header.
286         * sysdeps/generic/memcpy_chk.c: New file.
287         * sysdeps/generic/memmove_chk.c: Likewise.
288         * sysdeps/generic/mempcpy_chk.c: Likewise.
289         * sysdeps/generic/memset_chk.c: Likewise.
290         * sysdeps/generic/stpcpy_chk.c: Likewise.
291         * sysdeps/generic/strcat_chk.c: Likewise.
292         * sysdeps/generic/strcpy_chk.c: Likewise.
293         * sysdeps/generic/strncat_chk.c: Likewise.
294         * sysdeps/generic/strncpy_chk.c: Likewise.
296 2004-10-17  Roland McGrath  <roland@frob.com>
298         * manual/memory.texi (Page Lock Functions): Typo fix.
299         Reported by Carlos Maziero <maziero@ppgia.pucpr.br>
301 2004-10-16  Alfred M. Szmidt  <ams@kemisten.nu>
303         * sysdeps/mach/hurd/Makefile (link-libc-static): Use
304         `$(static-gnulib') instead of `$(gnulib)'.
306 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
308         * sunrpc/rpc_clntout.c: Avoid including rcsid into binary.
309         * sunrpc/rpc_cout.c: Likewise.
310         * sunrpc/rpc_hout.c: Likewise.
311         * sunrpc/rpc_main.c: Likewise.
312         * sunrpc/rpc_parse.c: Likewise.
313         * sunrpc/rpc_sample.c: Likewise.
314         * sunrpc/rpc_scan.c: Likewise.
315         * sunrpc/rpc_svcout.c: Likewise.
316         * sunrpc/rpc_tblout.c: Likewise.
317         * sunrpc/rpc_util.c: Likewise.
319 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
321         * sysdeps/unix/sysv/linux/i386/sysdep.h (PUSHARGS_6, DOARGS_6,
322         POPARGS_6, _PUSHARGS_6, _DOARGS_6, _POPARGS_6): Define.
323         * sysdeps/unix/sysv/linux/i386/syscall.S (syscall): Handle 6 argument
324         syscalls.
326 2004-10-15  Ulrich Drepper  <drepper@redhat.com>
328         * nscd/nscd.h (_PATH_NSCD_PASSWD_DB): Move to /var/db.
329         (_PATH_NSCD_GROUP_DB): Likewise.
330         (_PATH_NSCD_HOSTS_DB): Likewise.
331         (_PATH_NSCD_XYZ_DB_TMP): New #define, point to /var/run.
332         * nscd/connections.c (nscd_init): Non-persistent database files
333         are created with the _PATH_NSCD_XYZ_DB_TMP path.
334         * nscd/nscd.init: Create /var/db/nscd if necessary.
336 2004-10-15  Richard Henderson  <rth@redhat.com>
338         * sysdeps/unix/sysv/linux/alpha/register-dump.h: New file.
339         * sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h (SIGCONTEXT): Add
340         _code argument, pass sigcontext by pointer.
341         (SIGCONTEXT_EXTRA_ARGS): Likewise.
342         (GET_PC, GET_FRAME, GET_STACK): Expect ctx as pointer.
344 2004-10-14  Richard Henderson  <rth@redhat.com>
346         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
347         elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
348         instead of static.
350         * sysdeps/unix/sysv/linux/adjtime.c (ADJTIME): Use prototype
351         style definition.
352         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): If
353         __ASSUME_TIMEVAL64, define __adjtime directly rather than
354         via strong_alias.
356 2004-10-14  Ulrich Drepper  <drepper@redhat.com>
358         * nscd/Makefile: When using compilers without -fpie support, also
359         link with -lselinux if necessary.
360         Patch by Arkadiusz Miskiewicz <arekm@pld-linux.org>.
362         * nscd/connections.c (nscd_init): Remove file if not persistent
363         and not shared.  Patch by Jerome Borsboom <j.borsboom@erasmusmc.nl>.
365 2004-10-14  Jakub Jelinek  <jakub@redhat.com>
367         * sysdeps/unix/sysv/linux/i386/setresuid.c: Handle
368         defined __NR_setresuid32 && !defined __NR_setresuid.
369         * sysdeps/unix/sysv/linux/i386/setresgid.c: Handle
370         defined __NR_setresgid32 && !defined __NR_setresgid.
372         * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit,
373         __signbitl, sqrtf, sqrt, sqrtl, fdim, fdimf): Use __NTH macro.
375         * sysdeps/generic/errno-loc.c: Don't undef #errno
376         if RTLD_PRIVATE_ERRNO.
377         * include/errno.h (__errno_location): If RTLD_PRIVATE_ERRNO,
378         add attribute_hidden.
380         * dlfcn/dlinfo.c (dlinfo_doit): Replace iteration over GL(dl_loaded)
381         chain with iteration over all namespaces' _ns_loaded chains.
382         * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_preferred_address):
383         Likewise.
384         * sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Likewise.
386         * elf/rtld.c (_dl_start): Fix one last dl_loaded.
387         * elf/dl-load.c (_dl_map_object_from_fd): Avoid definition of
388         label when it is not needed.
389         * elf/dl-close.c (_dl_close): Typo: & -> &&.
391 2004-10-12  Jakub Jelinek  <jakub@redhat.com>
393         * sysdeps/generic/segfault.c: Include alloca.h and stdint.h.
394         Don't include frame.h.
395         (CURRENT_STACK_FRAME, INNER_THAN, ADVANCE_STACK_FRAME): Remove.
396         (catch_segfault): Use backtrace function.
398         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Fix comment.
399         * sysdeps/unix/sysv/linux/ia64/register-dump.h: New file.
400         * sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h (GET_PC): Return sc_ip
401         field.
403 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
405         Add support for namespaces in the dynamic linker.
406         * dlfcn/Makefile (libdl-routines): Add dlmopen.
407         * dlfcn/Versions [libdl, GLIBC_2.3.4]: Add dlmopen.
408         * dlfcn/dlfcn.h: Define Lmid_t, LM_ID_BASE, and LM_ID_NEWLM.
409         Declare dlmopen.  Document RTLD_DI_LMID.
410         * dlfcn/dlinfo.c: Handle RTLD_DI_LMID.
411         * dlfcn/dlmopen.c: New file.
412         * dlfcn/dlopen.c: Pass new parameter to _dl_open.
413         * dlfcn/dlopenold.c: Likewise.
414         * elf/dl-addr.c: Adjust for removal of GL(dl_loaded).
415         * elf/dl-caller.c: Likewise.
416         * elf/dl-close.c: Likewise.
417         * elf/dl-conflict.c: Likewise.
418         * elf/dl-debug.c: Likewise.
419         * elf/dl-lookup.c: Likewise.
420         * elf/dl-sym.c: Likewise.
421         * elf/dl-version.c: Likewise.
422         * elf/do-lookup.h: Likewise.
423         * elf/rtld.c: Likewise.
424         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
425         * elf/dl-depsc: Likewise.  Add new parameter to _dl_map_object.
426         * elf/dl-fini.c: Call destructors in all namespaces.
427         * elf/dl-iteratephdr.c: Compute total nloaded.  Adjust for removal of
428         GL(dl_loaded).
429         * elf/dl-libc.c: Pass new parameter to _dl_open.  Adjust for removal
430         of GL(dl_loaded).
431         * elf/dl-load.c (_dl_map_object_from_fd): Don't load ld.so a second
432         time.  Reuse the one from the main namespace in all others.
433         Pass new parameter to _dl_new_object.
434         Adjust for removal of GL(dl_loaded).
435         * elf/dl-object.c: Take new parameter.  Use it to initialize l_ns.
436         Adjust for removal of GL(dl_loaded).
437         * elf/dl-open.c (_dl_open): Take new parameter.
438         Adjust for removal of GL(dl_loaded).
439         * elf/dl-support.c: Replace global _dl_loaded etc variables with
440         _dl_ns variable.
441         * include/dlfcn.h: Adjust prototype of _dl_open.
442         Define __LM_ID_CALLER.
443         * include/link.h: Add l_real, l_ns, and l_direct_opencount elements.
444         * sysdeps/generic/dl-tls.c: Bump TLS_STATIC_SURPLUS.  Since libc is
445         using TLS we need memory appropriate to the number of namespaces.
446         * sysdeps/generic/ldsodefs.h (struct rtld_global): Replace _dl_loaded,
447         _dl_nloaded, _dl_global_scope, _dl_main_searchlist, and
448         _dl_global_scope_alloc with _dl_ns element.  Define DL_NNS.
449         Adjust prototypes of _dl_map_object and member in rtld_global_ro.
450         * malloc/malloc.c: Include <dlfcn.h>.
451         * malloc/arena.c (ptmalloc_init): If libc is not in primary namespace,
452         never use brk.
453         * elf/Makefile: Add rules to build and run tst-dlmopen1 and
454         tst-dlmopen2.
455         * elf/tst-dlmopen1.c: New file.
456         * elf/tst-dlmopen1mod.c: New file.
457         * elf/tst-dlmopen2.c: New file.
459         * elf/dl-close.c: Improve reference counting by tracking direct loads.
460         * elf/dl-lookup.c (add_dependency): Likewise.
461         * elf/dl-open.c (dl_open_worker): Likewise.
462         * elf/rtld.c (dl_main): Likewise.
464 2004-09-09  GOTO Masanori  <gotom@debian.or.jp>
466         [BZ #77]
467         * elf/dl-close.c: Count down l_opencount to check not only for
468         l_reldeps, but also l_initfini.
470 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
472         * elf/dl-close.c (_dl_close): Update bug reporting instructions.
474 2004-10-11  Ulrich Drepper  <drepper@redhat.com>
476         * timezone/asia: Update from tzdata2004e.
477         * timezone/southamerica: Likewise.
478         * timezone/private.h: Update from tzcode2004e.
479         * timezone/zdump.c: Likewise.
481         * stdio-common/vfscanf.c: Add support for reading localized
482         digits.  Patch mainly by Hamed Malek <hamed@bamdad.org>.
484         * resolv/res_init.c (res_thread_freeres): Reset _res.options.
485         [BZ #434]
487         * resolv/res_send.c (send_dg): Use nonblocking sockets.  Add
488         appropriate poll/select calls and restart operation if necessary.
489         Also handle EINTR.
491         * elf/tst-dlopenrpath.c (do_test): Enable code which was disabled
492         for debugging.
494         * elf/dl-sym.c (do_sym): Avoid using global variable.
496         * elf/dl-addr.c (_dl_addr): Really use match everywhere.
498 2004-10-09  Andreas Schwab  <schwab@suse.de>
500         * sysdeps/m68k/memcopy.h (WORD_COPY_BWD): Remove use of cast as
501         lvalue.
503         * sysdeps/m68k/fpu/bits/mathinline.h: Remove __THROW from inline
504         definitions.
506 2004-10-07  Andreas Schwab  <schwab@suse.de>
508         * misc/sys/uio.h: Change __vector to __iovec to avoid clash with
509         altivec.
511 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
513         * gmon/Makefile (CFLAGS-mcount.c): Move before inclusion of "Rules".
514         * sysdeps/powerpc/powerpc64/Makefile (CFLAGS-mcount.c): Add
515         -msoft-float.
516         * sysdeps/powerpc/powerpc64/sysdep.h (SAVE_ARG, REST_ARG): New macros.
517         (CALL_MCOUNT): Replace with a gas macro implementation.
518         (EALIGN): Delete PROF version.
519         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Invoke CALL_MCOUNT.
520         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Likewise.
521         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
522         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
523         * sysdeps/powerpc/powerpc64/memcpy.S: Likewise.
524         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
525         * sysdeps/powerpc/powerpc64/stpcpy.S: Likewise.
526         * sysdeps/powerpc/powerpc64/strchr.S: Likewise.
527         * sysdeps/powerpc/powerpc64/strcmp.S: Likewise.
528         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
529         * sysdeps/powerpc/powerpc64/strlen.S: Likewise.
530         * sysdeps/powerpc/powerpc64/strncmp.S: Likewise.
531         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Likewise.
532         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Likewise.
533         * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Likewise.
534         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Likewise.
535         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Likewise.
536         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: Likewise.
537         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: Likewise.
538         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: Likewise.
539         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: Likewise.
540         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Likewise.
541         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Likewise.
542         * sysdeps/powerpc/powerpc64/fpu/s_round.S: Likewise.
543         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Likewise.
544         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Likewise.
545         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Likewise.
547         * sysdeps/powerpc/powerpc64/setjmp-common.S: Add extra entry point
548         past _mcount call.
549         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Use it.
550         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
552 2004-10-06  Ulrich Drepper  <drepper@redhat.com>
554         * resolv/res_mkquery.c (res_nmkquery): Reject randombits value if
555         low 16 bits are zero.
557 2004-10-06  Jakub Jelinek  <jakub@redhat.com>
559         * posix/tst-getaddrinfo2.c: Include stdlib.h and string.h.
560         (do_test): Use %p instead of 0x%08X to print a pointer.
562         * malloc/malloc.c: Include stdio-common/_itoa.h.
564 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
566         * elf/rtld.c (dl_main): Use _dl_debug_printf instead of _dl_printf
567         for prelink message.
569 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
571         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Include dl-sysdep.h.
572         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
574 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
576         * grp/initgroups.c: Remove duplicate group IDs.
577         * grp/compat-initgroups.c: Likewise.
578         * nscd/initgrcache.c: Likewise.
580 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
582         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (__sysconf): Return 200112L
583         for _SC_CPUTIME or _SC_THREAD_CPUTIME.
585         * nscd/Makefile (nscd-cflags): Set to -DIS_IN_nscd=1, plus
586         -fpie if building PIE.
587         (CFLAGS-*.c): Use it.
589         * nscd/Makefile (relro-LDFLAGS): Add -Wl,-z,now if have-z-relro.
590         ($(objpfx)nscd): Add $(relro-LDFLAGS).
592         * sysdeps/unix/sysv/linux/i386/sysconf.c: Include hp-timing.h.
593         (__sysconf): Return -1 for _SC_CPUTIME or _SC_THREAD_CPUTIME if
594         !HP_TIMING_AVAIL.
596 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
598         * nscd/Makefile (distribute): Remove TODO.
599         * nscd/TODO: Removed.
601 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
603         * nscd/gai.c: Define __no_netlink_support if NEED_NETLINK is
604         defined and __ASSUME_NETLINK_SUPPORT is zero.
605         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gai.c): Add
606         -DNEED_NETLINK.
608         * malloc/mtrace.pl: Avoid calling location unless it is needed for
609         output.  Patch by Edward Bishop <binutils@gmail.com>.
611         * nscd/Makefile (CFLAGS-gai.c): Add -fpie.
613 2004-10-04  H.J. Lu  <hongjiu.lu@intel.com>
615         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c
616         (clock_getcpuclockid): Add missing retval.
618         * sysdeps/unix/sysv/linux/ia64/sysconf.c (linux_sysconf): Fix a typo.
620 2004-10-04  Roland McGrath  <roland@redhat.com>
622         * include/errno.h [RTLD_PRIVATE_ERRNO] (errno): Rename the real symbol
623         to rtld_errno.
624         * sysdeps/generic/errno.c [RTLD_PRIVATE_ERRNO] (rtld_errno): Define it,
625         and don't define any other errno names.
626         * sysdeps/unix/alpha/sysdep.h [RTLD_PRIVATE_ERRNO]: Use rtld_errno in
627         place of errno.
628         * sysdeps/unix/i386/sysdep.S: Likewise.
629         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
630         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
631         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
632         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
633         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
634         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
635         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
636         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
637         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
638         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
639         * sysdeps/unix/x86_64/sysdep.S: Likewise.
641         * sysdeps/generic/errno.c [! USE___THREAD] (errno): Use `nocommon'
642         attribute instead of `section'.
644 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
646         * sysdeps/unix/sysv/linux/ia64/sysconf.c: New file.
647         * sysdeps/unix/sysv/linux/ia64/Dist: Add has_cpuclock.c.
648         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: Move actual
649         testing code to...
650         * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c: ...here.  New file.
651         * sysdeps/unix/sysv/linux/i386/sysconf.c: Add dynamic check for
652         _SC_CPUTIME and _SC_THREAD_CPUTIME.
654         * nscd/connections.c (start_threads): Use sysconf in case
655         _POSIX_CLOCK_SELECTION or _POSIX_MONOTONIC_CLOCK is not greater zero.
657         * nscd/Makefile (nscd-modules): Add gai.
658         * nscd/gai.c: New file.
659         * nscd/nscd.c: Remove getaddrinfo stub definition.
661         * assert/assert.h: Give up on using __builtin_expect.
663         * elf/rtld.c (dl_main): Only skip => output in ldd mode if both
664         strings are identical.
666 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
668         * malloc/arena.c (aligned_heap_area): New variable.
669         (new_heap): If aligned_heap_area != NULL, attempt to use that
670         first.  If HEAP_MAX_SIZE << 1 area is already HEAP_MAX_SIZE bytes
671         aligned, remember the second half in aligned_heap_area.
672         (delete_heap): Clear aligned_heap_area if deleting the area right
673         before aligned_heap_area.
675 2004-10-03  Juerg Billeter  <j@bitron.ch>
677         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Return -1 if nscd
678         can't be used.  [BZ #424]
680 2004-10-03  Ulrich Drepper  <drepper@redhat.com>
682         Dynamically create new threads if necessary.
683         * nscd/connections.c (fd_ready): If no thread available for processing
684         the request, create a new one unless the limit is reached.
685         (start_threads): Check errors from pthread_create.
686         * nscd/nscd.h: Declare max_nthreads.
687         * nscd/nscd_conf.c: Parse max-nthreads entry.
688         * nscd/nscd.conf: Add max-threads entry.
689         * nscd/nscd_stat.c: Print current and maximum number of threads.
691         Implement paranoia mode.
692         * nscd/connections.c (nscd_init): Mark database and socket descriptors
693         as close on exec.
694         (restart): New function.
695         (restart_p): New function.
696         (nscd_run): Add missing descrement of nready in case readylist is
697         empty.
698         (main_loop_poll): Call restart_p and restart.
699         (main_loop_epoll): Likewise.
700         (begin_drop_privileges): Save original UID and GID.
701         * nscd/nscd.c: Define new variables paranoia, restart_time,
702         restart_interval, oldcwd, old_gid, old_uid.
703         (main): Disable paranoia mode if we are not forking.
704         (check_pid): When re-execing, the PID file contains the same PID as
705         the current process.  Do not fail in this case.
706         * nscd/nscd.conf: Add paranoia and restart-interval entries.
707         * nscd/nscd.h: Define RESTART_INTERVAL.  Declare new variables.
708         * nscd/nscd_conf.c: Parse paranoia and restart-internal configurations.
709         * nscd/nscd_stat.c: Print paranoia and restart-internal values.
711         * nscd/connections.c: Implement alternative loop for main thread
712         which uses epoll.
713         * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]
714         (CFLAGS-connections.c): Add -DHAVE_EPOLL.
716 2004-10-02  Ulrich Drepper  <drepper@redhat.com>
718         * nscd/Makefile (CFLAGS-initgrcache.c): Add to CFLAGS-* variables,
719         don't replace old content.
721         * nscd/connections.c: Rewrite handling of incoming connections.  All
722         are handled by one thread which then hands off the descriptors for the
723         real work to the worker threads.
724         * nscd/Makefile: Link nscd with librt.
726         * nscd/selinux.c: Pretty printing.
728         * nscd/dbg_log.c (dbg_log): Don't add unnecessary newline to
729         output.  Let syslog do the formatting if debug_level == 0.
731         * nscd/nscd_helper.c (get_mapping): No need to check timestamp if
732         nscd_certainly_running is nonzero.
734 2004-10-02  Simon Josefsson  <jas@extundo.com>
736         [BZ #420]
737         * sysdeps/generic/memmem.c [!_LIBC]: Define __builtin_expect, to
738         make the file usable inside gnulib.
740 2004-10-01  Ulrich Drepper  <drepper@redhat.com>
742         * malloc/malloc.c (public_vALLOc): Add missing use of hooks.
743         (public_pVALLOc): Likewise.
745         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Always add the
746         group the caller provided unless there is a real problem.
748         * posix/bug-glob1.c (prepare): Fix creation of symlink.
750 2004-09-30  Ulrich Drepper  <drepper@redhat.com>
752         * posix/Makefile: Add rules to build and run bug-glob1.
753         * posix/bug-glob1.c: New file.
755         * iconv/iconv_prog.c (main): Print progress information to stderr.
757         * nscd/nscd.c (termination_handler): Reset timestamp so that
758         clients immediately stop using the database.
760         * nscd/nscd-client.h (__nscd_get_map_ref): Drop volatile from last
761         parameter.
762         (__nscd_drop_map_ref): Change second parameter to be a reference to
763         a variable.  Update variable when cycle count changed.
764         * nscd/nscd_helper.c (__nscd_get_map_ref): Remove volatile here, too.
765         * nscd/nscd_getai.c: Correctly use __nscd_drop_map_ref.  Reinitialize
766         all variables and avoid memory leak in case of retries.
767         * nscd/nscd_getgr_r.c: Likewise.
768         * nscd/nscd_gethst_r.c: Likewise.
769         * nscd/nscd_getpw_r.c: Likewise.
770         * nscd/nscd_initgroups.c: Likewise.
772         * nscd/nscd.h: Add declaration of addinitgroups and
773         readdinitgroups.
775 2004-09-30  Andreas Jaeger  <aj@suse.de>
777         * nscd/Makefile (CFLAGS-nscd_initgroups.c): Set to -fpie.
778         (CFLAGS-initgrcache.c): Set to -fexceptions.
780 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
782         * sysdeps/generic/glob.c (glob_in_dir): Don't blindly trust
783         readdir results; for symlinks or files of unknown type check using
784         stat whether the file exists.
786         * posix/tst-gnuglob.c (find_file): Handle leading "./".  Fix
787         recognition of files.
789 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
791         * time/tzfile.c (tzfile_mtime): New variable.
792         (__tzfile_read): Reread the file if mtime is different.
794 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
796         * sysdeps/alpha/fpu/bits/mathinline.h (__fdimf, __fdim, fdimf, fdim):
797         Handle +inf/+inf.
798         * sysdeps/powerpc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
799         * sysdeps/sparc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
801 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
803         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use correct constant for
804         testing result of __nscd_get_map_ref.
806 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
808         * sysdeps/i386/fpu/s_fdim.S (__fdim): Handle +inf/+inf.
809         * sysdeps/i386/fpu/s_fdimf.S (__fdimf): Likewise.
810         * sysdeps/i386/fpu/s_fdiml.S (__fdiml): Likewise.
812 004-09-29  Ulrich Drepper  <drepper@redhat.com>
814         * grp/initgroups.c: Move compat_call implementation...
815         * grp/compat-initgroups.c: ...to here.  New file.
816         * grp/Makefile (distribute): Add compat-initgroups.c.
817         (CFLAGS-initgroups.c): Add -DUSE_NSCD=1.
818         * mscd/initgrcache.c: New file.
819         * nscd/nscd_initgroups.c: New file.
820         * nscd/Makefile (routines): Add nscd_initgroups.
821         (nscd-modules): Add initgrcache.
822         * nscd/cache.c (prune_cache): Add support for INITGROUPS entries.
823         * nscd/connections.c: Handle INITGROUPS requests.
824         * nscd/nscd-client.h: Define INITGROUPS, initgr_response_header.
825         Add initgrdata element to struct datahead.  Fix typo in comment.
826         * nscd/nscd_proto.h: Declare __nscd_getgrouplist.  Fix parameter
827         type in __nscd_getgrgrid_r.
828         * nscd/selinux.c (perms): Add INITGROUPS entry.
830         * nscd/nscd_getai.c: No need to include <sys/mman.h>.
832         * sunrpc/get_myaddr.c (get_myaddress): Account for interfaces without
833         assigned addresses.
834         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
835         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
836         * sunrpc/clnt_udp.c (is_network_up): Likewise.
838         * nscd/nscd.c: Define getaddrinfo hidden so that it is never found
839         outside.
841         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_segvflags):
842         Renamed from si_flags due to conflict with si_flags from <elf.h>.
844 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
846         * nscd/nscd_getai.c: Use NO_MAPPING instead of MAP_FAILED for test
847         of failing __nscd_get_map_ref.  Fix a few typos.
849         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Make sure
850         SIGSETXID is not blocked.
851         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Likewise.
852         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
853         * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise.
854         * sysdeps/generic/sigfillset.c (sigfillset): Don't set SIGSETXID.
856         * sunrpc/get_myaddr.c (get_myaddress): Fix test for failing
857         getifaddrs call.
858         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
859         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
860         * sunrpc/Makefile (xtests): Add tst-getmyaddr.
861         * sunrpc/tst-getmyaddr.c: New file.
863         * malloc/arena.c (ptmalloc_init): Allow MALLOC_CHECK_==0 to
864         disable all checking.
866         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_flags): Add
867         support to get this value.
869 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
871         * io/utime.h (utime): Allow second argument to be NULL.
873 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
875         * sysdeps/posix/getaddrinfo.c (gaih_inet): If NAME is a numerical IP
876         address and AI_CANONNAME is set, return copy of NAME as ai_canonname.
878 2004-09-27  Andreas Jaeger  <aj@suse.de>
880         * sysdeps/i386/dl-machine.h (elf_machine_rela_relative): Replace
881         static inline by auto inline, add always_inline attribute.
882         (elf_machine_rel): Likewise.
883         (elf_machine_rela): Likewise.
884         (elf_machine_lazy_rel): Likewise.
885         (elf_machine_lazy_rela): Likewise.
886         (elf_machine_rel_relative): Likewise.
888 2004-09-27  Ulrich Drepper  <drepper@redhat.com>
890         * sunrpc/xdr_intXX_t.c: Add xdr_quad_t and xdr_u_quad_t aliases.
891         * sunrpc/rpc/xdr.h: Declare xdr_quad_t and xdr_u_quad_t.
892         * sunrpc/rpc_parse.c (get_type): Use "quad_t" for TOK_HYPER.
893         Otherwise isvectordef will loop infinitely if typedef hyper int64_t
894         is seen.
895         (unsigned_dec): Use "u_quad_t" for similar reasons.
896         * sunrpc/Versions: Export xdr_quad_t and xdr_u_quad_t.
898 2004-09-27  Roland McGrath  <roland@redhat.com>
900         * sysdeps/generic/bits/waitstatus.h (__WIFSIGNALED): Simplify bit
901         twiddling in last change.
903         * posix/tst-waitid.c (do_test): Add tests for waitpid with WCONTINUED.
905         [BZ #409]
906         * posix/sys/wait.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
907         * stdlib/stdlib.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
908         * sysdeps/generic/bits/waitstatus.h (__W_CONTINUED): New macro.
909         [WCONTINUED] (__WIFCONTINUED): New macro.
910         (__WIFSIGNALED): Rewritten to exclude __W_CONTINUED value, and have no
911         branches.
913         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Add fifth argument to
914         all three syscall uses, not just one!
916 2004-09-26  Richard Henderson  <rth@redhat.com>
918         * sysdeps/alpha/alphaev6/memcpy.S: Mark .prologue.
919         * sysdeps/unix/alpha/sysdep.h (LEAF, ENTRY): Align entry points
920         to 16 byte boundaries.
922 2004-09-26  Ulrich Drepper  <drepper@redhat.com>
924         * elf/readlib.c (process_file): Before complaining about too-short
925         file, check that it potentially be an ELF file.  Also complain about
926         empty files.  [BZ #151].
928         * scripts/test-installation.pl: Fix ld.so recognition for new
929         LD_TRACE_LOADED_OBJECTS output format.
930         Patch by <jsberg04+computing.glibc@ftml.net>  [BZ #407].
932         * elf/dl-support.c (_dl_non_dynamic_init): Fix cleaning of
933         environment.  [BZ #384]
935         * sunrpc/clnt_udp.c (is_network_up): Use getifaddrs instead of ioctl.
936         * sunrpc/get_myaddr.c (get_myaddress): Likewise.
937         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
938         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.  Change interface
939         to avoid buffer overrun and remove now useless parameters.
940         (clnt_broadcast): Adjust caller.  [BZ #381].
942         * sysdeps/generic/s_fdim.c: Handle +inf/+inf
943         * sysdeps/generic/s_fdimf.c: Likewise.
944         * sysdeps/generic/s_fdiml.c: Likewise.
945         * sysdeps/i386/i686/fpu/s_fdim.S: Likewise.
946         * sysdeps/i386/i686/fpu/s_fdimf.S: Likewise.
947         * sysdeps/i386/i686/fpu/s_fdiml.S: Likewise.
948         * sysdeps/powerpc/fpu/s_fdim.c: Likewise.
949         * sysdeps/powerpc/fpu/s_fdimf.c: Likewise.
950         * sysdeps/x86_64/fpu/s_fdiml.S: Likewise.
951         * math/libm-test.inc (fdim_test): Add test case.  [BZ #376].
953         * sysdeps/generic/bits/types.h: Fix __SQUAD_TYPE and __UQUAD_TYPE
954         for compilers without __GLIBC_HAVE_LONG_LONG.  [BZ #362]
956         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Remove incorrect
957         requirement on socktype and protocol.
958         (gaih_inet): If numeric port number is given, return records for all
959         possible socket types.
960         * posix/tst-getaddrinfo2.c: New file.
961         * posix/Makefile (tests): Add tst-getaddrinfo2.  [BZ #358]
963 2004-09-25  Ulrich Drepper  <drepper@redhat.com>
965         * locale/loadlocale.c (_nl_intern_locale_data): Recognize LC_CTYPE
966         data where _nl_value_type_LC_CTYPE does not contain the type
967         information.  Add range checks.
968         Reported by John Lumby <johnlumby@hotmail.com> [BZ #356].
970         * libio/vasprintf.c (_IO_vasprintf): Fix condition to decide
971         whether to realloc or not.
972         Reported by Pavel Kankovsky <peak@argo.troja.mff.cuni.cz> [BZ #346].
974         * intl/dcigettext.c (DCIGETTEXT): Protect tfind/tsearch calls.
975         * intl/dcigettext.c (_nl_find_msg): Call _nl_load_domain also if
976         decided < 0.
977         * intl/finddomain.c (_nl_find_domain): Likewise.
978         * intl/loadmsgcat.c (_nl_load_domain): Set decided to 1 only once we
979         are done.  First set to -1 to signal initialization is ongoing.
980         Protect against concurrent callers with recursive lock.
981         * intl/finddomain.c (_nl_find_domain): Protect calls to
982         _nl_make_l10nflist.  [BZ #322]
984         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If determinination of
985         source address fails, initialized source_addr_len field so that
986         duplicate address recognition does not copy junk.
988 2004-09-25  Jakub Jelinek  <jakub@redhat.com>
990         * sysdeps/unix/sysv/linux/i386/setuid.c (__setuid): Remove second
991         result declaration.
993 2004-09-22  Andreas Schwab  <schwab@suse.de>
995         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Adjust whitespace.
997 2004-09-24  Ulrich Drepper  <drepper@redhat.com>
999         * misc/daemon.c (daemon): Don't succeed if /dev/null cannot be
1000         opened.
1002         * nis/ypclnt.c (do_ypcall): Add one missing unlock.  Simplify the
1003         code a bit.
1005         * misc/daemon.c (daemon): Define errno in case /dev/null is not
1006         the correct device.
1008         * nis/ypclnt.c (yp_bind_file): Optimize a bit.  Minimal cleanups.
1010 2004-09-23  Andreas Jaeger  <aj@suse.de>
1012         * locale/weight.h (findidx): Remove static, it's not supported
1013         anymore with GCC 4.0 in a block scope.
1014         * locale/weightwc.h (findidx): Likewise.
1015         * posix/regcomp.c (seek_collating_symbol_entry): Likewise.
1016         (lookup_collation_sequence_value): Likewise.
1017         (build_range_exp): Likewise.
1018         (build_collating_symbol): Likewise.
1019         * iconv/iconvconfig.c (write_output): Likewise.
1020         * elf/do-rel.h (elf_dynamic_do_rel): Likewise.
1022         * sysdeps/x86_64/dl-machine.h (elf_machine_rela_relative): Remove
1023         static, add always_inline attribute.
1024         (elf_machine_rela): Likewise.
1025         (elf_machine_lazy_rel): Likewise.
1027         * elf/dynamic-link.h (elf_get_dynamic_info): Make static dependend
1028         on !RESOLVE so that it's not defined in local scope.
1030 2004-09-23  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1032         * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL_NCS): Define.
1034 2004-09-23  Thorsten Kukuk  <kukuk@suse.de>
1036         * sysdeps/unix/sysv/linux/sys/mount.h: Sync MS_RMT_MASK flag
1037         and BLK* ioctls with linux kernel headers.
1039 2004-09-23  Ulrich Drepper  <drepper@redhat.com>
1041         * sysdeps/generic/bits/dlfcn.h: Add RTLD_DEEPBIND.
1042         * elf/dl-object.c (_dl_new_object): Add new parameter mode.  If mode
1043         has RTLD_DEEPBIND set add local searchlist before global scope.
1044         * sysdeps/generic/ldsodefs.h (_dl_new_object): Adjust prototype.
1045         * elf/rtld.c: Adjust callers of _dl_new_object.
1046         * elf/dl-load.c: Likewise.
1047         (_dl_map_object_from_fd): If RTLD_DEEPBIND is used, don't do anything
1048         for DF_SYMBOLIC.
1049         * elf/dl-open.c (dl_open_writer): Pass RTLD_DEEPBIND flag on to
1050         _dl_map_object_deps.
1051         * elf/tst-deep1.c: New file.
1052         * elf/tst-deep1mod1.c: New file.
1053         * elf/tst-deep1mod2.c: New file.
1054         * elf/tst-deep1mod3.c: New file.
1055         * elf/Makefile: Add rules to build and run new tests.
1057         * elf/dl-deps.c: Pretty printing.
1059 2004-09-23  Jakub Jelinek  <jakub@redhat.com>
1061         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
1062         argument to numbers from syscall names.
1063         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
1064         (INTERNAL_SYSCALL_NCS): Renamed from...
1065         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
1066         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
1067         (INTERNAL_SYSCALL_NCS): Define.
1068         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
1069         (INTERNAL_SYSCALL_NCS): Likewise.
1070         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
1071         Change name argument to numbers from syscall names.
1072         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
1073         (INTERNAL_SYSCALL_NCS): Define.
1075 2004-09-22  Ulrich Drepper  <drepper@redhat.com>
1077         * malloc/malloc.c (malloc_printerr): Use syslog if writev failed.
1079         * string/string.h: Add __nonnull annotations.
1080         * stdlib/stdlib.h: Likewise.
1082 2004-09-20  H.J. Lu  <hongjiu.lu@intel.com>
1084         * sysdeps/unix/sysv/linux/ia64/sysdep.h (DO_INLINE_SYSCALL):
1085         Renamed to ...
1086         (DO_INLINE_SYSCALL_NCS): This.
1087         (DO_INLINE_SYSCALL): New.
1088         (INLINE_SYSCALL): Updated.
1089         (INTERNAL_SYSCALL_NCS): Updated.
1091 2004-09-21  Ulrich Drepper  <drepper@redhat.com>
1093         * elf/sprof.c (load_shobj): Add support for reading symbol table
1094         from debuginfo file.
1096         * elf/ldd.bash.in: Fix syntax errors.
1098 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
1100         * sysdeps/unix/sysv/linux/dl-execstack.c
1101         (_dl_make_stack_executable): Remove some duplication.
1103         * nscd/nscd.c (options): Mark S option as hidden.
1104         (parse_opt): When S option is used, print warning message.
1105         * nscd/grpcache.c (adgrptbyX): Don't handle secure mode.
1106         * nscd/hstcache.c (addhstbyX): Don't handle secure mode.
1107         * nscd/aicache.c (addhstaiX): Don't handle secure mode.
1108         * nscd/pwdcache.c (addpwbyX): Don't handle secure mode.
1110 2004-09-20  Roland McGrath  <roland@frob.com>
1112         * elf/dl-load.c (__stack_prot): Only use PROT_GROWSUP/PROT_GROWSDOWN
1113         in initializer #if defined.
1115 2004-09-18  Paul Eggert  <eggert@cs.ucla.edu>
1117         [BZ #391]
1118         * stdlib/getsubopt.c: Merge fixes from gnulib.
1119         (__strchrnul) [!_LIBC]: Define and include "strchrnul.c".
1120         (getsubopt): Use prototypes, not K&R style.
1121         Fix bug: memcmp(A,B,N) was being invoked on a memory block B
1122         whose size might be smaller than N.  Use strncmp to avoid the bug.
1124 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
1126         * configure.in: If selinux has not explictly been requested, don't
1127         comment on it missing.
1129         * elf/dl-load.c: Define __stack_prot.
1130         * sysdeps/unix/sysv/linux/dl-execstack.c: Don't define
1131         __stack_prot here, just declare it.
1133 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
1135         * configure.in (libc_cv_z_relro): Only set to yes if linker script
1136         contains DATA_SEGMENT_RELRO_END.
1138 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
1140         * elf/dl-load.c (_dl_map_object_from_fd): Add some error checking.
1141         Reorder code slightly.
1142         * elf/rtld.c (dl_main): No need to check whether l_info[DT_HASH]
1143         is non-null, _dl_setup_hash will do that.
1145 2004-09-19  Ulrich Drepper  <drepper@redhat.com>
1147         * sysdeps/unix/sysv/linux/setegid.c [HAVE_PTR__NPTL_SETXID]: Call
1148         callback to set IDs in all other threads as well.
1149         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
1150         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
1151         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
1152         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
1153         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
1154         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1155         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1156         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1157         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1158         * sysdeps/unix/sysv/linux/setuid.c: New file.
1159         * sysdeps/unix/sysv/linux/setgid.c: New file.
1160         * sysdeps/unix/sysv/linux/setreuid.c: New file.
1161         * sysdeps/unix/sysv/linux/setregid.c: New file.
1162         * sysdeps/unix/sysv/linux/setresuid.c: New file.
1163         * sysdeps/unix/sysv/linux/setresgid.c: New file.
1164         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NCS.
1165         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
1166         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
1167         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
1168         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
1169         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c: Use x86 version.
1170         * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c: Likewise.
1171         * sysdeps/unix/sysv/linux/sparc/sparc32/setresgid.c: New file.
1172         * sysdeps/unix/sysv/linux/sparc/sparc32/setresuid.c: New file.
1173         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove setresgid
1174         and setresuid.
1175         * nscd/aicache.c: Use pthread_seteuid_np instead of seteuid.
1176         * nscd/grpcache.c: Likewise.
1177         * nscd/hstcache.c: Likewise.
1178         * nscd/pwdcache.c: Likewise.
1180         * resolv/res_mkquery.c (res_nmkquery): Fix typo.
1182 2004-09-18  Ulrich Drepper  <drepper@redhat.com>
1184         * sysdeps/unisx/sysv/linux/dl-execstack.c: Get protection flag
1185         from memory.
1186         * elf/dl-load.c (_dl_map_object_from_fd): Add PROT_EXEC flag to
1187         __stack_flags.
1189         * sysdeps/posix/getaddrinfo.c (gaih_inet): Do not use
1190         gethostbyname3_r if we are not looking for the canonical name.
1192         * resolv/res_mkquery.c (res_nmkquery): Randomize request ID every
1193         time.
1195 2004-09-18  Roland McGrath  <roland@redhat.com>
1197         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Pass fifth argument to
1198         system call.
1200 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1202         * include/link.h (struct link_map): Add l_used element.
1203         * sysdeps/generic/ldsodefs.h: Define DL_DEBUG_UNUSED.
1204         * elf/rtld.c (process_dl_debug): Recognize unused.
1205         (dl_main): When unused debug flag is set check for unused direct
1206         dependencies.
1207         When printing dependencies and SONAME starts with /, omit the SONAME =>
1208         part.
1209         * elf/dl-lookup.c (_dl_lookup_symbol_x): Mark object in which the
1210         symbol has been found as used.
1211         * elf/ldd.bash.in: Add -u option.
1213 2004-09-18  Jakub Jelinek  <jakub@redhat.com>
1215         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
1216         Do nothing if __NR_set_tid_address is not defined.  [BZ #390]
1218 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1220         * sysdeps/posix/getaddrinfo.c: Use gethostbyname3_r NSS function
1221         in case it is available.
1223 2004-09-17  Jakub Jelinek  <jakub@redhat.com>
1225         * nscd/nscd.c (parse_opt): Write arg string instead of (void *)
1226         key to the socket.
1228 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1230         * misc/sys/cdefs.h: Define __nonnull using nonnull function attribute
1231         for gcc 3.3 and higher.
1232         * io/fcntl.h: Add __nonnull where appropriate.
1233         * io/ftw.h: Likewise.
1234         * io/utime.h: Likewise.
1235         * io/sys/poll.h: Likewise.
1236         * io/sys/sendfile.h: Likewise.
1237         * io/sys/stat.h: Likewise.
1238         * io/sys/statfs.h: Likewise.
1239         * io/sys/statvfs.h: Likewise.
1240         * posix/unistd.h: Likewise.
1241         * catgets/nl_types.h: Likewise.
1242         * crypt/crypt.h: Likewise.
1243         * debug/execinfo.h: Likewise.
1245 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
1247         * posix/glob.h: Remove cruft to make header usable outside glibc.
1248         The maintenance headache is too big.
1250         * configure.in: Add test for required SELinux features.
1251         * config.make.in: Add have-selinux entry.
1252         * config.h.in: Add HAVE_SELINUX entry.
1253         * nscd/Makefile (nscd-modules): Add selinux.
1254         (CFLAGS-selinux.c): Add -fpie.
1255         Define selinux-LIBS and use in link line.
1256         * nscd/connections.c (handle_request): Check access SELinux permissions
1257         before processing request.
1258         * nscd/nscd.c (main): Initialize selinux_enabled and stop avc thread.
1259         * nscd/nscd_stat.c: Transmit and print AVC statistics.
1260         * nscd/selinux.c: New file.
1261         * nscd/selinux.h: New file.
1262         Patch mostly by Matthew Rickard <mjricka@epoch.ncsc.mil>.
1264 2004-09-16  Jakub Jelinek  <jakub@redhat.com>
1266         * nscd/nscd_helper.c (__nscd_unmap, get_mapping): Use __munmap
1267         instead of munmap.
1269         * nscd/Makefile (CFLAGS-aicache.c): Set to -fpie.
1271 2004-09-16  Thorsten Kukuk  <kukuk@suse.de>
1273         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check
1274         __nss_not_use_nscd_hosts variable if nscd should be used or not.
1276 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
1278         * nscd/nscd_proto.h: Define NSS_NSCD_RETRY.
1279         Add __nscd_getai prototype.
1280         * nss/getXXbyYY_r.c: Remode definition of NSS_NSCD_RETRY.
1281         * nscd/nscd-client.h: Remove __nscd_getai prototype.
1282         * nscd/nscd_getai.c: Include nscd_proto.h.
1284         * elf/ldd.bash.in: Add support for SELinux environments.
1285         Patch by Stephen Smalley <sds@epoch.ncsc.mil>.
1287 2004-09-16  Roland McGrath  <roland@redhat.com>
1289         * configure.in (--with-headers): Let argument contain a : separated
1290         list of directories to use, not just one.
1291         * configure: Regenerated.
1293 2004-09-15  Richard Henderson  <rth@redhat.com>
1295         * sysdeps/alpha/fpu/libm-test-ulps: Update.
1296         * scripts/data/c++-types-alpha-linux-gnu.data: New file.
1298 2004-09-15  Ulrich Drepper  <drepper@redhat.com>
1300         * nscd/aicache.c: Prefer using gethostbyname3_r NSS callback to also
1301         get ttl and canonical name.  Use these two values.
1302         * resolv/Versions: Export _nss_dns_gethostbyname3_r from libnss_dns.
1303         * resolv/nss_dns/dns-host.c (getanswer_r): Take two new parameters.
1304         If nonnull fill with TTL and pointer to canonical name respectively.
1305         (_nss_dns_gethostbyaddr_r): Pass NULL in new parameters of getanswer_r.
1306         (_nss_dns_gethostbyname2_r): Just wrapper around
1307         _nss_dns_gethostbyname3_r.
1308         (_nss_dns_gethostbyname3_r): Renamed from _nss_dns_gethostbyname2_r.
1309         Take two new parameters which as passed to getanswer_r.
1311         * nscd/Makefile (rountines): Add nscd_getai.
1312         (nscd-modules): Add aicache.
1313         * nscd/aicache.c: New file.
1314         * nscd/nscd_getai.c: New file.
1315         * nscd/cache.c (prune_cache): Handle GETAI request type.
1316         * nscd/connections.c: Add GETAI support in request handling.
1317         * nscd/nscd-client.h (request_type): Add GETAI.
1318         Define ai_response_header and struct nscd_ai_result types.
1319         (struct datahead): Add aidata field.
1320         Declare __nscd_getai.
1321         * nscd/nscd.c: Add getaddrinfo definition to catch problems.
1322         * nscd/nscd.h: Declare addhstai and readdhstai.
1324         * sysdeps/posix/getaddrinfo.c: Add support for using cached results.
1325         * posix/Makefile (CFLAGS-getaddrinfo.c): Add -DUSE_NSCD.
1327         * nscd/nscd-client.h  (struct datahead): Use uint8_t instead of bool.
1329 2004-09-14  Ulrich Drepper  <drepper@redhat.com>
1331         * misc/sys/cdefs.h: Remove debugging text from __P and __PMT.
1333 2004-09-13  Ulrich Drepper  <drepper@redhat.com>
1335         * misc/sys/cdefs.h: Restore old definition of __P.
1336         * csu/munch.awk: Remove uses of __P and __PMT.
1337         * gmon/gmon.c: Likewise.
1338         * hesiod/hesiod.h: Likewise.
1339         * include/stdio.h: Likewise.
1340         * io/fts.c: Likewise.
1341         * libio/genops.c: Likewise.
1342         * libio/libioP.h: Likewise.
1343         * libio/fileops.c: Likewise.
1344         * libio/iolibio.h: Likewise.
1345         * libio/libio.h: Likewise.
1346         * libio/memstream.c: Likewise.
1347         * libio/oldfileops.c: Likewise.
1348         * libio/oldstdfiles.c: Likewise.
1349         * libio/iopopen.c: Likewise.
1350         * libio/vsnprintf.c: Likewise.
1351         * libio/vswprintf.c: Likewise.
1352         * libio/wgenops.c: Likewise.
1353         * libio/oldiopopen.c: Likewise.
1354         * locale/programs/xmalloc.c: Likewise.
1355         * locale/programs/xstrdup.c: Likewise.
1356         * malloc/mtrace.c: Likewise.
1357         * misc/getttyent.c: Likewise.
1358         * misc/getusershell.c: Likewise.
1359         * nis/rpcsvc/ypupd.h: Likewise.
1360         * posix/fnmatch.h: Likewise.
1361         * posix/glob.h: Likewise.
1362         * resolv/arpa/nameser.h: Likewise.
1363         * resolv/gethnamaddr.c: Likewise.
1364         * resolv/resolv.h: Likewise.
1365         * resolv/inet_net_ntop.c: Likewise.
1366         * resolv/inet_net_pton.c: Likewise.
1367         * resolv/res_init.c: Likewise.
1368         * resolv/nss_dns/dns-network.c: Likewise.
1369         * stdio-common/vfprintf.c: Likewise.
1370         * stdio-common/reg-printf.c: Likewise.
1371         * sysdeps/generic/chflags.c: Likewise.
1372         * sysdeps/generic/fchflags.c: Likewise.
1373         * sysdeps/generic/glob.c: Likewise.
1374         * sysdeps/generic/printf_fphex.c: Likewise.
1375         * sysdeps/generic/memcmp.c: Likewise.
1376         * sysdeps/generic/memcopy.h: Likewise.
1377         * sysdeps/generic/morecore.c: Likewise.
1378         * sysdeps/generic/sstk.c: Likewise.
1379         * sysdeps/posix/sigvec.c: Likewise.
1380         * sysdeps/posix/ttyname_r.c: Likewise.
1381         * sysdeps/standalone/arm/bits/errno.h: Likewise.
1382         * sysdeps/standalone/standalone.h: Likewise.
1383         * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise.
1384         * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
1385         * sysdeps/unix/arm/start.c: Likewise.
1386         * sysdeps/unix/bsd/sigaction.c: Likewise.
1387         * sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise.
1388         * sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise.
1389         * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise.
1390         * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise.
1391         * sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise.
1392         * sysdeps/unix/sparc/start.c: Likewise.
1393         * sysdeps/unix/sysv/getdents.c: Likewise.
1394         * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise.
1395         * sysdeps/unix/sysv/irix4/getgroups.c: Likewise.
1396         * sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
1397         * sysdeps/unix/sysv/irix4/getrusage.c: Likewise.
1398         * sysdeps/unix/sysv/irix4/pathconf.c: Likewise.
1399         * sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
1400         * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise.
1401         * sysdeps/unix/sysv/irix4/start.c: Likewise.
1402         * sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
1403         * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise.
1404         * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise.
1405         * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
1406         * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise.
1407         * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
1408         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
1409         * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise.
1410         * sysdeps/unix/sysv/sysv4/setsid.c: Likewise.
1411         * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
1412         * sysdeps/unix/sysv/sysv4/waitpid.c: Likewise.
1413         * sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise.
1414         * time/tzset.c: Likewise.
1415         * time/strftime_l.c: Likewise.
1416         * time/strptime_l.c: Likewise.
1417         * crypt/md5.h: Likewise.
1419 2004-09-13  Andreas Jaeger  <aj@suse.de>
1421         * configure.in: Support GCC 4.x.
1422         * configure: Regenerated.
1424 2004-09-13  Thorsten Kukuk  <kukuk@suse.de>
1426         * nscd/nscd_stat.c: Don't access dbs[cnt].head for disabled services.
1428         * nscd/nscd.init: Fix path to socket.
1430 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
1432         * nscd/nscd_helper.c (get_mapping): Correctly check cmsg length.
1433         Avoid file descriptor leak in case of size mismatch.
1435         * nscd/nscd-client.h: Fix database structure layout for biarch.
1436         * nscd/mem.c (gc): Add casts to avoid warnings.
1438         * nss/getent.c: Don't preconstruct help message.  Do it only when
1439         needed.
1441         * locale/programs/locale.c: Simplify help message printing.
1443 2004-09-12  Roland McGrath  <roland@frob.com>
1445         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]: Add decls
1446         missing in last change.
1448 2004-09-11  Thorsten Kukuk  <kukuk@suse.de>
1450         * nis/nss_compat/compat-grp.c: Check that buflen is greater zero
1451         before writing data into the buffer with negative offset.
1452         * nis/nss_compat/compat-initgroups.c: Likewise.
1453         * nis/nss_compat/compat-pwd.c: Likewise.
1454         * nis/nss_compat/compat-spwd.c Likewise.
1456 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
1458         * misc/syslog.c (vsyslog): Fix copying of PID in case of
1459         out-of-memory situation.  [BZ #365].
1461         * sysdeps/alpha/fpu/bits/mathinline.h: Use __NTH instead of
1462         __THROW in inline function definitions.
1464         * posix/spawn.h [__USE_GNU]: Define POSIX_SPAWN_USEVFORK.
1465         * posix/spawnattr_setflags.c: Check whether any unknown bit is set
1466         in FLAGS parameter and fail if this is the case.
1467         * sysdeps/posix/spawni.c: Use vfork if POSIX_SPAWN_USEVFORK flag is
1468         set.
1470         * nscd/pwdcache.c (cache_addpw): Sync also negative results to disk.
1471         * nscd/grpcache.c (cache_addgr): Likewise.
1472         * nscd/hstcache.c (cache_addhst): Likewise.
1474 2004-09-11  Roland McGrath  <roland@frob.com>
1476         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]:
1477         Set _dl_phdr and _dl_phnum.
1478         (init1): When bootstrap task, bail early and never examine *D.
1480 2004-09-11  Alfred M. Szmidt  <ams@kemisten.nu>
1482         * sysdeps/mach/hurd/i386/tls.h (__i386_set_gdt) [!HAVE_I386_SET_GDT]:
1483         Cast THR, SEL and DESC to `void'.
1485 2004-09-11  Ulrich Drepper  <drepper@redhat.com>
1487         * nscd/connections.c (nscd_run): Call setup_thread only for enabled
1488         databases.
1490         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Use __NTH for __cmsg_nxthdr.
1492 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
1494         * nscd/nscd.c (pagesize_m1): New variable.
1495         (main): Initialize it.
1496         * nscd/nscd.h: Declare pagesize_m1.
1497         * nscd/hstcache.c: Pass correctly aligned address to msync.
1498         * nscd/grpcache.c: Likewise.
1499         * nscd/pwdcache.c: Likewise.
1501 2004-09-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1503         * sysdeps/unix/sysv/linux/sh/pthread_cond_wait.S: Decrement
1504         __nwaiters.  If pthread_cond_destroy has been called and this is
1505         the last waiter, signal pthread_cond_destroy caller and avoid
1506         using the pthread_cond_t structure after unlock.
1507         * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise.
1509 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
1511         * sysdeps/unix/sysv/linux/kernel-features.h: Don't define
1512         __ASSUME_CLONE_STOPPED.
1514 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
1516         * misc/sys/cdefs.h (__REDIRECT_NTH): Change order of __THROW and
1517         __asm__ for C++.  [BZ #377]
1519 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
1521         * nscd/nscd_stat.c: Improve output by also printing .shared and
1522         .persistent.
1524         * nscd/connections.c: Allow cache sharing to be really disabled.
1526 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
1528         * malloc/malloc.c (_int_free): Only do arena boundary check for
1529         contiguous arenas.
1531 2004-09-10  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
1533         * stdlib/longlong.h [__M32R__] (add_ssaaaa, sub_ddmmss): Fix broken
1534         instruct operands.
1535         * elf/elf.h: Add R_M32R_* relocs.
1537 2004-09-09  Ulrich Drepper  <drepper@redhat.com>
1539         * misc/sys/cdefs.h: Despite what the gcc manual says, gcc 3.2
1540         seems not to support the nothrow attribute.  Use it only for gcc
1541         3.3 and higher.
1543         * malloc/hooks.c (top_check): Print top chunk corruption as normal
1544         error message.
1546         * malloc/malloc.c (malloc_printerr): Don't make informational
1547         message look like error message.
1549 2004-09-09  Andreas Jaeger  <aj@suse.de>
1551         * nscd/Makefile (CFLAGS-nscd_setup_thread.c): Set to -fpie.
1553 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1555         * sysdeps/unix/sysv/linux/bits/socket.h (__SCM_CONNECT): Removed.
1557         * malloc/malloc.c (_int_free): Add inexpensive double free and
1558         memory corruption tests.
1559         (malloc_printf_nc): Renamed to malloc_printerr.  Second parameter
1560         is no format string anymore.  Don't use stdio.  Adjust all callers.
1561         * malloc/hooks.c: Adjust malloc_printf_nc callers.
1563 2004-09-08  Roland McGrath  <roland@redhat.com>
1565         * malloc/mcheck.c: Don't use __P.
1566         Use prototypes definitions for static functions.
1568 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1570         * sysdeps/ia64/fpu/bits/mathinline.h: Use __NTH instead of __THROW.
1572 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1573             Jakub Jelinek  <jakub@redhat.com>
1575         * nscd/nscd-client.h: Add a few #includes.
1577         * nscd/Makefile (nscd-modules): Add nscd_setup_thread.
1578         * nscd/connections.c (nscd_run): Call setup_thread for maintenance
1579         threads.
1580         * nscd/nscd-client.h (struct database_pers_head): Add
1581         nscd_certainly_running field.
1582         * nscd/nscd.h: Declare setup_thread.
1583         * nscd/nscd_helper.c (__nscd_get_map_ref): Avoid the time test if
1584         nscd_certainly_running is nonzero.
1585         * sysdeps/generic/nscd_setup_thread.c: New file.
1586         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: New file.
1588 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1590         * nscd/connections.c: Implement r/o sharing of nscd's cache with client
1591         processes via shared memory.
1592         * nscd/nscd-client.h: Likewise.
1593         * nscd/nscd.h: Likewise.
1594         * nscd/nscd_conf.c: Likewise.
1595         * nscd/nscd_getgr_r.c: Likewise.
1596         * nscd/nscd_getpw_r.c: Likewise.
1597         * nscd/nscd_gethst_r.c: Likewise.
1598         * nscd/nscd.conf: Add new config parameters.
1599         * nscd/Makefile (aux): Add nscd_helper.
1600         * nscd/nscd_helper.c: New file.
1601         * nscd/mem.c (gc): Indicate beginning and end of the gc cycle.
1603         * nscd/hstcache.c: Simplify a lot.  We cache only the request itself,
1604         no derived information.
1605         * connections.c (nscd_init): Fix bug in testing size of the persistent.
1607         * nis/Makefile (aux): Add nis_hash.
1608         * nis/nis_hash.c: New file.  Split out from nis_util.c.
1609         * nis/nis_util.c: Move __nis_hash code in separate file.
1611         * csu/tst-atomic.c: Improve atomic_increment_val test which would
1612         not have found a ppc bug.
1614         * sysdeps/s390/fpu/bits/mathinline.h: Remove unnecessary includes.
1616         * malloc/arena.c: Remove __MALLOC_P uses.
1617         * malloc/malloc.c: Likewise.
1619         * malloc/mtrace.c: Remove __P uses.
1620         * malloc/mcheck-init.c: Likewise.
1622 2004-09-07  Jakub Jelinek  <jakub@redhat.com>
1624         * sysdeps/powerpc/powerpc64/configure.in: New file.
1625         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
1626         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
1627         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
1628         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
1629         BODY_PREFIX): Define.
1630         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
1631         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
1632         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
1633         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
1634         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
1636 2004-09-07  Ulrich Drepper  <drepper@redhat.com>
1638         * malloc/malloc.h: Don't define __THROW if it is already defined.
1640         * sysdeps/powerpc/bits/atomic.h (atomic_increment): Define.
1641         (atomic_decrement): Define.
1643         * sysdeps/powerpc/bits/atomic.h: Implement atomic_increment_val and
1644         atomic_decrement_val.
1645         * sysdeps/powerpc/powerpc32/bits/atomic.h: Likewise.
1646         * sysdeps/powerpc/powerpc64/bits/atomic.h: Likewise.
1648         * csu/tst-atomic.c (do_test): Add tests of atomic_increment_val
1649         and atomic_decrement_val.
1651         * include/atomic.h: Define atomic_increment_val, atomic_decrement_val,
1652         and atomic_delay is not already defined.
1653         * sysdeps/i386/i486/bits/atomic.h: Define atomic_delay.
1654         * sysdeps/x86_64/bits/atomic.h: Likewise.
1656         * miscd/sys/cdefs.h (__NTH): New macro.
1657         (__THROW): Define using nothrow attribute for C code and gcc >= 3.2.
1658         (__REDIRECT_NTH): New macro.
1659         * argp/argp.h: Use __NTH and __REDIRECT_NTH where necessary.
1660         * ctype/ctype.h: Likewise.
1661         * dirent/dirent.h: Likewise.
1662         * io/fcntl.h: Likewise.
1663         * io/sys/sendfile.h: Likewise.
1664         * io/sys/stat.h: Likewise.
1665         * io/sys/statfs.h: Likewise.
1666         * io/sys/statvfs.h: Likewise.
1667         * libio/bits/stdio.h: Likewise.
1668         * misc/sys/mman.h: Likewise.
1669         * posix/unistd.h: Likewise.
1670         * resource/sys/resource.h: Likewise.
1671         * rt/aio.h: Likewise.
1672         * signal/signal.h: Likewise.
1673         * stdlib/stdlib.h: Likewise.
1674         * string/argz.h: Likewise.
1675         * string/string.h: Likewise.
1676         * sysdeps/generic/inttypes.h: Likewise.
1677         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
1678         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
1679         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
1680         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
1681         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
1682         * sysdeps/unix/sysv/linux/bits/sys/sysmacros.h: Likewise.
1683         * wcsmbs/wchar.h: Likewise.
1685         * sysdeps/generic/glob.c: Use __PMT isntead of __P where appropriate.
1687         * resolv/gethnamaddr.c (getanswer): Remove __P use in variable
1688         definition.
1690         * io/sys/poll.h: Remove __THROW from poll prototype, it's a
1691         cancellation point.
1693         * io/fts.c (fts_open): Remove uses of __P.
1695         * include/stdlib.h: No need to use __THROW in this header.
1697 2004-09-06  Roland McGrath  <roland@frob.com>
1699         * sysdeps/mach/hurd/dl-sysdep.c (__writev): Does use assert on FD
1700         validity, since __assert_fail gets to here anyway.  Just fail.
1702 2004-09-06  Ulrich Drepper  <drepper@redhat.com>
1704         * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix problem with
1705         AF_UNSPEC lookup with AI_CANONNAME of name which has only IPv6
1706         addresses.
1708 2004-09-05  Richard Henderson  <rth@redhat.com>
1710         * sysdeps/alpha/fpu/fraiseexcpt.c: Remove file.
1711         * sysdeps/unix/sysv/linux/kernel-features.h
1712         (__ASSUME_IEEE_RAISE_EXCEPTION): New.
1713         * sysdeps/unix/sysv/linux/alpha/fraiseexcpt.c: New file.
1714         * sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h: New file.
1715         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use it.
1716         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
1718 2004-09-05  Richard Henderson  <rth@redhat.com>
1720         * sysdeps/alpha/div.S: Save and restore FPCR around fp operations.
1721         * sysdeps/alpha/divl.S, sysdeps/alpha/divq.S, sysdeps/alpha/divqu.S,
1722         sysdeps/alpha/ldiv.S, sysdeps/alpha/reml.S, sysdeps/alpha/remq.S,
1723         sysdeps/alpha/remqu.S: Likewise.
1724         * sysdeps/alpha/div_libc.h (FRAME): Increase to 64.
1726 2004-09-05  Ulrich Drepper  <drepper@redhat.com>
1728         * nscd/cache.c (cache_add): Correctly log GETHOSTBYADDR and
1729         GETHOSTBYADDRv6 requests.
1731 2004-09-04  Ulrich Drepper  <drepper@redhat.com>
1733         * nscd/pwdcache.c (cache_addpw): Use correct key length in
1734         cache_add calls.
1735         * nscd/grpcache.c (cache_addgr): Likewise.
1737 2004-09-03  Alfred M. Szmidt  <ams@kemisten.nu>
1739         * sysdeps/mach/hurd/i386/tls.h (THREAD_DTV): Changed type of _DTV
1740         to `dtv_t *'.
1742 2004-09-03  Ulrich Drepper  <drepper@redhat.com>
1744         * nscd/nscd.c (parse_opt): Use writev instead of two write for
1745         invalidate command.
1747 2004-09-02  Ulrich Drepper  <drepper@redhat.com>
1749         * nscd/connections.c (nscd_run): Check early for invalid request types.
1751 2004-09-02  Roland McGrath  <roland@frob.com>
1753         * sysdeps/mach/hurd/i386/tls.h (TLS_INIT_TP_EXPENSIVE): New macro.
1754         (INSTALL_NEW_DTV, THREAD_DTV): Rewritten to fetch the right word.
1755         (THREAD_SELF): New macro.
1757 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
1759         [BZ #357]
1760         * stdlib/tst-setcontext.c (test_stack): Added test for stack clobber.
1761         (main): Call test_stack.
1762         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
1763         (__getcontext): Push stack frame then save parms in local frame.
1764         Improve instruction scheduling.
1765         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
1766         (__swapcontext): Likewise.
1768 2004-09-01  Andreas Schwab  <schwab@suse.de>
1770         * sysdeps/unix/sysv/linux/ia64/sys/ucontext.h [g++ >= 3.5]: Use
1771         __builtin_offsetof.
1773 2004-09-01  Jakub Jelinek  <jakub@redhat.com>
1775         [BZ #361]
1776         * posix/fnmatch_loop.c (FCT): For backslash between brackets, branch
1777         to normal_bracket after fetching the next character.
1778         * posix/tst-fnmatch.input: Add 25 new tests.
1779         Reported by Markus Oberhumer <markus@oberhumer.com>.
1781 2004-09-01  Ulrich Drepper  <drepper@redhat.com>
1783         * elf/rtld.c (dl_main): First check existence of ld.so.preload
1784         with access.
1786 2004-09-01  Roland McGrath  <roland@redhat.com>
1788         * sysdeps/unix/sysv/linux/bits/waitflags.h
1789         (WSTOPPED, WEXITED, WCONTINUED, WNOWAIT): New macros.
1790         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_WAITID_SYSCALL):
1791         New macro.
1792         * sysdeps/unix/sysv/linux/waitid.c: New file.  Use new syscall when
1793         available, or fall back to the waitpid-based generic code.
1795 2004-08-14  Alfred M. Szmidt  <ams@kemisten.nu>
1797         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Let gcc
1798         clobber the `ebp' register.
1799         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Removed.
1800         Reverts change from 2004-05-07 by Jeroen Dekkers.
1802         * sysdeps/mach/hurd/i386/init-first.c (init): Changed the type of
1803         NEWSP from `void *' to `int *'.  Changed all casts accordingly.
1805 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
1807         * wcsmbs/wcsmbsload.c (__wcsmbs_getfct): Move attribute_hidden
1808         before return type.
1809         * locale/localename.c (__current_locale_name): Likewise.
1811 2004-08-30  Roland McGrath  <roland@frob.com>
1813         * scripts/extract-abilist.awk: If `lastversion' variable defined, omit
1814         later sets from output.
1815         * Makerules (check-abi): Pass option to set that with value of
1816         LIB-abi-frozen variable if one is set.
1818         * abilist/libcidn.abilist: New file (empty).
1820 2004-08-30  Jakub Jelinek  <jakub@redhat.com>
1822         * posix/bits/posix1_lim.h (_POSIX_CHILD_MAX, _POSIX_OPEN_MAX): If
1823         not __USE_XOPEN2K, use the Unix98 mandated values.
1825 2004-08-27  Roland McGrath  <roland@redhat.com>
1827         * configure.in (usetls): Default to yes.
1828         * configure: Regenerated.
1830 2004-08-26  Roland McGrath  <roland@redhat.com>
1832         * configure.in (add_ons_automatic): New variable, set to yes or no
1833         indicating --enable-add-ons with no explicit list.
1834         (running add-on fragments): Allow a fragment to modify $libc_add_on
1835         and have that affect its place in the list of add-ons to use.
1836         * configure: Regenerated.
1838 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
1840         * nscd/cache.c: Major rewrite.  The data is now optionally kept in
1841         a mmaped memory region which is automatically mirrored on disk.
1842         This implements persistent data storage.  The Memory handled
1843         needed to be completely revamped, it now uses a garbage collection
1844         mechanism instead of malloc.
1845         * nscd/connections.c: Likewise.
1846         * nscd/nscd.c: Likewise.
1847         * nscd/nscd.h: Likewise.
1848         * nscd/nscd_conf.c: Likewise.
1849         * nscd/nscd_stat.c: Likewise.
1850         * nscd/grpcache.c: Likewise.
1851         * nscd/hstcache.c:: Likewise.
1852         * nscd/pwdcache.c:: Likewise.
1853         * nscd/Makefile: Add rules to build mem.c.
1854         * nscd/mem.c: New file.
1855         * nscd/nscd.conf: Describe new configuration options.
1857 2004-08-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1859         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
1860         NO_SGIDEFS_H isn't defined.
1861         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
1862         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
1864         * sysdeps/unix/sysv/linux/sh/pread.c: Define NO_SGIDEFS_H and
1865         _MIPS_SIM.
1866         * sysdeps/unix/sysv/linux/sh/pwrite.c: Likewise.
1867         * sysdeps/unix/sysv/linux/sh/pread64.c: Likewise.
1868         * sysdeps/unix/sysv/linux/sh/pwrite64.c: Likewise.
1870 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
1872         * nscd/connections.c (nscd_run): atomic_increment was not missing.
1874         * sysdeps/gnu/Makefile (libdl-sysdep_routines): Don't add eval.
1875         Patch by Greg Schafer.
1877 2004-08-25  Richard Henderson  <rth@redhat.com>
1879         * sysdeps/alpha/elf/start.S (_start): Use $15 as frame unwind
1880         instead of $31.  Zero $15.
1881         * sysdeps/unix/sysv/linux/alpha/clone.S (thread_start): Likewise.
1883 2004-08-25  Ulrich Drepper  <drepper@redhat.com>
1885         * sysdeps/powerpc/powerpc64/bits/atomic.h
1886         (__arch_compare_and_exchange_bool_32_acq): Fix case where oldval
1887         is negative.
1888         (__arch_compare_and_exchange_bool_32_rel): Likewise.
1890         * nscd/connections.c: Make socket nonblocking so that threads
1891         don't get stuck on accept.  Fix locking.
1893         * nscd/grpcache.c (cache_addgr): Use copy of original key in hash
1894         entry with alternative key.
1895         * nscd/pwdcache.c (cache_addpw): Likewise.
1897 2004-08-25  Richard Sandiford  <rsandifo@redhat.com>
1899         * sysdeps/mips/dl-machine.h (_dl_start_user): Don't set
1900         __libc_stack_end.
1902 2004-08-23  Ulrich Drepper  <drepper@redhat.com>
1904         * sysdeps/gnu/netinet/udp.h: Cosmetic changes.  Remove unnecessary
1905         __BEGIN_DECLS/__END_DECLS.
1907 2004-08-23  Andreas Jaeger  <aj@suse.de>
1909         [BZ #341]
1910         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_NOATIME): Define.
1911         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (O_NOATIME): Likewise.
1912         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (O_NOATIME): Likewise.
1913         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (O_NOATIME): Likewise.
1914         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (O_NOATIME): Likewise.
1915         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_NOATIME): Likewise.
1916         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (O_NOATIME): Likewise.
1917         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (O_NOATIME): Likewise.
1918         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_NOATIME): Likewise.
1919         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (O_NOATIME): Likewise.
1920         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (O_NOATIME): Likewise.
1921         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_NOATIME): Likewise.
1922         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (O_NOATIME): Likewise.
1924 2004-08-21  Ulrich Drepper  <drepper@redhat.com>
1926         * malloc/hooks.c (DEFAULT_CHECK_ACTION): Moved to malloc.c.
1927         (check_action): Likewise.
1928         When printing error messages, use malloc_printf_nc now instead of
1929         fiddling with the streams cancellation flag in every place.
1930         * malloc/malloc.c (DEFAULT_CHECK_ACTION): New definition.  Change
1931         default to 3.
1932         (check_action): New variable.
1933         (unlink): Print error message and eventually terminate in case list
1934         is corrupted.
1935         (malloc_printf_nc): New function.  Use it in _int_free.
1936         Change proposed by Arjan van de Ven.
1938         * dlfcn/Makefile: Don't build eval.c anymore.
1940 2004-08-20  Roland McGrath  <roland@frob.com>
1942         * csu/Makefile ($(objpfx)version-info.h): Use printf in place
1943         of echo -e for POSIX.2 portability.
1944         Reported by Paul Jarc <prj@po.cwru.edu>.
1946 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
1948         * sysdeps/posix/getaddrinfo.c (gaih_inet): Minor optimizations in
1949         list generation.
1951         * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't use
1952         getcanonname_r function if AI_CANONNAME flag is not set in
1953         request.
1955         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss):
1956         Initialize mysize with limits only if latter is >= 0.  Use mysize
1957         in malloc call.
1959 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
1961         * sysdeps/posix/getaddrinfo.c (gaih_inet): Cast canon to (char *)
1962         to avoid warning.
1964         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Initialize
1965         status to NSS_STATUS_UNAVAIL.
1967 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
1969         * sysdeps/posix/getaddrinfo.c (gaih_inet): Use h->h_name in the
1970         cannoname lookup since it has the FQDN even if the original NAME
1971         value has not.
1973 2004-08-18  Ulrich Drepper  <drepper@redhat.com>
1975         * sysdeps/posix/getaddrinfo.c (gaih_inet): Store NAME parameter
1976         pointer in new variable ORIG_NAME and use this pointer when
1977         determination of canonical name failed, not the possibly IDN
1978         translated value of NAME.
1980 2004-08-17  Ulrich Drepper  <drepper@redhat.com>
1982         * resolv/resolv.h (RES_DEFAULT): Add RES_NOIP6DOTINT.
1983         * resolv/res_init.c (res_setoptions): Recognize ip6-dotint option.
1984         Reset RES_NOIP6DOTINT flag in this case..
1986         * sysdeps/posix/getaddrinfo.c: Fix memory handling of
1987         ai_canonname.
1989 2004-08-16  Ulrich Drepper  <drepper@redhat.com>
1991         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Don't use
1992         CNAME records, we better follow the chain of CNAME records which
1993         can be accomplished with A/AAAA lookups.
1995 2004-08-15  Roland McGrath  <roland@redhat.com>
1997         * sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who):
1998         Remove __RUSAGE_BOTH constant and RUSAGE_BOTH macro.
1999         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2000         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
2001         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2003 2004-08-15  Roland McGrath  <roland@frob.com>
2005         * sysdeps/i386/i686/Makefile (elide-routines.os): Append hp-timing to
2006         this, not ...
2007         (static-only-routines): ... this.
2008         * sysdeps/ia64/Makefile: Likewise.
2009         * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
2010         * sysdeps/sparc/sparc64/Makefile: Likewise.
2011         * sysdeps/x86_64/Makefile: Likewise.
2012         * sysdeps/i386/i686/hp-timing.c: Revert copyright terms change.
2013         * sysdeps/ia64/hp-timing.c: Likewise.
2014         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
2015         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
2017         * csu/elf-init.c: Update copyright terms including special exception
2018         for these trivial files, which are statically linked into executables
2019         that use dynamic linking for the significant library code.
2020         * io/fstat.c: Likewise.
2021         * io/fstat64.c: Likewise.
2022         * io/lstat.c: Likewise.
2023         * io/lstat64.c: Likewise.
2024         * io/stat.c: Likewise.
2025         * io/stat64.c: Likewise.
2026         * stdlib/atexit.c: Likewise.
2027         * sysdeps/alpha/elf/initfini.c: Likewise.
2028         * sysdeps/alpha/elf/start.S: Likewise.
2029         * sysdeps/arm/elf/start.S: Likewise.
2030         * sysdeps/cris/elf/start.S: Likewise.
2031         * sysdeps/generic/initfini.c: Likewise.
2032         * sysdeps/generic/mknod.c: Likewise.
2033         * sysdeps/hppa/elf/initfini.c: Likewise.
2034         * sysdeps/hppa/elf/start.S: Likewise.
2035         * sysdeps/i386/elf/start.S: Likewise.
2036         * sysdeps/i386/i686/hp-timing.c: Likewise.
2037         * sysdeps/ia64/elf/initfini.c: Likewise.
2038         * sysdeps/ia64/elf/start.S: Likewise.
2039         * sysdeps/ia64/hp-timing.c: Likewise.
2040         * sysdeps/m68k/elf/start.S: Likewise.
2041         * sysdeps/mach/start.c: Likewise.
2042         * sysdeps/mips/elf/start.S: Likewise.
2043         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
2044         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
2045         * sysdeps/s390/s390-32/elf/start.S: Likewise.
2046         * sysdeps/s390/s390-32/initfini.c: Likewise.
2047         * sysdeps/s390/s390-64/elf/start.S: Likewise.
2048         * sysdeps/s390/s390-64/initfini.c: Likewise.
2049         * sysdeps/sh/elf/initfini.c: Likewise.
2050         * sysdeps/sh/elf/start.S: Likewise.
2051         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
2052         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
2053         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
2054         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
2055         * sysdeps/standalone/i386/start.S: Likewise.
2056         * sysdeps/standalone/i960/start.S: Likewise.
2057         * sysdeps/standalone/m68k/m68020/start.S: Likewise.
2058         * sysdeps/unix/arm/start.c: Likewise.
2059         * sysdeps/unix/bsd/osf/alpha/start.S: Likewise.
2060         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
2061         * sysdeps/unix/sparc/start.c: Likewise.
2062         * sysdeps/unix/start.c: Likewise.
2063         * sysdeps/unix/sysv/aix/start.s: Likewise.
2064         * sysdeps/unix/sysv/irix4/start.c: Likewise.
2065         * sysdeps/x86_64/elf/initfini.c: Likewise.
2066         * sysdeps/x86_64/elf/start.S: Likewise.
2068 2004-08-15  Roland McGrath  <roland@redhat.com>
2070         [BZ #227]
2071         * sysdeps/unix/sysv/linux/kernel-features.h
2072         (__ASSUME_BRK_PAGE_ROUNDED): New macro.
2073         * sysdeps/unix/sysv/linux/dl-sysdep.c (frob_brk)
2074         [! __ASSUME_BRK_PAGE_ROUNDED]: Adjust the break up if it falls within
2075         the partial page after the dynamic linker's own data segment.
2077 2004-08-15  Ulrich Drepper  <drepper@redhat.com>
2079         * sysdeps/posix/getaddrinfo.c (gaih_inet): Optimize generation of
2080         v4-mapped addresses a bit.
2081         (gethosts): Move alloca out of macro, so that it is done only once.
2083         * sysdeps/posix/getaddrinfo.c (gaih_addrtuple): Change type of
2084         addr to avoid casts.
2085         (gethosts): Removed.
2086         (gethosts2): Renamed to gethosts.  Make it usable for family !=
2087         AF_UNSPEC.  Fix AI_V4MAPPED.
2088         (gaih_inet): Remove use of old gethosts.  Always use what used to be
2089         gethosts2.  If entry is found, try to use the same NSS module's
2090         getcanonname_r function.  Use gethostbyaddr for AI_CANONNAME only
2091         if getcanonname_r was not available.  Fix filtering of AI_V4MAPPED
2092         addresses.  Numerous cleanups.
2093         * resolv/nss_dns/dns-canon.c: New file.
2094         * resolv/Makefile (libnss_dns-routines): Add dns-canon.
2095         * resolv/Versions (libnss_dns): Add _nss_dns_getcanonname_r.
2097         * elf/Makefile: Add rules to build and run tst-dlopenrpath.
2098         * elf/tst-dlopenrpath.c: New file.
2099         * elf/tst-dlopenrpathmod.c: New file.
2101         * intl/tst-gettext.sh: Adjust for change of de.po file to UTF-8.
2102         * intl/tst-gettext.c: Likewise.
2104         * nss/getent.c (ahosts_keys_int): Correctly print IPv6 addresses.
2106         * nss/getent.c: Allow queries for getaddrinfo with AF_INET and
2107         AF_INET6.
2109 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
2111         * po/de.po: Update from translation team.
2113 2004-08-14  Roland McGrath  <roland@frob.com>
2115         * sysdeps/mach/configure: Regenerated.
2116         * sysdeps/mach/hurd/configure: Regenerated.
2118 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
2120         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If RFC3484 sorting is
2121         performed, make sure it is still the first entry after sorting
2122         that has the ai_canonname information.
2124         * sysdeps/posix/getaddrinfo.c (gaih_inet): Really set ai_canonname
2125         only in one entry.
2127 2004-08-13  Daniel Jacobowitz  <dan@debian.org>
2129         * scripts/output-format.sed: Handle default case of three-argument
2130         OUTPUT_FORMAT.
2132         * sysdeps/arm/machine-gmon.h (mcount_internal): Mark as
2133         __attribute_used__.
2135 2004-08-13  Ulrich Drepper  <drepper@redhat.com>
2137         * nss/getent.c (ahosts_keys): ai_canonname is NULL for all but the
2138         first returned entry.  Print name only if not NULL.
2140         * nis/nss_nis/nis-netgrp.c: Remove locking by using data in struct
2141         __netgrent object passed in instead of global variables.
2142         Optimize.
2143         * nis/nss_nisplus/nisplus-netgrp.c: Remove locking by using data
2144         in struct __netgrent object passed in instead of global variables.
2145         * inet/netgroup.h (struct __netgrent): Add service_user field.
2146         Move cursor in anonymous union, add new field location to that
2147         union.
2148         * inet/getnetgrent_r.c: Extensive rewrite to really enable
2149         concurrent uset of set/get/endnetgrent and innetgr.
2150         Reported by Chuck Simmons.
2152         * inet/netgroup.h (struct name_list): Replace name pointer with
2153         zero-sized array.
2154         * inet/getnetgrent_r.c: Adjust code for change in name_list
2155         layout.  Numerous strdup and free calls removed.
2157         * elf/sprof.c (read_symbols): When comparing aliases, prefer
2158         non-hidden over hidden symbols and strong over weak symbols
2159         if both don't start with '_'.
2161         * malloc/malloc.c: Use strong_alias instead of weak_alias wherever
2162         possible.
2164 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2166         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
2167         RUSAGE_ enums as __RUSAGE_ and adjust macros accordingly.
2168         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2169         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2170         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
2171         Define non-standard RLIMIT_ enums as __RLIMIT_ and adjust macros
2172         accordingly.
2174 2004-08-11  Andreas Schwab  <schwab@suse.de>
2176         * resolv/res_libc.c: Move definition of __res_initstamp ...
2177         * resolv/res_init.c: ... here.
2179 2004-08-10  GOTO Masanori  <gotom@debian.or.jp>
2181         * locale/C-time.c: Change default ERA value from NULL to "".
2182         * locale/tst-C-locale.c: Add test case for ERA keywords.
2184 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
2186         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
2187         RLIMIT__ enums as __RLIMIT_ and adjust macros accordingly.
2188         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2189         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2191 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2193         * sysdeps/unix/sysv/linux/bits/resource.h (RLIMIT_SIGPENDING,
2194         RLIMIT_MSGQUEUE): Add.
2195         (RLIMIT_NLIMITS, RLIM_NLIMITS): Adjust.
2196         * sysdeps/unix/sysv/linux/alpha/bits/resource.h (RLIMIT_SIGPENDING,
2197         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2198         (RLIM_NLIMITS): Adjust.
2199         * sysdeps/unix/sysv/linux/sparc/bits/resource.h (RLIMIT_SIGPENDING,
2200         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2201         (RLIM_NLIMITS): Adjust.
2202         * sysdeps/unix/sysv/linux/mips/bits/resource.h (RLIMIT_SIGPENDING,
2203         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2204         (RLIM_NLIMITS): Adjust.
2206 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2208         * resolv/res_query.c (__libc_res_nsearch): Protect the debugging
2209         printf with #ifdef DEBUG and RES_DEBUG check.
2211         * sysdeps/unix/sysv/linux/bits/shm.h: Move __END_DECLS after
2212         __USE_MISC #endif.
2213         * sysdeps/generic/bits/shm.h: Add __BEGIN_DECLS for __getpagesize
2214         declaration.
2215         * sysdeps/gnu/bits/shm.h: Likewise.
2216         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
2217         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
2218         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
2219         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
2220         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
2222 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
2224         * po/ca.po: Update from translation team.
2226 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
2228         * sysdeps/unix/sysv/linux/bits/shm.h: Add __BEGIN_DECLS for
2229         __getpagesize declaration.
2231 2004-08-11  Roland McGrath  <roland@redhat.com>
2233         * configure.in (libc_cv_cpp_asm_debuginfo): Add missing braces around
2234         commands inside &&.
2235         Reported by Andreas Schwab <schwab@suse.de>.
2236         * configure: Regenerated.
2238         * posix/tst-waitid.c (do_test): Ignore SIGCHLD before cleanup SIGKILL.
2240 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
2242         * time/tzset.c (tzset_internal): Add new parameter which is
2243         nonzero if called through tzset.  Use TZDEFAULT name including
2244         name comparison if the new parameter is zero.  This means implicit
2245         tzset calls will not cause files to be opened and read by tzfile.c
2246         all the time.
2248 2004-08-11  Jakub Jelinek  <jakub@redhat.com>
2250         * rt/tst-timer2.c (do_test): If timer_create fails, just continue.
2251         * rt/tst-timer4.c (do_test): If one of the timer_create calls fails,
2252         return 1 immediately.
2254         * time/tzfile.c (__tzfile_read): Free transitions only if it will
2255         not be reused.
2257         * sysdeps/ieee754/dbl-64/mpa.c: Include <sys/param.h>.
2258         * sysdeps/ieee754/dbl-64/mpa.h (MAX, MIN): Macros removed.
2260         * stdio-common/tst-popen.c: Include <string.h>.
2262         * resolv/res_send.c (__libc_res_nsend): Only define TMPBUF #if DEBUG.
2264         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Remove noreturn
2265         attribute.  Return NULL instead of calling pthread_exit at the end.
2267 2004-08-11  Roland McGrath  <roland@redhat.com>
2269         * iconvdata/testdata/ISO-2022-JP-3: Regenerated.
2271 2004-08-10  Alfred M. Szmidt  <ams@kemisten.nu>
2273         * sysdeps/generic/bits/in.h (struct ip_mreq): Remove definition.
2275 2004-08-10  Jakub Jelinek  <jakub@redhat.com>
2277         * libio/bits/stdio.h (fread_unlocked): Cast 0 to (size_t).
2278         (fwrite_unlocked): When checking if size * n is <= 8, cast each
2279         argument to size_t individually.  Cast n to (void) instead of
2280         (size_t), surround with (), return (size_t) 0 if one of n or size
2281         is 0.  [BZ #316]
2282         * stdio-common/Makefile (tests): Add tst-unlockedio.
2283         * stdio-common/tst-unlockedio.c: New test.
2285 2004-08-09  Roland McGrath  <roland@frob.com>
2287         * manual/install.texi (Supported Configurations): Replace bug-glibc
2288         mention with web URL.
2289         * INSTALL: Regenerated.
2290         * locale/iso-3166.def: Likewise, in comment.
2291         * locale/iso-4217.def: Likewise.
2292         * locale/iso-639.def: Likewise.
2293         * posix/cpio.h: Remove bug reporting comment.
2295 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
2297         * libio/bits/stdio.h (fread_unlocked): Add a couple of (size_t)
2298         casts to handle funny calls with floating point argument values
2299         and signed values correctly and without warning.
2300         (fwrite_unlocked): Likewise.  [BZ #309]
2302         * malloc/memusage.c (me): Use creat64, not creat.
2303         * malloc/memusagestat.c: Fix handling of very large sizes.  [BZ #285]
2304         Patch by Guy Maor <guymaor@yahoo.com>.
2306         * elf/ldconfig.c (options): Mark parameter option names as
2307         translatable.  [BZ #253]  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
2309         * iconv/gconv_charset.h (strip): Also allow comma which is what is
2310         used to separate options.  [BZ #194]
2312 2004-08-09  Roland McGrath  <roland@redhat.com>
2314         * FAQ.in: Refer to web pages instead of bug-glibc.
2315         * FAQ: Regenerated.
2317         * time/strptime_l.c: #include <stdbool.h>, `bool' used in last change.
2319 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
2321         * time/tzset.c (tzset_internal): If TZ is not set do not compare
2322         old and new tz value since it might be /etc/localtime in both
2323         cases although the file changed.  [BZ #154]
2324         Patch by Christian Franke <franke@computer.org>.
2326         * time/tzfile.c (__tzfile_read): Determine dev/ino of file.
2327         Compare with values of previously opened file.  Don't do anything
2328         is they match.
2330 2004-08-08  Ulrich Drepper  <drepper@redhat.com>
2332         * elf/dl-load.c (_dl_map_object): If __RTLD_CALLMAP flag is set,
2333         reset loader before the actual loading.
2334         * elf/dl-open.c (dl_open_worker): If file name contains no path
2335         element determine map of caller.  Pass caller map in this case to
2336         _dl_map_object.  Set __RTLD_CALLMAP in mode.
2337         * include/dlfcn.h (__RTLD_CALLMAP): Define.  [BZ #116]
2338         Patch by Greg Wolodkin <greg@mathworks.com>.
2340         * misc/syslog.c (openlog_internal): Always try both UDP and TCP.
2341         [BZ #108]  Patch mainly by Bjorn Andersson <bjorn@iki.fi>.
2343         * configure.in: Also recognize i786. [BZ #106]
2344         Patch by <pluto@pld-linux.org>.
2346         * resolv/res_query.c (__libc_res_nsearch): Correctly test whether
2347         name contains any dots. [BZ #95]
2349         * resolv/res_send.c: Compiling with DEBUG defined works again.
2350         * resolv/gethnamaddr.c (dprintf): Renamed to Dprintf.  Adjust all
2351         callers.
2353         * resolv/tst-leaks.c (TIMEOUT): Define so that if no server is
2354         available the process is not killed. [BZ #41]
2356         * intl/tst-gettext.c (main): Improve some messages. [BZ #33]
2358         * time/strptime_l.c (__strptime_internal): Fix handling of %Ey.
2359         [BZ #28]
2361         * po/sv.po: Update from translation team.
2363 2004-08-07  Ulrich Drepper  <drepper@redhat.com>
2365         * inet/netinet/in.h: Add more const to the setipv4soucefilter,
2366         getsourcefilter, and setsourcefilter parameter list.
2367         * sysdeps/generic/setipv4sourcefilter.c: Likewise.
2368         * sysdeps/generic/getsourcefilter.c: Likewise.
2369         * sysdeps/generic/setsourcefilter.c: Likewise.
2370         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: Likewise.
2371         * sysdeps/unix/sysv/linux/getsourcefilter.c: Likewise.
2372         * sysdeps/unix/sysv/linux/setsourcefilter.c: Likewise.
2374         * po/tr.po: Update from translation team.
2376 2004-08-06  Ulrich Drepper  <drepper@redhat.com>
2378         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): Fix typo.
2379         Reported by Paolo Bonzini.
2381 2004-08-06  Jakub Jelinek  <jakub@redhat.com>
2383         * sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add
2384         always_inline.
2385         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_runtime_setup,
2386         elf_machine_fixup_plt, elf_machine_plt_conflict): Likewise.
2388         * sysdeps/unix/sysv/linux/netatalk/at.h: Include bits/sockaddr.h
2389         before including linux/atalk.h.
2391         * resolv/res_libc.c: Include atomic.h.
2393         * intl/finddomain.c (free_mem): Rename to...
2394         (_nl_finddomain_subfreeres): ... this.  Add
2395         __libc_freeres_fn_section.
2396         * intl/loadmsgcat.c (_nl_unload_domain): Add
2397         __libc_freeres_fn_section.
2398         * intl/gettextP.h (_nl_unload_domain): Move into #ifdef _LIBC.
2399         Add attribute_hidden.
2400         (_nl_findomain_subfreeres): New prototype.
2401         * iconv/gconv_db.c (free_mem): Call _nl_findomain_subfreeres.
2403 2004-07-30  Guido Guenther  <agx@sigxcpu.org>
2405         * nss/getent.c (passwd_keys): Use strtoul instead of isdigit to
2406         test if the key is numeric or not.
2407         (group_keys): Likewise.
2409 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2411         * inet/netinet/in.h: Define struct ip_msfilter, IP_MSFILTER_SIZE,
2412         struct group_filter, and GROUP_FILTER_SIZE.
2413         * include/sys/socket.h: Declare __getsockopt.
2414         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: New file.
2415         * sysdeps/unix/sysv/linux/getipv4sourcefilter.c: New file.
2416         * sysdeps/unix/sysv/linux/setsourcefilter.c: New file.
2417         * sysdeps/unix/sysv/linux/getsourcefilter.c: New file. [BZ #211]
2419         * po/ko.po: Update from translation team.
2421 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2423         * hesiod/hesiod.c (__hesiod_res_get): Use calloc instead of malloc +
2424         memset.
2425         (__hesiod_res_set): Free nsaddrs.
2427         * include/resolv.h (__res_maybe_init): Add prototype.
2428         * resolv/resolv.h (struct __res_state): Add _u._ext.initstamp field.
2429         * resolv/Versions (libc): Add __res_maybe_init@@GLIBC_PRIVATE.
2430         * resolv/res_libc.c (__res_initstamp, lock): New variables.
2431         (res_init): Increase __res_initstamp.
2432         (__res_maybe_init): New function.
2433         * resolv/res_init.c (__res_vinit): Initialize _u._ext.initstamp.
2434         * hesiod/hesiod.c (__hesiod_res_get): Use __res_maybe_init instead
2435         of RES_INIT check and {res_ninit,__res_ninit,res_init} call.
2436         * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise.
2437         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
2438         _nss_dns_gethostbyaddr_r): Likewise.
2439         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
2440         _nss_dns_getnetbyaddr_r): Likewise.
2441         * resolv/gethnamaddr.c (gethostbyname, gethostbyname2,
2442         gethostbyaddr): Likewise.
2443         * resolv/res_data.c (fp_nquery, res_mkquery, res_mkupdate,
2444         res_isourserver, res_sendsigned, res_update, res_search,
2445         res_querydomain): Likewise.
2446         * nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)): Likewise.
2447         * nss/digits_dots.c (__nss_hostname_digits_dots): Likewise.
2448         * nss/getnssent_r.c (__nss_setent, __nss_endent, __nss_getent_r):
2449         Likewise.
2451 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2453         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set ai_family for
2454         V4-mapped IPv6 addresses and req->ai_family==AF_INET.
2455         Reported by A. Guru <a.guru@sympatico.ca>.
2457         * po/sv.po: Update from translation team.
2458         * po/sk.po: Likewise.
2459         * po/pl.po: Likewise.
2461 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2462             Ulrich Drepper  <drepper@redhat.com>
2464         * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Don't read more input
2465         characters than necessary.
2467 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2469         * wcsmbs/Makefile (tests): Add tst-mbsrtowcs.
2470         * wcsmbs/tst-mbsrtowcs.c: New file.
2472         * po/fr.po: Update from translation team.
2474 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2476         * resolv/inet_pton.c (inet_pton4): Disallow octal numbers.  Reported
2477         by A. Guru <a.guru@sympatico.ca>.  [BZ #295]
2479 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2481         * po/nl.po: Update from translation team.
2483         * sysdeps/posix/getaddrinfo.c (gaih_inet): Recognize all the IPv4
2484         numeric address formats inet_addr knows.
2485         (getaddrinfo): Allow AI_NUMERICSERV flag.
2486         If neither IPv4 nor IPv6 interface is present we cannot make any
2487         decision for AI_ADDRCONFIG.  Fail if AI_NUMERICSERV is set and the
2488         string is not just a number.  Remove useless freeaddrinfo call.
2489         * resolv/netdb.h (AI_NUMERICSERV): Define.
2490         Based on a patch by a.guru@sympatico.ca.
2492 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2494         * stdlib/strfmon_l.c (__vstrfmon_l): Memset whole info structure
2495         instead of trying to initialize some, but not all, fields one by
2496         one.
2497         * stdio-common/printf_size.c (printf_size): Initialize fb_info
2498         structure with *info instead of trying to initialize some, but not
2499         all, fields from it.
2501         * nscd/connections.c (handle_request): Check if req->type is in
2502         LASTDBREQ .. LASTREQ range instead of req.
2504         * locale/programs/linereader.c (lr_create): Initialize
2505         lr->return_widestr to 0.
2507         * elf/dl-close.c (free_slotinfo): Add __libc_freeres_fn_section.
2508         (free_mem): Call free_slotinfo just once.
2510         * stdio-common/tst-fmemopen.c (main): Check for MAP_FAILED instead
2511         of NULL.
2513         * locale/localeinfo.h (_nl_locale_subfreeres): New prototype.
2514         * locale/setlocale.c (free_category): Add __libc_freeres_fn_section.
2515         (free_mem): Rename to _nl_locale_subfreeres.
2516         * iconv/gconv_db.c: Include locale/localeinfo.h.
2517         (free_derivation, free_modules_db): Add __libc_freeres_fn_section.
2518         (free_mem): Call _nl_locale_subfreeres.
2519         * iconv/gconv_dl.c (do_release_all): Add __libc_freeres_fn_section.
2521 2004-08-04  Roland McGrath  <roland@frob.com>
2523         * Makeconfig ($(common-objpfx)config.status):
2524         Fix typo: $(add_ons) -> $(add-ons).
2525         (Makeconfig-add-on): New variable.  When doing $(sysdep-makeconfigs)
2526         include, use black magic to get it set to an add-on's name during the
2527         include of the add-on's Makeconfig.
2529         * configure.in: Use variable name `libc_add_on' when sourcing add-on
2530         configure fragments, so they can refer to this.
2531         * configure: Regenerated.
2533 2004-08-04  Roland McGrath  <roland@redhat.com>
2535         * posix/tst-waitid.c (test_child): Sleep a second before stopping.
2536         (do_test): Bump sleep to three seconds.
2537         (sigchld, check_sigchld): New functions.
2538         (do_test): Handle SIGCHLD and check for getting the right details.
2540         * posix/tst-waitid.c (do_test): Kill the child process when bailing
2541         out early on some failure.
2542         [WCONTINUED]: Test WCONTINUED functionality.
2544 2004-08-03  Ulrich Drepper  <drepper@redhat.com>
2546         * nscd/connections.c (handle_request): Print more descriptive
2547         message for invalid request types.
2549 2004-08-02  Jakub Jelinek  <jakub@redhat.com>
2551         * iconvdata/ibm932.c (BODY): Avoid binary search for ch >= 0xffff.
2552         Always treat high as highest number in range + 1.
2553         * iconvdata/ibm943.c (BODY): Likewise.
2555 2004-07-31  Bruno Haible  <bruno@clisp.org>
2557         * iconvdata/JISX0213.TXT: Updated to JISX0213 plane 1 version 2004.
2558         * iconvdata/jisx0213.c (__jisx0213_to_ucs_main,
2559         __jisx0213_to_ucs_pagestart, __jisx0213_from_ucs_level1,
2560         __jisx0213_from_ucs_level2): Regenerated.
2561         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): New function.
2562         * iconvdata/iso-2022-jp-3.c (JISX0213_1_2000_set): Renamed from
2563         JISX0213_1_set.
2564         (JISX0213_1_2004_set): New enum value.
2565         (BODY for FROM_LOOP): Treat ESC $ ( Q like ESC $ ( O.
2566         (BODY for TO_LOOP): For JISX 0213 plane 1 characters, emit ESC $ ( O
2567         when possible, ESC $ ( Q when needed.
2568         * iconvdata/testdata/EUC-JISX0213: Add the 10 new characters.
2569         * iconvdata/testdata/EUC-JISX0213..UTF8: Update.
2570         * iconvdata/testdata/SHIFT_JISX0213: Add the 10 new characters.
2571         * iconvdata/testdata/SHIFT_JISX0213..UTF8: Update.
2572         * iconvdata/testdata/ISO-2022-JP-3: Add the 10 new JISX0213 characters.
2573         * iconvdata/testdata/ISO-2022-JP-3..UTF8: Update.
2575 2004-07-22  Bruno Haible  <bruno@clisp.org>
2577         * iconvdata/gconv-modules (ISO-8859-7): Add alias ISO_8859-7:2003.
2579 2004-07-29  David S. Miller  <davem@redhat.com>
2581         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy): Optimize
2582         better for smaller than 256 byte copies.  Also, use only one
2583         unrolled loop instead of two for the large copy case.
2585 2004-07-30  Richard Henderson  <rth@redhat.com>
2587         * sysdeps/alpha/divq.S: Save t3 before it gets clobbered.
2588         * sysdeps/alpha/remq.S: Likewise.
2589         * sysdeps/alpha/div.S, sysdeps/alpha/ldiv.S: Rewrite with the
2590         new division algorithms in divl.S and divq.S respectively.
2592 2004-07-28  GOTO Masanori  <gotom@debian.or.jp>
2594         * timezone/asia: Update from tzdata2004b.
2595         * timezone/backward: Likewise.
2596         * timezone/europe: Likewise.
2597         * timezone/iso3166.tab: Likewise.
2598         * timezone/leapseconds: Likewise.
2599         * timezone/northamerica: Likewise.
2600         * timezone/southamerica: Likewise.
2601         * timezone/zone.tab: Likewise.
2603         * timezone/private.h: Update from tzcode2004b.
2604         * timezone/zic.c: Likewise.
2606 2004-07-27  Ulrich Drepper  <drepper@redhat.com>
2608         * nscd/grpcache.c (cache_addgr): If necessary, add entry also
2609         under the name the user provided.
2610         * nscd/pwdcache.c (cache_addpw): Likewise.
2612 2004-07-26  Roland McGrath  <roland@redhat.com>
2614         * sysdeps/posix/waitid.c [WEXITED]: Clear WEXITED bit in OPTIONS for
2615         call to __waitpid.
2617 2004-07-26  Ulrich Drepper  <drepper@redhat.com>
2619         * nscd/hstcache.c (cache_addhst): Fix two scenarios which lead to
2620         memory leaks.
2622         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Assign pointer for
2623         new buffer at the right time.
2624         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
2626 2004-07-25  Ulrich Drepper  <drepper@redhat.com>
2628         * inet/Versions [libc, GLIBC_2.3.4]: Add getipv4sourcefilter,
2629         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
2630         * inet/Makefile (routines): Likewise.
2631         * inet/netinet/in.h: Add prototypes for getipv4sourcefilter,
2632         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
2633         * sysdeps/generic/getipv4sourcefilter.c: New file.
2634         * sysdeps/generic/setipv4sourcefilter.c: New file.
2635         * sysdeps/generic/getsourcefilter.c: New file.
2636         * sysdeps/generic/setsourcefilter.c: New file.
2638 2004-07-17  Steven Munroe  <sjmunroe@us.ibm.com>
2640         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
2641         for POWER4 machines.
2643 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
2645         [BZ #274]
2646         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): Fix used >=
2647         BITS_PER_MP_LIMB shifting up.
2648         * stdlib/tst-strtod.c (main): Add new tests.
2650 2004-07-23  Jakub Jelinek  <jakub@redhat.com>
2652         [BZ #282]
2653         * libio/iopopen.c (_IO_new_popen): Use _IO_init instead of
2654         _IO_no_init.  Remove wd from struct locked_FILE.
2655         (_IO_wproc_jumps): Remove.
2656         Reported by Andrew Josey <a.josey@opengroup.org>.
2657         * stdio-common/Makefile (tests): Add tst-popen.
2658         * stdio-common/tst-popen.c: New test.
2660 2004-07-23  Ulrich Drepper  <drepper@redhat.com>
2662         * posix/bits/posix1_lim.h: Fix values for _POSIX_CHILD_MAX and
2663         _POSIX_OPEN_MAX.  Add _POSIX_HOST_NAME_MAX, _POSIX_SYMLINK_MAX,
2664         _POSIX_SYMLOOP_MAX, and _POSIX_RE_DUP_MAX.
2665         Reported by Andrew Josey.
2667         * include/features.h: Document _POSIX_C_SOURCE == 200112L.
2669         * grp/grp.h: Define gid_t if __USE_XOPEN2K is defined.
2670         * pwd/pwd.h: Define uid_t and gid_t if __USE_XOPEN2K is defined.
2671         * io/sys/stat.h: Define dev_t, gid_t, ino_t, mode_t, nlink_t,
2672         off_t, time_t, and uid_t if __USE_XOPEN2K is defined.
2673         * signal/signal.h: Define pid_t if __USE_XOPEN2K is defined.
2674         * posix/unistd.h: Define gid_t, off_t, pid_t, uid_t, and
2675         useconds_t if __USE_XOPEN2K is defined.
2676         * io/utime.h: Define time_t if __USE_XOPEN2K is defined.
2677         * libio/stdio.h: Declare fseeko and ftello if __USE_XOPEN2K is defined.
2679 2004-07-19  Thorsten Kukuk  <kukuk@suse.de>
2681         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
2682         allocate memory for large temporary variables with alloca.
2684 2004-07-22  Ulrich Drepper  <drepper@redhat.com>
2686         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Compatibility
2687         code must have version GLIBC_2.0.  Patch by Dwayne McConnell.
2689         * nscd/nscd_getgr_r.c (nscd_getgr_r): Avoid read call with NULL
2690         pointer and zero length.
2692 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
2694         * nscd/cache.c (prune_cache): Print correct list when debugging.
2696 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
2698         * resolv/res_libc.c (res_init): If RES_INIT is set and
2699         _res.nscount > 0, call __res_nclose and free nsaddrs.
2700         * resolv/Makefile: Add rules to build and run tst-leaks2.
2701         * resolv/tst-leaks2.c: New test.
2703 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
2705         * intl/libintl.h: Don't define macros for C++.
2706         Patch by Goto Masanori.
2708 2004-07-22  GOTO Masanori  <gotom@debian.or.jp>
2710         [BZ #276]
2711         * include/arpa/inet.h: Change inet_aton type from in_addr_t to int.
2712         * inet/arpa/inet.h: Likewise.
2713         * resolv/inet_addr.c: Likewise.
2715 2004-07-21  Alexandre Oliva  <aoliva@redhat.com>
2717         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: Add semtimedop.
2719 2004-07-20  Roland McGrath  <roland@redhat.com>
2721         * configure.in (add_ons): Substitute this.  Move $add_ons handling
2722         after AC_CANONICAL_HOST and default setting of $machine et al.
2723         Don't set $subdirs from $add_ons.
2724         Instead, source add-on/configure fragments early on.
2725         (base_machine): If it's already set, don't set it based on $machine.
2726         (libc_config_ok): New variable, set to no.  If an add-on fragment sets
2727         it to yes, skip the  tuple sanity check as if --enable-hacker-mode.
2728         (sysnames): Try appending add-on names after machine as well.
2729         * config.make.in (add-ons): Set from @add_ons@ instead of @subdirs@.
2730         * Makeconfig ($(common-objpfx)config.status): Also depend on configure
2731         files in $(add_ons) dirs.
2733         * sysdeps/unix/sysv/linux/bits/in.h (struct ip_mreq): Remove
2734         definition, now in netinet/in.h proper.
2736 2004-07-20  Alexandre Oliva  <aoliva@redhat.com>
2738         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
2739         Sort by syscalls.  Make sure we get headers such as sgidefs.h from
2740         the build tree before just-installed ones.
2742         * sysdeps/mips/atomicity.h: Use standard names for ABI macros,
2743         include sgidefs.h where appropriate.
2744         * sysdeps/mips/dl-machine.h: Likewise.
2745         * sysdeps/mips/machine-gmon.h: Likewise.
2746         * sysdeps/mips/bits/setjmp.h: Likewise.
2747         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
2748         * sysdeps/mips/mips64/__longjmp.c: Likewise.
2749         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
2750         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
2751         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
2752         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
2753         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
2754         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
2755         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
2756         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
2757         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
2758         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
2759         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
2760         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
2761         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
2762         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
2763         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
2764         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
2765         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
2766         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
2767         Likewise.
2768         * sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h):
2769         Likewise.
2771         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Update to use
2772         _dl_lookup_symbol_x.
2773         (elf_machine_runtime_link_map): Don't INTUSE _dl_signal_error.
2775 2004-07-20  Ulrich Drepper  <drepper@redhat.com>
2777         * inet/netinet/in.h: Define struct ip_mreq and struct
2778         ip_mreq_source.
2779         Define struct group_req and struct group_source_req.
2780         * sysdeps/unix/sysv/linux/bits/in.h: Define IP_UNBLOCK_SOURCE,
2781         IP_BLOCK_SOURCE, IP_ADD_SOURCE_MEMBERSHIP,
2782         IP_DROP_SOURCE_MEMBERSHIP, IP_MSFILTER, MCAST_JOIN_GROUP,
2783         MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, MCAST_LEAVE_GROUP,
2784         MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP, and
2785         MCAST_MSFILTER.
2786         Define MCAST_INCLUDE and MCAST_EXCLUDE.
2788         * iconvdata/gconv-modules: Add alias for IBM874 [BZ #244].
2790 2004-07-19  Jakub Jelinek  <jakub@redhat.com>
2792         [BZ #258]
2793         * math/libm-test.inc (max_value, min_value): New variables.
2794         (initialize): Initialize them.
2795         (pow_test): Add a couple of new tests.
2796         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Don't generate invalid
2797         exception if |y| >= 1U<<31.
2798         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Don't generate invalid
2799         exception if |y| >= 1L<<63.
2800         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
2801         If y*log2(x) overflows to +-inf, return still +inf/+0 instead of NaN.
2802         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
2804 2004-07-18  Ulrich Drepper  <drepper@redhat.com>
2806         * nscd/pwdcache.c (cache_addpw): Optimize case of unsuccessful
2807         lookup a bit.
2808         * nscd/grpcache.c (cache_addgr): Likewise.
2809         * nscd/hstcache.c (cache_addhst): Likewise.
2811 2004-07-10  GOTO Masanori  <gotom@debian.or.jp>
2813         * sysdeps/s390/s390-32/elf/start.S: Remove symbol _fp_hw.
2814         * sysdeps/s390/s390-64/elf/start.S: Likewise.
2816 2004-04-16  Andreas Schwab  <schwab@suse.de>
2818         * sysdeps/ia64/bits/atomic.h: Cast first argument of
2819         __sync_bool_compare_and_swap_si correct to void*.
2821 2004-07-17  Ulrich Drepper  <drepper@redhat.com>
2823         * iconv/iconv_prog.c (print_known_names): Make machine-readable
2824         output even less cluttered.
2826 2004-07-16  Steven Munroe  <sjmunroe@us.ibm.com>
2828         [BZ #269]
2829         * setjmp/Makefile (tests): Add bug269-setjmp.
2830         * setjmp/bug269-setjmp.c: New file.
2831         * sysdeps/powerpc/powerpc64/__longjmp-common.S [SHARED && !IS_IN_rtld]:
2832         Store R2 from jmpbuf in callers TOC save area.
2833         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [SHARED && !IS_IN_rtld]:
2834         Store R2 in TOC save area.
2835         * sysdeps/powerpc/powerpc64/setjmp-common.S [SHARED && !IS_IN_rtld]:
2836         Copy TOC save area from previous frame as R2 (TOC) in jmpbuf.
2838 2004-07-16  Jakub Jelinek  <jakub@redhat.com>
2840         * locale/newlocale.c: Include bits/libc-lock.h.
2841         (__libc_setlocale_lock): Extern decl.
2842         (__newlocale): Use it.
2843         Reported by Ulrich Weigand <Ulrich.Weigand@de.ibm.com>.
2845 2004-07-15  Jakub Jelinek  <jakub@redhat.com>
2847         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Remove
2848         static inline __attribute ((always_inline)).  Don't define if
2849         NO_CANCELLATION.
2850         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
2851         __fcntl_nocancel.
2852         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c (__fcntl_nocancel):
2853         Remove static inline __attribute ((always_inline)).  Don't define
2854         if NO_CANCELLATION.
2855         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
2856         __fcntl_nocancel.
2857         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Define to
2858         __libc_fcntl if NO_CANCELLATION and __ASSUME_FCNTL64 == 0.
2859         Don't define at all if NO_CANCELLATION and __ASSUME_FCNTL64 > 0.
2860         (__libc_fcntl): Don't define if __fcntl_nocancel is a macro.
2862         [BZ #262]
2863         * sysdeps/i386/elf/start.S (_start): Use @GOT instead of @GOTOFF
2864         for main.
2865         * elf/Makefile: Add rules to build and run tst-pie1.
2866         * elf/tst-pie1.c: New test.
2867         * elf/tst-piemod1.c: New file.
2869 2004-07-14  Jakub Jelinek  <jakub@redhat.com>
2871         [BZ #266]
2872         * manual/string.texi (l64a): Note that the static buffer is 7 bytes
2873         long.  Rewrite example code so that it takes into account l64a output
2874         shorter than 6 characters.
2875         Reported by Julian Graham <julian.graham@aya.yale.edu>.
2877 2004-07-14  Kaz  Kojima  <kkojima@rr.iij4u.or.jp>
2879         * sysdeps/sh/dl-machine.h: Don't reset _dl_starting_up here.
2880         (elf_machine_rela_relative): Remove unused valiable.
2882 2004-07-12  Paul Eggert  <eggert@cs.ucla.edu>
2884         [BZ #263]
2885         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Don't store
2886         outside the buffer if the read returns 0.  __strtod_l can't set
2887         endp to NULL, so remove a test for that case.
2889 2004-07-12  Roland McGrath  <roland@redhat.com>
2891         * manual/signal.texi (Interrupted Primitives): Make clear that
2892         TEMP_FAILURE_RETRY evaluates its expression as long int and compares
2893         it to -1 to define "failure".
2895 2004-07-10  Ulrich Drepper  <drepper@redhat.com>
2897         * elf/ldconfig.c: Define PROCINFO_CLASS as static before including
2898         ldsodefs.h.
2899         * sysdeps/generic/ldsodefs.h: Only define PROCINFO_CLASS if it is not
2900         already defined.
2901         * sysdeps/i386/dl-procinfo.c: Define PROCINFO_CALLS only if not
2902         already defined.
2904         * elf/rtld.c (print_statistics): Mark with noinline attribute.
2905         * sysdeps/i386/dl-machine.h (elf_machine_rel): Mark with always_inline
2906         attribute.
2907         (elf_machine_rel_relative): Likewise.
2909         * include/string.h: Add libc_hidden_proto for __strtok_r and
2910         __strsep_g.
2911         * sysdeps/generic/strsep.c: Add libc_hidden_def.
2912         * sysdeps/generic/strtok_r.c: Likewise.
2913         * sysdeps/i386/strtok_r.S: Add alias for internal symbol.
2914         * sysdeps/i386/i686/strtok_r.S: Likewise.
2915         * sysdeps/x86_64/strtok_r.S: Likewise.
2917 2004-07-09  Alexandre Oliva  <aoliva@redhat.com>
2919         * inet/getnetgrent_r.c (internal_setnetgrent): Make it hidden
2920         instead of internal-linkage, such that we can alias to it.
2921         (internal_endnetgrent, internal_getnetgrent_r): Likewise.
2923 2004-07-09  Ulrich Drepper  <drepper@redhat.com>
2925         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Move attribute
2926         to the front for gcc 3.5+.
2927         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
2928         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
2929         * include/fcntl.h: Don't declare __fcntl_nocancel here if
2930         NO_CANCELLATION is defined.
2932 2004-07-07  Jakub Jelinek  <jakub@redhat.com>
2934         * elf/dl-fini.c (_dl_fini): Add nloaded variable, load
2935         GL(dl_nloaded) into it while still in critical section.
2937 2004-07-06  Thorsten Kukuk  <kukuk@suse.de>
2939         * nss/getent.c (print_group, print_passwd): Use %lu format for
2940         `unsigned long int' values.
2942         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Fix syntax
2943         error typos in goto statements.
2945 2004-07-07  Roland McGrath  <roland@frob.com>
2947         * Makefile (dist-separate): New variable.
2948         (glibc-%.tar rule): Make separate tar files for add-ons listed there.
2949         Depend on their configure files.
2950         (dist-do-separate-dirs): New canned sequence to do that.
2951         (dist-separate-libidn, dist-separate-linuxthreads): New variables.
2952         (dist): Depend on add-on tar files based on $(dist-separate).
2953         (dist-version): New variable, default to $(version).
2954         (tag-for-dist, dist): Use that in place of $(version) in deps.
2956 2004-07-07  Ulrich Drepper  <drepper@redhat.com>
2958         * elf/dl-fini.c (_dl_fini): Move the unlock of the ld.so lock
2959         before the loop running the destructors.
2961 2004-05-18  Andreas Schwab  <schwab@suse.de>
2963         * elf/dl-load.c (_dl_map_object_from_fd): Use the end address of
2964         the first segment for mprotect, not l_text_end.
2966 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
2968         * elf/dl-profile.c (_dl_start_profile): Compact error handling.
2969         Remove hashfraction variable.  Make kcount and kcountsize local
2970         variables.
2972         * elf/dl-init.c: Don't define and use _dl_starting_up if
2973         HAVE_INLINED_SYSCALLS is defined and the variable is not used.
2974         * elf/dl-support.c: Likewise.
2975         * elf/rtld.c: Likewise.
2976         * elf/dl-misc.c (_dl_debug_vdprintf): Use writev syscall directly
2977         if HAVE_INLINED_SYSCALLS is defined.
2978         * sysdeps/powerpc/powerpc64/dl-machine.h: Don't reset _dl_starting_up
2979         here.
2980         * sysdeps/powerpc/powerpc32/dl-start.S: Likewise.
2981         * sysdeps/unix/sysv/linux/configure.in: Define HAVE_INLINED_SYSCALLS.
2982         * config.h.in: Add entry for HAVE_INLINED_SYSCALLS.
2984         * sysdeps/posix/profil.c: If compiled for ld.so, omit code which
2985         is needed to stop profiling.
2986         * elf/dl-open.c (dl_open_worker): If a newly opened object is to be
2987         profile make sure it cannot be unloaded.
2989         * sysdeps/unix/sysv/linux/dl-origin.c: Inline readlink syscall.
2991         * sysdeps/unix/sysv/linux/fcntl.c: If compiled without cancellation
2992         support, make sure the helper function is inlined.
2993         * sysdeps/unix/sysv/linux/pread.c: Likewise.
2994         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
2995         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
2996         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
2998 2004-07-05  Jakub Jelinek  <jakub@redhat.com>
3000         * include/string.h (ffs): Add libc_hidden_builtin_proto.
3001         * sysdeps/rs6000/ffs.c (ffs): Add libc_hidden_builtin_def.
3002         * sysdeps/alpha/alphaev67/ffs.S (ffs): Likewise.
3003         * sysdeps/alpha/ffs.S (ffs): Likewise.
3004         * sysdeps/s390/ffs.c (ffs): Likewise.
3005         * sysdeps/powerpc/ffs.c (ffs): Likewise.
3006         * sysdeps/i386/ffs.c (ffs): Likewise.
3007         * sysdeps/i386/i686/ffs.c (ffs): Likewise.
3008         * sysdeps/m68k/ffs.c (ffs): Likewise.
3009         * sysdeps/generic/ffs.c (ffs): Likewise.
3010         * sysdeps/m88k/ffs.c (ffs): Likewise.
3011         * sysdeps/am29k/ffs.c (ffs): Likewise.
3012         * sysdeps/i960/ffs.c (ffs): Likewise.
3013         * sysdeps/x86_64/ffs.c (ffs): Likewise.
3015         * Makerules (check-abi): Use diff -p -U 0 instead of diff -pu0.
3017         * sysdeps/powerpc/novmx-longjmp.c (__libc_longjmp,
3018         __libc_siglongjmp): Remove symbol_version.
3019         * sysdeps/powerpc/longjmp.c (__libc_longjmp, __libc_siglongjmp):
3020         Export @@GLIBC_PRIVATE, not @@GLIBC_2.3.4.
3021         * sysdeps/powerpc/sigjmp.c (__sigjmp_save): Use strong_alias
3022         unconditionally.
3023         * sysdeps/powerpc/novmx-sigjmp.c (__sigjmp_save): Remove.
3024         * sysdeps/powerpc/powerpc32/__longjmp.S (__longjmp): Use
3025         strong_alias instead of default_symbol_version, remove
3026         symbol_version.
3027         * sysdeps/powerpc/powerpc64/__longjmp.S (__longjmp): Likewise.
3028         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__novmx__setjmp): Change
3029         into strong_alias to __novmxsetjmp.
3030         (__vmx__setjmp): Similarly with __vmxsetjmp.
3031         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
3032         default_symbol_version and symbol_version.
3033         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__novmx__setjmp): Change
3034         into strong_alias to __novmxsetjmp.
3035         (__vmx__setjmp): Similarly with __vmxsetjmp.
3036         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
3037         default_symbol_version and symbol_version.
3039         * nscd/nscd_getgr_r.c: Include stdio-common/_itoa.h.
3041 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
3043         * elf/rtld.c (dl_main): Mark dyn_temp with attribute_relro.
3045 2004-07-04  Matthew Reppert  <arashi@kai.vm.bytemark.co.uk>
3047         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Use libc_hidden_ver
3048         instead of libc_hidden_def.
3050 2004-07-01  Roland McGrath  <roland@redhat.com>
3052         * aclocal.m4: Add provide for AC_CONFIG_AUX_DIR_DEFAULT.
3054         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Move top-level
3055         $(..)shlib-versions file to last in deps list.  This lets add-ons give
3056         more-specific matches that override defaults in the top-level file.
3058         * sysdeps/unix/sysv/linux/configure.in: If arch_minimum_kernel was
3059         already set, don't set it or libc_cv_gcc_unwind_find_fde.
3060         * sysdeps/unix/sysv/linux/configure: Regenerated.
3062 2004-07-01  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3064         * sysdeps/s390/fpu/bits/mathinline.h [__LIBC_INTERNAL_MATH_INLINES]
3065         (__ieee754_sqrt): Define as __MATH_INLINE using sqdbr instruction.
3066         (__ieee754_sqrtf): Define as __MATH_INLINE using sqebr instruction.
3067         * sysdeps/s390/fpu/e_sqrt.c: New file.
3068         * sysdeps/s390/fpu/e_sqrtf.c: New file.
3069         * sysdeps/s390/Implies: New file.
3070         * sysdeps/s390/s390-32/Implies: Remove ieee754, move
3071         ieee754/dbl-64 and ieee754/flt-32 to s390/Implies.
3072         * sysdeps/s390/s390-64/Implies: Likewise.
3074 2004-06-30  Jakub Jelinek  <jakub@redhat.com>
3076         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Include tls.h.
3077         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
3079         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (thread_start):
3080         DO_CALL (exit, 1) instead of branching to _exit.
3081         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (thread_start):
3082         Likewise.
3084         * sysdeps/s390/fpu/bits/mathinline.h: New file.
3086         * include/glob.h (glob64): Add libc_hidden_proto.
3087         * sysdeps/generic/glob64.c (glob64): Add libc_hidden_def.
3088         * sysdeps/gnu/glob64.c (glob64): Likewise.
3089         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Likewise.
3091 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
3093         * sysdeps/i386/fpu/libm-test-ulps: Update for GCC 3.4.
3094         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
3096 2004-06-11  Dwayne Grant McConnell  <dgm69@us.ibm.com>
3098         * sysdeps/powerpc/fpu/s_lround.c: Removed.
3099         * sysdeps/powerpc/fpu/s_lroundf.c: Removed.
3100         * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: New file.
3101         * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: New file.
3102         * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: New file.
3103         * sysdeps/powerpc/powerpc32/fpu/s_floor.S: New file.
3104         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: Removed.
3105         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: New file.
3106         * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: New file.
3107         * sysdeps/powerpc/powerpc32/fpu/s_lround.S: New file.
3108         * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: New file.
3109         * sysdeps/powerpc/powerpc32/fpu/s_rint.S: New file.
3110         * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: New file.
3111         * sysdeps/powerpc/powerpc32/fpu/s_round.S: New file.
3112         * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: New file.
3113         * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: New file.
3115 2004-06-30  Ulrich Drepper  <drepper@redhat.com>
3117         * include/net/if.h: Handle if_nameindex and if_freenameindex with
3118         libc_proto_hidden.
3119         * sysdeps/unix/sysv/linux/netlinkaccess.h: New file.
3120         * sysdeps/unix/sysv/linux/ifaddrs.c: Export netlink handling functions.
3121         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Implement using
3122         netlink if possible.  Fall back on ioctl method if necessary.
3123         * sysdeps/unix/sysv/linux/Dist: Add netlinkaccess.h.
3125         * include/unistd.h: Declare __truncate.
3126         * sysdeps/generic/truncate.c: Also define __truncate.
3127         * sysdeps/mach/hurd/truncate.c: Likewise.
3128         * sysdeps/unix/common/syscalls.list: Likewise.
3129         * sysdeps/unix/sysv/linux/truncate64.c: Use __truncate, not truncate.
3131 2004-06-29  Ulrich Drepper  <drepper@redhat.com>
3133         * stdio-common/printf-parsemb.c (__parse_one_specmb): Initialize
3134         info.extra.  Patch by Marcus Meissner.
3136 2004-06-29  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3138         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
3139         Fix branch offset for a PLT entry.
3141 2004-06-20  Jim Meyering  <jim@meyering.net>
3143         * malloc/obstack.h (obstack_base): Cast to `void *', to align with
3144         documentation.
3146 2004-06-28  Ulrich Drepper  <drepper@redhat.com>
3148         * inet/bug-if1.c (do_test): Simply use 0 as invalid index.
3149         Workaround for [BZ #232].
3151         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Use extend_alloca.
3153 2004-06-28  GOTO Masanori  <gotom@debian.or.jp>
3155         * iconv/gconv_simple.c: Use get16/put16 for user given buffer
3156         in ucs2/ucs2reverse when unaligned memory access is attempted.
3157         * iconv/tst-iconv5.c: New file.
3158         * iconv/Makefile (tests): Add tst-iconv5.
3160 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
3162         * inet/bug-if1.c: Include <string.h>.
3164 2004-06-19  Roland McGrath  <roland@redhat.com>
3166         * sysdeps/posix/waitid.c (do_waitid) [DO_WAITID]: Define function
3167         under this macro name instead.
3168         [NO_DO_WAITID]: Don't define it at all.
3169         (do_waitid) [WNOWAIT, WEXITED]: If these POSIX.1 waitid flag bits are
3170         defined, then return ENOTSUP for combinations of selection bits other
3171         than WEXITED and WEXITED|WSTOPPED, which this version cannot support.
3173         * posix/tst-waitid.c: New file.
3174         * posix/Makefile (tests): Add it.
3176 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
3178         * sysdeps/unix/alpha/sysdep.h (inline_syscall6): Fix a typo.
3180         [BZ #231]
3181         * sysdeps/unix/alpha/sysdep.S (__syscall_error): Avoid !samegp
3182         relocation in librt.so.
3184         [BZ #230]
3185         * sysdeps/alpha/dl-machine.h (_dl_start_user): Use ldah/ldl to load
3186         _dl_skip_args.  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
3188 2004-06-27  Ulrich Drepper  <drepper@redhat.com>
3190         * elf/ldconfig.c (add_dir): Take chroot into account.
3191         Based on changes by HJ Lu and Hideki Iwamoto.
3193         * nscd/connections.c (invalidate_cache): If the host cache has to
3194         be invalidated, re-read resolv.conf.
3196         * resolv/resolv.h (RES_NOIP6DOTINT): Define.
3197         * resolv/res_init.c (res_setoptions): Handle no-ip6-dotint option.
3198         * resolv/gethnamaddr.c (gethostbyaddr): Don't lookup with .ip6.int
3199         if RES_NOIP6DOTINT flag is set.
3200         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
3202 2004-06-25  Jakub Jelinek  <jakub@redhat.com>
3204         * sysdeps/unix/sysv/linux/powerpc/fcntl.c: Move to...
3205         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fcntl.c: ... here.
3206         * sysdeps/unix/sysv/linux/powerpc/lockf64.c: Move to...
3207         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lockf64.c: ... here.
3208         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: New file.
3210         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_GETLK, F_SETLK,
3211         F_SETLKW): Fix values for -m32 -D_FILE_OFFSET_BITS=64.
3213 2004-06-21  Jakub Jelinek  <jakub@redhat.com>
3215         [BZ #231]
3216         * sysdeps/unix/alpha/Makefile: New file.
3217         * sysdeps/unix/alpha/rt-sysdep.S: New file.
3218         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
3220 2004-06-18  Ulrich Drepper  <drepper@redhat.com>
3222         * sysdeps/posix/getaddrinfo.c (gaih_inet): For AI_CANONNAME,
3223         determine the canonical name only for the first returned entry.
3225         * inet/bug-if1.c: New file.
3226         * inet/Makefile (tests): Add bug-if1.
3228 2004-06-18  Roland McGrath  <roland@frob.com>
3230         * Makerules (compile-mkdep-flags): Add -MT $@.
3232         * Makefile (dist, tag-for-dist): New targets.
3233         (files-for-dist, tag-of-stem): New variables.
3234         (glibc-%.tar glibc-linuxthreads-%.tar): New pattern rule.
3235         Make tar files using cvs export.
3236         (%.bz2, %.gz, tag-%): New pattern rules.
3237         (distribute): Variable removed.
3238         (+subdir_targets): Remove distinfo targets.
3239         (echo_subdirs, echo-distinfo, parent_echo-distinfo): Targets removed.
3240         (rpm/%): Pattern rule removed.
3241         * rpm/Makefile, rpm/rpmrc, rpm/template: Ancient cruft files removed.
3242         * Rules (subdir_echo-headers, subdir_echo-distinfo, subdir_dist):
3243         Targets removed.
3244         * Makerules (dist, subdir_distinfo): Targets removed.
3245         ($(objpfx)distinfo): Depend on $(distribute).
3246         * Make-dist: File removed.
3248         * NEWS: Fix a typo.  Update bug-reporting instructions.
3250 2004-06-17  Thorsten Kukuk  <kukuk@suse.de>
3252         * sysdeps/unix/sysv/linux/sched_setaffinity.c
3253         (__sched_setaffinity_new): Set errno to EINVAL and return -1 if
3254         cpuset is wrongly set.
3256 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
3258         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
3259         for POWER4 machines.
3261 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
3263         [BZ #218]
3264         * sunrpc/pmap_prot2.c (xdr_pmaplist): When freeing, remember pml_next
3265         in a local variable, point rp to that local variable afterwards.
3267 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
3269         * sysdeps/ieee754/dbl-64/e_sqrt.c (__ieee754_sqrt): Handle special
3270         cases properly.
3272 2004-06-17  Ulrich Drepper  <drepper@redhat.com>
3274         * sysdeps/unix/sysv/linux/if_index.c (if_indextoname): Correct
3275         error value for unknown interface. [BZ #198]
3277 2004-06-13  Jakub Jelinek  <jakub@redhat.com>
3279         * sysdeps/i386/bits/string.h (memcpy): Add () around arguments.
3280         (memchr, __memrchr, strlen, strcmp, strncmp, __strchr_g, __strchr_c,
3281         __strchrnul_g, __strchrnul_c, strspn, strcspn, strpbrk): Add memory
3282         the asm uses as its input, either of size __n where __n is known or
3283         0xfffffff.
3284         (strstr): Add "memory" clobber.
3286 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
3288         [BZ #219]
3289         * nss/nsswitch.c (free_mem): Don't try to close a library handle
3290         if the handle is invalid.  Patch by David Kimdon <kimdon@esrf.fr>.
3292 2004-06-11  Dmitry V. Levin  <ldv@altlinux.org>
3294         [BZ #217]
3295         * debug/xtrace.sh: Fix typo in error diagnostics.
3297 2004-06-14  Andreas Schwab  <schwab@suse.de>
3299         * stdio-common/psignal.c (psignal): Don't use BUF when asprintf
3300         failed.
3302 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
3304         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Fix pasto
3305         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
3306         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Fix pasto
3307         that clobbers r19.
3308         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Fix pasto
3309         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
3310         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S:
3311         Fix setting of sigcontext.v_regs.  Fix pasto that clobbers r19.
3312         Fix pasto that overflowed sigcontext.v_reserve.
3313         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S:
3314         Fix pasto that clobbers r19.
3315         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Fix setting
3316         of sigcontext.v_regs.  Fix pasto that clobbers r19.  Fix pasto that
3317         overflowed sigcontext.v_reserve.
3319 2004-05-04  H.J. Lu  <hongjiu.lu@intel.com>
3321         [BZ #150]
3322         * sysdeps/generic/strtol_l.c (DEF): Use ".gnu.linkonce.r."
3323         instead of ".gnu.linkonce.ro." as the prefix for linkonce
3324         read-only section name.
3326 2004-06-14  Richard Henderson  <rth@redhat.com>
3328         * sysdeps/alpha/div_libc.h (_ITOFS): Use "sp" not "$sp".
3329         (_ITOFT, _FTOIT, _ITOFT2): Likewise.
3331 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
3333         * sysdeps/s390/s390-32/backtrace.c (init): Guard with #ifdef SHARED.
3334         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
3335         (__backtrace): Don't call init #ifndef SHARED.
3336         * sysdeps/s390/s390-64/backtrace.c (init): Guard with #ifdef SHARED.
3337         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
3338         (__backtrace): Don't call init #ifndef SHARED.
3339         * sysdeps/ia64/backtrace.c (init): Guard with #ifdef SHARED.
3340         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
3341         (__backtrace): Don't call init #ifndef SHARED.
3343 2004-06-11  Roland McGrath  <roland@redhat.com>
3345         * sysdeps/arm/strlen.S [__ARMEB__]: Compute correctly for big-endian.
3346         From Krzysztof Halasa <khc@pm.waw.pl>.
3348 2004-06-10  Jakub Jelinek  <jakub@redhat.com>
3350         * elf/tls-macros.h [__s390x__] (TLS_LD, TLS_GD): Clobber also r14.
3352 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
3354         [BZ #199]
3355         * crypt/md5-crypt.c (__md5_crypt): Only update buflen if realloc
3356         succeeds.  Reported by Miles Ohlrich <miles@cray.com>.
3358         * elf/chroot_canon.c (chroot_canon): Avoid segfault if first malloc
3359         fails.  Avoid memory leak if realloc fails.
3361 2004-06-09  Jakub Jelinek  <jakub@redhat.com>
3363         * sysdeps/generic/setenv.c (setenv): Return -1/EINVAL if name is
3364         NULL, "" or contains '=' character in it.  Reported by
3365         Michael T Kerrisk <mtk-lists@gmx.net>.
3366         * stdlib/tst-environ.c: Include errno.h.
3367         (main): Add tests for these arguments to setenv/unsetenv.
3369 2004-06-07  Roland McGrath  <roland@frob.com>
3371         * NEWS: Update bug reporting instructions.  Fix some typos.
3373 2004-06-05  Ulrich Drepper  <drepper@redhat.com>
3375         * stdio-common/_itoa.h: Don't expand _itoa inline for libc.
3376         * stdio-common/_itoa.c: Add _itoa implementation.
3378         * nscd/nscd_gethst_r.c (__nscd_open_socket): Change implementation
3379         to also send request.  Add parameter to allow this.
3380         Change callers.
3381         * nscd/nscd_getgr_r.c: Change __nscd_open_socket caller.
3382         * nscd/nscd_getpw_r.c: Likewise.
3383         * nscd/nscd-client.h: Change __nscd_open_socket prototype.
3385 2004-06-05  Andreas Jaeger  <aj@suse.de>
3387         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
3388         Handle more than 6 args correctly.  Based on a patch by Masahide
3389         Washizawa <washi@jp.ibm.com>.
3391 2004-06-04  Ulrich Drepper  <drepper@redhat.com>
3393         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use __nss_not_use_nscd_hosts
3394         in all places, not __nss_not_use_nscd_group.
3395         Reported by Philippe Gregoire.
3397 2004-06-03  Ulrich Drepper  <drepper@redhat.com>
3399         * sysdeps/i386/i486/bits/atomic.h: Optimize a bit.
3401 2004-05-07  Dmitry V. Levin  <ldv@altlinux.org>
3403         * argp/argp-help.c (__argp_error, __argp_failure): Check result
3404         of __asprintf call and don't use string if it failed.
3405         * stdio-common/psignal.c (psignal): Likewise.
3406         * locale/programs/localedef.c (more_help): Likewise.
3407         * resolv/res_hconf.c (arg_service_list, arg_trimdomain_list,
3408         arg_bool, parse_line): Check result of __asprintf calls and
3409         don't use string if they failed.
3410         * sunrpc/svc_simple.c (registerrpc, universal): Likewise.
3411         * elf/ldconfig.c (parse_conf_include): Check result of __asprintf
3412         call and exit if it failed.
3414 2004-05-10  Jakub Jelinek  <jakub@redhat.com>
3416         * sysdeps/posix/sysconf.c (__sysconf) <cases _SC_REALTIME_SIGNALS,
3417         _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
3418         _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES,
3419         _SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION,
3420         _SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS,
3421         _SC_THREADS, _SC_THREAD_SAFE_FUNCTIONS, _SC_THREAD_ATTR_STACKADDR,
3422         _SC_THREAD_ATTR_STACKSIZE, _SC_THREAD_PRIORITY_SCHEDULING,
3423         _SC_THREAD_PRIO_INHERIT, _SC_THREAD_PRIO_PROTECT,
3424         _SC_THREAD_PROCESS_SHARED>: Return _POSIX_* value instead of 1.
3425         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf)
3426         <case _SC_MONOTONIC_CLOCK>: Return _POSIX_VERSION instead of 1.
3428 2004-05-07  Jeroen Dekkers  <jeroen@dekkers.cx>
3430         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Add
3431         -momit-leaf-frame-pointer.
3433         * inet/test-ifaddrs.c (addr_string): Surround AF_PACKET case with
3434         #ifdef AF_PACKET.
3436         * sysdeps/mach/hurd/getcwd.c
3437         (_hurd_canonicalize_directory_name_intern): Only realloc when
3438         size is <= 0.
3440         * sysdeps/mach/hurd/mmap.c (__mmap): Fail when addr or offset
3441         isn't page aligned.
3443         * sysdeps/mach/hurd/spawni.c (EXPAND_DTABLE): Set dtablesize to
3444         new size.
3446         * sysdeps/mach/hurd/Versions (GLIBC_PRIVATE): Add __libc_read,
3447         __libc_write and __libc_lseek64.
3449 2004-05-29  Roland McGrath  <roland@redhat.com>
3451         * elf/Makefile (shared-only-routines): Add dl-caller.
3453 2004-05-28  Ulrich Drepper  <drepper@redhat.com>
3455         * sysdeps/powerpc/configure.in: New file.
3457 2004-05-28  Steven Munroe  <sjmunroe@us.ibm.com>
3459         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Add .machine
3460         "altivec" to enable VMX instructions.
3461         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
3462         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
3463         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
3464         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
3465         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
3466         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
3467         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
3468         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
3469         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
3471 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
3473         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Define using
3474         __builtin_expm1l for GCC 3.5+.
3475         (__expl): Define using __builtin_expl for GCC 3.4+.
3476         (exp, expf, expl): Don't define for GCC 3.4+.
3477         (tan, tanf, tanl): Don't define for GCC 3.5+.
3478         (__atan2l): Define using __builtin_atan2l for GCC 3.4+.
3479         (atan2, atan2f, atan2l): Don't define for GCC 3.4+ or !__FAST_MATH__.
3480         (fmod, fmodf, fmodl): Don't define for GCC 3.5+ or !__FAST_MATH__.
3481         (fabsf, fabsl): Only provide if __USE_MISC or __USE_ISOC99.
3482         (sin, sinf, sinl, cos, cosf, cosl, log, logf, logl): Don't define
3483         for GCC 3.4+.
3484         (log10, log10f, log10l, asin, asinf, asinl, acos, acosf, acosl):
3485         Don't define for GCC 3.5+.
3486         (atan, atanf, atanl): Don't define for GCC 3.4+ or !__FAST_MATH__.
3487         (log1p, log1pf, log1pl, logb, logbf, logbl, log2, log2f, log2l): Don't
3488         define for GCC 3.5+.
3489         (drem, dremf, dreml): Don't define for GCC 3.5+ or !__FAST_MATH__.
3490         * sysdeps/sparc/fpu/bits/mathinline.h (sqrt, sqrtf, sqrtl): Don't
3491         define for GCC 3.2+.
3493 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
3495         * string/bits/string2.h (__bzero): Define even for GCC 3.0+.
3496         * sysdeps/alpha/stpcpy.S (stpcpy): Add libc_hidden_builtin_def.
3497         * sysdeps/alpha/alphaev67/stpcpy.S (stpcpy): Likewise.
3498         * sysdeps/powerpc/powerpc32/stpcpy.S (stpcpy): Likewise.
3499         * sysdeps/powerpc/powerpc64/stpcpy.S (stpcpy): Likewise.
3500         * sysdeps/sparc/sparc32/stpcpy.S (stpcpy): Likewise.
3501         * sysdeps/sparc/sparc64/stpcpy.S (stpcpy): Likewise.
3502         * sysdeps/i386/stpcpy.S (stpcpy): Likewise.
3503         * sysdeps/i386/i586/stpcpy.S (stpcpy): Likewise.
3504         * sysdeps/generic/stpcpy.c (stpcpy): Likewise.
3505         * sysdeps/x86_64/stpcpy.S (stpcpy): Likewise.
3506         * sysdeps/i386/i586/memcpy.S (memcpy): Remove
3507         libc_hidden_builtin_def if MEMPCPY_P.
3508         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
3509         * sysdeps/i386/i686/mempcpy.S (mempcpy): Add libc_hidden_builtin_def.
3510         * sysdeps/i386/i586/mempcpy.S (mempcpy): Likewise.
3511         * sysdeps/generic/mempcpy.c (mempcpy): Likewise.
3512         * sysdeps/x86_64/mempcpy.S (mempcpy): Likewise.
3514 2004-05-26  Roland McGrath  <roland@frob.com>
3516         * sysdeps/generic/bits/in.h
3517         (IMPLINK_IP, IMPLINK_LOWEXPER, IMPLINK_HIGHEXPER): Macros removed.
3518         These are long obsolete in BSD systems where they originated.
3519         * conform/data/netinet/in.h-data: Remove `allow IMPLINK_*'
3521 2004-05-26  Jakub Jelinek  <jakub@redhat.com>
3523         * include/string.h (mempcpy, stpcpy): Add libc_hidden_builtin_proto.
3524         * string/bits/string2.h (memset): Disable macro for GCC 3.0+.
3525         (__mempcpy): Use __builtin_mempcpy for GCC 3.4+.
3526         (strchr): For GCC 3.2+, only use __rawmemchr if second argument is
3527         constant '\0' and first argument is not constant.
3528         (__stpcpy): Use __builtin_stpcpy for GCC 3.4+.
3529         (strncpy): Remove #ifdef _USE_STRING_ARCH_mempcpy variant.
3530         For GCC 3.2+ use __builtin_strncpy.
3531         (strncat): For GCC 3.2+ use __builtin_strncat.
3532         (strcmp): For GCC 3.2+ use __builtin_strcmp if both arguments are
3533         constant.
3534         (strcspn, strspn, strpbrk): For GCC 3.2+, use builtin function
3535         if both arguments are constant.
3537 2004-05-26  Ulrich Drepper  <drepper@redhat.com>
3539         * nss/nss_files/files-hosts.c: Fix condition for looking up IPv4
3540         mapped addresses in gethostbyaddr.
3542 2004-05-25  Ulrich Drepper  <drepper@redhat.com>
3544         * nss/digits_dots.c (__nss_hostname_digits_dots): Remove typep and
3545         flags parameter, convert afp to simple int parameter.  Adjust code.
3546         typep was never != NULL and flags therefore also unused.  *afp is
3547         never modified.
3548         * nss/nsswitch.h: Adjust __nss_hostname_digits_dots prototype.
3549         * nss/getXXbyYY.c: Remove HAVE_TYPE handling.  Adjust af parameter
3550         handling for __nss_hostname_digits_dots calls.
3551         * nss/getXXbyYY_r.c: Likewise.
3553         * elf/dl-load.c (_dl_map_object_from_fd): Map DSOs with MAP_DENYWRITE.
3555 2004-05-25  Steven Munroe  <sjmunroe@us.ibm.com>
3557         * sysdeps/powerpc/fpu/Makefile: Make ld.so a dependency of libm.so.
3558         * sysdeps/powerpc/fpu/bits/mathinline.h [__LIBC_INERNAL_MATH_INLINES]
3559         (__ieee754_sqrt): Define as __MATH_INLINE using fsqrt instruction.
3560         (__ieee754_sqrtf): Define as __MATH_INLINE using fsqrts instruction.
3561         * sysdeps/powerpc/fpu/e_sqrt.c (__slow_ieee754_sqrt): Moved
3562         implementation from w_sqrt.c.
3563         * sysdeps/powerpc/fpu/e_sqrtf.c (__slow_ieee754_sqrtf): Moved
3564         implementation from w_sqrtf.c.
3565         * sysdeps/powerpc/fpu/w_sqrt.c (__sqrt): Wrapper implementation
3566         using inline __ieee754_sqrt().
3567         * sysdeps/powerpc/fpu/w_sqrtf.c (__sqrtf): Wrapper implementation
3568         using inline __ieee754_sqrtf().
3569         * sysdeps/powerpc/powerpc32/sysdep.h [__ASSEMBLER__]: Include
3570         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
3571         * sysdeps/powerpc/sysdep.h [__ASSEMBLER__] (PPC_FEATURE_*): Define
3572         PPC_FEATURE_*  independent of __ASSEMBLER__.
3574 2004-05-25  Jakub Jelinek  <jakub@redhat.com>
3576         * sysdeps/pthread/aio_notify.c: Use <> instead of "" for aio_misc.h
3577         include.
3578         (aio_start_notify_thread): Define if not defined.
3579         (notify_func_wrapper): Use it.
3580         * sysdeps/pthread/aio_misc.c: Use <> instead of "" for aio_misc.h
3581         include.
3582         (aio_create_helper_thread): Define if not defined.
3583         (__aio_create_helper_thread): New function.
3584         (__aio_enqueue_request): Use aio_create_helper_thread.
3586         * nis/ypclnt.c (ypall_data, ypall_foreach): Remove.
3587         (struct ypresp_all_data): New type.
3588         (__xdr_ypresp_all): Change second argument to
3589         struct ypresp_all_data *.  Replace ypall_foreach and
3590         ypall_data with objp->foreach and objp->data.
3591         (yp_all): Remove status variable, add data.  Replace
3592         all uses of status with data.status.  Initialize data.foreach
3593         and data.data instead of ypall_foreach and ypall_data.
3595 2004-05-24  Jakub Jelinek  <jakub@redhat.com>
3597         * elf/dl-lookup.c (add_dependency): Set DF_1_NODELETE bit
3598         in l_flags_1, not in l_flags.
3600 2004-04-10  Robert Millan  <robertmh@gnu.org>
3602         * sysdeps/unix/sysv/linux/bits/in.h: Cosmetic fixes to get in sync
3603         with sysdeps/generic/bits/in.h.
3605 2004-05-25  Roland McGrath  <roland@frob.com>
3607         * sysdeps/generic/unwind-dw2-fde-glibc.c: Change copyright terms from
3608         GCC GPL to standard glibc LGPL.
3610 2004-05-24  Ulrich Drepper  <drepper@redhat.com>
3612         * manual/string.texi (Copying and Concatenation): Fixed second
3613         concat example.
3614         Reported by Fabian Pietsch <fabian@zzznowman.dyndns.org>.
3616 2004-05-23  Ulrich Drepper  <drepper@redhat.com>
3618         * malloc/obstack.c: Don't allow linking with _obstack.
3620 2004-05-23  Andreas Schwab  <schwab@suse.de>
3622         * sysdeps/m68k/m68020/bits/atomic.h: Use "+m" constraint instead
3623         of separate "m" constraints.
3625 2004-05-15  Chris Demetriou  <cgd@broadcom.com>
3627         * sysdeps/mips/dl-machine.h (ELF_DL_FRAME_SIZE)
3628         (ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS): For the N32
3629         and 64 ABIs, save and restore regs $10 and $11 (a6 and a7).
3631 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
3633         * malloc/obstack.c (_obstack) [!defined _LIBC]: Remove; not used.
3634         Add comment explaining why libc still defines it.
3636 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
3638         * malloc/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
3639         obstack_alignment_mask, obstack_alloc, obstack_base,
3640         obstack_blank, obstack_blank_fast, obstack_chunk_size,
3641         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
3642         obstack_grow0, obstack_init, obstack_int_grow,
3643         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
3644         obstack_next_free, obstack_object_size, obstack_ptr_grow,
3645         obstack_ptr_grow_fast, obstack_room): Remove declarations of
3646         nonexistent functions.
3648 2004-05-18  Steven Munroe  <sjmunroe@us.ibm.com>
3650         * sysdeps/powerpc/powerpc64/sysdep.h [__ASSEMBLER__]: Include
3651         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
3652         [PIC]: Redundent for powerpc64, removed.
3653         (ENTRY): Generate size and alignment for opd entry.
3654         (EALIGN): Generate size and alignment for opd entry.
3655         (END): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
3656         (END_GEN_TB): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
3658 2004-05-19  Ulrich Drepper  <drepper@redhat.com>
3660         * misc/regexp.h: Say the functions have been withdrawn.
3662         * wcsmbs/tst-wcpncpy.c: Add more tests.
3664 2004-05-18  Roland McGrath  <roland@frob.com>
3666         * sysdeps/generic/unwind.h: Change copyright terms from GCC GPL to
3667         standard glibc LGPL.
3668         * sysdeps/generic/unwind-dw2.c: Likewise.
3669         * sysdeps/generic/unwind-dw2-fde.c: Likewise.
3670         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
3671         * sysdeps/generic/unwind-pe.h: Likewise.
3673 2004-05-15  Petter Reinholdtsen  <pere@hungry.com>
3675         * locale/iso-3166.def: Remove YUGOSLAVIA and insert "SERBIA AND
3676         MONTENEGRO" which have taken over the code 819.  Patch from
3677         Danilo Segan. [BZ #40]
3679 2004-05-15  Jakub Jelinek  <jakub@redhat.com>
3681         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
3682         (SYSCALL_ERROR_HANDLER): Rename __sparc.get_pic.l7 to
3683         __sparc_get_pic_l7.
3685 2004-05-15  Joseph S. Myers  <jsm@polyomino.org.uk>
3687         * catgets/gencat.c: Update bug reporting instructions.
3688         * csu/version.c: Likewise.
3689         * debug/catchsegv.sh: Likewise.
3690         * debug/pcprofiledump.c: Likewise.
3691         * debug/xtrace.sh: Likewise.
3692         * elf/ldd.bash.in: Likewise.
3693         * iconv/iconv_prog.c: Likewise.
3694         * iconv/iconvconfig.c: Likewise.
3695         * locale/programs/locale.c: Likewise.
3696         * locale/programs/localedef.c: Likewise.
3697         * login/programs/pt_chown.c: Likewise.
3698         * malloc/memusage.sh: Likewise.
3699         * malloc/memusagestat.c: Likewise.
3700         * malloc/mtrace.pl: Likewise.
3701         * manual/crypt.texi: Likewise.
3702         * manual/install.texi: Likewise.
3703         * nss/makedb.c: Likewise.
3705 2004-05-14  Jakub Jelinek  <jakub@redhat.com>
3707         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Only
3708         CHECK_STATIC_TLS if sym != NULL.
3709         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
3710         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
3712 2004-05-12  Andreas Schwab  <schwab@suse.de>
3714         * posix/regex_internal.c (build_wcs_buffer): Also set pstr->mbs
3715         when translating.
3717 2004-05-13  H.J. Lu  <hongjiu.lu@intel.com>
3719         * Rules (xtests): Depend on tests.
3721 2004-05-13  Jakub Jelinek  <jakub@redhat.com>
3723         * libio/genops.c (_IO_default_xsputn): Avoid one overflow per char if
3724         count is negative, yet write_ptr < write_end.
3725         (_IO_default_xsgetn): Avoid one underflow per char if count is
3726         negative, yet read_ptr < read_end.
3728 2004-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
3730         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h (XTABS): Define XTABS
3731         equal to TAB3.
3733 2004-05-12  Ulrich Drepper  <drepper@redhat.com>
3735         * elf/dl-lookup.c (_dl_lookup_symbol_x): Correct _dl_signal_cerror
3736         call.
3738 2004-05-10  Roland McGrath  <roland@frob.com>
3740         * hurd/hurdlookup.c (__hurd_file_name_split): Return ENOENT for "".
3741         (__hurd_directory_name_split): Likewise.
3743 2004-05-10  Ulrich Drepper  <drepper@redhat.com>
3745         * po/fr.po: Update from translation team.
3747 2004-05-10  Andreas Jaeger  <aj@suse.de>
3749         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
3750         Correctly compute alignment.
3751         Patch by Michael Matz <matz@suse.de>.
3753 2004-05-09  Ulrich Drepper  <drepper@redhat.com>
3755         * sysdeps/generic/sigpause.c: Prevent sigpause prototype.
3756         * sysdeps/posix/sigpause.c: Likewise.
3757         * signal/signal.h: Don't define sigpause macro unless needed.
3759 2004-05-08  Jakub Jelinek  <jakub@redhat.com>
3761         * configure.in (libc_cv_libgcc_s_suffix): New check.
3762         (libc_cv_as_needed): Use -lgcc_s$libc_cv_libgcc_s_suffix.
3763         * config.make.in (libgcc_s_suffix): Set.
3764         * Makeconfig (libgcc_eh): Use -lgcc_s$(libgcc_s_suffix).
3766 2004-05-08  Ulrich Drepper  <drepper@redhat.com>
3768         * signal/signal.h: Use BSD sigpause only if BSD behavior is preferred.
3770 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
3772         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_1,
3773         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
3774         Load argument values into temporary variables.
3775         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_1,
3776         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
3777         Likewise.
3779 2004-05-07  Ulrich Drepper  <drepper@redhat.com>
3781         * sysdeps/unix/sysv/linux/Makefile: mq_send.c and mq_receive.c
3782         need to be compiled with exceptions.
3784 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
3786         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Fix memory handling.
3787         * sysdeps/generic/ifreq.c (__ifreq): Fix memory handling.
3789         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Make clear that
3790         realloc cannot fail.
3792         * nss/nss_files/files-netgrp.c (EXPAND): Free buffer which cannot
3793         be expanded.
3795         * nis/nis_table.c: Clean up memory handling.
3796         * nis/nis_subr.c (nis_getnames): Clean up memory handling.
3797         * nis/nis_removemember.c (nis_removemember): Add comment
3798         explaining use of realloc.
3800         * math/tgmath.h (fabs): Use __TGMATH_UNARY_REAL_IMAG_RET_REAL.
3801         (carg): Likewise.
3802         Patch by Lev S Bishop <lev.bishop@yale.edu>.
3804         * math/bug-tgmath1.c (main): Test fabs and carg as well.
3806 2004-05-06  Richard Henderson  <rth@redhat.com>
3808         * elf/elf.h (AT_L1I_CACHESHAPE, AT_L1D_CACHESHAPE,
3809         AT_L2_CACHESHAPE, AT_L3_CACHESHAPE): New.
3810         * sysdeps/unix/sysv/linux/alpha/Versions: Export
3811         __libc_alpha_cache_shape as a private symbol.
3812         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c: New file.
3813         * sysdeps/unix/sysv/linux/alpha/sysconf.c: New file.
3815 2004-05-06  Richard Henderson  <rth@redhat.com>
3817         * sysdeps/alpha/div_libc.h (_ITOFS, _ITOFT, _FTOIT, _ITOFT2): New.
3818         * sysdeps/alpha/divl.S: Use them.
3819         * sysdeps/alpha/divq.S: Likewise.
3820         * sysdeps/alpha/divqu.S: Likewise.
3821         * sysdeps/alpha/reml.S: Likewise.
3822         * sysdeps/alpha/remq.S: Likewise.
3823         * sysdeps/alpha/remqu.S: Likewise.
3825 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
3827         * math/tgmath.h (__TGMATH_UNARY_REAL_IMAG_RET_REAL):Define.
3828         (cimag): Use it.
3829         (creal): Likewise.
3830         * math/Makefile (tests): Add bug-tgmath1.
3831         * math/bug-tgmath1.c: New file.
3833 2004-05-05  Jakub Jelinek  <jakub@redhat.com>
3835         * sysdeps/alpha/atomicity.h: Remove.
3836         * sysdeps/generic/atomicity.h: Remove.
3838 2004-05-05  H.J. Lu  <hongjiu.lu@intel.com>
3840         * sysdeps/i386/i486/bits/string.h (strpbrk): Cast return to
3841         char *.
3843 2004-04-22  David Mosberger  <davidm@hpl.hp.com>
3845         * sysdeps/unix/sysv/linux/ia64/Makefile (librt-routines): Mention
3846           rt-sysdep.
3847         * sysdeps/unix/sysv/linux/ia64/rt-sysdep.S: New file.
3849         * sysdeps/ia64/strcat.c: New file.
3850         * sysdeps/ia64/strcat.S: Delete.
3852 2004-05-04  Jakub Jelinek  <jakub@redhat.com>
3854         * sysdeps/unix/sysv/linux/ia64/sysdep.S (USE___THREAD): Remove
3855         defined.
3857 2004-04-23  Jakub Jelinek  <jakub@redhat.com>
3859         * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Add
3860         libc_hidden_proto.  Define to __GI___libm_error_support for
3861         assembly going into libc.so.
3862         * sysdeps/ia64/fpu/libc_libm_error.c (__libm_error_support): Add
3863         libc_hidden_def.
3865         * include/libc-symbols.h (HIDDEN_BUILTIN_JUMPTARGET): Define.
3866         * sysdeps/ia64/bcopy.S (bcopy): Use it for jump to memmove.
3868         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Access
3869         gprel errno if RTLD_PRIVATE_ERRNO or __thread __libc_errno/errno
3870         if USE___THREAD.
3872 2004-05-03  Jakub Jelinek  <jakub@redhat.com>
3874         * sysdeps/unix/bsd/bits/fcntl.h (F_SETOWN, F_GETOWN): Define if
3875         __USE_BSD or __USE_UNIX98.
3876         * sysdeps/unix/bsd/ultrix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3877         * sysdeps/unix/bsd/bsd4.4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3878         * sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h (F_SETOWN, F_GETOWN):
3879         Likewise.
3880         * sysdeps/unix/common/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3881         * sysdeps/unix/sysv/aix/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3882         * sysdeps/unix/sysv/irix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3883         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (F_SETOWN, F_GETOWN):
3884         Likewise.
3885         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_SETOWN, F_GETOWN):
3886         Likewise.
3887         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (F_SETOWN, F_GETOWN):
3888         Likewise.
3889         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (F_SETOWN, F_GETOWN):
3890         Likewise.
3891         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (F_SETOWN, F_GETOWN):
3892         Likewise.
3893         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (F_SETOWN, F_GETOWN):
3894         Likewise.
3895         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (F_SETOWN, F_GETOWN):
3896         Likewise.
3897         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (F_SETOWN, F_GETOWN):
3898         Likewise.
3899         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (F_SETOWN, F_GETOWN):
3900         Likewise.
3901         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (F_SETOWN, F_GETOWN):
3902         Likewise.
3903         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (F_SETOWN, F_GETOWN):
3904         Likewise.
3905         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (F_SETOWN, F_GETOWN):
3906         Likewise.
3907         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_SETOWN, F_GETOWN):
3908         Likewise.
3909         * sysdeps/generic/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3910         * sysdeps/mach/hurd/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
3911         * io/sys/stat.h (S_ISSOCK, S_IFSOCK): Likewise.
3913 2004-05-01  Jakub Jelinek  <jakub@redhat.com>
3915         * posix/Versions (libc): Remove __libc_wait, __libc_waitpid,
3916         __libc_pause, __libc_nanosleep, __libc_pread, __libc_pread64,
3917         __libc_pwrite64, __waitid and __pselect @@GLIBC_PRIVATE.
3918         * stdlib/Versions (libc): Remove __on_exit@@GLIBC_PRIVATE.
3919         * sysdeps/unix/sysv/linux/Versions (libc): Remove
3920         __libc_sigaction@@GLIBC_PRIVATE.
3921         * sysdeps/unix/sysv/linux/x86_64/Versions (libc): Remove
3922         __modify_ldt@@GLIBC_PRIVATE.
3923         * socket/Versions (libc): Remove __libc_accept, __libc_send,
3924         __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv,
3925         __libc_sendto and __libc_connect @@GLIBC_PRIVATE.
3926         * stdio-common/Versions (libc): Remove
3927         _itoa_upper_digits@@GLIBC_PRIVATE.
3928         * resolv/Versions (libresolv): Remove __ns_samename@@GLIBC_PRIVATE.
3929         * misc/Versions (libc): Remove __libc_fsync, __libc_msync,
3930         __libc_readv and __libc_writev @@GLIBC_PRIVATE.
3931         * termios/Versions (libc): Remove __libc_tcdrain@@GLIBC_PRIVATE.
3932         * io/Versions (libc): Remove __libc_open, __libc_close, __libc_read,
3933         __libc_write, __libc_lseek, __libc_fcntl, __libc_open64 and
3934         __libc_lseek64 @@GLIBC_PRIVATE.
3936 2004-04-30  Jakub Jelinek  <jakub@redhat.com>
3938         * elf/dl-load.c (open_verify): Move e_phentsize check after e_type
3939         check.
3941 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
3943         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: New file.
3944         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: New file.
3945         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: New file.
3946         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: New file.
3947         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: Removed.
3948         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: New file.
3949         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: Removed.
3950         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: New file.
3951         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: New file.
3952         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: New file.
3953         * sysdeps/powerpc/powerpc64/fpu/s_lround.S: New file.
3954         * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: New file.
3955         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: New file.
3956         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: New file.
3957         * sysdeps/powerpc/powerpc64/fpu/s_round.S: New file.
3958         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: New file.
3959         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: New file.
3960         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: New file.
3962         * math/test-misc.c [LDBL_MANT_DIG == 106](main): Correct LDBL_MAX
3963         mantissa for AIX long double format.
3964         * misc/qefgcvt.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Define for AIX
3965         long double format.
3966         * misc/qefgcvt_r.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Likewise.
3967         * stdlib/fpioconst.c [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
3968         (_fpioconst_pow10): AIX long double format has same exponent range as
3969         double.
3970         * stdlib/fpioconst.h [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
3971         (LDBL_MAX_10_EXP_LOG): AIX long double format has same exponent range
3972         as double.
3974 2004-04-23  Art Haas  <ahaas@airmail.net>
3976         * sysdeps/unix/sysv/linux/kernel-features.h: Add 'defined'.
3978 2004-04-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
3980         * sysdeps/unix/sysv/linux/mq_getattr.c: Include <stddef.h>.
3981         * sysdeps/unix/sysv/linux/mq_notify.c: Likewise.
3982         * sysdeps/unix/sysv/linux/mq_open.c: Likewise.
3983         * sysdeps/unix/sysv/linux/mq_receive.c: Likewise.
3984         * sysdeps/unix/sysv/linux/mq_send.c: Likewise.
3986 2004-04-29  Philip Blundell  <pb@nexus.co.uk>
3988         * sysdeps/arm/dl-machine.h (RTLD_START): Avoid unnecessary GOT
3989         entries.
3991 2004-04-29  Jakub Jelinek  <jakub@redhat.com>
3993         * manual/resource.texi (sched_setaffinity, sched_getaffinity): Fix
3994         prototypes and description [BZ #131].
3996         * string/bits/string2.h (strpbrk): Cast NULL to char * [BZ #130].
3997         Patch by Ed Catmur <ed@catmur.co.uk>.
3998         * string/tst-inlcall.c (main): Add test for strpbrk.
4000         [BZ #140]
4001         * sysdeps/unix/sysv/linux/sys/sysctl.h: Remove linux/compiler.h
4002         include.
4003         (_LINUX_KERNEL_H, _LINUX_TYPES_H, _LINUX_LIST_H): Only define if not
4004         yet defined, #undef back after including linux/sysctl.h if defined
4005         here.
4006         (__LINUX_COMPILER_H, __user): Define if not yet defined, #undef
4007         back after including linux/sysctl.h if defined here.
4009         * sysdeps/sparc/sparc64/soft-fp/qp_qtoi.c (_Qp_qtoi): Use %f31
4010         for single precision register, add it to __asm clobbers [BZ #139].
4011         * sysdeps/sparc/sparc64/soft-fp/qp_qtoui.c (_Qp_qtoui): Use %f31
4012         for single precision register, add it to __asm clobbers.
4013         * sysdeps/sparc/sparc64/soft-fp/qp_qtoux.c (_Qp_qtoux): Use fqtox
4014         instead of fqtoi in QP_HANDLE_EXCEPTIONS.
4015         * sysdeps/sparc/sparc64/soft-fp/qp_qtox.c (_Qp_qtox): Likewise.
4016         Reported by M. H. VanLeeuwen <vanl@megsinet.net>.
4018 2004-04-23  Andreas Schwab  <schwab@suse.de>
4020         * sysdeps/unix/sysv/linux/m68k/register-dump.h: Use
4021         __attribute_used__.
4023 2004-04-22  Philip Blundell  <philb@gnu.org>
4025         * sysdeps/arm/dl-machine.h (elf_machine_rela): Don't use INTUSE
4026         when calling _dl_signal_error.
4027         (elf_machine_rel): Likewise.
4029 2004-04-21  Ulrich Drepper  <drepper@redhat.com>
4031         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Define _GI___sigsetjmp
4032         and use it internally instead of __sigsetjmp.
4033         * sysdeps/ia64/fpu/s_frexpf.c (frexpf): Use _GI___libm_frexp_4f.
4034         * sysdeps/ia64/fpu/s_frexpl.c (frexpl): Use _GI___libm_frexp_4l.
4035         * sysdeps/ia64/fpu/libm_frexp4.S: Define _GI___libm_frexp_4.
4036         * sysdeps/ia64/fpu/libm_frexp4f.S: Define _GI___libm_frexp_4f.
4037         * sysdeps/ia64/fpu/libm_frexp4l.S: Define _GI___libm_frexp_4l.
4038         * sysdeps/ia64/fpu/s_frexp.c (frexp): Use _GI___libm_frexp_4.
4039         * sysdeps/ia64/fpu/libm_support.h: Declare _GI___libm_frexp_4,
4040         _GI___libm_frexp_4f, _GI___libm_frexp_4l.
4041         * sysdeps/ia64/fpu/bits/mathinline.h: New file.
4042         * sysdeps/unix/sysv/linux/ia64/__start_context.S: Use
4043         HIDDEN_JUMPTARGET for exit call.
4044         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use HIDDEN_JUMPTARGET for
4045         _exit call.
4046         * sysdeps/ia64/bcopy.S: Use HIDDEN_JUMPTARGET for memmove call.
4047         * sysdeps/ia64/strcat.S: Use HIDDEN_JUMPTARGET for strlen and
4048         strcpy calls.
4050 2004-04-21  Jakub Jelinek  <jakub@redhat.com>
4052         * posix/tst-chmod.c (do_test): Fix a typo.
4054         * elf/lateglobal.c (main): Fix error checks.
4055         Patch by Stephen Clarke <stephen.clarke@st.com>.
4057         * manual/ctype.texi (isblank, iswblank): Mark as ISO functions,
4058         mention they have been added in ISO C99.
4059         Reported by Ben Pfaff <blp@cs.stanford.edu>.
4061 2004-03-31  H.J. Lu  <hongjiu.lu@intel.com>
4063         * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: Fix typo.
4065 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
4067         * sysdeps/unix/sysv/linux/shm_open.c (shm_unlink): Change EPERM into
4068         EACCES.
4070 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
4072         * stdio-common/vfscanf.c (_IO_vfscanf): Revert last %% whitespace
4073         handling change.
4074         * stdio-common/tst-sscanf.c (int_tests): Adjust.
4076         * nis/nss-nis.c: Include stdlib.h.
4078         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Shut up a
4079         warning.
4080         * sysdeps/sparc/sparc64/memcmp.S (memcmp): Remove BP_SYM () from
4081         libc_hidden_builtin_def.
4083 2004-04-20  Jim Meyering  <jim@meyering.net>
4085         * misc/error.c (error_tail): Don't leak upon realloc failure.
4087 2004-04-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4089         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
4090         Use RETURN_ADDRESS instead of __builtin_return_address.
4092 2004-04-19  Ulrich Drepper  <drepper@redhat.com>
4094         * sysdeps/unix/sysv/linux/mq_unlink.c: Rewrite to produce more
4095         compact code.
4097 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
4099         * stdio-common/vfscanf.c (_IO_vfscanf): When skipping whitespace,
4100         do input_error () instead of conv_error () and don't look at errno.
4101         Don't eat any whitespace before %% if skip_space == 0.
4102         * stdio-common/tst-sscanf.c (int_tests): New array.
4103         (main): Run int_tests.
4106 See ChangeLog.14 for earlier changes.