* nscd/connections.c: Implement r/o sharing of nscd's cache with client
processes via shared memory.
* nscd/nscd-client.h: Likewise.
* nscd/nscd.h: Likewise.
* nscd/nscd_conf.c: Likewise.
* nscd/nscd_getgr_r.c: Likewise.
* nscd/nscd_getpw_r.c: Likewise.
* nscd/nscd_gethst_r.c: Likewise.
* nscd/nscd.conf: Add new config parameters.
* nscd/Makefile (aux): Add nscd_helper.
* nscd/nscd_helper.c: New file.
* nscd/mem.c (gc): Indicate beginning and end of the gc cycle.
* nscd/hstcache.c: Simplify a lot. We cache only the request itself,
no derived information.
* connections.c (nscd_init): Fix bug in testing size of the persistent.
* nis/Makefile (aux): Add nis_hash.
* nis/nis_hash.c: New file. Split out from nis_util.c.
* nis/nis_util.c: Move __nis_hash code in separate file.
* csu/tst-atomic.c: Improve atomic_increment_val test which would
not have found a ppc bug.
2003-05-28 Ulrich Drepper <drepper@redhat.com>
* include/libc-symbols.h: Define hidden attribute for real also if
LIBC_NONSHARED is defined. Patch by Jakub Jelinek.
* csu/Makefile: Add rules to build Scrt1.o.
* sysdeps/i386/elf/start.S: Make code compilable with SHARED.
pattern rule. The implicit rule could be ruled out when $(objpfx)
didn't exist at the time of its consideration (ugh!).
* Makerules (+make-deps): Fix target matching.
Use $(sed-remove-dotdot).
atomic_compare_and_exchange_val_acq, atomic_add_zero,
atomic_compare_and_exchange_bool_acq and atomic_add_negative tests.
* include/atomic.h (atomic_add_negative, atomic_add_zero):
Prefix local variable so that it doesn't clash with the one
in atomic_exchange_and_add.
* sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void *
pointers.
(atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i.
* sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force
value into register.
* sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq):
Cast newval to long.
* sysdeps/x86_64/bits/atomic.h
(__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to
long.
(atomic_exchange): Cast newvalue to long if sizeof == 8.
(atomic_exchange_and_add): Cast value to long if sizeof == 8.
(atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
(atomic_bit_set): Shift 1L up in all cases to shut up warnings.
2003-03-25 Ulrich Drepper <drepper@redhat.com>
* csu/tst-atomic.c: Adjust tests to what atomic_add_negative and
atomic_add_zero were supposed to do.
* include/atomic.h: Adjust atomic_add_negative and atomic_add_zero
to x86 behavior.
* sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*.
This matches the new timer implementation.
* sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust
timer info for what the kernel provides these days.
(struct sigevent): Add _tid field.
Define SIGEV_THREAD_ID.
* Versions.def (librt): Add GLIBC_2.3.3.
* abilist/libpthread.abilist: Update for nptl.
(__atomic_val_bysize, __atomic_bool_bysize): New macros.
(atomic_compare_and_exchange_val_acq): Use it.
(atomic_compare_and_exchange_bool_acq): Likewise.
(atomic_increment_and_test): Invert sense of test.
(atomic_decrement_and_test): Likewise.
* csu/tst-atomic.c: Update those tests to match.
Add comment.
(atomic_decrement_and_test): Add comment.
2003-03-22 Jakub Jelinek <jakub@redhat.com>
* include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
(atomic_compare_and_exchange_bool_acq): Add comment. Don't use
__oldval variable in the macro, since it might be macro argument.
(atomic_decrement_if_positive): Initialize __memp, remove setting
of non-existent variable.
(atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
* sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
using atomic_compare_and_exchange_val_acq.
(atomic_decrement_if_positive, atomic_bit_test_set): Define.
* sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
Renamed from...
(__arch_compare_and_exchange_bool_8_acq): ... this.
(__arch_compare_and_exchange_val_16_acq): Renamed from...
(__arch_compare_and_exchange_bool_16_acq): ... this.
(__arch_compare_and_exchange_val_32_acq): Return old value. Renamed
from...
(__arch_compare_and_exchange_bool_32_acq): ... this.
(__arch_compare_and_exchange_val_64_acq): Return old value. Renamed
from...
(__arch_compare_and_exchange_bool_64_acq): ... this.
(__arch_compare_and_exchange_val_32_acq): Use __typeof for local
variables types instead of assuming int.
Change prefix of local variables to __arch.
* sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
Remove.
(atomic_compare_and_exchange_val_acq,
atomic_compare_and_exchange_bool_acq): Define.
* csu/tst-atomic.c: New test.
* csu/tst-atomic-long.c: New test.
* csu/Makefile (tests): Add tst-atomic and tst-atomic-long.
* malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.
* sysdeps/s390/Versions: Add trailing newline.
* sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
2002-12-31 Ulrich Drepper <drepper@redhat.com>
* string/string-inlines.c: Define __memcpy_g and __strchr_g macros
to avoid using the exported symbols. Define aliases with the
original names separately.
* include/time.h: Add libc_hidden_proto for __strftime_l.
* include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
* time/strftime.c: Always use libc_hidden_def if _LIBC.
* libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
* libio/fileops.c: Add libc_hidden_def for _IO_file_open.
* malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
tr_break.
* csu/Makefile (routines): Add dso_handle.
* csu/dso_handle.c: New file.
* csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
(CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
Turn off PIC for compiling this file.
* sysdeps/generic/errno.c (__libc_errno): Remove alias.
* inet/herrno.c (__libc_h_errno): Likewise.
* resolv/res_libc.c (__libc_res): Likewise.
[USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
(__res_state) [! USE___THREAD]: Don't define as weak.
* csu/Versions: Revert last change.
* resolv/Versions: Revert last change.
[HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
with compat_symbol so they are not link-time visible.
[! USE___THREAD] (__libc_errno): New alias for errno.
* csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
Add __libc_errno here.
* inet/herrno.c [USE___THREAD]: Use this conditional
in place of [USE_TLS && HAVE___THREAD].
[! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
(h_errno, _h_errno): Declare these with compat_symbol so they are not
link-time visible.
[! USE___THREAD] (__libc_h_errno): New alias for h_errno.
* resolv/res_libc.c [! USE___THREAD]
[HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
(_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
(__libc_res): Define as alias for _res.
* resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
Add __libc_h_errno and __libc_res here.
2002-11-14 Jakub Jelinek <jakub@redhat.com>
* csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
* resolv/Versions (h_errno, _res): Likewise.
2002-11-14 Roland McGrath <roland@redhat.com>
the beginning of generated target commands.
* csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
dependencies for these in case implicit rule search skipped the
nonexistent source directory.
* sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
files with $(object-suffixes) as targets too.
* Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
and a target for it using $(make-target-directory).
* Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
* sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
* sysdeps/generic/bits/pthreadtypes.h: ... here.
changed from [USE_TLS && HAVE___THREAD].
* sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
* sysdeps/x86_64/dl-machine.h
(elf_machine_type_class, elf_machine_rela): Likewise.
* sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
Likewise.
* include/link.h (struct link_map): Remove member l_tls_tp_initialized.
* elf/rtld.c (_dl_start_final, dl_main): Don't use it.
(_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
* sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
instead of ___tls_get_addr.
(___tls_get_addr_internal): Add attribute_hidden to decl.
* sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
_dl_error_catch_tsd.
* elf/rtld.c (startup_error_tsd): New function.
(dl_main): Point _dl_error_catch_tsd at that.
* elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
use new function pointer instead.
* elf/dl-tsd.c: New file.
* elf/Makefile (routines): Add it.
2002-10-07 Roland McGrath <roland@redhat.com>
* elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
writev if it's available. Otherwise if [RTLD_PRIVATE_ERRNO] then
take _dl_load_lock around calling __writev.
* sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
(INLINE_SYSCALL): Use that.
* sysdeps/generic/dl-sysdep.h: New file.
* sysdeps/mach/hurd/dl-sysdep.h: New file.
* sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
* include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
[RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
access it directly.
* elf/dl-minimal.c (__errno_location): Removed.
* sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
Use GOTOFF access for errno.
* sysdeps/unix/sysv/linux/i386/sysdep.h
[RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
* sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
Use PC-relative access for errno.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h
[RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
* include/tls.h: New file.
(USE___THREAD): New macro.
Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
libc or libpthread.
* sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
changed from [USE_TLS && HAVE___THREAD].
* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
* sysdeps/unix/i386/sysdep.S: Likewise.
* sysdeps/unix/x86_64/sysdep.S: Likewise.
* include/errno.h: Likewise.
* include/netdb.h: Likewise.
* include/resolv.h: Likewise.
* sysdeps/generic/errno.c: New file.
* csu/Makefile (aux): New variable, list errno.
* sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
* sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
* sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
* sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
* sysdeps/unix/alpha/sysdep.S: Likewise.
* sysdeps/generic/start.c: Likewise.
* sysdeps/unix/start.c: Likewise.
* sysdeps/unix/arm/start.c: Likewise.
* sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
* sysdeps/unix/sparc/start.c: Likewise.
* sysdeps/unix/sysv/irix4/start.c: Likewise.
* sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
* manual/search.texi (Tree Search Function, Hash Search Function):
Mention search.h clearly.
2002-10-05 Roland McGrath <roland@redhat.com>
* elf/dl-fxstat64.c: File removed.
* elf/dl-xstat64.c: File removed.
* elf/Makefile (rtld-routines): Remove them.
* sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
Instead, use strong_alias instead of versioned_symbol in the
!SHLIB_COMPAT case.
* sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
* sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
* include/shlib-compat.h
(SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
[! NOT_IN_libc] (IS_IN_libc): Define it.
* cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
* elf/Makefile (CPPFLAGS-.os): Likewise.
* sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
Return the status instead of calling exit.
* Makeconfig (CFLAGS): Prepend -std=gnu99.
* Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
Remove superfluous rm command, whose @ plus make bugs hid
all these commands from the make output.
* include/stubs-prologue.h: New file. Give #error under #ifdef _LIBC.
* Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
Use that file's contents instead of literal echo's for the prologue.
* include/features.h: Include <gnu/stubs.h> unconditionally.
* include/gnu/stubs.h: New file.
2002-09-30 Roland McGrath <roland@redhat.com>
* elf/rtld-Rules: New file.
* elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
$(objpfx)rtld-libc.a): New targets.
(generated): Add them.
(reloc-link): Remove -o $@ from the variable.
($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
(distribute): Add rtld-Rules.
(CPPFLAGS-.os): Define this instead of CFLAGS-.os.
* Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
(common-mostlyclean, common-clean): Clean up rtld-* files.
* sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
(libc: GLIBC_2.0) [USE_TLS && HAVE___THREAD]: Remove _errno, errno.
(libc: GLIBC_2.3) [USE_TLS && HAVE___THREAD]: Put errno here instead.
* resolv/Versions: Use %include <tls.h> to get USE_TLS defined.
(libc: GLIBC_2.0) [USE_TLS && HAVE___THREAD]: Remove _h_errno, h_errno,
and _res.
(libc: GLIBC_2.3) [USE_TLS && HAVE___THREAD]: Put h_errno, _res here.
* elf/tls-macros.h [__x86_64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD):
New macros for x86-64.
* sysdeps/unix/sysv/linux/alpha/bits/time.h: File removed.
It was indentical to the linux/bits/time.h file.
* nscd/nscd_gethst_r.c (nscd_gethst_r): Add a cast to silence warning.
* resolv/gethnamaddr.c (gethostbyaddr): Use socklen_t for SIZE.
* csu/gmon-start.c [!TEXT_START]: Define TEXT_START if not already
defined in entry.h.
(__gmon_start__) [!ENTRY_POINT_DECL]: Use TEXT_START macro to obtain
lowest address for profiling in __monstartup call.
* sysdeps/powerpc/powerpc64/elf/entry.h: New file.
2002-08-15 Ulrich Drepper <drepper@redhat.com>
* csu/Makefile: Define elide-routines.os not static-only-routines.
* include/sched.h (__clone): Add varargs at the end.
* elf/rtld.c (_dl_start): All TLS_INIT_TP to fail and stop in that
case.
(TLS_INIT_HELPER): If defined use it.
* sysdeps/generic/libc-tls.c (TLS_INIT_HELPER): Likewise.
* locale/loadarchive.c (archfname): Add missing slash.
* sysdeps/generic/strtold.c (__strtold_internal): Add libc_hidden_def.
* wcsmbs/wcstold.c (__wcstold_internal): Add libc_hidden_def.
2002-07-23 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/libc-tls.c: New file.
* csu/Makefile (routines): Add libc-tls.
(static-only-routines): Add libc-tls.
* elf/dl-support.c (_dl_phdr): New variable.
(_dl_phnum): New variable.
(_dl_aux_init): Initialize _dl_phdr and _dl_phnum from aux vector.
* sysdeps/generic/libc-start.c (__libc_start_main): Reorganize code
for !SHARED. First look through auxiliary vector. If TLS always
call __pthread_initialize_minimal.
* sysdeps/generic/dl-tls.c (_dl_allocate_tls): Make sure size argument
in mmap call is never zero.
2002-02-13 Ulrich Drepper <drepper@redhat.com>
* elf/dl-close.c (_dl_close): Implement freeing entries in the
slotinfo array.
(free_mem): Free memory for the slotinfo array if possible.
2001-07-25 Ulrich Drepper <drepper@redhat.com>
* csu/gmon-start.c: Use ENTRY_POINT_DECL is defined instead of a
declaration using ENTRY_POINT.
* sysdeps/ia64/elf/entry.h (ENTRY_POINT_DECL): New definition.
2001-07-25 H.J. Lu <hjl@gnu.org>
* csu/gmon-start.c: Include <entry.h>
(_start): Replaced with ENTRY_POINT.
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.
static pattern rule also that also covers
$(objpx)g$(static-start-installed-name).
[$(start-installed-name) != $(static-start-installed-name)]
(extra-objs, omit-deps, install-lib): Add
$(static-start-installed-name) and g$(static-start-installed-name).
* sysdeps/mach/hurd/i386/Makefile: Don't add crt0.o to those here;
just setting static-start-installed-name is now sufficient.
(extra-objs): Add static-start.o here.
(CFLAGS-initfini.s): Remove obsolete variable.
* sysdeps/mach/hurd/i386/Makeconfig: New file.
Define static-start-installed-name here.
* Makeconfig: Include existing $(full_config_sysdirs:=/Makeconfig).
* Make-dist (+sysdep-tsrcs): Look for Makeconfig files.
* Makerules ($(+sysdir_pfx)sysd-Makefile): Remove this target and
associated hair. Instead, just use $(wildcard ...) in the include.
* configure.in (critic_missing, aux_missing): Collect in these vars
the names of the missing programs, and include them in the error msgs.
* configure: Regenerated.
2001-03-12 Jakub Jelinek <jakub@redhat.com>
* csu/Makefile (abi-tag.h): Define OS and version separately, allow
version to be overriden from config.h.
* csu/abi-note.S: Use OS and version separately, include config.h.
* elf/dl-load.c (_dl_osversion): New.
(_dl_map_object_from_fd): Kill some warnings.
(open_verify): Check .note.ABI-tag of the library if present.
* elf/Makefile (CPPFLAGS-dl-load.c): Add -I$(csu-objpfx).
* elf/cache.c (struct cache_entry): Add osversion.
(print_entry): Print osversion.
(print_cache): Pass osversion to it.
(compare): Sort according to osversion.
(save_cache): Set osversion.
(add_to_cache): Add osversion argument.
* sysdeps/generic/ldconfig.h (add_to_cache, process_file,
process_elf_file): Add osversion argument.
* elf/readlib.c (process_file): Likewise.
* sysdeps/generic/readelflib.c (process_elf_file): Likewise.
* sysdeps/unix/sysv/linux/ia64/readelflib.c (process_elf_file,
process_elf32_file, process_elf64_file): Likewise.
* sysdeps/unix/sysv/linux/i386/readelflib.c (process_elf_file,
process_elf32_file, process_elf64_file): Likewise.
* sysdeps/unix/sysv/linux/sparc/readelflib.c (process_elf_file,
process_elf32_file, process_elf64_file): Likewise.
* elf/ldconfig.c (manual_link): Pass it.
(search_dir): Issue diagnostic if two libs with the same soname in
the same directory have different .note.ABI-tag. Record osversion in
dlib_entry and use it from there.
(struct lib_entry): Remove.
(struct dlib_entry): Add osversion.
* sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Check
osversion.
* sysdeps/generic/dl-cache.h (struct file_entry_new): Replace __unused
field with osversion.
* sysdeps/generic/ldsodefs.h (_dl_osversion): Declare.
* sysdeps/unix/sysv/linux/init-first.c: Include ldsodefs.h.
* sysdeps/unix/sysv/linux/dl-osinfo.h (DL_SYSDEP_OSCHECK): Save kernel
version in _dl_osversion.
* sysdeps/unix/sysv/linux/configure.in: Define __ABI_TAG_VERSION.
* Makerules (build-shlib-helper, build-module-helper): New.
(build-shlib, build-module-helper): Make sure .note.ABI-tag comes
early.
* config.h.in (__ABI_TAG_VERSION): Add.
* elf/dl-minimal.c (__strtoul_internal): Set endptr on return.
* sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
Handle LD_ASSUME_KERNEL.
* sysdeps/unix/sysv/linux/dl-librecon.h: New.
link-extra-libs-bounded): New variables.
(built-program-cmd): Omit $(run-program-prefix) for static BP tests.
* Makerules (do-tests-clean, common-mostlyclean): Remove BP test files.
* Rules (tests-bp.out): New variable.
(tests): Conditionally add BP tests.
(binaries-bounded): Add variable and associated rule.
* csu/Makefile [build-bounded] (extra-objs, install-lib):
Move conditional stuff after place where condition is defined.
2000-07-25 Mark Kettenis <kettenis@gnu.org>
* nss/nss_files/files-netgrp.c (strip_whitespace): New function.
(_nss_netgroup_parseline): Use strip_whitespace to strip off any
leading and trailing spaces from host, user and domain name.
2000-07-25 Jes Sorensen <jes@linuxcare.com>
* csu/defs.awk: Add support for need_endp.
2000-07-25 Mark Kettenis <kettenis@gnu.org>
* resolv/resolv.h: Remove __P from res_send_qhook and
res_send_rhook typedefs.
2000-07-25 Bruno Haible <haible@clisp.cons.org>
* intl/tst-translit.c (main): Unset OUTPUT_CHARSET.
* csu/Makefile (extra-objs, omit-deps, install-lib): Add
BP-flavored startup object.
($(objpfx)b$(start-installed-name)): New rule.
* include/libc-symbols.h (symbol_set_declare): Change type
of `__start_##set' and `__stop_##set' to pointer-to-function.
(symbol_set_declare): Change type of `set' to array of
pointer-to-function.
* include/set-hooks.h (RUN_HOOK): Change type of `ptr' to
pointer-to-function.
* Makeconfig: Add missing comment.
* csu/Makefile (extra-objs, omit-deps, install-lib): Add
BP-flavored startup object.
($(objpfx)b$(start-installed-name)): New rule.
* include/libc-symbols.h (symbol_set_declare): Change type
of `__start_##set' and `__stop_##set' to pointer-to-function.
(symbol_set_declare): Change type of `set' to array of
pointer-to-function.
* include/set-hooks.h (RUN_HOOK): Change type of `ptr' to
pointer-to-function.
2000-05-07 H.J. Lu <hjl@gnu.org>
* csu/initfini.c: Moved to ....
* sysdeps/generic/initfini.c: ...here.
* csu/Makefile (initfini.c): Set vpath to $(full_config_sysdirs).
unnecessarily.
* sysdeps/unix/sysv/linux/kernel-features.h
(__ASSUME_STAT64_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL,
__ASSUME_NEW_GETRLIMIT_SYSCALL): Define on powerpc for kernels >=
2.3.35.
* sysdeps/unix/sysv/linux/powerpc/bits/resource.h: New file.
* sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/getrlimit.c: New file.
* sysdeps/unix/sysv/linux/powerpc/getrlimit64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/mmap64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/setrlimit.c: New file.
* sysdeps/unix/sysv/linux/powerpc/setrlimit64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/syscalls.list: Add
s_fstat64, s_ftruncate64, s_lstat64, s_mmap2, s_stat64,
s_truncate64.
* sysdeps/unix/sysv/linux/powerpc/truncate64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/Versions: New file.
* sysdeps/unix/sysv/linux/powerpc/brk.S [!PIC]: Don't access
__curbrk off the small data area register. Reported by
Andrew Haley <aph@pasanda.cygnus.co.uk>.
2000-01-27 Geoff Keating <geoffk@cygnus.com>
* csu/Makefile ($(objpfx)version-info.h): Don't use echo -n
unnecessarily.
* sysdeps/unix/sysv/linux/kernel-features.h
(__ASSUME_STAT64_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL,
__ASSUME_NEW_GETRLIMIT_SYSCALL): Define on powerpc for kernels >=
2.3.35.
* sysdeps/unix/sysv/linux/powerpc/bits/resource.h: New file.
* sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/getrlimit.c: New file.
* sysdeps/unix/sysv/linux/powerpc/getrlimit64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/mmap64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/setrlimit.c: New file.
* sysdeps/unix/sysv/linux/powerpc/setrlimit64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/syscalls.list: Add
s_fstat64, s_ftruncate64, s_lstat64, s_mmap2, s_stat64,
s_truncate64.
* sysdeps/unix/sysv/linux/powerpc/truncate64.c: New file.
* sysdeps/unix/sysv/linux/powerpc/Versions: New file.
* sysdeps/unix/sysv/linux/powerpc/brk.S [!PIC]: Don't access
__curbrk off the small data area register. Reported by
Andrew Haley <aph@pasanda.cygnus.co.uk>.
* manual/filesys.texi (Testing File Access): Correct description of
SUID.
1999-08025 H.J. Lu <hjl@gnu.org>
* csu/defs.awk (.end): Only match with leading white spaces.
(.align): Likewise.
1999-09-19 Ulrich Drepper <drepper@cygnus.com>
1999-08-19 Andreas Schwab <schwab@suse.de>
* libio/iovswscanf.c (vswscanf): Make stream unoriented initially
and call _IO_fwide, to get the wide stream state initialized
correctly. Don't set _IO_JUMPS.
* libio/vsnprintf.c (_IO_vsnprintf): Avoid casts to _IO_FILE *.
* libio/vswprintf.c (_IO_vswprintf): Likewise. Pass
_IO_wstrn_jumps to _IO_no_init instead of setting _IO_WIDE_JUMPS
directly.
1999-08-19 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* math/libm-test.c (jn_test): Fix typo in description.
(erfc_test): Add some more tests.
(erf_test): Add some more tests.
1999-08-19 Andreas Schwab <schwab@suse.de>
* csu/Makefile ($(objpfx)initfini.s): Replace $(no-exceptions) by
expression using $(exceptions).
1999-04-10 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/install.texi (Configuring and compiling): Comment out
description of --disable-static since this doesn't work currently
(see change by Ulrich Drepper on 1998-12-07 for configure.in).
1999-02-06 Ulrich Drepper <drepper@cygnus.com>
* 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.
* 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
* stdio-common/printf_fphex.c: Likewise.
* stdio-common/vfprintf.c: Likewise.
See ChangeLog.9 for earlier changes.
1998-12-29 Geoff Keating <geoffk@ozemail.com.au>
* sunrpc/Versions: Include _authenticate, it's defined in a user
header (in fact, it's the whole contents of rpc/svc_auth.h).
1999-01-23 Ulrich Drepper <drepper@cygnus.com>
* io/ftw.c (process_entry): Initialize flag since not all gcc
versions are smart enough to see that this is no problem.
* elf/dl-open.c (_dl_init_paths): Check malloc result.
* csu/Versions: Add __frame_state_for.
1998-09-21 10:00 Ulrich Drepper <drepper@cygnus.com>
* string/bits/string2.h: Add mempcpy optimization.
* sysdeps/generic/mempcpy.c: Undefined __mempcpy.
* intl/localealias.c: Define mempcpy only if not already defined.
* sysdeps/i386/i486/bits/string.h: Define ffsl only if not already
defined.
1998-09-20 10:48 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu>
* csu/abi-note.S: Emit the note directly instead of defining
a preprocessor macro that's only used once. Don't include sysdep.h.
* abi-tags: Generalize Solaris entry.
1998-09-18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/bsd/getpt.c (__libc_ptyname1, __libc_ptyname2):
Change to array to avoid runtime relocation.
* sysdeps/unix/sysv/linux/ptsname.c: Update declarations.
1998-09-21 12:22 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* malloc/Makefile ($(objpfx)libmcheck.a): Fix use of $(LN_S).
* math/Makefile ($(objpfx)libieee.a): Likewise.
1998-09-21 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/getpt.c: Fix order of argument to weak_alias.
Patch by John Tobey <jtobey@banta-im.com>.
1998-08-20 16:01 Ulrich Drepper <drepper@cygnus.com>
* elf/ldd.sh.in: Redirect warnings and error messages to stderr.
* elf/ldd.bash.in: Likewise.
* elf/sln.c: Avoid warning for no main prototype.
* sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Remove O_READ and
O_WRITE.
* sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Add F_SETSIG and
F_GETSIG.
* sysdeps/unix/sysv/linux/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
1998-08-20 Philip Blundell <pb@nexus.co.uk>
* sysdeps/arm/fpu/ieee754.h: Move to...
* sysdeps/arm/ieee754.h: ... here.
* sysdeps/arm/__longjmp.S: Put return value in correct register.
Don't set the condition flags unnecessarily.
* sysdeps/arm/fpu/__longjmp.S: Likewise. Restore floating point
registers correctly.
* sysdeps/arm/dl-machine.h: Fix problems with profiling code
(patch from Scott Bambrough).
* sysdeps/arm/sysdep.h (CALL_MCOUNT): Add missing semicolons.
* csu/initfini.c (_init): Don't check whether __gmon_start__ is
NULL, just call it unconditionally.
(__gmon_start__): Provide stub version as a weak symbol.
1998-07-30 Philip Blundell <philb@gnu.org>
* sysdeps/unix/sysv/linux/arm/init-first.h: New file (from patch
by Scott Bambrough)
* sysdeps/unix/sysv/linux/arm/errlist.c: New file; ARM tools don't
like `@' in .type directives.
* sysdeps/arm/bsd-setjmp.S: Use PLT for procedure call.
* sysdeps/arm/bsd-_setjmp.S: Likewise.
* sysdeps/arm/dl-machine.h: Set __libc_stack_end.
1998-08-20 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/mips/bits/fcntl.h (F_SETOWN): Correct value.
(F_GETOWN): Likewise.
* sysdeps/unix/sysv/linux/bits/siginfo.h (SI_SIGIO): Add it (from
Linux 2.1.117).
1998-08-20 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/glob.c [_LIBC]: Define __stat only if not
already defined.
1998-08-14 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* nis/nss_compat/compat-grp.c: Set errno to ENOENT if we have no
more entries.
* nis/nss_compat/compat-initgroups.c: Likewise.
* nis/nss_compat/compat-pwd.c: Likewise.
* nis/nss_compat/compat-spwd.c: Likewise.
* nis/nss_nis/nis-alias.c: Likewise.
* nis/nss_nis/nis-ethers.c: Likewise.
* nis/nss_nis/nis-grp.c: Likewise.
* nis/nss_nis/nis-hosts.c: Likewise.
* nis/nss_nis/nis-initgroups.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-service.c: Likewise.
* nis/nss_nis/nis-spwd.c: Likewise.
* nis/rpcsvc/yp.h: Generate new without 1024 byte limits.
* nis/ypclnt.c: Try binding dir only first time, could be to old.
* nis/yp_xdr.c: Remove 1024 byte limit.
* nis/ypupdate_xdr.c: Likewise.
* nis/nss_nis/nis-publickey.c: Make sure, nobody could send
wrong data.
1998-07-02 21:51 Ulrich Drepper <drepper@cygnus.com>
* Makeconfig: Define list of subdirs as all-subdirs and make subdirs
a copy.
* Makefile: Add rules to generate map files.
(distribute): Remove libc.map, add Versions.def and versions.awk.
* Makerules: Change rules to find map files on common-objpfx.
* elf/Makefile: Likewise.
* md5-crypt/Makefile: Likewise.
* nis/Makefile (libnsl-map): Remove.
* Versions.def: New file.
* versions.awk: New file.
* argp/Versions: New file.
* assert/Versions: New file.
* catgets/Versions: New file.
* csu/Versions: New file.
* ctype/Versions: New file.
* db/Versions: New file.
* debug/Versions: New file.
* dirent/Versions: New file.
* elf/Versions: New file.
* gmon/Versions: New file.
* grp/Versions: New file.
* hesiod/Versions: New file.
* hurd/Versions: New file.
* iconv/Versions: New file.
* inet/Versions: New file.
* intl/Versions: New file.
* io/Versions: New file.
* libio/Versions: New file.
* linuxthreads/Versions: New file.
* locale/Versions: New file.
* login/Versions: New file.
* malloc/Versions: New file.
* math/Versions: New file.
* md5-crypt/Versions: New file.
* misc/Versions: New file.
* nis/Versions: New file.
* nss/Versions: New file.
* posix/Versions: New file.
* pwd/Versions: New file.
* resolv/Versions: New file.
* resource/Versions: New file.
* rt/Versions: New file.
* setjmp/Versions: New file.
* shadow/Versions: New file.
* signal/Versions: New file.
* socket/Versions: New file.
* stdio/Versions: New file.
* stdio-common/Versions: New file.
* stdlib/Versions: New file.
* streams/Versions: New file.
* string/Versions: New file.
* sunrpc/Versions: New file.
* sysdeps/alpha/Versions: New file.
* sysdeps/alpha/fpu/Versions: New file.
* sysdeps/i386/Versions: New file.
* sysdeps/sparc/Versions: New file.
* sysdeps/unix/sysv/Versions: New file.
* sysdeps/unix/sysv/linux/Versions: New file.
* sysdeps/unix/sysv/linux/alpha/Versions: New file.
* sysdeps/unix/sysv/linux/i386/Versions: New file.
* sysdeps/unix/sysv/linux/mips/Versions: New file.
* sysvipc/Versions: New file.
* termios/Versions: New file.
* time/Versions: New file.
* wcsmbs/Versions: New file.
* wctype/Versions: New file.
* libc.map: Removed.
* db/libdb.map: Removed.
* elf/libdl.map: Removed.
* hesiod/libnss_hesiod.map: Removed.
* hurd/libhurduser.map: Removed.
* hurd/libmachuser.map: Removed.
* linuxthreads/libpthread.map: Removed.
* locale/libBrokenLocale.map: Removed.
* login/libutil.map: Removed.
* math/libm.map: Removed.
* md5-crypt/libcrypt.map: Removed.
* nis/libnsl.map: Removed.
* nis/libnsl_compat.map: Removed.
* nis/libnss_nis.map: Removed.
* nis/libnss_nisplus.map: Removed.
* nss/libnss_db.map: Removed.
* nss/libnss_files.map: Removed.
* resolv/libnss_dns.map: Removed.
* resolv/libresolv.map: Removed.
* rt/librt.map: Removed.
* elf/dl-load.c (fillin_rpath): Fix test for trusted directory.
Fix typos.
* elf/rtld.c (process_dl_debug): Recognize 'all'.
(process_envvars): LD_BIND_NOW must be followed by y, Y, or 1.
* sysdeps/generic/elf/backtracesyms.c: Allocate string memory of
correct size.
* sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Fix typo
in comment.
1998-05-25 Ulrich Drepper <drepper@cygnus.com>
* malloc/thread-m.h: Use __mutex_init function in mutex_init macro
for Hurd. Patch by Mark Kettenis.
1998-04-18 Gordon Matzigkeit <gord@profitpress.com>
* mach/Machrules (+preinit, +postinit): Define these variables to
empty because libhurduser and libmachuser don't need startup
files.
1998-04-22 Gordon Matzigkeit <gord@profitpress.com>
* sysdeps/mach/hurd/errlist.c (ERR_REMAP): Use err_get_code
instead of a raw bitmask.
1998-05-23 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makeconfig (rpath-dirs): New variable.
(rpath-link): Use it.
(nssobjdir, nisobjdir, rtobjdir, resolvobjdir): Removed.
(db-objpfx): Removed.
* crypt/Makefile: Augment rpath-dirs instead of rpath-link.
* md5-crypt/Makefile: Likewise.
* sysdeps/mach/hurd/Makefile: Likewise.
* Makeconfig (move-if-change): New variable.
* iconvdata/Makefile (move-if-change): Removed.
* manual/Makefile (move-if-change): Set only if undefined, use
local script by default.
* sunrpc/Makefile (move-if-change): Removed.
* sysdeps/mach/hurd/Makefile ($(common-objpfx)stamp-errnos): Use
$(move-if-change).
* elf/Makefile: Remove all references to obsolete file
$(objpfx)rtldtbl.h.
($(objpfx)trusted-dirs.h): Use stamp file. Cleanup command.
1998-05-22 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/dl-close.c (_dl_close): Add debugging message.
1998-05-25 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* csu/Makefile ($(objpfx)version-info.h): Correct sed expression
to get Linux version and not gcc version.
Reported by Alan Curry <pacman@cqc.com>.
1998-05-25 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/generic/_strerror.c (__strerror_r): Don't return NULL
pointers - return unknown error message instead.
Reported by Alan Curry <pacman@cqc.com>.
1998-05-24 Mark Kettenis <kettenis@phys.uva.nl>
* iconvdata/Makefile (modules, sed-generated-headers,
perl-generated-headers): ibm424.h is perl generated. Make
necessary modifications to compile without perl.
1998-05-24 Mark Kettenis <kettenis@phys.uva.nl>
* hesiod/hesiod.c (read_config_file): Fix typo.