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