* elf/dlsym.c (dlsym_doit): Use new RTLD_DEFAULT macro to test
for use of global scope.
* elf/dlvsym.c (dlvsym_doit): Likewise.
1998-09-02 Paul Eggert <eggert@twinsun.com>
* strftime.c (my_strftime): When mbrlen returns (size_t) -2,
copy the redundant bytes at the end of the format as-is; don't
just copy their first byte and then rescan, as that might get
us an encoding error.
Account correctly for the length of multibyte sequences in the
format.
1998-09-03 20:14 Tim Waugh <tim@cyberelk.demon.co.uk>
* posix/wordexp-test.c: Add tests for different IFS values.
Change unquoted-newline test so that newline is not in IFS.
* posix/wordexp.c (wordexp): Correct null/unset mix-up when
determining IFS characters. Return WRDE_BADCHAR for unquoted
special characters _except_ if they are separators.
Don't add netinet/udp.h, netinet/ip_icmp.h here.
* sysdeps/gnu/Makefile: Do it here instead.
* sysdeps/unix/sysv/linux/Dist: Move those files from here ...
* sysdeps/gnu/Dist: ... to here.
Roland McGrath [Sat, 5 Sep 1998 03:52:00 +0000 (03:52 +0000)]
1998-09-05 Roland McGrath <roland@baalperazim.frob.com> * sysdeps/unix/sysv/linux/netinet/ip_icmp.h, sysdeps/unix/sysv/linux/netinet/tcp.h, sysdeps/unix/sysv/linux/netinet/udp.h: Moved to sysdeps/gnu/netinet.
1998-09-05 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/unix/sysv/linux/netinet/ip_icmp.h,
sysdeps/unix/sysv/linux/netinet/tcp.h,
sysdeps/unix/sysv/linux/netinet/udp.h: Moved to sysdeps/gnu/netinet.
* elf/dl-load.c (fillin_rpath): Handle "/" as RPATH correctly.
(_dl_map_object_from_fd): Make NAME argument const.
Remove last parameter in _dl_new_object call.
(print_search_path): Correct construction of composed path name.
(_dl_map_object): Prevent looking at RPATH of the main map twice.
Remove last parameter in _dl_new_object call.
* elf/dl-object.c: Remove last parameter. Determine whether create
origin entry based on empty realname. Handle file in root directory
correctly.
* elf/ldsodefs.h: Adjust prototype for _dl_new_object.
* elf/rtld.c (dl_main): Add comment describing reason for memory leak.
Remove last parameter in _dl_new_object call.
* sysdeps/generic/dl-origin.h: Handle file in root directory correctly.
* sysdeps/unix/sysv/linux/dl-origin.h: Likewise.
* elf/dl-load.c (add_name_to_object): Change return type to void and
make NAME parameter const. Allocate room for NAME in same memory
block used for l_libname entry.
(_dl_map_object_from_fd): Don't free NAME on failure.
(map_segment): Pass SONAME to add_name_to_object, not a copy.
(_dl_map_object): Don't create copy of NAME. Pass NAME to
_dl_map_object_from_fd.
* elf/dl-object.c (dl_new_object): Allocate room for NAME in same
memory block used for l_libname entry.
* elf/dl-close.c: Adjust free()ing for this change.
* malloc/Makefile: Include Makeconfig before testing config-sysdirs.
* malloc/mtrace.c: Add bug report address. Update email address.
Add more @XXX@ to print correct address size.
* elf/dl-addr.c (_dl_addr): Make sure that map to be examined is
really initialized.
* elf/dl-close.c (_dl_close): Use l_map_start and l_map_end info
for munmap call instead of examining phdr again.
Free all malloc()ed strings and arrays.
* sysdeps/powerpc/Makefile [subdir=elf]: Add new files split out of
dl-machine.h.
* sysdeps/powerpc/dl-machine.c: New file.
* sysdeps/powerpc/dl-machine.h: Move much stuff into separate
files. Revise ELF_PREFERRED_ADDRESS to take account of
the new mapping information (fixes bug involving huge bloated
web browser). Set ELF_MACHINE_PLTREL_OVERLAP.
* sysdeps/powerpc/dl-start.S: New file.
* elf/dl-load.c (_dl_map_object_from_fd): Initialise l_map_start,
l_map_end.
* elf/do-rel.h: Call elf_machine_rel only once (to save space).
* elf/dynamic-link.h: Allow PLT relocs to be in the middle of the
others. Call elf_dynamic_do_##reloc only once (to save even more
space).
* elf/link.h: Add new members l_map_start and l_map_end to keep
track of the memory map.
* elf/rtld.c (_dl_start): Initialise l_map_start for ld.so and
the executable.
* manual/locale.texi: Almost compelte rewrite. Document more functions
and functionality.
* manual/arith.texi: Correct reference.
* manual/string.texi: Pretty printing.
* manual/texinfo.tex: Update from last available version.
* nis/nss_nis/nis-pwd.c (_nss_nis_getpwnam_r): Correct test for
invalid password.
(_nss_nis_getpwuid_r): Likewise.
Patch by Matthew Arnison <matthewa@physics.usyd.edu.au>.
* inet/rcmd.c: Implement netgroup support.
Patch by Dick Streefland <dick_streefland@tasking.com>.
Ulrich Drepper [Mon, 31 Aug 1998 17:23:45 +0000 (17:23 +0000)]
Update.
1998-08-31 Ulrich Drepper <drepper@cygnus.com>
* elf/dl-close.c (_dl_close): Update _dl_loaded if the first
object on the list is removed. Don't use this code for PIC.
Reported by HJ Lu [PR libc/770].
* db2/db_int.h: Use <db.h> instead of "db.h" to find header in include.
* include/stdio.h: Add __vsscanf.
* libio/stdio.h: Make vfscanf, scanf, and vsscanf available if
__USE_ISOC9X.
Remove __vsscanf declaration.
Always declare fgetpos and fsetpos.
* math/math.h: Define isinf as macro.
* math/bits/mathcalls.h: Change to declare __isinf all the time.
Don't declare scalb for ISO C 9x.
* math/tgmath.h: Define fma. Rewrite the underlying macros.
* stdlib/stdlib.h: Declare strtof and strtold is __USE_ISOC9X.
* sysdeps/unix/sysv/linux/bits/sigcontext.h: Allow inclusion from
sys/ucontext.h.
* sysdeps/wordsize-32/inttypes.h: Define missing PRI* and SCN*
macros.
1998-08-31 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/standalone/bits/errno.h (ENOMSG): Remove duplicate.
Reported by jreising@frequentis.com [PR libc/767].
1998-08-31 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* io/lockf.c (lockf): Move initilisation of fl.l_whence and
fl.l_start at beginning of function.
Patch by Geoff. Dash <geoffd@zeta.org.au> [PR libc/769].
* internals.h: Also define THREAD_GETMEM_NC and THREAD_SETMEM_NC to
access thread data with non-constant offsets.
* specific.c: Use THREAD_GETMEM_NC and THREAD_SETMEM_NC where
necessary.
* sysdeps/i386/useldt.h: Fix typo. Add THREAD_GETMEM_NC and
THREAD_SETMEM_NC definitions.
* sysdeps/sparc/sparc32/pt-machine.h: Define THREAD_GETMEM_NC and
THREAD_SETMEM_NC.
* sysdeps/sparc/sparc64/pt-machine.h: Likewise.
Ulrich Drepper [Thu, 27 Aug 1998 20:42:04 +0000 (20:42 +0000)]
Update.
Call _dl_new_object with extra argument.
Call _dl_new_object with extra argument.
but the main one if new argument is nonzero.
* elf/ldsodefs.h: Adjust for _dl_new_object change.
(dl_main): Call _dl_new_object with extra argument.
* elf/Makefile (distribute): Add dl-origin.h.
* sysdeps/generic/dl-origin.h: New file.
* sysdeps/unix/sysv/linux/dl-origin.h: New file.
* elf/link.h (struct link_map): Add l_origin field.
* elf/dl-load.c (expand_dynamic_string_token): New function.
(decompose_path): Remove WHERE argument, take link map pointer instead.
Call expand_dynamic_string_token instead of local_strdup to make copy
of rpath.
(_dl_init_paths): Call decompose_path with correct argument.
(_dl_map_object_from_fd): Define static is EXTERNAL_MAP_FROM_FD is
not defined.
Check EI_OSABI and EI_ABIVERSION fields in header.
(_dl_map_object): Call decompose_path with correct argument.
Call expand_dynamic_string_token instead of local_strdup to also
expand DST.
* elf/dl-object.c (_dl_new_object): Determine l_origin for all maps
but the main one.
* elf/dl-support.c: Define _dl_origin_path.
* elf/rtld.c: Likewise. Set _dl_origin_path based on LD_ORIGIN_PATH.
* elf/dl-close (_dl_close): Free l_name and l_origin.
* sysdeps/i386/useldt.h (THREAD_GETMEM, THREAD_SETMEM): Use P
modifier in asm, not c.
* sysdeps/mach/hurd/Makefile [subdirs==elf]: Define CFLAGS-dl-load.c
to -DEXTERNAL_MAP_FROM_FD to make _dl_map_object_from_fd extern.
* elf/dl-close.c (_dl_close): Move map->l_nsearchlist value into local
variable so that map can be freed.
Reported by Philippe Troin <phil@fifi.org>.
* elf/dl-open.c (dl_open_worker): Correct test for extending global
scope array.
Patch by Philippe Troin <phil@fifi.org>.
1998-08-26 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/register-dump.h: Rewrite. Much nicer this way.
Don't call writev() with a 100-element vector.
* sysdeps/generic/segfault.c (catch_segfault): Skip top-level NULL
return address.
* sysdeps/powerpc/elf/libc-start.c: Sync up with generic version.
In particular, set __libc_stack_end.
* sysdeps/powerpc/elf/start.S: Allow _init and _fini to be
undefined. Fix copyright notice.
1998-08-25 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* math/Makefile (gmp-objs): New variable.
($(objpfx)atest-exp, $(objpfx)atest-sincos, $(objpfx)atest-exp2):
Depend on it.
(tests): Add atest-exp atest-sincos atest-exp2.
(tests-static): Remove atest-exp atest-sincos atest-exp2.
* elf/rtld.c (dl_main): Unload map file before jumping to user code.
* internals.h: Define THREAD_GETMEM and THREAD_SETMEM to default if
not already defined.
(struct _pthread_descr_struct): Add p_self and p_nr field.
* manager.c (__pthread_handles): Define second element to point
to manager thread.
(__pthread_handles_num): Initialize to 2.
(__pthread_manager): Use INIT_THREAD_SELF with two arguments.
(pthread_start_thread): Likewise.
(pthread_handle_create): Start search for free slot at entry 2.
Initialize new fields p_self and p_nr.
Call __clone with CLONE_PTRACE if available.
(pthread_free): Call FREE_THREAD_SELF if available.
* pthread.c (__pthread_initial_thread): Initialize new fields.
(__pthread_manager_thread): Likewise.
(__pthread_initialize_manager): Call __clone with CLONE_PTRACE.
* cancel.c: Use THREAD_GETMEM and THREAD_SETMEM to access the
elements of the thread descriptor.
* condvar.c: Likewise.
* errno.c: Likewise.
* join.c: Likewise.
* manager.c: Likewise.
* pthread.c: Likewise.
* ptlongjmp.c: Likewise.
* semaphore.c: Likewise.
* signals.c: Likewise.
* specific.c: Likewise.
* spinlock.c: Likewise.
* sysdeps/alpha/pt-machine.h (INIT_THREAD_SELF): Add extra parameter.
* sysdeps/i386/useldt.h: New file.
* sysdeps/i386/i686/pt-machine.h: Show how to use this file.
* sysdeps/sparc/sparc32/pt-machine.h: Define THREAD_GETMEM and
THREAD_SETMEM using __thread_self.
* sysdeps/sparc/sparc64/pt-machine.h: Likewise.
Ulrich Drepper [Wed, 26 Aug 1998 00:07:26 +0000 (00:07 +0000)]
Update.
1998-08-25 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/dl-cache.c: Move static variable cache and cachesize
to toplevel.
(_dl_unload_cache): New function.
* elf/Versions [libc GLIBC_2.1]: Add _dl_unload_cache.
* elf/dl-open.c (_dl_open): Unload map file before freeing the lock.
* elf/rtld (dl_main): Unload map file before jumping to user code.
* sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Define O_DIRECT.
Correct comment for O_LARGEFILE.
* sysdeps/unix/sysv/linux/bits/fcntl.h: Define O_DIRECT.
Change O_LARGEFILE to correct value.
* debug/catchsegv.sh: Handle text preceding backtrace better.
* sysdeps/generic/segfault.c: Allow register dump. Allow handler
to be installed for other signals than SIGSEGV.
* sysdeps/generic/register-dump.h: New file.
* sysdeps/i386/register-dump.h: New file.
* sysdeps/powerpc/register-dump.h: New file.
* sysdeps/unix/sysv/linux/i386/profil-counter.h: Use macros from
sigcontextinfo.h.
* sysdeps/unix/sysv/linux/powerpc/profil-counter.h: Use i386 version.
1998-08-24 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/unix/sysv/linux/powerpc/sigcontextinfo.h: New file.
1998-08-09 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/unix/sysv/linux/powerpc/chown.c: New file.
* sysdeps/unix/sysv/linux/powerpc/lchown.S: New file.
* sysdeps/unix/sysv/linux/powerpc/syscalls.list: Add chown, remove
getresuid, getresgid.
1998-08-16 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/unix/sysv/linux/powerpc/clone.S: Fix bugs. Set up stack
pointer in userland.
1998-08-21 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/sys/mount.h (MNT_FORCE): Define as enum
and fix value.
1998-08-22 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/ldd.bash.in: Add missing quotes around $file. Make loop
over arguments Bourne shell compatible. Don't exit unsuccessfully
if nonelf returns successfully. Avoid duplicating most of the
script.
* sysdeps/unix/sysv/linux/ldd-rewrite.sed: Add missing quotes
around $file.
1998-08-24 10:37 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* csu/initfini.c: Return to .text before __gmon_start__.
* elf/elf.h (EM_FAKE_ALPHA): Rename from EM_OLD_ALPHA.
(STO_MIPS_*): Rename from STO_*.
(STB_MIPS_SPLIT_COMMON): Rename from STB_SPLIT_COMMON.
(STO_ALPHA_NOPV, STO_ALPHA_STD_GPLOAD): New.
* math/atest-exp.c (mpn_bitsize): Fix bit location calculation.
(main): e3s is negative on zero.
* math/atest-exp2.c: Likewise.
1998-08-23 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* Makerules (install): Add comment about absolute paths.
sys/reg.h.
* sysdeps/unix/sysv/linux/m68k/sys/reg.h: New file.
* sysdeps/unix/sysv/linux/m68k/Dist: Distribute it.
Mon Aug 24 10:37:38 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/m68k/Makefile (sysdep_headers): Add
sys/reg.h.
* sysdeps/unix/sysv/linux/m68k/sys/reg.h: New file.
* sysdeps/unix/sysv/linux/m68k/Dist: Distribute it.
* sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
Use orl $-1 instead of movl $-1 to save two bytes.
* sysdeps/unix/sysv/linux/i386/i686/sysdep.h (SYSCALL_ERROR_HANDLER):
Likewise.
* sysdeps/unix/sysv/linux/glob64.c: Define __stat using __xstat64.
1998-08-20 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile (elf/ldso_install): Put back. The problem still persists.
* elf/Makefile (ldso_install): Likewise.
1998-08-20 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* db2/db/db.c (db_open) [_LIBC]: Rename to __nss_db_open and
create weak alias.
* include/db.h: Declare __nss_db_open.
* db2/Versions: Export it.
* db2/makedb.c: Convert to use db2 API.
* nss/nss_db/db-XXX.c: Likewise.
* nss/nss_db/db-netgrp.c: Likewise.
* nss/nss_db/db-alias.c: Likewise.
(_nss_db_getaliasent_r): Allow retrying with a larger buffer.
1998-08-19 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Remove
sys_setresuid, already built automatically (or not).
* sysdeps/unix/sysv/linux/syscalls.list: Define __setresuid
instead of __syscall_setresuid and add back setresuid.
* sysdeps/unix/sysv/linux/seteuid.c: Use __setresuid instead of
__syscall_setresuid.
1998-08-21 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/sys/mount.h: Fix typo.
* libio/libioP.c (FILEBUF_LITERAL): Also initialize new _offset
Roland McGrath [Thu, 20 Aug 1998 22:03:33 +0000 (22:03 +0000)]
1998-08-21 Roland McGrath <roland@baalperazim.frob.com>
* elf/ldd.bash.in (TEXTDOMAIN, TEXTDOMAINDIR): Surround setting these
with magic comments ###BASH-ONLY and ###END-BASH-ONLY.
* elf/Makefile ($(objpfx)ldd): Generate always from ldd.bash.in.
(common-ldd-rewrite): New variable, old contents of $(sh-ldd-rewrite).
(sh-ldd-rewrite): Use that, add cmds to remove code surrounded by
those magic comments, and to use /bin/sh for @BASH@.
(bash-ldd-rewrite): Use $(common-ldd-rewrite).
* elf/ldd.sh.in: File removed.
Roland McGrath [Thu, 20 Aug 1998 22:02:17 +0000 (22:02 +0000)]
1998-08-21 Roland McGrath <roland@baalperazim.frob.com>
* elf/ldd.bash.in (TEXTDOMAIN, TEXTDOMAINDIR): Surround setting these
with magic comments ###BASH-ONLY and ###END-BASH-ONLY.
* elf/Makefile ($(objpfx)ldd): Generate always from ldd.bash.in.
(common-ldd-rewrite): New variable, old contents of $(sh-ldd-rewrite).
(sh-ldd-rewrite): Use that, add cmds to remove code surrounded by
those magic comments, and to use /bin/sh for @BASH@.
(bash-ldd-rewrite): Use $(common-ldd-rewrite).
* elf/ldd.sh.in: File removed.
* pwd/getpw.c (__getpw): Use %lu for uid and gid parameter and
cast them to unsigned long int.
* pwd/putpwent.c (putpwent): Likewise.
Patch by John Tobey <jtobey@banta-im.com>.
1998-08-20 17:14 H.J. Lu <hjl@gnu.org>
* libio/libioP.h (FILEBUF_LITERAL): Set the _offset field to
_IO_pos_BAD.
1998-02-20 17:54 H.J. Lu <hjl@gnu.org>
* libio/fileops.c (_IO_file_seekoff): Don't adjust pointers if
_IO_SYSSEEK fails.
* sysdeps/arm/__longjmp.S: Put return value in correct register.
Don't set the condition flags unnecessarily.
* sysdeps/arm/fpu/__longjmp.S: Likewise. Restore floating point
registers correctly.
* sysdeps/arm/dl-machine.h: Fix problems with profiling code
(patch from Scott Bambrough).
* csu/initfini.c (_init): Don't check whether __gmon_start__ is
NULL, just call it unconditionally.
(__gmon_start__): Provide stub version as a weak symbol.
1998-07-30 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/init-first.h: New file (from patch
by Scott Bambrough)
* sysdeps/unix/sysv/linux/arm/errlist.c: New file; ARM tools don't
like `@' in .type directives.
* sysdeps/arm/bsd-setjmp.S: Use PLT for procedure call.
* sysdeps/arm/bsd-_setjmp.S: Likewise.
* sysdeps/arm/dl-machine.h: Set __libc_stack_end.
1998-08-20 Andreas Jaeger <aj@arthur.rhein-neckar.de>
1998-07-24 10:58 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makerules (install-clean-symbolic-link-list): Make phony.
* Makefile (install-symbolic-link): Make phony. Depend on
subdir_install for parallel makes.
1998-07-22 Ulrich Drepper <drepper@cygnus.com>
* elf/Makefile (distribute): Add sln.c
1998-07-21 07:10 H.J. Lu <hjl@gnu.org>
* elf/sln.c: New file.
* Makerules (symbolic-link-prog, symbolic-link-list): New macros.
(install-clean-symbolic-link-list): New target.
(install): Depend on install-clean-symbolic-link-list.
(make-shlib-link): Changed for $(symbolic-link-list).
* Makefile (install-symbolic-link): New target.
(install): Depend on install-symbolic-link.
* include/unistd.h: Protect against multiple inclusion.
* posix/glob.c: Don't define __glob_pattern_p is NO_GLOB_PATTERN_P
is defined, not is glob is defined.
* sysdeps/unix/sysv/linux/glob64.c: Define NO_GLOB_PATTERN_P.
1998-08-01 17:18 H.J. Lu <hjl@gnu.org>
* sunrpc/rpcsvc/rusers.x (xdr_utmp): Use xdr_bytes instead of
xdr_string for ut_line, ut_name and ut_host.
1998-08-12 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/paths.h (_PATH_MAILDIR): Change to
/var/mail in accordance with FHS 2.0.
Reported by Javier Kohen <root@jkohen.tough.com.ar> [PR libc/639].
1998-08-12 Richard Henderson <rth@cygnus.com>
* sysdeps/unix/sysv/linux/alpha/syscalls.list (recvmsg, sendmsg):
Update aliases for cancelation.
* sysdeps/unix/sysv/linux/alpha/glob.c: Undef glob*64 before
playing with symbol versions.
(_hurd_canonicalize_directory_name_internal): Do not loop forever
for unknown root directories.
be reached.
Roland McGrath [Tue, 11 Aug 1998 23:28:49 +0000 (23:28 +0000)]
* sysdeps/mach/hurd/bits/posix_opt.h: Rewritten with comments and
multiple inclusion protection.
(_POSIX_SYNCHRONIZED_IO, _POSIX_FSYNC, _POSIX_MAPPED_FILES,
_POSIX_MEMORY_PROTECTION, _POSIX_POLL, _POSIX_SELECT): New macros,
define all these to 1.
(_POSIX_SYNC_IO): Add #undef, to remind us that pathconf reports it.
1998-08-12 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/getdomain.c (getdomainname): Renamed from __ name.
* sysdeps/mach/hurd/reboot.c: Include <sys/reboot.h>.
* sysdeps/mach/hurd/getdents.c: Include <unistd.h>.
* sysdeps/mach/hurd/sbrk.c: Include <unistd.h>.
* sysdeps/mach/usleep.c: Likewise.
Roland McGrath [Tue, 11 Aug 1998 21:41:09 +0000 (21:41 +0000)]
1998-07-25 19:47 Jose M. Moya <josem@gnu.org>
* sysdeps/mach/hurd/getcwd.c
(_hurd_canonicalize_directory_name_internal): Do not loop forever
for unknown root directories.
(__getcwd): Return NULL when the current root directory could not
be reached.
Roland McGrath [Tue, 11 Aug 1998 21:40:52 +0000 (21:40 +0000)]
1998-07-25 19:47 Jose M. Moya <josem@gnu.org>
* sysdeps/mach/hurd/getcwd.c
(_hurd_canonicalize_directory_name_internal): Do not loop forever
for unknown root directories.
(__getcwd): Return NULL when the current root directory could not
be reached.
* include/dirent.h: Protect from double inclusion.
1998-08-09 Mark Kettenis <kettenis@phys.uva.nl>
* posix/glob.h: Add LFS support for glob and globfree.
* posix/Versions [GLIBC_2.1]: Add glob64 and globfree64.
* posix/Makefile (routines): Add glob64.
* sysdeps/generic/glob64.c: New file.
* sysdeps/unix/sysv/linux/glob64.c: New file.
* sysdeps/unix/sysv/linux/alpha/glob64.c: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/glob64.c: New file.
* sysdeps/generic/glob.c [_LIBC && glob] (__glob_pattern_p):
Elide function.
* sysdeps/unix/sysv/linux/alpha/glob.c: Add glob64 as a weak alias
for __new_glob. Likewise for globfree64.
* sysdeps/unix/sysv/linux/sparc/sparc64/glob.c: New file.
1998-08-09 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/Makefile ($(common-objpfx)s-proto.d): Remove
-include flag from command.
Ulrich Drepper [Sun, 9 Aug 1998 22:16:07 +0000 (22:16 +0000)]
Update.
1998-08-07 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/bits/setjmp.h: Use word to save condition
registers.
* sysdeps/powerpc/setjmp.S: Save condition registers.
* sysdeps/powerpc/__longjmp.S: Restore condition registers.
* argp/argp-help.c: Prepare to be used outside glibc without gcc by
adding usual alloca cruft.
Reported by Eleftherios Gkioulekas <lf@amath.washington.edu>.
1998-04-05 Jim Meyering <meyering@ascend.com>
* lib/regex.c (WIDE_CHAR_SUPPORT): Define.
This now depends on HAVE_BTOWC so systems that lack btowc (like
solaris-2.5.1) don't lose.
1998-08-07 Mark Kettenis <kettenis@phys.uva.nl>
* sysdeps/generic/bits/sigaction.h: Remove definition of SA_DISABLE.
* sysdeps/generic/bits/sigstack.h: Define SS_DISABLE, SS_ONSTACK,
MINSIGSTKZ and SIGSTKSZ. Definitions match BSD.
* hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Use SS_ONSTACK
instead of SA_ONSTACK.
* sysdeps/mach/hurd/sigaltstack.c (__sigaltstack): Renamed from
sigaltstack, and created a weak alias. Use SS_DISABLE and
SS_ONSTACK instead of SA_DISABLE and SA_ONSTACK.
* sysdeps/mach/hurd/sigstack.c (sigstack): Use SS_ONSTACK instead
of SA_ONSTACK. Call __sigaltstack instead of sigaltstack.
* sysdeps/mach/hurd/i386/sigreturn.c (__sigreturn): Use SS_ONSTACK
instead of SA_ONSTACK.
* sysdeps/mach/hurd/alpha/sigreturn.c (__sigreturn): Likewise.
* sysdeps/mach/hurd/mips/sigreturn.c (__sigreturn): Likewise.
* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
Use SS_DISABLE instead of SA_DISABLE. Use SS_ONSTACK instead of
SA_ONSTACK where appropriate.
* sysdeps/mach/hurd/alpha/trampoline.c (_hurd_setup_sighandler):
Likewise.
* sysdeps/mach/hurd/hppa/trampoline.c (_hurd_setup_sighandler):
Likewise.
* sysdeps/mach/hurd/mips/trampoline.c (_hurd_setup_sighandler):
Likewise.
* manual/signal.texi (Signal Stack): Talk about SS_DISABLE and
SS_ONSTACK instead of SA_DISABLE and SA_ONSTACK in discussion of
the `ss_flags' member of `struct sigaltstack'.
1998-08-05 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* libio/Makefile (routines) [$(versioning)=yes]: Add oldtmpfile.
(shared-only-routines): Likewise.
* libio/oldtmpfile.c: New file
* stdio-common/tmpfile.c: Use __fdopen and __close.
[USE_IN_LIBIO]: Use _IO_fdopen instead of _IO_new_fdopen. Put
tmpfile on symbol version GLIBC_2.1.
* stdio-common/tmpfile64.c: Use __fdopen and __close.
[USE_IN_LIBIO]: Use _IO_fdopen instead of _IO_new_fdopen.
* stdio-common/Version [GLIBC_2.1]: Add tmpfile.
* stdio-common/tempnam.c: Use __strdup instead of strdup.
* sysdeps/posix/fdopen.c: Define __fdopen and make fdopen weak
alias.
* sysdeps/generic/fdopen.c: Likewise.
* sysdeps/mach/hurd/fdopen.c: Likewise.
* stdio/stdio.h: Declare __fdopen.
* sunrpc/openchild.c: Use __fdopen instead of fdopen.
[USE_IN_LIBIO]: Map __fdopen to _IO_fdopen.
* sysdeps/posix/tempname.c (__gen_tempname): Don't bother checking
__stub_open64, it is never defined.
1998-08-05 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* libio/iofopen64.c: Fix typo. Avoid unnessary casts.
* libio/iopopen.c: Unlink file before freeing it if command
creation failed. Avoid unnessary casts.
* libio/iofdopen.c: Avoid unnecessary cast.
* pwd/fgetpwent_r.c [USE_IN_LIBIO]: Map funlockfile to
_IO_funlockfile.
* pwd/fgetspent_r.c [USE_IN_LIBIO]: Likewise.
1998-08-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* grp/grp.h, pwd/pwd.h: Don't declare __grpopen, __grpread,
__grpalloc, __grpscan and the corresponding pwd functions, they
were removed long ago.
1998-08-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/posix/tempname.c (__stdio_gen_tempname): Rename to
__gen_tempname and simplify the interface. Strip out the
code to do path search and create FILE objects. This function
now takes a mktemp() style template and returns either a name
or a file descriptor.
(__path_search): New function; searches for directories for
temp files.
* sysdeps/generic/tempname.c: Stub out __gen_tempname and
__path_search, not __stdio_gen_tempname.
* libio/stdio.h: Prototype __gen_tempname and __path_search,
not __stdio_gen_tempname.
* stdio/stdio.h: Likewise.
* stdio-common/tempnam.c: Use __path_search and __gen_tempname.
* stdio-common/tmpfile.c: Likewise.
* stdio-common/tmpfile64.c: Likewise.
* stdio-common/tmpnam.c: Likewise.
* stdio-common/tmpnam_r.c: Likewise.
* misc/mkstemp.c: New file. Use __gen_tempname.
* misc/mktemp.c: Likewise.
* misc/Makefile: Fix installation problem with --disable-shared.
* posix/Makefile: Likewise.
1998-08-02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* posix/regex.c (re_search_2): Optimize searching for anchored
pattern if '^' cannot match at embedded newlines.
(regerror): Renamed from __regerror, which it should only be
called if _LIBC.
1998-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/syscalls.list: Add __syscall_setresuid
as real name for system call and make setresuid a weak alias. Set
caller to seteuid.
* sysdeps/unix/sysv/linux/seteuid.c (seteuid): Implement using
`setresuid' syscall if availble. Fixes problems with sendmail
which expects `seteuid' to not set the saved user ID.
* sysdeps/unix/sysv/linux/alpha/bits/time.h: Don't define CLK_TCK for
strictly ISO C compliant programs.
* sysdeps/unix/sysv/linux/mips/bits/time.h: Likewise.
1998-07-22 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* inet/protocols/rwhod.h: Correct typo in comment.
1998-07-29 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/pattern.texi (More Flags for Globbing): Fix typo.
* manual/math.texi (Special Functions): Fix typo.
* sysdeps/unix/sysv/linux/bits/in.h (IPV6_ROUTER_ALERT): New
constant from Linux 2.1.112.
* posix/Makefile (install-lib): Compile libposix.a only if
build-static == yes.
1998-07-28 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/generic/glob.c: Maintain const correctness. Move extern
declarations to file level. Cope with unsupported
_SC_GETPW_R_SIZE_MAX.
1998-07-29 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/tst-printf.c: %z is now recognized by printf.
* sysdeps/libm-ieee754/c_csqrt.c: Fix problems with some cancelation
errors.
* sysdeps/libm-ieee754/c_csqrtf.c: Likewise.
* sysdeps/libm-ieee754/c_csqrtlc: Likewise.
Patch by Stephen L Moshier <moshier@mediaone.net>.
* math/libm-test.c (csqrt_test): Correct typo in one test, add
another one.
* sysdeps/unix/sysv/linux/bits/siginfo.h: Adjust siginfo_t after
latest kernel change.
* resolv/nss_dns/dns-host.c (getanswer_r): Lower the priority of
warnings when DNSSEC related records are received.
* resolv/gethnamaddr.c (getanswer): Likewise.
Patch by Brian Wellington <bwelling@anomaly.munge.com>.
* signal/signal.h: Add prototype for sysv_signal.
* math/libm-test.c (tgamma_test): Remove redundant tests.
* posix/glob.h: Add GLOB_TILDE_CHECK.
* sysdeps/generic/glob.c: Implement GLOB_TILDE_CHECK.
* posix/globtest.c: Add option T to enable GLOB_TILDE_CHECK.
* posix/globtest.sh: Re-enable test with ~ and non-existing user name.