aboutsummaryrefslogtreecommitdiff
path: root/elf/dynamic-link.h
AgeCommit message (Collapse)Author
2011-10-16Cleanup last patchUlrich Drepper
2011-10-16Fix potential problem with skipping relocationsUlrich Drepper
We never seem to have hit this problem but way relative relocations were skipped was wrong. There are relative relocations only in the DT_REL/DT_RELA section. The elf_dynamic_do_##reloc function skipped the entries in all calls, though.
2011-10-05Don't call ifunc functions in trace modeAndreas Schwab
2011-07-02Make asserts accept DT_FLAGS/DT_FLAGS_1 with zero flags.Roland McGrath
2010-01-18Use correct type when casting d_tag.Andreas Schwab
2010-01-18Ignore negative dynamic entry types.Andreas Schwab
2008-05-13Introduce TLS descriptors for i386 and x86_64.Ulrich Drepper
* include/inline-hashtab.h: New file, copied from 2005's libiberty, with fix for memory leak imported afterwards by Glauber de Oliveira Costa. * elf/tlsdeschtab.h: New file. * elf/dl-reloc.c (_dl_try_allocate_static_tls): Extract from... (_dl_allocate_static_tls): ... here. Rearrange failure path. (CHECK_STATIC_TLS): Move to... * elf/dynamic-link.h: ... this file. (TRY_STATIC_TLS): New macro. * elf/dl-conflict.c (CHECK_STATIC_TLS, TRY_STATIC_TLS): Override. * elf/elf.h (R_386_TLS_GOTDESC, R_386_TLS_DESC_CALL, R_386_TLS_DESC): Define. (R_X86_64_PC64, R_X86_GOTOFF64, R_X86_64_GOTPC32): Merge from binutils. (R_X86_64_GOTPC32_TLSDESC, R_X86_64_TLSDESC_CALL, R_X86_64_TLSDESC): Define. (R_386_NUM, R_X86_64_NUM): Adjust. * sysdeps/i386/Makefile (sysdep-dl-routines, sysdep_routines, systep-rtld-routines): Add tlsdesc and dl-tlsdesc for elf subdir. (gen-as-const-headers): Add tlsdesc.sym to csu subdir. * sysdeps/i386/dl-lookupcfg.h: New file. Introduce _dl_unmap to release tlsdesc_table. * sysdeps/i386/dl-machine.h: Include dl-tlsdesc.h. (elf_machine_type_class): Mark R_386_TLS_DESC as PLT class. (elf_machine_rel): Handle R_386_TLS_DESC. (elf_machine_rela): Likewise. (elf_machine_lazy_rel): Likewise. (elf_machine_lazy_rela): Likewise. * sysdeps/i386/dl-tls.h (struct dl_tls_index): Name it. * sysdeps/i386/dl-tlsdesc.S: New file. * sysdeps/i386/dl-tlsdesc.h: New file. * sysdeps/i386/tlsdesc.c: New file. * sysdeps/i386/tlsdesc.sym: New file. * sysdeps/i386/bits/linkmap.h (struct link_map_machine): Add tlsdesc_table. * sysdeps/x86_64/Makefile (sysdep-dl-routines, sysdep_routines, systep-rtld-routines): Add tlsdesc and dl-tlsdesc for elf subdir. (gen-as-const-headers): Add tlsdesc.sym to csu subdir. * sysdeps/x86_64/dl-lookupcfg.h: New file. Introduce _dl_unmap to release tlsdesc_table. * sysdeps/x86_64/dl-machine.h: Include dl-tlsdesc.h. (elf_machine_runtime_setup): Set up lazy TLSDESC GOT entry. (elf_machine_type_class): Mark R_X86_64_TLSDESC as PLT class. (elf_machine_rel): Handle R_X86_64_TLSDESC. (elf_machine_rela): Likewise. (elf_machine_lazy_rel): Likewise. * sysdeps/x86_64/dl-tls.h (struct dl_tls_index): Name it. (__tls_get_addr): Do not declare for non-shared compiles. * sysdeps/x86_64/dl-tlsdesc.S: New file. * sysdeps/x86_64/dl-tlsdesc.h: New file. * sysdeps/x86_64/tlsdesc.c: New file. * sysdeps/x86_64/tlsdesc.sym: New file. * sysdeps/x86_64/bits/linkmap.h (struct link_map_machine): Add tlsdesc_table for both 32- and 64-bit structs.
2006-07-10* elf/dl-lookup.c (dl_new_hash): New functions.cvs/fedora-glibc-20060710T2206Ulrich Drepper
(_dl_lookup_symbol_x): Rename hash to old_hash and don't compute value here. Compute new-style hash value. Pass new hash value and reference to variable with the old value to do_lookup_x. (_dl_setup_hash): If DT_GNU_HASH is defined, use it and not old-style hash table. (_dl_debug_bindings): Pass new hash value and reference to variable with the old value to do_lookup_x. * elf/do-lookup.h (do_lookup_x): Accept additional parameter with new-style hash value and change old-style hash value parameter to be a reference. Reoganize functions to determine whether new-style hash table is available. Only fall back on old-style table. If old-style hash value is needed, compute it here. * elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH entry. * elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT, DT_TLSDEC_GOT. Adjust DT_ADDRNUM. * include/link.h (struct link_map): Add l_gnu_bitmask_idxbits, l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero. * Makeconfig: If linker supports --hash-style option add it to all linker command lines to build DSOs. * config.make.in: Define have-hash-style. * configure.in: Test whether linker supports --hash-style option. * elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const. * sysdeps/generic/ldsodefs.h: Adjust prototype.
2005-03-15* sysdeps/generic/wordexp.c (exec_comm_child): Add inline keyword.Roland McGrath
Patch by Dan Kegel <dank@kegel.com>. * elf/dynamic-link.h (elf_machine_rel, elf_machine_rel_relative, elf_machine_rela, elf_machine_rela_relative, elf_machine_lazy_rel): Add inline keyword. * sysdeps/alpha/dl-machine.h (elf_machine_rela, elf_machine_rela_relative, elf_machine_lazy_rel): Add always_inline attribute. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela, elf_machine_rela_relative, elf_machine_lazy_rel): Likewise. Change static inline into auto inline. * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative, elf_machine_lazy_rel): Likewise. * sysdeps/generic/dl-machine.h (elf_machine_rel, elf_machine_rela): Likewise. * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rel_relative, elf_machine_rela, elf_machine_rela_relative, elf_machine_lazy_rel): Likewise. 2005-03-15 Jakub Jelinek <jakub@redhat.com>
2005-02-17[BZ #284, BZ #721]Roland McGrath
* intl/dcigettext.c (_nl_find_msg): Add a cast. * nis/nis_clone_dir.c (nis_clone_directory): Use char * for ADDR. * nis/nis_clone_obj.c (nis_clone_object): Likewise. * nis/nis_clone_res.c (nis_clone_result): Likewise. * resolv/nss_dns/dns-network.c (getanswer_r): Use const unsigned char * for END_OF_MESSAGE and CP. * resolv/res_send.c (send_dg): Add else branch for case impossible unless `poll' is buggy. * crypt/crypt_util.c (__setkey_r): Add a cast. * locale/programs/linereader.c (get_toplvl_escape): Use size_t for NBYTES, and unsigned char * for BYTES. * locale/programs/charmap.c (charmap_new_char): Use size_t and unsighed char * for NBYTES, BYTES parameters. * sysdeps/generic/dl-hash.h (_dl_elf_hash): Take const char * argument and cast it. * sysdeps/i386/i686/dl-hash.h (_dl_elf_hash): Likewise. * sunrpc/create_xid.c (_create_xid): Don't use unsigned long for RES. * sunrpc/svcauth_des.c (_svcauth_des): Fix cast type. * sunrpc/auth_des.c (authdes_create): Don't use u_char for PKEY_DATA. (authdes_marshal): Don't use unsigned int for LEN. * sunrpc/xdr.c (xdr_hyper): Don't use unsigned long for T2. (xdr_u_hyper): Likewise. (xdr_u_short): Don't use u_long for L. * sunrpc/xdr_intXX_t.c (xdr_int64_t): Don't use uint32_t for T2. * inet/rexec.c (rexec_af): Use socklen_t. * sunrpc/key_call.c (getkeyserv_handle): Likewise. * sunrpc/rtime.c (rtime): Likewise. * resolv/res_send.c (send_vc, send_dg): Likewise. * nis/nis_callback.c (__nis_create_callback): Likewise. * sysdeps/generic/libc-start.c: Use unsigned int for nthreads ptr. * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix type of ADDR local. * libio/libio.h (_IO_BE): Add parenthesis around EXPR. * intl/dcigettext.c (INTVARDEF, INTUSE): Macros removed. (_nl_default_dirname): Use libc_hidden_data_def instead of INTVARDEF. (libc_freeres_fn, DCIGETTEXT): Don't use INTUSE. * intl/bindtextdom.c (INTUSE): Macro removed. (_nl_default_dirname): Use libc_hidden_proto. (set_binding_values): Don't use INTUSE. * include/libintl.h (_libc_intl_domainname_internal): Decl removed. (_libc_intl_domainname): Use libc_hidden_proto. * posix/regex_internal.h (gettext): Remove INTUSE on it. * locale/SYS_libc.c (_libc_intl_domainname): Use libc_hidden_data_def rather than INTDEF. * include/libintl.h (_): Don't use *_internal name. * ctype/ctype-extn.c (__ctype_tolower, __ctype_toupper): Use int32_t, not uint32_t. * locale/lc-ctype.c (_nl_postload_ctype): Likewise for assignments. * iconv/gconv_open.c (__gconv_open): Remove useless cast. [BZ #721] * sysdeps/i386/dl-machine.h (ELF_MACHINE_NO_RELA): Define this outside of [RESOLVE_MAP]. * sysdeps/sh/dl-machine.h (ELF_MACHINE_NO_REL): Likewise. * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rel, elf_machine_rel_relative): Removed. * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rel, elf_machine_rel_relative): Removed. 2005-02-03 Alexandre Oliva <aoliva@redhat.com> [BZ #721] * elf/dynamic-link.h: Don't declare nested auto functions that are not going to be defined. 2004-07-23 Jakub Jelinek <jakub@redhat.com> [BZ #284] * include/features.h (_POSIX_SOURCE, _POSIX_C_SOURCE): Define if _XOPEN_SOURCE >= 500 even if __STRICT_ANSI__ is defined. 2005-02-16 Roland McGrath <roland@redhat.com>
2005-01-06* csu/elf-init.c (__libc_csu_fini): Don't do anything here. Ulrich Drepper
* sysdeps/generic/libc-start.c: Don't register program destructor here. * dlfcn/Makefile: Add rules to build dlfcn.c. (LDFLAGS-dl.so): Removed. * dlfcn/dlclose.c: _dl_close is now in ld.so, use function pointer table. * dlfcn/dlmopen.c: Likewise for _dl_open. * dlfcn/dlopen.c: Likewise. * dlfcn/dlopenold.c: Likewise. * elf/dl-libc.c: Likewise for _dl_open and _dl_close. * elf/Makefile (routines): Remove dl-open and dl-close. (dl-routines): Add dl-open, dl-close, and dl-trampoline. Add rules to build and run tst-audit1. * elf/tst-audit1.c: New file. * elf/tst-auditmod1.c: New file. * elf/Versions [libc]: Remove _dl_open and _dl_close. * elf/dl-close.c: Change for use inside ld.so instead of libc.so. * elf/dl-open.c: Likewise. * elf/dl-debug.c (_dl_debug_initialize): Allow reinitialization, signaled by nonzero parameter. * elf/dl-init.c: Fix use of r_state. * elf/dl-load.c: Likewise. * elf/dl-close.c: Add auditing checkpoints. * elf/dl-open.c: Likewise. * elf/dl-fini.c: Likewise. * elf/dl-load.c: Likewise. * elf/dl-sym.c: Likewise. * sysdeps/generic/libc-start.c: Likewise. * elf/dl-object.c: Allocate memory for auditing information. * elf/dl-reloc.c: Remove RESOLV. We now always need the map. Correctly initialize slotinfo. * elf/dynamic-link.h: Adjust after removal of RESOLV. * sysdeps/hppa/dl-lookupcfg.h: Likewise. * sysdeps/ia64/dl-lookupcfg.h: Likewise. * sysdeps/powerpc/powerpc64/dl-lookupcfg.h: Removed. * elf/dl-runtime.c (_dl_fixup): Little cleanup. (_dl_profile_fixup): New parameters to point to register struct and variable for frame size. Add auditing checkpoints. (_dl_call_pltexit): New function. Don't define trampoline code here. * elf/rtld.c: Recognize LD_AUDIT. Load modules on startup. Remove all the functions from _rtld_global_ro which only _dl_open and _dl_close needed. Add auditing checkpoints. * elf/link.h: Define symbols for auditing interfaces. * include/link.h: Likewise. * include/dlfcn.h: Define __RTLD_AUDIT. Remove prototypes for _dl_open and _dl_close. Adjust access to argc and argv in libdl. * dlfcn/dlfcn.c: New file. * sysdeps/generic/dl-lookupcfg.h: Remove all content now that RESOLVE is gone. * sysdeps/generic/ldsodefs.h: Add definitions for auditing interfaces. * sysdeps/generic/unsecvars.h: Add LD_AUDIT. * sysdeps/i386/dl-machine.h: Remove trampoline code here. Adjust for removal of RESOLVE. * sysdeps/x86_64/dl-machine.h: Likewise. * sysdeps/generic/dl-trampoline.c: New file. * sysdeps/i386/dl-trampoline.c: New file. * sysdeps/x86_64/dl-trampoline.c: New file. * sysdeps/generic/dl-tls.c: Cleanups. Fixup for dtv_t change. Fix updating of DTV. * sysdeps/generic/libc-tls.c: Likewise. * sysdeps/arm/bits/link.h: Renamed to ... * sysdeps/arm/buts/linkmap.h: ...this. * sysdeps/generic/bits/link.h: Renamed to... * sysdeps/generic/bits/linkmap.h: ...this. * sysdeps/hppa/bits/link.h: Renamed to... * sysdeps/hppa/bits/linkmap.h: ...this. * sysdeps/hppa/i386/link.h: Renamed to... * sysdeps/hppa/i386/linkmap.h: ...this. * sysdeps/hppa/ia64/link.h: Renamed to... * sysdeps/hppa/ia64/linkmap.h: ...this. * sysdeps/hppa/s390/link.h: Renamed to... * sysdeps/hppa/s390/linkmap.h: ...this. * sysdeps/hppa/sh/link.h: Renamed to... * sysdeps/hppa/sh/linkmap.h: ...this. * sysdeps/hppa/x86_64/link.h: Renamed to... * sysdeps/hppa/x86_64/linkmap.h: ...this. 2005-01-06 Ulrich Drepper <drepper@redhat.com> * allocatestack.c (init_one_static_tls): Adjust initialization of DTV entry for static tls deallocation fix. * sysdeps/alpha/tls.h (dtv_t): Change pointer type to be struct which also contains information whether the memory pointed to is static TLS or not. * sysdeps/i386/tls.h: Likewise. * sysdeps/ia64/tls.h: Likewise. * sysdeps/powerpc/tls.h: Likewise. * sysdeps/s390/tls.h: Likewise. * sysdeps/sh/tls.h: Likewise. * sysdeps/sparc/tls.h: Likewise. * sysdeps/x86_64/tls.h: Likewise.
2004-12-22(CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4.Ulrich Drepper
2007-07-122.5-18.1Jakub Jelinek
2004-09-24* sysdeps/x86_64/dl-machine.h (elf_machine_rela_relative): Remove Andreas Jaeger
static, add always_inline attribute. (elf_machine_rela): Likewise. (elf_machine_lazy_rel): Likewise. * elf/dynamic-link.h (elf_get_dynamic_info): Make static dependend on !RESOLVE so that it's not defined in local scope. * locale/weight.h (findidx): Remove static, it's not supported anymore with GCC 4.0 in a block scope. * locale/weightwc.h (findidx): Likewise. * posix/regcomp.c (seek_collating_symbol_entry): Likewise. (lookup_collation_sequence_value): Likewise. (build_range_exp): Likewise. (build_collating_symbol): Likewise. * iconv/iconvconfig.c (write_output): Likewise. * elf/do-rel.h (elf_dynamic_do_rel): Likewise.
2004-03-06Update.Ulrich Drepper
* configure.in: Recognize --enable-bind-now. * elf/dynamic-link.h (elf_get_dynamic_info): Allow bind-now flags in ld.so. * Makerules (LDFLAGS-c.so): Add -z now if so configured. * elf/Makefile ($(objpfx)ld.so): Likewise. * config.make.in (bind-now): New definition.
2004-02-21(elf_get_dynamic_info): Recognize DF_1_NOW. In ld.so, neither DT_FLAGS nor ↵Ulrich Drepper
DT_FLAGS_1 must be used.
2003-07-31* elf/dynamic-link.h (elf_machine_rel, elf_machine_rela, ↵Alexandre Oliva
elf_machine_rel_relative, elf_machine_rela_relative): Don't assume reloc_addr is aligned. * sysdeps/alpha/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela, elf_machine_rel_relative, elf_machine_rela_relative): Adjust. * sysdeps/cris/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/hppa/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela, elf_machine_rel_relative, elf_machine_rela_relative): Adjust. * sysdeps/ia64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/m68k/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/mips/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela_relative, elf_machine_rela): Adjust. * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): * sysdeps/sh/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/x86_64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. 2003-07-31 Alexandre Oliva <aoliva@redhat.com> * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela, elf_machine_rel_relative, elf_machine_rela_relative): Don't assume reloc_addr is aligned. * sysdeps/alpha/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela, elf_machine_rel_relative, elf_machine_rela_relative): Adjust. * sysdeps/cris/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/hppa/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela, elf_machine_rel_relative, elf_machine_rela_relative): Adjust. * sysdeps/ia64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/m68k/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/mips/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela_relative, elf_machine_rela): Adjust. * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): * sysdeps/sh/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/x86_64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust.
2003-05-20Update.Update.Ulrich Drepper
2003-05-20 Jakub Jelinek <jakub@redhat.com> * elf/dynamic-link.h (elf_get_dynamic_info): Add temp argument. If temp != NULL, copy dynamic entries which need relocation to temp array before relocating. (DL_RO_DYN_TEMP_CNT): Define. * elf/dl-load.c (_dl_map_object_from_fd): Adjust caller. * elf/rtld.c (_dl_start): Likewise. (dl_main): Likewise. Add dyn_temp static variable.
2003-01-30Update.Ulrich Drepper
2003-01-30 Jakub Jelinek <jakub@redhat.com> * sysdeps/alpha/tls.h (THREAD_GETMEM, THREAD_GETMEM_NC, THREAD_SETMEM, THREAD_SETMEM_NC): Avoid warnings about unused self variable. * sysdeps/ia64/pt-machine.h (THREAD_GETMEM, THREAD_GETMEM_NC, THREAD_SETMEM, THREAD_SETMEM_NC): Likewise. * sysdeps/s390/s390-32/pt-machine.h (THREAD_GETMEM, THREAD_GETMEM_NC, THREAD_SETMEM, THREAD_SETMEM_NC): Likewise. * sysdeps/s390/s390-64/pt-machine.h (THREAD_GETMEM, THREAD_GETMEM_NC, THREAD_SETMEM, THREAD_SETMEM_NC): Likewise. * sysdeps/sh/pt-machine.h (THREAD_GETMEM, THREAD_GETMEM_NC, THREAD_SETMEM, THREAD_SETMEM_NC): Likewise. * sysdeps/sparc/sparc32/pt-machine.h (THREAD_GETMEM, THREAD_GETMEM_NC, THREAD_SETMEM, THREAD_SETMEM_NC): Likewise. * sysdeps/sparc/sparc64/pt-machine.h (THREAD_GETMEM, THREAD_GETMEM_NC, THREAD_SETMEM, THREAD_SETMEM_NC): Likewise.
2002-09-27(elf_get_dynamic_info): Also relocate DT_HASH entry if necessary.Ulrich Drepper
2002-08-31(elf_get_dynamic_info): Mark with always_inline attribute.Ulrich Drepper
2002-04-03Update.Ulrich Drepper
2002-04-02 Jakub Jelinek <jakub@redhat.com> * inet/ether_ntoh.c (__nss_ethers_lookup): Add internal_function. * inet/ether_hton.c (__nss_ethers_lookup): Likewise. * inet/getnetgrent_r.c (__nss_netgroup_lookup): Likewise. * sunrpc/netname.c (__nss_publickey_lookup): Likewise. * sunrpc/publickey.c (__nss_publickey_lookup): Likewise. 2002-03-30 Jakub Jelinek <jakub@redhat.com> * elf/dynamic-link.h (elf_get_dynamic_info): Don't abort on unknown dynamic tags. 2002-03-29 Jakub Jelinek <jakub@redhat.com> * sysdeps/i386/fpu/s_fabs.S: New file. * sysdeps/i386/fpu/s_fabsf.S: New file. * sysdeps/i386/fpu/s_fabsl.S: New file. * sysdeps/sparc/sparc64/fpu/s_fabs.c: New file. * sysdeps/sparc/sparc64/fpu/s_fabsf.c: New file. * sysdeps/sparc/sparc64/fpu/s_fabsl.c: New file. 2002-04-02 Ulrich Drepper <drepper@redhat.com> * rt/tst-shm.c (do_test): Add one more test for size of shared memory object. 2002-03-29 Wolfram Gloger <wg@malloc.de> * malloc/malloc.c: Add short description and prototypes for malloc_get_state, malloc_set_state and posix_memalign, for consistency and to avoid warnings with -Wstrict-prototypes. Reported by Andreas Jaeger <aj@suse.de>. 2002-04-02 Ulrich Drepper <drepper@redhat.com> * po/gl.po: Update from translation team.
2002-02-06Update.Ulrich Drepper
* elf/dl-minimal.c: Define _itoa_lower_digits. * elf/dynamic-link.h (elf_get_dynamic_info): ld.so can have DT_FLAGS set.
2002-02-06Update.Ulrich Drepper
* elf/dl-load.c (_dl_map_object_from_fd): Prevent dynamically loading modules with the DF_STATIC_TLS flag set. * elf/dynamic-link.h (elf_get_dynamic_info): Initialize l_flags element. * include/link.h (struct link_map): Add l_flags field. * elf/elf.h (DF_STATIC_TLS): New definition.
2002-02-02Update.Ulrich Drepper
* elf/do-rel.h (elf_dynamic_do_rel): Help the compiler recognize code which is never used when relocating ld.so itself. (_ELF_DYNAMIC_DO_RELOC): Help the compiler optimize a bit.
2002-02-02Update.Ulrich Drepper
2002-02-01 Ulrich Drepper <drepper@redhat.com> * elf/dynamic-link.h (elf_get_dynamic_info): Optimize a bit for starting ld.so itself. Move l_addr variable initialization closer to use.
2002-01-31Update.Ulrich Drepper
2002-01-30 Ulrich Drepper <drepper@redhat.com> * Versions.def [ld]: Add GLIBC_2.3. * elf/dl-addr.c: Move global variables for SHARED code in struct _rtld_global. Export this struct, remove all exports for the signal variables. * elf/dl-close.c: Likewise. * elf/dl-conflict.c: Likewise. * elf/dl-debug.c: Likewise. * elf/dl-deps.c: Likewise. * elf/dl-dst.h: Likewise. * elf/dl-error.c: Likewise. * elf/dl-fini.c: Likewise. * elf/dl-init.c: Likewise. * elf/dl-iteratephdr.c: Likewise. * elf/dl-libc.c: Likewise. * elf/dl-load.c: Likewise. * elf/dl-lookup.c: Likewise. * elf/dl-minimal.c: Likewise. * elf/dl-object.c: Likewise. * elf/dl-open.c: Likewise. * elf/dl-profile.c: Likewise. * elf/dl-profstub.c: Likewise. * elf/dl-reloc.c: Likewise. * elf/dl-runtime.c: Likewise. * elf/dl-support.c: Likewise. * elf/dl-sym.c: Likewise. * elf/dl-version.c: Likewise. * elf/do-lookup.h: Likewise. * elf/do-rel.h: Likewise. * elf/dynamic-link.h: Likewise. * elf/rtld.c: Likewise. * sysdeps/generic/dl-cache.c: Likewise. * sysdeps/generic/dl-sysdep.c: Likewise. * sysdeps/generic/ldsodefs.h: Likewise. * sysdeps/generic/libc-start.c: Likewise. * sysdeps/i386/dl-machine.h: Likewise. * sysdeps/ia64/dl-fptr.c: Likewise. * sysdeps/ia64/dl-machine.h: Likewise. * sysdeps/unix/sysv/linux/dl-librecon.h: Likewise. * sysdeps/unix/sysv/linux/dl-origin.c: Likewise. * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise. * sysdeps/unix/sysv/linux/getclktck.c: Likewise. * sysdeps/unix/sysv/linux/getpagesize.c: Likewise. * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise. * sysdeps/unix/sysv/linux/ia64/dl-static.c: Likewise. * sysdeps/unix/sysv/linux/ia64/getpagesize.c: Likewise. * malloc/thread-m.h: Spinlock definitions for x86/x86_64.
2001-12-12Update.Ulrich Drepper
2001-12-11 Jakub Jelinek <jakub@redhat.com> * elf/Makefile (dl-routines): Add conflict. (rtld-ldscript-in, rtld-ldscript, rtld-parms): Remove. (ld.so): Add _begin local symbol. * elf/elf.h (DT_VALTAGIDX, DT_VALNUM, DT_ADDRTAGIDX, DT_ADDRNUM): Define. * elf/dl-deps.c (_dl_build_local_scope): New. (_dl_map_object_deps): If LD_TRACE_PRELINKING, compute local scopes of all libraries. * elf/do-rel.h (VALIDX): Define. (elf_dynamic_do_rel): If ELF_MACHINE_PLT_REL is defined, don't do lazy binding for RELA. If DT_GNU_PRELINKED, DT_RELACOUNT relocations can be skipped. * elf/dl-conflict.c: New file. * elf/dl-lookup.c (_dl_debug_bindings): New. (_dl_lookup_symbol): Use _dl_debug_bindings. Reference_name is always non-NULL. (_dl_lookup_symbol_skip): Likewise. (_dl_lookup_versioned_symbol): Likewise. (_dl_lookup_versioned_symbol_skip): Likewise. * elf/dl-runtime.c (PLTREL): If ELF_MACHINE_PLT_REL is defined, define to ElfW(Rel). * elf/dynamic-link.h (elf_get_dynamic_info): Record selected dynamic tags in the DT_VALRNGLO..DT_VALRNGHI and DT_ADDRRNGLO..DT_ADDRRNGHI ranges. Don't adjust address dynamic tags if l_addr is 0. * elf/rtld.c (_dl_trace_prelink, _dl_trace_prelink_map): New variables. (_dl_start): Skip ELF_DYNAMIC_RELOCATE if ld.so is prelinked. (VALIDX, ADDRIDX): Define. (_dl_start_final): Initialize _dl_rtld_map's l_map_start and l_map_end. (dl_main): Print library list for LD_TRACE_PRELINKING. If prelinking information can be used, skip relocating libraries and call _dl_resolve_conflicts instead. (process_envvars): Handle LD_TRACE_PRELINKING envvar. * elf/dl-load.c (_dl_map_object): Don't create fake libs if LD_TRACE_PRELINKING. * include/link.h (struct link_map) [l_info]: Add DT_VALNUM + DT_ADDRNUM. * sysdeps/generic/ldsodefs.h (_dl_trace_prelink_map): New declaration. (DL_DEBUG_PRELINK): Define. (_dl_resolve_conflicts): Add prototype. * sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Reinitialize .plt for prelinked libraries where prelinking info cannot be used. (elf_machine_rela): If relocating R_ALPHA_JMP_SLOT in .gnu.conflict section, use RESOLVE_CONFLICT_FIND_MAP to find out reloc's link_map. * sysdeps/arm/bits/link.h: New file. * sysdeps/arm/dl-machine.h (elf_machine_runtime_setup): Save original content of .got[1]. (ELF_MACHINE_NO_RELA): Only define if RTLD_BOOTSTRAP. (ELF_MACHINE_PLT_REL): Define. (elf_machine_rela, elf_machine_rela_relative): New. (elf_machine_lazy_rel): Reinitialize R_ARM_JUMP_SLOT address instead of adjusting it if prelinked and prelinking cannot be used. * sysdeps/i386/bits/link.h: New file. * sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Save original content of .got[1]. (ELF_MACHINE_NO_RELA): Only define if RTLD_BOOTSTRAP. (ELF_MACHINE_PLT_REL): Define. (elf_machine_rela, elf_machine_rela_relative): New. (elf_machine_lazy_rel): Reinitialize R_386_JUMP_SLOT address instead of adjusting it if prelinked and prelinking cannot be used. * sysdeps/powerpc/dl-machine.h (elf_machine_rela): If relocating conflicts, skip finaladdr computation. Use RESOLVE_CONFLICT_FIND_MAP to find out map for R_PPC_JMP_SLOT relocs. * sysdeps/sparc/sparc32/dl-machine.h (VALIDX): Define. (OPCODE_BA): Define. (elf_machine_runtime_setup): Reinitialize .plt for prelinked libraries where prelinking info cannot be used. (sparc_fixup_plt): Renamed from elf_machine_fixup_plt. (elf_machine_fixup_plt): Call sparc_fixup_plt. (elf_machine_rela): Set value to 0 if relocating conflicts. Call sparc_fixup_plt for R_SPARC_JMP_SLOT. * sysdeps/sparc/sparc64/dl-machine.h (VALIDX): Define. (sparc64_fixup_plt): Fix a typo. (elf_machine_rela): Set value to 0 if relocating conflicts. Handle R_SPARC_JMP_SLOT relocs when relocating conflicts. (elf_machine_runtime_setup): Reinitialize .plt for prelinked libraries where prelinking info cannot be used. * sysdeps/sh/bits/link.h: New file. * sysdeps/sh/dl-machine.h (elf_machine_runtime_setup): Save original content of .got[1]. (elf_machine_lazy_rel): Reinitialize R_SH_JMP_SLOT address instead of adjusting it if prelinked and prelinking cannot be used. * sysdeps/s390/s390-32/bits/link.h: New file. * sysdeps/s390/s390-32/dl-machine.h (elf_machine_runtime_setup): Save original content of .got[1]. (elf_machine_lazy_rel): Reinitialize R_390_JMP_SLOT address instead of adjusting it if prelinked and prelinking cannot be used. * sysdeps/s390/s390-64/bits/link.h: New file. * sysdeps/s390/s390-64/dl-machine.h (elf_machine_runtime_setup): Save original content of .got[1]. (elf_machine_lazy_rel): Reinitialize R_390_JMP_SLOT address instead of adjusting it if prelinked and prelinking cannot be used. * sysdeps/x86_64/bits/link.h: New file. * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Save original content of .got[1]. (elf_machine_lazy_rel): Reinitialize R_X86_64_JMP_SLOT address instead of adjusting it if prelinked and prelinking cannot be used.
2001-07-06Update to LGPL v2.1.Andreas Jaeger
2001-07-06 Paul Eggert <eggert@twinsun.com> * manual/argp.texi: Remove ignored LGPL copyright notice; it's not appropriate for documentation anyway. * manual/libc-texinfo.sh: "Library General Public License" -> "Lesser General Public License". 2001-07-06 Andreas Jaeger <aj@suse.de> * All files under GPL/LGPL version 2: Place under LGPL version 2.1.
2000-07-20Update.Ulrich Drepper
* elf/elf.h: Add various DF_1_*, DTF_1_*, and DF_P1_* entries. * elf/dl-close.c (_dl_close): Don't close an object if it is marked with nodelete. * elf/dl-open.c (dl_open_worker): Pass RTLD_NOLOAD as new parameter to _dl_map_object. Return immediately if no object loaded. Set DF_1_NODELETE bit in l_flags_1 if RTLD_NODELETE was passed. * elf/dynamic-link.h (elf_get_dynamic_info): Copy DT_FLAGS_1 entry if it exists into l_flags_1 word. * elf/dl-load.c (_dl_map_object_from_fd): Take no parameter and use it to determine whether loading is wanted or not. (_dl_map_object): Likewise. Call _dl_map_object_from_fd with new parameter. * sysdeps/generic/ldsodefs.h: Update prototype. * elf/dl-deps.c: Add new parameter to _dl_map_object calls. * elf/rtld.c: Likewise. * elf/Makefile (tests): Add noload. Add rules to generate noload. * elf/noload.c: New file. * include/link.h (struct link_map): Add l_feature_1 and l_flags_1. * sysdeps/generic/bits/dlfcn.h: Define RTLD_NOLOAD and RTLD_NODELETE. * sysdeps/mips/bits/dlfcn.h: Likewise.
2000-06-08Update.Ulrich Drepper
* include/elf.h: Include also <dl-dtprocnum.h>. * elf/dl-deps.c: Likewise. * elf/dl-lookup.c: Likewise. * elf/dl-runtime.c: Likewise. * elf/dl-version.c: Likewise. * elf/do-rel.h: Likewise. * elf/dynamic-link.h: Likewise. * elf/link.h: Likewise. * elf/rtld.c: Likewise. * sysdeps/generic/dl-dtprocnum.h: New file. * sysdeps/ia64/dl-dtprocnum.h: New file. * sysdeps/mips/dl-dtprocnum.h: New file. * sysdeps/sparc/dl-dtprocnum.h: New file.
2000-03-30Update.Ulrich Drepper
2000-03-30 Ulrich Drepper <drepper@redhat.com> Implement dynamic determination of constructor/destructor order in the dynamic linker. * elf/Versions [ld.so] (GLIBC_2.0): Remove _dl_init_next. (GLIBC_2.2): Add _dl_init. * elf/dl-close.c: Also call all destructors in FINI_ARRAY. r_duplist is not anymore allocated separately. l_initfini is and therefore free it if necessary. * elf/dl-deps.c: If a searchlist has to be allocated, put all in one malloc block. Otherwise allocate l_initfini list only. Put dependencies for the object in l_initfini list. Sort dependencies for the object to be loaded topologically. * elf/dl-fini.c: Before running the destructors sort the topologically. * elf/dl-init.c (_dl_init): Renamed from _dl_init_next. Rewrite to call constructors instead of iterating over the pointers. Get list of objects for which to run constructors from l_initfini element. Accept argc, argv, and env as parameters and pass them to the constructors. * elf/ld-load.c (_dl_map_object_from_fd): Initialize l_ldnum member with size of dynamic section. * elf/dl-open.c (dl_open_worker): Only call _dl_init instead of _dl_init_next and calling constructors ourself. * elf/dl-preinit.c (_dl_preinit): Renamed from _dl_preinit_next. Take argc, argv, and env as parameters and pass them to the constructors. Rewrite to call all constructors and not iterate over the pointers. * elf/dynamic-link.h: Don't relocate DT_FINI_ARRAY entry. Don't precompute l_initcount and l_preinitcount. * elf/link.h (struct link_map): Add l_ldnum member. Make l_phdr_allocated part of the bitfield. Remove l_runcount, l_initcount, and l_preinitcount. Add l_initfini. * sysdeps/generic/ldsodefs.h: Replace _dl_init_next prototype with one for _dl_init. * sysdeps/i386/dl-machine (RTLD_START): Rewrite to match new init function interface. * sysdeps/unix/sysv/linux/init-first.h: Removed. * sysdeps/unix/sysv/linux/Dist: Delete file here as well. * sysdeps/unix/sysv/linux/init-first.c [PIC]: Don't use SYSDEP_CALL_INIT. Make _init a strong alias of init. The calling conventions now match. * sysdeps/generic/libc-start.c: Calling __libc_init_first has no effect for shared objects. Don't emit message and call only for static library.
2000-03-23Update.Ulrich Drepper
2000-03-23 Andreas Jaeger <aj@suse.de> * elf/dl-addr.c: Adjust include paths for ldsodefs location change. * elf/dl-debug.c: Likewise. * elf/dl-deps.c: Likewise. * elf/dl-error.c: Likewise. * elf/dl-fini.c: Likewise. * elf/dl-init.c: Likewise. * elf/dl-load.c: Likewise. * elf/dl-lookup.c: Likewise. * elf/dl-minimal.c: Likewise. * elf/dl-object.c: Likewise. * elf/dl-open.c: Likewise. * elf/dl-preinit.c: Likewise. * elf/dl-profile.c: Likewise. * elf/dl-profstub.c: Likewise. * elf/dl-reloc.c: Likewise. * elf/dl-runtime.c: Likewise. * elf/dl-support.c: Likewise. * elf/dl-symbol.c: Likewise. * elf/dl-version.c: Likewise. * elf/rtld.c: Likewise. * elf/sprof.c: Likewise. * sysdeps/generic/dl-cache.c: Likewise. * sysdeps/generic/dl-origin.c: Likewise. * sysdeps/generic/dl-sysdep.c: Likewise. * sysdeps/generic/elf/backtracesyms.c: Likewise. * sysdeps/generic/elf/backtracesymsfd.c: Likewise. * sysdeps/generic/libc-start.c: Likewise. * sysdeps/mach/hurd/dl-sysdep.c: Likewise. * sysdeps/powerpc/dl-machine.c: Likewise. * sysdeps/powerpc/elf/libc-start.c: Likewise. * sysdeps/sparc/sparc32/dl-machine.h: Likewise. * sysdeps/sparc/sparc64/dl-machine.h: Likewise. * sysdeps/unix/sysv/linux/dl-origin.c: Likewise. * elf/ldsodefs.h: Move file to ... * sysdeps/generic/ldsodefs.h: ... here. * sysdeps/generic/ldsodefs.h: Add definition for D_PTR. * sysdeps/mips/elf/ldsodefs.h: New file. * elf/dl-version.c (match_symbol): Use D_PTR to access relocated entries in l_info. (_dl_check_map_versions): Likewise. * elf/dl-reloc.c (_dl_relocate_object): Likewise. * elf/dl-load.c (_dl_init_paths): Likewise. (_dl_map_object): Likewise. * elf/dynamic-link.h (_ELF_DYNAMIC_DO_RELOC): Likewise. (elf_get_dynamic_info): Likewise. * elf/do-lookup.h (FCT): Likewise. * elf/do-rel.h (elf_dynamic_do_rel): Likewise. * elf/dl-deps.c (_dl_map_object_deps): Likewise. * elf/dl-addr.c (_dl_addr): Likewise. * elf/dl-runtime.c (profile_fixup): Likewise. (fixup): Likewise. * elf/dl-init.c (_dl_init_next): Likewise. * sysdeps/generic/dl-machine.h (elf_machine_runtime_setup): Likewise. * sysdeps/unix/sysv/linux/i386/dl-librecon.h (DISTINGUISH_LIB_VERSIONS): Likewise. * sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Likewise. (elf_machine_rel): Likewise. * elf/dynamic-link.h (elf_get_dynamic_info): Only change l_info for writable dynamic section.
1999-07-24Update.Ulrich Drepper
* elf/Makefile (dl-routines): Add preinit. * elf/Versions [ld.so] (GLIBC_2.2): Export _dl_preinit_next. * elf/link.h (struct link_map): Add new field l_preinitcount. * elf/dl-preinit.c: New file. * elf/dynamic-link.h: Initialize l_preinitcount. * sysdeps/i386/dl-machine.h (RTLD_START): Call pre-init functions.
1999-07-24Update.Ulrich Drepper
1999-07-24 Ulrich Drepper <drepper@cygnus.com> * elf/dl-fini.c: Handle DT_FINI_ARRAY. * elf/link.h (struct link_map): Remove l_init_running. Add l_runcount and l_initcount. * elf/dl-init.c: Handle DT_INIT_ARRAY. * elf/dynamic-link.h: Change parameters. Now only get link_map pointer. Calculate l_initcount. * elf/link.h (struct link_map): Add l_runpath_dirs. * elf/dynamic-link.h: If RUNPATH is given, set RPATH to NULL. * elf/dl-load.c: Pretty print. (decompose_rpath): Take new parameter with info from where the path comes. Pass it the fillin_rpath. (_dl_init_paths): Initialize l_runpath_dirs. (_dl_map_object): Don't search using RPATHs if object has RUNPATH. Search using RUNPATH after LD_LIBRARY_PATH. * elf/dl-support.c: Adjust comment. * elf/rtld.c: Adjust help message.
1999-07-23Update.Ulrich Drepper
* posix/unistd.h: Move declaration of __libc_enable_secure to... * include/unistd.h: ...here. * elf/dl-open.c (dl_open_worker): If DST is used in SUID program punt. * elf/dl-deps.c (expand_dst): Likewise. * elf/dynamic-link.h: Set DT_SYMBOLIC, DT_TEXTREL, and DT_BIND_NOW based on DT_FLAGS value. * elf/do-lookup.h: Remove reference_name parameter, add undef_map. Add test for symbols marked STV_HIDDEN. * elf/dl-lookup.c (_dl_lookup_symbol): Remove reference_name parameter, add undef_map. Compute reference_name locally. Update call to do_lookup. (_dl_lookup_symbol_skip): Likewise. (_dl_lookup_versioned_symbol): Likewise. (_dl_lookup_versioned_symbol_skip): Likewise. * elf/dl-libc.c: Update call to _dl_lookup_*symbol. * elf/dl-runtime.c: Likewise. * elf/dl-sym.c: Likewise. * elf/dl-symbol.c: Likewise. * elf/ldsodefs.h: Adjust prototypes. * elf/dl-reloc.c (RESOLV): Add test for STV_PROTECTED flag set and handle appropriately. Add comment about DT_TEXTREL. * elf/dl-runtime.c: Likewise.
1999-02-20Update.Ulrich Drepper
* 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. * grp/initgroups.c (initgroups): If function in current module was successful don't stop but continue to process to get all the groups.
1999-02-20Update.Ulrich Drepper
1999-02-20 Ulrich Drepper <drepper@cygnus.com> * 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.
1998-11-12(abmon): Remove spaces.Ulrich Drepper
1998-11-12 Ulrich Drepper <drepper@cygnus.com> * locales/el_GR (abmon): Remove spaces at end of strings.
1998-09-15Update.Ulrich Drepper
1998-09-15 Ulrich Drepper <drepper@cygnus.com> * elf/dynamic-link.h [!ELF_MACHINE_PLTREL_OVERLAP] (_ELF_DYNAMIC_DO_RELOC): Correctly set ranges[1].lazy.
1998-09-01Update.Ulrich Drepper
1998-08-09 Geoff Keating <geoffk@ozemail.com.au> * 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. 1998-09-01 11:53 Ulrich Drepper <drepper@cygnus.com> * debug/Makefile (catchsegv): We need not rewrite SOVER anymore. Reported by Andreas Jaeger. * posix/glob.h: Use __size_t instead of size_t in definitions and make sure this is defined. * manual/locale.texi: Almost complete rewrite. Document more functions
1998-06-07Update.Ulrich Drepper
1998-06-07 13:32 Ulrich Drepper <drepper@cygnus.com> * libc.map: Add _dl_profile. * elf/dl-reloc.c (_dl_relocate_object): Take extra argument, pass this to ELF_DYNAMIC_RELOCATE. Always allocate array for relocation result if LD_PROFILE is defined. * elf/ldsodefs.h: Adjust prototypes. * elf/dl-open.c (_dl_open): Call relocation function with extra argument. * elf/rtld.c: Likewise. * elf/dl-profile.c (_dl_mcount): Don't mark as internal function. Correct loop condition. * elf/dynamic-link.h: Don't examine _dl_profile variable, pass consider_profile to runtime setup function. * sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Use _dl_runtime_profile for all shared objects if LD_PROFILE is defined. * elf/dl-support.c: Define __libc_stack_end. * elf/rtld.c: Likewise. * sysdeps/generic/libc-start.c: Store last stack address in __libc_stack_end. * sysdeps/i386/dl-machine.h (_dl_start_user): Store stack address. * sysdeps/i386/elf/start.s: Call __libc_start_main with extra argument. * elf/elf.h: Include <features.h>, not <sys/cdefs.h>. Include <stdint.h>, not <inttypes.h>. * elf/sprof.c: Implement flat profiling. * libio/fgetc.c: Call _IO_cleanup_region_end with 0 and call _IO_funlockfile explicitly. * libio/fileops.c: Likewise. * libio/fputc.c: Likewise. * libio/freopen.c: Likewise. * libio/freopen64.c: Likewise. * libio/fseek.c: Likewise. * libio/fseeko.c: Likewise. * libio/fseeko64.c: Likewise. * libio/ftello.c: Likewise. * libio/ftello64.c: Likewise. * libio/getc.c: Likewise. * libio/getchar.c: Likewise. * libio/iofclose.c: Likewise. * libio/iofflush.c: Likewise. * libio/iofgetpos.c: Likewise. * libio/iofgetpos64.c: Likewise. * libio/iofgets.c: Likewise. * libio/iofputs.c: Likewise. * libio/iofread.c: Likewise. * libio/iofsetpos.c: Likewise. * libio/iofsetpos64.c: Likewise. * libio/ioftell.c: Likewise. * libio/iofwrite.c: Likewise. * libio/iogetdelim.c: Likewise. * libio/iogets.c: Likewise. * libio/ioputs.c: Likewise. * libio/ioseekoff.c: Likewise. * libio/ioseekpos.c: Likewise. * libio/iosetbuffer.c: Likewise. * libio/iosetvbuf.c: Likewise. * libio/ioungetc.c: Likewise. * libio/iovsprintf.c: Likewise. * libio/iovsscanf.c: Likewise. * libio/oldfileops.c: Likewise. * libio/oldiofclose.c: Likewise. * libio/peekc.c: Likewise. * libio/putc.c: Likewise. * libio/putchar.c: Likewise. * libio/rewind.c: Likewise. * malloc/mtrace.c: Pretty print. * misc/mntent.h (struct mentent): Make string elements const char *. * nis/nis_printf.c: Optimize I/O a little bit. * signal/Makefile (distribute): Add sigset-cvt-mask.h. * sysdeps/generic/sigset-cvt-mask.h: New file. * sysdeps/unix/sysv/linux/sigset-cvt-mask.h: New file. * sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h: New file. * sysdeps/posix/sigvec.c: Rewrite the use definitions from sigset-cvt-mask.h to do the dirty work. Patches by Joe Keane. * sysdeps/posix/mkstemp.c: Save one precious byte of rodata. * sysdeps/unix/sysv/linux/i386/sysdep.h: Rewrite PSEUDO etc to make syscall_error label in case of PIC anonymous. * sysdeps/unix/sysv/linux/i386/i686/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/i386/clone.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/mmap.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/s_pread64.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/s_pwrite64.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/socket.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/syscall.S: Adapt for this change.
1997-12-14Update.cvs/libc-ud-971214Ulrich Drepper
1997-12-14 21:33 Ulrich Drepper <drepper@cygnus.com> * version.h (VERSION): Bump to 2.0.91. * db2/makedb.c (process_input): Fix typo in message. * sunrpc/rpcinfo.c (pmapdump): Unify messages. * elf/dynamic-link.h: Pretty print. * elf/rtld.c: Allow multiple preloading of a shared object. * include/limits.h: Prevent multiple inclusion. * malloc/Makefile (headers): Add mcheck.h. (distribute): Remove it here. * malloc/mcheck.h: Pretty print. * malloc/mtrace.c (mallenv): Make `const'. * malloc/mtrace.pl: Don't print table head for memory leaks if there are none. * manual/memory.texi: Update descriptor of malloc hooks. * posix/Makefile (routines): Add waitid. * posix/sys/types.h [__USE_SVID || __USE_POSIX]: Define id_t based on __id_t. * posix/sys/wait.h: Define idtype_t type. Add prototype for waitid. * signal/signal.h: Move definition of sigval_t to <bits/siginfo.h>. * sysdeps/generic/waitid.c: Stub for waitid. * sysdeps/generic/bits/siginfo.h: Define sigval_t. Arrange to work the __need_siginfo_t defined. * sysdeps/unix/sysv/linux/bits/siginfo: Likewise. * sysdeps/generic/bits/types.h: Define __id_t. Correct definition of __FDMASK. * sysdeps/unix/sysv/linux/alpha/bits/types.h: Likewise. * sysdeps/unix/sysv/linux/bits/types.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/bits/types.h: Likewise. * sysdeps/posix/waitid.c: New file. Provided by Zack Weinberg. * rt/aio_misc.c: Rename __aio_free_req to __aio_free_request. * sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add missing parameters. * sysdeps/generic/dl-sysdep.c: Don't call __libc_init_secure. * sysdeps/generic/enbl-secure.c: Don't define __libc_uid. * sysdeps/unix/sysv/linux/init-first.c: Define __libc_uid. * sysdeps/unix/sysv/linux/sigqueue.c: Make sure __libc_uid is initialized. * sysdeps/i386/dl-machine.h: Little cleanup. * sysdeps/i386/fpu/bits/mathinline.h: Use __signbit* inline functions. (__finite): Mark function as const. Add inline code for __ieee754_atan2. * sysdeps/libm-ieee754/s_cacoshf.c: Add alternate implementation (but don't use it now). * sysdeps/libm-ieee754/s_catan.c: Use __ieee754_atan2 instead of __atan. * sysdeps/libm-ieee754/s_catanf.c: Likewise. * sysdeps/libm-ieee754/s_catanl.c: Likewise. * sysdeps/libm-ieee754/s_catanh.c: Likewise. Correct sign of real part. * sysdeps/libm-ieee754/s_catanhf.c: Likewise. * sysdeps/libm-ieee754/s_catanhl.c: Likewise. * sysdeps/libm-ieee754/s_clog10.c: Use factor to correct __ieee754_atan2 to base 10. * sysdeps/libm-ieee754/s_clog10f.c: Likewise. * sysdeps/libm-ieee754/s_clog10l.c: Likewise. * sysdeps/unix/sysv/linux/alpha/kernel_sigaction.h: Define as old_kernel_sigaction. * sysdeps/unix/sysv/linux/net/if_slip.h: Pretty print. * wctype/Makefile (routines): Add wctype_l. * wctype/wctype.h: Add declaration of __wctype_l. * wctype/wctype_l.c: New file. 1997-12-10 00:38 Ulrich Drepper <drepper@cygnus.com> * locale/C-ctype.c: Correct data for isw* functions. * locale/programs/ld-ctype.c: Write 32bit char classes in correct byte order. * wctype/test_wctype.c: Add test for isw* functions. * wctype/wctype.c: Return value with expected byte order. * sysdeps/generic/_G_config.h: Define _G_HAVE_IO_FILE_OPEN. * sysdeps/unix/sysv/linux/_G_config.h: Likewise.
1997-08-14Update.cvs/libc-ud-970813Ulrich Drepper
1997-08-14 03:14 Ulrich Drepper <drepper@cygnus.com> * elf/dl-minimal.c: Don't use relative #include paths. (malloc): Don't try to initialize _dl_pagesize, it already is. (__sigjmp_save, longjmp): Reformat. * sysdeps/generic/dl-sysdep.c: Implement _dl_show_auxv function to show content of auxiliary array. (_dl_sysdep_start): Remember start of auxiliary vector. * sysdeps/mach/hurd/dl-sysdep.c: (_dl_show_auxv): New dummy function. * elf/link.h: Add prototype for _dl_show_auxv. * elf/rtld.c (dl_main): Call _dl_show_auxv if LD_SHOW_AUXV envvar is present. * libio/iofdopen.c: Better prepare for use in libstdc++. * libio/iofflush.c: Likewise. * libio/iofgetpos.c: Likewise. * libio/iofgets.c: Likewise. * libio/iofopen.c: Likewise. * libio/iofputs.c: Likewise. * libio/iofread.c: Likewise. * libio/iofsetpos.c: Likewise. * libio/ioftell.c: Likewise. * libio/iofwrite.c: Likewise. * libio/iogetdelim.c: Likewise. * libio/iogets.c: Likewise. * libio/iopopen.c: Likewise. * libio/ioputs.c: Likewise. * libio/iosetbuffer.c: Likewise. * libio/iosetvbuf.c: Likewise. * libio/ioungetc.c: Likewise. * libio/iovsprintf.c: Likewise. * libio/iovsscanf.c: Likewise. * manual/creature.texi: Mention _XOPEN_SOURCE_EXTENDED in correct place. * manual/math.texi: Add comment to sincos decsription to say it's a GNU extension. Fix description of random function. * posix/fnmatch.h: Recognize Windog by _WINDOWS32 not WIN32. * posix/glob.c: Likewise. Handle stupid system headers on SunOS. Add casts for all __alloca calls. * posix/glob.h: Recognize Windog by _WINDOWS32 not WIN32. Declare additional GLOB_* constants also if _GNU_SOURCE is defined. Patches by Paul D. Smith <psmith@BayNetworks.COM>. * stdio-common/_itoa.c: Don't use relateive #include paths. * sysdeps/i386/fpu/bits/mathinline.h: Enable optimizations even for gcc 2.7. (atan): Loading 1.0 from memory does not pay off. (asinh): Fix typo. 1997-08-13 09:44 Philip Blundell <Philip.Blundell@pobox.com> * sysdeps/stub/accept.c: Use socklen_t where necessary. * sysdeps/stub/bind.c: Likewise. * sysdeps/stub/connect.c: Likewise. * sysdeps/stub/getsockname.c: Likewise. * sysdeps/stub/getsockopt.c: Likewise. * sysdeps/stub/recvfrom.c: Likewise. * sysdeps/stub/sendto.c: Likewise. * sysdeps/stub/setsockopt.c: Likewise. 1997-08-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * io/ftw.c (object_compare): Avoid memcmp when comparing scalar types. 1997-08-12 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * math/libm-test.c (cbrt_test): Add epsilon for long double to `cbrt (-0.001)'. 1997-08-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/stub/bits/string.h: Fix comment. 1997-08-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/Makefile (routines): Remove dl-version. (dl-routines): Add it here instead. This removes dead code from libc.so. 1997-08-12 17:17 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de> * malloc/thread-m.h (thread_atfork, thread_atfork_static): New macros to encapsulate pthread_atfork's functionality. * malloc/malloc.c (ptmalloc_lock_all, ptmalloc_unlock_all): New functions, registered via thread_atfork in the initialization routine or via thread_atfork_static in global scope. This ensures a consistent state of all locks across fork(). 1997-08-11 23:00:32 1997 Mark Kettenis <kettenis@phys.uva.nl> * login/programs/xtmp.c (compare_entry): Partially undo patch made by Klaus Espenlaub. There was no xtmp/utmp typo. Added comment to cclarify this. * login/programs/xtmp.h: Likewise. * posix/getopt.c: Recognize Windog by _WINDOWS32 not WIN32. Patch by Paul D. Smith <psmith@BayNetworks.COM>. 1997-08-12 13:51 Ulrich Drepper <drepper@cygnus.com> * login/getutid.c: Rename to __getutid and make getutid and getutxid weak aliases. Patch by ir. Mark M._Kettenis <kettenis@phys.uva.nl>. 1997-08-11 23:55 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers): Add bits/mman.h. 1997-08-11 08:51:21 1997 H.J. Lu <hjl@gnu.ai.mit.edu> * stdlib/fmtmsg.c (fmtmsg): Add static to __libc_once_define macro. * libc.map (__progname_full, __progname): Added. 1997-08-04 08:31 H.J. Lu <hjl@gnu.ai.mit.edu> * sysdeps/unix/sysv/linux/if_index.c (if_nametoindex): Return 0 if SIOGIFINDEX is not defined. (if_indextoname): Initialize "result" to NULL. (if_nametoindex, if_nameindex): Fix ENOSYS setting. 1997-08-11 11:58 Richard Henderson <rth@cygnus.com> Sparc ISO C 9x exception handling: * sysdeps/sparc/fpu/bits/mathdef.h: New file. * sysdeps/sparc/fpu/fclrexcpt.c: New file. * sysdeps/sparc/fpu/fegetenv.c: New file. * sysdeps/sparc/fpu/fegetround.c: New file. * sysdeps/sparc/fpu/feholdexcpt.c: New file. * sysdeps/sparc/fpu/fesetenv.c: New file. * sysdeps/sparc/fpu/fesetround.c: New file. * sysdeps/sparc/fpu/feupdateenv.c: New file. * sysdeps/sparc/fpu/fgetexcptflg.c: New file. * sysdeps/sparc/fpu/fraiseexcpt.c: New file. * sysdeps/sparc/fpu/fsetexcptflg.c: New file. * sysdeps/sparc/fpu/ftestexcept.c: New file. * sysdeps/sparc/sparc32/fpu/bits/fenv.h: New file. * sysdeps/sparc/sparc64/fpu/bits/fenv.h: New file. 1997-08-11 11:58 Richard Henderson <rth@cygnus.com> Sparc64 merge: * configure.in: Change up subdirectories, rename sparc8->sparcv8. * csu/Makefile: Nuke need-nopic-initfini bits. The problem was that sparc64 ld did not recognize pic relocs at all. * elf/dl-deps.c: Include <string.h>. * elf/do-rel.h (elf_dynamic_do_rel): Take reloc address and size directly instead of the DT names to get them from. * elf/dynamic-link.h (_ELF_DYNAMIC_DO_RELOC): New macro distilled from ELF_DYNAMIC_DO_REL{,A}. Define a second version that accounts for the possibility that DT_RELA and DT_JMPPLT overlap, as such is the case on the Sparc. * elf/elf.h: Stub out Elf64_Ver*, and make them the same as the Elf32_Ver* bits. The linker does not even know to differentiate between the word sizes. Someone should examine this and figure out what the proper sizes of things should be for 64-bit hosts before the sparc64 libraries are distributed. * shlib-versions: Rename sparc64 ld.so to not conflict with sparc32 on the same machine. Move old sysdeps/sparc contents to sysdeps/sparc/sparc32, rename sparc8 subdir to sparcv8, move sysdeps/sparc64 content to sysdeps/sparc/sparc64. Same for sysdeps/unix/sysv/linux/sparc. * sysdeps/sparc/Implies: Do ieee754 here. * sysdeps/sparc/configure.in: Move from sparc32/. * sysdeps/sparc/sparc32/Implies: Do wordsize here. * sysdeps/sparc/sparc64/Implies: Likewise. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_load_address): Use uninitialized .got to find load address instead of AT_BASE, as the later does not exist when running ld.so directly. * sysdeps/sparc/sparc32/fpu/fpu_control.h: Move from ../. * sysdeps/sparc/sparc64/fpu/fpu_control.h: Likewise. * sysdeps/sparc/sparc32/udiv_qrnnd.S: Clean up PIC support. * sysdeps/sparc/sparc64/Makefile (sysdep_routines): Add s_finitel and s_signbitl for stdio. * sysdeps/sparc/sparc64/configure.in: Remove, we no longer need nopic_initfini. * sysdeps/sparc/sparc64/bsd-_setjmp.S: Remove. * sysdeps/sparc/sparc64/bsd-setjmp.S: Remove. * sysdeps/unix/sysv/linux/sparc/sparc64/bsd-_setjmp.S: New empty file. * sysdeps/unix/sysv/linux/sparc/sparc64/bsd-setjmp.S: New empty file. * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add __longjmp alias. * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Add weak _setjmp and setjmp entry points. * sysdeps/sparc/sparc64/dl-machine.h: Finish real implementation. * sysdeps/sparc/sparc64/elf/crtbegin.S: Add copyright, fix PIC. * sysdeps/sparc/sparc64/elf/crtend.S: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/sigaction.h (struct sigaction): Fix sa_flags size for sparc64; add sa_restorer for kernel. * sysdeps/unix/sysv/linux/sparc/sparc64/brk.S: Fix PIC. * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/init-first.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S: New file. 1997-08-10 18:29:08 1997 Mark Kettenis <kettenis@phys.uva.nl> * login/login.c (login): Check for correct return value of utmpname. 1997-08-11 16:49 Ulrich Drepper <drepper@cygnus.com> * time/tzset.c (__tzset_internal): Correctly handle TZ strings following incorrect old POSIX specs. Patch by Paul Eggert <eggert@twinsun.com>. * sysdeps/generic/bits/sigaction.h: Correct comment for SA_RESTART. * sysdeps/unix/bsd/osf/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/linux/alpha/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/linux/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/minix/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/sysv4/bits/sigaction.h: Likewise. Reported by NIIBE Yutaka <gniibe@mri.co.jp>. 1997-08-09 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * manual/math.texi: Define the macros @mul and @infinity and use them to format the multiplication and infinity signs. (FP Comparison Functions): Use @code, not @math, for C code examples. * elf/dl-profile.c: Add descriptions and implement reading of
1997-07-28Update.cvs/libc-ud-970729Ulrich Drepper
1997-07-28 23:35 Ulrich Drepper <drepper@cygnus.com> * csu/gmon-start.c (__gmon_start__): Call __monstartup not monstartup. * gmon/gmon.c: Rename moncontrol to __moncontrol and monstartup to __monstartup. * gmon/sys/gmon.h: Fix prototypes. * gmon/sys/gmon_out.h: Pretty print. * gmon/bb_exit_func.c (__bb_exit_func): Use memcpy instead of bcopy. * gmon/gmon.c (__monstartup): Likewise. (write_hist): Remove dependency on 32 int. (_mcleanup): Don't call perror, use fprintf. * elf/dl-load.c: Fix handling of current directory in search path. * elf/Makefile (dl-routines): Add dl-profile. * elf/dl-profile.c: New file. * elf/dl-runtime.c (fixup): Add new parameter with address to store relocation result in to elf_machine_relplt. (profile_fixup): New function. * elf/do-rel.h (elf_dynamic_do_rel): Add new parameter with address to store relocation result in to elf_machine_relplt. * elf/dl-support.c: Define _dl_profile and _dl_profile_map. * elf/dynamic-link.h (ELF_DYNAMIC_RELOCATE): Add new parameter and call elf_machine_runtime_setup with extra argument. * elf/dl-reloc.c (_dl_relocate_object): Add new argument to ELF_DYNAMIC_RELOCATE. * elf/link.h: Add prototypes for new functions and variables. * elf/rtld.c: Parse LD_PROFILE and LD_PROFILE_OUTPUT environment variables and call _dl_start_profile if necessary. * include/sys/gmon_out.h: New file. * sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): Add new parameter to enable profiling. (elf_machine_rela): Add new parameter to specify place to store result in. * sysdeps/m68k/dl-machine.h: Likewise. * sysdeps/mips/dl-machine.h: Likewise. * sysdeps/mips/mips64/dl-machine.h: Likewise. * sysdeps/powerpc/dl-machine.h: Likewise. * sysdeps/sparc/dl-machine.h: Likewise. * sysdeps/sparc64/dl-machine.h: Likewise. * sysdeps/i386/dl-machine.h: Likewise. (elf_machine_runtime_setup): Setup got[2] to _dl_runtime_resolve if we do profiling. (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add code for _dl_runtime_profile. * nis/nss_compat/compat-grp.c (internal_setgrent): Set FD_CLOEXEC for stream on input file. * nis/nss_compat/compat-pwd.c (internal_setpwent): Likewise. * nis/nss_compat/compat-spwd.c (internal_setspent): Likewise. * nss/nss_db/db-XXX.c (internal_setent): Likewise. * nss/nss_db/db-alias.c (internal_setent): Likewise. * nss/nss_db/db-netgrp.c (internal_setent): Likewise. * nss/nss_files/files-XXX.c (internal_setent): Likewise. * nss/nss_files/files-alias.c (internal_setent): Likewise. * nss/nss_files/files-netgrp.c (internal_setent): Likewise. * string/string.h: Pretty print. * sysdeps/i386/fpu/bits/mathinline.h: Major update by John Bowman. Add float and long double versions. 1997-07-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (print_unresolved): Replace empty object name by main program name. 1997-07-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/generic/htons.c (htons): Renamed from __htons. 1997-07-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/m68k/bits/byteswap.h: New file. 1997-07-27 23:50 Philip Blundell <Philip.Blundell@pobox.com> * inet/netinet/icmp6.h: Update for new drafts of POSIX.1g and IPv6 advanced API. * inet/netinet/in.h: Likewise. * inet/netinet/ip6.h: Likewise. * sysdeps/unix/sysv/linux/bits/socket.h: Likewise. * posix/sys/types.h: Add socklen_t. * manual/socket.texi: Document some more IPv6 things. * manual/libc.texinfo: Likewise. 1997-07-26 Andreas Jaeger <aj@arthur.rhein-neckar.de> * libc.map: Define missing symbol. 1997-07-27 14:31 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * nis/Makefile: Add nis_findserv. * nis/lckcache.c: Fix typo. * nis/nis_call.c: Fix problems with multihomed servers. * nis/nis_findserv.c: New file. * nis/nis_intern.h: Add more prototypes. * nis/nis_lookup.c (nis_lookup): Don't try the next server if network is unreachable. * nis/nis_table.c (nis_list): Likewise. * nis/nis_ping.c (nis_ping): Use MASTER_ONLY, don't call abort() in error case. * nis/nis_util.c (__nis_finddirectory): Give the right error code back. * nis/ypclnt.c: Make sure, that all sockets are closed.
1997-05-25Update.cvs/libc-ud-970524Ulrich Drepper
1997-05-25 03:00 Ulrich Drepper <drepper@cygnus.com> * elf/dynamic-link.h (_dl_verbose): New variable, declare. * elf/rtld.c (_dl_verbose): New variable, define. (dl_main): Define _dl-verbose based on DL_WARN environment variable. * sysdeps/i386/dl-machine.h (elf_machine_rel): Print warning about changed size in copy relocation only if symbol in shared object is larger or _dl_verbose is nonzero. * sysdeps/m68k/dl-machine.h (elf_machine_rel): Likewise. * sysdeps/powerpc/dl-machine.h (elf_machine_rel): Likewise. * sysdeps/sparc/dl-machine.h (elf_machine_rel): Likewise. * nis/nss_nis/nis-ethers.c: Don't use relative include paths, use <...>. * nis/nss_nis/nis-grp.c: Likewise. * nis/nss_nis/nis-hosts.c: Likewise. * nis/nss_nis/nis-network.c: Likewise. * nis/nss_nis/nis-proto.c: Likewise. * nis/nss_nis/nis-pwd.c: Likewise. * nis/nss_nis/nis-rpc.c: Likewise. * nis/nss_nis/nis-spwd.c: Likewise. * sysdeps/unix/sysv/sysd-stdio.c: Likewise. * wcsmbs/wcscoll.c: Likewise. * wcsmbs/wcstod.c: Likewise. * wcsmbs/wcstof.c: Likewise. * wcsmbs/wcstol.c: Likewise. * wcsmbs/wcstold.c: Likewise. * wcsmbs/wcsxfrm.c: Likewise. Reported by Zack Weinberg <zack@rabi.phys.columbia.edu>. * time/strftime.c: Implement # flag which changes case of output for %a, %b, %B, %p, and %Z format. When printing numbers, the given field width is always respected. This means that padding happens only up to the given width. Proposed by Stephen Gildea <gildea@intouchsys.com>. 1997-05-25 00:44 Ulrich Drepper <drepper@cygnus.com> * sysdeps/i386/fpu/__math.h (logb): Fix thinko, reverse output values. Reported by Andreas Jaeger <aj@arthur.rhein-neckar.de>. 1997-05-24 21:03 Philip Blundell <pjb27@cam.ac.uk> * db/btree/bt_open.c (__bt_open): Only try to use st_blksize (from struct stat) if it exists for this port. 1997-05-24 20:34 Philip Blundell <pjb27@cam.ac.uk> * sysdeps/standalone/arm/errnos.h: Add EPERM. 1997-05-23 16:28 Philip Blundell <phil@kings-cross.london.uk.eu.org> * linewrap.h: New file, needed to compile argp without libio. 1997-05-24 11:59 Andreas Jaeger <aj@arthur.rhein-neckar.de> * manual/stdio.texi (Formatted Messages): Corrected some typos. 1997-05-24 11:58 Philip Blundell <pjb27@cam.ac.uk> * sysdeps/stub/start.c: Fix typo.
1997-05-24Update.Ulrich Drepper
1997-05-24 03:51 Ulrich Drepper <drepper@cygnus.com> * stdlib/Makefile (routines): Add strtol_l, strtoul_l, strtoll_l, strtoull_l, strtof_l, strtod_l, and strtold_l. * stdlib/stdlib.h: Add prototypes for new functions. * stdlib/strtod.c: Change for compiling as strtoX_l. * stdlib/strtol.c: Likewise. * stdlib/strtof.c: Likewise. * stdlib/strtold.c: Likewise. * stdlib/strtod_l.c: New file. * stdlib/strtof_l.c: New file. * stdlib/strtold_l.c: New file. * stdlib/strtol_l.c: New file. * stdlib/strtoul_l.c: New file. * stdlib/strtoll_l.c: New file. * stdlib/strtoull_l.c: New file. * string/Makefile (routines): Add strcasecmp_l and strncase_l. * string/string.h: Add prototypes for new functions. * sysdeps/generic/strcasecmp.c: Change for compiling as strcasecmp_l. * sysdeps/generic/strncase.c: Change for compiling as strncasecmp_l. * sysdeps/generic/strcasecmp_l.c: New file. * sysdeps/generic/strncase_l.c: New file. * wcsmbs/Makefile (routines): Add wcstol_l, wcstoul_l, wcstoll_l, wcstoull_l, wcstod_l, wcstold_l, wcstof_l, wcscasecmp_l, and wcsncase_l. * wcsmbs/wchar.h: Add prototypes for new functions. * wcsmbs/wcscasecmp.c: Change for compiling as wcscasecmp_l. * wcsmbs/wcsncase.c: Change for compiling as wcsncasecmp_l. * wcsmbs/wcscasecmp_l.c: New file. * wcsmbs/wcsncase_l.c: New file. * wcsmbs/wcstof.c: Change for compiling as wcstof_l.c * wcsmbs/wcstold.c: Change for compiling as wcstold_l.c * wcsmcs/wcstod_l.c: New file. * wcsmcs/wcstof_l.c: New file. * wcsmcs/wcstold_l.c: New file. * wcsmcs/wcstol_l.c: New file. * wcsmcs/wcstoul_l.c: New file. * wcsmcs/wcstoll_l.c: New file. * wcsmcs/wcstoull_l.c: New file. * Makeconfig (binfmt-subdir): New variable. Set to `elf' if $(elf) is defined. More to come later when other binary formats are supported. * Makefile (subdirs): Remove elf. Add $(binfmt-subdir). Suggested by Philip Blundell. * stdlib/Makefile (headers): Add fmtmsg.h. (routines): Add fmtmsg. * stdlib/fmtmsg.c: New file. * stdlib/fmtmsg.h: New file. * manual/stdio.texi: Add description of fmtmsg and addseverity. * manual/examples/fmtmsgexpl.c: Example program for fmtmsg documentation. 1997-05-23 15:26 Philip Blundell <pjb27@cam.ac.uk> * resolv/res_query.c (res_querydomain): Avoid potential buffer overrun. Reported by Dan A. Dickey <ddickey@transition.com>. 1997-05-22 18:36 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * elf/dl-support.c (_dl_sysdep_open_zero_fill, _dl_sysdep_read_whole_file): Moved functions to ... * elf/dl-misc.c: This new file. * sysdeps/generic/dl-sysdepio.c: Delete file and move functions... * elf/dl-misc.c: ... here. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_open_zero_fill, _dl_sysdep_read_whole_file): Delete functions; they now come from elf/dl-misc.c (dl-support.c had contained identical versions). * sysdeps/mach/hurd/dl-sysdepio.c: Delete file; move functions... * sysdeps/mach/hurd/dl-sysdep.c: ... here, but mark them weak so that the regular ones in dl-misc work once we've initialized. * elf/Makefile (dl-routines): Remove dl-sysdepio.c. Add dl-misc.c. 1997-05-22 21:55 Philip Blundell <pjb27@cam.ac.uk> * inet/Makefile (headers): Add netinet/inbits.h. * inet/netinet/in.h: New file. * sysdeps/generic/netinet/inbits.h: Likewise. * sysdeps/unix/sysv/linux/netinet/inbits.h: Likewise. * sysdeps/generic/netinet/ip6.h: Move to... * inet/netinet/ip6.h: ... here. * sysdeps/generic/netinet/icmp6.h: Move to... * inet/netinet/icmp6.h: ... here. * sysdeps/unix/sysv/linux/netinet/in.h: Remove. * sysdeps/generic/netinet/in.h: Remove. 1997-05-22 05:40 Richard Henderson <rth@tamu.edu> * sysdeps/alpha/dl-machine.h (elf_machine_runtime_setup): If we are not looking at the new thread-safe .plt, don't be lazy about relocs. (_dl_runtime_resolve): Fix up arithmetic for new .plt layout. (elf_alpha_fix_plt): Insert wmb as appropriate to ensure safety. * elf/dynamic-link.h (ELF_DYNAMIC_RELOCATE): Let elf_machine_runtime_setup() decide if we can actually be lazy. * elf/rtld.c (_dl_start): So don't call it. * elf/dl-reloc.c (_dl_relocate_object): Likewise. * sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Return lazy. * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Likewise. * sysdeps/mips/dl-machine.h (elf_machine_runtime_setup): Likewise. * sysdeps/powerpc/dl-machine.h (elf_machine_runtime_setup): Likewise. * sysdeps/sparc/dl-machine.h (elf_machine_runtime_setup): Likewise. * sysdeps/stub/dl-machine.h (elf_machine_runtime_setup): Update skeleton definition. 1997-05-22 18:45 Ulrich Drepper <drepper@cygnus.com> * sysdeps/i386/fpu/__math.h (logb): Remove second value placed on stack by fxtract. 1997-05-22 13:07 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sunrpc/rpcsvc/rusers.x: Provide and correct prototypes, add cast to (xdrproc_t) where necessary to prevent warnings. 1997-05-22 12:18 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c: Remove I/O functions. * sunrpc/rpcinfo.c (get_inet_address): Use INADDR_NONE and INADDR_ANY * sysdeps/libm-ieee754/s_cexp.c: Fix typo: string_alias -> * nss/XXX-lookup.c: Add missing explanation.
1997-02-03update from main archive 970202cvs/libc-970203Ulrich Drepper
1997-02-03 02:33 Ulrich Drepper <drepper@cygnus.com> * elf/dl-deps.c (_dl_map_object_deps): Handle multiple AUXILIARY entries. This is still no complete implementation since AUXILIARY entries in other shared objects are not yet handled. * libio/libio.h (_IO_cookie_io_functions_t): Move to C++ protected place. * po/es.po: Update. * po/fr.po: Update. * po/nl.po: Update. * time/Makefile: Better cross-compile support. Avoid test which cannot be run. (CFLAGS-tzset.c): New variable. Overwrite TZDEFAULT value from tzfile.h file. * time/tzfile.c (__tzfile_read): Allow TZDEFAULT start with '/' even in SUID programs. * time/tzset.c (__tzset_internal): If TZ envvar is not set use same default values as in tzfile.c. * elf/dynamic-link.h (elf_get_dynamic_info): Recognize versioning tags. * elf/link.h: Likewise. * elf/elf.h: Add tag definitions and data structures for versioning. 1997-02-03 02:17 Ulrich Drepper <drepper@cygnus.com> * nis/rpcsvc/yp.x (struct ypresp_key_val): There is not stupid "Sun bug". This is the order of elements also used by 4.4BSD. * nis/rpcsvc/yp.h: Likewise. Reported by HJ Lu. 1997-02-02 12:13 H.J. Lu <hjl@gnu.ai.mit.edu> * sunrpc/Makefile ($(objpfx)x%.h, $(objpfx)x%.c): Add "@:" as action. * Makefile (install): Pass installation directories as arguments to ldconfig. 1997-02-02 23:15 Ulrich Drepper <drepper@cygnus.com> * malloc/malloc.c (__after_morecore_hook): New variable. (malloc_extend_top): Call __after_morecore_hook if set. (main_trim): Likewise. * malloc/malloc.h: Add declaration of __after_morecore_hook. Suggested by Marcus Daniels. 1997-02-02 23:00 Marcus G. Daniels <marcus@tdb.com> * malloc/malloc.c (rEALLOc): Protect tsd_setspecific call by #ifndef NO_THREADS. (mallinfo): Likewise. * malloc/malloc.c (__morecore): Make external since it is used in programs. 1997-02-02 15:10 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/statbuf.h (struct stat): Make st_dev field unsigned. 1997-02-01 23:36 Richard Henderson <rth@tamu.edu> * sysdeps/alpha/stxncpy.S ($unaligned) [src % 8 > dst % 8]: Don't use t6 as a temporary; it contains bits we still need in $u_head. 1997-01-31 15:05 John Bowman <bowman@ipp-garching.mpg.de> * sysdeps/i386/fpu/__math.h [__USE_MISC]: Don't declare prototypes using __ prefix. Add prototype for log1p.
1997-01-06update from main archive 960105cvs/libc-970107cvs/libc-970106Ulrich Drepper
1996-11-17update from main archive 961116cvs/libc-961119cvs/libc-961118cvs/libc-961117Ulrich Drepper
Sun Nov 17 03:13:57 1996 Ulrich Drepper <drepper@cygnus.com> * db/makedb.c: Update and reformat copyright. * elf/Makefile: Likewise. * elf/dl-close.c: Likewise. * elf/dl-debug.c: Likewise. * elf/dl-deps.c: Likewise. * elf/dl-error.c: Likewise. * elf/dl-fini.c: Likewise. * elf/dl-init.c: Likewise. * elf/dl-load.c: Likewise. * elf/dl-lookup.c: Likewise. * elf/dl-minimal.c: Likewise. * elf/dl-object.c: Likewise. * elf/dl-open.c: Likewise. * elf/dl-reloc.c: Likewise. * elf/dl-runtime.c: Likewise. * elf/dl-support.c: Likewise. * elf/dl-symbol.c: Likewise. * elf/dladdr.c: Likewise. * elf/dlclose.c: Likewise. * elf/dlerror.c: Likewise. * elf/dlopen.c: Likewise. * elf/dlsym.c: Likewise. * elf/do-rel.h: Likewise. * elf/dynamic-link.h: Likewise. * elf/eval.c: Likewise. * elf/rtld.c: Likewise. * inet/ether_hton.c: Likewise. * inet/ether_ntoh.c: Likewise. * inet/ether_line.c: Likewise. * inet/getnetgrent_r.c: Likewise. * inet/Makefile (+gccwarn): Remove definition. Instead set CFLAGS-rcmd.c, CFLAGS-rexec.c, and CFLAGS-ruserpass.c to `-w'. * inet/aliases.h: Add C++ protection. * inet/ether_hton.c: Add prototype for __nss_ethers_lookup. (ether_hostton): Remove unused variable result. * inet/ether_ntoh.c: Likewise. * inet/ether_line.c: Include <ctype.h> and <string.h>. * inet/getnetgrent_r.c: Include <stdlib.h>. Use casts to prevent warnings. (innetgr): Initialize `known' and `needed'. * inet/inet_net.c: Make local variable `i' of type u_int32_t. * nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)) [NEED__RES]: Don't return NULL. Instead set *RESULT to NULL and return -1. * nss/getXXent_r.c (INTERNAL (REENTRANT_GETNAME)): Likewise. (SETFUNC_NAME, ENDFUNC_NAME) [NEED__RES]: Don't return anything. * nss/nss_files/files-alias.c: Debug function. I didn't worked at all before. Sat Nov 16 15:25:34 1996 Ulrich Drepper <drepper@cygnus.com> * sysdeps/posix/readv.c: Don't use PTR anymore. * sysdeps/posix/writev.c: Likewise. * version.h (VERSION): Bump to 1.98. * nss/db-Makefile: Generate lines for getXXXent iteration. * sysdeps/alpha/Dist: Don't distribute removed files divlu.S, divqu.S, remlu.S, and remqu.S. Fri Nov 15 08:55:54 1996 Andreas Jaeger <aj@arthur.pfalz.de> * posix/unistd.h: Correct typo in documentation. Thu Nov 14 18:08:14 1996 a sun <asun@zoology.washington.edu> * inet/netinet/tcp.h: Use __ protected versions instead of BYTE_ORDER, LITTLE_ENDIAN, and BIG_ENDIAN directly. Sat Nov 16 13:44:55 1996 Ulrich Drepper <drepper@cygnus.com> * intl/loadmsgcat.c (_nl_msg_cat_cntr): Initialize so that references in libc.so are not anymore undefined. Sat Nov 16 18:17:36 1996 NIIBE Yutaka <gniibe@mri.co.jp> * io/utime.h: Rename second parameter for utime to prevent warning for -Wshadow. * dirent/dirent.h: Same here for scandir prototype. * math/mathcalls.h: Likewise for frexp and ldexp. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise for bindresvport. Sat Nov 16 03:49:27 1996 Ulrich Drepper <drepper@cygnus.com> * stdlib/tst-strtod.c: Add test for error case below. Sat Nov 16 03:48:39 1996 Wolfram Gloger <Wolfram.Gloger@dent.med.uni-muenchen.de> * stdlib/strtod.c: Recognize numbers like 0e-19. Fri Nov 15 08:38:43 1996 Andreas Jaeger <aj@arthur.pfalz.de> * time/Makefile ($(installed-localtime-file)): Fix path to rellns-sh. * Makefile: Don't generate and install gnu/lib-names.h if $(build-shared) is not `yes'. Thu Nov 14 09:23:58 1996 H.J. Lu (hjl@gnu.ai.mit.edu) * sysdeps/posix/Makefile ($(common-objpfx)mk-stdiolim): Depend on $(..)posix/posix1_lim.h, not ../posix/posix1_lim.h. * Makerules (REAL_MAKE_VERSION): New, use it instead of MAKE_VERSION. Thu Nov 14 22:10:43 1996 Ulrich Drepper <drepper@cygnus.com> * nss/nss_files/files-XXX.x (_nss_files_get,ENTNAME_r): Fix typo. * nss/getXXent_r.c: Fix typo. Set correct return value when no further service is available. Thu Nov 14 17:48:13 1996 Ulrich Drepper <drepper@cygnus.com> * db/recno/rec_put.c: Add cast to avoid warning. * db/recno/rec_close.c: Likewise. * db/mpool/mpool.c: Likewise. * db/hash/hash_bigkey.h: Likewise. * db/hash/hash.c: Likewise. * db/btree/bt_split.c: Likewise. * db/btree/bt_put.c: Likewise. Thu Nov 14 14:11:44 1996 Ulrich Drepper <drepper@cygnus.com> * dirent/dirent.h: Update copyright. * elf/elf.h: Likewise. * elf/link.h: Likewise. * gmon/sys/gmon_out.h: Likewise. * gnu-versions.h: Likewise. * intl/libintl.h: Likewise. * io/fcntl.h: Likewise. * io/ftw.h: Likewise. * io/sys/statfs.h: Likewise. * io/utime.h: Likewise. * locale/langinfo.h: Likewise. * malloc/malloc.h: Likewise. * malloc/obstack.h: Likewise. * misc/ar.h: Likewise. * misc/error.h: Likewise. * misc/mntent.h: Likewise. * misc/sgtty.h: Likewise. * misc/sys/cdefs.h: Likewise. * misc/sys/dir.h: Likewise. * misc/sys/file.h: Likewise. * misc/sys/ioctl.h: Likewise. * misc/sys/ustat.h: Likewise. * posix/fnmatch.h: Likewise. * posix/getopt.h: Likewise. * posix/glob.h: Likewise. * posix/posix2_lim.h: Likewise. * posix/regex.h: Likewise. * posix/sys/times.h: Likewise. * posix/sys/types.h: Likewise. * posix/sys/utsname.h: Likewise. * posix/tar.h: Likewise. * posix/wordexp.h: Likewise. * resource/sys/resource.h: Likewise. * resource/sys/vlimit.h: Likewise. * resource/sys/vtimes.h: Likewise. * socket/sys/socket.h: Likewise. * socket/sys/un.h: Likewise. * stdio-common/printf.h: Likewise. * stdlib/alloca.h: Likewise. * string/argz.h: Likewise. * string/endian.h: Likewise. * string/envz.h: Likewise. * string/memory.h: Likewise. * string/strings.h: Likewise. * sysdeps/generic/crypt.h: Likewise. * sysdeps/generic/direntry.h: Likewise. * sysdeps/generic/gnu/types.h: Likewise. * sysdeps/generic/ioctl-types.h: Likewise. * sysdeps/generic/netinet/in.h: Likewise. * sysdeps/generic/resourcebits.h: Likewise. * sysdeps/generic/sigset.h: Likewise. * sysdeps/generic/sockaddrcom.h: Likewise. * sysdeps/generic/sys/mman.h: Likewise. * sysdeps/generic/sys/ptrace.h: Likewise. * sysdeps/generic/termbits.h: Likewise. * sysdeps/generic/waitstatus.h: Likewise. * sysdeps/ieee754/huge_val.h: Likewise. * sysdeps/ieee754/nan.h: Likewise. * sysdeps/mach/hurd/local_lim.h: Likewise. * sysdeps/mach/hurd/statbuf.h: Likewise. * sysdeps/stub/huge_val.h: Likewise. * sysdeps/stub/libc-lock.h: Likewise. * sysdeps/stub/signum.h: Likewise. * sysdeps/stub/statbuf.h: Likewise. * sysdeps/stub/waitflags.h: Likewise. * sysdeps/unix/bsd/bsd4.4/sockaddrcom.h: Likewise. * sysdeps/unix/bsd/osf/alpha/statbuf.h: Likewise. * sysdeps/unix/bsd/osf/sys/mman.h: Likewise. * sysdeps/unix/bsd/signum.h: Likewise. * sysdeps/unix/bsd/statbuf.h: Likewise. * sysdeps/unix/bsd/sun/signum.h: Likewise. * sysdeps/unix/bsd/sun/sunos4/resourcebits.h: Likewise. * sysdeps/unix/bsd/sun/sunos4/sys/mman.h: Likewise. * sysdeps/unix/bsd/sun/sunos4/termbits.h: Likewise. * sysdeps/unix/bsd/ultrix4/sys/mman.h: Likewise. * sysdeps/unix/bsd/waitflags.h: Likewise. * sysdeps/unix/sysv/irix4/signum.h: Likewise. * sysdeps/unix/sysv/irix4/statbuf.h: Likewise. * sysdeps/unix/sysv/irix4/sys/mman.h: Likewise. * sysdeps/unix/sysv/linux/alpha/statbuf.h: Likewise. * sysdeps/unix/sysv/linux/alpha/sys/io.h: Likewise. * sysdeps/unix/sysv/linux/direntry.h: Likewise. * sysdeps/unix/sysv/linux/gnu/types.h: Likewise. * sysdeps/unix/sysv/linux/ioctl-types.h: Likewise. * sysdeps/unix/sysv/linux/local_lim.h: Likewise. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/unix/sysv/linux/resourcebits.h: Likewise. * sysdeps/unix/sysv/linux/signum.h: Likewise. * sysdeps/unix/sysv/linux/statbuf.h: Likewise. * sysdeps/unix/sysv/linux/sys/io.h: Likewise. * sysdeps/unix/sysv/linux/sys/klog.h: Likewise. * sysdeps/unix/sysv/linux/sys/mman.h: Likewise. * sysdeps/unix/sysv/linux/sys/ptrace.h: Likewise. * sysdeps/unix/sysv/linux/syscall.h: Likewise. * sysdeps/unix/sysv/linux/termbits.h: Likewise. * sysdeps/unix/sysv/local_lim.h: Likewise. * sysdeps/unix/sysv/sco3.2.4/syscall.h: Likewise. * sysdeps/unix/sysv/sco3.2/local_lim.h: Likewise. * sysdeps/unix/sysv/signum.h: Likewise. * sysdeps/unix/sysv/sysv4/i386/statbuf.h: Likewise. * sysdeps/unix/sysv/sysv4/signum.h: Likewise. * sysdeps/unix/sysv/sysv4/sigset.h: Likewise. * sysdeps/unix/sysv/sysv4/solaris2/signum.h: Likewise. * sysdeps/unix/sysv/sysv4/solaris2/statbuf.h: Likewise. * sysdeps/unix/sysv/sysv4/waitflags.h: Likewise. * sysdeps/vax/huge_val.h: Likewise. * values.h: Likewise. Thu Nov 14 04:22:41 1996 Ulrich Drepper <drepper@cygnus.com> * malloc/obstack.h: Use memcpy instead of bcopy and define a macro `memcpy' using bcopy if memcpy is not available. * manual/stdio.texi: Correct description of printf customization. The argument info function is not optional anymore and the interface for `printf_function' also changed. * manual/examples/rprintf.c: Define and use argument info function. * stdio-common/printf.h (struct printf_info): Change type for field `pad' to wchar_t. Correct comment for `register_printf_function'. * nss/getXXbyYY.c [NEED_H_ERRNO]: Don't pass pointer to h_errno to reentrant function. Instead use temporary variable and set h_errno if an error occured. Reported by NIIBE Yutaka. are no bits set in the masks. Reported by baldazzi@csr.unibo.it.