2004-07-23 Ulrich Drepper <drepper@redhat.com>
* posix/bits/posix1_lim.h: Fix values for _POSIX_CHILD_MAX and
_POSIX_OPEN_MAX. Add _POSIX_HOST_NAME_MAX, _POSIX_SYMLINK_MAX,
_POSIX_SYMLOOP_MAX, and _POSIX_RE_DUP_MAX.
Reported by Andrew Josey.
* include/features.h: Document _POSIX_C_SOURCE == 200112L.
* grp/grp.h: Define gid_t if __USE_XOPEN2K is defined.
* pwd/pwd.h: Define uid_t and gid_t if __USE_XOPEN2K is defined.
* io/sys/stat.h: Define dev_t, gid_t, ino_t, mode_t, nlink_t,
off_t, time_t, and uid_t if __USE_XOPEN2K is defined.
* signal/signal.h: Define pid_t if __USE_XOPEN2K is defined.
* posix/unistd.h: Define gid_t, off_t, pid_t, uid_t, and
useconds_t if __USE_XOPEN2K is defined.
* io/utime.h: Define time_t if __USE_XOPEN2K is defined.
* libio/stdio.h: Declare fseeko and ftello if __USE_XOPEN2K is defined.
2004-07-19 Thorsten Kukuk <kukuk@suse.de>
* nis/nss_compat/compat-initgroups.c (getgrent_next_nss): Don't
allocate memory for large temporary variables with alloca.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Compatibility
code must have version GLIBC_2.0. Patch by Dwayne McConnell.
2004-07-21 Jakub Jelinek <jakub@redhat.com>
* resolv/res_libc.c (res_init): If RES_INIT is set and
_res.nscount > 0, call __res_nclose and free nsaddrs.
* resolv/Makefile: Add rules to build and run tst-leaks2.
* resolv/tst-leaks2.c: New test.
after AC_CANONICAL_HOST and default setting of $machine et al.
Don't set $subdirs from $add_ons.
Instead, source add-on/configure fragments early on.
(base_machine): If it's already set, don't set it based on $machine.
(libc_config_ok): New variable, set to no. If an add-on fragment sets
it to yes, skip the tuple sanity check as if --enable-hacker-mode.
(sysnames): Try appending add-on names after machine as well.
* configure: Regenerated.
* config.make.in (add-ons): Set from @add_ons@ instead of @subdirs@.
* Makeconfig ($(common-objpfx)config.status): Also depend on configure
files in $(add_ons) dirs.
* sysdeps/unix/sysv/linux/bits/in.h (struct ip_mreq): Remove
definition, now in netinet/in.h proper.
long. Rewrite example code so that it takes into account l64a output
* sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
Sort by syscalls. Make sure we get headers such as sgidefs.h from
the build tree before just-installed ones.
* sysdeps/mips/atomicity.h, sysdeps/mips/dl-machine.h,
sysdeps/mips/machine-gmon.h, sysdeps/mips/bits/setjmp.h,
sysdeps/mips/fpu/bits/mathdef.h,
sysdeps/mips/mips64/__longjmp.c,
sysdeps/mips/mips64/setjmp_aux.c,
sysdeps/unix/sysv/linux/mips/kernel_stat.h,
sysdeps/unix/sysv/linux/mips/pread.c,
sysdeps/unix/sysv/linux/mips/pread64.c,
sysdeps/unix/sysv/linux/mips/ptrace.c,
sysdeps/unix/sysv/linux/mips/pwrite.c,
sysdeps/unix/sysv/linux/mips/pwrite64.c,
sysdeps/unix/sysv/linux/mips/sigaction.c,
sysdeps/unix/sysv/linux/mips/sigcontextinfo.h,
sysdeps/unix/sysv/linux/mips/bits/fcntl.h,
sysdeps/unix/sysv/linux/mips/bits/sigcontext.h,
sysdeps/unix/sysv/linux/mips/bits/stat.h,
sysdeps/unix/sysv/linux/mips/sys/procfs.h,
sysdeps/unix/sysv/linux/mips/sys/ptrace.h,
sysdeps/unix/sysv/linux/mips/sys/tas.h,
sysdeps/unix/sysv/linux/mips/sys/ucontext.h,
sysdeps/unix/sysv/linux/mips/sys/user.h: Use standard names
for ABI macros, include sgidefs.h where appropriate.
sysdeps/unix/sysv/linux/mips/Makefile ($(objpfx)syscall-%.h):
Likewise.
sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h):
Likewise.
sysdeps/unix/sysv/linux/mips/configure: Rebuilt.
Update.
2004-07-16 Steven Munroe <sjmunroe@us.ibm.com>
[BZ #269]
* setjmp/Makefile (tests): Add bug269-setjmp.
* setjmp/bug269-setjmp.c: New file.
* sysdeps/powerpc/powerpc64/__longjmp-common.S [SHARED && !IS_IN_rtld]:
Store R2 from jmpbuf in callers TOC save area.
* sysdeps/powerpc/powerpc64/bsd-_setjmp.S [SHARED && !IS_IN_rtld]:
Store R2 in TOC save area.
* sysdeps/powerpc/powerpc64/setjmp-common.S [SHARED && !IS_IN_rtld]:
Copy TOC save area from previous frame as R2 (TOC) in jmpbuf.
2004-07-16 Jakub Jelinek <jakub@redhat.com>
* locale/newlocale.c: Include bits/libc-lock.h.
(__libc_setlocale_lock): Extern decl.
(__newlocale): Use it.
Reported by Ulrich Weigand <Ulrich.Weigand@de.ibm.com>.
* sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Remove
static inline __attribute ((always_inline)). Don't define if
NO_CANCELLATION.
(__libc_fcntl): Use INLINE_SYSCALL directly instead of
__fcntl_nocancel.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c (__fcntl_nocancel):
Remove static inline __attribute ((always_inline)). Don't define
if NO_CANCELLATION.
(__libc_fcntl): Use INLINE_SYSCALL directly instead of
__fcntl_nocancel.
* sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Define to
__libc_fcntl if NO_CANCELLATION and __ASSUME_FCNTL64 == 0.
Don't define at all if NO_CANCELLATION and __ASSUME_FCNTL64 > 0.
(__libc_fcntl): Don't define if __fcntl_nocancel is a macro.
Update.
2004-07-15 Jakub Jelinek <jakub@redhat.com>
[BZ #262]
* sysdeps/i386/elf/start.S (_start): Use @GOT instead of @GOTOFF
for main.
* elf/Makefile: Add rules to build and run tst-pie1.
* elf/tst-pie1.c: New test.
* elf/tst-piemod1.c: New file.
Update.
2004-07-14 Jakub Jelinek <jakub@redhat.com>
[BZ #266]
* manual/string.texi (l64a): Note that the static buffer is 7 bytes
long. Rewrite example code so that it takes account l64a output
shorter than 6 characters.
Reported by Julian Graham <julian.graham@aya.yale.edu>.
2004-07-12 Paul Eggert <eggert@cs.ucla.edu>
[BZ #263]
* sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Don't store
outside the buffer if the read returns 0. __strtod_l can't set
endp to NULL, so remove a test for that case.
2004-07-10 Ulrich Drepper <drepper@redhat.com>
* elf/ldconfig.c: Define PROCINFO_CLASS as static before including
ldsodefs.h.
* sysdeps/generic/ldsodefs.h: Only define PROCINFO_CLASS if it is not
already defined.
* sysdeps/i386/dl-procinfo.c: Define PROCINFO_CALLS only if not
already defined.
* elf/rtld.c (print_statistics): Mark with noinline attribute.
* sysdeps/i386/dl-machine.h (elf_machine_rel): Mark with always_inline
attribute.
(elf_machine_rel_relative): Likewise.
* include/string.h: Add libc_hidden_proto for __strtok_r and
__strsep_g.
* sysdeps/generic/strsep.c: Add libc_hidden_def.
* sysdeps/generic/strtok_r.c: Likewise.
* sysdeps/i386/strtok_r.S: Add alias for internal symbol.
* sysdeps/i386/i686/strtok_r.S: Likewise.
* sysdeps/x86_64/strtok_r.S: Likewise.
2004-07-09 Alexandre Oliva <aoliva@redhat.com>
* inet/getnetgrent_r.c (internal_setnetgrent): Make it hidden
instead of internal-linkage, such that we can alias to it.
(internal_endnetgrent, internal_getnetgrent_r): Likewise.
2004-07-09 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Move attribute
to the front for gcc 3.5+.
* sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
* include/fcntl.h: Don't declare __fcntl_nocancel here if
NO_CANCELLATION is defined.
2004-07-07 Jakub Jelinek <jakub@redhat.com>
* elf/dl-fini.c (_dl_fini): Add nloaded variable, load
GL(dl_nloaded) into it while still in critical section.
(glibc-%.tar rule): Make separate tar files for add-ons listed there.
Depend on their configure files.
(dist-do-separate-dirs): New canned sequence to do that.
(dist-separate-libidn, dist-separate-linuxthreads): New variables.
(dist): Depend on add-on tar files based on $(dist-separate).
(dist-version): New variable, default to $(version).
(tag-for-dist, dist): Use that in place of $(version) in deps.
2004-07-05 Ulrich Drepper <drepper@redhat.com>
* elf/dl-init.c: Don't define and use _dl_starting_up if
HAVE_INLINED_SYSCALLS is defined and the variable is not used.
* elf/dl-support.c: Likewise.
* elf/rtld.c: Likewise.
* elf/dl-misc.c (_dl_debug_vdprintf): Use writev syscall directly
if HAVE_INLINED_SYSCALLS is defined.
* sysdeps/powerpc/powerpc64/dl-machine.h: Don't rest _dl_starting_up
here.
* sysdeps/powerpc/powerpc32/dl-start.S: Likewise.
* sysdeps/unix/sysv/linux/configure.in: Define HAVE_INLINED_SYSCALLS.
* config.h.in: Add entry for HAVE_INLINED_SYSCALLS.
* sysdeps/posix/profil.c: If compiled for ld.so, omit code which
is needed to stop profiling.
* elf/dl-open.c (dl_open_worker): If a newly opened object is to be
profile make sure it cannot be unloaded.
* sysdeps/unix/sysv/linux/dl-origin.c: Inline readlink syscall.
* sysdeps/unix/sysv/linux/fcntl.c: If compiled without cancellation
support, make sure the helper function is inlined.
* sysdeps/unix/sysv/linux/pread.c: Likewise.
* sysdeps/unix/sysv/linux/pwrite.c: Likewise.
* sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
2004-07-05 Jakub Jelinek <jakub@redhat.com>
* sysdeps/powerpc/novmx-longjmp.c (__libc_longjmp,
__libc_siglongjmp): Remove symbol_version.
* sysdeps/powerpc/longjmp.c (__libc_longjmp, __libc_siglongjmp):
Export @@GLIBC_PRIVATE, not @@GLIBC_2.3.4.
* sysdeps/powerpc/sigjmp.c (__sigjmp_save): Use strong_alias
unconditionally.
* sysdeps/powerpc/novmx-sigjmp.c (__sigjmp_save): Remove.
* sysdeps/powerpc/powerpc32/__longjmp.S (__longjmp): Use
strong_alias instead of default_symbol_version, remove
symbol_version.
* sysdeps/powerpc/powerpc64/__longjmp.S (__longjmp): Likewise.
* sysdeps/powerpc/powerpc32/bsd-setjmp.S (__novmx__setjmp): Change
into strong_alias to __novmxsetjmp.
(__vmx__setjmp): Similarly with __vmxsetjmp.
(__setjmp): Make it strong_alias to __vmx__setjmp, remove
default_symbol_version and symbol_version.
* sysdeps/powerpc/powerpc64/bsd-setjmp.S (__novmx__setjmp): Change
into strong_alias to __novmxsetjmp.
(__vmx__setjmp): Similarly with __vmxsetjmp.
(__setjmp): Make it strong_alias to __vmx__setjmp, remove
default_symbol_version and symbol_version.
* nscd/nscd_getgr_r.c: Include stdio-common/_itoa.h.
2004-07-04 Matthew Reppert <arashi@kai.vm.bytemark.co.uk>
* sysdeps/unix/sysv/linux/i386/glob64.c (glob64): Use libc_hidden_ver
instead of libc_hidden_def.
* Makeconfig ($(common-objpfx)shlib-versions.v.i): Move top-level
$(..)shlib-versions file to last in deps list. This lets add-ons give
more-specific matches that override defaults in the top-level file.
* sysdeps/unix/sysv/linux/configure.in: If arch_minimum_kernel was
already set, don't set it or libc_cv_gcc_unwind_find_fde.
* sysdeps/unix/sysv/linux/configure: Regenerated.
2004-06-11 Dwayne Grant McConnell <dgm69@us.ibm.com>
* sysdeps/powerpc/fpu/s_lround.c: Removed.
* sysdeps/powerpc/fpu/s_lroundf.c: Removed.
* sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: New file.
* sysdeps/powerpc/powerpc32/fpu/s_ceil.S: New file.
* sysdeps/powerpc/powerpc32/fpu/s_floorf.S: New file.
* sysdeps/powerpc/powerpc32/fpu/s_floor.S: New file.
* sysdeps/powerpc/powerpc32/fpu/s_lrint.c: Removed.
* sysdeps/powerpc/powerpc32/fpu/s_lrint.S: New file.
* sysdeps/powerpc/powerpc32/fpu/s_lroundf.S: New file.
* sysdeps/powerpc/powerpc32/fpu/s_lround.S: New file.
* sysdeps/powerpc/powerpc32/fpu/s_rintf.S: New file.
* sysdeps/powerpc/powerpc32/fpu/s_rint.S: New file.
* sysdeps/powerpc/powerpc32/fpu/s_roundf.S: New file.
* sysdeps/powerpc/powerpc32/fpu/s_round.S: New file.
* sysdeps/powerpc/powerpc32/fpu/s_truncf.S: New file.
* sysdeps/powerpc/powerpc32/fpu/s_trunc.S: New file.
2004-06-30 Ulrich Drepper <drepper@redhat.com>
* include/net/if.h: Handle if_nameindex and if_freenameindex with
libc_proto_hidden.
* sysdeps/unix/sysv/linux/netlinkaccess.h: New file.
* sysdeps/unix/sysv/linux/ifaddrs.c: Export netlink handling functions.
* sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Implement using
netlink if possible. Fall back on ioctl method if necessary.
* include/unistd.h: Declare __truncate.
* sysdeps/generic/truncate.c: Also define __truncate.
* sysdeps/mach/hurd/truncate.c: Likewise.
* sysdeps/unix/common/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/truncate64.c: Use __truncate, not truncate.
2004-06-28 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/if_index.c (if_nameindex): Use extend_alloca.
2004-06-28 GOTO Masanori <gotom@debian.or.jp>
* iconv/gconv_simple.c: Use get16/put16 for user given buffer
in ucs2/ucs2reverse when unaligned memory access is attempted.
* iconv/tst-iconv5.c: New file.
* iconv/Makefile (tests): Add tst-iconv5.
2004-06-19 Roland McGrath <roland@redhat.com>
* sysdeps/posix/waitid.c (do_waitid) [DO_WAITID]: Define function
under this macro name instead.
[NO_DO_WAITID]: Don't define it at all.
(do_waitid) [WNOWAIT, WEXITED]: If these POSIX.1 waitid flag bits are
defined, then return ENOTSUP for combinations of selection bits other
than WEXITED and WEXITED|WSTOPPED, which this version cannot support.
* posix/tst-waitid.c: New file.
* posix/Makefile (tests): Add it.
2004-06-28 Jakub Jelinek <jakub@redhat.com>
Update.
2004-06-21 Jakub Jelinek <jakub@redhat.com>
[BZ #231]
* sysdeps/unix/alpha/Makefile: New file.
* sysdeps/unix/alpha/rt-sysdep.S: New file.
Reported by Jakub Bogusz <qboosh@pld-linux.org>.
Update.
2004-06-17 Thorsten Kukuk <kukuk@suse.de>
* sysdeps/unix/sysv/linux/sched_setaffinity.c
(__sched_setaffinity_new): Set errno to EINVAL and return -1 if
cpuset is wrongly set.
2004-06-15 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc64/memcpy.S: Improve instruction scheduling
for POWER4 machines.
2004-06-14 Jakub Jelinek <jakub@redhat.com>
[BZ #218]
* sunrpc/pmap_prot2.c (xdr_pmaplist): When freeing, remember pml_next
in a local variable, point rp to that local variable afterwards.
2004-06-11 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ieee754/dbl-64/e_sqrt.c (__ieee754_sqrt): Handle special
cases properly.
2004-06-17 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/if_index.c (if_indextoname): Correct
error value for unknown interface. [BZ #198]
2004-06-18 Roland McGrath <roland@frob.com>
[BZ #209]
* ChangeLog: Another attempt to test the loginfo script.
[BZ #209]
* ChangeLog: Another attempt to test the loginfo script.
2004-06-18 Roland McGrath <roland@frob.com>
[BZ #209]
* ChangeLog: Another attempt to test the loginfo script.
2004-06-18 Roland McGrath <roland@frob.com>
[BZ #209]
* ChangeLog: Another attempt to test the loginfo script.
* NEWS: Fix a typo. Update bug-reporting instructions.
(memchr, __memrchr, strlen, strcmp, strncmp, __strchr_g, __strchr_c,
__strchrnul_g, __strchrnul_c, strspn, strcspn, strpbrk): Add memory
the asm uses as its input, either of size __n where __n is known or
0xfffffff.
(strstr): Add "memory" clobber.
2004-06-14 Jakub Jelinek <jakub@redhat.com>
[BZ #219]
* nss/nsswitch.c (free_mem): Don't try to close a library handle
if the handle is invalid. Patch by David Kimdon <kimdon@esrf.fr>.
2004-06-11 Dmitry V. Levin <ldv@altlinux.org>
[BZ #217]
* debug/xtrace.sh: Fix typo in error diagnostics.
2004-06-08 Jakub Jelinek <jakub@redhat.com>
[BZ #199]
* crypt/md5-crypt.c (__md5_crypt): Only update buflen if realloc
succeeds. Reported by Miles Ohlrich <miles@cray.com>.
* elf/chroot_canon.c (chroot_canon): Avoid segfault if first malloc
fails. Avoid memory leak if realloc fails.
NULL, "" or contains '=' character in it. Reported by
Michael T Kerrisk <mtk-lists@gmx.net>.
* stdlib/tst-environ.c: Include errno.h.
(main): Add tests for these arguments to setenv/unsetenv.
2004-06-05 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
Handle more than 6 args correctly. Based on a patch by Masahide
Washizawa.
2004-06-04 Ulrich Drepper <drepper@redhat.com>
* nscd/nscd_gethst_r.c (nscd_gethst_r): Use __nss_not_use_nscd_hosts
in all places, not __nss_not_use_nscd_group.
Reported by Philippe Gregoire.
2004-05-07 Dmitry V. Levin <ldv@altlinux.org>
* argp/argp-help.c (__argp_error, __argp_failure): Check result
of __asprintf call and don't use string if it failed.
* stdio-common/psignal.c (psignal): Likewise.
* locale/programs/localedef.c (more_help): Likewise.
* resolv/res_hconf.c (arg_service_list, arg_trimdomain_list,
arg_bool, parse_line): Check result of __asprintf calls and
don't use string if they failed.
* sunrpc/svc_simple.c (registerrpc, universal): Likewise.
* elf/ldconfig.c (parse_conf_include): Check result of __asprintf
call and exit if it failed.
(IMPLINK_IP, IMPLINK_LOWEXPER, IMPLINK_HIGHEXPER): Macros removed.
These are long obsolete in BSD systems where they originated.
* conform/data/netinet/in.h-data: Remove `allow IMPLINK_*'