* libio/ftello.c (ftello): Don't subtract save_end - save_base
[glibc.git] / ChangeLog
blob99c051147a4e3d0abf0f7201f75b4a37073f909c
1 2004-11-04  Jakub Jelinek  <jakub@redhat.com>
3         * libio/ftello.c (ftello): Don't subtract save_end - save_base
4         if pos is _IO_pos_BAD.
5         * libio/ftello64.c (ftello64): Likewise.
6         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
7         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
8         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
9         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
10         * libio/ioftell.c (_IO_ftell): Likewise.
11         Cast to long int instead of off_t when checking for overflow.
13 2004-11-04  Richard Henderson  <rth@redhat.com>
15         * sysdeps/unix/sysv/linux/alpha/register-dump.h (regnames): Align.
16         (linefeed): Remove.
17         (register_dump): Rewrite to generate into a flat buffer instead
18         of into iovecs.
20 2004-11-02  Jakub Jelinek  <jakub@redhat.com>
22         * debug/tst-chk1.c (ret): New volatile variable.
23         (CHK_FAIL_END): Remove redundant ret setting.
24         (do_test): Remote ret variable.
26 2004-01-03  Paolo Bonzini  <bonzini@gnu.org>
28         * posix/regex_internal.h (__regfree) [!_LIBC]: Define to regfree.
30 2004-11-03  Marcus Brinkmann  <marcus@gnu.org>
32         * sysdeps/generic/utime.c: Include <stddef.h>.
34         * sysdeps/generic/sysconf.c: Include <grp.h> and <pwd.h>.
36         * sysdeps/generic/tempname.c (__path_search): Add missing argument
37         TRY_TMPDIR.
39 2004-10-31  Mariusz Mazur <mmazur@kernel.pl>
41         * sysdeps/unix/sysv/linux/alpha/setregid.c: New file.
42         * sysdeps/unix/sysv/linux/alpha/setresgid.c: New file.
43         * sysdeps/unix/sysv/linux/alpha/setresuid.c: New file.
44         * sysdeps/unix/sysv/linux/alpha/setreuid.c: New file.
46 2004-10-27  Derek R. Price  <derek@ximbiot.com>
48         [BZ #487] This change is imported from gnulib.
49         * time/mktime.c (not_equal_tm) [DEBUG]: Remove redundant check.
51 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
53         [BZ #473]
54         * time/tst-mktime.c (main): Don't assume that mktime fails
55         when given time stamps before 1970.  It returns negative
56         time_t values instead, for compatibility with BSD.
58         * time/tst-mktime2.c: New file.
59         * time/Makefile (tests): Add it.
61         [BZ #473] Import from gnulib.  Revamp to avoid several problems near
62         time_t extrema, and on hosts with 64-bit time_t and 32-bit int.
63         This fixes Debian bug 177940.
64         * time/mktime.c (TIME_T_MIDPOINT): New macro.
65         (ydhms_diff): Renamed from ydhms_tm_diff, with a new signature,
66         which avoids overflow problems on hosts with 64-bit time_t and
67         32-bit int.  All callers changed.  Now an inline function.
68         Verify at compile-time that long int is wide enough to avoid
69         these overflow problems.
70         (guess_time_tm): New function.
71         (__mktime_internal): Use it.  Avoid overflow when computing yday on
72         hosts with 64-bit long and 32-bit int.  Remove tests for 69;
73         no longer needed.  Use if rather than #ifdef for LEAP_SECONDS_POSSIBLE
74         so that the code is checked by more compilers.
75         Do not rely on floating point to probe: stick to integer arithmetic,
76         to avoid potential porting problems.
77         Repair potential overflow correctly in the Southern Hemisphere.
78         (localtime_offset): Add a FIXME for the case where time_t is unsigned.
80 2004-10-30  Andreas Schwab  <schwab@suse.de>
82         * sysdeps/m68k/dl-machine.h (elf_machine_rela)
83         (elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
84         instead of static.
86 2004-10-30  Andreas Schwab  <schwab@suse.de>
88         * sysdeps/unix/sysv/linux/waitid.c: Include <stddef.h> for NULL.
90 2004-10-30  Ulrich Drepper  <drepper@redhat.com>
92         * malloc/malloc.c (_int_free): Use unique comments for the error
93         cases.
95 2004-10-28  Roland McGrath  <roland@frob.com>
97         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_fork): Use i386_thread_state
98         instead of machine_thread_state.
100 2004-10-28  Roland McGrath  <roland@redhat.com>
102         * sysdeps/unix/sysv/linux/syscalls.list: Remove setaltroot.
104 2004-10-28  Ulrich Drepper  <drepper@redhat.com>
106         * elf/dl-open.c (dl_open_worker): Remove reference to glibcbug script.
108 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
110         * elf/dl-load.c (_dl_map_object): Use cache_rpath to check for
111         existing rpath in main executable, not explicit test.
113 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
115         * include/resolv.h (_res_opcodes): New extern.
116         Add libresolv_hidden_proto.
117         * resolv/res_debug.c (_res_opcodes): Remove.
118         (__p_class_syms, __p_type_syms): Add libresolv_hidden_proto
119         and libresolv_hidden_data_def.  Remove attribute_hidden.
120         * resolv/res_mkquery (_res_opcodes): Remove.
121         * resolv/res_data.c (_res_opcodes): Remove attribute_hidden.
122         Add libresolv_hidden_data_def.
124 2004-10-27  Ulrich Drepper  <drepper@redhat.com>
126         * elf/dl-open.c (_dl_open): Don't allow explicitly opening a DSO
127         into an empty namespace.
129         * elf/dl-fini.c (_dl_fini): Fix search for map in maps array.
130         Reverse order of namespaces.
131         * elf/Makefile: Add rules to build and run tst-dlmopen3.
132         * elf/tst-dlmopen3.c: New file.
133         * elf/tst-dlmopen1mod.c: Add check whether constructor runs.
135 2004-10-27  Jakub Jelinek  <jakub@redhat.com>
137         * sysdeps/generic/glob.c (globfree): Clear gl_pathv after freeing it.
138         * posix/Makefile: Add rules to build and run bug-glob2 test.
139         * posix/bug-glob2.c: New test.
141 2004-10-27  Roland McGrath  <roland@frob.com>
143         * sysdeps/mach/hurd/i386/tls.h (HURD_TLS_DESC_DECL): New macro.
144         (_hurd_tls_init): Use it.
145         (_hurd_tls_fork): New function.
146         * sysdeps/mach/hurd/fork.c (__fork) [USE_TLS]: Call it.
148 2004-10-26  Roland McGrath  <roland@frob.com>
150         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Initialize TCB->tcb.
152 2004-10-26  Jakub Jelinek  <jakub@redhat.com>
154         * sysdeps/gnu/netinet/udp.h (struct udphdr): Use u_int16_t
155         type instead of uint16_t.  Formatting.
157 2004-10-25  Roland McGrath  <roland@redhat.com>
159         * login/openpty.c (openpty): Add libutil_hidden_def.
161         * nss/nss_files/files-parse.c (nss_files_parse_hidden_def): Define to
162         either libc_hidden_def or libnss_files_hidden_def, not hidden_def.
163         This file is also compiled into libnss_hesiod by #include.
165 2004-10-25  Roland McGrath  <roland@frob.com>
167         * sysdeps/unix/bsd/hp: Directory and all files removed.
168         These are now in the ports repository.
169         * sysdeps/unix/bsd/osf: Likewise.
170         * sysdeps/unix/bsd/sequent: Likewise.
171         * sysdeps/unix/bsd/sony: Likewise.
172         * sysdeps/unix/bsd/ultrix4: Likewise.
173         * sysdeps/unix/sysv/aix: Likewise.
174         * sysdeps/unix/sysv/hpux: Likewise.
175         * sysdeps/unix/sysv/irix4: Likewise.
176         * sysdeps/unix/sysv/isc2.2: Likewise.
177         * sysdeps/unix/sysv/minix: Likewise.
178         * sysdeps/unix/sysv/sco3.2.4: Likewise.
179         * sysdeps/unix/sysv/sco3.2: Likewise.
180         * sysdeps/unix/sysv/sysv4: Likewise.
182         * configure.in (ASM_LINE_SEP): Move this setting to ...
183         * sysdeps/hppa/configure.in: ... here, new file.
184         * sysdeps/hppa/configure: New generated file.
185         * configure: Regenerated.
187 2004-10-25  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
189         * sysdeps/sh/dl-machine.h: Include sysdep.h.
190         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add CFI directives.
191         (elf_machine_runtime_setup): Add always_inline attribute.
192         (_dl_start_user): Pass the correct environ.
193         (elf_machine_rela): Replace static inline by auto inline, add
194         always_inline attribute.
195         (elf_machine_rela_relative): Likewise.
196         (elf_machine_lazy_rel): Likewise.
198 2004-10-24  Ulrich Drepper  <drepper@redhat.com>
200         * nis/nis_call.c: Pretty printing.  Minor cleanups.
201         * nis/nis_addmember.c (nis_addmember): Add assert to check buffer
202         bounds.
204         * resolv/nss_dns/dns-host.c: Avoid using PLTs.
205         * include/libc-symbols.h: Define hidden attribute macros for
206         libnss_nisplus and libutil.
207         * include/utmp.h: Add libutil_hidden_proto for login_tty.
208         * login/login_tty.c: Add libutil_hidden_def.
209         * nis/nisplus-parser.h: Add libnss_nisplus_hidden_proto for parsers.
210         * nis/nss_nisplus/nisplus-parser.c: Add libnss_nisplus_hidden_def.
211         * include/pty.h: New file.
212         * include/rpcsvc/yp.h: New file.
213         * include/rpcsvc/ypclnt.h: New file.
214         * include/rpcsvc/ypupd.h: New file.
215         * include/libc-symbols.h: Define hidden attribute macros for libnsl.
216         * include/rpcsvc/nislib.h: Use libnsl_hidden_proto for various
217         functions.
218         * nis/nis_add.c: Add libnsl_hidden_def.  Minor optimizations.
219         * nis/nis_call.c: Likewise.
220         * nis/nis_clone_obj.c: Likewise.
221         * nis/nis_defaults.c: Likewise.
222         * nis/nis_domain_of_r.c: Likewise.
223         * nis/nis_error.c: Likewise.
224         * nis/nis_file.c: Likewise.
225         * nis/nis_free.c: Likewise.
226         * nis/nis_local_names.c: Likewise.
227         * nis/nis_lookup.c: Likewise.
228         * nis/nis_modify.c: Likewise.
229         * nis/nis_print.c: Likewise.
230         * nis/nis_remove.c: Likewise.
231         * nis/nis_subr.c: Likewise.
232         * nis/nis_table.c: Likewise.
233         * nis/nis_util.c: Likewise.
234         * nis/yp_xdr.c: Likewise.
235         * nis/ypclnt.c: Likewise.
236         * nis/ypupdate_xdr.c: Likewise.
238         * resolv/res_send.c (send_dg): Cope with failures.
240         * include/libc-symbols.h: Define hidden attribute macros for
241         libnss_files.
242         * include/netdb.h: Use libnss_files_hidden_proto for the parsers
243         defined in libnss_files, not libc_hidden_proto.
244         * include/netinet/ether.h: Likewise.
245         * include/rpc/netdb.h: Likewise.
246         * nss/nss_files/files-parse.c: Use hidden_def in parser definitions
247         instead of libc_hidden_def.
248         * nss/nss_files/files-netgrp.c: Add libnss_files_hidden_def to
249         _nss_netgroup_parseline definition.
251 2004-10-23  Roland McGrath  <roland@frob.com>
253         * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Don't return early
254         after an RPC succeeds.
256         * sysdeps/vax, sysdeps/unix/bsd/vax: Directories and all files removed.
257         These are now in the ports repository.
258         * sysdeps/tahoe, sysdeps/unix/bsd/tahoe: Likewise.
259         * sysdeps/cris, sysdeps/unix/sysv/linux/cris: Likewise.
260         * sysdeps/am29k, sysdeps/i860, sysdeps/i960, sysdeps/m88k: Likewise.
261         * sysdeps/standalone, sysdeps/z8000: Likewise.
263 2004-10-23  Ulrich Drepper  <drepper@redhat.com>
265         * resolv/res_send.c (send_dg): Combine write and read to socket
266         into one loop.
268 2004-10-22  Roland McGrath  <roland@frob.com>
270         * Makefile (%.bz2, %.gz): Move these pattern rules ...
271         * Makerules: ... to here.
273 2001-10-31  Alexandre Oliva  <aoliva@redhat.com>
275         * elf/elf.h: Add R_MN10300_* relocation numbers.
277 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
279         [BZ #471] Fix imported from gnulib.
280         * time/mktime.c (leapyear, ydms_tm_diff): Year is of type
281         long int, not int, to avoid problems when tm_year == INT_MAX
282         and tm_mon > 12.
283         (__mktime_intenral): Compute year using long int arithmetic,
284         not int arithmetic, to avoid problems on hosts where time_t
285         and long are 64 bits but int is 32.
287         [BZ #468] Import a fix from gnulib.
288         * time/mktime.c [! DEBUG]: Do not include <string.h>.
289         It's needed only if DEBUG is nonzero.
291         [BZ #470] Import fix from gnulib.
292         * time/mktime.c [!_LIBC] (__mktime_internal): Define to
293         mktime_internal, to avoid clashes with any __mktime_internal
294         function defined in the standard library.
296         [BZ #469] Imported from gnulib.
297         * time/mktime.c (__isleap): Remove; all uses replaced by:
298         (leapyear): New function, which avoids overflow by not adding
299         1900 to year before testing whether it is a leap year.
301         [BZ #472] Imported from gnulib.
302         * time/mktime.c (Local Variables): Remove -DHAVE_TIME_R_POSIX;
303         no longer used.
305 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
307         * resolv/res_send.c: Remove compatibility code which is unused in
308         glibc and probably bitrotten.
310         * debug/execinfo.h: Remove __THROW from backtrace prototype.
312 2004-10-22  Jakub Jelinek  <jakub@redhat.com>
314         * sysdeps/i386/Makefile (CFLAGS-backtrace.c): Add -fexceptions.
315         * sysdeps/i386/backtrace.c: Include <bits/libc-lock.h>, <dlfcn.h>,
316         <stdlib.h> and <unwind.h>.  Remove <bp-checks.h> include.
317         (struct trace_arg): New type.
318         (unwind_backtrace, unwind_getip, unwind_getcfa, unwind_getgr): New
319         fn pointers resp. macros.
320         (init, backtrace_helper): New functions.
321         (__backtrace): Rewritten to use _Unwind_Backtrace first and fall
322         back to frame pointer walking.
324 2004-10-22  Ulrich Drepper  <drepper@redhat.com>
326         * sysdeps/unix/sysv/linux/Versions: Things are still in flux, it
327         seems.  Undo last additions.
329 2004-10-21  Ulrich Drepper  <drepper@redhat.com>
331         * posix/execvp.c (execvp): Also ignore ENODEV and ETIMEDOUT errno
332         values.
334 2004-10-20  Roland McGrath  <roland@redhat.com>
336         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Check also
337         $(config-sysdirs) for shlib-versions files.
339         * Makeconfig ($(common-objpfx)soversions.i): Replace shell loop with
340         use of ...
341         * scripts/soversions.awk: ... this new file.  Collect lib info and
342         match any DEFAULT line before emitting anything, so DEFAULT can come
343         later in the concatenation of shlib-versions files.
345         * manual/errno.texi (Error Codes): Add ENOKEY, EKEYEXPIRED,
346         EKEYREVOKED, EKEYREJECTED.
347         * sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.3.4): New errlist.
348         * sysdeps/gnu/errlist.c: Regenerated
350         * sysdeps/gnu/errlist-compat.awk: Don't bail if Versions gives a count
351         higher than ERR_MAX reports.  Instead, emit a #define ERR_MAX.
352         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.h): New target.
353         (generated): Add errlist-compat.h.
354         * sysdeps/gnu/errlist.awk: Make output #include <errlist-compat.h> to
355         define ERR_MAX and use that for table size.
357 2004-10-20  Ulrich Drepper  <drepper@redhat.com>
359         * sysdeps/unix/sysv/linux/syscalls.list: Add entries for setaltroot,
360         key_add, key_request, and keyctl syscalls.
361         * sysdeps/unix/sysv/linux/Versions: Export them.
363 2004-10-19  Roland McGrath  <roland@frob.com>
365         * sysdeps/mach/readonly-area.c: New file.
367 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
369         * elf/Versions [ld, GLIBC_PRIVATE]: Add _dl_debug_state.
370         * elf/dl-debug.c (_dl_debug_state): Add rtld_hidden_def.
371         * sysdeps/generic/ldsodefs.h (_dl_debug_state): Don't mark as
372         hidden but use rtld_hidden_proto.
374 2004-10-19  Alfred M. Szmidt  <ams@gnu.org>
376         * sysdeps/generic/readonly-area.c (__readonly_str): Renamed to ...
377         (__readonly_area): ... this.
379 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
381         * sysdeps/generic/strcpy_chk.c (__strcpy_chk): Speed up by checking
382         destlen only every 4 bytes.
384 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
386         * nss/getent.c (hosts_keys): Let inet_pton decide whether the
387         string is an address or not.
389 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
391         * elf/dl-addr.c (_dl_addr): Don't look at STT_TLS symbols.
392         Use DL_SYMBOL_ADDRESS to set dli_saddr.
394         * debug/Makefile (catchsegv): Prefix $LIB with a backslash.
396 2004-10-19  Ulrich Drepper  <drepper@redhat.com>
398         * debug/Makefile ($(objpfx)catchsegv): To support multilib
399         platforms, use $LIB in path to slibdir.
401 2004-10-19  Jakub Jelinek  <jakub@redhat.com>
403         * debug/catchsegv.sh: Update copyright year.
404         Use mktemp to create segv_output file.
406 2004-10-18  Jakub Jelinek  <jakub@redhat.com>
408         * elf/dl-libc.c (__libc_dlsym_private, __libc_register_dl_open_hook):
409         New functions.
410         (__libc_dlopen_mode): Call __libc_register_dl_open_hook and
411         __libc_register_dlfcn_hook.
412         * dlfcn/Makefile (routines, elide-routines.os): Set.
413         Add rules to build and test tststatic2.
414         * dlfcn/tststatic2.c: New test.
415         * dlfcn/modstatic2.c: New test module.
416         * dlfcn/dladdr.c: Call _dlfcn_hook from libdl.so if not NULL.
417         Define __ prefixed routine in libc.a and in libdl.a just call it.
418         * dlfcn/dladdr1.c: Likewise.
419         * dlfcn/dlclose.c: Likewise.
420         * dlfcn/dlerror.c: Likewise.
421         * dlfcn/dlinfo.c: Likewise.
422         * dlfcn/dlmopen.c: Likewise.
423         * dlfcn/dlopen.c: Likewise.
424         * dlfcn/dlopenold.c: Likewise.
425         * dlfcn/dlsym.c: Likewise.
426         * dlfcn/dlvsym.c: Likewise.
427         * dlfcn/sdladdr.c: New file.
428         * dlfcn/sdladdr1.c: New file.
429         * dlfcn/sdlclose.c: New file.
430         * dlfcn/sdlerror.c: New file.
431         * dlfcn/sdlinfo.c: New file.
432         * dlfcn/sdlopen.c: New file.
433         * dlfcn/sdlsym.c: New file.
434         * dlfcn/sdlvsym.c: New file.
435         * dlfcn/Versions (libdl): Export _dlfcn_hook@GLIBC_PRIVATE.
436         * include/dlfcn.h (DL_CALLER_DECL, DL_CALLER RETURN_ADDRESS): Define.
437         (struct dlfcn_hook): New type.
438         (_dlfcn_hook): New extern decl.
439         (__dlopen, __dlclose, __dlsym, __dlerror, __dladdr, __dladdr1,
440         __dlinfo, __dlmopen, __libc_dlsym_private,
441         __libc_register_dl_open_hook, __libc_register_dlfcn_hook): New
442         prototypes.
443         (__dlvsym): Use DL_CALLER_DECL.
444         * include/libc-symbols.h: Define libdl_hidden_proto and friends.
446         * malloc/arena.c (_dl_open_hook): Extern decl.
447         (ptmalloc_init): Don't call _dl_addr when dlopened from statically
448         linked programs but don't use brk for them either.
450 2004-10-18  Roland McGrath  <roland@redhat.com>
452         * dlfcn/bug-dlsym1.c (main): Remove bogus setenv call.
454 2004-10-18  Ulrich Drepper  <drepper@redhat.com>
456         * elf/dl-open.c (dl_open_worker): Avoid dereferencing map in
457         statically linked code if there might none be found.
459 2004-10-06  Maciej W. Rozycki  <macro@mips.com>
461         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
462         (__SYSCALL_CLOBBERS): Add "memory".
463         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h
464         (__SYSCALL_CLOBBERS): Likewise.
465         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h
466         (__SYSCALL_CLOBBERS): Likewise.
468 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
470         * include/libc-symbols.h: Define libresolv_hidden_proto and friends.
471         * include/resolv.h: Add libresolv_hidden_proto for symbols defined,
472         used, and exported in libresolv.
473         * resolv/base64.c: Add libresolv_hidden_def.
474         * resolv/gethnamaddr.c: Likewise.
475         * resolv/ns_name.c: Likewise.
476         * resolv/ns_netint.c: Likewise.
477         * resolv/res_comp.c: Likewise.
478         * resolv/res_data.c: Likewise.
479         * resolv/res_debug.c: Likewise.
480         * resolv/res_mkquery.c: Likewise.
481         * resolv/res_query.c: Likewise.
482         * resolv/res_send.c: Likewise.
484 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
486         * elf/dl-minimal.c (__chk_fail): New.  Add rtld_hidden_def.
487         * sysdeps/unix/sysv/linux/readonly-area.c: New file.
488         * sysdeps/i386/i686/memmove.S (__memmove_chk): Add checking
489         routine.
490         * sysdeps/i386/i686/memcpy.S (__memcpy_chk): Likewise.
491         * sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
492         * sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
493         * sysdeps/i386/i686/memmove-chk.S: New file.
494         * sysdeps/i386/i686/memcpy-chk.S: Likewise.
495         * sysdeps/i386/i686/mempcpy-chk.S: Likewise.
496         * sysdeps/i386/i686/memset-chk.S: Likewise.
497         * sysdeps/generic/strcat-chk.c (__strcat_chk): Don't __chk_fail
498         if exactly fitting into buffer.
499         * sysdeps/generic/strncat-chk.c (__strncat_chk): Likewise.
500         * sysdeps/generic/readonly-area.c: New file.
501         * sysdeps/generic/strncpy-chk.c (__strncpy_chk): Only test
502         destlen once.
503         * sysdeps/x86_64/memset.S (__memset_chk): Add checking routine.
504         * sysdeps/x86_64/memcpy.S (__memcpy_chk): Likewise.
505         * sysdeps/x86_64/mempcpy.S (__memcpy_chk): Define to __mempcpy_chk.
506         * sysdeps/x86_64/memcpy-chk.S: New file.
507         * sysdeps/x86_64/mempcpy-chk.S: Likewise.
508         * sysdeps/x86_64/memset-chk.S: Likewise.
509         * sysdeps/x86_64/strcpy-chk.S: Likewise.
510         * sysdeps/x86_64/stpcpy-chk.S: Likewise.
511         * argp/argp-xinl.c (__OPTIMIZE__): Define to 1 instead of nothing.
512         * argp/argp-fs-xinl.c (__OPTIMIZE__): Likewise.
513         * debug/tst-chk1.c: New test.
514         * debug/tst-chk2.c: Likewise.
515         * debug/tst-chk3.c: Likewise.
516         * debug/test-strcpy_chk.c: Likewise.
517         * debug/test-stpcpy_chk.c: Likewise.
518         * debug/vsprintf_chk.c (__vsprintf_chk): If flags > 0, request
519         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
520         * debug/Makefile (routines): Add printf_chk, fprintf_chk, vprintf_chk,
521         vfprintf_chk, gets_chk and readonly-area.
522         (CFLAGS-*_chk.c): Set.
523         (tests): Add tst-chk1, tst-chk2, tst-chk3, test-strcpy_chk and
524         test-stpcpy_chk.
525         * debug/vprintf_chk.c: New file.
526         * debug/printf_chk.c: Likewise.
527         * debug/vfprintf_chk.c: Likewise.
528         * debug/fprintf_chk.c: Likewise.
529         * debug/gets_chk.c: Likewise.
530         * debug/chk_fail.c (__chk_fail): Add libc_hidden_def.
531         * debug/snprintf_chk.c (__snprintf_chk): Fix order of arguments
532         passed to __vsnprintf_chk.
533         * debug/Versions (libc): Export __printf_chk, __fprintf_chk,
534         __vprintf_chk, __vfprintf_chk and __gets_chk @GLIBC_2.3.4.
535         * debug/vsnprintf_chk.c (__vsnprintf_chk): Don't call
536         __vsnprintf, instead create a temporary file with
537         _IO_strn_jumps jumptable.  If flags > 0, request
538         _IO_FLAGS2_CHECK_PERCENT_N.  Add libc_hidden_def.
539         * libio/Makefile (headers): Add bits/stdio2.h.
540         * libio/stdio.h: Include <bits/stdio2.h> if __USE_FORTIFY_LEVEL.
541         (sprintf, snprintf, vsprintf, vsnprintf): Remove defines.
542         * libio/strfile.h (_IO_strnfile): New type.
543         (_IO_strn_jumps): New extern.
544         * libio/vsnprintf.c (_IO_strnfile): Remove.
545         (_IO_strn_jumps): Remove static.
546         * libio/bits/stdio2.h: New file.
547         * libio/vswprintf.c (_IO_strnfile): Rename type to...
548         (_IO_wstrnfile): ...this.  Adjust all uses.
549         * libio/libio.h (_IO_FLAGS2_CHECK_PERCENT_N): Define.
550         * stdio-common/vfprintf.c (STR_LEN): Define.
551         (vfprintf): Add readonly_format variable.
552         Handle _IO_FLAGS2_CHECK_PERCENT_N.
553         (buffered_vfprintf): Copy _flags2.
554         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
555         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
556         __vfprintf_chk): New prototypes.
557         (__vsprintf_chk, __vsnprintf_chk): Add libc_hidden_proto.
558         * include/string.h (__memcpy_chk, __memmove_chk, __mempcpy_chk,
559         __memset_chk, __strcpy_chk, __stpcpy_chk, __strncpy_chk, __strcat_chk,
560         __strncat_chk): New prototypes.
561         * include/bits/string3.h: New file.
562         * include/sys/cdefs.h (__chk_fail): Add libc_hidden_proto
563         and rtld_hidden_proto.
564         * string/Makefile (headers): Add bits/string3.h.
565         * string/bits/string3.h (bcopy, bzero): New defines.
566         (memset, memcpy, memmove, strcpy, strncpy, strcat, strncat): Change
567         macros so that inlines are used only if unknown destination size
568         or side-effects in destination argument.
569         (mempcpy, stpcpy): Likewise.  Protect with #ifdef __USE_GNU.
571 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
573         * debug/Makefile (routines): Add *_chk.
574         * debug/Versions (libc): Export __chk_fail, __memcpy_chk,
575         __memmove_chk, __mempcpy_chk, __memset_chk, __stpcpy_chk,
576         __strcat_chk, __strcpy_chk, __strncat_chk, __strncpy_chk,
577         __sprintf_chk, __vsprintf_chk, __snprintf_chk, __vsnprintf_chk
578         @GLIBC_2.3.4.
579         * debug/chk_fail.c: New file.
580         * debug/snprintf_chk.c: Likewise.
581         * debug/sprintf_chk.c: Likewise.
582         * debug/vsnprintf_chk.c: Likewise.
583         * debug/vsprintf_chk.c: Likewise.
584         * include/features.h (_FORTIFY_SOURCE): Document, handle.
585         (__USE_FORTIFY_LEVEL): Define.
586         (__GNUC_PREREQ): Move to earlier location.
587         * include/sys/cdefs.h (__chk_fail): New prototype.
588         * libio/bits/stdio.h (sprintf, vsprintf, snprintf, vsnprintf):
589         Define if __USE_FORTIFY_LEVEL.
590         * misc/sys/cdefs.h (__bos, __bos0): Define.
591         * string/string.h: Include <bits/string3.h> if __USE_FORTIFY_LEVEL.
592         * bits/string/string3.h: New header.
593         * sysdeps/generic/memcpy_chk.c: New file.
594         * sysdeps/generic/memmove_chk.c: Likewise.
595         * sysdeps/generic/mempcpy_chk.c: Likewise.
596         * sysdeps/generic/memset_chk.c: Likewise.
597         * sysdeps/generic/stpcpy_chk.c: Likewise.
598         * sysdeps/generic/strcat_chk.c: Likewise.
599         * sysdeps/generic/strcpy_chk.c: Likewise.
600         * sysdeps/generic/strncat_chk.c: Likewise.
601         * sysdeps/generic/strncpy_chk.c: Likewise.
603 2004-10-17  Roland McGrath  <roland@frob.com>
605         * manual/memory.texi (Page Lock Functions): Typo fix.
606         Reported by Carlos Maziero <maziero@ppgia.pucpr.br>
608 2004-10-16  Alfred M. Szmidt  <ams@kemisten.nu>
610         * sysdeps/mach/hurd/Makefile (link-libc-static): Use
611         `$(static-gnulib') instead of `$(gnulib)'.
613 2004-10-17  Ulrich Drepper  <drepper@redhat.com>
615         * sunrpc/rpc_clntout.c: Avoid including rcsid into binary.
616         * sunrpc/rpc_cout.c: Likewise.
617         * sunrpc/rpc_hout.c: Likewise.
618         * sunrpc/rpc_main.c: Likewise.
619         * sunrpc/rpc_parse.c: Likewise.
620         * sunrpc/rpc_sample.c: Likewise.
621         * sunrpc/rpc_scan.c: Likewise.
622         * sunrpc/rpc_svcout.c: Likewise.
623         * sunrpc/rpc_tblout.c: Likewise.
624         * sunrpc/rpc_util.c: Likewise.
626 2004-10-15  Jakub Jelinek  <jakub@redhat.com>
628         * sysdeps/unix/sysv/linux/i386/sysdep.h (PUSHARGS_6, DOARGS_6,
629         POPARGS_6, _PUSHARGS_6, _DOARGS_6, _POPARGS_6): Define.
630         * sysdeps/unix/sysv/linux/i386/syscall.S (syscall): Handle 6 argument
631         syscalls.
633 2004-10-15  Ulrich Drepper  <drepper@redhat.com>
635         * nscd/nscd.h (_PATH_NSCD_PASSWD_DB): Move to /var/db.
636         (_PATH_NSCD_GROUP_DB): Likewise.
637         (_PATH_NSCD_HOSTS_DB): Likewise.
638         (_PATH_NSCD_XYZ_DB_TMP): New #define, point to /var/run.
639         * nscd/connections.c (nscd_init): Non-persistent database files
640         are created with the _PATH_NSCD_XYZ_DB_TMP path.
641         * nscd/nscd.init: Create /var/db/nscd if necessary.
643 2004-10-15  Richard Henderson  <rth@redhat.com>
645         * sysdeps/unix/sysv/linux/alpha/register-dump.h: New file.
646         * sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h (SIGCONTEXT): Add
647         _code argument, pass sigcontext by pointer.
648         (SIGCONTEXT_EXTRA_ARGS): Likewise.
649         (GET_PC, GET_FRAME, GET_STACK): Expect ctx as pointer.
651 2004-10-14  Richard Henderson  <rth@redhat.com>
653         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
654         elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
655         instead of static.
657         * sysdeps/unix/sysv/linux/adjtime.c (ADJTIME): Use prototype
658         style definition.
659         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): If
660         __ASSUME_TIMEVAL64, define __adjtime directly rather than
661         via strong_alias.
663 2004-10-14  Ulrich Drepper  <drepper@redhat.com>
665         * nscd/Makefile: When using compilers without -fpie support, also
666         link with -lselinux if necessary.
667         Patch by Arkadiusz Miskiewicz <arekm@pld-linux.org>.
669         * nscd/connections.c (nscd_init): Remove file if not persistent
670         and not shared.  Patch by Jerome Borsboom <j.borsboom@erasmusmc.nl>.
672 2004-10-14  Jakub Jelinek  <jakub@redhat.com>
674         * sysdeps/unix/sysv/linux/i386/setresuid.c: Handle
675         defined __NR_setresuid32 && !defined __NR_setresuid.
676         * sysdeps/unix/sysv/linux/i386/setresgid.c: Handle
677         defined __NR_setresgid32 && !defined __NR_setresgid.
679         * sysdeps/sparc/fpu/bits/mathinline.h (__signbitf, __signbit,
680         __signbitl, sqrtf, sqrt, sqrtl, fdim, fdimf): Use __NTH macro.
682         * sysdeps/generic/errno-loc.c: Don't undef #errno
683         if RTLD_PRIVATE_ERRNO.
684         * include/errno.h (__errno_location): If RTLD_PRIVATE_ERRNO,
685         add attribute_hidden.
687         * dlfcn/dlinfo.c (dlinfo_doit): Replace iteration over GL(dl_loaded)
688         chain with iteration over all namespaces' _ns_loaded chains.
689         * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_preferred_address):
690         Likewise.
691         * sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Likewise.
693         * elf/rtld.c (_dl_start): Fix one last dl_loaded.
694         * elf/dl-load.c (_dl_map_object_from_fd): Avoid definition of
695         label when it is not needed.
696         * elf/dl-close.c (_dl_close): Typo: & -> &&.
698 2004-10-12  Jakub Jelinek  <jakub@redhat.com>
700         * sysdeps/generic/segfault.c: Include alloca.h and stdint.h.
701         Don't include frame.h.
702         (CURRENT_STACK_FRAME, INNER_THAN, ADVANCE_STACK_FRAME): Remove.
703         (catch_segfault): Use backtrace function.
705         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Fix comment.
706         * sysdeps/unix/sysv/linux/ia64/register-dump.h: New file.
707         * sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h (GET_PC): Return sc_ip
708         field.
710 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
712         Add support for namespaces in the dynamic linker.
713         * dlfcn/Makefile (libdl-routines): Add dlmopen.
714         * dlfcn/Versions [libdl, GLIBC_2.3.4]: Add dlmopen.
715         * dlfcn/dlfcn.h: Define Lmid_t, LM_ID_BASE, and LM_ID_NEWLM.
716         Declare dlmopen.  Document RTLD_DI_LMID.
717         * dlfcn/dlinfo.c: Handle RTLD_DI_LMID.
718         * dlfcn/dlmopen.c: New file.
719         * dlfcn/dlopen.c: Pass new parameter to _dl_open.
720         * dlfcn/dlopenold.c: Likewise.
721         * elf/dl-addr.c: Adjust for removal of GL(dl_loaded).
722         * elf/dl-caller.c: Likewise.
723         * elf/dl-close.c: Likewise.
724         * elf/dl-conflict.c: Likewise.
725         * elf/dl-debug.c: Likewise.
726         * elf/dl-lookup.c: Likewise.
727         * elf/dl-sym.c: Likewise.
728         * elf/dl-version.c: Likewise.
729         * elf/do-lookup.h: Likewise.
730         * elf/rtld.c: Likewise.
731         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
732         * elf/dl-depsc: Likewise.  Add new parameter to _dl_map_object.
733         * elf/dl-fini.c: Call destructors in all namespaces.
734         * elf/dl-iteratephdr.c: Compute total nloaded.  Adjust for removal of
735         GL(dl_loaded).
736         * elf/dl-libc.c: Pass new parameter to _dl_open.  Adjust for removal
737         of GL(dl_loaded).
738         * elf/dl-load.c (_dl_map_object_from_fd): Don't load ld.so a second
739         time.  Reuse the one from the main namespace in all others.
740         Pass new parameter to _dl_new_object.
741         Adjust for removal of GL(dl_loaded).
742         * elf/dl-object.c: Take new parameter.  Use it to initialize l_ns.
743         Adjust for removal of GL(dl_loaded).
744         * elf/dl-open.c (_dl_open): Take new parameter.
745         Adjust for removal of GL(dl_loaded).
746         * elf/dl-support.c: Replace global _dl_loaded etc variables with
747         _dl_ns variable.
748         * include/dlfcn.h: Adjust prototype of _dl_open.
749         Define __LM_ID_CALLER.
750         * include/link.h: Add l_real, l_ns, and l_direct_opencount elements.
751         * sysdeps/generic/dl-tls.c: Bump TLS_STATIC_SURPLUS.  Since libc is
752         using TLS we need memory appropriate to the number of namespaces.
753         * sysdeps/generic/ldsodefs.h (struct rtld_global): Replace _dl_loaded,
754         _dl_nloaded, _dl_global_scope, _dl_main_searchlist, and
755         _dl_global_scope_alloc with _dl_ns element.  Define DL_NNS.
756         Adjust prototypes of _dl_map_object and member in rtld_global_ro.
757         * malloc/malloc.c: Include <dlfcn.h>.
758         * malloc/arena.c (ptmalloc_init): If libc is not in primary namespace,
759         never use brk.
760         * elf/Makefile: Add rules to build and run tst-dlmopen1 and
761         tst-dlmopen2.
762         * elf/tst-dlmopen1.c: New file.
763         * elf/tst-dlmopen1mod.c: New file.
764         * elf/tst-dlmopen2.c: New file.
766         * elf/dl-close.c: Improve reference counting by tracking direct loads.
767         * elf/dl-lookup.c (add_dependency): Likewise.
768         * elf/dl-open.c (dl_open_worker): Likewise.
769         * elf/rtld.c (dl_main): Likewise.
771 2004-09-09  GOTO Masanori  <gotom@debian.or.jp>
773         [BZ #77]
774         * elf/dl-close.c: Count down l_opencount to check not only for
775         l_reldeps, but also l_initfini.
777 2004-10-13  Ulrich Drepper  <drepper@redhat.com>
779         * elf/dl-close.c (_dl_close): Update bug reporting instructions.
781 2004-10-11  Ulrich Drepper  <drepper@redhat.com>
783         * timezone/asia: Update from tzdata2004e.
784         * timezone/southamerica: Likewise.
785         * timezone/private.h: Update from tzcode2004e.
786         * timezone/zdump.c: Likewise.
788         * stdio-common/vfscanf.c: Add support for reading localized
789         digits.  Patch mainly by Hamed Malek <hamed@bamdad.org>.
791         * resolv/res_init.c (res_thread_freeres): Reset _res.options.
792         [BZ #434]
794         * resolv/res_send.c (send_dg): Use nonblocking sockets.  Add
795         appropriate poll/select calls and restart operation if necessary.
796         Also handle EINTR.
798         * elf/tst-dlopenrpath.c (do_test): Enable code which was disabled
799         for debugging.
801         * elf/dl-sym.c (do_sym): Avoid using global variable.
803         * elf/dl-addr.c (_dl_addr): Really use match everywhere.
805 2004-10-09  Andreas Schwab  <schwab@suse.de>
807         * sysdeps/m68k/memcopy.h (WORD_COPY_BWD): Remove use of cast as
808         lvalue.
810         * sysdeps/m68k/fpu/bits/mathinline.h: Remove __THROW from inline
811         definitions.
813 2004-10-07  Andreas Schwab  <schwab@suse.de>
815         * misc/sys/uio.h: Change __vector to __iovec to avoid clash with
816         altivec.
818 2004-10-06  Alan Modra  <amodra@bigpond.net.au>
820         * gmon/Makefile (CFLAGS-mcount.c): Move before inclusion of "Rules".
821         * sysdeps/powerpc/powerpc64/Makefile (CFLAGS-mcount.c): Add
822         -msoft-float.
823         * sysdeps/powerpc/powerpc64/sysdep.h (SAVE_ARG, REST_ARG): New macros.
824         (CALL_MCOUNT): Replace with a gas macro implementation.
825         (EALIGN): Delete PROF version.
826         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Invoke CALL_MCOUNT.
827         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Likewise.
828         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
829         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
830         * sysdeps/powerpc/powerpc64/memcpy.S: Likewise.
831         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
832         * sysdeps/powerpc/powerpc64/stpcpy.S: Likewise.
833         * sysdeps/powerpc/powerpc64/strchr.S: Likewise.
834         * sysdeps/powerpc/powerpc64/strcmp.S: Likewise.
835         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
836         * sysdeps/powerpc/powerpc64/strlen.S: Likewise.
837         * sysdeps/powerpc/powerpc64/strncmp.S: Likewise.
838         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Likewise.
839         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Likewise.
840         * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Likewise.
841         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Likewise.
842         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Likewise.
843         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: Likewise.
844         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: Likewise.
845         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: Likewise.
846         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: Likewise.
847         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Likewise.
848         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Likewise.
849         * sysdeps/powerpc/powerpc64/fpu/s_round.S: Likewise.
850         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Likewise.
851         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Likewise.
852         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Likewise.
854         * sysdeps/powerpc/powerpc64/setjmp-common.S: Add extra entry point
855         past _mcount call.
856         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Use it.
857         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Likewise.
859 2004-10-06  Ulrich Drepper  <drepper@redhat.com>
861         * resolv/res_mkquery.c (res_nmkquery): Reject randombits value if
862         low 16 bits are zero.
864 2004-10-06  Jakub Jelinek  <jakub@redhat.com>
866         * posix/tst-getaddrinfo2.c: Include stdlib.h and string.h.
867         (do_test): Use %p instead of 0x%08X to print a pointer.
869         * malloc/malloc.c: Include stdio-common/_itoa.h.
871 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
873         * elf/rtld.c (dl_main): Use _dl_debug_printf instead of _dl_printf
874         for prelink message.
876 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
878         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Include dl-sysdep.h.
879         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
881 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
883         * grp/initgroups.c: Remove duplicate group IDs.
884         * grp/compat-initgroups.c: Likewise.
885         * nscd/initgrcache.c: Likewise.
887 2004-10-05  Jakub Jelinek  <jakub@redhat.com>
889         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (__sysconf): Return 200112L
890         for _SC_CPUTIME or _SC_THREAD_CPUTIME.
892         * nscd/Makefile (nscd-cflags): Set to -DIS_IN_nscd=1, plus
893         -fpie if building PIE.
894         (CFLAGS-*.c): Use it.
896         * nscd/Makefile (relro-LDFLAGS): Add -Wl,-z,now if have-z-relro.
897         ($(objpfx)nscd): Add $(relro-LDFLAGS).
899         * sysdeps/unix/sysv/linux/i386/sysconf.c: Include hp-timing.h.
900         (__sysconf): Return -1 for _SC_CPUTIME or _SC_THREAD_CPUTIME if
901         !HP_TIMING_AVAIL.
903 2004-10-05  Ulrich Drepper  <drepper@redhat.com>
905         * nscd/Makefile (distribute): Remove TODO.
906         * nscd/TODO: Removed.
908 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
910         * nscd/gai.c: Define __no_netlink_support if NEED_NETLINK is
911         defined and __ASSUME_NETLINK_SUPPORT is zero.
912         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gai.c): Add
913         -DNEED_NETLINK.
915         * malloc/mtrace.pl: Avoid calling location unless it is needed for
916         output.  Patch by Edward Bishop <binutils@gmail.com>.
918         * nscd/Makefile (CFLAGS-gai.c): Add -fpie.
920 2004-10-04  H.J. Lu  <hongjiu.lu@intel.com>
922         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c
923         (clock_getcpuclockid): Add missing retval.
925         * sysdeps/unix/sysv/linux/ia64/sysconf.c (linux_sysconf): Fix a typo.
927 2004-10-04  Roland McGrath  <roland@redhat.com>
929         * include/errno.h [RTLD_PRIVATE_ERRNO] (errno): Rename the real symbol
930         to rtld_errno.
931         * sysdeps/generic/errno.c [RTLD_PRIVATE_ERRNO] (rtld_errno): Define it,
932         and don't define any other errno names.
933         * sysdeps/unix/alpha/sysdep.h [RTLD_PRIVATE_ERRNO]: Use rtld_errno in
934         place of errno.
935         * sysdeps/unix/i386/sysdep.S: Likewise.
936         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
937         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
938         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
939         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
940         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
941         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
942         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
943         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
944         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
945         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
946         * sysdeps/unix/x86_64/sysdep.S: Likewise.
948         * sysdeps/generic/errno.c [! USE___THREAD] (errno): Use `nocommon'
949         attribute instead of `section'.
951 2004-10-04  Ulrich Drepper  <drepper@redhat.com>
953         * sysdeps/unix/sysv/linux/ia64/sysconf.c: New file.
954         * sysdeps/unix/sysv/linux/ia64/Dist: Add has_cpuclock.c.
955         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: Move actual
956         testing code to...
957         * sysdeps/unix/sysv/linux/ia64/has_cpuclock.c: ...here.  New file.
958         * sysdeps/unix/sysv/linux/i386/sysconf.c: Add dynamic check for
959         _SC_CPUTIME and _SC_THREAD_CPUTIME.
961         * nscd/connections.c (start_threads): Use sysconf in case
962         _POSIX_CLOCK_SELECTION or _POSIX_MONOTONIC_CLOCK is not greater zero.
964         * nscd/Makefile (nscd-modules): Add gai.
965         * nscd/gai.c: New file.
966         * nscd/nscd.c: Remove getaddrinfo stub definition.
968         * assert/assert.h: Give up on using __builtin_expect.
970         * elf/rtld.c (dl_main): Only skip => output in ldd mode if both
971         strings are identical.
973 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
975         * malloc/arena.c (aligned_heap_area): New variable.
976         (new_heap): If aligned_heap_area != NULL, attempt to use that
977         first.  If HEAP_MAX_SIZE << 1 area is already HEAP_MAX_SIZE bytes
978         aligned, remember the second half in aligned_heap_area.
979         (delete_heap): Clear aligned_heap_area if deleting the area right
980         before aligned_heap_area.
982 2004-10-03  Juerg Billeter  <j@bitron.ch>
984         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Return -1 if nscd
985         can't be used.  [BZ #424]
987 2004-10-03  Ulrich Drepper  <drepper@redhat.com>
989         Dynamically create new threads if necessary.
990         * nscd/connections.c (fd_ready): If no thread available for processing
991         the request, create a new one unless the limit is reached.
992         (start_threads): Check errors from pthread_create.
993         * nscd/nscd.h: Declare max_nthreads.
994         * nscd/nscd_conf.c: Parse max-nthreads entry.
995         * nscd/nscd.conf: Add max-threads entry.
996         * nscd/nscd_stat.c: Print current and maximum number of threads.
998         Implement paranoia mode.
999         * nscd/connections.c (nscd_init): Mark database and socket descriptors
1000         as close on exec.
1001         (restart): New function.
1002         (restart_p): New function.
1003         (nscd_run): Add missing descrement of nready in case readylist is
1004         empty.
1005         (main_loop_poll): Call restart_p and restart.
1006         (main_loop_epoll): Likewise.
1007         (begin_drop_privileges): Save original UID and GID.
1008         * nscd/nscd.c: Define new variables paranoia, restart_time,
1009         restart_interval, oldcwd, old_gid, old_uid.
1010         (main): Disable paranoia mode if we are not forking.
1011         (check_pid): When re-execing, the PID file contains the same PID as
1012         the current process.  Do not fail in this case.
1013         * nscd/nscd.conf: Add paranoia and restart-interval entries.
1014         * nscd/nscd.h: Define RESTART_INTERVAL.  Declare new variables.
1015         * nscd/nscd_conf.c: Parse paranoia and restart-internal configurations.
1016         * nscd/nscd_stat.c: Print paranoia and restart-internal values.
1018         * nscd/connections.c: Implement alternative loop for main thread
1019         which uses epoll.
1020         * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]
1021         (CFLAGS-connections.c): Add -DHAVE_EPOLL.
1023 2004-10-02  Ulrich Drepper  <drepper@redhat.com>
1025         * nscd/Makefile (CFLAGS-initgrcache.c): Add to CFLAGS-* variables,
1026         don't replace old content.
1028         * nscd/connections.c: Rewrite handling of incoming connections.  All
1029         are handled by one thread which then hands off the descriptors for the
1030         real work to the worker threads.
1031         * nscd/Makefile: Link nscd with librt.
1033         * nscd/selinux.c: Pretty printing.
1035         * nscd/dbg_log.c (dbg_log): Don't add unnecessary newline to
1036         output.  Let syslog do the formatting if debug_level == 0.
1038         * nscd/nscd_helper.c (get_mapping): No need to check timestamp if
1039         nscd_certainly_running is nonzero.
1041 2004-10-02  Simon Josefsson  <jas@extundo.com>
1043         [BZ #420]
1044         * sysdeps/generic/memmem.c [!_LIBC]: Define __builtin_expect, to
1045         make the file usable inside gnulib.
1047 2004-10-01  Ulrich Drepper  <drepper@redhat.com>
1049         * malloc/malloc.c (public_vALLOc): Add missing use of hooks.
1050         (public_pVALLOc): Likewise.
1052         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Always add the
1053         group the caller provided unless there is a real problem.
1055         * posix/bug-glob1.c (prepare): Fix creation of symlink.
1057 2004-09-30  Ulrich Drepper  <drepper@redhat.com>
1059         * posix/Makefile: Add rules to build and run bug-glob1.
1060         * posix/bug-glob1.c: New file.
1062         * iconv/iconv_prog.c (main): Print progress information to stderr.
1064         * nscd/nscd.c (termination_handler): Reset timestamp so that
1065         clients immediately stop using the database.
1067         * nscd/nscd-client.h (__nscd_get_map_ref): Drop volatile from last
1068         parameter.
1069         (__nscd_drop_map_ref): Change second parameter to be a reference to
1070         a variable.  Update variable when cycle count changed.
1071         * nscd/nscd_helper.c (__nscd_get_map_ref): Remove volatile here, too.
1072         * nscd/nscd_getai.c: Correctly use __nscd_drop_map_ref.  Reinitialize
1073         all variables and avoid memory leak in case of retries.
1074         * nscd/nscd_getgr_r.c: Likewise.
1075         * nscd/nscd_gethst_r.c: Likewise.
1076         * nscd/nscd_getpw_r.c: Likewise.
1077         * nscd/nscd_initgroups.c: Likewise.
1079         * nscd/nscd.h: Add declaration of addinitgroups and
1080         readdinitgroups.
1082 2004-09-30  Andreas Jaeger  <aj@suse.de>
1084         * nscd/Makefile (CFLAGS-nscd_initgroups.c): Set to -fpie.
1085         (CFLAGS-initgrcache.c): Set to -fexceptions.
1087 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
1089         * sysdeps/generic/glob.c (glob_in_dir): Don't blindly trust
1090         readdir results; for symlinks or files of unknown type check using
1091         stat whether the file exists.
1093         * posix/tst-gnuglob.c (find_file): Handle leading "./".  Fix
1094         recognition of files.
1096 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
1098         * time/tzfile.c (tzfile_mtime): New variable.
1099         (__tzfile_read): Reread the file if mtime is different.
1101 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
1103         * sysdeps/alpha/fpu/bits/mathinline.h (__fdimf, __fdim, fdimf, fdim):
1104         Handle +inf/+inf.
1105         * sysdeps/powerpc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
1106         * sysdeps/sparc/fpu/bits/mathinline.h (fdim, fdimf): Likewise.
1108 2004-09-29  Ulrich Drepper  <drepper@redhat.com>
1110         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use correct constant for
1111         testing result of __nscd_get_map_ref.
1113 2004-09-29  Jakub Jelinek  <jakub@redhat.com>
1115         * sysdeps/i386/fpu/s_fdim.S (__fdim): Handle +inf/+inf.
1116         * sysdeps/i386/fpu/s_fdimf.S (__fdimf): Likewise.
1117         * sysdeps/i386/fpu/s_fdiml.S (__fdiml): Likewise.
1119 004-09-29  Ulrich Drepper  <drepper@redhat.com>
1121         * grp/initgroups.c: Move compat_call implementation...
1122         * grp/compat-initgroups.c: ...to here.  New file.
1123         * grp/Makefile (distribute): Add compat-initgroups.c.
1124         (CFLAGS-initgroups.c): Add -DUSE_NSCD=1.
1125         * mscd/initgrcache.c: New file.
1126         * nscd/nscd_initgroups.c: New file.
1127         * nscd/Makefile (routines): Add nscd_initgroups.
1128         (nscd-modules): Add initgrcache.
1129         * nscd/cache.c (prune_cache): Add support for INITGROUPS entries.
1130         * nscd/connections.c: Handle INITGROUPS requests.
1131         * nscd/nscd-client.h: Define INITGROUPS, initgr_response_header.
1132         Add initgrdata element to struct datahead.  Fix typo in comment.
1133         * nscd/nscd_proto.h: Declare __nscd_getgrouplist.  Fix parameter
1134         type in __nscd_getgrgrid_r.
1135         * nscd/selinux.c (perms): Add INITGROUPS entry.
1137         * nscd/nscd_getai.c: No need to include <sys/mman.h>.
1139         * sunrpc/get_myaddr.c (get_myaddress): Account for interfaces without
1140         assigned addresses.
1141         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
1142         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
1143         * sunrpc/clnt_udp.c (is_network_up): Likewise.
1145         * nscd/nscd.c: Define getaddrinfo hidden so that it is never found
1146         outside.
1148         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_segvflags):
1149         Renamed from si_flags due to conflict with si_flags from <elf.h>.
1151 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
1153         * nscd/nscd_getai.c: Use NO_MAPPING instead of MAP_FAILED for test
1154         of failing __nscd_get_map_ref.  Fix a few typos.
1156         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Make sure
1157         SIGSETXID is not blocked.
1158         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Likewise.
1159         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
1160         * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise.
1161         * sysdeps/generic/sigfillset.c (sigfillset): Don't set SIGSETXID.
1163         * sunrpc/get_myaddr.c (get_myaddress): Fix test for failing
1164         getifaddrs call.
1165         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
1166         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
1167         * sunrpc/Makefile (xtests): Add tst-getmyaddr.
1168         * sunrpc/tst-getmyaddr.c: New file.
1170         * malloc/arena.c (ptmalloc_init): Allow MALLOC_CHECK_==0 to
1171         disable all checking.
1173         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (si_flags): Add
1174         support to get this value.
1176 2004-09-28  Jakub Jelinek  <jakub@redhat.com>
1178         * io/utime.h (utime): Allow second argument to be NULL.
1180 2004-09-28  Ulrich Drepper  <drepper@redhat.com>
1182         * sysdeps/posix/getaddrinfo.c (gaih_inet): If NAME is a numerical IP
1183         address and AI_CANONNAME is set, return copy of NAME as ai_canonname.
1185 2004-09-27  Andreas Jaeger  <aj@suse.de>
1187         * sysdeps/i386/dl-machine.h (elf_machine_rela_relative): Replace
1188         static inline by auto inline, add always_inline attribute.
1189         (elf_machine_rel): Likewise.
1190         (elf_machine_rela): Likewise.
1191         (elf_machine_lazy_rel): Likewise.
1192         (elf_machine_lazy_rela): Likewise.
1193         (elf_machine_rel_relative): Likewise.
1195 2004-09-27  Ulrich Drepper  <drepper@redhat.com>
1197         * sunrpc/xdr_intXX_t.c: Add xdr_quad_t and xdr_u_quad_t aliases.
1198         * sunrpc/rpc/xdr.h: Declare xdr_quad_t and xdr_u_quad_t.
1199         * sunrpc/rpc_parse.c (get_type): Use "quad_t" for TOK_HYPER.
1200         Otherwise isvectordef will loop infinitely if typedef hyper int64_t
1201         is seen.
1202         (unsigned_dec): Use "u_quad_t" for similar reasons.
1203         * sunrpc/Versions: Export xdr_quad_t and xdr_u_quad_t.
1205 2004-09-27  Roland McGrath  <roland@redhat.com>
1207         * sysdeps/generic/bits/waitstatus.h (__WIFSIGNALED): Simplify bit
1208         twiddling in last change.
1210         * posix/tst-waitid.c (do_test): Add tests for waitpid with WCONTINUED.
1212         [BZ #409]
1213         * posix/sys/wait.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
1214         * stdlib/stdlib.h [__WIFCONTINUED] (WIFCONTINUED): New macro.
1215         * sysdeps/generic/bits/waitstatus.h (__W_CONTINUED): New macro.
1216         [WCONTINUED] (__WIFCONTINUED): New macro.
1217         (__WIFSIGNALED): Rewritten to exclude __W_CONTINUED value, and have no
1218         branches.
1220         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Add fifth argument to
1221         all three syscall uses, not just one!
1223 2004-09-26  Richard Henderson  <rth@redhat.com>
1225         * sysdeps/alpha/alphaev6/memcpy.S: Mark .prologue.
1226         * sysdeps/unix/alpha/sysdep.h (LEAF, ENTRY): Align entry points
1227         to 16 byte boundaries.
1229 2004-09-26  Ulrich Drepper  <drepper@redhat.com>
1231         * elf/readlib.c (process_file): Before complaining about too-short
1232         file, check that it potentially be an ELF file.  Also complain about
1233         empty files.  [BZ #151].
1235         * scripts/test-installation.pl: Fix ld.so recognition for new
1236         LD_TRACE_LOADED_OBJECTS output format.
1237         Patch by <jsberg04+computing.glibc@ftml.net>  [BZ #407].
1239         * elf/dl-support.c (_dl_non_dynamic_init): Fix cleaning of
1240         environment.  [BZ #384]
1242         * sunrpc/clnt_udp.c (is_network_up): Use getifaddrs instead of ioctl.
1243         * sunrpc/get_myaddr.c (get_myaddress): Likewise.
1244         * sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
1245         * sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.  Change interface
1246         to avoid buffer overrun and remove now useless parameters.
1247         (clnt_broadcast): Adjust caller.  [BZ #381].
1249         * sysdeps/generic/s_fdim.c: Handle +inf/+inf
1250         * sysdeps/generic/s_fdimf.c: Likewise.
1251         * sysdeps/generic/s_fdiml.c: Likewise.
1252         * sysdeps/i386/i686/fpu/s_fdim.S: Likewise.
1253         * sysdeps/i386/i686/fpu/s_fdimf.S: Likewise.
1254         * sysdeps/i386/i686/fpu/s_fdiml.S: Likewise.
1255         * sysdeps/powerpc/fpu/s_fdim.c: Likewise.
1256         * sysdeps/powerpc/fpu/s_fdimf.c: Likewise.
1257         * sysdeps/x86_64/fpu/s_fdiml.S: Likewise.
1258         * math/libm-test.inc (fdim_test): Add test case.  [BZ #376].
1260         * sysdeps/generic/bits/types.h: Fix __SQUAD_TYPE and __UQUAD_TYPE
1261         for compilers without __GLIBC_HAVE_LONG_LONG.  [BZ #362]
1263         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Remove incorrect
1264         requirement on socktype and protocol.
1265         (gaih_inet): If numeric port number is given, return records for all
1266         possible socket types.
1267         * posix/tst-getaddrinfo2.c: New file.
1268         * posix/Makefile (tests): Add tst-getaddrinfo2.  [BZ #358]
1270 2004-09-25  Ulrich Drepper  <drepper@redhat.com>
1272         * locale/loadlocale.c (_nl_intern_locale_data): Recognize LC_CTYPE
1273         data where _nl_value_type_LC_CTYPE does not contain the type
1274         information.  Add range checks.
1275         Reported by John Lumby <johnlumby@hotmail.com> [BZ #356].
1277         * libio/vasprintf.c (_IO_vasprintf): Fix condition to decide
1278         whether to realloc or not.
1279         Reported by Pavel Kankovsky <peak@argo.troja.mff.cuni.cz> [BZ #346].
1281         * intl/dcigettext.c (DCIGETTEXT): Protect tfind/tsearch calls.
1282         * intl/dcigettext.c (_nl_find_msg): Call _nl_load_domain also if
1283         decided < 0.
1284         * intl/finddomain.c (_nl_find_domain): Likewise.
1285         * intl/loadmsgcat.c (_nl_load_domain): Set decided to 1 only once we
1286         are done.  First set to -1 to signal initialization is ongoing.
1287         Protect against concurrent callers with recursive lock.
1288         * intl/finddomain.c (_nl_find_domain): Protect calls to
1289         _nl_make_l10nflist.  [BZ #322]
1291         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If determinination of
1292         source address fails, initialized source_addr_len field so that
1293         duplicate address recognition does not copy junk.
1295 2004-09-25  Jakub Jelinek  <jakub@redhat.com>
1297         * sysdeps/unix/sysv/linux/i386/setuid.c (__setuid): Remove second
1298         result declaration.
1300 2004-09-22  Andreas Schwab  <schwab@suse.de>
1302         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Adjust whitespace.
1304 2004-09-24  Ulrich Drepper  <drepper@redhat.com>
1306         * misc/daemon.c (daemon): Don't succeed if /dev/null cannot be
1307         opened.
1309         * nis/ypclnt.c (do_ypcall): Add one missing unlock.  Simplify the
1310         code a bit.
1312         * misc/daemon.c (daemon): Define errno in case /dev/null is not
1313         the correct device.
1315         * nis/ypclnt.c (yp_bind_file): Optimize a bit.  Minimal cleanups.
1317 2004-09-23  Andreas Jaeger  <aj@suse.de>
1319         * locale/weight.h (findidx): Remove static, it's not supported
1320         anymore with GCC 4.0 in a block scope.
1321         * locale/weightwc.h (findidx): Likewise.
1322         * posix/regcomp.c (seek_collating_symbol_entry): Likewise.
1323         (lookup_collation_sequence_value): Likewise.
1324         (build_range_exp): Likewise.
1325         (build_collating_symbol): Likewise.
1326         * iconv/iconvconfig.c (write_output): Likewise.
1327         * elf/do-rel.h (elf_dynamic_do_rel): Likewise.
1329         * sysdeps/x86_64/dl-machine.h (elf_machine_rela_relative): Remove
1330         static, add always_inline attribute.
1331         (elf_machine_rela): Likewise.
1332         (elf_machine_lazy_rel): Likewise.
1334         * elf/dynamic-link.h (elf_get_dynamic_info): Make static dependend
1335         on !RESOLVE so that it's not defined in local scope.
1337 2004-09-23  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1339         * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL_NCS): Define.
1341 2004-09-23  Thorsten Kukuk  <kukuk@suse.de>
1343         * sysdeps/unix/sysv/linux/sys/mount.h: Sync MS_RMT_MASK flag
1344         and BLK* ioctls with linux kernel headers.
1346 2004-09-23  Ulrich Drepper  <drepper@redhat.com>
1348         * sysdeps/generic/bits/dlfcn.h: Add RTLD_DEEPBIND.
1349         * elf/dl-object.c (_dl_new_object): Add new parameter mode.  If mode
1350         has RTLD_DEEPBIND set add local searchlist before global scope.
1351         * sysdeps/generic/ldsodefs.h (_dl_new_object): Adjust prototype.
1352         * elf/rtld.c: Adjust callers of _dl_new_object.
1353         * elf/dl-load.c: Likewise.
1354         (_dl_map_object_from_fd): If RTLD_DEEPBIND is used, don't do anything
1355         for DF_SYMBOLIC.
1356         * elf/dl-open.c (dl_open_writer): Pass RTLD_DEEPBIND flag on to
1357         _dl_map_object_deps.
1358         * elf/tst-deep1.c: New file.
1359         * elf/tst-deep1mod1.c: New file.
1360         * elf/tst-deep1mod2.c: New file.
1361         * elf/tst-deep1mod3.c: New file.
1362         * elf/Makefile: Add rules to build and run new tests.
1364         * elf/dl-deps.c: Pretty printing.
1366 2004-09-23  Jakub Jelinek  <jakub@redhat.com>
1368         * sysdeps/unix/alpha/sysdep.h (inline_syscall[0-6]): Change name
1369         argument to numbers from syscall names.
1370         (INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
1371         (INTERNAL_SYSCALL_NCS): Renamed from...
1372         (INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
1373         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
1374         (INTERNAL_SYSCALL_NCS): Define.
1375         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
1376         (INTERNAL_SYSCALL_NCS): Likewise.
1377         * sysdeps/unix/sysv/linux/sparc/sysdep.h (inline_syscall[0-6]):
1378         Change name argument to numbers from syscall names.
1379         (INLINE_SYSCALL, INTERNAL_SYSCALL): Adjust.
1380         (INTERNAL_SYSCALL_NCS): Define.
1382 2004-09-22  Ulrich Drepper  <drepper@redhat.com>
1384         * malloc/malloc.c (malloc_printerr): Use syslog if writev failed.
1386         * string/string.h: Add __nonnull annotations.
1387         * stdlib/stdlib.h: Likewise.
1389 2004-09-20  H.J. Lu  <hongjiu.lu@intel.com>
1391         * sysdeps/unix/sysv/linux/ia64/sysdep.h (DO_INLINE_SYSCALL):
1392         Renamed to ...
1393         (DO_INLINE_SYSCALL_NCS): This.
1394         (DO_INLINE_SYSCALL): New.
1395         (INLINE_SYSCALL): Updated.
1396         (INTERNAL_SYSCALL_NCS): Updated.
1398 2004-09-21  Ulrich Drepper  <drepper@redhat.com>
1400         * elf/sprof.c (load_shobj): Add support for reading symbol table
1401         from debuginfo file.
1403         * elf/ldd.bash.in: Fix syntax errors.
1405 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
1407         * sysdeps/unix/sysv/linux/dl-execstack.c
1408         (_dl_make_stack_executable): Remove some duplication.
1410         * nscd/nscd.c (options): Mark S option as hidden.
1411         (parse_opt): When S option is used, print warning message.
1412         * nscd/grpcache.c (adgrptbyX): Don't handle secure mode.
1413         * nscd/hstcache.c (addhstbyX): Don't handle secure mode.
1414         * nscd/aicache.c (addhstaiX): Don't handle secure mode.
1415         * nscd/pwdcache.c (addpwbyX): Don't handle secure mode.
1417 2004-09-20  Roland McGrath  <roland@frob.com>
1419         * elf/dl-load.c (__stack_prot): Only use PROT_GROWSUP/PROT_GROWSDOWN
1420         in initializer #if defined.
1422 2004-09-18  Paul Eggert  <eggert@cs.ucla.edu>
1424         [BZ #391]
1425         * stdlib/getsubopt.c: Merge fixes from gnulib.
1426         (__strchrnul) [!_LIBC]: Define and include "strchrnul.c".
1427         (getsubopt): Use prototypes, not K&R style.
1428         Fix bug: memcmp(A,B,N) was being invoked on a memory block B
1429         whose size might be smaller than N.  Use strncmp to avoid the bug.
1431 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
1433         * configure.in: If selinux has not explictly been requested, don't
1434         comment on it missing.
1436         * elf/dl-load.c: Define __stack_prot.
1437         * sysdeps/unix/sysv/linux/dl-execstack.c: Don't define
1438         __stack_prot here, just declare it.
1440 2004-09-20  Jakub Jelinek  <jakub@redhat.com>
1442         * configure.in (libc_cv_z_relro): Only set to yes if linker script
1443         contains DATA_SEGMENT_RELRO_END.
1445 2004-09-20  Ulrich Drepper  <drepper@redhat.com>
1447         * elf/dl-load.c (_dl_map_object_from_fd): Add some error checking.
1448         Reorder code slightly.
1449         * elf/rtld.c (dl_main): No need to check whether l_info[DT_HASH]
1450         is non-null, _dl_setup_hash will do that.
1452 2004-09-19  Ulrich Drepper  <drepper@redhat.com>
1454         * sysdeps/unix/sysv/linux/setegid.c [HAVE_PTR__NPTL_SETXID]: Call
1455         callback to set IDs in all other threads as well.
1456         * sysdeps/unix/sysv/linux/seteuid.c: Likewise.
1457         * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
1458         * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
1459         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
1460         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
1461         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1462         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
1463         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1464         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
1465         * sysdeps/unix/sysv/linux/setuid.c: New file.
1466         * sysdeps/unix/sysv/linux/setgid.c: New file.
1467         * sysdeps/unix/sysv/linux/setreuid.c: New file.
1468         * sysdeps/unix/sysv/linux/setregid.c: New file.
1469         * sysdeps/unix/sysv/linux/setresuid.c: New file.
1470         * sysdeps/unix/sysv/linux/setresgid.c: New file.
1471         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NCS.
1472         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
1473         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
1474         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
1475         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
1476         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c: Use x86 version.
1477         * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c: Likewise.
1478         * sysdeps/unix/sysv/linux/sparc/sparc32/setresgid.c: New file.
1479         * sysdeps/unix/sysv/linux/sparc/sparc32/setresuid.c: New file.
1480         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove setresgid
1481         and setresuid.
1482         * nscd/aicache.c: Use pthread_seteuid_np instead of seteuid.
1483         * nscd/grpcache.c: Likewise.
1484         * nscd/hstcache.c: Likewise.
1485         * nscd/pwdcache.c: Likewise.
1487         * resolv/res_mkquery.c (res_nmkquery): Fix typo.
1489 2004-09-18  Ulrich Drepper  <drepper@redhat.com>
1491         * sysdeps/unisx/sysv/linux/dl-execstack.c: Get protection flag
1492         from memory.
1493         * elf/dl-load.c (_dl_map_object_from_fd): Add PROT_EXEC flag to
1494         __stack_flags.
1496         * sysdeps/posix/getaddrinfo.c (gaih_inet): Do not use
1497         gethostbyname3_r if we are not looking for the canonical name.
1499         * resolv/res_mkquery.c (res_nmkquery): Randomize request ID every
1500         time.
1502 2004-09-18  Roland McGrath  <roland@redhat.com>
1504         * sysdeps/unix/sysv/linux/waitid.c (do_waitid): Pass fifth argument to
1505         system call.
1507 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1509         * include/link.h (struct link_map): Add l_used element.
1510         * sysdeps/generic/ldsodefs.h: Define DL_DEBUG_UNUSED.
1511         * elf/rtld.c (process_dl_debug): Recognize unused.
1512         (dl_main): When unused debug flag is set check for unused direct
1513         dependencies.
1514         When printing dependencies and SONAME starts with /, omit the SONAME =>
1515         part.
1516         * elf/dl-lookup.c (_dl_lookup_symbol_x): Mark object in which the
1517         symbol has been found as used.
1518         * elf/ldd.bash.in: Add -u option.
1520 2004-09-18  Jakub Jelinek  <jakub@redhat.com>
1522         * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread):
1523         Do nothing if __NR_set_tid_address is not defined.  [BZ #390]
1525 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1527         * sysdeps/posix/getaddrinfo.c: Use gethostbyname3_r NSS function
1528         in case it is available.
1530 2004-09-17  Jakub Jelinek  <jakub@redhat.com>
1532         * nscd/nscd.c (parse_opt): Write arg string instead of (void *)
1533         key to the socket.
1535 2004-09-17  Ulrich Drepper  <drepper@redhat.com>
1537         * misc/sys/cdefs.h: Define __nonnull using nonnull function attribute
1538         for gcc 3.3 and higher.
1539         * io/fcntl.h: Add __nonnull where appropriate.
1540         * io/ftw.h: Likewise.
1541         * io/utime.h: Likewise.
1542         * io/sys/poll.h: Likewise.
1543         * io/sys/sendfile.h: Likewise.
1544         * io/sys/stat.h: Likewise.
1545         * io/sys/statfs.h: Likewise.
1546         * io/sys/statvfs.h: Likewise.
1547         * posix/unistd.h: Likewise.
1548         * catgets/nl_types.h: Likewise.
1549         * crypt/crypt.h: Likewise.
1550         * debug/execinfo.h: Likewise.
1552 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
1554         * posix/glob.h: Remove cruft to make header usable outside glibc.
1555         The maintenance headache is too big.
1557         * configure.in: Add test for required SELinux features.
1558         * config.make.in: Add have-selinux entry.
1559         * config.h.in: Add HAVE_SELINUX entry.
1560         * nscd/Makefile (nscd-modules): Add selinux.
1561         (CFLAGS-selinux.c): Add -fpie.
1562         Define selinux-LIBS and use in link line.
1563         * nscd/connections.c (handle_request): Check access SELinux permissions
1564         before processing request.
1565         * nscd/nscd.c (main): Initialize selinux_enabled and stop avc thread.
1566         * nscd/nscd_stat.c: Transmit and print AVC statistics.
1567         * nscd/selinux.c: New file.
1568         * nscd/selinux.h: New file.
1569         Patch mostly by Matthew Rickard <mjricka@epoch.ncsc.mil>.
1571 2004-09-16  Jakub Jelinek  <jakub@redhat.com>
1573         * nscd/nscd_helper.c (__nscd_unmap, get_mapping): Use __munmap
1574         instead of munmap.
1576         * nscd/Makefile (CFLAGS-aicache.c): Set to -fpie.
1578 2004-09-16  Thorsten Kukuk  <kukuk@suse.de>
1580         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check
1581         __nss_not_use_nscd_hosts variable if nscd should be used or not.
1583 2004-09-16  Ulrich Drepper  <drepper@redhat.com>
1585         * nscd/nscd_proto.h: Define NSS_NSCD_RETRY.
1586         Add __nscd_getai prototype.
1587         * nss/getXXbyYY_r.c: Remode definition of NSS_NSCD_RETRY.
1588         * nscd/nscd-client.h: Remove __nscd_getai prototype.
1589         * nscd/nscd_getai.c: Include nscd_proto.h.
1591         * elf/ldd.bash.in: Add support for SELinux environments.
1592         Patch by Stephen Smalley <sds@epoch.ncsc.mil>.
1594 2004-09-16  Roland McGrath  <roland@redhat.com>
1596         * configure.in (--with-headers): Let argument contain a : separated
1597         list of directories to use, not just one.
1598         * configure: Regenerated.
1600 2004-09-15  Richard Henderson  <rth@redhat.com>
1602         * sysdeps/alpha/fpu/libm-test-ulps: Update.
1603         * scripts/data/c++-types-alpha-linux-gnu.data: New file.
1605 2004-09-15  Ulrich Drepper  <drepper@redhat.com>
1607         * nscd/aicache.c: Prefer using gethostbyname3_r NSS callback to also
1608         get ttl and canonical name.  Use these two values.
1609         * resolv/Versions: Export _nss_dns_gethostbyname3_r from libnss_dns.
1610         * resolv/nss_dns/dns-host.c (getanswer_r): Take two new parameters.
1611         If nonnull fill with TTL and pointer to canonical name respectively.
1612         (_nss_dns_gethostbyaddr_r): Pass NULL in new parameters of getanswer_r.
1613         (_nss_dns_gethostbyname2_r): Just wrapper around
1614         _nss_dns_gethostbyname3_r.
1615         (_nss_dns_gethostbyname3_r): Renamed from _nss_dns_gethostbyname2_r.
1616         Take two new parameters which as passed to getanswer_r.
1618         * nscd/Makefile (rountines): Add nscd_getai.
1619         (nscd-modules): Add aicache.
1620         * nscd/aicache.c: New file.
1621         * nscd/nscd_getai.c: New file.
1622         * nscd/cache.c (prune_cache): Handle GETAI request type.
1623         * nscd/connections.c: Add GETAI support in request handling.
1624         * nscd/nscd-client.h (request_type): Add GETAI.
1625         Define ai_response_header and struct nscd_ai_result types.
1626         (struct datahead): Add aidata field.
1627         Declare __nscd_getai.
1628         * nscd/nscd.c: Add getaddrinfo definition to catch problems.
1629         * nscd/nscd.h: Declare addhstai and readdhstai.
1631         * sysdeps/posix/getaddrinfo.c: Add support for using cached results.
1632         * posix/Makefile (CFLAGS-getaddrinfo.c): Add -DUSE_NSCD.
1634         * nscd/nscd-client.h  (struct datahead): Use uint8_t instead of bool.
1636 2004-09-14  Ulrich Drepper  <drepper@redhat.com>
1638         * misc/sys/cdefs.h: Remove debugging text from __P and __PMT.
1640 2004-09-13  Ulrich Drepper  <drepper@redhat.com>
1642         * misc/sys/cdefs.h: Restore old definition of __P.
1643         * csu/munch.awk: Remove uses of __P and __PMT.
1644         * gmon/gmon.c: Likewise.
1645         * hesiod/hesiod.h: Likewise.
1646         * include/stdio.h: Likewise.
1647         * io/fts.c: Likewise.
1648         * libio/genops.c: Likewise.
1649         * libio/libioP.h: Likewise.
1650         * libio/fileops.c: Likewise.
1651         * libio/iolibio.h: Likewise.
1652         * libio/libio.h: Likewise.
1653         * libio/memstream.c: Likewise.
1654         * libio/oldfileops.c: Likewise.
1655         * libio/oldstdfiles.c: Likewise.
1656         * libio/iopopen.c: Likewise.
1657         * libio/vsnprintf.c: Likewise.
1658         * libio/vswprintf.c: Likewise.
1659         * libio/wgenops.c: Likewise.
1660         * libio/oldiopopen.c: Likewise.
1661         * locale/programs/xmalloc.c: Likewise.
1662         * locale/programs/xstrdup.c: Likewise.
1663         * malloc/mtrace.c: Likewise.
1664         * misc/getttyent.c: Likewise.
1665         * misc/getusershell.c: Likewise.
1666         * nis/rpcsvc/ypupd.h: Likewise.
1667         * posix/fnmatch.h: Likewise.
1668         * posix/glob.h: Likewise.
1669         * resolv/arpa/nameser.h: Likewise.
1670         * resolv/gethnamaddr.c: Likewise.
1671         * resolv/resolv.h: Likewise.
1672         * resolv/inet_net_ntop.c: Likewise.
1673         * resolv/inet_net_pton.c: Likewise.
1674         * resolv/res_init.c: Likewise.
1675         * resolv/nss_dns/dns-network.c: Likewise.
1676         * stdio-common/vfprintf.c: Likewise.
1677         * stdio-common/reg-printf.c: Likewise.
1678         * sysdeps/generic/chflags.c: Likewise.
1679         * sysdeps/generic/fchflags.c: Likewise.
1680         * sysdeps/generic/glob.c: Likewise.
1681         * sysdeps/generic/printf_fphex.c: Likewise.
1682         * sysdeps/generic/memcmp.c: Likewise.
1683         * sysdeps/generic/memcopy.h: Likewise.
1684         * sysdeps/generic/morecore.c: Likewise.
1685         * sysdeps/generic/sstk.c: Likewise.
1686         * sysdeps/posix/sigvec.c: Likewise.
1687         * sysdeps/posix/ttyname_r.c: Likewise.
1688         * sysdeps/standalone/arm/bits/errno.h: Likewise.
1689         * sysdeps/standalone/standalone.h: Likewise.
1690         * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise.
1691         * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
1692         * sysdeps/unix/arm/start.c: Likewise.
1693         * sysdeps/unix/bsd/sigaction.c: Likewise.
1694         * sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise.
1695         * sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise.
1696         * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise.
1697         * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise.
1698         * sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise.
1699         * sysdeps/unix/sparc/start.c: Likewise.
1700         * sysdeps/unix/sysv/getdents.c: Likewise.
1701         * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise.
1702         * sysdeps/unix/sysv/irix4/getgroups.c: Likewise.
1703         * sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
1704         * sysdeps/unix/sysv/irix4/getrusage.c: Likewise.
1705         * sysdeps/unix/sysv/irix4/pathconf.c: Likewise.
1706         * sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
1707         * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise.
1708         * sysdeps/unix/sysv/irix4/start.c: Likewise.
1709         * sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
1710         * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise.
1711         * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise.
1712         * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
1713         * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise.
1714         * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
1715         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
1716         * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise.
1717         * sysdeps/unix/sysv/sysv4/setsid.c: Likewise.
1718         * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
1719         * sysdeps/unix/sysv/sysv4/waitpid.c: Likewise.
1720         * sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise.
1721         * time/tzset.c: Likewise.
1722         * time/strftime_l.c: Likewise.
1723         * time/strptime_l.c: Likewise.
1724         * crypt/md5.h: Likewise.
1726 2004-09-13  Andreas Jaeger  <aj@suse.de>
1728         * configure.in: Support GCC 4.x.
1729         * configure: Regenerated.
1731 2004-09-13  Thorsten Kukuk  <kukuk@suse.de>
1733         * nscd/nscd_stat.c: Don't access dbs[cnt].head for disabled services.
1735         * nscd/nscd.init: Fix path to socket.
1737 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
1739         * nscd/nscd_helper.c (get_mapping): Correctly check cmsg length.
1740         Avoid file descriptor leak in case of size mismatch.
1742         * nscd/nscd-client.h: Fix database structure layout for biarch.
1743         * nscd/mem.c (gc): Add casts to avoid warnings.
1745         * nss/getent.c: Don't preconstruct help message.  Do it only when
1746         needed.
1748         * locale/programs/locale.c: Simplify help message printing.
1750 2004-09-12  Roland McGrath  <roland@frob.com>
1752         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]: Add decls
1753         missing in last change.
1755 2004-09-11  Thorsten Kukuk  <kukuk@suse.de>
1757         * nis/nss_compat/compat-grp.c: Check that buflen is greater zero
1758         before writing data into the buffer with negative offset.
1759         * nis/nss_compat/compat-initgroups.c: Likewise.
1760         * nis/nss_compat/compat-pwd.c: Likewise.
1761         * nis/nss_compat/compat-spwd.c Likewise.
1763 2004-09-12  Ulrich Drepper  <drepper@redhat.com>
1765         * misc/syslog.c (vsyslog): Fix copying of PID in case of
1766         out-of-memory situation.  [BZ #365].
1768         * sysdeps/alpha/fpu/bits/mathinline.h: Use __NTH instead of
1769         __THROW in inline function definitions.
1771         * posix/spawn.h [__USE_GNU]: Define POSIX_SPAWN_USEVFORK.
1772         * posix/spawnattr_setflags.c: Check whether any unknown bit is set
1773         in FLAGS parameter and fail if this is the case.
1774         * sysdeps/posix/spawni.c: Use vfork if POSIX_SPAWN_USEVFORK flag is
1775         set.
1777         * nscd/pwdcache.c (cache_addpw): Sync also negative results to disk.
1778         * nscd/grpcache.c (cache_addgr): Likewise.
1779         * nscd/hstcache.c (cache_addhst): Likewise.
1781 2004-09-11  Roland McGrath  <roland@frob.com>
1783         * sysdeps/mach/hurd/i386/init-first.c (init1) [! SHARED]:
1784         Set _dl_phdr and _dl_phnum.
1785         (init1): When bootstrap task, bail early and never examine *D.
1787 2004-09-11  Alfred M. Szmidt  <ams@kemisten.nu>
1789         * sysdeps/mach/hurd/i386/tls.h (__i386_set_gdt) [!HAVE_I386_SET_GDT]:
1790         Cast THR, SEL and DESC to `void'.
1792 2004-09-11  Ulrich Drepper  <drepper@redhat.com>
1794         * nscd/connections.c (nscd_run): Call setup_thread only for enabled
1795         databases.
1797         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Use __NTH for __cmsg_nxthdr.
1799 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
1801         * nscd/nscd.c (pagesize_m1): New variable.
1802         (main): Initialize it.
1803         * nscd/nscd.h: Declare pagesize_m1.
1804         * nscd/hstcache.c: Pass correctly aligned address to msync.
1805         * nscd/grpcache.c: Likewise.
1806         * nscd/pwdcache.c: Likewise.
1808 2004-09-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1810         * sysdeps/unix/sysv/linux/sh/pthread_cond_wait.S: Decrement
1811         __nwaiters.  If pthread_cond_destroy has been called and this is
1812         the last waiter, signal pthread_cond_destroy caller and avoid
1813         using the pthread_cond_t structure after unlock.
1814         * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise.
1816 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
1818         * sysdeps/unix/sysv/linux/kernel-features.h: Don't define
1819         __ASSUME_CLONE_STOPPED.
1821 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
1823         * misc/sys/cdefs.h (__REDIRECT_NTH): Change order of __THROW and
1824         __asm__ for C++.  [BZ #377]
1826 2004-09-10  Ulrich Drepper  <drepper@redhat.com>
1828         * nscd/nscd_stat.c: Improve output by also printing .shared and
1829         .persistent.
1831         * nscd/connections.c: Allow cache sharing to be really disabled.
1833 2004-09-10  Jakub Jelinek  <jakub@redhat.com>
1835         * malloc/malloc.c (_int_free): Only do arena boundary check for
1836         contiguous arenas.
1838 2004-09-10  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
1840         * stdlib/longlong.h [__M32R__] (add_ssaaaa, sub_ddmmss): Fix broken
1841         instruct operands.
1842         * elf/elf.h: Add R_M32R_* relocs.
1844 2004-09-09  Ulrich Drepper  <drepper@redhat.com>
1846         * misc/sys/cdefs.h: Despite what the gcc manual says, gcc 3.2
1847         seems not to support the nothrow attribute.  Use it only for gcc
1848         3.3 and higher.
1850         * malloc/hooks.c (top_check): Print top chunk corruption as normal
1851         error message.
1853         * malloc/malloc.c (malloc_printerr): Don't make informational
1854         message look like error message.
1856 2004-09-09  Andreas Jaeger  <aj@suse.de>
1858         * nscd/Makefile (CFLAGS-nscd_setup_thread.c): Set to -fpie.
1860 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1862         * sysdeps/unix/sysv/linux/bits/socket.h (__SCM_CONNECT): Removed.
1864         * malloc/malloc.c (_int_free): Add inexpensive double free and
1865         memory corruption tests.
1866         (malloc_printf_nc): Renamed to malloc_printerr.  Second parameter
1867         is no format string anymore.  Don't use stdio.  Adjust all callers.
1868         * malloc/hooks.c: Adjust malloc_printf_nc callers.
1870 2004-09-08  Roland McGrath  <roland@redhat.com>
1872         * malloc/mcheck.c: Don't use __P.
1873         Use prototypes definitions for static functions.
1875 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1877         * sysdeps/ia64/fpu/bits/mathinline.h: Use __NTH instead of __THROW.
1879 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1880             Jakub Jelinek  <jakub@redhat.com>
1882         * nscd/nscd-client.h: Add a few #includes.
1884         * nscd/Makefile (nscd-modules): Add nscd_setup_thread.
1885         * nscd/connections.c (nscd_run): Call setup_thread for maintenance
1886         threads.
1887         * nscd/nscd-client.h (struct database_pers_head): Add
1888         nscd_certainly_running field.
1889         * nscd/nscd.h: Declare setup_thread.
1890         * nscd/nscd_helper.c (__nscd_get_map_ref): Avoid the time test if
1891         nscd_certainly_running is nonzero.
1892         * sysdeps/generic/nscd_setup_thread.c: New file.
1893         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: New file.
1895 2004-09-08  Ulrich Drepper  <drepper@redhat.com>
1897         * nscd/connections.c: Implement r/o sharing of nscd's cache with client
1898         processes via shared memory.
1899         * nscd/nscd-client.h: Likewise.
1900         * nscd/nscd.h: Likewise.
1901         * nscd/nscd_conf.c: Likewise.
1902         * nscd/nscd_getgr_r.c: Likewise.
1903         * nscd/nscd_getpw_r.c: Likewise.
1904         * nscd/nscd_gethst_r.c: Likewise.
1905         * nscd/nscd.conf: Add new config parameters.
1906         * nscd/Makefile (aux): Add nscd_helper.
1907         * nscd/nscd_helper.c: New file.
1908         * nscd/mem.c (gc): Indicate beginning and end of the gc cycle.
1910         * nscd/hstcache.c: Simplify a lot.  We cache only the request itself,
1911         no derived information.
1912         * connections.c (nscd_init): Fix bug in testing size of the persistent.
1914         * nis/Makefile (aux): Add nis_hash.
1915         * nis/nis_hash.c: New file.  Split out from nis_util.c.
1916         * nis/nis_util.c: Move __nis_hash code in separate file.
1918         * csu/tst-atomic.c: Improve atomic_increment_val test which would
1919         not have found a ppc bug.
1921         * sysdeps/s390/fpu/bits/mathinline.h: Remove unnecessary includes.
1923         * malloc/arena.c: Remove __MALLOC_P uses.
1924         * malloc/malloc.c: Likewise.
1926         * malloc/mtrace.c: Remove __P uses.
1927         * malloc/mcheck-init.c: Likewise.
1929 2004-09-07  Jakub Jelinek  <jakub@redhat.com>
1931         * sysdeps/powerpc/powerpc64/configure.in: New file.
1932         * config.h.in (USE_PPC64_OVERLAPPING_OPD): Add.
1933         * configure.in (HAVE_ASM_GLOBAL_DOT_NAME): Remove.
1934         * sysdeps/powerpc/powerpc64/sysdep.h: Formatting.
1935         (OPD_ENT, BODY_LABEL, ENTRY_1, ENTRY_2, END_2, DOT_PREFIX,
1936         BODY_PREFIX): Define.
1937         (ENTRY, DOT_LABEL, END, TRACEBACK, END_GEN_TB, EALIGN): Support
1938         HAVE_ASM_GLOBAL_DOT_NAME or no dot symbols,
1939         USE_PPC64_OVERLAPPING_OPD or never overlapping .opd entries.
1940         * sysdeps/powerpc/powerpc64/dl-machine.h: Include sysdep.h.
1941         (TRAMPOLINE_TEMPLATE, RTLD_START): Use the new sysdep.h macros.
1943 2004-09-07  Ulrich Drepper  <drepper@redhat.com>
1945         * malloc/malloc.h: Don't define __THROW if it is already defined.
1947         * sysdeps/powerpc/bits/atomic.h (atomic_increment): Define.
1948         (atomic_decrement): Define.
1950         * sysdeps/powerpc/bits/atomic.h: Implement atomic_increment_val and
1951         atomic_decrement_val.
1952         * sysdeps/powerpc/powerpc32/bits/atomic.h: Likewise.
1953         * sysdeps/powerpc/powerpc64/bits/atomic.h: Likewise.
1955         * csu/tst-atomic.c (do_test): Add tests of atomic_increment_val
1956         and atomic_decrement_val.
1958         * include/atomic.h: Define atomic_increment_val, atomic_decrement_val,
1959         and atomic_delay is not already defined.
1960         * sysdeps/i386/i486/bits/atomic.h: Define atomic_delay.
1961         * sysdeps/x86_64/bits/atomic.h: Likewise.
1963         * miscd/sys/cdefs.h (__NTH): New macro.
1964         (__THROW): Define using nothrow attribute for C code and gcc >= 3.2.
1965         (__REDIRECT_NTH): New macro.
1966         * argp/argp.h: Use __NTH and __REDIRECT_NTH where necessary.
1967         * ctype/ctype.h: Likewise.
1968         * dirent/dirent.h: Likewise.
1969         * io/fcntl.h: Likewise.
1970         * io/sys/sendfile.h: Likewise.
1971         * io/sys/stat.h: Likewise.
1972         * io/sys/statfs.h: Likewise.
1973         * io/sys/statvfs.h: Likewise.
1974         * libio/bits/stdio.h: Likewise.
1975         * misc/sys/mman.h: Likewise.
1976         * posix/unistd.h: Likewise.
1977         * resource/sys/resource.h: Likewise.
1978         * rt/aio.h: Likewise.
1979         * signal/signal.h: Likewise.
1980         * stdlib/stdlib.h: Likewise.
1981         * string/argz.h: Likewise.
1982         * string/string.h: Likewise.
1983         * sysdeps/generic/inttypes.h: Likewise.
1984         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
1985         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
1986         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
1987         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
1988         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
1989         * sysdeps/unix/sysv/linux/bits/sys/sysmacros.h: Likewise.
1990         * wcsmbs/wchar.h: Likewise.
1992         * sysdeps/generic/glob.c: Use __PMT isntead of __P where appropriate.
1994         * resolv/gethnamaddr.c (getanswer): Remove __P use in variable
1995         definition.
1997         * io/sys/poll.h: Remove __THROW from poll prototype, it's a
1998         cancellation point.
2000         * io/fts.c (fts_open): Remove uses of __P.
2002         * include/stdlib.h: No need to use __THROW in this header.
2004 2004-09-06  Roland McGrath  <roland@frob.com>
2006         * sysdeps/mach/hurd/dl-sysdep.c (__writev): Does use assert on FD
2007         validity, since __assert_fail gets to here anyway.  Just fail.
2009 2004-09-06  Ulrich Drepper  <drepper@redhat.com>
2011         * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix problem with
2012         AF_UNSPEC lookup with AI_CANONNAME of name which has only IPv6
2013         addresses.
2015 2004-09-05  Richard Henderson  <rth@redhat.com>
2017         * sysdeps/alpha/fpu/fraiseexcpt.c: Remove file.
2018         * sysdeps/unix/sysv/linux/kernel-features.h
2019         (__ASSUME_IEEE_RAISE_EXCEPTION): New.
2020         * sysdeps/unix/sysv/linux/alpha/fraiseexcpt.c: New file.
2021         * sysdeps/unix/sysv/linux/alpha/kernel_sysinfo.h: New file.
2022         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use it.
2023         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
2025 2004-09-05  Richard Henderson  <rth@redhat.com>
2027         * sysdeps/alpha/div.S: Save and restore FPCR around fp operations.
2028         * sysdeps/alpha/divl.S, sysdeps/alpha/divq.S, sysdeps/alpha/divqu.S,
2029         sysdeps/alpha/ldiv.S, sysdeps/alpha/reml.S, sysdeps/alpha/remq.S,
2030         sysdeps/alpha/remqu.S: Likewise.
2031         * sysdeps/alpha/div_libc.h (FRAME): Increase to 64.
2033 2004-09-05  Ulrich Drepper  <drepper@redhat.com>
2035         * nscd/cache.c (cache_add): Correctly log GETHOSTBYADDR and
2036         GETHOSTBYADDRv6 requests.
2038 2004-09-04  Ulrich Drepper  <drepper@redhat.com>
2040         * nscd/pwdcache.c (cache_addpw): Use correct key length in
2041         cache_add calls.
2042         * nscd/grpcache.c (cache_addgr): Likewise.
2044 2004-09-03  Alfred M. Szmidt  <ams@kemisten.nu>
2046         * sysdeps/mach/hurd/i386/tls.h (THREAD_DTV): Changed type of _DTV
2047         to `dtv_t *'.
2049 2004-09-03  Ulrich Drepper  <drepper@redhat.com>
2051         * nscd/nscd.c (parse_opt): Use writev instead of two write for
2052         invalidate command.
2054 2004-09-02  Ulrich Drepper  <drepper@redhat.com>
2056         * nscd/connections.c (nscd_run): Check early for invalid request types.
2058 2004-09-02  Roland McGrath  <roland@frob.com>
2060         * sysdeps/mach/hurd/i386/tls.h (TLS_INIT_TP_EXPENSIVE): New macro.
2061         (INSTALL_NEW_DTV, THREAD_DTV): Rewritten to fetch the right word.
2062         (THREAD_SELF): New macro.
2064 2004-09-02  Steven Munroe  <sjmunroe@us.ibm.com>
2066         [BZ #357]
2067         * stdlib/tst-setcontext.c (test_stack): Added test for stack clobber.
2068         (main): Call test_stack.
2069         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
2070         (__getcontext): Push stack frame then save parms in local frame.
2071         Improve instruction scheduling.
2072         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
2073         (__swapcontext): Likewise.
2075 2004-09-01  Andreas Schwab  <schwab@suse.de>
2077         * sysdeps/unix/sysv/linux/ia64/sys/ucontext.h [g++ >= 3.5]: Use
2078         __builtin_offsetof.
2080 2004-09-01  Jakub Jelinek  <jakub@redhat.com>
2082         [BZ #361]
2083         * posix/fnmatch_loop.c (FCT): For backslash between brackets, branch
2084         to normal_bracket after fetching the next character.
2085         * posix/tst-fnmatch.input: Add 25 new tests.
2086         Reported by Markus Oberhumer <markus@oberhumer.com>.
2088 2004-09-01  Ulrich Drepper  <drepper@redhat.com>
2090         * elf/rtld.c (dl_main): First check existence of ld.so.preload
2091         with access.
2093 2004-09-01  Roland McGrath  <roland@redhat.com>
2095         * sysdeps/unix/sysv/linux/bits/waitflags.h
2096         (WSTOPPED, WEXITED, WCONTINUED, WNOWAIT): New macros.
2097         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_WAITID_SYSCALL):
2098         New macro.
2099         * sysdeps/unix/sysv/linux/waitid.c: New file.  Use new syscall when
2100         available, or fall back to the waitpid-based generic code.
2102 2004-08-14  Alfred M. Szmidt  <ams@kemisten.nu>
2104         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Let gcc
2105         clobber the `ebp' register.
2106         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Removed.
2107         Reverts change from 2004-05-07 by Jeroen Dekkers.
2109         * sysdeps/mach/hurd/i386/init-first.c (init): Changed the type of
2110         NEWSP from `void *' to `int *'.  Changed all casts accordingly.
2112 2004-08-31  Jakub Jelinek  <jakub@redhat.com>
2114         * wcsmbs/wcsmbsload.c (__wcsmbs_getfct): Move attribute_hidden
2115         before return type.
2116         * locale/localename.c (__current_locale_name): Likewise.
2118 2004-08-30  Roland McGrath  <roland@frob.com>
2120         * scripts/extract-abilist.awk: If `lastversion' variable defined, omit
2121         later sets from output.
2122         * Makerules (check-abi): Pass option to set that with value of
2123         LIB-abi-frozen variable if one is set.
2125         * abilist/libcidn.abilist: New file (empty).
2127 2004-08-30  Jakub Jelinek  <jakub@redhat.com>
2129         * posix/bits/posix1_lim.h (_POSIX_CHILD_MAX, _POSIX_OPEN_MAX): If
2130         not __USE_XOPEN2K, use the Unix98 mandated values.
2132 2004-08-27  Roland McGrath  <roland@redhat.com>
2134         * configure.in (usetls): Default to yes.
2135         * configure: Regenerated.
2137 2004-08-26  Roland McGrath  <roland@redhat.com>
2139         * configure.in (add_ons_automatic): New variable, set to yes or no
2140         indicating --enable-add-ons with no explicit list.
2141         (running add-on fragments): Allow a fragment to modify $libc_add_on
2142         and have that affect its place in the list of add-ons to use.
2143         * configure: Regenerated.
2145 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
2147         * nscd/cache.c: Major rewrite.  The data is now optionally kept in
2148         a mmaped memory region which is automatically mirrored on disk.
2149         This implements persistent data storage.  The Memory handled
2150         needed to be completely revamped, it now uses a garbage collection
2151         mechanism instead of malloc.
2152         * nscd/connections.c: Likewise.
2153         * nscd/nscd.c: Likewise.
2154         * nscd/nscd.h: Likewise.
2155         * nscd/nscd_conf.c: Likewise.
2156         * nscd/nscd_stat.c: Likewise.
2157         * nscd/grpcache.c: Likewise.
2158         * nscd/hstcache.c:: Likewise.
2159         * nscd/pwdcache.c:: Likewise.
2160         * nscd/Makefile: Add rules to build mem.c.
2161         * nscd/mem.c: New file.
2162         * nscd/nscd.conf: Describe new configuration options.
2164 2004-08-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2166         * sysdeps/unix/sysv/linux/mips/pread.c: Include sgidefs.h only if
2167         NO_SGIDEFS_H isn't defined.
2168         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
2169         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
2171         * sysdeps/unix/sysv/linux/sh/pread.c: Define NO_SGIDEFS_H and
2172         _MIPS_SIM.
2173         * sysdeps/unix/sysv/linux/sh/pwrite.c: Likewise.
2174         * sysdeps/unix/sysv/linux/sh/pread64.c: Likewise.
2175         * sysdeps/unix/sysv/linux/sh/pwrite64.c: Likewise.
2177 2004-08-26  Ulrich Drepper  <drepper@redhat.com>
2179         * nscd/connections.c (nscd_run): atomic_increment was not missing.
2181         * sysdeps/gnu/Makefile (libdl-sysdep_routines): Don't add eval.
2182         Patch by Greg Schafer.
2184 2004-08-25  Richard Henderson  <rth@redhat.com>
2186         * sysdeps/alpha/elf/start.S (_start): Use $15 as frame unwind
2187         instead of $31.  Zero $15.
2188         * sysdeps/unix/sysv/linux/alpha/clone.S (thread_start): Likewise.
2190 2004-08-25  Ulrich Drepper  <drepper@redhat.com>
2192         * sysdeps/powerpc/powerpc64/bits/atomic.h
2193         (__arch_compare_and_exchange_bool_32_acq): Fix case where oldval
2194         is negative.
2195         (__arch_compare_and_exchange_bool_32_rel): Likewise.
2197         * nscd/connections.c: Make socket nonblocking so that threads
2198         don't get stuck on accept.  Fix locking.
2200         * nscd/grpcache.c (cache_addgr): Use copy of original key in hash
2201         entry with alternative key.
2202         * nscd/pwdcache.c (cache_addpw): Likewise.
2204 2004-08-25  Richard Sandiford  <rsandifo@redhat.com>
2206         * sysdeps/mips/dl-machine.h (_dl_start_user): Don't set
2207         __libc_stack_end.
2209 2004-08-23  Ulrich Drepper  <drepper@redhat.com>
2211         * sysdeps/gnu/netinet/udp.h: Cosmetic changes.  Remove unnecessary
2212         __BEGIN_DECLS/__END_DECLS.
2214 2004-08-23  Andreas Jaeger  <aj@suse.de>
2216         [BZ #341]
2217         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_NOATIME): Define.
2218         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (O_NOATIME): Likewise.
2219         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (O_NOATIME): Likewise.
2220         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (O_NOATIME): Likewise.
2221         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (O_NOATIME): Likewise.
2222         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_NOATIME): Likewise.
2223         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (O_NOATIME): Likewise.
2224         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (O_NOATIME): Likewise.
2225         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_NOATIME): Likewise.
2226         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (O_NOATIME): Likewise.
2227         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (O_NOATIME): Likewise.
2228         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_NOATIME): Likewise.
2229         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (O_NOATIME): Likewise.
2231 2004-08-21  Ulrich Drepper  <drepper@redhat.com>
2233         * malloc/hooks.c (DEFAULT_CHECK_ACTION): Moved to malloc.c.
2234         (check_action): Likewise.
2235         When printing error messages, use malloc_printf_nc now instead of
2236         fiddling with the streams cancellation flag in every place.
2237         * malloc/malloc.c (DEFAULT_CHECK_ACTION): New definition.  Change
2238         default to 3.
2239         (check_action): New variable.
2240         (unlink): Print error message and eventually terminate in case list
2241         is corrupted.
2242         (malloc_printf_nc): New function.  Use it in _int_free.
2243         Change proposed by Arjan van de Ven.
2245         * dlfcn/Makefile: Don't build eval.c anymore.
2247 2004-08-20  Roland McGrath  <roland@frob.com>
2249         * csu/Makefile ($(objpfx)version-info.h): Use printf in place
2250         of echo -e for POSIX.2 portability.
2251         Reported by Paul Jarc <prj@po.cwru.edu>.
2253 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
2255         * sysdeps/posix/getaddrinfo.c (gaih_inet): Minor optimizations in
2256         list generation.
2258         * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't use
2259         getcanonname_r function if AI_CANONNAME flag is not set in
2260         request.
2262         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss):
2263         Initialize mysize with limits only if latter is >= 0.  Use mysize
2264         in malloc call.
2266 2004-08-19  Jakub Jelinek  <jakub@redhat.com>
2268         * sysdeps/posix/getaddrinfo.c (gaih_inet): Cast canon to (char *)
2269         to avoid warning.
2271         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Initialize
2272         status to NSS_STATUS_UNAVAIL.
2274 2004-08-19  Ulrich Drepper  <drepper@redhat.com>
2276         * sysdeps/posix/getaddrinfo.c (gaih_inet): Use h->h_name in the
2277         cannoname lookup since it has the FQDN even if the original NAME
2278         value has not.
2280 2004-08-18  Ulrich Drepper  <drepper@redhat.com>
2282         * sysdeps/posix/getaddrinfo.c (gaih_inet): Store NAME parameter
2283         pointer in new variable ORIG_NAME and use this pointer when
2284         determination of canonical name failed, not the possibly IDN
2285         translated value of NAME.
2287 2004-08-17  Ulrich Drepper  <drepper@redhat.com>
2289         * resolv/resolv.h (RES_DEFAULT): Add RES_NOIP6DOTINT.
2290         * resolv/res_init.c (res_setoptions): Recognize ip6-dotint option.
2291         Reset RES_NOIP6DOTINT flag in this case..
2293         * sysdeps/posix/getaddrinfo.c: Fix memory handling of
2294         ai_canonname.
2296 2004-08-16  Ulrich Drepper  <drepper@redhat.com>
2298         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Don't use
2299         CNAME records, we better follow the chain of CNAME records which
2300         can be accomplished with A/AAAA lookups.
2302 2004-08-15  Roland McGrath  <roland@redhat.com>
2304         * sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who):
2305         Remove __RUSAGE_BOTH constant and RUSAGE_BOTH macro.
2306         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2307         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
2308         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2310 2004-08-15  Roland McGrath  <roland@frob.com>
2312         * sysdeps/i386/i686/Makefile (elide-routines.os): Append hp-timing to
2313         this, not ...
2314         (static-only-routines): ... this.
2315         * sysdeps/ia64/Makefile: Likewise.
2316         * sysdeps/sparc/sparc32/sparcv9/Makefile: Likewise.
2317         * sysdeps/sparc/sparc64/Makefile: Likewise.
2318         * sysdeps/x86_64/Makefile: Likewise.
2319         * sysdeps/i386/i686/hp-timing.c: Revert copyright terms change.
2320         * sysdeps/ia64/hp-timing.c: Likewise.
2321         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
2322         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
2324         * csu/elf-init.c: Update copyright terms including special exception
2325         for these trivial files, which are statically linked into executables
2326         that use dynamic linking for the significant library code.
2327         * io/fstat.c: Likewise.
2328         * io/fstat64.c: Likewise.
2329         * io/lstat.c: Likewise.
2330         * io/lstat64.c: Likewise.
2331         * io/stat.c: Likewise.
2332         * io/stat64.c: Likewise.
2333         * stdlib/atexit.c: Likewise.
2334         * sysdeps/alpha/elf/initfini.c: Likewise.
2335         * sysdeps/alpha/elf/start.S: Likewise.
2336         * sysdeps/arm/elf/start.S: Likewise.
2337         * sysdeps/cris/elf/start.S: Likewise.
2338         * sysdeps/generic/initfini.c: Likewise.
2339         * sysdeps/generic/mknod.c: Likewise.
2340         * sysdeps/hppa/elf/initfini.c: Likewise.
2341         * sysdeps/hppa/elf/start.S: Likewise.
2342         * sysdeps/i386/elf/start.S: Likewise.
2343         * sysdeps/i386/i686/hp-timing.c: Likewise.
2344         * sysdeps/ia64/elf/initfini.c: Likewise.
2345         * sysdeps/ia64/elf/start.S: Likewise.
2346         * sysdeps/ia64/hp-timing.c: Likewise.
2347         * sysdeps/m68k/elf/start.S: Likewise.
2348         * sysdeps/mach/start.c: Likewise.
2349         * sysdeps/mips/elf/start.S: Likewise.
2350         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
2351         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
2352         * sysdeps/s390/s390-32/elf/start.S: Likewise.
2353         * sysdeps/s390/s390-32/initfini.c: Likewise.
2354         * sysdeps/s390/s390-64/elf/start.S: Likewise.
2355         * sysdeps/s390/s390-64/initfini.c: Likewise.
2356         * sysdeps/sh/elf/initfini.c: Likewise.
2357         * sysdeps/sh/elf/start.S: Likewise.
2358         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
2359         * sysdeps/sparc/sparc32/sparcv9/hp-timing.c: Likewise.
2360         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
2361         * sysdeps/sparc/sparc64/hp-timing.c: Likewise.
2362         * sysdeps/standalone/i386/start.S: Likewise.
2363         * sysdeps/standalone/i960/start.S: Likewise.
2364         * sysdeps/standalone/m68k/m68020/start.S: Likewise.
2365         * sysdeps/unix/arm/start.c: Likewise.
2366         * sysdeps/unix/bsd/osf/alpha/start.S: Likewise.
2367         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
2368         * sysdeps/unix/sparc/start.c: Likewise.
2369         * sysdeps/unix/start.c: Likewise.
2370         * sysdeps/unix/sysv/aix/start.s: Likewise.
2371         * sysdeps/unix/sysv/irix4/start.c: Likewise.
2372         * sysdeps/x86_64/elf/initfini.c: Likewise.
2373         * sysdeps/x86_64/elf/start.S: Likewise.
2375 2004-08-15  Roland McGrath  <roland@redhat.com>
2377         [BZ #227]
2378         * sysdeps/unix/sysv/linux/kernel-features.h
2379         (__ASSUME_BRK_PAGE_ROUNDED): New macro.
2380         * sysdeps/unix/sysv/linux/dl-sysdep.c (frob_brk)
2381         [! __ASSUME_BRK_PAGE_ROUNDED]: Adjust the break up if it falls within
2382         the partial page after the dynamic linker's own data segment.
2384 2004-08-15  Ulrich Drepper  <drepper@redhat.com>
2386         * sysdeps/posix/getaddrinfo.c (gaih_inet): Optimize generation of
2387         v4-mapped addresses a bit.
2388         (gethosts): Move alloca out of macro, so that it is done only once.
2390         * sysdeps/posix/getaddrinfo.c (gaih_addrtuple): Change type of
2391         addr to avoid casts.
2392         (gethosts): Removed.
2393         (gethosts2): Renamed to gethosts.  Make it usable for family !=
2394         AF_UNSPEC.  Fix AI_V4MAPPED.
2395         (gaih_inet): Remove use of old gethosts.  Always use what used to be
2396         gethosts2.  If entry is found, try to use the same NSS module's
2397         getcanonname_r function.  Use gethostbyaddr for AI_CANONNAME only
2398         if getcanonname_r was not available.  Fix filtering of AI_V4MAPPED
2399         addresses.  Numerous cleanups.
2400         * resolv/nss_dns/dns-canon.c: New file.
2401         * resolv/Makefile (libnss_dns-routines): Add dns-canon.
2402         * resolv/Versions (libnss_dns): Add _nss_dns_getcanonname_r.
2404         * elf/Makefile: Add rules to build and run tst-dlopenrpath.
2405         * elf/tst-dlopenrpath.c: New file.
2406         * elf/tst-dlopenrpathmod.c: New file.
2408         * intl/tst-gettext.sh: Adjust for change of de.po file to UTF-8.
2409         * intl/tst-gettext.c: Likewise.
2411         * nss/getent.c (ahosts_keys_int): Correctly print IPv6 addresses.
2413         * nss/getent.c: Allow queries for getaddrinfo with AF_INET and
2414         AF_INET6.
2416 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
2418         * po/de.po: Update from translation team.
2420 2004-08-14  Roland McGrath  <roland@frob.com>
2422         * sysdeps/mach/configure: Regenerated.
2423         * sysdeps/mach/hurd/configure: Regenerated.
2425 2004-08-14  Ulrich Drepper  <drepper@redhat.com>
2427         * sysdeps/posix/getaddrinfo.c (getaddrinfo): If RFC3484 sorting is
2428         performed, make sure it is still the first entry after sorting
2429         that has the ai_canonname information.
2431         * sysdeps/posix/getaddrinfo.c (gaih_inet): Really set ai_canonname
2432         only in one entry.
2434 2004-08-13  Daniel Jacobowitz  <dan@debian.org>
2436         * scripts/output-format.sed: Handle default case of three-argument
2437         OUTPUT_FORMAT.
2439         * sysdeps/arm/machine-gmon.h (mcount_internal): Mark as
2440         __attribute_used__.
2442 2004-08-13  Ulrich Drepper  <drepper@redhat.com>
2444         * nss/getent.c (ahosts_keys): ai_canonname is NULL for all but the
2445         first returned entry.  Print name only if not NULL.
2447         * nis/nss_nis/nis-netgrp.c: Remove locking by using data in struct
2448         __netgrent object passed in instead of global variables.
2449         Optimize.
2450         * nis/nss_nisplus/nisplus-netgrp.c: Remove locking by using data
2451         in struct __netgrent object passed in instead of global variables.
2452         * inet/netgroup.h (struct __netgrent): Add service_user field.
2453         Move cursor in anonymous union, add new field location to that
2454         union.
2455         * inet/getnetgrent_r.c: Extensive rewrite to really enable
2456         concurrent uset of set/get/endnetgrent and innetgr.
2457         Reported by Chuck Simmons.
2459         * inet/netgroup.h (struct name_list): Replace name pointer with
2460         zero-sized array.
2461         * inet/getnetgrent_r.c: Adjust code for change in name_list
2462         layout.  Numerous strdup and free calls removed.
2464         * elf/sprof.c (read_symbols): When comparing aliases, prefer
2465         non-hidden over hidden symbols and strong over weak symbols
2466         if both don't start with '_'.
2468         * malloc/malloc.c: Use strong_alias instead of weak_alias wherever
2469         possible.
2471 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2473         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
2474         RUSAGE_ enums as __RUSAGE_ and adjust macros accordingly.
2475         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2476         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2477         * sysdeps/unix/sysv/linux/mips/bits/resource.h: Likewise.
2478         Define non-standard RLIMIT_ enums as __RLIMIT_ and adjust macros
2479         accordingly.
2481 2004-08-11  Andreas Schwab  <schwab@suse.de>
2483         * resolv/res_libc.c: Move definition of __res_initstamp ...
2484         * resolv/res_init.c: ... here.
2486 2004-08-10  GOTO Masanori  <gotom@debian.or.jp>
2488         * locale/C-time.c: Change default ERA value from NULL to "".
2489         * locale/tst-C-locale.c: Add test case for ERA keywords.
2491 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
2493         * sysdeps/unix/sysv/linux/bits/resource.h: Define non-standard
2494         RLIMIT__ enums as __RLIMIT_ and adjust macros accordingly.
2495         * sysdeps/unix/sysv/linux/alpha/bits/resource.h: Likewise.
2496         * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise.
2498 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2500         * sysdeps/unix/sysv/linux/bits/resource.h (RLIMIT_SIGPENDING,
2501         RLIMIT_MSGQUEUE): Add.
2502         (RLIMIT_NLIMITS, RLIM_NLIMITS): Adjust.
2503         * sysdeps/unix/sysv/linux/alpha/bits/resource.h (RLIMIT_SIGPENDING,
2504         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2505         (RLIM_NLIMITS): Adjust.
2506         * sysdeps/unix/sysv/linux/sparc/bits/resource.h (RLIMIT_SIGPENDING,
2507         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2508         (RLIM_NLIMITS): Adjust.
2509         * sysdeps/unix/sysv/linux/mips/bits/resource.h (RLIMIT_SIGPENDING,
2510         RLIMIT_MSGQUEUE, RLIMIT_NLIMITS): Add.
2511         (RLIM_NLIMITS): Adjust.
2513 2004-08-12  Jakub Jelinek  <jakub@redhat.com>
2515         * resolv/res_query.c (__libc_res_nsearch): Protect the debugging
2516         printf with #ifdef DEBUG and RES_DEBUG check.
2518         * sysdeps/unix/sysv/linux/bits/shm.h: Move __END_DECLS after
2519         __USE_MISC #endif.
2520         * sysdeps/generic/bits/shm.h: Add __BEGIN_DECLS for __getpagesize
2521         declaration.
2522         * sysdeps/gnu/bits/shm.h: Likewise.
2523         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
2524         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
2525         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
2526         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
2527         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
2529 2004-08-12  Ulrich Drepper  <drepper@redhat.com>
2531         * po/ca.po: Update from translation team.
2533 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
2535         * sysdeps/unix/sysv/linux/bits/shm.h: Add __BEGIN_DECLS for
2536         __getpagesize declaration.
2538 2004-08-11  Roland McGrath  <roland@redhat.com>
2540         * configure.in (libc_cv_cpp_asm_debuginfo): Add missing braces around
2541         commands inside &&.
2542         Reported by Andreas Schwab <schwab@suse.de>.
2543         * configure: Regenerated.
2545         * posix/tst-waitid.c (do_test): Ignore SIGCHLD before cleanup SIGKILL.
2547 2004-08-11  Ulrich Drepper  <drepper@redhat.com>
2549         * time/tzset.c (tzset_internal): Add new parameter which is
2550         nonzero if called through tzset.  Use TZDEFAULT name including
2551         name comparison if the new parameter is zero.  This means implicit
2552         tzset calls will not cause files to be opened and read by tzfile.c
2553         all the time.
2555 2004-08-11  Jakub Jelinek  <jakub@redhat.com>
2557         * rt/tst-timer2.c (do_test): If timer_create fails, just continue.
2558         * rt/tst-timer4.c (do_test): If one of the timer_create calls fails,
2559         return 1 immediately.
2561         * time/tzfile.c (__tzfile_read): Free transitions only if it will
2562         not be reused.
2564         * sysdeps/ieee754/dbl-64/mpa.c: Include <sys/param.h>.
2565         * sysdeps/ieee754/dbl-64/mpa.h (MAX, MIN): Macros removed.
2567         * stdio-common/tst-popen.c: Include <string.h>.
2569         * resolv/res_send.c (__libc_res_nsend): Only define TMPBUF #if DEBUG.
2571         * sysdeps/pthread/aio_misc.c (handle_fildes_io): Remove noreturn
2572         attribute.  Return NULL instead of calling pthread_exit at the end.
2574 2004-08-11  Roland McGrath  <roland@redhat.com>
2576         * iconvdata/testdata/ISO-2022-JP-3: Regenerated.
2578 2004-08-10  Alfred M. Szmidt  <ams@kemisten.nu>
2580         * sysdeps/generic/bits/in.h (struct ip_mreq): Remove definition.
2582 2004-08-10  Jakub Jelinek  <jakub@redhat.com>
2584         * libio/bits/stdio.h (fread_unlocked): Cast 0 to (size_t).
2585         (fwrite_unlocked): When checking if size * n is <= 8, cast each
2586         argument to size_t individually.  Cast n to (void) instead of
2587         (size_t), surround with (), return (size_t) 0 if one of n or size
2588         is 0.  [BZ #316]
2589         * stdio-common/Makefile (tests): Add tst-unlockedio.
2590         * stdio-common/tst-unlockedio.c: New test.
2592 2004-08-09  Roland McGrath  <roland@frob.com>
2594         * manual/install.texi (Supported Configurations): Replace bug-glibc
2595         mention with web URL.
2596         * INSTALL: Regenerated.
2597         * locale/iso-3166.def: Likewise, in comment.
2598         * locale/iso-4217.def: Likewise.
2599         * locale/iso-639.def: Likewise.
2600         * posix/cpio.h: Remove bug reporting comment.
2602 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
2604         * libio/bits/stdio.h (fread_unlocked): Add a couple of (size_t)
2605         casts to handle funny calls with floating point argument values
2606         and signed values correctly and without warning.
2607         (fwrite_unlocked): Likewise.  [BZ #309]
2609         * malloc/memusage.c (me): Use creat64, not creat.
2610         * malloc/memusagestat.c: Fix handling of very large sizes.  [BZ #285]
2611         Patch by Guy Maor <guymaor@yahoo.com>.
2613         * elf/ldconfig.c (options): Mark parameter option names as
2614         translatable.  [BZ #253]  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
2616         * iconv/gconv_charset.h (strip): Also allow comma which is what is
2617         used to separate options.  [BZ #194]
2619 2004-08-09  Roland McGrath  <roland@redhat.com>
2621         * FAQ.in: Refer to web pages instead of bug-glibc.
2622         * FAQ: Regenerated.
2624         * time/strptime_l.c: #include <stdbool.h>, `bool' used in last change.
2626 2004-08-09  Ulrich Drepper  <drepper@redhat.com>
2628         * time/tzset.c (tzset_internal): If TZ is not set do not compare
2629         old and new tz value since it might be /etc/localtime in both
2630         cases although the file changed.  [BZ #154]
2631         Patch by Christian Franke <franke@computer.org>.
2633         * time/tzfile.c (__tzfile_read): Determine dev/ino of file.
2634         Compare with values of previously opened file.  Don't do anything
2635         is they match.
2637 2004-08-08  Ulrich Drepper  <drepper@redhat.com>
2639         * elf/dl-load.c (_dl_map_object): If __RTLD_CALLMAP flag is set,
2640         reset loader before the actual loading.
2641         * elf/dl-open.c (dl_open_worker): If file name contains no path
2642         element determine map of caller.  Pass caller map in this case to
2643         _dl_map_object.  Set __RTLD_CALLMAP in mode.
2644         * include/dlfcn.h (__RTLD_CALLMAP): Define.  [BZ #116]
2645         Patch by Greg Wolodkin <greg@mathworks.com>.
2647         * misc/syslog.c (openlog_internal): Always try both UDP and TCP.
2648         [BZ #108]  Patch mainly by Bjorn Andersson <bjorn@iki.fi>.
2650         * configure.in: Also recognize i786. [BZ #106]
2651         Patch by <pluto@pld-linux.org>.
2653         * resolv/res_query.c (__libc_res_nsearch): Correctly test whether
2654         name contains any dots. [BZ #95]
2656         * resolv/res_send.c: Compiling with DEBUG defined works again.
2657         * resolv/gethnamaddr.c (dprintf): Renamed to Dprintf.  Adjust all
2658         callers.
2660         * resolv/tst-leaks.c (TIMEOUT): Define so that if no server is
2661         available the process is not killed. [BZ #41]
2663         * intl/tst-gettext.c (main): Improve some messages. [BZ #33]
2665         * time/strptime_l.c (__strptime_internal): Fix handling of %Ey.
2666         [BZ #28]
2668         * po/sv.po: Update from translation team.
2670 2004-08-07  Ulrich Drepper  <drepper@redhat.com>
2672         * inet/netinet/in.h: Add more const to the setipv4soucefilter,
2673         getsourcefilter, and setsourcefilter parameter list.
2674         * sysdeps/generic/setipv4sourcefilter.c: Likewise.
2675         * sysdeps/generic/getsourcefilter.c: Likewise.
2676         * sysdeps/generic/setsourcefilter.c: Likewise.
2677         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: Likewise.
2678         * sysdeps/unix/sysv/linux/getsourcefilter.c: Likewise.
2679         * sysdeps/unix/sysv/linux/setsourcefilter.c: Likewise.
2681         * po/tr.po: Update from translation team.
2683 2004-08-06  Ulrich Drepper  <drepper@redhat.com>
2685         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): Fix typo.
2686         Reported by Paolo Bonzini.
2688 2004-08-06  Jakub Jelinek  <jakub@redhat.com>
2690         * sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add
2691         always_inline.
2692         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_runtime_setup,
2693         elf_machine_fixup_plt, elf_machine_plt_conflict): Likewise.
2695         * sysdeps/unix/sysv/linux/netatalk/at.h: Include bits/sockaddr.h
2696         before including linux/atalk.h.
2698         * resolv/res_libc.c: Include atomic.h.
2700         * intl/finddomain.c (free_mem): Rename to...
2701         (_nl_finddomain_subfreeres): ... this.  Add
2702         __libc_freeres_fn_section.
2703         * intl/loadmsgcat.c (_nl_unload_domain): Add
2704         __libc_freeres_fn_section.
2705         * intl/gettextP.h (_nl_unload_domain): Move into #ifdef _LIBC.
2706         Add attribute_hidden.
2707         (_nl_findomain_subfreeres): New prototype.
2708         * iconv/gconv_db.c (free_mem): Call _nl_findomain_subfreeres.
2710 2004-07-30  Guido Guenther  <agx@sigxcpu.org>
2712         * nss/getent.c (passwd_keys): Use strtoul instead of isdigit to
2713         test if the key is numeric or not.
2714         (group_keys): Likewise.
2716 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2718         * inet/netinet/in.h: Define struct ip_msfilter, IP_MSFILTER_SIZE,
2719         struct group_filter, and GROUP_FILTER_SIZE.
2720         * include/sys/socket.h: Declare __getsockopt.
2721         * sysdeps/unix/sysv/linux/setipv4sourcefilter.c: New file.
2722         * sysdeps/unix/sysv/linux/getipv4sourcefilter.c: New file.
2723         * sysdeps/unix/sysv/linux/setsourcefilter.c: New file.
2724         * sysdeps/unix/sysv/linux/getsourcefilter.c: New file. [BZ #211]
2726         * po/ko.po: Update from translation team.
2728 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2730         * hesiod/hesiod.c (__hesiod_res_get): Use calloc instead of malloc +
2731         memset.
2732         (__hesiod_res_set): Free nsaddrs.
2734         * include/resolv.h (__res_maybe_init): Add prototype.
2735         * resolv/resolv.h (struct __res_state): Add _u._ext.initstamp field.
2736         * resolv/Versions (libc): Add __res_maybe_init@@GLIBC_PRIVATE.
2737         * resolv/res_libc.c (__res_initstamp, lock): New variables.
2738         (res_init): Increase __res_initstamp.
2739         (__res_maybe_init): New function.
2740         * resolv/res_init.c (__res_vinit): Initialize _u._ext.initstamp.
2741         * hesiod/hesiod.c (__hesiod_res_get): Use __res_maybe_init instead
2742         of RES_INIT check and {res_ninit,__res_ninit,res_init} call.
2743         * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise.
2744         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
2745         _nss_dns_gethostbyaddr_r): Likewise.
2746         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
2747         _nss_dns_getnetbyaddr_r): Likewise.
2748         * resolv/gethnamaddr.c (gethostbyname, gethostbyname2,
2749         gethostbyaddr): Likewise.
2750         * resolv/res_data.c (fp_nquery, res_mkquery, res_mkupdate,
2751         res_isourserver, res_sendsigned, res_update, res_search,
2752         res_querydomain): Likewise.
2753         * nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)): Likewise.
2754         * nss/digits_dots.c (__nss_hostname_digits_dots): Likewise.
2755         * nss/getnssent_r.c (__nss_setent, __nss_endent, __nss_getent_r):
2756         Likewise.
2758 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2760         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set ai_family for
2761         V4-mapped IPv6 addresses and req->ai_family==AF_INET.
2762         Reported by A. Guru <a.guru@sympatico.ca>.
2764         * po/sv.po: Update from translation team.
2765         * po/sk.po: Likewise.
2766         * po/pl.po: Likewise.
2768 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2769             Ulrich Drepper  <drepper@redhat.com>
2771         * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Don't read more input
2772         characters than necessary.
2774 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2776         * wcsmbs/Makefile (tests): Add tst-mbsrtowcs.
2777         * wcsmbs/tst-mbsrtowcs.c: New file.
2779         * po/fr.po: Update from translation team.
2781 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2783         * resolv/inet_pton.c (inet_pton4): Disallow octal numbers.  Reported
2784         by A. Guru <a.guru@sympatico.ca>.  [BZ #295]
2786 2004-08-05  Ulrich Drepper  <drepper@redhat.com>
2788         * po/nl.po: Update from translation team.
2790         * sysdeps/posix/getaddrinfo.c (gaih_inet): Recognize all the IPv4
2791         numeric address formats inet_addr knows.
2792         (getaddrinfo): Allow AI_NUMERICSERV flag.
2793         If neither IPv4 nor IPv6 interface is present we cannot make any
2794         decision for AI_ADDRCONFIG.  Fail if AI_NUMERICSERV is set and the
2795         string is not just a number.  Remove useless freeaddrinfo call.
2796         * resolv/netdb.h (AI_NUMERICSERV): Define.
2797         Based on a patch by a.guru@sympatico.ca.
2799 2004-08-04  Jakub Jelinek  <jakub@redhat.com>
2801         * stdlib/strfmon_l.c (__vstrfmon_l): Memset whole info structure
2802         instead of trying to initialize some, but not all, fields one by
2803         one.
2804         * stdio-common/printf_size.c (printf_size): Initialize fb_info
2805         structure with *info instead of trying to initialize some, but not
2806         all, fields from it.
2808         * nscd/connections.c (handle_request): Check if req->type is in
2809         LASTDBREQ .. LASTREQ range instead of req.
2811         * locale/programs/linereader.c (lr_create): Initialize
2812         lr->return_widestr to 0.
2814         * elf/dl-close.c (free_slotinfo): Add __libc_freeres_fn_section.
2815         (free_mem): Call free_slotinfo just once.
2817         * stdio-common/tst-fmemopen.c (main): Check for MAP_FAILED instead
2818         of NULL.
2820         * locale/localeinfo.h (_nl_locale_subfreeres): New prototype.
2821         * locale/setlocale.c (free_category): Add __libc_freeres_fn_section.
2822         (free_mem): Rename to _nl_locale_subfreeres.
2823         * iconv/gconv_db.c: Include locale/localeinfo.h.
2824         (free_derivation, free_modules_db): Add __libc_freeres_fn_section.
2825         (free_mem): Call _nl_locale_subfreeres.
2826         * iconv/gconv_dl.c (do_release_all): Add __libc_freeres_fn_section.
2828 2004-08-04  Roland McGrath  <roland@frob.com>
2830         * Makeconfig ($(common-objpfx)config.status):
2831         Fix typo: $(add_ons) -> $(add-ons).
2832         (Makeconfig-add-on): New variable.  When doing $(sysdep-makeconfigs)
2833         include, use black magic to get it set to an add-on's name during the
2834         include of the add-on's Makeconfig.
2836         * configure.in: Use variable name `libc_add_on' when sourcing add-on
2837         configure fragments, so they can refer to this.
2838         * configure: Regenerated.
2840 2004-08-04  Roland McGrath  <roland@redhat.com>
2842         * posix/tst-waitid.c (test_child): Sleep a second before stopping.
2843         (do_test): Bump sleep to three seconds.
2844         (sigchld, check_sigchld): New functions.
2845         (do_test): Handle SIGCHLD and check for getting the right details.
2847         * posix/tst-waitid.c (do_test): Kill the child process when bailing
2848         out early on some failure.
2849         [WCONTINUED]: Test WCONTINUED functionality.
2851 2004-08-03  Ulrich Drepper  <drepper@redhat.com>
2853         * nscd/connections.c (handle_request): Print more descriptive
2854         message for invalid request types.
2856 2004-08-02  Jakub Jelinek  <jakub@redhat.com>
2858         * iconvdata/ibm932.c (BODY): Avoid binary search for ch >= 0xffff.
2859         Always treat high as highest number in range + 1.
2860         * iconvdata/ibm943.c (BODY): Likewise.
2862 2004-07-31  Bruno Haible  <bruno@clisp.org>
2864         * iconvdata/JISX0213.TXT: Updated to JISX0213 plane 1 version 2004.
2865         * iconvdata/jisx0213.c (__jisx0213_to_ucs_main,
2866         __jisx0213_to_ucs_pagestart, __jisx0213_from_ucs_level1,
2867         __jisx0213_from_ucs_level2): Regenerated.
2868         * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): New function.
2869         * iconvdata/iso-2022-jp-3.c (JISX0213_1_2000_set): Renamed from
2870         JISX0213_1_set.
2871         (JISX0213_1_2004_set): New enum value.
2872         (BODY for FROM_LOOP): Treat ESC $ ( Q like ESC $ ( O.
2873         (BODY for TO_LOOP): For JISX 0213 plane 1 characters, emit ESC $ ( O
2874         when possible, ESC $ ( Q when needed.
2875         * iconvdata/testdata/EUC-JISX0213: Add the 10 new characters.
2876         * iconvdata/testdata/EUC-JISX0213..UTF8: Update.
2877         * iconvdata/testdata/SHIFT_JISX0213: Add the 10 new characters.
2878         * iconvdata/testdata/SHIFT_JISX0213..UTF8: Update.
2879         * iconvdata/testdata/ISO-2022-JP-3: Add the 10 new JISX0213 characters.
2880         * iconvdata/testdata/ISO-2022-JP-3..UTF8: Update.
2882 2004-07-22  Bruno Haible  <bruno@clisp.org>
2884         * iconvdata/gconv-modules (ISO-8859-7): Add alias ISO_8859-7:2003.
2886 2004-07-29  David S. Miller  <davem@redhat.com>
2888         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy): Optimize
2889         better for smaller than 256 byte copies.  Also, use only one
2890         unrolled loop instead of two for the large copy case.
2892 2004-07-30  Richard Henderson  <rth@redhat.com>
2894         * sysdeps/alpha/divq.S: Save t3 before it gets clobbered.
2895         * sysdeps/alpha/remq.S: Likewise.
2896         * sysdeps/alpha/div.S, sysdeps/alpha/ldiv.S: Rewrite with the
2897         new division algorithms in divl.S and divq.S respectively.
2899 2004-07-28  GOTO Masanori  <gotom@debian.or.jp>
2901         * timezone/asia: Update from tzdata2004b.
2902         * timezone/backward: Likewise.
2903         * timezone/europe: Likewise.
2904         * timezone/iso3166.tab: Likewise.
2905         * timezone/leapseconds: Likewise.
2906         * timezone/northamerica: Likewise.
2907         * timezone/southamerica: Likewise.
2908         * timezone/zone.tab: Likewise.
2910         * timezone/private.h: Update from tzcode2004b.
2911         * timezone/zic.c: Likewise.
2913 2004-07-27  Ulrich Drepper  <drepper@redhat.com>
2915         * nscd/grpcache.c (cache_addgr): If necessary, add entry also
2916         under the name the user provided.
2917         * nscd/pwdcache.c (cache_addpw): Likewise.
2919 2004-07-26  Roland McGrath  <roland@redhat.com>
2921         * sysdeps/posix/waitid.c [WEXITED]: Clear WEXITED bit in OPTIONS for
2922         call to __waitpid.
2924 2004-07-26  Ulrich Drepper  <drepper@redhat.com>
2926         * nscd/hstcache.c (cache_addhst): Fix two scenarios which lead to
2927         memory leaks.
2929         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Assign pointer for
2930         new buffer at the right time.
2931         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
2933 2004-07-25  Ulrich Drepper  <drepper@redhat.com>
2935         * inet/Versions [libc, GLIBC_2.3.4]: Add getipv4sourcefilter,
2936         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
2937         * inet/Makefile (routines): Likewise.
2938         * inet/netinet/in.h: Add prototypes for getipv4sourcefilter,
2939         getsourcefilter, setipv4sourcefilter, and setsourcefilter.
2940         * sysdeps/generic/getipv4sourcefilter.c: New file.
2941         * sysdeps/generic/setipv4sourcefilter.c: New file.
2942         * sysdeps/generic/getsourcefilter.c: New file.
2943         * sysdeps/generic/setsourcefilter.c: New file.
2945 2004-07-17  Steven Munroe  <sjmunroe@us.ibm.com>
2947         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
2948         for POWER4 machines.
2950 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
2952         [BZ #274]
2953         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): Fix used >=
2954         BITS_PER_MP_LIMB shifting up.
2955         * stdlib/tst-strtod.c (main): Add new tests.
2957 2004-07-23  Jakub Jelinek  <jakub@redhat.com>
2959         [BZ #282]
2960         * libio/iopopen.c (_IO_new_popen): Use _IO_init instead of
2961         _IO_no_init.  Remove wd from struct locked_FILE.
2962         (_IO_wproc_jumps): Remove.
2963         Reported by Andrew Josey <a.josey@opengroup.org>.
2964         * stdio-common/Makefile (tests): Add tst-popen.
2965         * stdio-common/tst-popen.c: New test.
2967 2004-07-23  Ulrich Drepper  <drepper@redhat.com>
2969         * posix/bits/posix1_lim.h: Fix values for _POSIX_CHILD_MAX and
2970         _POSIX_OPEN_MAX.  Add _POSIX_HOST_NAME_MAX, _POSIX_SYMLINK_MAX,
2971         _POSIX_SYMLOOP_MAX, and _POSIX_RE_DUP_MAX.
2972         Reported by Andrew Josey.
2974         * include/features.h: Document _POSIX_C_SOURCE == 200112L.
2976         * grp/grp.h: Define gid_t if __USE_XOPEN2K is defined.
2977         * pwd/pwd.h: Define uid_t and gid_t if __USE_XOPEN2K is defined.
2978         * io/sys/stat.h: Define dev_t, gid_t, ino_t, mode_t, nlink_t,
2979         off_t, time_t, and uid_t if __USE_XOPEN2K is defined.
2980         * signal/signal.h: Define pid_t if __USE_XOPEN2K is defined.
2981         * posix/unistd.h: Define gid_t, off_t, pid_t, uid_t, and
2982         useconds_t if __USE_XOPEN2K is defined.
2983         * io/utime.h: Define time_t if __USE_XOPEN2K is defined.
2984         * libio/stdio.h: Declare fseeko and ftello if __USE_XOPEN2K is defined.
2986 2004-07-19  Thorsten Kukuk  <kukuk@suse.de>
2988         * nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
2989         allocate memory for large temporary variables with alloca.
2991 2004-07-22  Ulrich Drepper  <drepper@redhat.com>
2993         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Compatibility
2994         code must have version GLIBC_2.0.  Patch by Dwayne McConnell.
2996         * nscd/nscd_getgr_r.c (nscd_getgr_r): Avoid read call with NULL
2997         pointer and zero length.
2999 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
3001         * nscd/cache.c (prune_cache): Print correct list when debugging.
3003 2004-07-21  Jakub Jelinek  <jakub@redhat.com>
3005         * resolv/res_libc.c (res_init): If RES_INIT is set and
3006         _res.nscount > 0, call __res_nclose and free nsaddrs.
3007         * resolv/Makefile: Add rules to build and run tst-leaks2.
3008         * resolv/tst-leaks2.c: New test.
3010 2004-07-21  Ulrich Drepper  <drepper@redhat.com>
3012         * intl/libintl.h: Don't define macros for C++.
3013         Patch by Goto Masanori.
3015 2004-07-22  GOTO Masanori  <gotom@debian.or.jp>
3017         [BZ #276]
3018         * include/arpa/inet.h: Change inet_aton type from in_addr_t to int.
3019         * inet/arpa/inet.h: Likewise.
3020         * resolv/inet_addr.c: Likewise.
3022 2004-07-21  Alexandre Oliva  <aoliva@redhat.com>
3024         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: Add semtimedop.
3026 2004-07-20  Roland McGrath  <roland@redhat.com>
3028         * configure.in (add_ons): Substitute this.  Move $add_ons handling
3029         after AC_CANONICAL_HOST and default setting of $machine et al.
3030         Don't set $subdirs from $add_ons.
3031         Instead, source add-on/configure fragments early on.
3032         (base_machine): If it's already set, don't set it based on $machine.
3033         (libc_config_ok): New variable, set to no.  If an add-on fragment sets
3034         it to yes, skip the  tuple sanity check as if --enable-hacker-mode.
3035         (sysnames): Try appending add-on names after machine as well.
3036         * config.make.in (add-ons): Set from @add_ons@ instead of @subdirs@.
3037         * Makeconfig ($(common-objpfx)config.status): Also depend on configure
3038         files in $(add_ons) dirs.
3040         * sysdeps/unix/sysv/linux/bits/in.h (struct ip_mreq): Remove
3041         definition, now in netinet/in.h proper.
3043 2004-07-20  Alexandre Oliva  <aoliva@redhat.com>
3045         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
3046         Sort by syscalls.  Make sure we get headers such as sgidefs.h from
3047         the build tree before just-installed ones.
3049         * sysdeps/mips/atomicity.h: Use standard names for ABI macros,
3050         include sgidefs.h where appropriate.
3051         * sysdeps/mips/dl-machine.h: Likewise.
3052         * sysdeps/mips/machine-gmon.h: Likewise.
3053         * sysdeps/mips/bits/setjmp.h: Likewise.
3054         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
3055         * sysdeps/mips/mips64/__longjmp.c: Likewise.
3056         * sysdeps/mips/mips64/setjmp_aux.c: Likewise.
3057         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
3058         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
3059         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
3060         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
3061         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
3062         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
3063         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
3064         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Likewise.
3065         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
3066         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: Likewise.
3067         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Likewise.
3068         * sysdeps/unix/sysv/linux/mips/sys/procfs.h: Likewise.
3069         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: Likewise.
3070         * sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
3071         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
3072         * sysdeps/unix/sysv/linux/mips/sys/user.h: Likewise.
3073         * sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
3074         Likewise.
3075         * sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h):
3076         Likewise.
3078         * sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Update to use
3079         _dl_lookup_symbol_x.
3080         (elf_machine_runtime_link_map): Don't INTUSE _dl_signal_error.
3082 2004-07-20  Ulrich Drepper  <drepper@redhat.com>
3084         * inet/netinet/in.h: Define struct ip_mreq and struct
3085         ip_mreq_source.
3086         Define struct group_req and struct group_source_req.
3087         * sysdeps/unix/sysv/linux/bits/in.h: Define IP_UNBLOCK_SOURCE,
3088         IP_BLOCK_SOURCE, IP_ADD_SOURCE_MEMBERSHIP,
3089         IP_DROP_SOURCE_MEMBERSHIP, IP_MSFILTER, MCAST_JOIN_GROUP,
3090         MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, MCAST_LEAVE_GROUP,
3091         MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP, and
3092         MCAST_MSFILTER.
3093         Define MCAST_INCLUDE and MCAST_EXCLUDE.
3095         * iconvdata/gconv-modules: Add alias for IBM874 [BZ #244].
3097 2004-07-19  Jakub Jelinek  <jakub@redhat.com>
3099         [BZ #258]
3100         * math/libm-test.inc (max_value, min_value): New variables.
3101         (initialize): Initialize them.
3102         (pow_test): Add a couple of new tests.
3103         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Don't generate invalid
3104         exception if |y| >= 1U<<31.
3105         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Don't generate invalid
3106         exception if |y| >= 1L<<63.
3107         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
3108         If y*log2(x) overflows to +-inf, return still +inf/+0 instead of NaN.
3109         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
3111 2004-07-18  Ulrich Drepper  <drepper@redhat.com>
3113         * nscd/pwdcache.c (cache_addpw): Optimize case of unsuccessful
3114         lookup a bit.
3115         * nscd/grpcache.c (cache_addgr): Likewise.
3116         * nscd/hstcache.c (cache_addhst): Likewise.
3118 2004-07-10  GOTO Masanori  <gotom@debian.or.jp>
3120         * sysdeps/s390/s390-32/elf/start.S: Remove symbol _fp_hw.
3121         * sysdeps/s390/s390-64/elf/start.S: Likewise.
3123 2004-04-16  Andreas Schwab  <schwab@suse.de>
3125         * sysdeps/ia64/bits/atomic.h: Cast first argument of
3126         __sync_bool_compare_and_swap_si correct to void*.
3128 2004-07-17  Ulrich Drepper  <drepper@redhat.com>
3130         * iconv/iconv_prog.c (print_known_names): Make machine-readable
3131         output even less cluttered.
3133 2004-07-16  Steven Munroe  <sjmunroe@us.ibm.com>
3135         [BZ #269]
3136         * setjmp/Makefile (tests): Add bug269-setjmp.
3137         * setjmp/bug269-setjmp.c: New file.
3138         * sysdeps/powerpc/powerpc64/__longjmp-common.S [SHARED && !IS_IN_rtld]:
3139         Store R2 from jmpbuf in callers TOC save area.
3140         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [SHARED && !IS_IN_rtld]:
3141         Store R2 in TOC save area.
3142         * sysdeps/powerpc/powerpc64/setjmp-common.S [SHARED && !IS_IN_rtld]:
3143         Copy TOC save area from previous frame as R2 (TOC) in jmpbuf.
3145 2004-07-16  Jakub Jelinek  <jakub@redhat.com>
3147         * locale/newlocale.c: Include bits/libc-lock.h.
3148         (__libc_setlocale_lock): Extern decl.
3149         (__newlocale): Use it.
3150         Reported by Ulrich Weigand <Ulrich.Weigand@de.ibm.com>.
3152 2004-07-15  Jakub Jelinek  <jakub@redhat.com>
3154         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Remove
3155         static inline __attribute ((always_inline)).  Don't define if
3156         NO_CANCELLATION.
3157         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
3158         __fcntl_nocancel.
3159         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c (__fcntl_nocancel):
3160         Remove static inline __attribute ((always_inline)).  Don't define
3161         if NO_CANCELLATION.
3162         (__libc_fcntl): Use INLINE_SYSCALL directly instead of
3163         __fcntl_nocancel.
3164         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Define to
3165         __libc_fcntl if NO_CANCELLATION and __ASSUME_FCNTL64 == 0.
3166         Don't define at all if NO_CANCELLATION and __ASSUME_FCNTL64 > 0.
3167         (__libc_fcntl): Don't define if __fcntl_nocancel is a macro.
3169         [BZ #262]
3170         * sysdeps/i386/elf/start.S (_start): Use @GOT instead of @GOTOFF
3171         for main.
3172         * elf/Makefile: Add rules to build and run tst-pie1.
3173         * elf/tst-pie1.c: New test.
3174         * elf/tst-piemod1.c: New file.
3176 2004-07-14  Jakub Jelinek  <jakub@redhat.com>
3178         [BZ #266]
3179         * manual/string.texi (l64a): Note that the static buffer is 7 bytes
3180         long.  Rewrite example code so that it takes into account l64a output
3181         shorter than 6 characters.
3182         Reported by Julian Graham <julian.graham@aya.yale.edu>.
3184 2004-07-14  Kaz  Kojima  <kkojima@rr.iij4u.or.jp>
3186         * sysdeps/sh/dl-machine.h: Don't reset _dl_starting_up here.
3187         (elf_machine_rela_relative): Remove unused valiable.
3189 2004-07-12  Paul Eggert  <eggert@cs.ucla.edu>
3191         [BZ #263]
3192         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Don't store
3193         outside the buffer if the read returns 0.  __strtod_l can't set
3194         endp to NULL, so remove a test for that case.
3196 2004-07-12  Roland McGrath  <roland@redhat.com>
3198         * manual/signal.texi (Interrupted Primitives): Make clear that
3199         TEMP_FAILURE_RETRY evaluates its expression as long int and compares
3200         it to -1 to define "failure".
3202 2004-07-10  Ulrich Drepper  <drepper@redhat.com>
3204         * elf/ldconfig.c: Define PROCINFO_CLASS as static before including
3205         ldsodefs.h.
3206         * sysdeps/generic/ldsodefs.h: Only define PROCINFO_CLASS if it is not
3207         already defined.
3208         * sysdeps/i386/dl-procinfo.c: Define PROCINFO_CALLS only if not
3209         already defined.
3211         * elf/rtld.c (print_statistics): Mark with noinline attribute.
3212         * sysdeps/i386/dl-machine.h (elf_machine_rel): Mark with always_inline
3213         attribute.
3214         (elf_machine_rel_relative): Likewise.
3216         * include/string.h: Add libc_hidden_proto for __strtok_r and
3217         __strsep_g.
3218         * sysdeps/generic/strsep.c: Add libc_hidden_def.
3219         * sysdeps/generic/strtok_r.c: Likewise.
3220         * sysdeps/i386/strtok_r.S: Add alias for internal symbol.
3221         * sysdeps/i386/i686/strtok_r.S: Likewise.
3222         * sysdeps/x86_64/strtok_r.S: Likewise.
3224 2004-07-09  Alexandre Oliva  <aoliva@redhat.com>
3226         * inet/getnetgrent_r.c (internal_setnetgrent): Make it hidden
3227         instead of internal-linkage, such that we can alias to it.
3228         (internal_endnetgrent, internal_getnetgrent_r): Likewise.
3230 2004-07-09  Ulrich Drepper  <drepper@redhat.com>
3232         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Move attribute
3233         to the front for gcc 3.5+.
3234         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
3235         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
3236         * include/fcntl.h: Don't declare __fcntl_nocancel here if
3237         NO_CANCELLATION is defined.
3239 2004-07-07  Jakub Jelinek  <jakub@redhat.com>
3241         * elf/dl-fini.c (_dl_fini): Add nloaded variable, load
3242         GL(dl_nloaded) into it while still in critical section.
3244 2004-07-06  Thorsten Kukuk  <kukuk@suse.de>
3246         * nss/getent.c (print_group, print_passwd): Use %lu format for
3247         `unsigned long int' values.
3249         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Fix syntax
3250         error typos in goto statements.
3252 2004-07-07  Roland McGrath  <roland@frob.com>
3254         * Makefile (dist-separate): New variable.
3255         (glibc-%.tar rule): Make separate tar files for add-ons listed there.
3256         Depend on their configure files.
3257         (dist-do-separate-dirs): New canned sequence to do that.
3258         (dist-separate-libidn, dist-separate-linuxthreads): New variables.
3259         (dist): Depend on add-on tar files based on $(dist-separate).
3260         (dist-version): New variable, default to $(version).
3261         (tag-for-dist, dist): Use that in place of $(version) in deps.
3263 2004-07-07  Ulrich Drepper  <drepper@redhat.com>
3265         * elf/dl-fini.c (_dl_fini): Move the unlock of the ld.so lock
3266         before the loop running the destructors.
3268 2004-05-18  Andreas Schwab  <schwab@suse.de>
3270         * elf/dl-load.c (_dl_map_object_from_fd): Use the end address of
3271         the first segment for mprotect, not l_text_end.
3273 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
3275         * elf/dl-profile.c (_dl_start_profile): Compact error handling.
3276         Remove hashfraction variable.  Make kcount and kcountsize local
3277         variables.
3279         * elf/dl-init.c: Don't define and use _dl_starting_up if
3280         HAVE_INLINED_SYSCALLS is defined and the variable is not used.
3281         * elf/dl-support.c: Likewise.
3282         * elf/rtld.c: Likewise.
3283         * elf/dl-misc.c (_dl_debug_vdprintf): Use writev syscall directly
3284         if HAVE_INLINED_SYSCALLS is defined.
3285         * sysdeps/powerpc/powerpc64/dl-machine.h: Don't reset _dl_starting_up
3286         here.
3287         * sysdeps/powerpc/powerpc32/dl-start.S: Likewise.
3288         * sysdeps/unix/sysv/linux/configure.in: Define HAVE_INLINED_SYSCALLS.
3289         * config.h.in: Add entry for HAVE_INLINED_SYSCALLS.
3291         * sysdeps/posix/profil.c: If compiled for ld.so, omit code which
3292         is needed to stop profiling.
3293         * elf/dl-open.c (dl_open_worker): If a newly opened object is to be
3294         profile make sure it cannot be unloaded.
3296         * sysdeps/unix/sysv/linux/dl-origin.c: Inline readlink syscall.
3298         * sysdeps/unix/sysv/linux/fcntl.c: If compiled without cancellation
3299         support, make sure the helper function is inlined.
3300         * sysdeps/unix/sysv/linux/pread.c: Likewise.
3301         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
3302         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
3303         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
3305 2004-07-05  Jakub Jelinek  <jakub@redhat.com>
3307         * include/string.h (ffs): Add libc_hidden_builtin_proto.
3308         * sysdeps/rs6000/ffs.c (ffs): Add libc_hidden_builtin_def.
3309         * sysdeps/alpha/alphaev67/ffs.S (ffs): Likewise.
3310         * sysdeps/alpha/ffs.S (ffs): Likewise.
3311         * sysdeps/s390/ffs.c (ffs): Likewise.
3312         * sysdeps/powerpc/ffs.c (ffs): Likewise.
3313         * sysdeps/i386/ffs.c (ffs): Likewise.
3314         * sysdeps/i386/i686/ffs.c (ffs): Likewise.
3315         * sysdeps/m68k/ffs.c (ffs): Likewise.
3316         * sysdeps/generic/ffs.c (ffs): Likewise.
3317         * sysdeps/m88k/ffs.c (ffs): Likewise.
3318         * sysdeps/am29k/ffs.c (ffs): Likewise.
3319         * sysdeps/i960/ffs.c (ffs): Likewise.
3320         * sysdeps/x86_64/ffs.c (ffs): Likewise.
3322         * Makerules (check-abi): Use diff -p -U 0 instead of diff -pu0.
3324         * sysdeps/powerpc/novmx-longjmp.c (__libc_longjmp,
3325         __libc_siglongjmp): Remove symbol_version.
3326         * sysdeps/powerpc/longjmp.c (__libc_longjmp, __libc_siglongjmp):
3327         Export @@GLIBC_PRIVATE, not @@GLIBC_2.3.4.
3328         * sysdeps/powerpc/sigjmp.c (__sigjmp_save): Use strong_alias
3329         unconditionally.
3330         * sysdeps/powerpc/novmx-sigjmp.c (__sigjmp_save): Remove.
3331         * sysdeps/powerpc/powerpc32/__longjmp.S (__longjmp): Use
3332         strong_alias instead of default_symbol_version, remove
3333         symbol_version.
3334         * sysdeps/powerpc/powerpc64/__longjmp.S (__longjmp): Likewise.
3335         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__novmx__setjmp): Change
3336         into strong_alias to __novmxsetjmp.
3337         (__vmx__setjmp): Similarly with __vmxsetjmp.
3338         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
3339         default_symbol_version and symbol_version.
3340         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__novmx__setjmp): Change
3341         into strong_alias to __novmxsetjmp.
3342         (__vmx__setjmp): Similarly with __vmxsetjmp.
3343         (__setjmp): Make it strong_alias to __vmx__setjmp, remove
3344         default_symbol_version and symbol_version.
3346         * nscd/nscd_getgr_r.c: Include stdio-common/_itoa.h.
3348 2004-07-05  Ulrich Drepper  <drepper@redhat.com>
3350         * elf/rtld.c (dl_main): Mark dyn_temp with attribute_relro.
3352 2004-07-04  Matthew Reppert  <arashi@kai.vm.bytemark.co.uk>
3354         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Use libc_hidden_ver
3355         instead of libc_hidden_def.
3357 2004-07-01  Roland McGrath  <roland@redhat.com>
3359         * aclocal.m4: Add provide for AC_CONFIG_AUX_DIR_DEFAULT.
3361         * Makeconfig ($(common-objpfx)shlib-versions.v.i): Move top-level
3362         $(..)shlib-versions file to last in deps list.  This lets add-ons give
3363         more-specific matches that override defaults in the top-level file.
3365         * sysdeps/unix/sysv/linux/configure.in: If arch_minimum_kernel was
3366         already set, don't set it or libc_cv_gcc_unwind_find_fde.
3367         * sysdeps/unix/sysv/linux/configure: Regenerated.
3369 2004-07-01  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3371         * sysdeps/s390/fpu/bits/mathinline.h [__LIBC_INTERNAL_MATH_INLINES]
3372         (__ieee754_sqrt): Define as __MATH_INLINE using sqdbr instruction.
3373         (__ieee754_sqrtf): Define as __MATH_INLINE using sqebr instruction.
3374         * sysdeps/s390/fpu/e_sqrt.c: New file.
3375         * sysdeps/s390/fpu/e_sqrtf.c: New file.
3376         * sysdeps/s390/Implies: New file.
3377         * sysdeps/s390/s390-32/Implies: Remove ieee754, move
3378         ieee754/dbl-64 and ieee754/flt-32 to s390/Implies.
3379         * sysdeps/s390/s390-64/Implies: Likewise.
3381 2004-06-30  Jakub Jelinek  <jakub@redhat.com>
3383         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Include tls.h.
3384         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
3386         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (thread_start):
3387         DO_CALL (exit, 1) instead of branching to _exit.
3388         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (thread_start):
3389         Likewise.
3391         * sysdeps/s390/fpu/bits/mathinline.h: New file.
3393         * include/glob.h (glob64): Add libc_hidden_proto.
3394         * sysdeps/generic/glob64.c (glob64): Add libc_hidden_def.
3395         * sysdeps/gnu/glob64.c (glob64): Likewise.
3396         * sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Likewise.
3398 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
3400         * sysdeps/i386/fpu/libm-test-ulps: Update for GCC 3.4.
3401         * sysdeps/s390/fpu/libm-test-ulps: Likewise.
3403 2004-06-11  Dwayne Grant McConnell  <dgm69@us.ibm.com>
3405         * sysdeps/powerpc/fpu/s_lround.c: Removed.
3406         * sysdeps/powerpc/fpu/s_lroundf.c: Removed.
3407         * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: New file.
3408         * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: New file.
3409         * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: New file.
3410         * sysdeps/powerpc/powerpc32/fpu/s_floor.S: New file.
3411         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: Removed.
3412         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: New file.
3413         * sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: New file.
3414         * sysdeps/powerpc/powerpc32/fpu/s_lround.S: New file.
3415         * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: New file.
3416         * sysdeps/powerpc/powerpc32/fpu/s_rint.S: New file.
3417         * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: New file.
3418         * sysdeps/powerpc/powerpc32/fpu/s_round.S: New file.
3419         * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: New file.
3420         * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: New file.
3422 2004-06-30  Ulrich Drepper  <drepper@redhat.com>
3424         * include/net/if.h: Handle if_nameindex and if_freenameindex with
3425         libc_proto_hidden.
3426         * sysdeps/unix/sysv/linux/netlinkaccess.h: New file.
3427         * sysdeps/unix/sysv/linux/ifaddrs.c: Export netlink handling functions.
3428         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Implement using
3429         netlink if possible.  Fall back on ioctl method if necessary.
3430         * sysdeps/unix/sysv/linux/Dist: Add netlinkaccess.h.
3432         * include/unistd.h: Declare __truncate.
3433         * sysdeps/generic/truncate.c: Also define __truncate.
3434         * sysdeps/mach/hurd/truncate.c: Likewise.
3435         * sysdeps/unix/common/syscalls.list: Likewise.
3436         * sysdeps/unix/sysv/linux/truncate64.c: Use __truncate, not truncate.
3438 2004-06-29  Ulrich Drepper  <drepper@redhat.com>
3440         * stdio-common/printf-parsemb.c (__parse_one_specmb): Initialize
3441         info.extra.  Patch by Marcus Meissner.
3443 2004-06-29  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3445         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
3446         Fix branch offset for a PLT entry.
3448 2004-06-20  Jim Meyering  <jim@meyering.net>
3450         * malloc/obstack.h (obstack_base): Cast to `void *', to align with
3451         documentation.
3453 2004-06-28  Ulrich Drepper  <drepper@redhat.com>
3455         * inet/bug-if1.c (do_test): Simply use 0 as invalid index.
3456         Workaround for [BZ #232].
3458         * sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Use extend_alloca.
3460 2004-06-28  GOTO Masanori  <gotom@debian.or.jp>
3462         * iconv/gconv_simple.c: Use get16/put16 for user given buffer
3463         in ucs2/ucs2reverse when unaligned memory access is attempted.
3464         * iconv/tst-iconv5.c: New file.
3465         * iconv/Makefile (tests): Add tst-iconv5.
3467 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
3469         * inet/bug-if1.c: Include <string.h>.
3471 2004-06-19  Roland McGrath  <roland@redhat.com>
3473         * sysdeps/posix/waitid.c (do_waitid) [DO_WAITID]: Define function
3474         under this macro name instead.
3475         [NO_DO_WAITID]: Don't define it at all.
3476         (do_waitid) [WNOWAIT, WEXITED]: If these POSIX.1 waitid flag bits are
3477         defined, then return ENOTSUP for combinations of selection bits other
3478         than WEXITED and WEXITED|WSTOPPED, which this version cannot support.
3480         * posix/tst-waitid.c: New file.
3481         * posix/Makefile (tests): Add it.
3483 2004-06-28  Jakub Jelinek  <jakub@redhat.com>
3485         * sysdeps/unix/alpha/sysdep.h (inline_syscall6): Fix a typo.
3487         [BZ #231]
3488         * sysdeps/unix/alpha/sysdep.S (__syscall_error): Avoid !samegp
3489         relocation in librt.so.
3491         [BZ #230]
3492         * sysdeps/alpha/dl-machine.h (_dl_start_user): Use ldah/ldl to load
3493         _dl_skip_args.  Patch by Jakub Bogusz <qboosh@pld-linux.org>.
3495 2004-06-27  Ulrich Drepper  <drepper@redhat.com>
3497         * elf/ldconfig.c (add_dir): Take chroot into account.
3498         Based on changes by HJ Lu and Hideki Iwamoto.
3500         * nscd/connections.c (invalidate_cache): If the host cache has to
3501         be invalidated, re-read resolv.conf.
3503         * resolv/resolv.h (RES_NOIP6DOTINT): Define.
3504         * resolv/res_init.c (res_setoptions): Handle no-ip6-dotint option.
3505         * resolv/gethnamaddr.c (gethostbyaddr): Don't lookup with .ip6.int
3506         if RES_NOIP6DOTINT flag is set.
3507         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
3509 2004-06-25  Jakub Jelinek  <jakub@redhat.com>
3511         * sysdeps/unix/sysv/linux/powerpc/fcntl.c: Move to...
3512         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fcntl.c: ... here.
3513         * sysdeps/unix/sysv/linux/powerpc/lockf64.c: Move to...
3514         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lockf64.c: ... here.
3515         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: New file.
3517         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_GETLK, F_SETLK,
3518         F_SETLKW): Fix values for -m32 -D_FILE_OFFSET_BITS=64.
3520 2004-06-21  Jakub Jelinek  <jakub@redhat.com>
3522         [BZ #231]
3523         * sysdeps/unix/alpha/Makefile: New file.
3524         * sysdeps/unix/alpha/rt-sysdep.S: New file.
3525         Reported by Jakub Bogusz <qboosh@pld-linux.org>.
3527 2004-06-18  Ulrich Drepper  <drepper@redhat.com>
3529         * sysdeps/posix/getaddrinfo.c (gaih_inet): For AI_CANONNAME,
3530         determine the canonical name only for the first returned entry.
3532         * inet/bug-if1.c: New file.
3533         * inet/Makefile (tests): Add bug-if1.
3535 2004-06-18  Roland McGrath  <roland@frob.com>
3537         * Makerules (compile-mkdep-flags): Add -MT $@.
3539         * Makefile (dist, tag-for-dist): New targets.
3540         (files-for-dist, tag-of-stem): New variables.
3541         (glibc-%.tar glibc-linuxthreads-%.tar): New pattern rule.
3542         Make tar files using cvs export.
3543         (%.bz2, %.gz, tag-%): New pattern rules.
3544         (distribute): Variable removed.
3545         (+subdir_targets): Remove distinfo targets.
3546         (echo_subdirs, echo-distinfo, parent_echo-distinfo): Targets removed.
3547         (rpm/%): Pattern rule removed.
3548         * rpm/Makefile, rpm/rpmrc, rpm/template: Ancient cruft files removed.
3549         * Rules (subdir_echo-headers, subdir_echo-distinfo, subdir_dist):
3550         Targets removed.
3551         * Makerules (dist, subdir_distinfo): Targets removed.
3552         ($(objpfx)distinfo): Depend on $(distribute).
3553         * Make-dist: File removed.
3555         * NEWS: Fix a typo.  Update bug-reporting instructions.
3557 2004-06-17  Thorsten Kukuk  <kukuk@suse.de>
3559         * sysdeps/unix/sysv/linux/sched_setaffinity.c
3560         (__sched_setaffinity_new): Set errno to EINVAL and return -1 if
3561         cpuset is wrongly set.
3563 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
3565         * sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
3566         for POWER4 machines.
3568 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
3570         [BZ #218]
3571         * sunrpc/pmap_prot2.c (xdr_pmaplist): When freeing, remember pml_next
3572         in a local variable, point rp to that local variable afterwards.
3574 2004-06-11  Jakub Jelinek  <jakub@redhat.com>
3576         * sysdeps/ieee754/dbl-64/e_sqrt.c (__ieee754_sqrt): Handle special
3577         cases properly.
3579 2004-06-17  Ulrich Drepper  <drepper@redhat.com>
3581         * sysdeps/unix/sysv/linux/if_index.c (if_indextoname): Correct
3582         error value for unknown interface. [BZ #198]
3584 2004-06-13  Jakub Jelinek  <jakub@redhat.com>
3586         * sysdeps/i386/bits/string.h (memcpy): Add () around arguments.
3587         (memchr, __memrchr, strlen, strcmp, strncmp, __strchr_g, __strchr_c,
3588         __strchrnul_g, __strchrnul_c, strspn, strcspn, strpbrk): Add memory
3589         the asm uses as its input, either of size __n where __n is known or
3590         0xfffffff.
3591         (strstr): Add "memory" clobber.
3593 2004-06-14  Jakub Jelinek  <jakub@redhat.com>
3595         [BZ #219]
3596         * nss/nsswitch.c (free_mem): Don't try to close a library handle
3597         if the handle is invalid.  Patch by David Kimdon <kimdon@esrf.fr>.
3599 2004-06-11  Dmitry V. Levin  <ldv@altlinux.org>
3601         [BZ #217]
3602         * debug/xtrace.sh: Fix typo in error diagnostics.
3604 2004-06-14  Andreas Schwab  <schwab@suse.de>
3606         * stdio-common/psignal.c (psignal): Don't use BUF when asprintf
3607         failed.
3609 2004-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
3611         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Fix pasto
3612         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
3613         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Fix pasto
3614         that clobbers r19.
3615         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Fix pasto
3616         that clobbers r19.  Fix pasto that overflowed sigcontext.v_reserve.
3617         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S:
3618         Fix setting of sigcontext.v_regs.  Fix pasto that clobbers r19.
3619         Fix pasto that overflowed sigcontext.v_reserve.
3620         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S:
3621         Fix pasto that clobbers r19.
3622         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Fix setting
3623         of sigcontext.v_regs.  Fix pasto that clobbers r19.  Fix pasto that
3624         overflowed sigcontext.v_reserve.
3626 2004-05-04  H.J. Lu  <hongjiu.lu@intel.com>
3628         [BZ #150]
3629         * sysdeps/generic/strtol_l.c (DEF): Use ".gnu.linkonce.r."
3630         instead of ".gnu.linkonce.ro." as the prefix for linkonce
3631         read-only section name.
3633 2004-06-14  Richard Henderson  <rth@redhat.com>
3635         * sysdeps/alpha/div_libc.h (_ITOFS): Use "sp" not "$sp".
3636         (_ITOFT, _FTOIT, _ITOFT2): Likewise.
3638 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
3640         * sysdeps/s390/s390-32/backtrace.c (init): Guard with #ifdef SHARED.
3641         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
3642         (__backtrace): Don't call init #ifndef SHARED.
3643         * sysdeps/s390/s390-64/backtrace.c (init): Guard with #ifdef SHARED.
3644         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
3645         (__backtrace): Don't call init #ifndef SHARED.
3646         * sysdeps/ia64/backtrace.c (init): Guard with #ifdef SHARED.
3647         (unwind_backtrace, unwind_getip): Define #ifndef SHARED.
3648         (__backtrace): Don't call init #ifndef SHARED.
3650 2004-06-11  Roland McGrath  <roland@redhat.com>
3652         * sysdeps/arm/strlen.S [__ARMEB__]: Compute correctly for big-endian.
3653         From Krzysztof Halasa <khc@pm.waw.pl>.
3655 2004-06-10  Jakub Jelinek  <jakub@redhat.com>
3657         * elf/tls-macros.h [__s390x__] (TLS_LD, TLS_GD): Clobber also r14.
3659 2004-06-08  Jakub Jelinek  <jakub@redhat.com>
3661         [BZ #199]
3662         * crypt/md5-crypt.c (__md5_crypt): Only update buflen if realloc
3663         succeeds.  Reported by Miles Ohlrich <miles@cray.com>.
3665         * elf/chroot_canon.c (chroot_canon): Avoid segfault if first malloc
3666         fails.  Avoid memory leak if realloc fails.
3668 2004-06-09  Jakub Jelinek  <jakub@redhat.com>
3670         * sysdeps/generic/setenv.c (setenv): Return -1/EINVAL if name is
3671         NULL, "" or contains '=' character in it.  Reported by
3672         Michael T Kerrisk <mtk-lists@gmx.net>.
3673         * stdlib/tst-environ.c: Include errno.h.
3674         (main): Add tests for these arguments to setenv/unsetenv.
3676 2004-06-07  Roland McGrath  <roland@frob.com>
3678         * NEWS: Update bug reporting instructions.  Fix some typos.
3680 2004-06-05  Ulrich Drepper  <drepper@redhat.com>
3682         * stdio-common/_itoa.h: Don't expand _itoa inline for libc.
3683         * stdio-common/_itoa.c: Add _itoa implementation.
3685         * nscd/nscd_gethst_r.c (__nscd_open_socket): Change implementation
3686         to also send request.  Add parameter to allow this.
3687         Change callers.
3688         * nscd/nscd_getgr_r.c: Change __nscd_open_socket caller.
3689         * nscd/nscd_getpw_r.c: Likewise.
3690         * nscd/nscd-client.h: Change __nscd_open_socket prototype.
3692 2004-06-05  Andreas Jaeger  <aj@suse.de>
3694         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
3695         Handle more than 6 args correctly.  Based on a patch by Masahide
3696         Washizawa <washi@jp.ibm.com>.
3698 2004-06-04  Ulrich Drepper  <drepper@redhat.com>
3700         * nscd/nscd_gethst_r.c (nscd_gethst_r): Use __nss_not_use_nscd_hosts
3701         in all places, not __nss_not_use_nscd_group.
3702         Reported by Philippe Gregoire.
3704 2004-06-03  Ulrich Drepper  <drepper@redhat.com>
3706         * sysdeps/i386/i486/bits/atomic.h: Optimize a bit.
3708 2004-05-07  Dmitry V. Levin  <ldv@altlinux.org>
3710         * argp/argp-help.c (__argp_error, __argp_failure): Check result
3711         of __asprintf call and don't use string if it failed.
3712         * stdio-common/psignal.c (psignal): Likewise.
3713         * locale/programs/localedef.c (more_help): Likewise.
3714         * resolv/res_hconf.c (arg_service_list, arg_trimdomain_list,
3715         arg_bool, parse_line): Check result of __asprintf calls and
3716         don't use string if they failed.
3717         * sunrpc/svc_simple.c (registerrpc, universal): Likewise.
3718         * elf/ldconfig.c (parse_conf_include): Check result of __asprintf
3719         call and exit if it failed.
3721 2004-05-10  Jakub Jelinek  <jakub@redhat.com>
3723         * sysdeps/posix/sysconf.c (__sysconf) <cases _SC_REALTIME_SIGNALS,
3724         _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
3725         _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES,
3726         _SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION,
3727         _SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS,
3728         _SC_THREADS, _SC_THREAD_SAFE_FUNCTIONS, _SC_THREAD_ATTR_STACKADDR,
3729         _SC_THREAD_ATTR_STACKSIZE, _SC_THREAD_PRIORITY_SCHEDULING,
3730         _SC_THREAD_PRIO_INHERIT, _SC_THREAD_PRIO_PROTECT,
3731         _SC_THREAD_PROCESS_SHARED>: Return _POSIX_* value instead of 1.
3732         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf)
3733         <case _SC_MONOTONIC_CLOCK>: Return _POSIX_VERSION instead of 1.
3735 2004-05-07  Jeroen Dekkers  <jeroen@dekkers.cx>
3737         * sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Add
3738         -momit-leaf-frame-pointer.
3740         * inet/test-ifaddrs.c (addr_string): Surround AF_PACKET case with
3741         #ifdef AF_PACKET.
3743         * sysdeps/mach/hurd/getcwd.c
3744         (_hurd_canonicalize_directory_name_intern): Only realloc when
3745         size is <= 0.
3747         * sysdeps/mach/hurd/mmap.c (__mmap): Fail when addr or offset
3748         isn't page aligned.
3750         * sysdeps/mach/hurd/spawni.c (EXPAND_DTABLE): Set dtablesize to
3751         new size.
3753         * sysdeps/mach/hurd/Versions (GLIBC_PRIVATE): Add __libc_read,
3754         __libc_write and __libc_lseek64.
3756 2004-05-29  Roland McGrath  <roland@redhat.com>
3758         * elf/Makefile (shared-only-routines): Add dl-caller.
3760 2004-05-28  Ulrich Drepper  <drepper@redhat.com>
3762         * sysdeps/powerpc/configure.in: New file.
3764 2004-05-28  Steven Munroe  <sjmunroe@us.ibm.com>
3766         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Add .machine
3767         "altivec" to enable VMX instructions.
3768         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
3769         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
3770         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
3771         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
3772         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
3773         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
3774         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
3775         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
3776         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
3778 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
3780         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Define using
3781         __builtin_expm1l for GCC 3.5+.
3782         (__expl): Define using __builtin_expl for GCC 3.4+.
3783         (exp, expf, expl): Don't define for GCC 3.4+.
3784         (tan, tanf, tanl): Don't define for GCC 3.5+.
3785         (__atan2l): Define using __builtin_atan2l for GCC 3.4+.
3786         (atan2, atan2f, atan2l): Don't define for GCC 3.4+ or !__FAST_MATH__.
3787         (fmod, fmodf, fmodl): Don't define for GCC 3.5+ or !__FAST_MATH__.
3788         (fabsf, fabsl): Only provide if __USE_MISC or __USE_ISOC99.
3789         (sin, sinf, sinl, cos, cosf, cosl, log, logf, logl): Don't define
3790         for GCC 3.4+.
3791         (log10, log10f, log10l, asin, asinf, asinl, acos, acosf, acosl):
3792         Don't define for GCC 3.5+.
3793         (atan, atanf, atanl): Don't define for GCC 3.4+ or !__FAST_MATH__.
3794         (log1p, log1pf, log1pl, logb, logbf, logbl, log2, log2f, log2l): Don't
3795         define for GCC 3.5+.
3796         (drem, dremf, dreml): Don't define for GCC 3.5+ or !__FAST_MATH__.
3797         * sysdeps/sparc/fpu/bits/mathinline.h (sqrt, sqrtf, sqrtl): Don't
3798         define for GCC 3.2+.
3800 2004-05-27  Jakub Jelinek  <jakub@redhat.com>
3802         * string/bits/string2.h (__bzero): Define even for GCC 3.0+.
3803         * sysdeps/alpha/stpcpy.S (stpcpy): Add libc_hidden_builtin_def.
3804         * sysdeps/alpha/alphaev67/stpcpy.S (stpcpy): Likewise.
3805         * sysdeps/powerpc/powerpc32/stpcpy.S (stpcpy): Likewise.
3806         * sysdeps/powerpc/powerpc64/stpcpy.S (stpcpy): Likewise.
3807         * sysdeps/sparc/sparc32/stpcpy.S (stpcpy): Likewise.
3808         * sysdeps/sparc/sparc64/stpcpy.S (stpcpy): Likewise.
3809         * sysdeps/i386/stpcpy.S (stpcpy): Likewise.
3810         * sysdeps/i386/i586/stpcpy.S (stpcpy): Likewise.
3811         * sysdeps/generic/stpcpy.c (stpcpy): Likewise.
3812         * sysdeps/x86_64/stpcpy.S (stpcpy): Likewise.
3813         * sysdeps/i386/i586/memcpy.S (memcpy): Remove
3814         libc_hidden_builtin_def if MEMPCPY_P.
3815         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
3816         * sysdeps/i386/i686/mempcpy.S (mempcpy): Add libc_hidden_builtin_def.
3817         * sysdeps/i386/i586/mempcpy.S (mempcpy): Likewise.
3818         * sysdeps/generic/mempcpy.c (mempcpy): Likewise.
3819         * sysdeps/x86_64/mempcpy.S (mempcpy): Likewise.
3821 2004-05-26  Roland McGrath  <roland@frob.com>
3823         * sysdeps/generic/bits/in.h
3824         (IMPLINK_IP, IMPLINK_LOWEXPER, IMPLINK_HIGHEXPER): Macros removed.
3825         These are long obsolete in BSD systems where they originated.
3826         * conform/data/netinet/in.h-data: Remove `allow IMPLINK_*'
3828 2004-05-26  Jakub Jelinek  <jakub@redhat.com>
3830         * include/string.h (mempcpy, stpcpy): Add libc_hidden_builtin_proto.
3831         * string/bits/string2.h (memset): Disable macro for GCC 3.0+.
3832         (__mempcpy): Use __builtin_mempcpy for GCC 3.4+.
3833         (strchr): For GCC 3.2+, only use __rawmemchr if second argument is
3834         constant '\0' and first argument is not constant.
3835         (__stpcpy): Use __builtin_stpcpy for GCC 3.4+.
3836         (strncpy): Remove #ifdef _USE_STRING_ARCH_mempcpy variant.
3837         For GCC 3.2+ use __builtin_strncpy.
3838         (strncat): For GCC 3.2+ use __builtin_strncat.
3839         (strcmp): For GCC 3.2+ use __builtin_strcmp if both arguments are
3840         constant.
3841         (strcspn, strspn, strpbrk): For GCC 3.2+, use builtin function
3842         if both arguments are constant.
3844 2004-05-26  Ulrich Drepper  <drepper@redhat.com>
3846         * nss/nss_files/files-hosts.c: Fix condition for looking up IPv4
3847         mapped addresses in gethostbyaddr.
3849 2004-05-25  Ulrich Drepper  <drepper@redhat.com>
3851         * nss/digits_dots.c (__nss_hostname_digits_dots): Remove typep and
3852         flags parameter, convert afp to simple int parameter.  Adjust code.
3853         typep was never != NULL and flags therefore also unused.  *afp is
3854         never modified.
3855         * nss/nsswitch.h: Adjust __nss_hostname_digits_dots prototype.
3856         * nss/getXXbyYY.c: Remove HAVE_TYPE handling.  Adjust af parameter
3857         handling for __nss_hostname_digits_dots calls.
3858         * nss/getXXbyYY_r.c: Likewise.
3860         * elf/dl-load.c (_dl_map_object_from_fd): Map DSOs with MAP_DENYWRITE.
3862 2004-05-25  Steven Munroe  <sjmunroe@us.ibm.com>
3864         * sysdeps/powerpc/fpu/Makefile: Make ld.so a dependency of libm.so.
3865         * sysdeps/powerpc/fpu/bits/mathinline.h [__LIBC_INERNAL_MATH_INLINES]
3866         (__ieee754_sqrt): Define as __MATH_INLINE using fsqrt instruction.
3867         (__ieee754_sqrtf): Define as __MATH_INLINE using fsqrts instruction.
3868         * sysdeps/powerpc/fpu/e_sqrt.c (__slow_ieee754_sqrt): Moved
3869         implementation from w_sqrt.c.
3870         * sysdeps/powerpc/fpu/e_sqrtf.c (__slow_ieee754_sqrtf): Moved
3871         implementation from w_sqrtf.c.
3872         * sysdeps/powerpc/fpu/w_sqrt.c (__sqrt): Wrapper implementation
3873         using inline __ieee754_sqrt().
3874         * sysdeps/powerpc/fpu/w_sqrtf.c (__sqrtf): Wrapper implementation
3875         using inline __ieee754_sqrtf().
3876         * sysdeps/powerpc/powerpc32/sysdep.h [__ASSEMBLER__]: Include
3877         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
3878         * sysdeps/powerpc/sysdep.h [__ASSEMBLER__] (PPC_FEATURE_*): Define
3879         PPC_FEATURE_*  independent of __ASSEMBLER__.
3881 2004-05-25  Jakub Jelinek  <jakub@redhat.com>
3883         * sysdeps/pthread/aio_notify.c: Use <> instead of "" for aio_misc.h
3884         include.
3885         (aio_start_notify_thread): Define if not defined.
3886         (notify_func_wrapper): Use it.
3887         * sysdeps/pthread/aio_misc.c: Use <> instead of "" for aio_misc.h
3888         include.
3889         (aio_create_helper_thread): Define if not defined.
3890         (__aio_create_helper_thread): New function.
3891         (__aio_enqueue_request): Use aio_create_helper_thread.
3893         * nis/ypclnt.c (ypall_data, ypall_foreach): Remove.
3894         (struct ypresp_all_data): New type.
3895         (__xdr_ypresp_all): Change second argument to
3896         struct ypresp_all_data *.  Replace ypall_foreach and
3897         ypall_data with objp->foreach and objp->data.
3898         (yp_all): Remove status variable, add data.  Replace
3899         all uses of status with data.status.  Initialize data.foreach
3900         and data.data instead of ypall_foreach and ypall_data.
3902 2004-05-24  Jakub Jelinek  <jakub@redhat.com>
3904         * elf/dl-lookup.c (add_dependency): Set DF_1_NODELETE bit
3905         in l_flags_1, not in l_flags.
3907 2004-04-10  Robert Millan  <robertmh@gnu.org>
3909         * sysdeps/unix/sysv/linux/bits/in.h: Cosmetic fixes to get in sync
3910         with sysdeps/generic/bits/in.h.
3912 2004-05-25  Roland McGrath  <roland@frob.com>
3914         * sysdeps/generic/unwind-dw2-fde-glibc.c: Change copyright terms from
3915         GCC GPL to standard glibc LGPL.
3917 2004-05-24  Ulrich Drepper  <drepper@redhat.com>
3919         * manual/string.texi (Copying and Concatenation): Fixed second
3920         concat example.
3921         Reported by Fabian Pietsch <fabian@zzznowman.dyndns.org>.
3923 2004-05-23  Ulrich Drepper  <drepper@redhat.com>
3925         * malloc/obstack.c: Don't allow linking with _obstack.
3927 2004-05-23  Andreas Schwab  <schwab@suse.de>
3929         * sysdeps/m68k/m68020/bits/atomic.h: Use "+m" constraint instead
3930         of separate "m" constraints.
3932 2004-05-15  Chris Demetriou  <cgd@broadcom.com>
3934         * sysdeps/mips/dl-machine.h (ELF_DL_FRAME_SIZE)
3935         (ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS): For the N32
3936         and 64 ABIs, save and restore regs $10 and $11 (a6 and a7).
3938 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
3940         * malloc/obstack.c (_obstack) [!defined _LIBC]: Remove; not used.
3941         Add comment explaining why libc still defines it.
3943 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
3945         * malloc/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
3946         obstack_alignment_mask, obstack_alloc, obstack_base,
3947         obstack_blank, obstack_blank_fast, obstack_chunk_size,
3948         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
3949         obstack_grow0, obstack_init, obstack_int_grow,
3950         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
3951         obstack_next_free, obstack_object_size, obstack_ptr_grow,
3952         obstack_ptr_grow_fast, obstack_room): Remove declarations of
3953         nonexistent functions.
3955 2004-05-18  Steven Munroe  <sjmunroe@us.ibm.com>
3957         * sysdeps/powerpc/powerpc64/sysdep.h [__ASSEMBLER__]: Include
3958         <sysdeps/powerpc/sysdep.h> independent of __ASSEMBLER__.
3959         [PIC]: Redundent for powerpc64, removed.
3960         (ENTRY): Generate size and alignment for opd entry.
3961         (EALIGN): Generate size and alignment for opd entry.
3962         (END): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
3963         (END_GEN_TB): Use DOT_LABEL in ASM_SIZE_DIRECTIVE.
3965 2004-05-19  Ulrich Drepper  <drepper@redhat.com>
3967         * misc/regexp.h: Say the functions have been withdrawn.
3969         * wcsmbs/tst-wcpncpy.c: Add more tests.
3971 2004-05-18  Roland McGrath  <roland@frob.com>
3973         * sysdeps/generic/unwind.h: Change copyright terms from GCC GPL to
3974         standard glibc LGPL.
3975         * sysdeps/generic/unwind-dw2.c: Likewise.
3976         * sysdeps/generic/unwind-dw2-fde.c: Likewise.
3977         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
3978         * sysdeps/generic/unwind-pe.h: Likewise.
3980 2004-05-15  Petter Reinholdtsen  <pere@hungry.com>
3982         * locale/iso-3166.def: Remove YUGOSLAVIA and insert "SERBIA AND
3983         MONTENEGRO" which have taken over the code 819.  Patch from
3984         Danilo Segan. [BZ #40]
3986 2004-05-15  Jakub Jelinek  <jakub@redhat.com>
3988         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
3989         (SYSCALL_ERROR_HANDLER): Rename __sparc.get_pic.l7 to
3990         __sparc_get_pic_l7.
3992 2004-05-15  Joseph S. Myers  <jsm@polyomino.org.uk>
3994         * catgets/gencat.c: Update bug reporting instructions.
3995         * csu/version.c: Likewise.
3996         * debug/catchsegv.sh: Likewise.
3997         * debug/pcprofiledump.c: Likewise.
3998         * debug/xtrace.sh: Likewise.
3999         * elf/ldd.bash.in: Likewise.
4000         * iconv/iconv_prog.c: Likewise.
4001         * iconv/iconvconfig.c: Likewise.
4002         * locale/programs/locale.c: Likewise.
4003         * locale/programs/localedef.c: Likewise.
4004         * login/programs/pt_chown.c: Likewise.
4005         * malloc/memusage.sh: Likewise.
4006         * malloc/memusagestat.c: Likewise.
4007         * malloc/mtrace.pl: Likewise.
4008         * manual/crypt.texi: Likewise.
4009         * manual/install.texi: Likewise.
4010         * nss/makedb.c: Likewise.
4012 2004-05-14  Jakub Jelinek  <jakub@redhat.com>
4014         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Only
4015         CHECK_STATIC_TLS if sym != NULL.
4016         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
4017         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
4019 2004-05-12  Andreas Schwab  <schwab@suse.de>
4021         * posix/regex_internal.c (build_wcs_buffer): Also set pstr->mbs
4022         when translating.
4024 2004-05-13  H.J. Lu  <hongjiu.lu@intel.com>
4026         * Rules (xtests): Depend on tests.
4028 2004-05-13  Jakub Jelinek  <jakub@redhat.com>
4030         * libio/genops.c (_IO_default_xsputn): Avoid one overflow per char if
4031         count is negative, yet write_ptr < write_end.
4032         (_IO_default_xsgetn): Avoid one underflow per char if count is
4033         negative, yet read_ptr < read_end.
4035 2004-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
4037         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h (XTABS): Define XTABS
4038         equal to TAB3.
4040 2004-05-12  Ulrich Drepper  <drepper@redhat.com>
4042         * elf/dl-lookup.c (_dl_lookup_symbol_x): Correct _dl_signal_cerror
4043         call.
4045 2004-05-10  Roland McGrath  <roland@frob.com>
4047         * hurd/hurdlookup.c (__hurd_file_name_split): Return ENOENT for "".
4048         (__hurd_directory_name_split): Likewise.
4050 2004-05-10  Ulrich Drepper  <drepper@redhat.com>
4052         * po/fr.po: Update from translation team.
4054 2004-05-10  Andreas Jaeger  <aj@suse.de>
4056         * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
4057         Correctly compute alignment.
4058         Patch by Michael Matz <matz@suse.de>.
4060 2004-05-09  Ulrich Drepper  <drepper@redhat.com>
4062         * sysdeps/generic/sigpause.c: Prevent sigpause prototype.
4063         * sysdeps/posix/sigpause.c: Likewise.
4064         * signal/signal.h: Don't define sigpause macro unless needed.
4066 2004-05-08  Jakub Jelinek  <jakub@redhat.com>
4068         * configure.in (libc_cv_libgcc_s_suffix): New check.
4069         (libc_cv_as_needed): Use -lgcc_s$libc_cv_libgcc_s_suffix.
4070         * config.make.in (libgcc_s_suffix): Set.
4071         * Makeconfig (libgcc_eh): Use -lgcc_s$(libgcc_s_suffix).
4073 2004-05-08  Ulrich Drepper  <drepper@redhat.com>
4075         * signal/signal.h: Use BSD sigpause only if BSD behavior is preferred.
4077 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
4079         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_1,
4080         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
4081         Load argument values into temporary variables.
4082         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_1,
4083         LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5, LOADARGS_6):
4084         Likewise.
4086 2004-05-07  Ulrich Drepper  <drepper@redhat.com>
4088         * sysdeps/unix/sysv/linux/Makefile: mq_send.c and mq_receive.c
4089         need to be compiled with exceptions.
4091 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
4093         * sysdeps/unix/sysv/linux/ifreq.c (__ifreq): Fix memory handling.
4094         * sysdeps/generic/ifreq.c (__ifreq): Fix memory handling.
4096         * resolv/res_hconf.c (_res_hconf_reorder_addrs): Make clear that
4097         realloc cannot fail.
4099         * nss/nss_files/files-netgrp.c (EXPAND): Free buffer which cannot
4100         be expanded.
4102         * nis/nis_table.c: Clean up memory handling.
4103         * nis/nis_subr.c (nis_getnames): Clean up memory handling.
4104         * nis/nis_removemember.c (nis_removemember): Add comment
4105         explaining use of realloc.
4107         * math/tgmath.h (fabs): Use __TGMATH_UNARY_REAL_IMAG_RET_REAL.
4108         (carg): Likewise.
4109         Patch by Lev S Bishop <lev.bishop@yale.edu>.
4111         * math/bug-tgmath1.c (main): Test fabs and carg as well.
4113 2004-05-06  Richard Henderson  <rth@redhat.com>
4115         * elf/elf.h (AT_L1I_CACHESHAPE, AT_L1D_CACHESHAPE,
4116         AT_L2_CACHESHAPE, AT_L3_CACHESHAPE): New.
4117         * sysdeps/unix/sysv/linux/alpha/Versions: Export
4118         __libc_alpha_cache_shape as a private symbol.
4119         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c: New file.
4120         * sysdeps/unix/sysv/linux/alpha/sysconf.c: New file.
4122 2004-05-06  Richard Henderson  <rth@redhat.com>
4124         * sysdeps/alpha/div_libc.h (_ITOFS, _ITOFT, _FTOIT, _ITOFT2): New.
4125         * sysdeps/alpha/divl.S: Use them.
4126         * sysdeps/alpha/divq.S: Likewise.
4127         * sysdeps/alpha/divqu.S: Likewise.
4128         * sysdeps/alpha/reml.S: Likewise.
4129         * sysdeps/alpha/remq.S: Likewise.
4130         * sysdeps/alpha/remqu.S: Likewise.
4132 2004-05-06  Ulrich Drepper  <drepper@redhat.com>
4134         * math/tgmath.h (__TGMATH_UNARY_REAL_IMAG_RET_REAL):Define.
4135         (cimag): Use it.
4136         (creal): Likewise.
4137         * math/Makefile (tests): Add bug-tgmath1.
4138         * math/bug-tgmath1.c: New file.
4140 2004-05-05  Jakub Jelinek  <jakub@redhat.com>
4142         * sysdeps/alpha/atomicity.h: Remove.
4143         * sysdeps/generic/atomicity.h: Remove.
4145 2004-05-05  H.J. Lu  <hongjiu.lu@intel.com>
4147         * sysdeps/i386/i486/bits/string.h (strpbrk): Cast return to
4148         char *.
4150 2004-04-22  David Mosberger  <davidm@hpl.hp.com>
4152         * sysdeps/unix/sysv/linux/ia64/Makefile (librt-routines): Mention
4153           rt-sysdep.
4154         * sysdeps/unix/sysv/linux/ia64/rt-sysdep.S: New file.
4156         * sysdeps/ia64/strcat.c: New file.
4157         * sysdeps/ia64/strcat.S: Delete.
4159 2004-05-04  Jakub Jelinek  <jakub@redhat.com>
4161         * sysdeps/unix/sysv/linux/ia64/sysdep.S (USE___THREAD): Remove
4162         defined.
4164 2004-04-23  Jakub Jelinek  <jakub@redhat.com>
4166         * sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Add
4167         libc_hidden_proto.  Define to __GI___libm_error_support for
4168         assembly going into libc.so.
4169         * sysdeps/ia64/fpu/libc_libm_error.c (__libm_error_support): Add
4170         libc_hidden_def.
4172         * include/libc-symbols.h (HIDDEN_BUILTIN_JUMPTARGET): Define.
4173         * sysdeps/ia64/bcopy.S (bcopy): Use it for jump to memmove.
4175         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Access
4176         gprel errno if RTLD_PRIVATE_ERRNO or __thread __libc_errno/errno
4177         if USE___THREAD.
4179 2004-05-03  Jakub Jelinek  <jakub@redhat.com>
4181         * sysdeps/unix/bsd/bits/fcntl.h (F_SETOWN, F_GETOWN): Define if
4182         __USE_BSD or __USE_UNIX98.
4183         * sysdeps/unix/bsd/ultrix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4184         * sysdeps/unix/bsd/bsd4.4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4185         * sysdeps/unix/bsd/sun/sunos4/bits/fcntl.h (F_SETOWN, F_GETOWN):
4186         Likewise.
4187         * sysdeps/unix/common/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4188         * sysdeps/unix/sysv/aix/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4189         * sysdeps/unix/sysv/irix4/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4190         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (F_SETOWN, F_GETOWN):
4191         Likewise.
4192         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_SETOWN, F_GETOWN):
4193         Likewise.
4194         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h (F_SETOWN, F_GETOWN):
4195         Likewise.
4196         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (F_SETOWN, F_GETOWN):
4197         Likewise.
4198         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (F_SETOWN, F_GETOWN):
4199         Likewise.
4200         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (F_SETOWN, F_GETOWN):
4201         Likewise.
4202         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (F_SETOWN, F_GETOWN):
4203         Likewise.
4204         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (F_SETOWN, F_GETOWN):
4205         Likewise.
4206         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (F_SETOWN, F_GETOWN):
4207         Likewise.
4208         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (F_SETOWN, F_GETOWN):
4209         Likewise.
4210         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h (F_SETOWN, F_GETOWN):
4211         Likewise.
4212         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (F_SETOWN, F_GETOWN):
4213         Likewise.
4214         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (F_SETOWN, F_GETOWN):
4215         Likewise.
4216         * sysdeps/generic/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4217         * sysdeps/mach/hurd/bits/fcntl.h (F_SETOWN, F_GETOWN): Likewise.
4218         * io/sys/stat.h (S_ISSOCK, S_IFSOCK): Likewise.
4220 2004-05-01  Jakub Jelinek  <jakub@redhat.com>
4222         * posix/Versions (libc): Remove __libc_wait, __libc_waitpid,
4223         __libc_pause, __libc_nanosleep, __libc_pread, __libc_pread64,
4224         __libc_pwrite64, __waitid and __pselect @@GLIBC_PRIVATE.
4225         * stdlib/Versions (libc): Remove __on_exit@@GLIBC_PRIVATE.
4226         * sysdeps/unix/sysv/linux/Versions (libc): Remove
4227         __libc_sigaction@@GLIBC_PRIVATE.
4228         * sysdeps/unix/sysv/linux/x86_64/Versions (libc): Remove
4229         __modify_ldt@@GLIBC_PRIVATE.
4230         * socket/Versions (libc): Remove __libc_accept, __libc_send,
4231         __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv,
4232         __libc_sendto and __libc_connect @@GLIBC_PRIVATE.
4233         * stdio-common/Versions (libc): Remove
4234         _itoa_upper_digits@@GLIBC_PRIVATE.
4235         * resolv/Versions (libresolv): Remove __ns_samename@@GLIBC_PRIVATE.
4236         * misc/Versions (libc): Remove __libc_fsync, __libc_msync,
4237         __libc_readv and __libc_writev @@GLIBC_PRIVATE.
4238         * termios/Versions (libc): Remove __libc_tcdrain@@GLIBC_PRIVATE.
4239         * io/Versions (libc): Remove __libc_open, __libc_close, __libc_read,
4240         __libc_write, __libc_lseek, __libc_fcntl, __libc_open64 and
4241         __libc_lseek64 @@GLIBC_PRIVATE.
4243 2004-04-30  Jakub Jelinek  <jakub@redhat.com>
4245         * elf/dl-load.c (open_verify): Move e_phentsize check after e_type
4246         check.
4248 2004-04-29  Steven Munroe  <sjmunroe@us.ibm.com>
4250         * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: New file.
4251         * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: New file.
4252         * sysdeps/powerpc/powerpc64/fpu/s_floor.S: New file.
4253         * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: New file.
4254         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: Removed.
4255         * sysdeps/powerpc/powerpc64/fpu/s_llrint.S: New file.
4256         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: Removed.
4257         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.S: New file.
4258         * sysdeps/powerpc/powerpc64/fpu/s_llround.S: New file.
4259         * sysdeps/powerpc/powerpc64/fpu/s_llroundf.S: New file.
4260         * sysdeps/powerpc/powerpc64/fpu/s_lround.S: New file.
4261         * sysdeps/powerpc/powerpc64/fpu/s_lroundf.S: New file.
4262         * sysdeps/powerpc/powerpc64/fpu/s_rint.S: New file.
4263         * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: New file.
4264         * sysdeps/powerpc/powerpc64/fpu/s_round.S: New file.
4265         * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: New file.
4266         * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: New file.
4267         * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: New file.
4269         * math/test-misc.c [LDBL_MANT_DIG == 106](main): Correct LDBL_MAX
4270         mantissa for AIX long double format.
4271         * misc/qefgcvt.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Define for AIX
4272         long double format.
4273         * misc/qefgcvt_r.c [LDBL_MANT_DIG == 106] (NDIGIT_MAX): Likewise.
4274         * stdlib/fpioconst.c [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
4275         (_fpioconst_pow10): AIX long double format has same exponent range as
4276         double.
4277         * stdlib/fpioconst.h [!__NO_LONG_DOUBLE_MATH && __LDBL_MAX_EXP__>1024]
4278         (LDBL_MAX_10_EXP_LOG): AIX long double format has same exponent range
4279         as double.
4281 2004-04-23  Art Haas  <ahaas@airmail.net>
4283         * sysdeps/unix/sysv/linux/kernel-features.h: Add 'defined'.
4285 2004-04-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
4287         * sysdeps/unix/sysv/linux/mq_getattr.c: Include <stddef.h>.
4288         * sysdeps/unix/sysv/linux/mq_notify.c: Likewise.
4289         * sysdeps/unix/sysv/linux/mq_open.c: Likewise.
4290         * sysdeps/unix/sysv/linux/mq_receive.c: Likewise.
4291         * sysdeps/unix/sysv/linux/mq_send.c: Likewise.
4293 2004-04-29  Philip Blundell  <pb@nexus.co.uk>
4295         * sysdeps/arm/dl-machine.h (RTLD_START): Avoid unnecessary GOT
4296         entries.
4298 2004-04-29  Jakub Jelinek  <jakub@redhat.com>
4300         * manual/resource.texi (sched_setaffinity, sched_getaffinity): Fix
4301         prototypes and description [BZ #131].
4303         * string/bits/string2.h (strpbrk): Cast NULL to char * [BZ #130].
4304         Patch by Ed Catmur <ed@catmur.co.uk>.
4305         * string/tst-inlcall.c (main): Add test for strpbrk.
4307         [BZ #140]
4308         * sysdeps/unix/sysv/linux/sys/sysctl.h: Remove linux/compiler.h
4309         include.
4310         (_LINUX_KERNEL_H, _LINUX_TYPES_H, _LINUX_LIST_H): Only define if not
4311         yet defined, #undef back after including linux/sysctl.h if defined
4312         here.
4313         (__LINUX_COMPILER_H, __user): Define if not yet defined, #undef
4314         back after including linux/sysctl.h if defined here.
4316         * sysdeps/sparc/sparc64/soft-fp/qp_qtoi.c (_Qp_qtoi): Use %f31
4317         for single precision register, add it to __asm clobbers [BZ #139].
4318         * sysdeps/sparc/sparc64/soft-fp/qp_qtoui.c (_Qp_qtoui): Use %f31
4319         for single precision register, add it to __asm clobbers.
4320         * sysdeps/sparc/sparc64/soft-fp/qp_qtoux.c (_Qp_qtoux): Use fqtox
4321         instead of fqtoi in QP_HANDLE_EXCEPTIONS.
4322         * sysdeps/sparc/sparc64/soft-fp/qp_qtox.c (_Qp_qtox): Likewise.
4323         Reported by M. H. VanLeeuwen <vanl@megsinet.net>.
4325 2004-04-23  Andreas Schwab  <schwab@suse.de>
4327         * sysdeps/unix/sysv/linux/m68k/register-dump.h: Use
4328         __attribute_used__.
4330 2004-04-22  Philip Blundell  <philb@gnu.org>
4332         * sysdeps/arm/dl-machine.h (elf_machine_rela): Don't use INTUSE
4333         when calling _dl_signal_error.
4334         (elf_machine_rel): Likewise.
4336 2004-04-21  Ulrich Drepper  <drepper@redhat.com>
4338         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Define _GI___sigsetjmp
4339         and use it internally instead of __sigsetjmp.
4340         * sysdeps/ia64/fpu/s_frexpf.c (frexpf): Use _GI___libm_frexp_4f.
4341         * sysdeps/ia64/fpu/s_frexpl.c (frexpl): Use _GI___libm_frexp_4l.
4342         * sysdeps/ia64/fpu/libm_frexp4.S: Define _GI___libm_frexp_4.
4343         * sysdeps/ia64/fpu/libm_frexp4f.S: Define _GI___libm_frexp_4f.
4344         * sysdeps/ia64/fpu/libm_frexp4l.S: Define _GI___libm_frexp_4l.
4345         * sysdeps/ia64/fpu/s_frexp.c (frexp): Use _GI___libm_frexp_4.
4346         * sysdeps/ia64/fpu/libm_support.h: Declare _GI___libm_frexp_4,
4347         _GI___libm_frexp_4f, _GI___libm_frexp_4l.
4348         * sysdeps/ia64/fpu/bits/mathinline.h: New file.
4349         * sysdeps/unix/sysv/linux/ia64/__start_context.S: Use
4350         HIDDEN_JUMPTARGET for exit call.
4351         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use HIDDEN_JUMPTARGET for
4352         _exit call.
4353         * sysdeps/ia64/bcopy.S: Use HIDDEN_JUMPTARGET for memmove call.
4354         * sysdeps/ia64/strcat.S: Use HIDDEN_JUMPTARGET for strlen and
4355         strcpy calls.
4357 2004-04-21  Jakub Jelinek  <jakub@redhat.com>
4359         * posix/tst-chmod.c (do_test): Fix a typo.
4361         * elf/lateglobal.c (main): Fix error checks.
4362         Patch by Stephen Clarke <stephen.clarke@st.com>.
4364         * manual/ctype.texi (isblank, iswblank): Mark as ISO functions,
4365         mention they have been added in ISO C99.
4366         Reported by Ben Pfaff <blp@cs.stanford.edu>.
4368 2004-03-31  H.J. Lu  <hongjiu.lu@intel.com>
4370         * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: Fix typo.
4372 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
4374         * sysdeps/unix/sysv/linux/shm_open.c (shm_unlink): Change EPERM into
4375         EACCES.
4377 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
4379         * stdio-common/vfscanf.c (_IO_vfscanf): Revert last %% whitespace
4380         handling change.
4381         * stdio-common/tst-sscanf.c (int_tests): Adjust.
4383         * nis/nss-nis.c: Include stdlib.h.
4385         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Shut up a
4386         warning.
4387         * sysdeps/sparc/sparc64/memcmp.S (memcmp): Remove BP_SYM () from
4388         libc_hidden_builtin_def.
4390 2004-04-20  Jim Meyering  <jim@meyering.net>
4392         * misc/error.c (error_tail): Don't leak upon realloc failure.
4394 2004-04-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4396         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
4397         Use RETURN_ADDRESS instead of __builtin_return_address.
4399 2004-04-19  Ulrich Drepper  <drepper@redhat.com>
4401         * sysdeps/unix/sysv/linux/mq_unlink.c: Rewrite to produce more
4402         compact code.
4404 2004-04-20  Jakub Jelinek  <jakub@redhat.com>
4406         * stdio-common/vfscanf.c (_IO_vfscanf): When skipping whitespace,
4407         do input_error () instead of conv_error () and don't look at errno.
4408         Don't eat any whitespace before %% if skip_space == 0.
4409         * stdio-common/tst-sscanf.c (int_tests): New array.
4410         (main): Run int_tests.
4413 See ChangeLog.14 for earlier changes.