Updated to fedora-glibc-20041102T1153
[glibc/history.git] / ChangeLog
blob22eaa07c32a169ffaa65359b89b2d5594cf11c0e
1 2004-10-31  Mariusz Mazur <mmazur@kernel.pl>
3         * sysdeps/unix/sysv/linux/alpha/setregid.c: New file.
4         * sysdeps/unix/sysv/linux/alpha/setresgid.c: New file.
5         * sysdeps/unix/sysv/linux/alpha/setresuid.c: New file.
6         * sysdeps/unix/sysv/linux/alpha/setreuid.c: New file.
8 2004-10-27  Derek R. Price  <derek@ximbiot.com>
10         [BZ #487] This change is imported from gnulib.
11         * time/mktime.c (not_equal_tm) [DEBUG]: Remove redundant check.
13 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
15         [BZ #473]
16         * time/tst-mktime.c (main): Don't assume that mktime fails
17         when given time stamps before 1970.  It returns negative
18         time_t values instead, for compatibility with BSD.
20         * time/tst-mktime2.c: New file.
21         * time/Makefile (tests): Add it.
23         [BZ #473] Import from gnulib.  Revamp to avoid several problems near
24         time_t extrema, and on hosts with 64-bit time_t and 32-bit int.
25         This fixes Debian bug 177940.
26         * time/mktime.c (TIME_T_MIDPOINT): New macro.
27         (ydhms_diff): Renamed from ydhms_tm_diff, with a new signature,
28         which avoids overflow problems on hosts with 64-bit time_t and
29         32-bit int.  All callers changed.  Now an inline function.
30         Verify at compile-time that long int is wide enough to avoid
31         these overflow problems.
32         (guess_time_tm): New function.
33         (__mktime_internal): Use it.  Avoid overflow when computing yday on
34         hosts with 64-bit long and 32-bit int.  Remove tests for 69;
35         no longer needed.  Use if rather than #ifdef for LEAP_SECONDS_POSSIBLE
36         so that the code is checked by more compilers.
37         Do not rely on floating point to probe: stick to integer arithmetic,
38         to avoid potential porting problems.
39         Repair potential overflow correctly in the Southern Hemisphere.
40         (localtime_offset): Add a FIXME for the case where time_t is unsigned.
42 2004-10-30  Andreas Schwab  <schwab@suse.de>
44         * sysdeps/m68k/dl-machine.h (elf_machine_rela)
45         (elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
46         instead of static.
48 2004-10-30  Andreas Schwab  <schwab@suse.de>
50         * sysdeps/unix/sysv/linux/waitid.c: Include <stddef.h> for NULL.
52 2004-10-30  Ulrich Drepper  <drepper@redhat.com>
54         * malloc/malloc.c (_int_free): Use unique comments for the error
55         cases.
57 2004-10-28  Roland McGrath  <roland@frob.com>
59         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_fork): Use i386_thread_state
60         instead of machine_thread_state.
62 2004-10-28  Roland McGrath  <roland@redhat.com>
64         * sysdeps/unix/sysv/linux/syscalls.list: Remove setaltroot.
66 2004-10-28  Ulrich Drepper  <drepper@redhat.com>
68         * elf/dl-open.c (dl_open_worker): Remove reference to glibcbug script.
70 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
72         * elf/dl-load.c (_dl_map_object): Use cache_rpath to check for
73         existing rpath in main executable, not explicit test.
75 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
77         * include/resolv.h (_res_opcodes): New extern.
78         Add libresolv_hidden_proto.
79         * resolv/res_debug.c (_res_opcodes): Remove.
80         (__p_class_syms, __p_type_syms): Add libresolv_hidden_proto
81         and libresolv_hidden_data_def.  Remove attribute_hidden.
82         * resolv/res_mkquery (_res_opcodes): Remove.
83         * resolv/res_data.c (_res_opcodes): Remove attribute_hidden.
84         Add libresolv_hidden_data_def.
86 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
88         * elf/dl-open.c (_dl_open): Don't allow explicitly opening a DSO
89         into an empty namespace.
91         * elf/dl-fini.c (_dl_fini): Fix search for map in maps array.
92         Reverse order of namespaces.
93         * elf/Makefile: Add rules to build and run tst-dlmopen3.
94         * elf/tst-dlmopen3.c: New file.
95         * elf/tst-dlmopen1mod.c: Add check whether constructor runs.
97 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
99         * sysdeps/generic/glob.c (globfree): Clear gl_pathv after freeing it.
100         * posix/Makefile: Add rules to build and run bug-glob2 test.
101         * posix/bug-glob2.c: New test.
103 2004-10-27  Roland McGrath  <roland@frob.com>
105         * sysdeps/mach/hurd/i386/tls.h (HURD_TLS_DESC_DECL): New macro.
106         (_hurd_tls_init): Use it.
107         (_hurd_tls_fork): New function.
108         * sysdeps/mach/hurd/fork.c (__fork) [USE_TLS]: Call it.
110 2004-10-26  Roland McGrath  <roland@frob.com>
112         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Initialize TCB->tcb.
114 2004-10-26  Jakub Jelinek  <jakub@redhat.com>
116         * sysdeps/gnu/netinet/udp.h (struct udphdr): Use u_int16_t
117         type instead of uint16_t.  Formatting.
119 2004-10-25  Roland McGrath  <roland@redhat.com>
121         * login/openpty.c (openpty): Add libutil_hidden_def.
123         * nss/nss_files/files-parse.c (nss_files_parse_hidden_def): Define to
124         either libc_hidden_def or libnss_files_hidden_def, not hidden_def.
125         This file is also compiled into libnss_hesiod by #include.
127 2004-10-25  Roland McGrath  <roland@frob.com>
129         * sysdeps/unix/bsd/hp: Directory and all files removed.
130         These are now in the ports repository.
131         * sysdeps/unix/bsd/osf: Likewise.
132         * sysdeps/unix/bsd/sequent: Likewise.
133         * sysdeps/unix/bsd/sony: Likewise.
134         * sysdeps/unix/bsd/ultrix4: Likewise.
135         * sysdeps/unix/sysv/aix: Likewise.
136         * sysdeps/unix/sysv/hpux: Likewise.
137         * sysdeps/unix/sysv/irix4: Likewise.
138         * sysdeps/unix/sysv/isc2.2: Likewise.
139         * sysdeps/unix/sysv/minix: Likewise.
140         * sysdeps/unix/sysv/sco3.2.4: Likewise.
141         * sysdeps/unix/sysv/sco3.2: Likewise.
142         * sysdeps/unix/sysv/sysv4: Likewise.
144         * configure.in (ASM_LINE_SEP): Move this setting to ...
145         * sysdeps/hppa/configure.in: ... here, new file.
146         * sysdeps/hppa/configure: New generated file.
147         * configure: Regenerated.
149 2004-10-25  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
151         * sysdeps/sh/dl-machine.h: Include sysdep.h.
152         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add CFI directives.
153         (elf_machine_runtime_setup): Add always_inline attribute.
154         (_dl_start_user): Pass the correct environ.
155         (elf_machine_rela): Replace static inline by auto inline, add
156         always_inline attribute.
157         (elf_machine_rela_relative): Likewise.
158         (elf_machine_lazy_rel): Likewise.
160 2004-10-24  Ulrich Drepper  <drepper@redhat.com>
162         * nis/nis_call.c: Pretty printing.  Minor cleanups.
163         * nis/nis_addmember.c (nis_addmember): Add assert to check buffer
164         bounds.
166         * resolv/nss_dns/dns-host.c: Avoid using PLTs.
167         * include/libc-symbols.h: Define hidden attribute macros for
168         libnss_nisplus and libutil.
169         * include/utmp.h: Add libutil_hidden_proto for login_tty.
170         * login/login_tty.c: Add libutil_hidden_def.
171         * nis/nisplus-parser.h: Add libnss_nisplus_hidden_proto for parsers.
172         * nis/nss_nisplus/nisplus-parser.c: Add libnss_nisplus_hidden_def.
173         * include/pty.h: New file.
174         * include/rpcsvc/yp.h: New file.
175         * include/rpcsvc/ypclnt.h: New file.
176         * include/rpcsvc/ypupd.h: New file.
177         * include/libc-symbols.h: Define hidden attribute macros for libnsl.
178         * include/rpcsvc/nislib.h: Use libnsl_hidden_proto for various
179         functions.
180         * nis/nis_add.c: Add libnsl_hidden_def.  Minor optimizations.
181         * nis/nis_call.c: Likewise.
182         * nis/nis_clone_obj.c: Likewise.
183         * nis/nis_defaults.c: Likewise.
184         * nis/nis_domain_of_r.c: Likewise.
185         * nis/nis_error.c: Likewise.
186         * nis/nis_file.c: Likewise.
187         * nis/nis_free.c: Likewise.
188         * nis/nis_local_names.c: Likewise.
189         * nis/nis_lookup.c: Likewise.
190         * nis/nis_modify.c: Likewise.
191         * nis/nis_print.c: Likewise.
192         * nis/nis_remove.c: Likewise.
193         * nis/nis_subr.c: Likewise.
194         * nis/nis_table.c: Likewise.
195         * nis/nis_util.c: Likewise.
196         * nis/yp_xdr.c: Likewise.
197         * nis/ypclnt.c: Likewise.
198         * nis/ypupdate_xdr.c: Likewise.
200         * resolv/res_send.c (send_dg): Cope with failures.
202         * include/libc-symbols.h: Define hidden attribute macros for
203         libnss_files.
204         * include/netdb.h: Use libnss_files_hidden_proto for the parsers
205         defined in libnss_files, not libc_hidden_proto.
206         * include/netinet/ether.h: Likewise.
207         * include/rpc/netdb.h: Likewise.
208         * nss/nss_files/files-parse.c: Use hidden_def in parser definitions
209         instead of libc_hidden_def.
210         * nss/nss_files/files-netgrp.c: Add libnss_files_hidden_def to
211         _nss_netgroup_parseline definition.
213 2004-10-23  Roland McGrath  <roland@frob.com>
215         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Don't return early
216         after an RPC succeeds.
218         * sysdeps/vax, sysdeps/unix/bsd/vax: Directories and all files removed.
219         These are now in the ports repository.
220         * sysdeps/tahoe, sysdeps/unix/bsd/tahoe: Likewise.
221         * sysdeps/cris, sysdeps/unix/sysv/linux/cris: Likewise.
222         * sysdeps/am29k, sysdeps/i860, sysdeps/i960, sysdeps/m88k: Likewise.
223         * sysdeps/standalone, sysdeps/z8000: Likewise.
225 2004-10-23  Ulrich Drepper  <drepper@redhat.com>
227         * resolv/res_send.c (send_dg): Combine write and read to socket
228         into one loop.
230 2004-10-22  Roland McGrath  <roland@frob.com>
232         * Makefile (%.bz2, %.gz): Move these pattern rules ...
233         * Makerules: ... to here.
235 2001-10-31  Alexandre Oliva  <aoliva@redhat.com>
237         * elf/elf.h: Add R_MN10300_* relocation numbers.
239 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
241         [BZ #471] Fix imported from gnulib.
242         * time/mktime.c (leapyear, ydms_tm_diff): Year is of type
243         long int, not int, to avoid problems when tm_year == INT_MAX
244         and tm_mon > 12.
245         (__mktime_intenral): Compute year using long int arithmetic,
246         not int arithmetic, to avoid problems on hosts where time_t
247         and long are 64 bits but int is 32.
249         [BZ #468] Import a fix from gnulib.
250         * time/mktime.c [! DEBUG]: Do not include <string.h>.
251         It's needed only if DEBUG is nonzero.
253         [BZ #470] Import fix from gnulib.
254         * time/mktime.c [!_LIBC] (__mktime_internal): Define to
255         mktime_internal, to avoid clashes with any __mktime_internal
256         function defined in the standard library.
258         [BZ #469] Imported from gnulib.
259         * time/mktime.c (__isleap): Remove; all uses replaced by:
260         (leapyear): New function, which avoids overflow by not adding
261         1900 to year before testing whether it is a leap year.
263         [BZ #472] Imported from gnulib.
264         * time/mktime.c (Local Variables): Remove -DHAVE_TIME_R_POSIX;
265         no longer used.
267 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
269         * resolv/res_send.c: Remove compatibility code which is unused in
270         glibc and probably bitrotten.
272         * debug/execinfo.h: Remove __THROW from backtrace prototype.
274 2004-10-22  Jakub Jelinek  <jakub@redhat.com>
276         * sysdeps/i386/Makefile (CFLAGS-backtrace.c): Add -fexceptions.
277         * sysdeps/i386/backtrace.c: Include <bits/libc-lock.h>, <dlfcn.h>,
278         <stdlib.h> and <unwind.h>.  Remove <bp-checks.h> include.
279         (struct trace_arg): New type.
280         (unwind_backtrace, unwind_getip, unwind_getcfa, unwind_getgr): New
281         fn pointers resp. macros.
282         (init, backtrace_helper): New functions.
283         (__backtrace): Rewritten to use _Unwind_Backtrace first and fall
284         back to frame pointer walking.
286 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
288         * sysdeps/unix/sysv/linux/Versions: Things are still in flux, it
289         seems.  Undo last additions.
291 2004-10-21  Ulrich Drepper  <drepper@redhat.com>
293         * posix/execvp.c (execvp): Also ignore ENODEV and ETIMEDOUT errno
294         values.
296 2004-10-20  Jakub Jelinek  <jakub@redhat.com>
298         * sysdeps/unix/sysv/linux/readonly-area.c (__readonly_area): If /proc
299         is not mounted, return 1.
301 2004-10-20  Roland McGrath  <roland@redhat.com>
303         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Check also
304         $(config-sysdirs) for shlib-versions files.
306         * Makeconfig ($(common-objpfx)soversions.i): Replace shell loop with
307         use of ...
308         * scripts/soversions.awk: ... this new file.  Collect lib info and
309         match any DEFAULT line before emitting anything, so DEFAULT can come
310         later in the concatenation of shlib-versions files.
312         * manual/errno.texi (Error Codes): Add ENOKEY, EKEYEXPIRED,
313         EKEYREVOKED, EKEYREJECTED.
314         * sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.3.4): New errlist.
315         * sysdeps/gnu/errlist.c: Regenerated
317         * sysdeps/gnu/errlist-compat.awk: Don't bail if Versions gives a count
318         higher than ERR_MAX reports.  Instead, emit a #define ERR_MAX.
319         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.h): New target.
320         (generated): Add errlist-compat.h.
321         * sysdeps/gnu/errlist.awk: Make output #include <errlist-compat.h> to
322         define ERR_MAX and use that for table size.
324 2004-10-20  Ulrich Drepper  <drepper@redhat.com>
326         * sysdeps/unix/sysv/linux/syscalls.list: Add entries for setaltroot,
327         key_add, key_request, and keyctl syscalls.
328         * sysdeps/unix/sysv/linux/Versions: Export them.
330 2004-10-19  Roland McGrath  <roland@frob.com>
332         * sysdeps/mach/readonly-area.c: New file.
334 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
336         * elf/Versions [ld, GLIBC_PRIVATE]: Add _dl_debug_state.
337         * elf/dl-debug.c (_dl_debug_state): Add rtld_hidden_def.
338         * sysdeps/generic/ldsodefs.h (_dl_debug_state): Don't mark as
339         hidden but use rtld_hidden_proto.
341 2004-10-19  Alfred M. Szmidt  <ams@gnu.org>
343         * sysdeps/generic/readonly-area.c (__readonly_str): Renamed to ...
344         (__readonly_area): ... this.
346 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
348         * sysdeps/generic/strcpy_chk.c (__strcpy_chk): Speed up by checking
349         destlen only every 4 bytes.
351 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
353         * nss/getent.c (hosts_keys): Let inet_pton decide whether the
354         string is an address or not.
356 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
358         * elf/dl-addr.c (_dl_addr): Don't look at STT_TLS symbols.
359         Use DL_SYMBOL_ADDRESS to set dli_saddr.
361         * debug/Makefile (catchsegv): Prefix $LIB with a backslash.
363 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
365         * debug/Makefile ($(objpfx)catchsegv): To support multilib
366         platforms, use $LIB in path to slibdir.
368 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
370         * debug/catchsegv.sh: Update copyright year.
371         Use mktemp to create segv_output file.
373 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
375         * include/features.h (__USE_FORTIFY_LEVEL): Enable even with
376         Red Hat gcc4 4.0.0 and above.
378 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
380         * elf/dl-libc.c (__libc_dlsym_private, __libc_register_dl_open_hook):
381         New functions.
382         (__libc_dlopen_mode): Call __libc_register_dl_open_hook and
383         __libc_register_dlfcn_hook.
384         * dlfcn/Makefile (routines, elide-routines.os): Set.
385         Add rules to build and test tststatic2.
386         * dlfcn/tststatic2.c: New test.
387         * dlfcn/modstatic2.c: New test module.
388         * dlfcn/dladdr.c: Call _dlfcn_hook from libdl.so if not NULL.
389         Define __ prefixed routine in libc.a and in libdl.a just call it.
390         * dlfcn/dladdr1.c: Likewise.
391         * dlfcn/dlclose.c: Likewise.
392         * dlfcn/dlerror.c: Likewise.
393         * dlfcn/dlinfo.c: Likewise.
394         * dlfcn/dlmopen.c: Likewise.
395         * dlfcn/dlopen.c: Likewise.
396         * dlfcn/dlopenold.c: Likewise.
397         * dlfcn/dlsym.c: Likewise.
398         * dlfcn/dlvsym.c: Likewise.
399         * dlfcn/sdladdr.c: New file.
400         * dlfcn/sdladdr1.c: New file.
401         * dlfcn/sdlclose.c: New file.
402         * dlfcn/sdlerror.c: New file.
403         * dlfcn/sdlinfo.c: New file.
404         * dlfcn/sdlopen.c: New file.
405         * dlfcn/sdlsym.c: New file.
406         * dlfcn/sdlvsym.c: New file.
407         * dlfcn/Versions (libdl): Export _dlfcn_hook@GLIBC_PRIVATE.
408         * include/dlfcn.h (DL_CALLER_DECL, DL_CALLER RETURN_ADDRESS): Define.
409         (struct dlfcn_hook): New type.
410         (_dlfcn_hook): New extern decl.
411         (__dlopen, __dlclose, __dlsym, __dlerror, __dladdr, __dladdr1,
412         __dlinfo, __dlmopen, __libc_dlsym_private,
413         __libc_register_dl_open_hook, __libc_register_dlfcn_hook): New
414         prototypes.
415         (__dlvsym): Use DL_CALLER_DECL.
416         * include/libc-symbols.h: Define libdl_hidden_proto and friends.
418         * malloc/arena.c (_dl_open_hook): Extern decl.
419         (ptmalloc_init): Don't call _dl_addr when dlopened from statically
420         linked programs but don't use brk for them either.
422 2004-10-18  Roland McGrath  <roland@redhat.com>
424         * dlfcn/bug-dlsym1.c (main): Remove bogus setenv call.
426 2004-10-18  Ulrich Drepper  <drepper@redhat.com>
428         * elf/dl-open.c (dl_open_worker): Avoid dereferencing map in
429         statically linked code if there might none be found.
431 2004-10-06  Maciej W. Rozycki  <macro@mips.com>
433         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
434         (__SYSCALL_CLOBBERS): Add "memory".
435         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h
436         (__SYSCALL_CLOBBERS): Likewise.
437         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h
438         (__SYSCALL_CLOBBERS): Likewise.
440 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
442         * include/libc-symbols.h: Define libresolv_hidden_proto and friends.
443         * include/resolv.h: Add libresolv_hidden_proto for symbols defined,
444         used, and exported in libresolv.
445         * resolv/base64.c: Add libresolv_hidden_def.
446         * resolv/gethnamaddr.c: Likewise.
447         * resolv/ns_name.c: Likewise.
448         * resolv/ns_netint.c: Likewise.
449         * resolv/res_comp.c: Likewise.
450         * resolv/res_data.c: Likewise.
451         * resolv/res_debug.c: Likewise.
452         * resolv/res_mkquery.c: Likewise.
453         * resolv/res_query.c: Likewise.
454         * resolv/res_send.c: Likewise.
456 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
458         * elf/dl-minimal.c (__chk_fail): New.  Add rtld_hidden_def.
459         * sysdeps/unix/sysv/linux/readonly-area.c: New file.
460         * sysdeps/i386/i686/memmove.S (__memmove_chk): Add checking
461         routine.
462         * sysdeps/i386/i686/memcpy.S (__memcpy_chk): Likewise.
463         * sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
464         * sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
465         * sysdeps/i386/i686/memmove-chk.S: New file.
466         * sysdeps/i386/i686/memcpy-chk.S: Likewise.
467         * sysdeps/i386/i686/mempcpy-chk.S: Likewise.
468         * sysdeps/i386/i686/memset-chk.S: Likewise.
469         * sysdeps/generic/strcat-chk.c (__strcat_chk): Don't __chk_fail
470         if exactly fitting into buffer.
471         * sysdeps/generic/strncat-chk.c (__strncat_chk): Likewise.
472         * sysdeps/generic/readonly-area.c: New file.
473         * sysdeps/generic/strncpy-chk.c (__strncpy_chk): Only test
474         destlen once.
475         * sysdeps/x86_64/memset.S (__memset_chk): Add checking routine.
476         * sysdeps/x86_64/memcpy.S (__memcpy_chk): Likewise.
477         * sysdeps/x86_64/mempcpy.S (__memcpy_chk): Define to __mempcpy_chk.
478         * sysdeps/x86_64/memcpy-chk.S: New file.
479         * sysdeps/x86_64/mempcpy-chk.S: Likewise.
480         * sysdeps/x86_64/memset-chk.S: Likewise.
481         * sysdeps/x86_64/strcpy-chk.S: Likewise.
482         * sysdeps/x86_64/stpcpy-chk.S: Likewise.
483         * argp/argp-xinl.c (__OPTIMIZE__): Define to 1 instead of nothing.
484         * argp/argp-fs-xinl.c (__OPTIMIZE__): Likewise.
485         * debug/tst-chk1.c: New test.
486         * debug/tst-chk2.c: Likewise.
487         * debug/tst-chk3.c: Likewise.
488         * debug/test-strcpy_chk.c: Likewise.
489         * debug/test-stpcpy_chk.c: Likewise.
490         * debug/vsprintf_chk.c (__vsprintf_chk): If flags > 0, request
491         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
492         * debug/Makefile (routines): Add printf_chk, fprintf_chk, vprintf_chk,
493         vfprintf_chk, gets_chk and readonly-area.
494         (CFLAGS-*_chk.c): Set.
495         (tests): Add tst-chk1, tst-chk2, tst-chk3, test-strcpy_chk and
496         test-stpcpy_chk.
497         * debug/vprintf_chk.c: New file.
498         * debug/printf_chk.c: Likewise.
499         * debug/vfprintf_chk.c: Likewise.
500         * debug/fprintf_chk.c: Likewise.
501         * debug/gets_chk.c: Likewise.
502         * debug/chk_fail.c (__chk_fail): Add libc_hidden_def.
503         * debug/snprintf_chk.c (__snprintf_chk): Fix order of arguments
504         passed to __vsnprintf_chk.
505         * debug/Versions (libc): Export __printf_chk, __fprintf_chk,
506         __vprintf_chk, __vfprintf_chk and __gets_chk @GLIBC_2.3.4.
507         * debug/vsnprintf_chk.c (__vsnprintf_chk): Don't call
508         __vsnprintf, instead create a temporary file with
509         _IO_strn_jumps jumptable.  If flags > 0, request
510         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
511         * libio/Makefile (headers): Add bits/stdio2.h.
512         * libio/stdio.h: Include <bits/stdio2.h> if __USE_FORTIFY_LEVEL.
513         (sprintf, snprintf, vsprintf, vsnprintf): Remove defines.
514         * libio/strfile.h (_IO_strnfile): New type.
515         (_IO_strn_jumps): New extern.
516         * libio/vsnprintf.c (_IO_strnfile): Remove.
517         (_IO_strn_jumps): Remove static.
518         * libio/bits/stdio2.h: New file.
519         * libio/vswprintf.c (_IO_strnfile): Rename type to...
520         (_IO_wstrnfile): ...this.  Adjust all uses.
521         * libio/libio.h (_IO_FLAGS2_CHECK_PERCENT_N): Define.
522         * stdio-common/vfprintf.c (STR_LEN): Define.
523         (vfprintf): Add readonly_format variable.
524         Handle _IO_FLAGS2_CHECK_PERCENT_N.
525         (buffered_vfprintf): Copy _flags2.
526         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
527         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
528         __vfprintf_chk): New prototypes.
529         (__vsprintf_chk, __vsnprintf_chk): Add libc_hidden_proto.
530         * include/string.h (__memcpy_chk, __memmove_chk, __mempcpy_chk,
531         __memset_chk, __strcpy_chk, __stpcpy_chk, __strncpy_chk, __strcat_chk,
532         __strncat_chk): New prototypes.
533         * include/bits/string3.h: New file.
534         * include/sys/cdefs.h (__chk_fail): Add libc_hidden_proto
535         and rtld_hidden_proto.
536         * string/Makefile (headers): Add bits/string3.h.
537         * string/bits/string3.h (bcopy, bzero): New defines.
538         (memset, memcpy, memmove, strcpy, strncpy, strcat, strncat): Change
539         macros so that inlines are used only if unknown destination size
540         or side-effects in destination argument.
541         (mempcpy, stpcpy): Likewise.  Protect with #ifdef __USE_GNU.
543 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
545         * debug/Makefile (routines): Add *_chk.
546         * debug/Versions (libc): Export __chk_fail, __memcpy_chk,
547         __memmove_chk, __mempcpy_chk, __memset_chk, __stpcpy_chk,
548         __strcat_chk, __strcpy_chk, __strncat_chk, __strncpy_chk,
549         __sprintf_chk, __vsprintf_chk, __snprintf_chk, __vsnprintf_chk
550         @GLIBC_2.3.4.
551         * debug/chk_fail.c: New file.
552         * debug/snprintf_chk.c: Likewise.
553         * debug/sprintf_chk.c: Likewise.
554         * debug/vsnprintf_chk.c: Likewise.
555         * debug/vsprintf_chk.c: Likewise.
556         * include/features.h (_FORTIFY_SOURCE): Document, handle.
557         (__USE_FORTIFY_LEVEL): Define.
558         (__GNUC_PREREQ): Move to earlier location.
559         * include/sys/cdefs.h (__chk_fail): New prototype.
560         * libio/bits/stdio.h (sprintf, vsprintf, snprintf, vsnprintf):
561         Define if __USE_FORTIFY_LEVEL.
562         * misc/sys/cdefs.h (__bos, __bos0): Define.
563         * string/string.h: Include <bits/string3.h> if __USE_FORTIFY_LEVEL.
564         * bits/string/string3.h: New header.
565         * sysdeps/generic/memcpy_chk.c: New file.
566         * sysdeps/generic/memmove_chk.c: Likewise.
567         * sysdeps/generic/mempcpy_chk.c: Likewise.
568         * sysdeps/generic/memset_chk.c: Likewise.
569         * sysdeps/generic/stpcpy_chk.c: Likewise.
570         * sysdeps/generic/strcat_chk.c: Likewise.
571         * sysdeps/generic/strcpy_chk.c: Likewise.
572         * sysdeps/generic/strncat_chk.c: Likewise.
573         * sysdeps/generic/strncpy_chk.c: Likewise.
575 2004-10-17  Roland McGrath  <roland@frob.com>
577         * manual/memory.texi (Page Lock Functions): Typo fix.
578         Reported by Carlos Maziero <maziero@ppgia.pucpr.br>
580 2004-10-16  Alfred M. Szmidt  <ams@kemisten.nu>
582         * sysdeps/mach/hurd/Makefile (link-libc-static): Use
583         `$(static-gnulib') instead of `$(gnulib)'.
585 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
587         * sunrpc/rpc_clntout.c: Avoid including rcsid into binary.
588         * sunrpc/rpc_cout.c: Likewise.
589         * sunrpc/rpc_hout.c: Likewise.
590         * sunrpc/rpc_main.c: Likewise.
591         * sunrpc/rpc_parse.c: Likewise.
592         * sunrpc/rpc_sample.c: Likewise.
593         * sunrpc/rpc_scan.c: Likewise.
594         * sunrpc/rpc_svcout.c: Likewise.
595         * sunrpc/rpc_tblout.c: Likewise.
596         * sunrpc/rpc_util.c: Likewise.
598 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
600         * sysdeps/unix/sysv/linux/i386/sysdep.h (PUSHARGS_6, DOARGS_6,
601         POPARGS_6, _PUSHARGS_6, _DOARGS_6, _POPARGS_6): Define.
602         * sysdeps/unix/sysv/linux/i386/syscall.S (syscall): Handle 6 argument
603         syscalls.
605 2004-10-15  Ulrich Drepper  <drepper@redhat.com>
607         * nscd/nscd.h (_PATH_NSCD_PASSWD_DB): Move to /var/db.
608         (_PATH_NSCD_GROUP_DB): Likewise.
609         (_PATH_NSCD_HOSTS_DB): Likewise.
610         (_PATH_NSCD_XYZ_DB_TMP): New #define, point to /var/run.
611         * nscd/connections.c (nscd_init): Non-persistent database files
612         are created with the _PATH_NSCD_XYZ_DB_TMP path.
613         * nscd/nscd.init: Create /var/db/nscd if necessary.
615 2004-10-15  Richard Henderson  <rth@redhat.com>
617         * sysdeps/unix/sysv/linux/alpha/register-dump.h: New file.
618         * sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h (SIGCONTEXT): Add
619         _code argument, pass sigcontext by pointer.
620         (SIGCONTEXT_EXTRA_ARGS): Likewise.
621         (GET_PC, GET_FRAME, GET_STACK): Expect ctx as pointer.
623 2004-10-14  Richard Henderson  <rth@redhat.com>
625         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
626         elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
627         instead of static.
629         * sysdeps/unix/sysv/linux/adjtime.c (ADJTIME): Use prototype
630         style definition.
631         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): If
632         __ASSUME_TIMEVAL64, define __adjtime directly rather than
633         via strong_alias.
635 2004-10-14  Ulrich Drepper  <drepper@redhat.com>
637         * nscd/Makefile: When using compilers without -fpie support, also
638         link with -lselinux if necessary.
639         Patch by Arkadiusz Miskiewicz <arekm@pld-linux.org>.
641         * nscd/connections.c (nscd_init): Remove file if not persistent
642         and not shared.  Patch by Jerome Borsboom <j.borsboom@erasmusmc.nl>.
644 2004-10-14  Jakub Jelinek  <jakub@redhat.com>
646         * sysdeps/unix/sysv/linux/i386/setresuid.c: Handle
647         defined __NR_setresuid32 && !defined __NR_setresuid.
648         * sysdeps/unix/sysv/linux/i386/setresgid.c: Handle
649         defined __NR_setresgid32 && !defined __NR_setresgid.
651         * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit,
652         __signbitl, sqrtf, sqrt, sqrtl, fdim, fdimf): Use __NTH macro.
654         * sysdeps/generic/errno-loc.c: Don't undef #errno
655         if RTLD_PRIVATE_ERRNO.
656         * include/errno.h (__errno_location): If RTLD_PRIVATE_ERRNO,
657         add attribute_hidden.
659         * dlfcn/dlinfo.c (dlinfo_doit): Replace iteration over GL(dl_loaded)
660         chain with iteration over all namespaces' _ns_loaded chains.
661         * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_preferred_address):
662         Likewise.
663         * sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Likewise.
665         * elf/rtld.c (_dl_start): Fix one last dl_loaded.
666         * elf/dl-load.c (_dl_map_object_from_fd): Avoid definition of
667         label when it is not needed.
668         * elf/dl-close.c (_dl_close): Typo: & -> &&.
670 2004-10-12  Jakub Jelinek  <jakub@redhat.com>
672         * sysdeps/generic/segfault.c: Include alloca.h and stdint.h.
673         Don't include frame.h.
674         (CURRENT_STACK_FRAME, INNER_THAN, ADVANCE_STACK_FRAME): Remove.
675         (catch_segfault): Use backtrace function.
677         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Fix comment.
678         * sysdeps/unix/sysv/linux/ia64/register-dump.h: New file.
679         * sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h (GET_PC): Return sc_ip
680         field.
682 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
684         Add support for namespaces in the dynamic linker.
685         * dlfcn/Makefile (libdl-routines): Add dlmopen.
686         * dlfcn/Versions [libdl, GLIBC_2.3.4]: Add dlmopen.
687         * dlfcn/dlfcn.h: Define Lmid_t, LM_ID_BASE, and LM_ID_NEWLM.
688         Declare dlmopen.  Document RTLD_DI_LMID.
689         * dlfcn/dlinfo.c: Handle RTLD_DI_LMID.
690         * dlfcn/dlmopen.c: New file.
691         * dlfcn/dlopen.c: Pass new parameter to _dl_open.
692         * dlfcn/dlopenold.c: Likewise.
693         * elf/dl-addr.c: Adjust for removal of GL(dl_loaded).
694         * elf/dl-caller.c: Likewise.
695         * elf/dl-close.c: Likewise.
696         * elf/dl-conflict.c: Likewise.
697         * elf/dl-debug.c: Likewise.
698         * elf/dl-lookup.c: Likewise.
699         * elf/dl-sym.c: Likewise.
700         * elf/dl-version.c: Likewise.
701         * elf/do-lookup.h: Likewise.
702         * elf/rtld.c: Likewise.
703         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
704         * elf/dl-depsc: Likewise.  Add new parameter to _dl_map_object.
705         * elf/dl-fini.c: Call destructors in all namespaces.
706         * elf/dl-iteratephdr.c: Compute total nloaded.  Adjust for removal of
707         GL(dl_loaded).
708         * elf/dl-libc.c: Pass new parameter to _dl_open.  Adjust for removal
709         of GL(dl_loaded).
710         * elf/dl-load.c (_dl_map_object_from_fd): Don't load ld.so a second
711         time.  Reuse the one from the main namespace in all others.
712         Pass new parameter to _dl_new_object.
713         Adjust for removal of GL(dl_loaded).
714         * elf/dl-object.c: Take new parameter.  Use it to initialize l_ns.
715         Adjust for removal of GL(dl_loaded).
716         * elf/dl-open.c (_dl_open): Take new parameter.
717         Adjust for removal of GL(dl_loaded).
718         * elf/dl-support.c: Replace global _dl_loaded etc variables with
719         _dl_ns variable.
720         * include/dlfcn.h: Adjust prototype of _dl_open.
721         Define __LM_ID_CALLER.
722         * include/link.h: Add l_real, l_ns, and l_direct_opencount elements.
723         * sysdeps/generic/dl-tls.c: Bump TLS_STATIC_SURPLUS.  Since libc is
724         using TLS we need memory appropriate to the number of namespaces.
725         * sysdeps/generic/ldsodefs.h (struct rtld_global): Replace _dl_loaded,
726         _dl_nloaded, _dl_global_scope, _dl_main_searchlist, and
727         _dl_global_scope_alloc with _dl_ns element.  Define DL_NNS.
728         Adjust prototypes of _dl_map_object and member in rtld_global_ro.
729         * malloc/malloc.c: Include <dlfcn.h>.
730         * malloc/arena.c (ptmalloc_init): If libc is not in primary namespace,
731         never use brk.
732         * elf/Makefile: Add rules to build and run tst-dlmopen1 and
733         tst-dlmopen2.
734         * elf/tst-dlmopen1.c: New file.
735         * elf/tst-dlmopen1mod.c: New file.
736         * elf/tst-dlmopen2.c: New file.
738         * elf/dl-close.c: Improve reference counting by tracking direct loads.
739         * elf/dl-lookup.c (add_dependency): Likewise.
740         * elf/dl-open.c (dl_open_worker): Likewise.
741         * elf/rtld.c (dl_main): Likewise.
743 2004-09-09  GOTO Masanori  <gotom@debian.or.jp>
745         [BZ #77]
746         * elf/dl-close.c: Count down l_opencount to check not only for
747         l_reldeps, but also l_initfini.
749 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
751         * elf/dl-close.c (_dl_close): Update bug reporting instructions.
753 2004-10-11  Ulrich Drepper  <drepper@redhat.com>
755         * timezone/asia: Update from tzdata2004e.
756         * timezone/southamerica: Likewise.
757         * timezone/private.h: Update from tzcode2004e.
758         * timezone/zdump.c: Likewise.
760         * stdio-common/vfscanf.c: Add support for reading localized
761         digits.  Patch mainly by Hamed Malek <hamed@bamdad.org>.
763         * resolv/res_init.c (res_thread_freeres): Reset _res.options.
764         [BZ #434]
766         * resolv/res_send.c (send_dg): Use nonblocking sockets.  Add
767         appropriate poll/select calls and restart operation if necessary.
768         Also handle EINTR.
770         * elf/tst-dlopenrpath.c (do_test): Enable code which was disabled
771         for debugging.
773         * elf/dl-sym.c (do_sym): Avoid using global variable.
775         * elf/dl-addr.c (_dl_addr): Really use match everywhere.
777 2004-10-09  Andreas Schwab  <schwab@suse.de>
779         * sysdeps/m68k/memcopy.h (WORD_COPY_BWD): Remove use of cast as
780         lvalue.
782         * sysdeps/m68k/fpu/bits/mathinline.h: Remove __THROW from inline
783         definitions.
785 2004-10-07  Andreas Schwab  <schwab@suse.de>
787         * misc/sys/uio.h: Change __vector to __iovec to avoid clash with
788         altivec.
790 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
792         * gmon/Makefile (CFLAGS-mcount.c): Move before inclusion of "Rules".
793         * sysdeps/powerpc/powerpc64/Makefile (CFLAGS-mcount.c): Add
794         -msoft-float.
795         * sysdeps/powerpc/powerpc64/sysdep.h (SAVE_ARG, REST_ARG): New macros.
796         (CALL_MCOUNT): Replace with a gas macro implementation.
797         (EALIGN): Delete PROF version.
798         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Invoke CALL_MCOUNT.
799         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Likewise.
800         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
801         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
802         * sysdeps/powerpc/powerpc64/memcpy.S: Likewise.
803         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
804         * sysdeps/powerpc/powerpc64/stpcpy.S: Likewise.
805         * sysdeps/powerpc/powerpc64/strchr.S: Likewise.
806         * sysdeps/powerpc/powerpc64/strcmp.S: Likewise.
807         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
808         * sysdeps/powerpc/powerpc64/strlen.S: Likewise.
809         * sysdeps/powerpc/powerpc64/strncmp.S: Likewise.
810         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Likewise.
811         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Likewise.
812         * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Likewise.
813         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Likewise.
814         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Likewise.
815         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: Likewise.
816         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: Likewise.
817         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: Likewise.
818         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: Likewise.
819         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Likewise.
820         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Likewise.
821         * sysdeps/powerpc/powerpc64/fpu/s_round.S: Likewise.
822         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Likewise.
823         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Likewise.
824         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Likewise.
826         * sysdeps/powerpc/powerpc64/setjmp-common.S: Add extra entry point
827         past _mcount call.
828         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Use it.
829         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
831 2004-10-06  Ulrich Drepper  <drepper@redhat.com>
833         * resolv/res_mkquery.c (res_nmkquery): Reject randombits value if
834         low 16 bits are zero.
836 2004-10-06  Jakub Jelinek  <jakub@redhat.com>
838         * posix/tst-getaddrinfo2.c: Include stdlib.h and string.h.
839         (do_test): Use %p instead of 0x%08X to print a pointer.
841         * malloc/malloc.c: Include stdio-common/_itoa.h.
843 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
845         * elf/rtld.c (dl_main): Use _dl_debug_printf instead of _dl_printf
846         for prelink message.
848 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
850         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Include dl-sysdep.h.
851         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
853 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
855         * grp/initgroups.c: Remove duplicate group IDs.
856         * grp/compat-initgroups.c: Likewise.
857         * nscd/initgrcache.c: Likewise.
859 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
861         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (__sysconf): Return 200112L
862         for _SC_CPUTIME or _SC_THREAD_CPUTIME.
864         * nscd/Makefile (nscd-cflags): Set to -DIS_IN_nscd=1, plus
865         -fpie if building PIE.
866         (CFLAGS-*.c): Use it.
868         * nscd/Makefile (relro-LDFLAGS): Add -Wl,-z,now if have-z-relro.
869         ($(objpfx)nscd): Add $(relro-LDFLAGS).
871         * sysdeps/unix/sysv/linux/i386/sysconf.c: Include hp-timing.h.
872         (__sysconf): Return -1 for _SC_CPUTIME or _SC_THREAD_CPUTIME if
873         !HP_TIMING_AVAIL.
875 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
877         * nscd/Makefile (distribute): Remove TODO.
878         * nscd/TODO: Removed.
880 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
882         * nscd/gai.c: Define __no_netlink_support if NEED_NETLINK is
883         defined and __ASSUME_NETLINK_SUPPORT is zero.
884         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gai.c): Add
885         -DNEED_NETLINK.
887         * malloc/mtrace.pl: Avoid calling location unless it is needed for
888         output.  Patch by Edward Bishop <binutils@gmail.com>.
890         * nscd/Makefile (CFLAGS-gai.c): Add -fpie.
892 2004-10-04  H.J. Lu  <hongjiu.lu@intel.com>
894         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c
895         (clock_getcpuclockid): Add missing retval.
897         * sysdeps/unix/sysv/linux/ia64/sysconf.c (linux_sysconf): Fix a typo.
899 2004-10-04  Roland McGrath  <roland@redhat.com>
901         * include/errno.h [RTLD_PRIVATE_ERRNO] (errno): Rename the real symbol
902         to rtld_errno.
903         * sysdeps/generic/errno.c [RTLD_PRIVATE_ERRNO] (rtld_errno): Define it,
904         and don't define any other errno names.
905         * sysdeps/unix/alpha/sysdep.h [RTLD_PRIVATE_ERRNO]: Use rtld_errno in
906         place of errno.
907         * sysdeps/unix/i386/sysdep.S: Likewise.
908         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
909         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
910         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
911         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
912         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
913         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
914         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
915         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
916         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
917         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
918         * sysdeps/unix/x86_64/sysdep.S: Likewise.
920         * sysdeps/generic/errno.c [! USE___THREAD] (errno): Use `nocommon'
921         attribute instead of `section'.
923 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
925         * sysdeps/unix/sysv/linux/ia64/sysconf.c: New file.
926         * sysdeps/unix/sysv/linux/ia64/Dist: Add has_cpuclock.c.
927         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: Move actual
928         testing code to...
929         * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c: ...here.  New file.
930         * sysdeps/unix/sysv/linux/i386/sysconf.c: Add dynamic check for
931         _SC_CPUTIME and _SC_THREAD_CPUTIME.
933         * nscd/connections.c (start_threads): Use sysconf in case
934         _POSIX_CLOCK_SELECTION or _POSIX_MONOTONIC_CLOCK is not greater zero.
936         * nscd/Makefile (nscd-modules): Add gai.
937         * nscd/gai.c: New file.
938         * nscd/nscd.c: Remove getaddrinfo stub definition.
940         * assert/assert.h: Give up on using __builtin_expect.
942         * elf/rtld.c (dl_main): Only skip => output in ldd mode if both
943         strings are identical.
945 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
947         * malloc/arena.c (aligned_heap_area): New variable.
948         (new_heap): If aligned_heap_area != NULL, attempt to use that
949         first.  If HEAP_MAX_SIZE << 1 area is already HEAP_MAX_SIZE bytes
950         aligned, remember the second half in aligned_heap_area.
951         (delete_heap): Clear aligned_heap_area if deleting the area right
952         before aligned_heap_area.
954 2004-10-03  Juerg Billeter  <j@bitron.ch>
956         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Return -1 if nscd
957         can't be used.  [BZ #424]
959 2004-10-03  Ulrich Drepper  <drepper@redhat.com>
961         Dynamically create new threads if necessary.
962         * nscd/connections.c (fd_ready): If no thread available for processing
963         the request, create a new one unless the limit is reached.
964         (start_threads): Check errors from pthread_create.
965         * nscd/nscd.h: Declare max_nthreads.
966         * nscd/nscd_conf.c: Parse max-nthreads entry.
967         * nscd/nscd.conf: Add max-threads entry.
968         * nscd/nscd_stat.c: Print current and maximum number of threads.
970         Implement paranoia mode.
971         * nscd/connections.c (nscd_init): Mark database and socket descriptors
972         as close on exec.
973         (restart): New function.
974         (restart_p): New function.
975         (nscd_run): Add missing descrement of nready in case readylist is
976         empty.
977         (main_loop_poll): Call restart_p and restart.
978         (main_loop_epoll): Likewise.
979         (begin_drop_privileges): Save original UID and GID.
980         * nscd/nscd.c: Define new variables paranoia, restart_time,
981         restart_interval, oldcwd, old_gid, old_uid.
982         (main): Disable paranoia mode if we are not forking.
983         (check_pid): When re-execing, the PID file contains the same PID as
984         the current process.  Do not fail in this case.
985         * nscd/nscd.conf: Add paranoia and restart-interval entries.
986         * nscd/nscd.h: Define RESTART_INTERVAL.  Declare new variables.
987         * nscd/nscd_conf.c: Parse paranoia and restart-internal configurations.
988         * nscd/nscd_stat.c: Print paranoia and restart-internal values.
990         * nscd/connections.c: Implement alternative loop for main thread
991         which uses epoll.
992         * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]
993         (CFLAGS-connections.c): Add -DHAVE_EPOLL.
995 2004-10-02  Ulrich Drepper  <drepper@redhat.com>
997         * nscd/Makefile (CFLAGS-initgrcache.c): Add to CFLAGS-* variables,
998         don't replace old content.
1000         * nscd/connections.c: Rewrite handling of incoming connections.  All
1001         are handled by one thread which then hands off the descriptors for the
1002         real work to the worker threads.
1003         * nscd/Makefile: Link nscd with librt.
1005         * nscd/selinux.c: Pretty printing.
1007         * nscd/dbg_log.c (dbg_log): Don't add unnecessary newline to
1008         output.  Let syslog do the formatting if debug_level == 0.
1010         * nscd/nscd_helper.c (get_mapping): No need to check timestamp if
1011         nscd_certainly_running is nonzero.
1013 2004-10-02  Simon Josefsson  <jas@extundo.com>
1015         [BZ #420]
1016         * sysdeps/generic/memmem.c [!_LIBC]: Define __builtin_expect, to
1017         make the file usable inside gnulib.
1019 2004-10-01  Ulrich Drepper  <drepper@redhat.com>
1021         * malloc/malloc.c (public_vALLOc): Add missing use of hooks.
1022         (public_pVALLOc): Likewise.
1024         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Always add the
1025         group the caller provided unless there is a real problem.
1027         * posix/bug-glob1.c (prepare): Fix creation of symlink.
1029 2004-09-30  Ulrich Drepper  <drepper@redhat.com>
1031         * posix/Makefile: Add rules to build and run bug-glob1.
1032         * posix/bug-glob1.c: New file.
1034         * iconv/iconv_prog.c (main): Print progress information to stderr.
1036         * nscd/nscd.c (termination_handler): Reset timestamp so that
1037         clients immediately stop using the database.
1039         * nscd/nscd-client.h (__nscd_get_map_ref): Drop volatile from last
1040         parameter.
1041         (__nscd_drop_map_ref): Change second parameter to be a reference to
1042         a variable.  Update variable when cycle count changed.
1043         * nscd/nscd_helper.c (__nscd_get_map_ref): Remove volatile here, too.
1044         * nscd/nscd_getai.c: Correctly use __nscd_drop_map_ref.  Reinitialize
1045         all variables and avoid memory leak in case of retries.
1046         * nscd/nscd_getgr_r.c: Likewise.
1047         * nscd/nscd_gethst_r.c: Likewise.
1048         * nscd/nscd_getpw_r.c: Likewise.
1049         * nscd/nscd_initgroups.c: Likewise.
1051         * nscd/nscd.h: Add declaration of addinitgroups and
1052         readdinitgroups.
1054 2004-09-30  Andreas Jaeger  <aj@suse.de>
1056         * nscd/Makefile (CFLAGS-nscd_initgroups.c): Set to -fpie.
1057         (CFLAGS-initgrcache.c): Set to -fexceptions.
1059 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
1061         * sysdeps/generic/glob.c (glob_in_dir): Don't blindly trust
1062         readdir results; for symlinks or files of unknown type check using
1063         stat whether the file exists.
1065         * posix/tst-gnuglob.c (find_file): Handle leading "./".  Fix
1066         recognition of files.
1068 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
1070         * time/tzfile.c (tzfile_mtime): New variable.
1071         (__tzfile_read): Reread the file if mtime is different.
1073 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
1075         * sysdeps/alpha/fpu/bits/mathinline.h (__fdimf, __fdim, fdimf, fdim):
1076         Handle +inf/+inf.
1077         * sysdeps/powerpc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
1078         * sysdeps/sparc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
1080 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
1082         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use correct constant for
1083         testing result of __nscd_get_map_ref.
1085 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
1087         * sysdeps/i386/fpu/s_fdim.S (__fdim): Handle +inf/+inf.
1088         * sysdeps/i386/fpu/s_fdimf.S (__fdimf): Likewise.
1089         * sysdeps/i386/fpu/s_fdiml.S (__fdiml): Likewise.
1091 004-09-29  Ulrich Drepper  <drepper@redhat.com>
1093         * grp/initgroups.c: Move compat_call implementation...
1094         * grp/compat-initgroups.c: ...to here.  New file.
1095         * grp/Makefile (distribute): Add compat-initgroups.c.
1096         (CFLAGS-initgroups.c): Add -DUSE_NSCD=1.
1097         * mscd/initgrcache.c: New file.
1098         * nscd/nscd_initgroups.c: New file.
1099         * nscd/Makefile (routines): Add nscd_initgroups.
1100         (nscd-modules): Add initgrcache.
1101         * nscd/cache.c (prune_cache): Add support for INITGROUPS entries.
1102         * nscd/connections.c: Handle INITGROUPS requests.
1103         * nscd/nscd-client.h: Define INITGROUPS, initgr_response_header.
1104         Add initgrdata element to struct datahead.  Fix typo in comment.
1105         * nscd/nscd_proto.h: Declare __nscd_getgrouplist.  Fix parameter
1106         type in __nscd_getgrgrid_r.
1107         * nscd/selinux.c (perms): Add INITGROUPS entry.
1109         * nscd/nscd_getai.c: No need to include <sys/mman.h>.
1111         * sunrpc/get_myaddr.c (get_myaddress): Account for interfaces without
1112         assigned addresses.
1113         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
1114         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
1115         * sunrpc/clnt_udp.c (is_network_up): Likewise.
1117         * nscd/nscd.c: Define getaddrinfo hidden so that it is never found
1118         outside.
1120         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_segvflags):
1121         Renamed from si_flags due to conflict with si_flags from <elf.h>.
1123 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
1125         * nscd/nscd_getai.c: Use NO_MAPPING instead of MAP_FAILED for test
1126         of failing __nscd_get_map_ref.  Fix a few typos.
1128         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Make sure
1129         SIGSETXID is not blocked.
1130         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Likewise.
1131         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
1132         * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise.
1133         * sysdeps/generic/sigfillset.c (sigfillset): Don't set SIGSETXID.
1135         * sunrpc/get_myaddr.c (get_myaddress): Fix test for failing
1136         getifaddrs call.
1137         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
1138         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
1139         * sunrpc/Makefile (xtests): Add tst-getmyaddr.
1140         * sunrpc/tst-getmyaddr.c: New file.
1142         * malloc/arena.c (ptmalloc_init): Allow MALLOC_CHECK_==0 to
1143         disable all checking.
1145         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_flags): Add
1146         support to get this value.
1148 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
1150         * io/utime.h (utime): Allow second argument to be NULL.
1152 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
1154         * sysdeps/posix/getaddrinfo.c (gaih_inet): If NAME is a numerical IP
1155         address and AI_CANONNAME is set, return copy of NAME as ai_canonname.
1157 2004-09-27  Andreas Jaeger  <aj@suse.de>
1159         * sysdeps/i386/dl-machine.h (elf_machine_rela_relative): Replace
1160         static inline by auto inline, add always_inline attribute.
1161         (elf_machine_rel): Likewise.
1162         (elf_machine_rela): Likewise.
1163         (elf_machine_lazy_rel): Likewise.
1164         (elf_machine_lazy_rela): Likewise.
1165         (elf_machine_rel_relative): Likewise.
1167 2004-09-27  Ulrich Drepper  <drepper@redhat.com>
1169         * sunrpc/xdr_intXX_t.c: Add xdr_quad_t and xdr_u_quad_t aliases.
1170         * sunrpc/rpc/xdr.h: Declare xdr_quad_t and xdr_u_quad_t.
1171         * sunrpc/rpc_parse.c (get_type): Use "quad_t" for TOK_HYPER.
1172         Otherwise isvectordef will loop infinitely if typedef hyper int64_t
1173         is seen.
1174         (unsigned_dec): Use "u_quad_t" for similar reasons.
1175         * sunrpc/Versions: Export xdr_quad_t and xdr_u_quad_t.
1177 2004-09-27  Roland McGrath  <roland@redhat.com>
1179         * sysdeps/generic/bits/waitstatus.h (__WIFSIGNALED): Simplify bit
1180         twiddling in last change.
1182         * posix/tst-waitid.c (do_test): Add tests for waitpid with WCONTINUED.
1184         [BZ #409]
1185         * posix/sys/wait.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
1186         * stdlib/stdlib.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
1187         * sysdeps/generic/bits/waitstatus.h (__W_CONTINUED): New macro.
1188         [WCONTINUED] (__WIFCONTINUED): New macro.
1189         (__WIFSIGNALED): Rewritten to exclude __W_CONTINUED value, and have no
1190         branches.
1192         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Add fifth argument to
1193         all three syscall uses, not just one!
1195 2004-09-26  Richard Henderson  <rth@redhat.com>
1197         * sysdeps/alpha/alphaev6/memcpy.S: Mark .prologue.
1198         * sysdeps/unix/alpha/sysdep.h (LEAF, ENTRY): Align entry points
1199         to 16 byte boundaries.
1201 2004-09-26  Ulrich Drepper  <drepper@redhat.com>
1203         * elf/readlib.c (process_file): Before complaining about too-short
1204         file, check that it potentially be an ELF file.  Also complain about
1205         empty files.  [BZ #151].
1207         * scripts/test-installation.pl: Fix ld.so recognition for new
1208         LD_TRACE_LOADED_OBJECTS output format.
1209         Patch by <jsberg04+computing.glibc@ftml.net>  [BZ #407].
1211         * elf/dl-support.c (_dl_non_dynamic_init): Fix cleaning of
1212         environment.  [BZ #384]
1214         * sunrpc/clnt_udp.c (is_network_up): Use getifaddrs instead of ioctl.
1215         * sunrpc/get_myaddr.c (get_myaddress): Likewise.
1216         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
1217         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.  Change interface
1218         to avoid buffer overrun and remove now useless parameters.
1219         (clnt_broadcast): Adjust caller.  [BZ #381].
1221         * sysdeps/generic/s_fdim.c: Handle +inf/+inf
1222         * sysdeps/generic/s_fdimf.c: Likewise.
1223         * sysdeps/generic/s_fdiml.c: Likewise.
1224         * sysdeps/i386/i686/fpu/s_fdim.S: Likewise.
1225         * sysdeps/i386/i686/fpu/s_fdimf.S: Likewise.
1226         * sysdeps/i386/i686/fpu/s_fdiml.S: Likewise.
1227         * sysdeps/powerpc/fpu/s_fdim.c: Likewise.
1228         * sysdeps/powerpc/fpu/s_fdimf.c: Likewise.
1229         * sysdeps/x86_64/fpu/s_fdiml.S: Likewise.
1230         * math/libm-test.inc (fdim_test): Add test case.  [BZ #376].
1232         * sysdeps/generic/bits/types.h: Fix __SQUAD_TYPE and __UQUAD_TYPE
1233         for compilers without __GLIBC_HAVE_LONG_LONG.  [BZ #362]
1235         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Remove incorrect
1236         requirement on socktype and protocol.
1237         (gaih_inet): If numeric port number is given, return records for all
1238         possible socket types.
1239         * posix/tst-getaddrinfo2.c: New file.
1240         * posix/Makefile (tests): Add tst-getaddrinfo2.  [BZ #358]
1242 2004-09-25  Ulrich Drepper  <drepper@redhat.com>
1244         * locale/loadlocale.c (_nl_intern_locale_data): Recognize LC_CTYPE
1245         data where _nl_value_type_LC_CTYPE does not contain the type
1246         information.  Add range checks.
1247         Reported by John Lumby <johnlumby@hotmail.com> [BZ #356].
1249         * libio/vasprintf.c (_IO_vasprintf): Fix condition to decide
1250         whether to realloc or not.
1251         Reported by Pavel Kankovsky <peak@argo.troja.mff.cuni.cz> [BZ #346].
1253         * intl/dcigettext.c (DCIGETTEXT): Protect tfind/tsearch calls.
1254         * intl/dcigettext.c (_nl_find_msg): Call _nl_load_domain also if
1255         decided < 0.
1256         * intl/finddomain.c (_nl_find_domain): Likewise.
1257         * intl/loadmsgcat.c (_nl_load_domain): Set decided to 1 only once we
1258         are done.  First set to -1 to signal initialization is ongoing.
1259         Protect against concurrent callers with recursive lock.
1260         * intl/finddomain.c (_nl_find_domain): Protect calls to
1261         _nl_make_l10nflist.  [BZ #322]
1263         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If determinination of
1264         source address fails, initialized source_addr_len field so that
1265         duplicate address recognition does not copy junk.
1267 2004-09-25  Jakub Jelinek  <jakub@redhat.com>
1269         * sysdeps/unix/sysv/linux/i386/setuid.c (__setuid): Remove second
1270         result declaration.
1272 2004-09-22  Andreas Schwab  <schwab@suse.de>
1274         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Adjust whitespace.
1276 2004-09-24  Ulrich Drepper  <drepper@redhat.com>
1278         * misc/daemon.c (daemon): Don't succeed if /dev/null cannot be
1279         opened.
1281         * nis/ypclnt.c (do_ypcall): Add one missing unlock.  Simplify the
1282         code a bit.
1284         * misc/daemon.c (daemon): Define errno in case /dev/null is not
1285         the correct device.
1287         * nis/ypclnt.c (yp_bind_file): Optimize a bit.  Minimal cleanups.
1289 2004-09-23  Andreas Jaeger  <aj@suse.de>
1291         * locale/weight.h (findidx): Remove static, it's not supported
1292         anymore with GCC 4.0 in a block scope.
1293         * locale/weightwc.h (findidx): Likewise.
1294         * posix/regcomp.c (seek_collating_symbol_entry): Likewise.
1295         (lookup_collation_sequence_value): Likewise.
1296         (build_range_exp): Likewise.
1297         (build_collating_symbol): Likewise.
1298         * iconv/iconvconfig.c (write_output): Likewise.
1299         * elf/do-rel.h (elf_dynamic_do_rel): Likewise.
1301         * sysdeps/x86_64/dl-machine.h (elf_machine_rela_relative): Remove
1302         static, add always_inline attribute.
1303         (elf_machine_rela): Likewise.
1304         (elf_machine_lazy_rel): Likewise.
1306         * elf/dynamic-link.h (elf_get_dynamic_info): Make static dependend
1307         on !RESOLVE so that it's not defined in local scope.
1309 2004-09-23  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1311         * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL_NCS): Define.
1313 2004-09-23  Thorsten Kukuk  <kukuk@suse.de>
1315         * sysdeps/unix/sysv/linux/sys/mount.h: Sync MS_RMT_MASK flag
1316         and BLK* ioctls with linux kernel headers.
1318 2004-09-23  Ulrich Drepper  <drepper@redhat.com>
1320         * sysdeps/generic/bits/dlfcn.h: Add RTLD_DEEPBIND.
1321         * elf/dl-object.c (_dl_new_object): Add new parameter mode.  If mode
1322         has RTLD_DEEPBIND set add local searchlist before global scope.
1323         * sysdeps/generic/ldsodefs.h (_dl_new_object): Adjust prototype.
1324         * elf/rtld.c: Adjust callers of _dl_new_object.
1325         * elf/dl-load.c: Likewise.
1326         (_dl_map_object_from_fd): If RTLD_DEEPBIND is used, don't do anything
1327         for DF_SYMBOLIC.
1328         * elf/dl-open.c (dl_open_writer): Pass RTLD_DEEPBIND flag on to
1329         _dl_map_object_deps.
1330         * elf/tst-deep1.c: New file.
1331         * elf/tst-deep1mod1.c: New file.
1332         * elf/tst-deep1mod2.c: New file.
1333         * elf/tst-deep1mod3.c: New file.
1334         * elf/Makefile: Add rules to build and run new tests.
1336         * elf/dl-deps.c: Pretty printing.
1338 2004-09-23  Jakub Jelinek  <jakub@redhat.com>
1340         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
1341         argument to numbers from syscall names.
1342         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
1343         (INTERNAL_SYSCALL_NCS): Renamed from...
1344         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
1345         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
1346         (INTERNAL_SYSCALL_NCS): Define.
1347         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
1348         (INTERNAL_SYSCALL_NCS): Likewise.
1349         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
1350         Change name argument to numbers from syscall names.
1351         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
1352         (INTERNAL_SYSCALL_NCS): Define.
1354 2004-09-22  Ulrich Drepper  <drepper@redhat.com>
1356         * malloc/malloc.c (malloc_printerr): Use syslog if writev failed.
1358         * string/string.h: Add __nonnull annotations.
1359         * stdlib/stdlib.h: Likewise.
1361 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
1363         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
1364         argument to numbers from syscall names.
1365         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
1366         (INTERNAL_SYSCALL_NCS): Renamed from...
1367         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
1368         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
1369         (INTERNAL_SYSCALL_NCS): Define.
1370         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
1371         (INTERNAL_SYSCALL_NCS): Likewise.
1372         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
1373         Change name argument to numbers from syscall names.
1374         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
1375         (INTERNAL_SYSCALL_NCS): Define.
1377 2004-09-20  H.J. Lu  <hongjiu.lu@intel.com>
1379         * sysdeps/unix/sysv/linux/ia64/sysdep.h (DO_INLINE_SYSCALL):
1380         Renamed to ...
1381         (DO_INLINE_SYSCALL_NCS): This.
1382         (DO_INLINE_SYSCALL): New.
1383         (INLINE_SYSCALL): Updated.
1384         (INTERNAL_SYSCALL_NCS): Updated.
1386 2004-09-21  Ulrich Drepper  <drepper@redhat.com>
1388         * elf/sprof.c (load_shobj): Add support for reading symbol table
1389         from debuginfo file.
1391         * elf/ldd.bash.in: Fix syntax errors.
1393 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
1395         * sysdeps/unix/sysv/linux/dl-execstack.c
1396         (_dl_make_stack_executable): Remove some duplication.
1398         * nscd/nscd.c (options): Mark S option as hidden.
1399         (parse_opt): When S option is used, print warning message.
1400         * nscd/grpcache.c (adgrptbyX): Don't handle secure mode.
1401         * nscd/hstcache.c (addhstbyX): Don't handle secure mode.
1402         * nscd/aicache.c (addhstaiX): Don't handle secure mode.
1403         * nscd/pwdcache.c (addpwbyX): Don't handle secure mode.
1405 2004-09-20  Roland McGrath  <roland@frob.com>
1407         * elf/dl-load.c (__stack_prot): Only use PROT_GROWSUP/PROT_GROWSDOWN
1408         in initializer #if defined.
1410 2004-09-18  Paul Eggert  <eggert@cs.ucla.edu>
1412         [BZ #391]
1413         * stdlib/getsubopt.c: Merge fixes from gnulib.
1414         (__strchrnul) [!_LIBC]: Define and include "strchrnul.c".
1415         (getsubopt): Use prototypes, not K&R style.
1416         Fix bug: memcmp(A,B,N) was being invoked on a memory block B
1417         whose size might be smaller than N.  Use strncmp to avoid the bug.
1419 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
1421         * configure.in: If selinux has not explictly been requested, don't
1422         comment on it missing.
1424         * elf/dl-load.c: Define __stack_prot.
1425         * sysdeps/unix/sysv/linux/dl-execstack.c: Don't define
1426         __stack_prot here, just declare it.
1428 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
1430         * configure.in (libc_cv_z_relro): Only set to yes if linker script
1431         contains DATA_SEGMENT_RELRO_END.
1433 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
1435         * elf/dl-load.c (_dl_map_object_from_fd): Add some error checking.
1436         Reorder code slightly.
1437         * elf/rtld.c (dl_main): No need to check whether l_info[DT_HASH]
1438         is non-null, _dl_setup_hash will do that.
1440 2004-09-19  Ulrich Drepper  <drepper@redhat.com>
1442         * sysdeps/unix/sysv/linux/setegid.c [HAVE_PTR__NPTL_SETXID]: Call
1443         callback to set IDs in all other threads as well.
1444         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
1445         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
1446         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
1447         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
1448         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
1449         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1450         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1451         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1452         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1453         * sysdeps/unix/sysv/linux/setuid.c: New file.
1454         * sysdeps/unix/sysv/linux/setgid.c: New file.
1455         * sysdeps/unix/sysv/linux/setreuid.c: New file.
1456         * sysdeps/unix/sysv/linux/setregid.c: New file.
1457         * sysdeps/unix/sysv/linux/setresuid.c: New file.
1458         * sysdeps/unix/sysv/linux/setresgid.c: New file.
1459         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NCS.
1460         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
1461         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
1462         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
1463         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
1464         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c: Use x86 version.
1465         * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c: Likewise.
1466         * sysdeps/unix/sysv/linux/sparc/sparc32/setresgid.c: New file.
1467         * sysdeps/unix/sysv/linux/sparc/sparc32/setresuid.c: New file.
1468         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove setresgid
1469         and setresuid.
1470         * nscd/aicache.c: Use pthread_seteuid_np instead of seteuid.
1471         * nscd/grpcache.c: Likewise.
1472         * nscd/hstcache.c: Likewise.
1473         * nscd/pwdcache.c: Likewise.
1475         * resolv/res_mkquery.c (res_nmkquery): Fix typo.
1477 2004-09-18  Ulrich Drepper  <drepper@redhat.com>
1479         * sysdeps/unisx/sysv/linux/dl-execstack.c: Get protection flag
1480         from memory.
1481         * elf/dl-load.c (_dl_map_object_from_fd): Add PROT_EXEC flag to
1482         __stack_flags.
1484         * sysdeps/posix/getaddrinfo.c (gaih_inet): Do not use
1485         gethostbyname3_r if we are not looking for the canonical name.
1487         * resolv/res_mkquery.c (res_nmkquery): Randomize request ID every
1488         time.
1490 2004-09-18  Roland McGrath  <roland@redhat.com>
1492         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Pass fifth argument to
1493         system call.
1495 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1497         * include/link.h (struct link_map): Add l_used element.
1498         * sysdeps/generic/ldsodefs.h: Define DL_DEBUG_UNUSED.
1499         * elf/rtld.c (process_dl_debug): Recognize unused.
1500         (dl_main): When unused debug flag is set check for unused direct
1501         dependencies.
1502         When printing dependencies and SONAME starts with /, omit the SONAME =>
1503         part.
1504         * elf/dl-lookup.c (_dl_lookup_symbol_x): Mark object in which the
1505         symbol has been found as used.
1506         * elf/ldd.bash.in: Add -u option.
1508 2004-09-18  Jakub Jelinek  <jakub@redhat.com>
1510         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
1511         Do nothing if __NR_set_tid_address is not defined.  [BZ #390]
1513 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1515         * sysdeps/posix/getaddrinfo.c: Use gethostbyname3_r NSS function
1516         in case it is available.
1518 2004-09-17  Jakub Jelinek  <jakub@redhat.com>
1520         * nscd/nscd.c (parse_opt): Write arg string instead of (void *)
1521         key to the socket.
1523 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1525         * misc/sys/cdefs.h: Define __nonnull using nonnull function attribute
1526         for gcc 3.3 and higher.
1527         * io/fcntl.h: Add __nonnull where appropriate.
1528         * io/ftw.h: Likewise.
1529         * io/utime.h: Likewise.
1530         * io/sys/poll.h: Likewise.
1531         * io/sys/sendfile.h: Likewise.
1532         * io/sys/stat.h: Likewise.
1533         * io/sys/statfs.h: Likewise.
1534         * io/sys/statvfs.h: Likewise.
1535         * posix/unistd.h: Likewise.
1536         * catgets/nl_types.h: Likewise.
1537         * crypt/crypt.h: Likewise.
1538         * debug/execinfo.h: Likewise.
1540 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
1542         * posix/glob.h: Remove cruft to make header usable outside glibc.
1543         The maintenance headache is too big.
1545         * configure.in: Add test for required SELinux features.
1546         * config.make.in: Add have-selinux entry.
1547         * config.h.in: Add HAVE_SELINUX entry.
1548         * nscd/Makefile (nscd-modules): Add selinux.
1549         (CFLAGS-selinux.c): Add -fpie.
1550         Define selinux-LIBS and use in link line.
1551         * nscd/connections.c (handle_request): Check access SELinux permissions
1552         before processing request.
1553         * nscd/nscd.c (main): Initialize selinux_enabled and stop avc thread.
1554         * nscd/nscd_stat.c: Transmit and print AVC statistics.
1555         * nscd/selinux.c: New file.
1556         * nscd/selinux.h: New file.
1557         Patch mostly by Matthew Rickard <mjricka@epoch.ncsc.mil>.
1559 2004-09-16  Jakub Jelinek  <jakub@redhat.com>
1561         * nscd/nscd_helper.c (__nscd_unmap, get_mapping): Use __munmap
1562         instead of munmap.
1564         * nscd/Makefile (CFLAGS-aicache.c): Set to -fpie.
1566 2004-09-16  Thorsten Kukuk  <kukuk@suse.de>
1568         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check
1569         __nss_not_use_nscd_hosts variable if nscd should be used or not.
1571 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
1573         * nscd/nscd_proto.h: Define NSS_NSCD_RETRY.
1574         Add __nscd_getai prototype.
1575         * nss/getXXbyYY_r.c: Remode definition of NSS_NSCD_RETRY.
1576         * nscd/nscd-client.h: Remove __nscd_getai prototype.
1577         * nscd/nscd_getai.c: Include nscd_proto.h.
1579         * elf/ldd.bash.in: Add support for SELinux environments.
1580         Patch by Stephen Smalley <sds@epoch.ncsc.mil>.
1582 2004-09-16  Roland McGrath  <roland@redhat.com>
1584         * configure.in (--with-headers): Let argument contain a : separated
1585         list of directories to use, not just one.
1586         * configure: Regenerated.
1588 2004-09-15  Richard Henderson  <rth@redhat.com>
1590         * sysdeps/alpha/fpu/libm-test-ulps: Update.
1591         * scripts/data/c++-types-alpha-linux-gnu.data: New file.
1593 2004-09-15  Ulrich Drepper  <drepper@redhat.com>
1595         * nscd/aicache.c: Prefer using gethostbyname3_r NSS callback to also
1596         get ttl and canonical name.  Use these two values.
1597         * resolv/Versions: Export _nss_dns_gethostbyname3_r from libnss_dns.
1598         * resolv/nss_dns/dns-host.c (getanswer_r): Take two new parameters.
1599         If nonnull fill with TTL and pointer to canonical name respectively.
1600         (_nss_dns_gethostbyaddr_r): Pass NULL in new parameters of getanswer_r.
1601         (_nss_dns_gethostbyname2_r): Just wrapper around
1602         _nss_dns_gethostbyname3_r.
1603         (_nss_dns_gethostbyname3_r): Renamed from _nss_dns_gethostbyname2_r.
1604         Take two new parameters which as passed to getanswer_r.
1606         * nscd/Makefile (rountines): Add nscd_getai.
1607         (nscd-modules): Add aicache.
1608         * nscd/aicache.c: New file.
1609         * nscd/nscd_getai.c: New file.
1610         * nscd/cache.c (prune_cache): Handle GETAI request type.
1611         * nscd/connections.c: Add GETAI support in request handling.
1612         * nscd/nscd-client.h (request_type): Add GETAI.
1613         Define ai_response_header and struct nscd_ai_result types.
1614         (struct datahead): Add aidata field.
1615         Declare __nscd_getai.
1616         * nscd/nscd.c: Add getaddrinfo definition to catch problems.
1617         * nscd/nscd.h: Declare addhstai and readdhstai.
1619         * sysdeps/posix/getaddrinfo.c: Add support for using cached results.
1620         * posix/Makefile (CFLAGS-getaddrinfo.c): Add -DUSE_NSCD.
1622         * nscd/nscd-client.h  (struct datahead): Use uint8_t instead of bool.
1624 2004-09-14  Ulrich Drepper  <drepper@redhat.com>
1626         * misc/sys/cdefs.h: Remove debugging text from __P and __PMT.
1628 2004-09-13  Ulrich Drepper  <drepper@redhat.com>
1630         * misc/sys/cdefs.h: Restore old definition of __P.
1631         * csu/munch.awk: Remove uses of __P and __PMT.
1632         * gmon/gmon.c: Likewise.
1633         * hesiod/hesiod.h: Likewise.
1634         * include/stdio.h: Likewise.
1635         * io/fts.c: Likewise.
1636         * libio/genops.c: Likewise.
1637         * libio/libioP.h: Likewise.
1638         * libio/fileops.c: Likewise.
1639         * libio/iolibio.h: Likewise.
1640         * libio/libio.h: Likewise.
1641         * libio/memstream.c: Likewise.
1642         * libio/oldfileops.c: Likewise.
1643         * libio/oldstdfiles.c: Likewise.
1644         * libio/iopopen.c: Likewise.
1645         * libio/vsnprintf.c: Likewise.
1646         * libio/vswprintf.c: Likewise.
1647         * libio/wgenops.c: Likewise.
1648         * libio/oldiopopen.c: Likewise.
1649         * locale/programs/xmalloc.c: Likewise.
1650         * locale/programs/xstrdup.c: Likewise.
1651         * malloc/mtrace.c: Likewise.
1652         * misc/getttyent.c: Likewise.
1653         * misc/getusershell.c: Likewise.
1654         * nis/rpcsvc/ypupd.h: Likewise.
1655         * posix/fnmatch.h: Likewise.
1656         * posix/glob.h: Likewise.
1657         * resolv/arpa/nameser.h: Likewise.
1658         * resolv/gethnamaddr.c: Likewise.
1659         * resolv/resolv.h: Likewise.
1660         * resolv/inet_net_ntop.c: Likewise.
1661         * resolv/inet_net_pton.c: Likewise.
1662         * resolv/res_init.c: Likewise.
1663         * resolv/nss_dns/dns-network.c: Likewise.
1664         * stdio-common/vfprintf.c: Likewise.
1665         * stdio-common/reg-printf.c: Likewise.
1666         * sysdeps/generic/chflags.c: Likewise.
1667         * sysdeps/generic/fchflags.c: Likewise.
1668         * sysdeps/generic/glob.c: Likewise.
1669         * sysdeps/generic/printf_fphex.c: Likewise.
1670         * sysdeps/generic/memcmp.c: Likewise.
1671         * sysdeps/generic/memcopy.h: Likewise.
1672         * sysdeps/generic/morecore.c: Likewise.
1673         * sysdeps/generic/sstk.c: Likewise.
1674         * sysdeps/posix/sigvec.c: Likewise.
1675         * sysdeps/posix/ttyname_r.c: Likewise.
1676         * sysdeps/standalone/arm/bits/errno.h: Likewise.
1677         * sysdeps/standalone/standalone.h: Likewise.
1678         * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise.
1679         * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
1680         * sysdeps/unix/arm/start.c: Likewise.
1681         * sysdeps/unix/bsd/sigaction.c: Likewise.
1682         * sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise.
1683         * sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise.
1684         * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise.
1685         * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise.
1686         * sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise.
1687         * sysdeps/unix/sparc/start.c: Likewise.
1688         * sysdeps/unix/sysv/getdents.c: Likewise.
1689         * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise.
1690         * sysdeps/unix/sysv/irix4/getgroups.c: Likewise.
1691         * sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
1692         * sysdeps/unix/sysv/irix4/getrusage.c: Likewise.
1693         * sysdeps/unix/sysv/irix4/pathconf.c: Likewise.
1694         * sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
1695         * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise.
1696         * sysdeps/unix/sysv/irix4/start.c: Likewise.
1697         * sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
1698         * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise.
1699         * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise.
1700         * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
1701         * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise.
1702         * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
1703         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
1704         * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise.
1705         * sysdeps/unix/sysv/sysv4/setsid.c: Likewise.
1706         * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
1707         * sysdeps/unix/sysv/sysv4/waitpid.c: Likewise.
1708         * sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise.
1709         * time/tzset.c: Likewise.
1710         * time/strftime_l.c: Likewise.
1711         * time/strptime_l.c: Likewise.
1712         * crypt/md5.h: Likewise.
1714 2004-09-13  Andreas Jaeger  <aj@suse.de>
1716         * configure.in: Support GCC 4.x.
1717         * configure: Regenerated.
1719 2004-09-13  Thorsten Kukuk  <kukuk@suse.de>
1721         * nscd/nscd_stat.c: Don't access dbs[cnt].head for disabled services.
1723         * nscd/nscd.init: Fix path to socket.
1725 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
1727         * nscd/nscd_helper.c (get_mapping): Correctly check cmsg length.
1728         Avoid file descriptor leak in case of size mismatch.
1730         * nscd/nscd-client.h: Fix database structure layout for biarch.
1731         * nscd/mem.c (gc): Add casts to avoid warnings.
1733         * nss/getent.c: Don't preconstruct help message.  Do it only when
1734         needed.
1736         * locale/programs/locale.c: Simplify help message printing.
1738 2004-09-12  Roland McGrath  <roland@frob.com>
1740         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]: Add decls
1741         missing in last change.
1743 2004-09-11  Thorsten Kukuk  <kukuk@suse.de>
1745         * nis/nss_compat/compat-grp.c: Check that buflen is greater zero
1746         before writing data into the buffer with negative offset.
1747         * nis/nss_compat/compat-initgroups.c: Likewise.
1748         * nis/nss_compat/compat-pwd.c: Likewise.
1749         * nis/nss_compat/compat-spwd.c Likewise.
1751 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
1753         * misc/syslog.c (vsyslog): Fix copying of PID in case of
1754         out-of-memory situation.  [BZ #365].
1756         * sysdeps/alpha/fpu/bits/mathinline.h: Use __NTH instead of
1757         __THROW in inline function definitions.
1759         * posix/spawn.h [__USE_GNU]: Define POSIX_SPAWN_USEVFORK.
1760         * posix/spawnattr_setflags.c: Check whether any unknown bit is set
1761         in FLAGS parameter and fail if this is the case.
1762         * sysdeps/posix/spawni.c: Use vfork if POSIX_SPAWN_USEVFORK flag is
1763         set.
1765         * nscd/pwdcache.c (cache_addpw): Sync also negative results to disk.
1766         * nscd/grpcache.c (cache_addgr): Likewise.
1767         * nscd/hstcache.c (cache_addhst): Likewise.
1769 2004-09-11  Roland McGrath  <roland@frob.com>
1771         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]:
1772         Set _dl_phdr and _dl_phnum.
1773         (init1): When bootstrap task, bail early and never examine *D.
1775 2004-09-11  Alfred M. Szmidt  <ams@kemisten.nu>
1777         * sysdeps/mach/hurd/i386/tls.h (__i386_set_gdt) [!HAVE_I386_SET_GDT]:
1778         Cast THR, SEL and DESC to `void'.
1780 2004-09-11  Ulrich Drepper  <drepper@redhat.com>
1782         * nscd/connections.c (nscd_run): Call setup_thread only for enabled
1783         databases.
1785         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Use __NTH for __cmsg_nxthdr.
1787 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
1789         * nscd/nscd.c (pagesize_m1): New variable.
1790         (main): Initialize it.
1791         * nscd/nscd.h: Declare pagesize_m1.
1792         * nscd/hstcache.c: Pass correctly aligned address to msync.
1793         * nscd/grpcache.c: Likewise.
1794         * nscd/pwdcache.c: Likewise.
1796 2004-09-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1798         * sysdeps/unix/sysv/linux/sh/pthread_cond_wait.S: Decrement
1799         __nwaiters.  If pthread_cond_destroy has been called and this is
1800         the last waiter, signal pthread_cond_destroy caller and avoid
1801         using the pthread_cond_t structure after unlock.
1802         * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise.
1804 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
1806         * sysdeps/unix/sysv/linux/kernel-features.h: Don't define
1807         __ASSUME_CLONE_STOPPED.
1809 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
1811         * misc/sys/cdefs.h (__REDIRECT_NTH): Change order of __THROW and
1812         __asm__ for C++.  [BZ #377]
1814 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
1816         * nscd/nscd_stat.c: Improve output by also printing .shared and
1817         .persistent.
1819         * nscd/connections.c: Allow cache sharing to be really disabled.
1821 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
1823         * malloc/malloc.c (_int_free): Only do arena boundary check for
1824         contiguous arenas.
1826 2004-09-10  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
1828         * stdlib/longlong.h [__M32R__] (add_ssaaaa, sub_ddmmss): Fix broken
1829         instruct operands.
1830         * elf/elf.h: Add R_M32R_* relocs.
1832 2004-09-09  Ulrich Drepper  <drepper@redhat.com>
1834         * misc/sys/cdefs.h: Despite what the gcc manual says, gcc 3.2
1835         seems not to support the nothrow attribute.  Use it only for gcc
1836         3.3 and higher.
1838         * malloc/hooks.c (top_check): Print top chunk corruption as normal
1839         error message.
1841         * malloc/malloc.c (malloc_printerr): Don't make informational
1842         message look like error message.
1844 2004-09-09  Andreas Jaeger  <aj@suse.de>
1846         * nscd/Makefile (CFLAGS-nscd_setup_thread.c): Set to -fpie.
1848 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1850         * sysdeps/unix/sysv/linux/bits/socket.h (__SCM_CONNECT): Removed.
1852         * malloc/malloc.c (_int_free): Add inexpensive double free and
1853         memory corruption tests.
1854         (malloc_printf_nc): Renamed to malloc_printerr.  Second parameter
1855         is no format string anymore.  Don't use stdio.  Adjust all callers.
1856         * malloc/hooks.c: Adjust malloc_printf_nc callers.
1858 2004-09-08  Roland McGrath  <roland@redhat.com>
1860         * malloc/mcheck.c: Don't use __P.
1861         Use prototypes definitions for static functions.
1863 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1865         * sysdeps/ia64/fpu/bits/mathinline.h: Use __NTH instead of __THROW.
1867 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1868             Jakub Jelinek  <jakub@redhat.com>
1870         * nscd/nscd-client.h: Add a few #includes.
1872         * nscd/Makefile (nscd-modules): Add nscd_setup_thread.
1873         * nscd/connections.c (nscd_run): Call setup_thread for maintenance
1874         threads.
1875         * nscd/nscd-client.h (struct database_pers_head): Add
1876         nscd_certainly_running field.
1877         * nscd/nscd.h: Declare setup_thread.
1878         * nscd/nscd_helper.c (__nscd_get_map_ref): Avoid the time test if
1879         nscd_certainly_running is nonzero.
1880         * sysdeps/generic/nscd_setup_thread.c: New file.
1881         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: New file.
1883 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1885         * nscd/connections.c: Implement r/o sharing of nscd's cache with client
1886         processes via shared memory.
1887         * nscd/nscd-client.h: Likewise.
1888         * nscd/nscd.h: Likewise.
1889         * nscd/nscd_conf.c: Likewise.
1890         * nscd/nscd_getgr_r.c: Likewise.
1891         * nscd/nscd_getpw_r.c: Likewise.
1892         * nscd/nscd_gethst_r.c: Likewise.
1893         * nscd/nscd.conf: Add new config parameters.
1894         * nscd/Makefile (aux): Add nscd_helper.
1895         * nscd/nscd_helper.c: New file.
1896         * nscd/mem.c (gc): Indicate beginning and end of the gc cycle.
1898         * nscd/hstcache.c: Simplify a lot.  We cache only the request itself,
1899         no derived information.
1900         * connections.c (nscd_init): Fix bug in testing size of the persistent.
1902         * nis/Makefile (aux): Add nis_hash.
1903         * nis/nis_hash.c: New file.  Split out from nis_util.c.
1904         * nis/nis_util.c: Move __nis_hash code in separate file.
1906         * csu/tst-atomic.c: Improve atomic_increment_val test which would
1907         not have found a ppc bug.
1909         * sysdeps/s390/fpu/bits/mathinline.h: Remove unnecessary includes.
1911         * malloc/arena.c: Remove __MALLOC_P uses.
1912         * malloc/malloc.c: Likewise.
1914         * malloc/mtrace.c: Remove __P uses.
1915         * malloc/mcheck-init.c: Likewise.
1917 2004-09-07  Jakub Jelinek  <jakub@redhat.com>
1919         * sysdeps/powerpc/powerpc64/configure.in: New file.
1920         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
1921         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
1922         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
1923         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
1924         BODY_PREFIX): Define.
1925         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
1926         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
1927         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
1928         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
1929         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
1931 2004-09-07  Ulrich Drepper  <drepper@redhat.com>
1933         * malloc/malloc.h: Don't define __THROW if it is already defined.
1935         * sysdeps/powerpc/bits/atomic.h (atomic_increment): Define.
1936         (atomic_decrement): Define.
1938         * sysdeps/powerpc/bits/atomic.h: Implement atomic_increment_val and
1939         atomic_decrement_val.
1940         * sysdeps/powerpc/powerpc32/bits/atomic.h: Likewise.
1941         * sysdeps/powerpc/powerpc64/bits/atomic.h: Likewise.
1943         * csu/tst-atomic.c (do_test): Add tests of atomic_increment_val
1944         and atomic_decrement_val.
1946         * include/atomic.h: Define atomic_increment_val, atomic_decrement_val,
1947         and atomic_delay is not already defined.
1948         * sysdeps/i386/i486/bits/atomic.h: Define atomic_delay.
1949         * sysdeps/x86_64/bits/atomic.h: Likewise.
1951         * miscd/sys/cdefs.h (__NTH): New macro.
1952         (__THROW): Define using nothrow attribute for C code and gcc >= 3.2.
1953         (__REDIRECT_NTH): New macro.
1954         * argp/argp.h: Use __NTH and __REDIRECT_NTH where necessary.
1955         * ctype/ctype.h: Likewise.
1956         * dirent/dirent.h: Likewise.
1957         * io/fcntl.h: Likewise.
1958         * io/sys/sendfile.h: Likewise.
1959         * io/sys/stat.h: Likewise.
1960         * io/sys/statfs.h: Likewise.
1961         * io/sys/statvfs.h: Likewise.
1962         * libio/bits/stdio.h: Likewise.
1963         * misc/sys/mman.h: Likewise.
1964         * posix/unistd.h: Likewise.
1965         * resource/sys/resource.h: Likewise.
1966         * rt/aio.h: Likewise.
1967         * signal/signal.h: Likewise.
1968         * stdlib/stdlib.h: Likewise.
1969         * string/argz.h: Likewise.
1970         * string/string.h: Likewise.
1971         * sysdeps/generic/inttypes.h: Likewise.
1972         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
1973         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
1974         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
1975         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
1976         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
1977         * sysdeps/unix/sysv/linux/bits/sys/sysmacros.h: Likewise.
1978         * wcsmbs/wchar.h: Likewise.
1980         * sysdeps/generic/glob.c: Use __PMT isntead of __P where appropriate.
1982         * resolv/gethnamaddr.c (getanswer): Remove __P use in variable
1983         definition.
1985         * io/sys/poll.h: Remove __THROW from poll prototype, it's a
1986         cancellation point.
1988         * io/fts.c (fts_open): Remove uses of __P.
1990         * include/stdlib.h: No need to use __THROW in this header.
1992 2004-09-06  Roland McGrath  <roland@frob.com>
1994         * sysdeps/mach/hurd/dl-sysdep.c (__writev): Does use assert on FD
1995         validity, since __assert_fail gets to here anyway.  Just fail.
1997 2004-09-06  Ulrich Drepper  <drepper@redhat.com>
1999         * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix problem with
2000         AF_UNSPEC lookup with AI_CANONNAME of name which has only IPv6
2001         addresses.
2003 2004-09-05  Richard Henderson  <rth@redhat.com>
2005         * sysdeps/alpha/fpu/fraiseexcpt.c: Remove file.
2006         * sysdeps/unix/sysv/linux/kernel-features.h
2007         (__ASSUME_IEEE_RAISE_EXCEPTION): New.
2008         * sysdeps/unix/sysv/linux/alpha/fraiseexcpt.c: New file.
2009         * sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h: New file.
2010         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use it.
2011         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
2013 2004-09-05  Richard Henderson  <rth@redhat.com>
2015         * sysdeps/alpha/div.S: Save and restore FPCR around fp operations.
2016         * sysdeps/alpha/divl.S, sysdeps/alpha/divq.S, sysdeps/alpha/divqu.S,
2017         sysdeps/alpha/ldiv.S, sysdeps/alpha/reml.S, sysdeps/alpha/remq.S,
2018         sysdeps/alpha/remqu.S: Likewise.
2019         * sysdeps/alpha/div_libc.h (FRAME): Increase to 64.
2021 2004-09-05  Ulrich Drepper  <drepper@redhat.com>
2023         * nscd/cache.c (cache_add): Correctly log GETHOSTBYADDR and
2024         GETHOSTBYADDRv6 requests.
2026 2004-09-04  Ulrich Drepper  <drepper@redhat.com>
2028         * nscd/pwdcache.c (cache_addpw): Use correct key length in
2029         cache_add calls.
2030         * nscd/grpcache.c (cache_addgr): Likewise.
2032 2004-09-03  Alfred M. Szmidt  <ams@kemisten.nu>
2034         * sysdeps/mach/hurd/i386/tls.h (THREAD_DTV): Changed type of _DTV
2035         to `dtv_t *'.
2037 2004-09-03  Ulrich Drepper  <drepper@redhat.com>
2039         * nscd/nscd.c (parse_opt): Use writev instead of two write for
2040         invalidate command.
2042 2004-09-02  Ulrich Drepper  <drepper@redhat.com>
2044         * nscd/connections.c (nscd_run): Check early for invalid request types.
2046 2004-09-02  Roland McGrath  <roland@frob.com>
2048         * sysdeps/mach/hurd/i386/tls.h (TLS_INIT_TP_EXPENSIVE): New macro.
2049         (INSTALL_NEW_DTV, THREAD_DTV): Rewritten to fetch the right word.
2050         (THREAD_SELF): New macro.
2052 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
2054         [BZ #357]
2055         * stdlib/tst-setcontext.c (test_stack): Added test for stack clobber.
2056         (main): Call test_stack.
2057         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
2058         (__getcontext): Push stack frame then save parms in local frame.
2059         Improve instruction scheduling.
2060         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
2061         (__swapcontext): Likewise.
2063 2004-09-01  Andreas Schwab  <schwab@suse.de>
2065         * sysdeps/unix/sysv/linux/ia64/sys/ucontext.h [g++ >= 3.5]: Use
2066         __builtin_offsetof.
2068 2004-09-01  Jakub Jelinek  <jakub@redhat.com>
2070         [BZ #361]
2071         * posix/fnmatch_loop.c (FCT): For backslash between brackets, branch
2072         to normal_bracket after fetching the next character.
2073         * posix/tst-fnmatch.input: Add 25 new tests.
2074         Reported by Markus Oberhumer <markus@oberhumer.com>.
2076 2004-09-01  Ulrich Drepper  <drepper@redhat.com>
2078         * elf/rtld.c (dl_main): First check existence of ld.so.preload
2079         with access.
2081 2004-09-01  Roland McGrath  <roland@redhat.com>
2083         * sysdeps/unix/sysv/linux/bits/waitflags.h
2084         (WSTOPPED, WEXITED, WCONTINUED, WNOWAIT): New macros.
2085         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_WAITID_SYSCALL):
2086         New macro.
2087         * sysdeps/unix/sysv/linux/waitid.c: New file.  Use new syscall when
2088         available, or fall back to the waitpid-based generic code.
2090 2004-08-14  Alfred M. Szmidt  <ams@kemisten.nu>
2092         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Let gcc
2093         clobber the `ebp' register.
2094         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Removed.
2095         Reverts change from 2004-05-07 by Jeroen Dekkers.
2097         * sysdeps/mach/hurd/i386/init-first.c (init): Changed the type of
2098         NEWSP from `void *' to `int *'.  Changed all casts accordingly.
2100 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
2102         * wcsmbs/wcsmbsload.c (__wcsmbs_getfct): Move attribute_hidden
2103         before return type.
2104         * locale/localename.c (__current_locale_name): Likewise.
2106 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
2108         * elf/ldconfig.c (parse_conf): Add prefix argument, prepend it
2109         before arguments to add_dir and pass to parse_conf_include.
2110         (parse_conf_include): Add prefix argument, pass it down to
2111         parse_conf.
2112         (main): Call arch_startup.  Adjust parse_conf caller.
2113         Call add_arch_dirs.
2114         * sysdeps/generic/dl-cache.h (arch_startup, add_arch_dirs): Define.
2115         * sysdeps/unix/sysv/linux/i386/dl-cache.h: New file.
2116         * sysdeps/unix/sysv/linux/ia64/dl-cache.h (EMUL_HACK, arch_startup,
2117         add_arch_dirs): Define.
2118         * sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: Prepend
2119         /emul/ia32-linux before the 32-bit ld.so pathname.
2120         * sysdeps/unix/sysv/linux/ia64/dl-procinfo.c: New file.
2121         * sysdeps/unix/sysv/linux/ia64/dl-procinfo.h: New file.
2123 2004-08-30  Roland McGrath  <roland@frob.com>
2125         * scripts/extract-abilist.awk: If `lastversion' variable defined, omit
2126         later sets from output.
2127         * Makerules (check-abi): Pass option to set that with value of
2128         LIB-abi-frozen variable if one is set.
2130         * abilist/libcidn.abilist: New file (empty).
2132 2004-08-30  Jakub Jelinek  <jakub@redhat.com>
2134         * posix/bits/posix1_lim.h (_POSIX_CHILD_MAX, _POSIX_OPEN_MAX): If
2135         not __USE_XOPEN2K, use the Unix98 mandated values.
2137 2004-08-27  Roland McGrath  <roland@redhat.com>
2139         * configure.in (usetls): Default to yes.
2140         * configure: Regenerated.
2142 2004-08-26  Roland McGrath  <roland@redhat.com>
2144         * configure.in (add_ons_automatic): New variable, set to yes or no
2145         indicating --enable-add-ons with no explicit list.
2146         (running add-on fragments): Allow a fragment to modify $libc_add_on
2147         and have that affect its place in the list of add-ons to use.
2148         * configure: Regenerated.
2150 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
2152         * nscd/cache.c: Major rewrite.  The data is now optionally kept in
2153         a mmaped memory region which is automatically mirrored on disk.
2154         This implements persistent data storage.  The Memory handled
2155         needed to be completely revamped, it now uses a garbage collection
2156         mechanism instead of malloc.
2157         * nscd/connections.c: Likewise.
2158         * nscd/nscd.c: Likewise.
2159         * nscd/nscd.h: Likewise.
2160         * nscd/nscd_conf.c: Likewise.
2161         * nscd/nscd_stat.c: Likewise.
2162         * nscd/grpcache.c: Likewise.
2163         * nscd/hstcache.c:: Likewise.
2164         * nscd/pwdcache.c:: Likewise.
2165         * nscd/Makefile: Add rules to build mem.c.
2166         * nscd/mem.c: New file.
2167         * nscd/nscd.conf: Describe new configuration options.
2169 2004-08-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2171         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
2172         NO_SGIDEFS_H isn't defined.
2173         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
2174         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
2176         * sysdeps/unix/sysv/linux/sh/pread.c: Define NO_SGIDEFS_H and
2177         _MIPS_SIM.
2178         * sysdeps/unix/sysv/linux/sh/pwrite.c: Likewise.
2179         * sysdeps/unix/sysv/linux/sh/pread64.c: Likewise.
2180         * sysdeps/unix/sysv/linux/sh/pwrite64.c: Likewise.
2182 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
2184         * nscd/connections.c (nscd_run): atomic_increment was not missing.
2186         * sysdeps/gnu/Makefile (libdl-sysdep_routines): Don't add eval.
2187         Patch by Greg Schafer.
2189 2004-08-25  Richard Henderson  <rth@redhat.com>
2191         * sysdeps/alpha/elf/start.S (_start): Use $15 as frame unwind
2192         instead of $31.  Zero $15.
2193         * sysdeps/unix/sysv/linux/alpha/clone.S (thread_start): Likewise.
2195 2004-08-25  Ulrich Drepper  <drepper@redhat.com>
2197         * sysdeps/powerpc/powerpc64/bits/atomic.h
2198         (__arch_compare_and_exchange_bool_32_acq): Fix case where oldval
2199         is negative.
2200         (__arch_compare_and_exchange_bool_32_rel): Likewise.
2202         * nscd/connections.c: Make socket nonblocking so that threads
2203         don't get stuck on accept.  Fix locking.
2205         * nscd/grpcache.c (cache_addgr): Use copy of original key in hash
2206         entry with alternative key.
2207         * nscd/pwdcache.c (cache_addpw): Likewise.
2209 2004-08-25  Richard Sandiford  <rsandifo@redhat.com>
2211         * sysdeps/mips/dl-machine.h (_dl_start_user): Don't set
2212         __libc_stack_end.
2214 2004-08-23  Ulrich Drepper  <drepper@redhat.com>
2216         * sysdeps/gnu/netinet/udp.h: Cosmetic changes.  Remove unnecessary
2217         __BEGIN_DECLS/__END_DECLS.
2219 2004-08-23  Andreas Jaeger  <aj@suse.de>
2221         [BZ #341]
2222         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_NOATIME): Define.
2223         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (O_NOATIME): Likewise.
2224         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (O_NOATIME): Likewise.
2225         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (O_NOATIME): Likewise.
2226         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (O_NOATIME): Likewise.
2227         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_NOATIME): Likewise.
2228         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (O_NOATIME): Likewise.
2229         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (O_NOATIME): Likewise.
2230         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_NOATIME): Likewise.
2231         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (O_NOATIME): Likewise.
2232         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (O_NOATIME): Likewise.
2233         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_NOATIME): Likewise.
2234         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (O_NOATIME): Likewise.
2236 2004-08-21  Ulrich Drepper  <drepper@redhat.com>
2238         * malloc/hooks.c (DEFAULT_CHECK_ACTION): Moved to malloc.c.
2239         (check_action): Likewise.
2240         When printing error messages, use malloc_printf_nc now instead of
2241         fiddling with the streams cancellation flag in every place.
2242         * malloc/malloc.c (DEFAULT_CHECK_ACTION): New definition.  Change
2243         default to 3.
2244         (check_action): New variable.
2245         (unlink): Print error message and eventually terminate in case list
2246         is corrupted.
2247         (malloc_printf_nc): New function.  Use it in _int_free.
2248         Change proposed by Arjan van de Ven.
2250         * dlfcn/Makefile: Don't build eval.c anymore.
2252 2004-08-20  Roland McGrath  <roland@frob.com>
2254         * csu/Makefile ($(objpfx)version-info.h): Use printf in place
2255         of echo -e for POSIX.2 portability.
2256         Reported by Paul Jarc <prj@po.cwru.edu>.
2258 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
2260         * sysdeps/posix/getaddrinfo.c (gaih_inet): Minor optimizations in
2261         list generation.
2263         * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't use
2264         getcanonname_r function if AI_CANONNAME flag is not set in
2265         request.
2267         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss):
2268         Initialize mysize with limits only if latter is >= 0.  Use mysize
2269         in malloc call.
2271 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
2273         * sysdeps/posix/getaddrinfo.c (gaih_inet): Cast canon to (char *)
2274         to avoid warning.
2276         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Initialize
2277         status to NSS_STATUS_UNAVAIL.
2279 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
2281         * sysdeps/powerpc/powerpc64/configure.in: New file.
2282         * sysdeps/powerpc/powerpc64/configure: Rebuilt.
2283         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
2284         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
2285         * configure: Rebuilt.
2286         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
2287         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
2288         BODY_PREFIX): Define.
2289         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
2290         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
2291         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
2292         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
2293         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
2295 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
2297         * sysdeps/posix/getaddrinfo.c (gaih_inet): Use h->h_name in the
2298         cannoname lookup since it has the FQDN even if the original NAME
2299         value has not.
2301 2004-08-18  Ulrich Drepper  <drepper@redhat.com>
2303         * sysdeps/posix/getaddrinfo.c (gaih_inet): Store NAME parameter
2304         pointer in new variable ORIG_NAME and use this pointer when
2305         determination of canonical name failed, not the possibly IDN
2306         translated value of NAME.
2308 2004-08-17  Ulrich Drepper  <drepper@redhat.com>
2310         * resolv/resolv.h (RES_DEFAULT): Add RES_NOIP6DOTINT.
2311         * resolv/res_init.c (res_setoptions): Recognize ip6-dotint option.
2312         Reset RES_NOIP6DOTINT flag in this case..
2314         * sysdeps/posix/getaddrinfo.c: Fix memory handling of
2315         ai_canonname.
2317 2004-08-16  Ulrich Drepper  <drepper@redhat.com>
2319         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Don't use
2320         CNAME records, we better follow the chain of CNAME records which
2321         can be accomplished with A/AAAA lookups.
2323 2004-08-15  Roland McGrath  <roland@redhat.com>
2325         * sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who):
2326         Remove __RUSAGE_BOTH constant and RUSAGE_BOTH macro.
2327         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2328         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
2329         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2331 2004-08-15  Roland McGrath  <roland@frob.com>
2333         * sysdeps/i386/i686/Makefile (elide-routines.os): Append hp-timing to
2334         this, not ...
2335         (static-only-routines): ... this.
2336         * sysdeps/ia64/Makefile: Likewise.
2337         * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
2338         * sysdeps/sparc/sparc64/Makefile: Likewise.
2339         * sysdeps/x86_64/Makefile: Likewise.
2340         * sysdeps/i386/i686/hp-timing.c: Revert copyright terms change.
2341         * sysdeps/ia64/hp-timing.c: Likewise.
2342         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
2343         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
2345         * csu/elf-init.c: Update copyright terms including special exception
2346         for these trivial files, which are statically linked into executables
2347         that use dynamic linking for the significant library code.
2348         * io/fstat.c: Likewise.
2349         * io/fstat64.c: Likewise.
2350         * io/lstat.c: Likewise.
2351         * io/lstat64.c: Likewise.
2352         * io/stat.c: Likewise.
2353         * io/stat64.c: Likewise.
2354         * stdlib/atexit.c: Likewise.
2355         * sysdeps/alpha/elf/initfini.c: Likewise.
2356         * sysdeps/alpha/elf/start.S: Likewise.
2357         * sysdeps/arm/elf/start.S: Likewise.
2358         * sysdeps/cris/elf/start.S: Likewise.
2359         * sysdeps/generic/initfini.c: Likewise.
2360         * sysdeps/generic/mknod.c: Likewise.
2361         * sysdeps/hppa/elf/initfini.c: Likewise.
2362         * sysdeps/hppa/elf/start.S: Likewise.
2363         * sysdeps/i386/elf/start.S: Likewise.
2364         * sysdeps/i386/i686/hp-timing.c: Likewise.
2365         * sysdeps/ia64/elf/initfini.c: Likewise.
2366         * sysdeps/ia64/elf/start.S: Likewise.
2367         * sysdeps/ia64/hp-timing.c: Likewise.
2368         * sysdeps/m68k/elf/start.S: Likewise.
2369         * sysdeps/mach/start.c: Likewise.
2370         * sysdeps/mips/elf/start.S: Likewise.
2371         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
2372         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
2373         * sysdeps/s390/s390-32/elf/start.S: Likewise.
2374         * sysdeps/s390/s390-32/initfini.c: Likewise.
2375         * sysdeps/s390/s390-64/elf/start.S: Likewise.
2376         * sysdeps/s390/s390-64/initfini.c: Likewise.
2377         * sysdeps/sh/elf/initfini.c: Likewise.
2378         * sysdeps/sh/elf/start.S: Likewise.
2379         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
2380         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
2381         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
2382         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
2383         * sysdeps/standalone/i386/start.S: Likewise.
2384         * sysdeps/standalone/i960/start.S: Likewise.
2385         * sysdeps/standalone/m68k/m68020/start.S: Likewise.
2386         * sysdeps/unix/arm/start.c: Likewise.
2387         * sysdeps/unix/bsd/osf/alpha/start.S: Likewise.
2388         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
2389         * sysdeps/unix/sparc/start.c: Likewise.
2390         * sysdeps/unix/start.c: Likewise.
2391         * sysdeps/unix/sysv/aix/start.s: Likewise.
2392         * sysdeps/unix/sysv/irix4/start.c: Likewise.
2393         * sysdeps/x86_64/elf/initfini.c: Likewise.
2394         * sysdeps/x86_64/elf/start.S: Likewise.
2396 2004-08-15  Roland McGrath  <roland@redhat.com>
2398         [BZ #227]
2399         * sysdeps/unix/sysv/linux/kernel-features.h
2400         (__ASSUME_BRK_PAGE_ROUNDED): New macro.
2401         * sysdeps/unix/sysv/linux/dl-sysdep.c (frob_brk)
2402         [! __ASSUME_BRK_PAGE_ROUNDED]: Adjust the break up if it falls within
2403         the partial page after the dynamic linker's own data segment.
2405 2004-08-15  Ulrich Drepper  <drepper@redhat.com>
2407         * sysdeps/posix/getaddrinfo.c (gaih_inet): Optimize generation of
2408         v4-mapped addresses a bit.
2409         (gethosts): Move alloca out of macro, so that it is done only once.
2411         * sysdeps/posix/getaddrinfo.c (gaih_addrtuple): Change type of
2412         addr to avoid casts.
2413         (gethosts): Removed.
2414         (gethosts2): Renamed to gethosts.  Make it usable for family !=
2415         AF_UNSPEC.  Fix AI_V4MAPPED.
2416         (gaih_inet): Remove use of old gethosts.  Always use what used to be
2417         gethosts2.  If entry is found, try to use the same NSS module's
2418         getcanonname_r function.  Use gethostbyaddr for AI_CANONNAME only
2419         if getcanonname_r was not available.  Fix filtering of AI_V4MAPPED
2420         addresses.  Numerous cleanups.
2421         * resolv/nss_dns/dns-canon.c: New file.
2422         * resolv/Makefile (libnss_dns-routines): Add dns-canon.
2423         * resolv/Versions (libnss_dns): Add _nss_dns_getcanonname_r.
2425         * elf/Makefile: Add rules to build and run tst-dlopenrpath.
2426         * elf/tst-dlopenrpath.c: New file.
2427         * elf/tst-dlopenrpathmod.c: New file.
2429         * intl/tst-gettext.sh: Adjust for change of de.po file to UTF-8.
2430         * intl/tst-gettext.c: Likewise.
2432         * nss/getent.c (ahosts_keys_int): Correctly print IPv6 addresses.
2434         * nss/getent.c: Allow queries for getaddrinfo with AF_INET and
2435         AF_INET6.
2437 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
2439         * po/de.po: Update from translation team.
2441 2004-08-14  Roland McGrath  <roland@frob.com>
2443         * sysdeps/mach/configure: Regenerated.
2444         * sysdeps/mach/hurd/configure: Regenerated.
2446 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
2448         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If RFC3484 sorting is
2449         performed, make sure it is still the first entry after sorting
2450         that has the ai_canonname information.
2452         * sysdeps/posix/getaddrinfo.c (gaih_inet): Really set ai_canonname
2453         only in one entry.
2455 2004-08-13  Daniel Jacobowitz  <dan@debian.org>
2457         * scripts/output-format.sed: Handle default case of three-argument
2458         OUTPUT_FORMAT.
2460         * sysdeps/arm/machine-gmon.h (mcount_internal): Mark as
2461         __attribute_used__.
2463 2004-08-13  Ulrich Drepper  <drepper@redhat.com>
2465         * nss/getent.c (ahosts_keys): ai_canonname is NULL for all but the
2466         first returned entry.  Print name only if not NULL.
2468         * nis/nss_nis/nis-netgrp.c: Remove locking by using data in struct
2469         __netgrent object passed in instead of global variables.
2470         Optimize.
2471         * nis/nss_nisplus/nisplus-netgrp.c: Remove locking by using data
2472         in struct __netgrent object passed in instead of global variables.
2473         * inet/netgroup.h (struct __netgrent): Add service_user field.
2474         Move cursor in anonymous union, add new field location to that
2475         union.
2476         * inet/getnetgrent_r.c: Extensive rewrite to really enable
2477         concurrent uset of set/get/endnetgrent and innetgr.
2478         Reported by Chuck Simmons.
2480         * inet/netgroup.h (struct name_list): Replace name pointer with
2481         zero-sized array.
2482         * inet/getnetgrent_r.c: Adjust code for change in name_list
2483         layout.  Numerous strdup and free calls removed.
2485         * elf/sprof.c (read_symbols): When comparing aliases, prefer
2486         non-hidden over hidden symbols and strong over weak symbols
2487         if both don't start with '_'.
2489         * malloc/malloc.c: Use strong_alias instead of weak_alias wherever
2490         possible.
2492 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2494         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
2495         RUSAGE_ enums as __RUSAGE_ and adjust macros accordingly.
2496         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2497         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2498         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
2499         Define non-standard RLIMIT_ enums as __RLIMIT_ and adjust macros
2500         accordingly.
2502 2004-08-11  Andreas Schwab  <schwab@suse.de>
2504         * resolv/res_libc.c: Move definition of __res_initstamp ...
2505         * resolv/res_init.c: ... here.
2507 2004-08-10  GOTO Masanori  <gotom@debian.or.jp>
2509         * locale/C-time.c: Change default ERA value from NULL to "".
2510         * locale/tst-C-locale.c: Add test case for ERA keywords.
2512 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
2514         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
2515         RLIMIT__ enums as __RLIMIT_ and adjust macros accordingly.
2516         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2517         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2519 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2521         * sysdeps/unix/sysv/linux/bits/resource.h (RLIMIT_SIGPENDING,
2522         RLIMIT_MSGQUEUE): Add.
2523         (RLIMIT_NLIMITS, RLIM_NLIMITS): Adjust.
2524         * sysdeps/unix/sysv/linux/alpha/bits/resource.h (RLIMIT_SIGPENDING,
2525         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2526         (RLIM_NLIMITS): Adjust.
2527         * sysdeps/unix/sysv/linux/sparc/bits/resource.h (RLIMIT_SIGPENDING,
2528         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2529         (RLIM_NLIMITS): Adjust.
2530         * sysdeps/unix/sysv/linux/mips/bits/resource.h (RLIMIT_SIGPENDING,
2531         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2532         (RLIM_NLIMITS): Adjust.
2534 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2536         * resolv/res_query.c (__libc_res_nsearch): Protect the debugging
2537         printf with #ifdef DEBUG and RES_DEBUG check.
2539         * sysdeps/unix/sysv/linux/bits/shm.h: Move __END_DECLS after
2540         __USE_MISC #endif.
2541         * sysdeps/generic/bits/shm.h: Add __BEGIN_DECLS for __getpagesize
2542         declaration.
2543         * sysdeps/gnu/bits/shm.h: Likewise.
2544         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
2545         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
2546         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
2547         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
2548         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
2550 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
2552         * po/ca.po: Update from translation team.
2554 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
2556         * sysdeps/unix/sysv/linux/bits/shm.h: Add __BEGIN_DECLS for
2557         __getpagesize declaration.
2559 2004-08-11  Roland McGrath  <roland@redhat.com>
2561         * configure.in (libc_cv_cpp_asm_debuginfo): Add missing braces around
2562         commands inside &&.
2563         Reported by Andreas Schwab <schwab@suse.de>.
2564         * configure: Regenerated.
2566         * posix/tst-waitid.c (do_test): Ignore SIGCHLD before cleanup SIGKILL.
2568 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
2570         * time/tzset.c (tzset_internal): Add new parameter which is
2571         nonzero if called through tzset.  Use TZDEFAULT name including
2572         name comparison if the new parameter is zero.  This means implicit
2573         tzset calls will not cause files to be opened and read by tzfile.c
2574         all the time.
2576 2004-08-11  Jakub Jelinek  <jakub@redhat.com>
2578         * rt/tst-timer2.c (do_test): If timer_create fails, just continue.
2579         * rt/tst-timer4.c (do_test): If one of the timer_create calls fails,
2580         return 1 immediately.
2582         * time/tzfile.c (__tzfile_read): Free transitions only if it will
2583         not be reused.
2585         * sysdeps/ieee754/dbl-64/mpa.c: Include <sys/param.h>.
2586         * sysdeps/ieee754/dbl-64/mpa.h (MAX, MIN): Macros removed.
2588         * stdio-common/tst-popen.c: Include <string.h>.
2590         * resolv/res_send.c (__libc_res_nsend): Only define TMPBUF #if DEBUG.
2592         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Remove noreturn
2593         attribute.  Return NULL instead of calling pthread_exit at the end.
2595 2004-08-11  Roland McGrath  <roland@redhat.com>
2597         * iconvdata/testdata/ISO-2022-JP-3: Regenerated.
2599 2004-07-23  Jakub Jelinek  <jakub@redhat.com>
2601         [BZ #284]
2602         * include/features.h (_POSIX_SOURCE, _POSIX_C_SOURCE): Define
2603         if _XOPEN_SOURCE >= 500 even if __STRICT_ANSI__ is defined.
2605 2004-08-10  Alfred M. Szmidt  <ams@kemisten.nu>
2607         * sysdeps/generic/bits/in.h (struct ip_mreq): Remove definition.
2609 2004-08-10  Jakub Jelinek  <jakub@redhat.com>
2611         * libio/bits/stdio.h (fread_unlocked): Cast 0 to (size_t).
2612         (fwrite_unlocked): When checking if size * n is <= 8, cast each
2613         argument to size_t individually.  Cast n to (void) instead of
2614         (size_t), surround with (), return (size_t) 0 if one of n or size
2615         is 0.  [BZ #316]
2616         * stdio-common/Makefile (tests): Add tst-unlockedio.
2617         * stdio-common/tst-unlockedio.c: New test.
2619 2004-08-09  Roland McGrath  <roland@frob.com>
2621         * manual/install.texi (Supported Configurations): Replace bug-glibc
2622         mention with web URL.
2623         * INSTALL: Regenerated.
2624         * locale/iso-3166.def: Likewise, in comment.
2625         * locale/iso-4217.def: Likewise.
2626         * locale/iso-639.def: Likewise.
2627         * posix/cpio.h: Remove bug reporting comment.
2629 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
2631         * libio/bits/stdio.h (fread_unlocked): Add a couple of (size_t)
2632         casts to handle funny calls with floating point argument values
2633         and signed values correctly and without warning.
2634         (fwrite_unlocked): Likewise.  [BZ #309]
2636         * malloc/memusage.c (me): Use creat64, not creat.
2637         * malloc/memusagestat.c: Fix handling of very large sizes.  [BZ #285]
2638         Patch by Guy Maor <guymaor@yahoo.com>.
2640         * elf/ldconfig.c (options): Mark parameter option names as
2641         translatable.  [BZ #253]  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
2643         * iconv/gconv_charset.h (strip): Also allow comma which is what is
2644         used to separate options.  [BZ #194]
2646 2004-08-09  Roland McGrath  <roland@redhat.com>
2648         * FAQ.in: Refer to web pages instead of bug-glibc.
2649         * FAQ: Regenerated.
2651         * time/strptime_l.c: #include <stdbool.h>, `bool' used in last change.
2653 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
2655         * time/tzset.c (tzset_internal): If TZ is not set do not compare
2656         old and new tz value since it might be /etc/localtime in both
2657         cases although the file changed.  [BZ #154]
2658         Patch by Christian Franke <franke@computer.org>.
2660         * time/tzfile.c (__tzfile_read): Determine dev/ino of file.
2661         Compare with values of previously opened file.  Don't do anything
2662         is they match.
2664 2004-08-08  Ulrich Drepper  <drepper@redhat.com>
2666         * elf/dl-load.c (_dl_map_object): If __RTLD_CALLMAP flag is set,
2667         reset loader before the actual loading.
2668         * elf/dl-open.c (dl_open_worker): If file name contains no path
2669         element determine map of caller.  Pass caller map in this case to
2670         _dl_map_object.  Set __RTLD_CALLMAP in mode.
2671         * include/dlfcn.h (__RTLD_CALLMAP): Define.  [BZ #116]
2672         Patch by Greg Wolodkin <greg@mathworks.com>.
2674         * misc/syslog.c (openlog_internal): Always try both UDP and TCP.
2675         [BZ #108]  Patch mainly by Bjorn Andersson <bjorn@iki.fi>.
2677         * configure.in: Also recognize i786. [BZ #106]
2678         Patch by <pluto@pld-linux.org>.
2680         * resolv/res_query.c (__libc_res_nsearch): Correctly test whether
2681         name contains any dots. [BZ #95]
2683         * resolv/res_send.c: Compiling with DEBUG defined works again.
2684         * resolv/gethnamaddr.c (dprintf): Renamed to Dprintf.  Adjust all
2685         callers.
2687         * resolv/tst-leaks.c (TIMEOUT): Define so that if no server is
2688         available the process is not killed. [BZ #41]
2690         * intl/tst-gettext.c (main): Improve some messages. [BZ #33]
2692         * time/strptime_l.c (__strptime_internal): Fix handling of %Ey.
2693         [BZ #28]
2695         * po/sv.po: Update from translation team.
2697 2004-08-07  Ulrich Drepper  <drepper@redhat.com>
2699         * inet/netinet/in.h: Add more const to the setipv4soucefilter,
2700         getsourcefilter, and setsourcefilter parameter list.
2701         * sysdeps/generic/setipv4sourcefilter.c: Likewise.
2702         * sysdeps/generic/getsourcefilter.c: Likewise.
2703         * sysdeps/generic/setsourcefilter.c: Likewise.
2704         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: Likewise.
2705         * sysdeps/unix/sysv/linux/getsourcefilter.c: Likewise.
2706         * sysdeps/unix/sysv/linux/setsourcefilter.c: Likewise.
2708         * po/tr.po: Update from translation team.
2710 2004-08-06  Ulrich Drepper  <drepper@redhat.com>
2712         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): Fix typo.
2713         Reported by Paolo Bonzini.
2715 2004-08-06  Jakub Jelinek  <jakub@redhat.com>
2717         * sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add
2718         always_inline.
2719         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_runtime_setup,
2720         elf_machine_fixup_plt, elf_machine_plt_conflict): Likewise.
2722         * sysdeps/unix/sysv/linux/netatalk/at.h: Include bits/sockaddr.h
2723         before including linux/atalk.h.
2725         * resolv/res_libc.c: Include atomic.h.
2727         * intl/finddomain.c (free_mem): Rename to...
2728         (_nl_finddomain_subfreeres): ... this.  Add
2729         __libc_freeres_fn_section.
2730         * intl/loadmsgcat.c (_nl_unload_domain): Add
2731         __libc_freeres_fn_section.
2732         * intl/gettextP.h (_nl_unload_domain): Move into #ifdef _LIBC.
2733         Add attribute_hidden.
2734         (_nl_findomain_subfreeres): New prototype.
2735         * iconv/gconv_db.c (free_mem): Call _nl_findomain_subfreeres.
2737 2004-07-30  Guido Guenther  <agx@sigxcpu.org>
2739         * nss/getent.c (passwd_keys): Use strtoul instead of isdigit to
2740         test if the key is numeric or not.
2741         (group_keys): Likewise.
2743 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2745         * inet/netinet/in.h: Define struct ip_msfilter, IP_MSFILTER_SIZE,
2746         struct group_filter, and GROUP_FILTER_SIZE.
2747         * include/sys/socket.h: Declare __getsockopt.
2748         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: New file.
2749         * sysdeps/unix/sysv/linux/getipv4sourcefilter.c: New file.
2750         * sysdeps/unix/sysv/linux/setsourcefilter.c: New file.
2751         * sysdeps/unix/sysv/linux/getsourcefilter.c: New file. [BZ #211]
2753         * po/ko.po: Update from translation team.
2755 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2757         * hesiod/hesiod.c (__hesiod_res_get): Use calloc instead of malloc +
2758         memset.
2759         (__hesiod_res_set): Free nsaddrs.
2761         * include/resolv.h (__res_maybe_init): Add prototype.
2762         * resolv/resolv.h (struct __res_state): Add _u._ext.initstamp field.
2763         * resolv/Versions (libc): Add __res_maybe_init@@GLIBC_PRIVATE.
2764         * resolv/res_libc.c (__res_initstamp, lock): New variables.
2765         (res_init): Increase __res_initstamp.
2766         (__res_maybe_init): New function.
2767         * resolv/res_init.c (__res_vinit): Initialize _u._ext.initstamp.
2768         * hesiod/hesiod.c (__hesiod_res_get): Use __res_maybe_init instead
2769         of RES_INIT check and {res_ninit,__res_ninit,res_init} call.
2770         * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise.
2771         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
2772         _nss_dns_gethostbyaddr_r): Likewise.
2773         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
2774         _nss_dns_getnetbyaddr_r): Likewise.
2775         * resolv/gethnamaddr.c (gethostbyname, gethostbyname2,
2776         gethostbyaddr): Likewise.
2777         * resolv/res_data.c (fp_nquery, res_mkquery, res_mkupdate,
2778         res_isourserver, res_sendsigned, res_update, res_search,
2779         res_querydomain): Likewise.
2780         * nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)): Likewise.
2781         * nss/digits_dots.c (__nss_hostname_digits_dots): Likewise.
2782         * nss/getnssent_r.c (__nss_setent, __nss_endent, __nss_getent_r):
2783         Likewise.
2785 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2787         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set ai_family for
2788         V4-mapped IPv6 addresses and req->ai_family==AF_INET.
2789         Reported by A. Guru <a.guru@sympatico.ca>.
2791         * po/sv.po: Update from translation team.
2792         * po/sk.po: Likewise.
2793         * po/pl.po: Likewise.
2795 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2796             Ulrich Drepper  <drepper@redhat.com>
2798         * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Don't read more input
2799         characters than necessary.
2801 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2803         * wcsmbs/Makefile (tests): Add tst-mbsrtowcs.
2804         * wcsmbs/tst-mbsrtowcs.c: New file.
2806         * po/fr.po: Update from translation team.
2808 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2810         * resolv/inet_pton.c (inet_pton4): Disallow octal numbers.  Reported
2811         by A. Guru <a.guru@sympatico.ca>.  [BZ #295]
2813 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2815         * po/nl.po: Update from translation team.
2817         * sysdeps/posix/getaddrinfo.c (gaih_inet): Recognize all the IPv4
2818         numeric address formats inet_addr knows.
2819         (getaddrinfo): Allow AI_NUMERICSERV flag.
2820         If neither IPv4 nor IPv6 interface is present we cannot make any
2821         decision for AI_ADDRCONFIG.  Fail if AI_NUMERICSERV is set and the
2822         string is not just a number.  Remove useless freeaddrinfo call.
2823         * resolv/netdb.h (AI_NUMERICSERV): Define.
2824         Based on a patch by a.guru@sympatico.ca.
2826 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2828         * stdlib/strfmon_l.c (__vstrfmon_l): Memset whole info structure
2829         instead of trying to initialize some, but not all, fields one by
2830         one.
2831         * stdio-common/printf_size.c (printf_size): Initialize fb_info
2832         structure with *info instead of trying to initialize some, but not
2833         all, fields from it.
2835         * nscd/connections.c (handle_request): Check if req->type is in
2836         LASTDBREQ .. LASTREQ range instead of req.
2838         * locale/programs/linereader.c (lr_create): Initialize
2839         lr->return_widestr to 0.
2841         * elf/dl-close.c (free_slotinfo): Add __libc_freeres_fn_section.
2842         (free_mem): Call free_slotinfo just once.
2844         * stdio-common/tst-fmemopen.c (main): Check for MAP_FAILED instead
2845         of NULL.
2847         * locale/localeinfo.h (_nl_locale_subfreeres): New prototype.
2848         * locale/setlocale.c (free_category): Add __libc_freeres_fn_section.
2849         (free_mem): Rename to _nl_locale_subfreeres.
2850         * iconv/gconv_db.c: Include locale/localeinfo.h.
2851         (free_derivation, free_modules_db): Add __libc_freeres_fn_section.
2852         (free_mem): Call _nl_locale_subfreeres.
2853         * iconv/gconv_dl.c (do_release_all): Add __libc_freeres_fn_section.
2855 2004-08-04  Roland McGrath  <roland@frob.com>
2857         * Makeconfig ($(common-objpfx)config.status):
2858         Fix typo: $(add_ons) -> $(add-ons).
2859         (Makeconfig-add-on): New variable.  When doing $(sysdep-makeconfigs)
2860         include, use black magic to get it set to an add-on's name during the
2861         include of the add-on's Makeconfig.
2863         * configure.in: Use variable name `libc_add_on' when sourcing add-on
2864         configure fragments, so they can refer to this.
2865         * configure: Regenerated.
2867 2004-08-04  Roland McGrath  <roland@redhat.com>
2869         * posix/tst-waitid.c (test_child): Sleep a second before stopping.
2870         (do_test): Bump sleep to three seconds.
2871         (sigchld, check_sigchld): New functions.
2872         (do_test): Handle SIGCHLD and check for getting the right details.
2874         * posix/tst-waitid.c (do_test): Kill the child process when bailing
2875         out early on some failure.
2876         [WCONTINUED]: Test WCONTINUED functionality.
2878 2004-08-03  Ulrich Drepper  <drepper@redhat.com>
2880         * nscd/connections.c (handle_request): Print more descriptive
2881         message for invalid request types.
2883 2004-08-02  Jakub Jelinek  <jakub@redhat.com>
2885         * iconvdata/ibm932.c (BODY): Avoid binary search for ch >= 0xffff.
2886         Always treat high as highest number in range + 1.
2887         * iconvdata/ibm943.c (BODY): Likewise.
2889 2004-07-31  Bruno Haible  <bruno@clisp.org>
2891         * iconvdata/JISX0213.TXT: Updated to JISX0213 plane 1 version 2004.
2892         * iconvdata/jisx0213.c (__jisx0213_to_ucs_main,
2893         __jisx0213_to_ucs_pagestart, __jisx0213_from_ucs_level1,
2894         __jisx0213_from_ucs_level2): Regenerated.
2895         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): New function.
2896         * iconvdata/iso-2022-jp-3.c (JISX0213_1_2000_set): Renamed from
2897         JISX0213_1_set.
2898         (JISX0213_1_2004_set): New enum value.
2899         (BODY for FROM_LOOP): Treat ESC $ ( Q like ESC $ ( O.
2900         (BODY for TO_LOOP): For JISX 0213 plane 1 characters, emit ESC $ ( O
2901         when possible, ESC $ ( Q when needed.
2902         * iconvdata/testdata/EUC-JISX0213: Add the 10 new characters.
2903         * iconvdata/testdata/EUC-JISX0213..UTF8: Update.
2904         * iconvdata/testdata/SHIFT_JISX0213: Add the 10 new characters.
2905         * iconvdata/testdata/SHIFT_JISX0213..UTF8: Update.
2906         * iconvdata/testdata/ISO-2022-JP-3: Add the 10 new JISX0213 characters.
2907         * iconvdata/testdata/ISO-2022-JP-3..UTF8: Update.
2909 2004-07-22  Bruno Haible  <bruno@clisp.org>
2911         * iconvdata/gconv-modules (ISO-8859-7): Add alias ISO_8859-7:2003.
2913 2004-07-29  David S. Miller  <davem@redhat.com>
2915         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy): Optimize
2916         better for smaller than 256 byte copies.  Also, use only one
2917         unrolled loop instead of two for the large copy case.
2919 2004-07-30  Richard Henderson  <rth@redhat.com>
2921         * sysdeps/alpha/divq.S: Save t3 before it gets clobbered.
2922         * sysdeps/alpha/remq.S: Likewise.
2923         * sysdeps/alpha/div.S, sysdeps/alpha/ldiv.S: Rewrite with the
2924         new division algorithms in divl.S and divq.S respectively.
2926 2004-07-28  GOTO Masanori  <gotom@debian.or.jp>
2928         * timezone/asia: Update from tzdata2004b.
2929         * timezone/backward: Likewise.
2930         * timezone/europe: Likewise.
2931         * timezone/iso3166.tab: Likewise.
2932         * timezone/leapseconds: Likewise.
2933         * timezone/northamerica: Likewise.
2934         * timezone/southamerica: Likewise.
2935         * timezone/zone.tab: Likewise.
2937         * timezone/private.h: Update from tzcode2004b.
2938         * timezone/zic.c: Likewise.
2940 2004-07-27  Ulrich Drepper  <drepper@redhat.com>
2942         * nscd/grpcache.c (cache_addgr): If necessary, add entry also
2943         under the name the user provided.
2944         * nscd/pwdcache.c (cache_addpw): Likewise.
2946 2004-07-26  Roland McGrath  <roland@redhat.com>
2948         * sysdeps/posix/waitid.c [WEXITED]: Clear WEXITED bit in OPTIONS for
2949         call to __waitpid.
2951 2004-07-26  Ulrich Drepper  <drepper@redhat.com>
2953         * nscd/hstcache.c (cache_addhst): Fix two scenarios which lead to
2954         memory leaks.
2956         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Assign pointer for
2957         new buffer at the right time.
2958         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
2960 2004-07-25  Ulrich Drepper  <drepper@redhat.com>
2962         * inet/Versions [libc, GLIBC_2.3.4]: Add getipv4sourcefilter,
2963         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
2964         * inet/Makefile (routines): Likewise.
2965         * inet/netinet/in.h: Add prototypes for getipv4sourcefilter,
2966         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
2967         * sysdeps/generic/getipv4sourcefilter.c: New file.
2968         * sysdeps/generic/setipv4sourcefilter.c: New file.
2969         * sysdeps/generic/getsourcefilter.c: New file.
2970         * sysdeps/generic/setsourcefilter.c: New file.
2972 2004-07-17  Steven Munroe  <sjmunroe@us.ibm.com>
2974         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
2975         for POWER4 machines.
2977 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
2979         [BZ #274]
2980         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): Fix used >=
2981         BITS_PER_MP_LIMB shifting up.
2982         * stdlib/tst-strtod.c (main): Add new tests.
2984 2004-07-23  Jakub Jelinek  <jakub@redhat.com>
2986         [BZ #282]
2987         * libio/iopopen.c (_IO_new_popen): Use _IO_init instead of
2988         _IO_no_init.  Remove wd from struct locked_FILE.
2989         (_IO_wproc_jumps): Remove.
2990         Reported by Andrew Josey <a.josey@opengroup.org>.
2991         * stdio-common/Makefile (tests): Add tst-popen.
2992         * stdio-common/tst-popen.c: New test.
2994 2004-07-23  Ulrich Drepper  <drepper@redhat.com>
2996         * posix/bits/posix1_lim.h: Fix values for _POSIX_CHILD_MAX and
2997         _POSIX_OPEN_MAX.  Add _POSIX_HOST_NAME_MAX, _POSIX_SYMLINK_MAX,
2998         _POSIX_SYMLOOP_MAX, and _POSIX_RE_DUP_MAX.
2999         Reported by Andrew Josey.
3001         * include/features.h: Document _POSIX_C_SOURCE == 200112L.
3003         * grp/grp.h: Define gid_t if __USE_XOPEN2K is defined.
3004         * pwd/pwd.h: Define uid_t and gid_t if __USE_XOPEN2K is defined.
3005         * io/sys/stat.h: Define dev_t, gid_t, ino_t, mode_t, nlink_t,
3006         off_t, time_t, and uid_t if __USE_XOPEN2K is defined.
3007         * signal/signal.h: Define pid_t if __USE_XOPEN2K is defined.
3008         * posix/unistd.h: Define gid_t, off_t, pid_t, uid_t, and
3009         useconds_t if __USE_XOPEN2K is defined.
3010         * io/utime.h: Define time_t if __USE_XOPEN2K is defined.
3011         * libio/stdio.h: Declare fseeko and ftello if __USE_XOPEN2K is defined.
3013 2004-07-19  Thorsten Kukuk  <kukuk@suse.de>
3015         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
3016         allocate memory for large temporary variables with alloca.
3018 2004-07-22  Ulrich Drepper  <drepper@redhat.com>
3020         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Compatibility
3021         code must have version GLIBC_2.0.  Patch by Dwayne McConnell.
3023         * nscd/nscd_getgr_r.c (nscd_getgr_r): Avoid read call with NULL
3024         pointer and zero length.
3026 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
3028         * nscd/cache.c (prune_cache): Print correct list when debugging.
3030 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
3032         * resolv/res_libc.c (res_init): If RES_INIT is set and
3033         _res.nscount > 0, call __res_nclose and free nsaddrs.
3034         * resolv/Makefile: Add rules to build and run tst-leaks2.
3035         * resolv/tst-leaks2.c: New test.
3037 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
3039         * intl/libintl.h: Don't define macros for C++.
3040         Patch by Goto Masanori.
3042 2004-07-22  GOTO Masanori  <gotom@debian.or.jp>
3044         [BZ #276]
3045         * include/arpa/inet.h: Change inet_aton type from in_addr_t to int.
3046         * inet/arpa/inet.h: Likewise.
3047         * resolv/inet_addr.c: Likewise.
3049 2004-07-21  Alexandre Oliva  <aoliva@redhat.com>
3051         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: Add semtimedop.
3053 2004-07-20  Roland McGrath  <roland@redhat.com>
3055         * configure.in (add_ons): Substitute this.  Move $add_ons handling
3056         after AC_CANONICAL_HOST and default setting of $machine et al.
3057         Don't set $subdirs from $add_ons.
3058         Instead, source add-on/configure fragments early on.
3059         (base_machine): If it's already set, don't set it based on $machine.
3060         (libc_config_ok): New variable, set to no.  If an add-on fragment sets
3061         it to yes, skip the  tuple sanity check as if --enable-hacker-mode.
3062         (sysnames): Try appending add-on names after machine as well.
3063         * config.make.in (add-ons): Set from @add_ons@ instead of @subdirs@.
3064         * Makeconfig ($(common-objpfx)config.status): Also depend on configure
3065         files in $(add_ons) dirs.
3067         * sysdeps/unix/sysv/linux/bits/in.h (struct ip_mreq): Remove
3068         definition, now in netinet/in.h proper.
3070 2004-07-20  Alexandre Oliva  <aoliva@redhat.com>
3072         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
3073         Sort by syscalls.  Make sure we get headers such as sgidefs.h from
3074         the build tree before just-installed ones.
3076         * sysdeps/mips/atomicity.h: Use standard names for ABI macros,
3077         include sgidefs.h where appropriate.
3078         * sysdeps/mips/dl-machine.h: Likewise.
3079         * sysdeps/mips/machine-gmon.h: Likewise.
3080         * sysdeps/mips/bits/setjmp.h: Likewise.
3081         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
3082         * sysdeps/mips/mips64/__longjmp.c: Likewise.
3083         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
3084         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
3085         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
3086         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
3087         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
3088         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
3089         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
3090         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
3091         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
3092         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
3093         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
3094         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
3095         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
3096         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
3097         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
3098         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
3099         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
3100         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
3101         Likewise.
3102         * sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h):
3103         Likewise.
3105         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Update to use
3106         _dl_lookup_symbol_x.
3107         (elf_machine_runtime_link_map): Don't INTUSE _dl_signal_error.
3109 2004-07-20  Ulrich Drepper  <drepper@redhat.com>
3111         * inet/netinet/in.h: Define struct ip_mreq and struct
3112         ip_mreq_source.
3113         Define struct group_req and struct group_source_req.
3114         * sysdeps/unix/sysv/linux/bits/in.h: Define IP_UNBLOCK_SOURCE,
3115         IP_BLOCK_SOURCE, IP_ADD_SOURCE_MEMBERSHIP,
3116         IP_DROP_SOURCE_MEMBERSHIP, IP_MSFILTER, MCAST_JOIN_GROUP,
3117         MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, MCAST_LEAVE_GROUP,
3118         MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP, and
3119         MCAST_MSFILTER.
3120         Define MCAST_INCLUDE and MCAST_EXCLUDE.
3122         * iconvdata/gconv-modules: Add alias for IBM874 [BZ #244].
3124 2004-07-19  Jakub Jelinek  <jakub@redhat.com>
3126         [BZ #258]
3127         * math/libm-test.inc (max_value, min_value): New variables.
3128         (initialize): Initialize them.
3129         (pow_test): Add a couple of new tests.
3130         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Don't generate invalid
3131         exception if |y| >= 1U<<31.
3132         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Don't generate invalid
3133         exception if |y| >= 1L<<63.
3134         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
3135         If y*log2(x) overflows to +-inf, return still +inf/+0 instead of NaN.
3136         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
3138 2004-07-18  Ulrich Drepper  <drepper@redhat.com>
3140         * nscd/pwdcache.c (cache_addpw): Optimize case of unsuccessful
3141         lookup a bit.
3142         * nscd/grpcache.c (cache_addgr): Likewise.
3143         * nscd/hstcache.c (cache_addhst): Likewise.
3145 2004-07-10  GOTO Masanori  <gotom@debian.or.jp>
3147         * sysdeps/s390/s390-32/elf/start.S: Remove symbol _fp_hw.
3148         * sysdeps/s390/s390-64/elf/start.S: Likewise.
3150 2004-04-16  Andreas Schwab  <schwab@suse.de>
3152         * sysdeps/ia64/bits/atomic.h: Cast first argument of
3153         __sync_bool_compare_and_swap_si correct to void*.
3155 2004-07-17  Ulrich Drepper  <drepper@redhat.com>
3157         * iconv/iconv_prog.c (print_known_names): Make machine-readable
3158         output even less cluttered.
3160 2004-07-16  Steven Munroe  <sjmunroe@us.ibm.com>
3162         [BZ #269]
3163         * setjmp/Makefile (tests): Add bug269-setjmp.
3164         * setjmp/bug269-setjmp.c: New file.
3165         * sysdeps/powerpc/powerpc64/__longjmp-common.S [SHARED && !IS_IN_rtld]:
3166         Store R2 from jmpbuf in callers TOC save area.
3167         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [SHARED && !IS_IN_rtld]:
3168         Store R2 in TOC save area.
3169         * sysdeps/powerpc/powerpc64/setjmp-common.S [SHARED && !IS_IN_rtld]:
3170         Copy TOC save area from previous frame as R2 (TOC) in jmpbuf.
3172 2004-07-16  Jakub Jelinek  <jakub@redhat.com>
3174         * locale/newlocale.c: Include bits/libc-lock.h.
3175         (__libc_setlocale_lock): Extern decl.
3176         (__newlocale): Use it.
3177         Reported by Ulrich Weigand <Ulrich.Weigand@de.ibm.com>.
3179 2004-07-15  Jakub Jelinek  <jakub@redhat.com>
3181         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Remove
3182         static inline __attribute ((always_inline)).  Don't define if
3183         NO_CANCELLATION.
3184         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
3185         __fcntl_nocancel.
3186         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c (__fcntl_nocancel):
3187         Remove static inline __attribute ((always_inline)).  Don't define
3188         if NO_CANCELLATION.
3189         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
3190         __fcntl_nocancel.
3191         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Define to
3192         __libc_fcntl if NO_CANCELLATION and __ASSUME_FCNTL64 == 0.
3193         Don't define at all if NO_CANCELLATION and __ASSUME_FCNTL64 > 0.
3194         (__libc_fcntl): Don't define if __fcntl_nocancel is a macro.
3196         [BZ #262]
3197         * sysdeps/i386/elf/start.S (_start): Use @GOT instead of @GOTOFF
3198         for main.
3199         * elf/Makefile: Add rules to build and run tst-pie1.
3200         * elf/tst-pie1.c: New test.
3201         * elf/tst-piemod1.c: New file.
3203 2004-07-14  Jakub Jelinek  <jakub@redhat.com>
3205         [BZ #266]
3206         * manual/string.texi (l64a): Note that the static buffer is 7 bytes
3207         long.  Rewrite example code so that it takes into account l64a output
3208         shorter than 6 characters.
3209         Reported by Julian Graham <julian.graham@aya.yale.edu>.
3211 2004-07-14  Kaz  Kojima  <kkojima@rr.iij4u.or.jp>
3213         * sysdeps/sh/dl-machine.h: Don't reset _dl_starting_up here.
3214         (elf_machine_rela_relative): Remove unused valiable.
3216 2004-07-12  Paul Eggert  <eggert@cs.ucla.edu>
3218         [BZ #263]
3219         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Don't store
3220         outside the buffer if the read returns 0.  __strtod_l can't set
3221         endp to NULL, so remove a test for that case.
3223 2004-07-12  Roland McGrath  <roland@redhat.com>
3225         * manual/signal.texi (Interrupted Primitives): Make clear that
3226         TEMP_FAILURE_RETRY evaluates its expression as long int and compares
3227         it to -1 to define "failure".
3229 2004-07-10  Ulrich Drepper  <drepper@redhat.com>
3231         * elf/ldconfig.c: Define PROCINFO_CLASS as static before including
3232         ldsodefs.h.
3233         * sysdeps/generic/ldsodefs.h: Only define PROCINFO_CLASS if it is not
3234         already defined.
3235         * sysdeps/i386/dl-procinfo.c: Define PROCINFO_CALLS only if not
3236         already defined.
3238         * elf/rtld.c (print_statistics): Mark with noinline attribute.
3239         * sysdeps/i386/dl-machine.h (elf_machine_rel): Mark with always_inline
3240         attribute.
3241         (elf_machine_rel_relative): Likewise.
3243         * include/string.h: Add libc_hidden_proto for __strtok_r and
3244         __strsep_g.
3245         * sysdeps/generic/strsep.c: Add libc_hidden_def.
3246         * sysdeps/generic/strtok_r.c: Likewise.
3247         * sysdeps/i386/strtok_r.S: Add alias for internal symbol.
3248         * sysdeps/i386/i686/strtok_r.S: Likewise.
3249         * sysdeps/x86_64/strtok_r.S: Likewise.
3251 2004-07-09  Alexandre Oliva  <aoliva@redhat.com>
3253         * inet/getnetgrent_r.c (internal_setnetgrent): Make it hidden
3254         instead of internal-linkage, such that we can alias to it.
3255         (internal_endnetgrent, internal_getnetgrent_r): Likewise.
3257 2004-07-09  Ulrich Drepper  <drepper@redhat.com>
3259         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Move attribute
3260         to the front for gcc 3.5+.
3261         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
3262         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
3263         * include/fcntl.h: Don't declare __fcntl_nocancel here if
3264         NO_CANCELLATION is defined.
3266 2004-07-07  Jakub Jelinek  <jakub@redhat.com>
3268         * elf/dl-fini.c (_dl_fini): Add nloaded variable, load
3269         GL(dl_nloaded) into it while still in critical section.
3271 2004-07-06  Thorsten Kukuk  <kukuk@suse.de>
3273         * nss/getent.c (print_group, print_passwd): Use %lu format for
3274         `unsigned long int' values.
3276         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Fix syntax
3277         error typos in goto statements.
3279 2004-07-07  Roland McGrath  <roland@frob.com>
3281         * Makefile (dist-separate): New variable.
3282         (glibc-%.tar rule): Make separate tar files for add-ons listed there.
3283         Depend on their configure files.
3284         (dist-do-separate-dirs): New canned sequence to do that.
3285         (dist-separate-libidn, dist-separate-linuxthreads): New variables.
3286         (dist): Depend on add-on tar files based on $(dist-separate).
3287         (dist-version): New variable, default to $(version).
3288         (tag-for-dist, dist): Use that in place of $(version) in deps.
3290 2004-07-07  Ulrich Drepper  <drepper@redhat.com>
3292         * elf/dl-fini.c (_dl_fini): Move the unlock of the ld.so lock
3293         before the loop running the destructors.
3295 2004-05-18  Andreas Schwab  <schwab@suse.de>
3297         * elf/dl-load.c (_dl_map_object_from_fd): Use the end address of
3298         the first segment for mprotect, not l_text_end.
3300 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
3302         * elf/dl-profile.c (_dl_start_profile): Compact error handling.
3303         Remove hashfraction variable.  Make kcount and kcountsize local
3304         variables.
3306         * elf/dl-init.c: Don't define and use _dl_starting_up if
3307         HAVE_INLINED_SYSCALLS is defined and the variable is not used.
3308         * elf/dl-support.c: Likewise.
3309         * elf/rtld.c: Likewise.
3310         * elf/dl-misc.c (_dl_debug_vdprintf): Use writev syscall directly
3311         if HAVE_INLINED_SYSCALLS is defined.
3312         * sysdeps/powerpc/powerpc64/dl-machine.h: Don't reset _dl_starting_up
3313         here.
3314         * sysdeps/powerpc/powerpc32/dl-start.S: Likewise.
3315         * sysdeps/unix/sysv/linux/configure.in: Define HAVE_INLINED_SYSCALLS.
3316         * config.h.in: Add entry for HAVE_INLINED_SYSCALLS.
3318         * sysdeps/posix/profil.c: If compiled for ld.so, omit code which
3319         is needed to stop profiling.
3320         * elf/dl-open.c (dl_open_worker): If a newly opened object is to be
3321         profile make sure it cannot be unloaded.
3323         * sysdeps/unix/sysv/linux/dl-origin.c: Inline readlink syscall.
3325         * sysdeps/unix/sysv/linux/fcntl.c: If compiled without cancellation
3326         support, make sure the helper function is inlined.
3327         * sysdeps/unix/sysv/linux/pread.c: Likewise.
3328         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
3329         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
3330         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
3332 2004-07-05  Jakub Jelinek  <jakub@redhat.com>
3334         * include/string.h (ffs): Add libc_hidden_builtin_proto.
3335         * sysdeps/rs6000/ffs.c (ffs): Add libc_hidden_builtin_def.
3336         * sysdeps/alpha/alphaev67/ffs.S (ffs): Likewise.
3337         * sysdeps/alpha/ffs.S (ffs): Likewise.
3338         * sysdeps/s390/ffs.c (ffs): Likewise.
3339         * sysdeps/powerpc/ffs.c (ffs): Likewise.
3340         * sysdeps/i386/ffs.c (ffs): Likewise.
3341         * sysdeps/i386/i686/ffs.c (ffs): Likewise.
3342         * sysdeps/m68k/ffs.c (ffs): Likewise.
3343         * sysdeps/generic/ffs.c (ffs): Likewise.
3344         * sysdeps/m88k/ffs.c (ffs): Likewise.
3345         * sysdeps/am29k/ffs.c (ffs): Likewise.
3346         * sysdeps/i960/ffs.c (ffs): Likewise.
3347         * sysdeps/x86_64/ffs.c (ffs): Likewise.
3349         * Makerules (check-abi): Use diff -p -U 0 instead of diff -pu0.
3351         * sysdeps/powerpc/novmx-longjmp.c (__libc_longjmp,
3352         __libc_siglongjmp): Remove symbol_version.
3353         * sysdeps/powerpc/longjmp.c (__libc_longjmp, __libc_siglongjmp):
3354         Export @@GLIBC_PRIVATE, not @@GLIBC_2.3.4.
3355         * sysdeps/powerpc/sigjmp.c (__sigjmp_save): Use strong_alias
3356         unconditionally.
3357         * sysdeps/powerpc/novmx-sigjmp.c (__sigjmp_save): Remove.
3358         * sysdeps/powerpc/powerpc32/__longjmp.S (__longjmp): Use
3359         strong_alias instead of default_symbol_version, remove
3360         symbol_version.
3361         * sysdeps/powerpc/powerpc64/__longjmp.S (__longjmp): Likewise.
3362         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__novmx__setjmp): Change
3363         into strong_alias to __novmxsetjmp.
3364         (__vmx__setjmp): Similarly with __vmxsetjmp.
3365         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
3366         default_symbol_version and symbol_version.
3367         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__novmx__setjmp): Change
3368         into strong_alias to __novmxsetjmp.
3369         (__vmx__setjmp): Similarly with __vmxsetjmp.
3370         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
3371         default_symbol_version and symbol_version.
3373         * nscd/nscd_getgr_r.c: Include stdio-common/_itoa.h.
3375 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
3377         * elf/rtld.c (dl_main): Mark dyn_temp with attribute_relro.
3379 2004-07-04  Matthew Reppert  <arashi@kai.vm.bytemark.co.uk>
3381         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Use libc_hidden_ver
3382         instead of libc_hidden_def.
3384 2004-07-01  Roland McGrath  <roland@redhat.com>
3386         * aclocal.m4: Add provide for AC_CONFIG_AUX_DIR_DEFAULT.
3388         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Move top-level
3389         $(..)shlib-versions file to last in deps list.  This lets add-ons give
3390         more-specific matches that override defaults in the top-level file.
3392         * sysdeps/unix/sysv/linux/configure.in: If arch_minimum_kernel was
3393         already set, don't set it or libc_cv_gcc_unwind_find_fde.
3394         * sysdeps/unix/sysv/linux/configure: Regenerated.
3396 2004-07-01  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3398         * sysdeps/s390/fpu/bits/mathinline.h [__LIBC_INTERNAL_MATH_INLINES]
3399         (__ieee754_sqrt): Define as __MATH_INLINE using sqdbr instruction.
3400         (__ieee754_sqrtf): Define as __MATH_INLINE using sqebr instruction.
3401         * sysdeps/s390/fpu/e_sqrt.c: New file.
3402         * sysdeps/s390/fpu/e_sqrtf.c: New file.
3403         * sysdeps/s390/Implies: New file.
3404         * sysdeps/s390/s390-32/Implies: Remove ieee754, move
3405         ieee754/dbl-64 and ieee754/flt-32 to s390/Implies.
3406         * sysdeps/s390/s390-64/Implies: Likewise.
3408 2004-06-30  Jakub Jelinek  <jakub@redhat.com>
3410         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Include tls.h.
3411         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
3413         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (thread_start):
3414         DO_CALL (exit, 1) instead of branching to _exit.
3415         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (thread_start):
3416         Likewise.
3418         * sysdeps/s390/fpu/bits/mathinline.h: New file.
3420         * include/glob.h (glob64): Add libc_hidden_proto.
3421         * sysdeps/generic/glob64.c (glob64): Add libc_hidden_def.
3422         * sysdeps/gnu/glob64.c (glob64): Likewise.
3423         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Likewise.
3425 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
3427         * sysdeps/i386/fpu/libm-test-ulps: Update for GCC 3.4.
3428         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
3430 2004-06-11  Dwayne Grant McConnell  <dgm69@us.ibm.com>
3432         * sysdeps/powerpc/fpu/s_lround.c: Removed.
3433         * sysdeps/powerpc/fpu/s_lroundf.c: Removed.
3434         * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: New file.
3435         * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: New file.
3436         * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: New file.
3437         * sysdeps/powerpc/powerpc32/fpu/s_floor.S: New file.
3438         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: Removed.
3439         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: New file.
3440         * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: New file.
3441         * sysdeps/powerpc/powerpc32/fpu/s_lround.S: New file.
3442         * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: New file.
3443         * sysdeps/powerpc/powerpc32/fpu/s_rint.S: New file.
3444         * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: New file.
3445         * sysdeps/powerpc/powerpc32/fpu/s_round.S: New file.
3446         * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: New file.
3447         * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: New file.
3449 2004-06-30  Ulrich Drepper  <drepper@redhat.com>
3451         * include/net/if.h: Handle if_nameindex and if_freenameindex with
3452         libc_proto_hidden.
3453         * sysdeps/unix/sysv/linux/netlinkaccess.h: New file.
3454         * sysdeps/unix/sysv/linux/ifaddrs.c: Export netlink handling functions.
3455         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Implement using
3456         netlink if possible.  Fall back on ioctl method if necessary.
3457         * sysdeps/unix/sysv/linux/Dist: Add netlinkaccess.h.
3459         * include/unistd.h: Declare __truncate.
3460         * sysdeps/generic/truncate.c: Also define __truncate.
3461         * sysdeps/mach/hurd/truncate.c: Likewise.
3462         * sysdeps/unix/common/syscalls.list: Likewise.
3463         * sysdeps/unix/sysv/linux/truncate64.c: Use __truncate, not truncate.
3465 2004-06-29  Ulrich Drepper  <drepper@redhat.com>
3467         * stdio-common/printf-parsemb.c (__parse_one_specmb): Initialize
3468         info.extra.  Patch by Marcus Meissner.
3470 2004-06-29  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3472         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
3473         Fix branch offset for a PLT entry.
3475 2004-06-20  Jim Meyering  <jim@meyering.net>
3477         * malloc/obstack.h (obstack_base): Cast to `void *', to align with
3478         documentation.
3480 2004-06-28  Ulrich Drepper  <drepper@redhat.com>
3482         * inet/bug-if1.c (do_test): Simply use 0 as invalid index.
3483         Workaround for [BZ #232].
3485         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Use extend_alloca.
3487 2004-06-28  GOTO Masanori  <gotom@debian.or.jp>
3489         * iconv/gconv_simple.c: Use get16/put16 for user given buffer
3490         in ucs2/ucs2reverse when unaligned memory access is attempted.
3491         * iconv/tst-iconv5.c: New file.
3492         * iconv/Makefile (tests): Add tst-iconv5.
3494 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
3496         * inet/bug-if1.c: Include <string.h>.
3498 2004-06-19  Roland McGrath  <roland@redhat.com>
3500         * sysdeps/posix/waitid.c (do_waitid) [DO_WAITID]: Define function
3501         under this macro name instead.
3502         [NO_DO_WAITID]: Don't define it at all.
3503         (do_waitid) [WNOWAIT, WEXITED]: If these POSIX.1 waitid flag bits are
3504         defined, then return ENOTSUP for combinations of selection bits other
3505         than WEXITED and WEXITED|WSTOPPED, which this version cannot support.
3507         * posix/tst-waitid.c: New file.
3508         * posix/Makefile (tests): Add it.
3510 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
3512         * sysdeps/unix/alpha/sysdep.h (inline_syscall6): Fix a typo.
3514         [BZ #231]
3515         * sysdeps/unix/alpha/sysdep.S (__syscall_error): Avoid !samegp
3516         relocation in librt.so.
3518         [BZ #230]
3519         * sysdeps/alpha/dl-machine.h (_dl_start_user): Use ldah/ldl to load
3520         _dl_skip_args.  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
3522 2004-06-27  Ulrich Drepper  <drepper@redhat.com>
3524         * elf/ldconfig.c (add_dir): Take chroot into account.
3525         Based on changes by HJ Lu and Hideki Iwamoto.
3527         * nscd/connections.c (invalidate_cache): If the host cache has to
3528         be invalidated, re-read resolv.conf.
3530         * resolv/resolv.h (RES_NOIP6DOTINT): Define.
3531         * resolv/res_init.c (res_setoptions): Handle no-ip6-dotint option.
3532         * resolv/gethnamaddr.c (gethostbyaddr): Don't lookup with .ip6.int
3533         if RES_NOIP6DOTINT flag is set.
3534         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
3536 2004-06-25  Jakub Jelinek  <jakub@redhat.com>
3538         * sysdeps/unix/sysv/linux/powerpc/fcntl.c: Move to...
3539         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fcntl.c: ... here.
3540         * sysdeps/unix/sysv/linux/powerpc/lockf64.c: Move to...
3541         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lockf64.c: ... here.
3542         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: New file.
3544         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_GETLK, F_SETLK,
3545         F_SETLKW): Fix values for -m32 -D_FILE_OFFSET_BITS=64.
3547 2004-06-21  Jakub Jelinek  <jakub@redhat.com>
3549         [BZ #231]
3550         * sysdeps/unix/alpha/Makefile: New file.
3551         * sysdeps/unix/alpha/rt-sysdep.S: New file.
3552         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
3554 2004-06-18  Ulrich Drepper  <drepper@redhat.com>
3556         * sysdeps/posix/getaddrinfo.c (gaih_inet): For AI_CANONNAME,
3557         determine the canonical name only for the first returned entry.
3559         * inet/bug-if1.c: New file.
3560         * inet/Makefile (tests): Add bug-if1.
3562 2004-06-18  Roland McGrath  <roland@frob.com>
3564         * Makerules (compile-mkdep-flags): Add -MT $@.
3566         * Makefile (dist, tag-for-dist): New targets.
3567         (files-for-dist, tag-of-stem): New variables.
3568         (glibc-%.tar glibc-linuxthreads-%.tar): New pattern rule.
3569         Make tar files using cvs export.
3570         (%.bz2, %.gz, tag-%): New pattern rules.
3571         (distribute): Variable removed.
3572         (+subdir_targets): Remove distinfo targets.
3573         (echo_subdirs, echo-distinfo, parent_echo-distinfo): Targets removed.
3574         (rpm/%): Pattern rule removed.
3575         * rpm/Makefile, rpm/rpmrc, rpm/template: Ancient cruft files removed.
3576         * Rules (subdir_echo-headers, subdir_echo-distinfo, subdir_dist):
3577         Targets removed.
3578         * Makerules (dist, subdir_distinfo): Targets removed.
3579         ($(objpfx)distinfo): Depend on $(distribute).
3580         * Make-dist: File removed.
3582         * NEWS: Fix a typo.  Update bug-reporting instructions.
3584 2004-06-17  Thorsten Kukuk  <kukuk@suse.de>
3586         * sysdeps/unix/sysv/linux/sched_setaffinity.c
3587         (__sched_setaffinity_new): Set errno to EINVAL and return -1 if
3588         cpuset is wrongly set.
3590 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
3592         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
3593         for POWER4 machines.
3595 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
3597         [BZ #218]
3598         * sunrpc/pmap_prot2.c (xdr_pmaplist): When freeing, remember pml_next
3599         in a local variable, point rp to that local variable afterwards.
3601 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
3603         * sysdeps/ieee754/dbl-64/e_sqrt.c (__ieee754_sqrt): Handle special
3604         cases properly.
3606 2004-06-17  Ulrich Drepper  <drepper@redhat.com>
3608         * sysdeps/unix/sysv/linux/if_index.c (if_indextoname): Correct
3609         error value for unknown interface. [BZ #198]
3611 2004-06-13  Jakub Jelinek  <jakub@redhat.com>
3613         * sysdeps/i386/bits/string.h (memcpy): Add () around arguments.
3614         (memchr, __memrchr, strlen, strcmp, strncmp, __strchr_g, __strchr_c,
3615         __strchrnul_g, __strchrnul_c, strspn, strcspn, strpbrk): Add memory
3616         the asm uses as its input, either of size __n where __n is known or
3617         0xfffffff.
3618         (strstr): Add "memory" clobber.
3620 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
3622         [BZ #219]
3623         * nss/nsswitch.c (free_mem): Don't try to close a library handle
3624         if the handle is invalid.  Patch by David Kimdon <kimdon@esrf.fr>.
3626 2004-06-11  Dmitry V. Levin  <ldv@altlinux.org>
3628         [BZ #217]
3629         * debug/xtrace.sh: Fix typo in error diagnostics.
3631 2004-06-14  Andreas Schwab  <schwab@suse.de>
3633         * stdio-common/psignal.c (psignal): Don't use BUF when asprintf
3634         failed.
3636 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
3638         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Fix pasto
3639         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
3640         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Fix pasto
3641         that clobbers r19.
3642         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Fix pasto
3643         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
3644         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S:
3645         Fix setting of sigcontext.v_regs.  Fix pasto that clobbers r19.
3646         Fix pasto that overflowed sigcontext.v_reserve.
3647         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S:
3648         Fix pasto that clobbers r19.
3649         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Fix setting
3650         of sigcontext.v_regs.  Fix pasto that clobbers r19.  Fix pasto that
3651         overflowed sigcontext.v_reserve.
3653 2004-05-04  H.J. Lu  <hongjiu.lu@intel.com>
3655         [BZ #150]
3656         * sysdeps/generic/strtol_l.c (DEF): Use ".gnu.linkonce.r."
3657         instead of ".gnu.linkonce.ro." as the prefix for linkonce
3658         read-only section name.
3660 2004-06-14  Richard Henderson  <rth@redhat.com>
3662         * sysdeps/alpha/div_libc.h (_ITOFS): Use "sp" not "$sp".
3663         (_ITOFT, _FTOIT, _ITOFT2): Likewise.
3665 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
3667         * sysdeps/s390/s390-32/backtrace.c (init): Guard with #ifdef SHARED.
3668         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
3669         (__backtrace): Don't call init #ifndef SHARED.
3670         * sysdeps/s390/s390-64/backtrace.c (init): Guard with #ifdef SHARED.
3671         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
3672         (__backtrace): Don't call init #ifndef SHARED.
3673         * sysdeps/ia64/backtrace.c (init): Guard with #ifdef SHARED.
3674         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
3675         (__backtrace): Don't call init #ifndef SHARED.
3677 2004-06-11  Roland McGrath  <roland@redhat.com>
3679         * sysdeps/arm/strlen.S [__ARMEB__]: Compute correctly for big-endian.
3680         From Krzysztof Halasa <khc@pm.waw.pl>.
3682 2004-06-10  Jakub Jelinek  <jakub@redhat.com>
3684         * elf/tls-macros.h [__s390x__] (TLS_LD, TLS_GD): Clobber also r14.
3686 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
3688         [BZ #199]
3689         * crypt/md5-crypt.c (__md5_crypt): Only update buflen if realloc
3690         succeeds.  Reported by Miles Ohlrich <miles@cray.com>.
3692         * elf/chroot_canon.c (chroot_canon): Avoid segfault if first malloc
3693         fails.  Avoid memory leak if realloc fails.
3695 2004-06-09  Jakub Jelinek  <jakub@redhat.com>
3697         * sysdeps/generic/setenv.c (setenv): Return -1/EINVAL if name is
3698         NULL, "" or contains '=' character in it.  Reported by
3699         Michael T Kerrisk <mtk-lists@gmx.net>.
3700         * stdlib/tst-environ.c: Include errno.h.
3701         (main): Add tests for these arguments to setenv/unsetenv.
3703 2004-06-07  Roland McGrath  <roland@frob.com>
3705         * NEWS: Update bug reporting instructions.  Fix some typos.
3707 2004-06-05  Ulrich Drepper  <drepper@redhat.com>
3709         * stdio-common/_itoa.h: Don't expand _itoa inline for libc.
3710         * stdio-common/_itoa.c: Add _itoa implementation.
3712         * nscd/nscd_gethst_r.c (__nscd_open_socket): Change implementation
3713         to also send request.  Add parameter to allow this.
3714         Change callers.
3715         * nscd/nscd_getgr_r.c: Change __nscd_open_socket caller.
3716         * nscd/nscd_getpw_r.c: Likewise.
3717         * nscd/nscd-client.h: Change __nscd_open_socket prototype.
3719 2004-06-05  Andreas Jaeger  <aj@suse.de>
3721         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
3722         Handle more than 6 args correctly.  Based on a patch by Masahide
3723         Washizawa <washi@jp.ibm.com>.
3725 2004-06-04  Ulrich Drepper  <drepper@redhat.com>
3727         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use __nss_not_use_nscd_hosts
3728         in all places, not __nss_not_use_nscd_group.
3729         Reported by Philippe Gregoire.
3731 2004-06-03  Ulrich Drepper  <drepper@redhat.com>
3733         * sysdeps/i386/i486/bits/atomic.h: Optimize a bit.
3735 2004-05-07  Dmitry V. Levin  <ldv@altlinux.org>
3737         * argp/argp-help.c (__argp_error, __argp_failure): Check result
3738         of __asprintf call and don't use string if it failed.
3739         * stdio-common/psignal.c (psignal): Likewise.
3740         * locale/programs/localedef.c (more_help): Likewise.
3741         * resolv/res_hconf.c (arg_service_list, arg_trimdomain_list,
3742         arg_bool, parse_line): Check result of __asprintf calls and
3743         don't use string if they failed.
3744         * sunrpc/svc_simple.c (registerrpc, universal): Likewise.
3745         * elf/ldconfig.c (parse_conf_include): Check result of __asprintf
3746         call and exit if it failed.
3748 2004-05-10  Jakub Jelinek  <jakub@redhat.com>
3750         * sysdeps/posix/sysconf.c (__sysconf) <cases _SC_REALTIME_SIGNALS,
3751         _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
3752         _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES,
3753         _SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION,
3754         _SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS,
3755         _SC_THREADS, _SC_THREAD_SAFE_FUNCTIONS, _SC_THREAD_ATTR_STACKADDR,
3756         _SC_THREAD_ATTR_STACKSIZE, _SC_THREAD_PRIORITY_SCHEDULING,
3757         _SC_THREAD_PRIO_INHERIT, _SC_THREAD_PRIO_PROTECT,
3758         _SC_THREAD_PROCESS_SHARED>: Return _POSIX_* value instead of 1.
3759         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf)
3760         <case _SC_MONOTONIC_CLOCK>: Return _POSIX_VERSION instead of 1.
3762 2004-05-07  Jeroen Dekkers  <jeroen@dekkers.cx>
3764         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Add
3765         -momit-leaf-frame-pointer.
3767         * inet/test-ifaddrs.c (addr_string): Surround AF_PACKET case with
3768         #ifdef AF_PACKET.
3770         * sysdeps/mach/hurd/getcwd.c
3771         (_hurd_canonicalize_directory_name_intern): Only realloc when
3772         size is <= 0.
3774         * sysdeps/mach/hurd/mmap.c (__mmap): Fail when addr or offset
3775         isn't page aligned.
3777         * sysdeps/mach/hurd/spawni.c (EXPAND_DTABLE): Set dtablesize to
3778         new size.
3780         * sysdeps/mach/hurd/Versions (GLIBC_PRIVATE): Add __libc_read,
3781         __libc_write and __libc_lseek64.
3783 2004-05-29  Roland McGrath  <roland@redhat.com>
3785         * elf/Makefile (shared-only-routines): Add dl-caller.
3787 2004-05-28  Ulrich Drepper  <drepper@redhat.com>
3789         * sysdeps/powerpc/configure.in: New file.
3791 2004-05-28  Steven Munroe  <sjmunroe@us.ibm.com>
3793         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Add .machine
3794         "altivec" to enable VMX instructions.
3795         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
3796         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
3797         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
3798         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
3799         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
3800         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
3801         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
3802         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
3803         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
3805 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
3807         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Define using
3808         __builtin_expm1l for GCC 3.5+.
3809         (__expl): Define using __builtin_expl for GCC 3.4+.
3810         (exp, expf, expl): Don't define for GCC 3.4+.
3811         (tan, tanf, tanl): Don't define for GCC 3.5+.
3812         (__atan2l): Define using __builtin_atan2l for GCC 3.4+.
3813         (atan2, atan2f, atan2l): Don't define for GCC 3.4+ or !__FAST_MATH__.
3814         (fmod, fmodf, fmodl): Don't define for GCC 3.5+ or !__FAST_MATH__.
3815         (fabsf, fabsl): Only provide if __USE_MISC or __USE_ISOC99.
3816         (sin, sinf, sinl, cos, cosf, cosl, log, logf, logl): Don't define
3817         for GCC 3.4+.
3818         (log10, log10f, log10l, asin, asinf, asinl, acos, acosf, acosl):
3819         Don't define for GCC 3.5+.
3820         (atan, atanf, atanl): Don't define for GCC 3.4+ or !__FAST_MATH__.
3821         (log1p, log1pf, log1pl, logb, logbf, logbl, log2, log2f, log2l): Don't
3822         define for GCC 3.5+.
3823         (drem, dremf, dreml): Don't define for GCC 3.5+ or !__FAST_MATH__.
3824         * sysdeps/sparc/fpu/bits/mathinline.h (sqrt, sqrtf, sqrtl): Don't
3825         define for GCC 3.2+.
3827 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
3829         * string/bits/string2.h (__bzero): Define even for GCC 3.0+.
3830         * sysdeps/alpha/stpcpy.S (stpcpy): Add libc_hidden_builtin_def.
3831         * sysdeps/alpha/alphaev67/stpcpy.S (stpcpy): Likewise.
3832         * sysdeps/powerpc/powerpc32/stpcpy.S (stpcpy): Likewise.
3833         * sysdeps/powerpc/powerpc64/stpcpy.S (stpcpy): Likewise.
3834         * sysdeps/sparc/sparc32/stpcpy.S (stpcpy): Likewise.
3835         * sysdeps/sparc/sparc64/stpcpy.S (stpcpy): Likewise.
3836         * sysdeps/i386/stpcpy.S (stpcpy): Likewise.
3837         * sysdeps/i386/i586/stpcpy.S (stpcpy): Likewise.
3838         * sysdeps/generic/stpcpy.c (stpcpy): Likewise.
3839         * sysdeps/x86_64/stpcpy.S (stpcpy): Likewise.
3840         * sysdeps/i386/i586/memcpy.S (memcpy): Remove
3841         libc_hidden_builtin_def if MEMPCPY_P.
3842         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
3843         * sysdeps/i386/i686/mempcpy.S (mempcpy): Add libc_hidden_builtin_def.
3844         * sysdeps/i386/i586/mempcpy.S (mempcpy): Likewise.
3845         * sysdeps/generic/mempcpy.c (mempcpy): Likewise.
3846         * sysdeps/x86_64/mempcpy.S (mempcpy): Likewise.
3848 2004-05-26  Roland McGrath  <roland@frob.com>
3850         * sysdeps/generic/bits/in.h
3851         (IMPLINK_IP, IMPLINK_LOWEXPER, IMPLINK_HIGHEXPER): Macros removed.
3852         These are long obsolete in BSD systems where they originated.
3853         * conform/data/netinet/in.h-data: Remove `allow IMPLINK_*'
3855 2004-05-26  Jakub Jelinek  <jakub@redhat.com>
3857         * include/string.h (mempcpy, stpcpy): Add libc_hidden_builtin_proto.
3858         * string/bits/string2.h (memset): Disable macro for GCC 3.0+.
3859         (__mempcpy): Use __builtin_mempcpy for GCC 3.4+.
3860         (strchr): For GCC 3.2+, only use __rawmemchr if second argument is
3861         constant '\0' and first argument is not constant.
3862         (__stpcpy): Use __builtin_stpcpy for GCC 3.4+.
3863         (strncpy): Remove #ifdef _USE_STRING_ARCH_mempcpy variant.
3864         For GCC 3.2+ use __builtin_strncpy.
3865         (strncat): For GCC 3.2+ use __builtin_strncat.
3866         (strcmp): For GCC 3.2+ use __builtin_strcmp if both arguments are
3867         constant.
3868         (strcspn, strspn, strpbrk): For GCC 3.2+, use builtin function
3869         if both arguments are constant.
3871 2004-05-26  Ulrich Drepper  <drepper@redhat.com>
3873         * nss/nss_files/files-hosts.c: Fix condition for looking up IPv4
3874         mapped addresses in gethostbyaddr.
3876 2004-05-25  Ulrich Drepper  <drepper@redhat.com>
3878         * nss/digits_dots.c (__nss_hostname_digits_dots): Remove typep and
3879         flags parameter, convert afp to simple int parameter.  Adjust code.
3880         typep was never != NULL and flags therefore also unused.  *afp is
3881         never modified.
3882         * nss/nsswitch.h: Adjust __nss_hostname_digits_dots prototype.
3883         * nss/getXXbyYY.c: Remove HAVE_TYPE handling.  Adjust af parameter
3884         handling for __nss_hostname_digits_dots calls.
3885         * nss/getXXbyYY_r.c: Likewise.
3887         * elf/dl-load.c (_dl_map_object_from_fd): Map DSOs with MAP_DENYWRITE.
3889 2004-05-25  Steven Munroe  <sjmunroe@us.ibm.com>
3891         * sysdeps/powerpc/fpu/Makefile: Make ld.so a dependency of libm.so.
3892         * sysdeps/powerpc/fpu/bits/mathinline.h [__LIBC_INERNAL_MATH_INLINES]
3893         (__ieee754_sqrt): Define as __MATH_INLINE using fsqrt instruction.
3894         (__ieee754_sqrtf): Define as __MATH_INLINE using fsqrts instruction.
3895         * sysdeps/powerpc/fpu/e_sqrt.c (__slow_ieee754_sqrt): Moved
3896         implementation from w_sqrt.c.
3897         * sysdeps/powerpc/fpu/e_sqrtf.c (__slow_ieee754_sqrtf): Moved
3898         implementation from w_sqrtf.c.
3899         * sysdeps/powerpc/fpu/w_sqrt.c (__sqrt): Wrapper implementation
3900         using inline __ieee754_sqrt().
3901         * sysdeps/powerpc/fpu/w_sqrtf.c (__sqrtf): Wrapper implementation
3902         using inline __ieee754_sqrtf().
3903         * sysdeps/powerpc/powerpc32/sysdep.h [__ASSEMBLER__]: Include
3904         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
3905         * sysdeps/powerpc/sysdep.h [__ASSEMBLER__] (PPC_FEATURE_*): Define
3906         PPC_FEATURE_*  independent of __ASSEMBLER__.
3908 2004-05-25  Jakub Jelinek  <jakub@redhat.com>
3910         * sysdeps/pthread/aio_notify.c: Use <> instead of "" for aio_misc.h
3911         include.
3912         (aio_start_notify_thread): Define if not defined.
3913         (notify_func_wrapper): Use it.
3914         * sysdeps/pthread/aio_misc.c: Use <> instead of "" for aio_misc.h
3915         include.
3916         (aio_create_helper_thread): Define if not defined.
3917         (__aio_create_helper_thread): New function.
3918         (__aio_enqueue_request): Use aio_create_helper_thread.
3920         * nis/ypclnt.c (ypall_data, ypall_foreach): Remove.
3921         (struct ypresp_all_data): New type.
3922         (__xdr_ypresp_all): Change second argument to
3923         struct ypresp_all_data *.  Replace ypall_foreach and
3924         ypall_data with objp->foreach and objp->data.
3925         (yp_all): Remove status variable, add data.  Replace
3926         all uses of status with data.status.  Initialize data.foreach
3927         and data.data instead of ypall_foreach and ypall_data.
3929 2004-05-24  Jakub Jelinek  <jakub@redhat.com>
3931         * elf/dl-lookup.c (add_dependency): Set DF_1_NODELETE bit
3932         in l_flags_1, not in l_flags.
3934 2004-04-10  Robert Millan  <robertmh@gnu.org>
3936         * sysdeps/unix/sysv/linux/bits/in.h: Cosmetic fixes to get in sync
3937         with sysdeps/generic/bits/in.h.
3939 2004-05-25  Roland McGrath  <roland@frob.com>
3941         * sysdeps/generic/unwind-dw2-fde-glibc.c: Change copyright terms from
3942         GCC GPL to standard glibc LGPL.
3944 2004-05-24  Ulrich Drepper  <drepper@redhat.com>
3946         * manual/string.texi (Copying and Concatenation): Fixed second
3947         concat example.
3948         Reported by Fabian Pietsch <fabian@zzznowman.dyndns.org>.
3950 2004-05-23  Ulrich Drepper  <drepper@redhat.com>
3952         * malloc/obstack.c: Don't allow linking with _obstack.
3954 2004-05-23  Andreas Schwab  <schwab@suse.de>
3956         * sysdeps/m68k/m68020/bits/atomic.h: Use "+m" constraint instead
3957         of separate "m" constraints.
3959 2004-05-15  Chris Demetriou  <cgd@broadcom.com>
3961         * sysdeps/mips/dl-machine.h (ELF_DL_FRAME_SIZE)
3962         (ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS): For the N32
3963         and 64 ABIs, save and restore regs $10 and $11 (a6 and a7).
3965 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
3967         * malloc/obstack.c (_obstack) [!defined _LIBC]: Remove; not used.
3968         Add comment explaining why libc still defines it.
3970 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
3972         * malloc/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
3973         obstack_alignment_mask, obstack_alloc, obstack_base,
3974         obstack_blank, obstack_blank_fast, obstack_chunk_size,
3975         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
3976         obstack_grow0, obstack_init, obstack_int_grow,
3977         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
3978         obstack_next_free, obstack_object_size, obstack_ptr_grow,
3979         obstack_ptr_grow_fast, obstack_room): Remove declarations of
3980         nonexistent functions.
3982 2004-05-18  Steven Munroe  <sjmunroe@us.ibm.com>
3984         * sysdeps/powerpc/powerpc64/sysdep.h [__ASSEMBLER__]: Include
3985         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
3986         [PIC]: Redundent for powerpc64, removed.
3987         (ENTRY): Generate size and alignment for opd entry.
3988         (EALIGN): Generate size and alignment for opd entry.
3989         (END): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
3990         (END_GEN_TB): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
3992 2004-05-19  Ulrich Drepper  <drepper@redhat.com>
3994         * misc/regexp.h: Say the functions have been withdrawn.
3996         * wcsmbs/tst-wcpncpy.c: Add more tests.
3998 2004-05-18  Roland McGrath  <roland@frob.com>
4000         * sysdeps/generic/unwind.h: Change copyright terms from GCC GPL to
4001         standard glibc LGPL.
4002         * sysdeps/generic/unwind-dw2.c: Likewise.
4003         * sysdeps/generic/unwind-dw2-fde.c: Likewise.
4004         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
4005         * sysdeps/generic/unwind-pe.h: Likewise.
4007 2004-05-15  Petter Reinholdtsen  <pere@hungry.com>
4009         * locale/iso-3166.def: Remove YUGOSLAVIA and insert "SERBIA AND
4010         MONTENEGRO" which have taken over the code 819.  Patch from
4011         Danilo Segan. [BZ #40]
4013 2004-05-15  Jakub Jelinek  <jakub@redhat.com>
4015         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
4016         (SYSCALL_ERROR_HANDLER): Rename __sparc.get_pic.l7 to
4017         __sparc_get_pic_l7.
4019 2004-05-15  Joseph S. Myers  <jsm@polyomino.org.uk>
4021         * catgets/gencat.c: Update bug reporting instructions.
4022         * csu/version.c: Likewise.
4023         * debug/catchsegv.sh: Likewise.
4024         * debug/pcprofiledump.c: Likewise.
4025         * debug/xtrace.sh: Likewise.
4026         * elf/ldd.bash.in: Likewise.
4027         * iconv/iconv_prog.c: Likewise.
4028         * iconv/iconvconfig.c: Likewise.
4029         * locale/programs/locale.c: Likewise.
4030         * locale/programs/localedef.c: Likewise.
4031         * login/programs/pt_chown.c: Likewise.
4032         * malloc/memusage.sh: Likewise.
4033         * malloc/memusagestat.c: Likewise.
4034         * malloc/mtrace.pl: Likewise.
4035         * manual/crypt.texi: Likewise.
4036         * manual/install.texi: Likewise.
4037         * nss/makedb.c: Likewise.
4039 2004-05-14  Jakub Jelinek  <jakub@redhat.com>
4041         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Only
4042         CHECK_STATIC_TLS if sym != NULL.
4043         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
4044         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
4046 2004-05-12  Andreas Schwab  <schwab@suse.de>
4048         * posix/regex_internal.c (build_wcs_buffer): Also set pstr->mbs
4049         when translating.
4051 2004-05-13  H.J. Lu  <hongjiu.lu@intel.com>
4053         * Rules (xtests): Depend on tests.
4055 2004-05-13  Jakub Jelinek  <jakub@redhat.com>
4057         * libio/genops.c (_IO_default_xsputn): Avoid one overflow per char if
4058         count is negative, yet write_ptr < write_end.
4059         (_IO_default_xsgetn): Avoid one underflow per char if count is
4060         negative, yet read_ptr < read_end.
4062 2004-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
4064         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h (XTABS): Define XTABS
4065         equal to TAB3.
4067 2004-05-12  Ulrich Drepper  <drepper@redhat.com>
4069         * elf/dl-lookup.c (_dl_lookup_symbol_x): Correct _dl_signal_cerror
4070         call.
4072 2004-05-10  Roland McGrath  <roland@frob.com>
4074         * hurd/hurdlookup.c (__hurd_file_name_split): Return ENOENT for "".
4075         (__hurd_directory_name_split): Likewise.
4077 2004-05-10  Ulrich Drepper  <drepper@redhat.com>
4079         * po/fr.po: Update from translation team.
4081 2004-05-10  Andreas Jaeger  <aj@suse.de>
4083         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
4084         Correctly compute alignment.
4085         Patch by Michael Matz <matz@suse.de>.
4087 2004-05-09  Ulrich Drepper  <drepper@redhat.com>
4089         * sysdeps/generic/sigpause.c: Prevent sigpause prototype.
4090         * sysdeps/posix/sigpause.c: Likewise.
4091         * signal/signal.h: Don't define sigpause macro unless needed.
4093 2004-05-08  Jakub Jelinek  <jakub@redhat.com>
4095         * configure.in (libc_cv_libgcc_s_suffix): New check.
4096         (libc_cv_as_needed): Use -lgcc_s$libc_cv_libgcc_s_suffix.
4097         * config.make.in (libgcc_s_suffix): Set.
4098         * Makeconfig (libgcc_eh): Use -lgcc_s$(libgcc_s_suffix).
4100 2004-05-08  Ulrich Drepper  <drepper@redhat.com>
4102         * signal/signal.h: Use BSD sigpause only if BSD behavior is preferred.
4104 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
4106         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_1,
4107         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
4108         Load argument values into temporary variables.
4109         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_1,
4110         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
4111         Likewise.
4113 2004-05-07  Ulrich Drepper  <drepper@redhat.com>
4115         * sysdeps/unix/sysv/linux/Makefile: mq_send.c and mq_receive.c
4116         need to be compiled with exceptions.
4118 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
4120         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Fix memory handling.
4121         * sysdeps/generic/ifreq.c (__ifreq): Fix memory handling.
4123         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Make clear that
4124         realloc cannot fail.
4126         * nss/nss_files/files-netgrp.c (EXPAND): Free buffer which cannot
4127         be expanded.
4129         * nis/nis_table.c: Clean up memory handling.
4130         * nis/nis_subr.c (nis_getnames): Clean up memory handling.
4131         * nis/nis_removemember.c (nis_removemember): Add comment
4132         explaining use of realloc.
4134         * math/tgmath.h (fabs): Use __TGMATH_UNARY_REAL_IMAG_RET_REAL.
4135         (carg): Likewise.
4136         Patch by Lev S Bishop <lev.bishop@yale.edu>.
4138         * math/bug-tgmath1.c (main): Test fabs and carg as well.
4140 2004-05-06  Richard Henderson  <rth@redhat.com>
4142         * elf/elf.h (AT_L1I_CACHESHAPE, AT_L1D_CACHESHAPE,
4143         AT_L2_CACHESHAPE, AT_L3_CACHESHAPE): New.
4144         * sysdeps/unix/sysv/linux/alpha/Versions: Export
4145         __libc_alpha_cache_shape as a private symbol.
4146         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c: New file.
4147         * sysdeps/unix/sysv/linux/alpha/sysconf.c: New file.
4149 2004-05-06  Richard Henderson  <rth@redhat.com>
4151         * sysdeps/alpha/div_libc.h (_ITOFS, _ITOFT, _FTOIT, _ITOFT2): New.
4152         * sysdeps/alpha/divl.S: Use them.
4153         * sysdeps/alpha/divq.S: Likewise.
4154         * sysdeps/alpha/divqu.S: Likewise.
4155         * sysdeps/alpha/reml.S: Likewise.
4156         * sysdeps/alpha/remq.S: Likewise.
4157         * sysdeps/alpha/remqu.S: Likewise.
4159 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
4161         * math/tgmath.h (__TGMATH_UNARY_REAL_IMAG_RET_REAL):Define.
4162         (cimag): Use it.
4163         (creal): Likewise.
4164         * math/Makefile (tests): Add bug-tgmath1.
4165         * math/bug-tgmath1.c: New file.
4167 2004-05-05  Jakub Jelinek  <jakub@redhat.com>
4169         * sysdeps/alpha/atomicity.h: Remove.
4170         * sysdeps/generic/atomicity.h: Remove.
4172 2004-05-05  H.J. Lu  <hongjiu.lu@intel.com>
4174         * sysdeps/i386/i486/bits/string.h (strpbrk): Cast return to
4175         char *.
4177 2004-04-22  David Mosberger  <davidm@hpl.hp.com>
4179         * sysdeps/unix/sysv/linux/ia64/Makefile (librt-routines): Mention
4180           rt-sysdep.
4181         * sysdeps/unix/sysv/linux/ia64/rt-sysdep.S: New file.
4183         * sysdeps/ia64/strcat.c: New file.
4184         * sysdeps/ia64/strcat.S: Delete.
4186 2004-05-04  Jakub Jelinek  <jakub@redhat.com>
4188         * sysdeps/unix/sysv/linux/ia64/sysdep.S (USE___THREAD): Remove
4189         defined.
4191 2004-04-23  Jakub Jelinek  <jakub@redhat.com>
4193         * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Add
4194         libc_hidden_proto.  Define to __GI___libm_error_support for
4195         assembly going into libc.so.
4196         * sysdeps/ia64/fpu/libc_libm_error.c (__libm_error_support): Add
4197         libc_hidden_def.
4199         * include/libc-symbols.h (HIDDEN_BUILTIN_JUMPTARGET): Define.
4200         * sysdeps/ia64/bcopy.S (bcopy): Use it for jump to memmove.
4202         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Access
4203         gprel errno if RTLD_PRIVATE_ERRNO or __thread __libc_errno/errno
4204         if USE___THREAD.
4206 2004-05-03  Jakub Jelinek  <jakub@redhat.com>
4208         * sysdeps/unix/bsd/bits/fcntl.h (F_SETOWN, F_GETOWN): Define if
4209         __USE_BSD or __USE_UNIX98.
4210         * sysdeps/unix/bsd/ultrix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4211         * sysdeps/unix/bsd/bsd4.4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4212         * sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h (F_SETOWN, F_GETOWN):
4213         Likewise.
4214         * sysdeps/unix/common/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4215         * sysdeps/unix/sysv/aix/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4216         * sysdeps/unix/sysv/irix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4217         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (F_SETOWN, F_GETOWN):
4218         Likewise.
4219         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_SETOWN, F_GETOWN):
4220         Likewise.
4221         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (F_SETOWN, F_GETOWN):
4222         Likewise.
4223         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (F_SETOWN, F_GETOWN):
4224         Likewise.
4225         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (F_SETOWN, F_GETOWN):
4226         Likewise.
4227         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (F_SETOWN, F_GETOWN):
4228         Likewise.
4229         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (F_SETOWN, F_GETOWN):
4230         Likewise.
4231         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (F_SETOWN, F_GETOWN):
4232         Likewise.
4233         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (F_SETOWN, F_GETOWN):
4234         Likewise.
4235         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (F_SETOWN, F_GETOWN):
4236         Likewise.
4237         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (F_SETOWN, F_GETOWN):
4238         Likewise.
4239         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (F_SETOWN, F_GETOWN):
4240         Likewise.
4241         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_SETOWN, F_GETOWN):
4242         Likewise.
4243         * sysdeps/generic/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4244         * sysdeps/mach/hurd/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4245         * io/sys/stat.h (S_ISSOCK, S_IFSOCK): Likewise.
4247 2004-05-01  Jakub Jelinek  <jakub@redhat.com>
4249         * posix/Versions (libc): Remove __libc_wait, __libc_waitpid,
4250         __libc_pause, __libc_nanosleep, __libc_pread, __libc_pread64,
4251         __libc_pwrite64, __waitid and __pselect @@GLIBC_PRIVATE.
4252         * stdlib/Versions (libc): Remove __on_exit@@GLIBC_PRIVATE.
4253         * sysdeps/unix/sysv/linux/Versions (libc): Remove
4254         __libc_sigaction@@GLIBC_PRIVATE.
4255         * sysdeps/unix/sysv/linux/x86_64/Versions (libc): Remove
4256         __modify_ldt@@GLIBC_PRIVATE.
4257         * socket/Versions (libc): Remove __libc_accept, __libc_send,
4258         __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv,
4259         __libc_sendto and __libc_connect @@GLIBC_PRIVATE.
4260         * stdio-common/Versions (libc): Remove
4261         _itoa_upper_digits@@GLIBC_PRIVATE.
4262         * resolv/Versions (libresolv): Remove __ns_samename@@GLIBC_PRIVATE.
4263         * misc/Versions (libc): Remove __libc_fsync, __libc_msync,
4264         __libc_readv and __libc_writev @@GLIBC_PRIVATE.
4265         * termios/Versions (libc): Remove __libc_tcdrain@@GLIBC_PRIVATE.
4266         * io/Versions (libc): Remove __libc_open, __libc_close, __libc_read,
4267         __libc_write, __libc_lseek, __libc_fcntl, __libc_open64 and
4268         __libc_lseek64 @@GLIBC_PRIVATE.
4270 2004-04-30  Jakub Jelinek  <jakub@redhat.com>
4272         * elf/dl-load.c (open_verify): Move e_phentsize check after e_type
4273         check.
4275 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
4277         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: New file.
4278         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: New file.
4279         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: New file.
4280         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: New file.
4281         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: Removed.
4282         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: New file.
4283         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: Removed.
4284         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: New file.
4285         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: New file.
4286         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: New file.
4287         * sysdeps/powerpc/powerpc64/fpu/s_lround.S: New file.
4288         * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: New file.
4289         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: New file.
4290         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: New file.
4291         * sysdeps/powerpc/powerpc64/fpu/s_round.S: New file.
4292         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: New file.
4293         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: New file.
4294         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: New file.
4296         * math/test-misc.c [LDBL_MANT_DIG == 106](main): Correct LDBL_MAX
4297         mantissa for AIX long double format.
4298         * misc/qefgcvt.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Define for AIX
4299         long double format.
4300         * misc/qefgcvt_r.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Likewise.
4301         * stdlib/fpioconst.c [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
4302         (_fpioconst_pow10): AIX long double format has same exponent range as
4303         double.
4304         * stdlib/fpioconst.h [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
4305         (LDBL_MAX_10_EXP_LOG): AIX long double format has same exponent range
4306         as double.
4308 2004-04-23  Art Haas  <ahaas@airmail.net>
4310         * sysdeps/unix/sysv/linux/kernel-features.h: Add 'defined'.
4312 2004-04-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
4314         * sysdeps/unix/sysv/linux/mq_getattr.c: Include <stddef.h>.
4315         * sysdeps/unix/sysv/linux/mq_notify.c: Likewise.
4316         * sysdeps/unix/sysv/linux/mq_open.c: Likewise.
4317         * sysdeps/unix/sysv/linux/mq_receive.c: Likewise.
4318         * sysdeps/unix/sysv/linux/mq_send.c: Likewise.
4320 2004-04-29  Philip Blundell  <pb@nexus.co.uk>
4322         * sysdeps/arm/dl-machine.h (RTLD_START): Avoid unnecessary GOT
4323         entries.
4325 2004-04-29  Jakub Jelinek  <jakub@redhat.com>
4327         * manual/resource.texi (sched_setaffinity, sched_getaffinity): Fix
4328         prototypes and description [BZ #131].
4330         * string/bits/string2.h (strpbrk): Cast NULL to char * [BZ #130].
4331         Patch by Ed Catmur <ed@catmur.co.uk>.
4332         * string/tst-inlcall.c (main): Add test for strpbrk.
4334         [BZ #140]
4335         * sysdeps/unix/sysv/linux/sys/sysctl.h: Remove linux/compiler.h
4336         include.
4337         (_LINUX_KERNEL_H, _LINUX_TYPES_H, _LINUX_LIST_H): Only define if not
4338         yet defined, #undef back after including linux/sysctl.h if defined
4339         here.
4340         (__LINUX_COMPILER_H, __user): Define if not yet defined, #undef
4341         back after including linux/sysctl.h if defined here.
4343         * sysdeps/sparc/sparc64/soft-fp/qp_qtoi.c (_Qp_qtoi): Use %f31
4344         for single precision register, add it to __asm clobbers [BZ #139].
4345         * sysdeps/sparc/sparc64/soft-fp/qp_qtoui.c (_Qp_qtoui): Use %f31
4346         for single precision register, add it to __asm clobbers.
4347         * sysdeps/sparc/sparc64/soft-fp/qp_qtoux.c (_Qp_qtoux): Use fqtox
4348         instead of fqtoi in QP_HANDLE_EXCEPTIONS.
4349         * sysdeps/sparc/sparc64/soft-fp/qp_qtox.c (_Qp_qtox): Likewise.
4350         Reported by M. H. VanLeeuwen <vanl@megsinet.net>.
4352 2004-04-23  Andreas Schwab  <schwab@suse.de>
4354         * sysdeps/unix/sysv/linux/m68k/register-dump.h: Use
4355         __attribute_used__.
4357 2004-04-22  Philip Blundell  <philb@gnu.org>
4359         * sysdeps/arm/dl-machine.h (elf_machine_rela): Don't use INTUSE
4360         when calling _dl_signal_error.
4361         (elf_machine_rel): Likewise.
4363 2004-04-21  Ulrich Drepper  <drepper@redhat.com>
4365         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Define _GI___sigsetjmp
4366         and use it internally instead of __sigsetjmp.
4367         * sysdeps/ia64/fpu/s_frexpf.c (frexpf): Use _GI___libm_frexp_4f.
4368         * sysdeps/ia64/fpu/s_frexpl.c (frexpl): Use _GI___libm_frexp_4l.
4369         * sysdeps/ia64/fpu/libm_frexp4.S: Define _GI___libm_frexp_4.
4370         * sysdeps/ia64/fpu/libm_frexp4f.S: Define _GI___libm_frexp_4f.
4371         * sysdeps/ia64/fpu/libm_frexp4l.S: Define _GI___libm_frexp_4l.
4372         * sysdeps/ia64/fpu/s_frexp.c (frexp): Use _GI___libm_frexp_4.
4373         * sysdeps/ia64/fpu/libm_support.h: Declare _GI___libm_frexp_4,
4374         _GI___libm_frexp_4f, _GI___libm_frexp_4l.
4375         * sysdeps/ia64/fpu/bits/mathinline.h: New file.
4376         * sysdeps/unix/sysv/linux/ia64/__start_context.S: Use
4377         HIDDEN_JUMPTARGET for exit call.
4378         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use HIDDEN_JUMPTARGET for
4379         _exit call.
4380         * sysdeps/ia64/bcopy.S: Use HIDDEN_JUMPTARGET for memmove call.
4381         * sysdeps/ia64/strcat.S: Use HIDDEN_JUMPTARGET for strlen and
4382         strcpy calls.
4384 2004-04-21  Jakub Jelinek  <jakub@redhat.com>
4386         * posix/tst-chmod.c (do_test): Fix a typo.
4388         * elf/lateglobal.c (main): Fix error checks.
4389         Patch by Stephen Clarke <stephen.clarke@st.com>.
4391         * manual/ctype.texi (isblank, iswblank): Mark as ISO functions,
4392         mention they have been added in ISO C99.
4393         Reported by Ben Pfaff <blp@cs.stanford.edu>.
4395 2004-03-31  H.J. Lu  <hongjiu.lu@intel.com>
4397         * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: Fix typo.
4399 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
4401         * sysdeps/unix/sysv/linux/shm_open.c (shm_unlink): Change EPERM into
4402         EACCES.
4404 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
4406         * stdio-common/vfscanf.c (_IO_vfscanf): Revert last %% whitespace
4407         handling change.
4408         * stdio-common/tst-sscanf.c (int_tests): Adjust.
4410         * nis/nss-nis.c: Include stdlib.h.
4412         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Shut up a
4413         warning.
4414         * sysdeps/sparc/sparc64/memcmp.S (memcmp): Remove BP_SYM () from
4415         libc_hidden_builtin_def.
4417 2004-04-20  Jim Meyering  <jim@meyering.net>
4419         * misc/error.c (error_tail): Don't leak upon realloc failure.
4421 2004-04-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4423         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
4424         Use RETURN_ADDRESS instead of __builtin_return_address.
4426 2004-04-19  Ulrich Drepper  <drepper@redhat.com>
4428         * sysdeps/unix/sysv/linux/mq_unlink.c: Rewrite to produce more
4429         compact code.
4431 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
4433         * stdio-common/vfscanf.c (_IO_vfscanf): When skipping whitespace,
4434         do input_error () instead of conv_error () and don't look at errno.
4435         Don't eat any whitespace before %% if skip_space == 0.
4436         * stdio-common/tst-sscanf.c (int_tests): New array.
4437         (main): Run int_tests.
4440 See ChangeLog.14 for earlier changes.