1999-03-27 Andreas Jaeger * malloc/obstack.h (obstack_free): Explicitly convert __obj to char * to avoid C++ warning. Patch by yasushi@cs.washington.edu [PR libc/1035]. 1999-03-29 Andreas Jaeger * manual/filesys.texi (Temporary Files): mktemp and mkstemp are declared in stdlib.h, correct return value of mkstemp. Reported by Andries Brouwer . * sysdeps/unix/sysv/linux/net/if_arp.h (ARPHDRD_FC*): New defines from Linux 2.2.5. 1999-03-28 Andreas Jaeger * misc/regexp.h (compile): Cast some pointers to (char *) to avoid C++ warning. * ctype/ctype.h (tolower, toupper): Add __THROW declaration to inline functions. Closes PR libc/1049. 1999-03-25 Andreas Jaeger * timezone/README: Update from tzdata1999c and tzcode1999c. * timezone/africa: Update from tzdata1999c. * timezone/antarctica: Likewise. * timezone/asia: Likewise. * timezone/australasia: Likewise. * timezone/europe: Likewise. * timezone/northamerica: Likewise. * timezone/southamerica: Likewise. * timezone/zone.tab: Likewise. * timezone/zic.c: Update from tzcode1999c. 1999-03-26 Andreas Schwab * Makerules: Add $(common-objpfx)Versions.all to common-generated outside of ifndef avoid-generated. * libio/oldiofdopen.c (_IO_old_fdopen): Bring over recent changes in iofdopen.c. * libio/oldiofopen.c (_IO_old_fopen): Bring over recent changes in iofopen.c. * libio/oldiofclose.c (_IO_old_fclose): Bring over recent changes in iofclose.c. * libio/oldfileops.c (_IO_old_file_underflow, _IO_old_file_sync, _IO_old_file_seekoff): Bring over recent changes in fileops.c. 1999-03-26 Mark Kettenis * sysdeps/mach/hurd/Makefile: Only install libc_p.a linker script if we build the profiled library. Fri Mar 26 10:27:38 1999 Andreas Schwab * math/Makefile (gmp-objs): Add inlines. Reported by Andreas Jaeger Thu Mar 25 23:57:57 1999 Roland McGrath * sysdeps/mach/hurd/i386/Makefile [$(subdir) = csu] (CFLAGS-initfini.s): New variable, add -DWEAK_GMON_START. This does for Hurd/i386 what the 1998-09-08 change did for Linux/i386. 1999-03-24 Roland McGrath * Makeconfig (sysd-sorted): Use $(..) on rhs of patsubst, so this rule works properly in subdirs. 1999-03-23 Roland McGrath * sysdeps/mach/hurd/Makefile: Undo last change. [$(subdir) = mach] (lib-noranlib): Depend on libmachuser-link.so. [$(subdir) = hurd] (lib-noranlib): Depend on libhurduser-link.so. * mach/Machrules (+preinit, +postinit, +interp, LDFLAGS-$(interface.so)): Variables removed. Interface libraries get linked just like other shared libraries. (interface.so): Fix typo in defn, so it works. ($(objpfx)$(interface.so)): Make it depend on libc.so. 1999-03-21 Roland McGrath * sysdeps/mach/hurd/Makefile (subdir_lib): Depend on $(link-rpcuserlibs). 1999-03-22 Andreas Schwab * elf/Makefile ($(inst_slibdir)/$(rtld-version-installed-name), $(inst_slibdir)/$(rtld-installed-name), ldso_install): Disable targets if not building shared libraries. Mon Mar 22 15:48:06 1999 Andreas Schwab * configure.in: Also look in $PATH when searching for install-info. Remove autoconf bug workaround and require autoconf 2.13. 1999-03-21 Andreas Jaeger * db/Makefile: Don't try to install shared library link if not building with shared libs. 1999-03-19 Andreas Jaeger * rt/Makefile: Link against static library if no shared lib is available. * localedata/Makefile: The shells scripts implementing the test require the dynamic linker which is not available with --disable-shared. Skip the test if --disable-shared is given. * linuxthreads/Makefile: Link test against static libpthread if no shared lib is available. * iconvdata/Makefile (tests): Run iconv-test only if we're building shared libraries. * elf/Makefile (tests): Likewise for elf tests. * posix/Makefile: The test frameworks globtest and wordexp-test require the dynamic linker which is not available with --disable-shared. Skip the test if --disable-shared is given. * grp/Makefile (otherlibs): For static nss build link against necessary libs. 1999-03-19 Andreas Jaeger * debug/Makefile (install-bin): Install and build catchsegv only if build-shared == yes. Reported by jussi@jlaako.pp.fi [PR libc/965]. 1999-03-20 Andreas Schwab * time/tzfile.c (__tzfile_read): Handle the case where there are transitions but no DST. 1999-03-20 Roland McGrath * mach/Machrules (extra-libs-others): Add $(interface-library) here too, so it gets built in the others pass rather than the lib pass. This is necessary since the RPC libraries need to be linked against libc. 1999-03-19 Roland McGrath * sysdeps/generic/segfault.c: Include for _itoa_word decl. * sysdeps/mach/hurd/Makefile (link-rpcuserlibs): New variable. ($(common-objpfx)libc.so): Depend on that instead of $(rpcuserlibs). ($(link-rpcuserlibs)): New static pattern rule; link intermediate versions of lib{mach,hurd}user.so without reference to libc.so, then link libc.so against that to get deps and symbol versions, then finally link real lib*user.so against libc.so. * sysdeps/mach/hurd/fcntl.c (__fcntl: case F_GETLK,F_SETLK,F_SETLKW): Support whole-file locking (only) by using the file_lock RPC. This has very wrong semantics, but is better than nothing for the time being. (Correct POSIX.1 locking will require new RPCs in the Hurd protocols that will be somewhat hairy to specify.) 1999-03-17 Mark Kettenis * sysdeps/mach/hurd/ptsname.c: New file. 1999-03-20 Andreas Schwab * timezone/asia: Fix rule in Asia/Nicosia entry. 1999-03-16 Andreas Jaeger * manual/getopt.texi (Using Getopt): Explain "::" in option string. Reported by Yuri Niyazov . 1999-03-18 Thorsten Kukuk * sunrpc/clnt_unix.c: Fix creation of parameters for sendmsg/recvmsg on non intel platforms. * sunrpc/svc_unix.c: Likewise. 1999-03-18 Philip Blundell * sysdeps/unix/sysv/linux/arm/getgroups.c: New file. Use the i386 implementation. 1999-03-19 Andreas Jaeger * timezone/africa: Update from tzdata1999b. * timezone/asia: Likewise. * timezone/australasia: Likewise. * timezone/europe: Likewise. * timezone/northamerica: Likewise. * timezone/southamerica: Likewise. * timezone/zone.tab: Likewise. * timezone/README: Mention tzdata1999b. 1999-03-17 Ulrich Drepper * sysdeps/generic/segfault.c (write_strsignal): New function. (catch_segfault): Use it instead of calling strsignal. 1999-03-16 Andreas Jaeger * iconv/gconv.c (__gconv): Change type of last_start to unsigned char to avoid warning. 1999-03-15 Ulrich Drepper * iconv/iconv.c (iconv): Correctly cast parameters for __gconv. * iconvdata/iso-2022-kr.c (EMIT_SHIFT_TO_INIT): Change type of outbuf to unsigned char to avoid warning. 1999-03-11 David S. Miller * sysdeps/sparc/sparc32/fpu/fpu_control.h: Add missing trap enable masks. * sysdeps/sparc/sparc64/fpu/fpu_control.h: Likewise. 1999-03-15 Ulrich Drepper * iconv/gconv.h (gconv_fct): Change parameter from `char' to `unsigned char'. (gconv_step_data): Likewise. * iconv/gconv_int.h (__gconv): Likewise. (__BUILINT_TRANS): Likewise. * iconv/gconv.c (__gconv): Likewise. * iconv/iconv.c (iconv): Add casts for call of __gconv. * iconv/skeleton.c: Change local parameters and variable from `char' to `unsigned char'. Remove casts from calls into modules. * iconvdata/iso-2022-jp.c (gconv): Change local variable outbuf from `char' to `unsigned char'. * wcsmbs/btowc.c: Change pointers from `char *' to `unsigned char *'. * wcsmbs/mbrtowc.c: Likewise. * wcsmbs/mbsnrtowcs.c: Likewise. * wcsmbs/mbsrtowcs.c: Likewise. * wcsmbs/wcrtomb.c: Likewise. * wcsmbs/wcsnrtombs.c: Likewise. * wcsmbs/wcsrtombs.c: Likewise. * wcsmbs/wctob.c: Likewise. 1999-03-15 Mark Kettenis * sysdeps/mach/hurd/Versions (ld.so) [GLIBC_2.0]: Add __hurd_sigthread_stack_base, __hurd_sigthread_stack_end, __hurd_sigthread_variables, __hurd_threadvar_stack_mask, __hurd_threadvar_stack_offset, __close, __fxstat, __getcwd, __getpid, __libc_read, __libc_write, __lseek, __mmap, __open, __xstat, _exit, _hurd_intr_rpc_mach_msg and abort. 1999-03-15 Mark Kettenis * sysdeps/mach/hurd/poll.c (__poll): Correctly pass NULL to _hurd_select if TIMEMOUT is -1. 1999-03-15 Mark Kettenis * sysdeps/mach/hurd/recvfrom.c (recvfrom): Allow ADDR to be NULL. 1999-03-15 Ulrich Drepper * elf/dl-load.c: Compute rtld_search_dir array size correctly. Reported by Yasushi Saito . 1999-03-15 Andreas Schwab * manual/libc.texinfo: Undo last change for now. 1999-03-15 Ulrich Drepper * intl/locale.alias: Add entries for Croatian. Patch by Tomislav Vujec . 1999-03-13 Mark Kettenis * sysdeps/unix/bsd/getpt.c (__getpt): Do not use `isatty' to check if the opened master pty really is a pty. `isatty' checks for tty-ness and a pty is not a tty. Return ENOENT instead of ENFILE if we are out of pty's. 1999-03-13 Mark Kettenis * sysdeps/generic/utmp_file.c (setutent_file): Make sure the just opened file is closed on exec. * login/utmp_daemon.c (setutent_daemon): Likewise for the just opened socket. 1999-03-13 Andreas Jaeger * manual/llio.texi (File Position Primitive): Reformat @end command. Patch by Bruno Haible [PR libc/1020]. 1999-03-14 Ulrich Drepper * nscd/nscd_getpw_r.c (nscd_getpw_r): Set `errno' correctly if no entry is found. * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise. * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise. * locale/programs/localedef.c (main): Initialize `cat' to please the compiler. 1999-03-14 Roland McGrath * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): Under O_NOFOLLOW, check for root-owned symlinks and reject them too. 1999-03-09 Andreas Schwab * stdio-common/printf_fphex.c: Move to ... * sysdeps/generic/printf_fphex.c: ... here. Fix exponent of extended precision number. * sysdeps/m68k/printf_fphex.c: New file. 1999-03-09 Andreas Schwab * manual/stdio.texi: Fix typos. 1999-03-09 Ulrich Drepper * version.h (VERSION): Bump to 2.1.1. 1999-03-09 Thorsten Kukuk * nis/ypclnt.c: Try only twice to connect to NIS server. 1999-03-09 Roland McGrath * hurd/hurdexec.c (_hurd_exec): Add missing `else' in last change. 1999-03-09 Andreas Schwab * stdlib/strtod.c (round_and_return): Fix rounding of denormals. (DENORM_EXP): New define. Use it as the exponent for a denormal. * stdlib/strtold.c: Moved to ... * sysdeps/generic/strtold.c: ... here. * sysdeps/m68k/strtold.c: New file. 1999-03-09 Andreas Schwab * stdio-common/printf_fphex.c (__printf_fphex): Print no decimal point if the precision is zero, even if the mantissa is non-zero. 1999-03-09 Roland McGrath * sysdeps/mach/hurd/ioctl.c (__ioctl): Move the marshalling of the arguments into the request message buffer inside `send_rpc' subfunction. We must repeat the marshalling when retrying the RPC after a SIGTTOU delivery. * hurd/ctty-input.c (_hurd_ctty_input): Use early short-circuit code path when there is no ctty port. * hurd/ctty-output.c (_hurd_ctty_output): Likewise. Move sigstate check inside loop so we recheck after handling a signal. 1999-03-05 Andreas Jaeger * manual/llio.texi (Open-time Flags): Clarify that O_SHLOCK and O_EXLOCK are BSD extensions. Reported by Jochen Voss [PR libc/985]. 1999-03-08 Ulrich Drepper * manual/signal.texi (Termination in Handler): Correct example. Install default handler before reraising the signal. Patch by Jochen Voss . 1999-03-08 Roland McGrath * hurd/hurdexec.c (_hurd_exec): Handle ARGV or ENVP parameters being null, in which case send an empty string. 1999-03-02 Mark Kettenis * Makerules (LD_FLAGS-c.so): Add -u __register_frame to force the backward compatibility EH functions to be linked when using gcc-2.8.1. Patch by Zack Weinberg . 1999-03-08 Andreas Schwab * sysdeps/unix/sysv/linux/ttyname.c (ttyname): Undo last change. /dev/pts status may change during runtime. 1999-03-08 Andreas Schwab * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Undo last change. /dev/pts status can change during runtime. 1999-03-07 Thorsten Kukuk * sunrpc/svc_tcp.c (readtcp): go into fatal error state if poll reports error. * nis/nss_nisplus/nisplus-parser.c: Avoid duplicate strlen calls, add some more sanity checks. * nis/nss_nisplus/nisplus-pwd.c: Include nisplus-parser.h for parser prototype. 1999-03-05 Thorsten Kukuk * sunrpc/rpc/xdr.h: Add x_getint32/x_putint32 to xdr_ops, change XDR_GETINT32/XDR_PUTINT32 to sue new functions. * sunrpc/xdr_mem.c: Add xdrmem_getint32, xdrmem_putint32. * sunrpc/xdr_rec.c: Add xdrrec_getint32, xdrrec_putint32. * sunrpc/xdr_sizeof.c: Add x_putint32, add dummy function for x_getint32. * sunrpc/xdr_stdio.c: Add xdrstdio_getint32, xdrstdio_putint32. * nis/nis_print.c: Fix ctime argument for platforms where sizeof (time_t) != sizeof (int). 1999-03-07 Mark Kettenis * sysdeps/unix/bsd/clock.c (timeval_to_clock_t): Use CLOCKS_PER_SEC instead of CLK_TCK. 1999-03-05 Ulrich Drepper * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Remember whether /dev/pts is available. * sysdeps/unix/sysv/linux/ttyname.c (ttyname): Fix handling of dev_pts_available. * posix/globtest.sh: Make common_objpfx path absolute and and db2 and hesiod directory to library path [PR libc/1007]. 1999-03-05 Andreas Jaeger * resolv/inet_addr.c (inet_aton): Don't allow componets > 255. Patch by Bruno Haible [PR libc/1010]. 1999-03-05 Geoff Keating * sysdeps/powerpc/dl-machine.c (__elf_machine_runtime_setup): DT_PLTGOT has already been relocated. (__elf_machine_fixup_plt): Likewise. Minor cleanups. 1999-03-04 Roland McGrath * hurd/hurdlookup.c (__hurd_file_name_lookup): Comment fix. 1999-03-03 Ulrich Drepper * wcsmbs/wcsmbsload.c (add_slashes): Rename to norm_add_slashes and fold string to uppercase [PR libc/1005]. 1999-03-03 Andreas Schwab * elf/dl-load.c (lose): Fix return type. 1999-03-03 Roland McGrath * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU] (O_NOFOLLOW, O_DIRECTORY): New macros. * hurd/hurdlookup.c (__hurd_file_name_lookup): If O_NOFOLLOW is set, set O_NOTRANS as well. (__hurd_file_name_lookup_retry): At successful end of lookup, if O_NOFOLLOW set, io_stat the resultant port and fail with ENOENT if it is a translated node not owned by root. (__hurd_file_name_lookup): If O_DIRECTORY is set, put a trailing slash on the file name passed to LOOKUP. 1999-03-02 Ulrich Drepper * manual/time.texi (High Resolution Timer): Correct computation in example. Reported by jjf@devel.cemsys.com. 1999-03-02 Philip Blundell * sysdeps/arm/dl-machine.h (elf_machine_runtime_setup): DT_PLTGOT entry is already relocated. 1999-03-01 Andreas Jaeger * resolv/res_hconf.c (parse_line): Skip empty lines. Bug reported by Marcus Harnisch . 1999-03-01 Andreas Jaeger * sysdeps/i386/sys/ucontext.h (ucontext): Rename field uc_links to uc_link which is the right name according to Unix98. Reported by Craig Metz [PR libc/1001]. * sysdeps/arm/sys/ucontext.h (ucontext): Likewise. * sysdeps/m68k/sys/ucontext.h (ucontext): Likewise. * sysdeps/mips/sys/ucontext.h (ucontext): Likewise. * sysdeps/unix/sysv/linux/alpha/sys/ucontext.h (ucontext): Likewise. * sysdeps/unix/sysv/linux/i386/sys/ucontext.h (ucontext): Likewise * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h (ucontext): Likewise. 1999-02-25 Andreas Schwab * manual/libc.texinfo: Wrap @top node inside @ifnottex instead of @ifinfo. 1999-02-25 Andreas Schwab * iconvdata/Makefile: Always include iconv-rules, but disable rule to regenerate it if avoid-generated. * Makeconfig: Always include sys-dirs, but disable rule to regenerate it when avoid-generated. * sysdeps/unix/Makefile: Put `ifndef avoid-generated' only around rule to generate sysd-syscalls. * elf/Makefile (generated): Remove $(objpfx) from names. 1999-02-28 Mark Kettenis * sysdeps/mach/hurd/getsockname.c (getsockname): Set *LEN to the actual length if the adress length is smaller than the input value. Change type of *LEN paramater to socklen_t. * sysdeps/mach/hurd/getpeername.c (getpeername): Likewise. * sysdeps/mach/hurd/accept.c (accept): Likewise. * sysdeps/mach/hurd/recvfrom.c (recvfrom): Likewise. * sysdeps/mach/hurd/sendto.c (sendto): Change type of ADDR_LEN paramater to socklen_t. 1999-02-28 Roland McGrath * hurd/hurd-raise.c (_hurd_raise_signal): Send "poll request" msg_sig_post RPC (with SIGNO=0), rather than generating signal (again) with the RPC. 1999-02-27 Roland McGrath * sysdeps/mach/getsysstats.c (__get_nprocs_conf, __get_nprocs, __get_phys_pages): Cast &HBI to silence warning. * hurd/Makefile (routines): Add hurdchdir and hurdfchdir. * hurd/hurdchdir.c: New file. * hurd/hurdfchdir.c: New file. * sysdeps/mach/hurd/chroot.c: Call _hurd_change_directory_port_from_name to do the work. * sysdeps/mach/hurd/chdir.c: Likewise. * sysdeps/mach/hurd/fchdir.c: Call _hurd_change_directory_port_from_fd to do the work. * hurd/fchroot.c: Likewise. * hurd/hurd.h: Declare them. 1999-02-27 Ulrich Drepper * elf/dl-load.c (lose): Add more comments to explain the `why'. (_dl_map_object): Remove redundant test. 1999-02-27 Roland McGrath * hurd/hurdselect.c (_hurd_select): When bailing for bogus fd, don't try to _hurd_port_free a lower-numbered descriptor that was not in any fd_set. 1999-02-26 Andreas Jaeger * wcsmbs/wcstold_l.c [__NO_LONG_DOUBLE_MATH]: Add prototype declaration for ____wcstod_l_internal. * stdlib/strtold.c [__NO_LONG_DOUBLE_MATH]: Include for __strtod_internal prototype. * stdlib/strtold_l.c [__NO_LONG_DOUBLE_MATH] (____strtold_l_internal): Add prototype declaration. (__strtold_l): Call correct function. 1999-02-24 Ulrich Drepper * elf/elf.h: Add 32bit HPPA definitions. 1999-02-23 Andreas Schwab * malloc/malloc.c (mALLOC_SET_STATe): Handle the case where a non-checked heap is restored when malloc checking was requested by the user. (struct malloc_state): Add using_malloc_checking. (MALLOC_STATE_VERSION): Increment minor. (using_malloc_checking, disallow_malloc_check): New variables. (__malloc_check_init): Use them. (mALLOC_GET_STATe): Use mALLOc to allocate the malloc_state, so that it can the chunk is properly instrumented when malloc checking is enabled. Set the new using_malloc_checking field. (malloc_hook_ini): Correct signature when _LIBC is not defined. 1999-02-23 Andreas Schwab * sysdeps/unix/sysv/linux/i386/dl-librecon.h (DISTINGUISH_LIB_VERSIONS): Don't relocate DT_STRTAB a second time. * elf/rtld.c (dl_main): Rename paths_initialized to rtld_is_main. Don't call elf_get_dynamic_info and _dl_setup_hash a second time if ld.so is the main program. 1999-02-23 Ulrich Drepper * stdio-common/vfprintf.c (vfprintf): If precision or width is too large for work_buffer, allocate new buffer. (printf_unknown): Likewise. [PR libc/988] 1999-02-22 Ulrich Drepper * sysdeps/unix/sysv/linux/ttyname.c: Use __xstat and __fxstat instead of stat and fstat. * sysdeps/unix/sysv/linux/ttyname_r.c: Likewise. 1999-02-23 Andreas Schwab * elf/dl-error.c (_dl_signal_cerror): New function. (_dl_signal_error): Don't call receiver function. * elf/dl-lookup.c (_dl_lookup_symbol): Call _dl_signal_cerror instead of _dl_signal_error when reporting references to undefined symbols or versions. (_dl_lookup_versioned_symbol): Likewise. (_dl_lookup_versioned_symbol_skip): Likewise. * elf/dl-version.c (match_symbol): Likewise. * elf/ldsodefs.h: Declare _dl_signal_cerror. 1999-02-22 Ulrich Drepper * misc/getttyent.c (getttyent): Release lock on stream later to also protect global variable zapchar. * sysdeps/unix/sysv/linux/clock.c: Don't test return value of __times [PR libc/990]. 1999-02-21 David S. Miller * sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h: Fix parentheses in Feb 2 changes. * sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h: Likewise. 1999-02-21 Andreas Jaeger * sysdeps/generic/glob.c (glob): Save previous errno. 1999-02-21 Ulrich Drepper * sysdeps/generic/glob.c (glob): Enlarge buffers for reentrant lookup functions if it is too small. 1999-02-20 Ulrich Drepper * elf/dl-deps.c (_dl_map_object_deps): Don't add dummy objects created for tracing to the scope lists. * elf/do-lookup.h: Remove test for l_opencount == 0 after above change. DT_SYMTAB is always available according to ELF spec. * elf/dl-lookup.c (_dl_lookup_symbol_skip): Before first do_lookup call test whether there is any scope left. (_dl_lookup_versioned_symbol_skip): Likewise. * elf/Makefile (distribute): Add do-lookup.h. * elf/do-lookup.h: New file. Split out from dl-lookup.c. * elf/dl-lookup.c: Move do_lookup function in separate file and include the file twice, for handling versioning and without it. * sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): DT_PLTGOT entry is already relocated. * sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Likewise. * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Likewise. * sysdeps/mips/dl-machine.h (elf_machine_runtime_setup): Likewise. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup): Likewise. * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_runtime_setup): Likewise. * sysdeps/mips/mips64/dl-machine.h (elf_machine_runtime_setup): Likewise. * elf/dynamic-link.h (elf_get_dynamic_info): Take new argument with load address. Relocate d_ptr in DT_DTRTAB, DT_SYMTAB, DT_RELA, DT_REL, DT_JMPREL, DT_PLTGOT, and DT_VERSYM l_info entry. (_ELF_DYNAMIC_DO_RELOC): Take extra argument which specifies whether rel and rela relocations can both happen and skip one test if this is not possible. (ELF_DYNAMIC_DO_RELA, ELF_DYNAMIC_DO_REL): Call _ELF_DYNAMIC_DO_RELOC appropriately. * elf/dl-addr.c (_dl_addr): DT_SYMTAB and DT_STRTAB entries are already relocated. * elf/dl-deps.c (_dl_map_object_deps): DT_STRTAB entry is already relocated. * elf/dl-load.c (_dl_init_paths): DT_STRTAB entry is already relocated. (_dl_map_object_from_fd): Call elf_get_dynamic_info with new argument. (_dl_map_object): DT_STRTAB entry is already relocated. * elf/dl-lookup.c (do_lookup): DT_STRTAB and DT_SYMTAB entries are already relocated. * elf/dl-reloc.c (_dl_relocate_object): DT_STRTAB entry is already relocated. * elf/dl-runtime.c (fixup): DT_SYMTAB, DT_STRTAB, DT_JMPREL, and DT_VERSYM entries are already relocated. (profile_fixup): Likewise. * elf/dl-version.c: Rename VERSTAG macro into VERSYMIDX. Replace all users. (match_symbol): DT_STRTAB entry is already relocated. (_dl_check_map_versions): Likewise. Also fo DT_VERSYM. * elf/do-rel.h (elf_dynamic_do_rel): reladdr is now assumed to be relocated already. DT_SYMTAB and DT_VERSYM entries are also relocated. * elf/rtld.c (_dl_start): Pass extra argument to elf_get_dynamic_info. (find_needed): DT_STRTAB entry is already relocated. (dl_main): Pass extra argument to elf_get_dynamic_info. DT_STRTAB entry is already relocated. * sysdeps/alpha/dl-machine.h (elf_machine_fixup_plt): DT_JMPREL and DT_PLTGOT entries are already relocated. (elf_machine_rela): Likewise for DT_SYMTAB. * sysdeps/arm/dl-machine.h (elf_machine_rel): DT_STRTAB is already relocated. * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise. * sysdeps/m68k/dl-machine.h (elf_machine_rela): Likewise. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Likewise. * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Likewise. * sysdeps/powerpc/dl-machine.c (__process_machine_rela): Likewise. * sysdeps/mips/dl-machine.h (elf_machine_got_rel): Likewise. (elf_machine_got_rel): Likewise for DT_SYMTAB and DT_STRTAB. * sysdeps/mips/mips64/dl-machine.h: Likewise. * grp/initgroups.c (initgroups): If function in current module was successful don't stop but continue to process to get all the groups. * elf/dl-load.c (_dl_map_object_from_fd): Use global _dl_pf_to_proot array to convert p_flags value. * elf/dl-reloc.c (_dl_relocate_object): Likewise. * elf/dynamic-link.h (elf_get_dynamic_info): Use memset instead of loop to clear `info'. * sysdeps/i386/i486/bits/string.h: If fill byte is constant let gcc do the work and don't use inline assembler. 1999-02-19 Ulrich Drepper * elf/ldsodefs.h (_dl_signal_error): Mark as __noreturn__. * elf/dl-load.c (lose): Make it a function at the toplevel, mark as noreturn, and prevent it from being inlined. Define LOSE appropriately. (_dl_map_object_from_fd): Compare all bytes in e_ident at once. Optimize decoding of p_flags for certain platforms. 1999-02-19 Philip Blundell * Makeconfig (link-libc): When doing a static link, make sure that libgcc.a is included both before and after libc.a. 1999-02-18 Thorsten Kukuk * nis/nss_compat/compat-spwd.c: Fix handling of default values for sp_warn, sp_inact, sp_expire and sp_flag. 1999-02-18 Ulrich Drepper * elf/link.h (link_map): Add l_dev and l_ino. * elf/dl-load.c (_dl_map_object_from_fd): Test dev/ino of newly loaded shared object with all laoded objects. Initialize l_ino and l_dev in case it's new. * elf/rtld.c (dl_main): Explain situation is l_dev/l_ino with main object. * elf/Makefile: Compile and run new test. * elf/multiload.c: New file. * nss/nsswitch.h (service_user): Change name field from const char * to char[0]. (name_database_entry): Likewise. * nss/nsswitch.c (nss_parse_service_list): Adjust memory allocation for change of `service_user'. (nss_getline): Adjust memory allocation for change of `name_database_entry'. * catgets/catgets.c: Correctly handle NLSPATH from environment [PR libc/980]. * io/Makefile (routines): Add lock64. * io/Versions: Add lockf64 for GLIBC_2.1.1. * sysdeps/generic/lockf64.c: New file. 1999-02-16 Ulrich Drepper * string/bits/string2.h: Only use strncmp optimization if count argument is constant. 1999-02-16 Roland McGrath * sysdeps/mach/hurd/revoke.c: New file. 1999-02-16 Ulrich Drepper * wctype/wctype.h (_ISwbit): Cast result of shift operations to int to avoid warning about `ISO C restricts enumerator values to range of `int''. 1999-02-16 Andreas Jaeger * elf/dlfcn.h: Fix typo. * sysdeps/generic/bits/dlfcn.h: Likewise. * sysdeps/mips/bits/dlfcn.h: Likewise. 1999-02-16 Ulrich Drepper * sysdeps/i386/i486/bits/string.h (memcmp): Correctly set flags for the case N == 0. * db2/Makefile (distribute): Add LICENSE. 1999-02-03 Jeff Bailey * sysdeps/unix/make_errlist.c: Add i18n and copyright to generated files. * sysdeps/unix/sysv/sysv4/solaris2/sparc/errlist.c: Fix typo. 1999-02-16 Ulrich Drepper * time/mktime.c: Use ISO C form for function definitions and remove unnecessary prototypes. * sysdeps/posix/getaddrinfo.c (getaddrinfo): Fix typo in last change. * time/time.h: Avoid unneccesary #ifdef. 1999-02-15 Geoff Keating * stdio-common/_itoa.c (_itoa): Correct parameters to udiv_qrnnd_preinv. 1999-02-14 Andreas Jaeger * misc/sys/cdefs.h: Undefine __PMT since it might be defined before (e.g. in glob.h). Closes PR libc/959. 1999-02-16 Andreas Jaeger * sysdeps/mips/fpu_control.h: Fix typo. Patch by Sylvain Pion . Remove __setfpucw. 1999-02-10 Roland McGrath * sysdeps/mach/hurd/pipe.c (__pipe): Don't call __socket_shutdown on the "unused" ends of the sockets. Let pipes be bidirectional. 1999-02-15 Ulrich Drepper * sysdeps/posix/getaddrinfo.c (getaddrinfo): Correct test for invalid ai_flags. 1999-02-15 Andreas Jaeger * manual/llio.texi (Waiting for I/O): Correct meaning. Patch by Jochen Voss [PR libc/969]. * manual/setjmp.texi (Non-Local Exits and Signals): Fix typo. Patch by Jochen Voss [PR libc/970]. 1999-02-15 Ulrich Drepper * string/Versions: Add __strverscmp to GLIBC_2.1.1. 1999-02-13 Andreas Schwab * misc/syslog.c (vsyslog): Remember errno for %m format. Fix check for priority mask. 1999-02-14 Ulrich Drepper * resolv/netdb.h (AI_NUMERICHOST): Change to 4. Reported by Craig Metz . 1999-02-14 Andreas Jaeger * stdio-common/Makefile (tests): tllformat added. * stdio-common/tllformat.c: New program, based on tiformat.c with examples from Franz Sirl . 1999-02-14 Andreas Schwab * posix/test-vfork.c: Fix exit status test. 1999-02-14 Andreas Jaeger * sysdeps/unix/sysv/linux/sa_len.c (__libc_sa_len): Add some missing cases. Reported by Craig Metz [PR libc/964]. 1999-02-14 Andreas Schwab * sysdeps/m68k/fpu/s_modf.c: Optimized by using __m81_test instead of separare explicit comparisons. 1999-02-11 Andreas Schwab * sysdeps/wordsize-64/inttypes.h: Always define ldiv_t if not yet defined. * sysdeps/wordsize-32/inttypes.h: Always define lldiv_t if not yet defined. 1999-02-09 Ulrich Drepper * po/el.po: Update from translation team. 1999-02-09 Andreas Jaeger * intl/locale.alias: Fix slovenian entry [PR libc/948]. 1999-02-09 Andreas Jaeger * elf/sprof.c: assert.h isn't used anymore, remove inclusion. * inet/ruserpass.c: Likewise. * locale/programs/stringtrans.c: Likewise. * locale/programs/localedef.c: Likewise. * nscd/grpcache.c: Likewise. * nss/nss_files/files-XXX.c: Likewise. * stdlib/canonicalize.c: Likewise. * sysdeps/posix/sigwait.c: Likewise. 1999-02-09 Andreas Jaeger * sunrpc/pmap_rmt.c (clnt_broadcast): We need 32 bit comparison even on 64 bit platforms. * sunrpc/clnt_tcp.c (clnttcp_call): Likewise. Patch by Loic Prylli . 1999-02-09 Ulrich Drepper * intl/dcgettext.c: Include locale.h is available. 1999-02-08 Ulrich Drepper * po/nl.po: Update from translation team. * sysdeps/libm-i387/s_asinhf.S: Correct computing absolute value. * Makefile: Allow calling goals for po subdir. * sysdeps/unix/sysv/linux/alpha/bits/signum.h: Add missing RT signal definitions. * po/el.po: New file. 1999-02-07 Andreas Schwab * elf/dl-load.c (_dl_map_object_from_fd): Replace magic constant when processing DT_SYMBOLIC objects. 1999-02-07 Andreas Schwab * elf/dl-load.c (_dl_map_object_from_fd): When looking for the program headers without PT_PHDR only require that they are contained within one of the loaded segments. Don't use assert, since that would be a bug in the object, not the dynamic linker. 1999-02-08 Richard Henderson * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Save and restore all call-clobbered fp regs. 1999-02-08 Ulrich Drepper * po/cs.po: New file. * resolv/res_hconf.c (_res_hconf_init): Don't use ENV_HOSTCONF for SUID binaries. 1999-02-07 Ulrich Drepper * signal/signal.h: Don't declare __libc_allocate_rtsig. * include/signal.h: Declare __libc_allocate_rtsig here. * elf/dl-lookup.c: Increment _dl_num_relocations in the four entry point functions, not do_lookup since the later can be called more than once. 1999-02-03 Jakub Jelinek * sysdeps/generic/segfault.c: Add ADVANCE_STACK_FRAME macro, so that architectures which need to add some special offset to stack pointer can share this file. * sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/register-dump.h: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/register-dump.h: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/bits/mman.h: Remove. * sysdeps/unix/sysv/linux/sparc/sparc64/bits/mman.h: Remove. * sysdeps/unix/sysv/linux/sparc/bits/mman.h: New file - common between sparc32 and sparc64. * sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S: Remove. * sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S: Remove. * sysdeps/unix/sysv/linux/sparc/vfork.S: New file - common between sparc32 and sparc64. * sysdeps/unix/sysv/linux/sparc/sparc32/fork.S: Remove. * sysdeps/unix/sysv/linux/sparc/sparc64/fork.S: Remove. * sysdeps/unix/sysv/linux/sparc/fork.S: New file - common between sparc32 and sparc64. * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.S: Remove. * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.S: Remove. * sysdeps/unix/sysv/linux/sparc/sysdep.S: New file - common between sparc32 and sparc64. 1999-02-07 Ulrich Drepper * Versions.def: New version GLIBC_2.1.1 for libc. * stdlib/Versions: Add _Exit, imaxdiv, and imaxdiv to GLIBC_2.1.1. * stdlib/labs.c: Moved to... * sysdeps/generic/labs.c: ...here. * stdlib/llabs.c: Moved to... * sysdeps/generic/llabs.c: ...here. * stdlib/stdlib.h: Allow definition of ldiv_t and lldiv_t in other header. Declare _Exit. * sysdeps/generic/_exit.c: Add alias _Exit. * sysdeps/mach/hurd/_exit.c: Likewise. * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise. * sysdeps/standalone/i960/nindy960/_exit.c: Likewise. * sysdeps/standalone/m68k/m68020/mvme136/_exit.c: Likewise. * sysdeps/unix/_exit.c: Likewise. * sysdeps/wordsize-32/inttypes.h: Define imaxdiv_t and declare imaxdiv and imaxabs. Declare lldiv_t if necessary. * sysdeps/wordsize-64/inttypes.h: Likewise. * sysdeps/wordsize-32/llabs.c: New file. * sysdeps/wordsize-32/lldiv.c: New file. * sysdeps/wordsize-64/labs.c: New file. * sysdeps/wordsize-64/ldiv.c: New file. * manual/arith.texi: Document imaxabs, imaxdiv_t, and imaxdiv. * manual/startup.texi: Document _Exit. 1999-02-07 Andreas Jaeger * nscd/cache.c: Include for inet_ntop. 1999-02-06 Ulrich Drepper * Versions.def: Add versions for ld.so. * csu/Versions: Remove __libc_stack_end here. * elf/Versions: Split libc definitions in libc and ld.so definitions. * elf/Makefile (ld-map): Change to ld.so.map. * scripts/versions.awk: Recognize dot in library names. * ctype/ctype.h: Remove definitions of __tolower and __toupper. Don't use __tolower and __toupper in inline functions. Add optimizing macros for tolower and toupper. * ctype/ctype-extn.c (_tolower): Don't use __tolower. (_toupper): Don't use __toupper. * ctype/ctype.c (tolower): Don't use __tolower. (toupper): Don't use toupper. * nscd/cache.c (prune_cache): Correct printing of debugging messages. * resolv/Versions (libresolv): Export __ns_name_unpack and __ns_name_ntop. * resolv/res_comp.c: Rename ns_name_unpack to __ns_name_unpack and make it global. Change all users. Similar for ns_name_ntop. * resolv/nss_dns/dns-host.c: Don't use dn_expand when extracting in user-provided buffer. Use __ns_name_unpack and __ns_name_ntop directly to detect too small buffer. * resolv/nss_dns/dns-network.c: Likewise. * stdio-common/Makefile (tests): Add scanf12. * stdio-common/scanf12.c: New file. * stdio-common/scanf12.input: New file. * stdio-common/vfscanf.c (__vfscanf): Handle +/- at beginning of floating-point correctly if the number is invalid. * stdio-common/vfscanf.c: Don't use non-reentrant multibyte conversion functions. * stdio-common/printf_fp.c: Likewise. * stdio-common/printf_fphex.c: Likewise. * stdio-common/vfprintf.c: Likewise. See ChangeLog.9 for earlier changes.