Commit Graph

719 Commits

Author SHA1 Message Date
Ulrich Drepper
06a60d9c89 Update.
2001-01-04  Ulrich Drepper  <drepper@redhat.com>

	* Versions.def (ld): Add GLIBC_2.2.

	* catgets/gencat.c: Copyright 2001.
	* csu/version.c: Likewise.
	* debug/catchsegv.sh: Likewise.
	* debug/xtrace.sh: Likewise.
	* elf/ldconfig.c: Likewise.
	* elf/sprof.c: Likewise.
	* iconv/iconv_prog.c: Likewise.
	* locale/locale.c: Likewise.
	* locale/localedef.c: Likewise.
	* malloc/memusage.sh: Likewise.
	* malloc/mtrace.pl: Likewise.
	* nscd/nscd.c: Likewise.
	* posix/getconf.c: Likewise.

2001-01-04  Mark Kettenis  <kettenis@gnu.org>

	* include/stdio.h: Only provide __getwc_unlocked prototype if
	USE_IN_LIBIO is defined.

2001-01-04  Kaz Kojima  <kkojima@rr.iij4u.or.jp>

	* sysdeps/unix/sysv/linux/sh/socket.S (__socket): Fix error code
	handling.

2001-01-03  Andreas Schwab  <schwab@suse.de>

	* sysdeps/generic/strtoll.c: Remove unused __strtoq_internal alias.
	* sysdeps/generic/strtoull.c: Remove unused __strtouq_internal alias.

	* sysdeps/wordsize-64/strtol.c: Add strtoq alias and fix strtoll alias.
	* sysdeps/wordsize-64/strtoul.c: Add strtouq alias and fix
	strtoull alias.
	* sysdeps/wordsize-64/wcstol.c: Add wcstoq alias and fix wcstoll alias.
	* sysdeps/wordsize-64/wcstoul.c: Add wcstouq alias and fix
	wcstoull alias.

	* sysdeps/generic/strtoul.c: Make sure we find strtol.c in this
	directory.
	* sysdeps/generic/strtol_l.c: Likewise.
	* sysdeps/generic/strtoul_l.c: Likewise.
	* sysdeps/generic/wcstoul.c: Likewise, for wcstol.c.

	* sysdeps/wordsize-64/strtol_l.c: Fix alias.
	* sysdeps/wordsize-64/strtoul_l.c: Likewise.
	* sysdeps/wordsize-64/wcstol_l.c: Fix alias.
	* sysdeps/wordsize-64/wcstoul_l.c: Likewise.
2001-01-05 01:01:31 +00:00
Andreas Jaeger
66539a737d Update.
* include/libc-internal.h: Add prototype for __libc_freeres.

	* malloc/mtrace.c: Likewise.
	* malloc/set-freeres.c: Likewise.
2000-12-31 19:13:04 +00:00
Andreas Jaeger
72f70279f4 Update.
* sysdeps/unix/sysv/linux/init-first.c: Include <libc-internals.h>
	for prototypes, remove redundant prototypes.
	* gmon/gmon.c: Likewise.
	* sysdeps/unix/i386/i586/clock_getres.c: Likewise.
	* sysdeps/unix/i386/i586/clock_gettime.c: Likewise.

	* sysdeps/generic/enbl-secure.c: Include <libc-internals.h> for
	prototypes.
	* elf/soinit.c: Likewise.
	* sysdeps/generic/prof-freq.c: Likewise.
	* sysdeps/mach/hurd/profil.c: Likewise.
	* debug/noophooks.c: Likewise.
	* debug/pcprofile.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/get_clockfreq.c: Likewise.
	* sysdeps/generic/get_clockfreq.c: Likewise.

	* locale/localeinfo.h: Add internal prototypes.

	* elf/rtld.c (dl_main): Fix prototype.
2000-12-31 18:24:24 +00:00
Ulrich Drepper
09f5e1635a Update.
2000-12-28  Wolfram Gloger  <wg@malloc.de>

	* malloc/malloc.c (MALLOC_COPY): Handle case if source and
	destination overlap.  Assume dest is always below source if
	overlapping.
2000-12-31 07:39:50 +00:00
Ulrich Drepper
c77a447822 Update.
2000-12-30  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-close.c (_dl_close): We can ignore the NODELETE flag if the
	object was not yet initialized.

2000-12-28  H.J. Lu  <hjl@gnu.org>

	* elf/dl-deps.c (_dl_map_object_deps): Make sure the DSO state
	is always consistent even if its dependency is failed.

	* elf/dl-open.c (_dl_open): Increment the open count before
	calling _dl_close () in case of failure.

	* elf/neededtest4.c: New file.
	* elf/neededobj5.c: New file.
	* elf/neededobj6.c: New file.

	* elf/Makefile (distribute): Add neededobj5.c and neededobj6.c.
	(tests): Add neededtest4.
	(modules-names): Add neededobj5 and neededobj6.
	($(objpfx)neededobj6.so): New target.
	($(objpfx)neededtest4): New target.
	($(objpfx)neededtest4.out): New target.
2000-12-31 06:09:08 +00:00
Andreas Jaeger
728c24ff87 Update.
* elf/dl-minimal.c: Add prototypes.

	* include/locale.h: Add internal prototypes.
	* include/sys/gmon.h: Likewise.
2000-12-28 07:58:08 +00:00
Ulrich Drepper
7231f6f940 Update.
2000-12-27  Ben Collins  <bcollins@debian.org>

	* elf/dl-open.c (_dl_open): Correctly set the new objname pointer
	when reallocating the error strings.
	Reported by Kalle Olavi Niemitalo <kon@iki.fi>
2000-12-28 04:19:14 +00:00
Andreas Jaeger
938c669eb4 * stdio-common/printf_fp.c (__printf_fp): Add prototype for nested
function. 
* elf/dl-load.c (_dl_map_object_from_fd): Likewise. 
* locale/programs/locale.c (show_locale_vars): Likewise. 
(show_info): Likewise. 
* locale/programs/ld-collate.c (collate_output): Likewise. 
* locale/programs/ld-ctype.c (set_class_defaults): Likewise. 
* elf/dl-deps.c (_dl_map_object_deps): Likewise. 
* stdlib/rpmatch.c (rpmatch): Likewise.
2000-12-27 20:18:52 +00:00
Andreas Jaeger
ed073f0e62 Add prototype for foo. 2000-12-27 19:58:36 +00:00
Andreas Jaeger
5c80f57cfc Update.
* elf/neededobj1.c: Likewise.
	* elf/neededobj2.c: Likewise.
	* elf/neededobj3.c: Likewise.
	* elf/neededobj4.c: Likewise.
	* elf/nextmod1.c: Likewise.
	* elf/nextmod2.c: Likewise.
2000-12-17 17:50:56 +00:00
Andreas Jaeger
715ed1e9a5 Update.
2000-12-17  Andreas Jaeger  <aj@suse.de>

	* elf/vismain.c: Move prototypes for functions in vismod*.c to
	vismod.h.
	* elf/vismod.h: New file.
	* elf/Makefile (distribute): Add vismod.h.
	* elf/vismod1.c: Include vismod.h.
	* elf/vismod2.c: Likewise.
	* elf/vismod3.c: Likewise.

	* elf/constload3.c: Add prototype declarations to shut up gcc.
	* elf/failobj.c: Likewise.
	* elf/nodelmod3.c: Likewise.
	* elf/filtmod1.c: Likewise.
	* elf/filtmod2.c: Likewise.
	* elf/reldepmod1.c: Likewise.
	* elf/reldepmod2.c: Likewise.
	* elf/reldepmod3.c: Likewise.
	* elf/reldepmod4.c: Likewise.
	* elf/unload2dep.c: Likewise.
	* elf/unload2mod.c: Likewise.
	* elf/ltglobmod1.c: Likewise.
	* elf/pathoptobj.c: Likewise.

	* locale/programs/ld-collate.c (collate_finish): Don't use labels
	at end of compound statement.
	* locale/programs/locale.c (show_info): Likewise.
	* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise.
2000-12-17 17:09:01 +00:00
Andreas Jaeger
1a511d3105 Update.
2000-12-15  Andreas Jaeger  <aj@suse.de>

	* stdio-common/scanf9.c (main): Reformat and change to avoid
	warnings.

	* stdio-common/tstdiomisc.c: Make local functions static.
	* stdio-common/tst-printf.c: Likewise.

	* elf/constload2.c: Add prototype declarations to shut up gcc.
	* elf/dep1.c: Likewise.
	* elf/dep2.c: Likewise.
	* elf/dep3.c: Likewise.
	* elf/dep4.c: Likewise.
	* elf/ltglobmod2.c: Likewise.

	* libio/fmemopen.c: Make local functions static.

	* elf/Makefile (distribute): Added testobj.h.

	* elf/testobj.h: New file.

	* elf/testobj1.c: Include testobj.h and move prototype
	declarations to testobj.h.
	* elf/testobj2.c: Likewise.
	* elf/testobj3.c: Likewise.
	* elf/testobj4.c: Likewise.
	* elf/testobj5.c: Likewise.
	* elf/testobj6.c: Likewise.
	* elf/testobj1_1.c: Likewise.
	* elf/preloadtest.c: Likewise.
2000-12-15 16:03:57 +00:00
Ulrich Drepper
7b70fef6ae Update.
2000-12-08  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-open.c (_dl_open): If objname points right after errstring,
	allocate it together with errstring using alloca.
	* elf/dl-error.c (_dl_signal_error): If malloc failed, set objname
	to "", because it might point to local stack.
2000-12-09 00:02:12 +00:00
Ulrich Drepper
e9c9f3a1c2 Fix a few more places. 2000-12-08 17:34:49 +00:00
Ulrich Drepper
104d0bd3ef Update.
2000-12-08  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-load.c (fillin_rpath): Don't assume there is '\0' at
	cp + len.  Compute where from dirname.
	Reported by <jreiser@BitWagon.com>.

2000-12-08  Richard Henderson  <rth@twiddle.net>

	* sysdeps/alpha/_mcount.S: Fix typo.
	* sysdeps/alpha/strncpy.S: Likewise.

	* sysdeps/alpha/alphaev6/Implies: New file.
	* sysdeps/alpha/alphaev67/Implies: New file.
	* sysdeps/alpha/alphaev67/ffs.S: New file.
	* sysdeps/alpha/alphaev67/ffsll.S: New file.
	* sysdeps/alpha/alphaev67/rawmemchr.S: New file.
	* sysdeps/alpha/alphaev67/stpcpy.S: New file.
	* sysdeps/alpha/alphaev67/stpncpy.S: New file.
	* sysdeps/alpha/rawmemchr.S: New file.
	* sysdeps/alpha/strcat.S: Tail call to __stxcpy.
	* sysdeps/alpha/strcpy.S: Likewise.

	From GMP 3.1.1:
	* sysdeps/alpha/alphaev6/addmul_1.s: New file.

	From rick.gorton@alpha-processor.com:
	* sysdeps/alpha/alphaev6/memchr.S: New file.
	* sysdeps/alpha/alphaev6/memcpy.S: New file.
	* sysdeps/alpha/alphaev6/memset.S: New file.
	* sysdeps/alpha/alphaev6/stxcpy.S: New file.
	* sysdeps/alpha/alphaev6/stxncpy.S: New file.
	* sysdeps/alpha/alphaev67/strcat.S: New file.
	* sysdeps/alpha/alphaev67/strchr.S: New file.
	* sysdeps/alpha/alphaev67/strlen.S: New file.
	* sysdeps/alpha/alphaev67/strncat.S: New file.
	* sysdeps/alpha/htonl.S: Use a shorter sequence.

2000-12-08  Jakub Jelinek  <jakub@redhat.com>

	* inet/getnameinfo.c (getnameinfo): Fix NI_NOFQDN support.
	Reported by <pspencer@fields.utoronto.ca>.

2000-12-07  Jes Sorensen  <jes@linuxcare.com>

	* sysdeps/ia64/elf/start.S (__data_start): Add __data_start variable.
	Pointed out by Hans Boehm.

2000-12-07  H.J. Lu  <hjl@gnu.org>

	* elf/dl-version.c (match_symbol): Check map->l_name[0] for printing.

2000-12-07  Andreas Jaeger  <aj@suse.de>

	* misc/error.c: Add format attributes for __error and __error_at_line.

	* nscd/dbg_log.h: Add format attribute.

2000-12-08  Ulrich Drepper  <drepper@redhat.com>

	* misc/sys/syslog.h: Add format attributes to syslog and vsyslog.
	Patch by Joseph S. Myers <jsm28@cam.ac.uk>.

	* sysdeps/generic/dl-cache.c (HWCAP_CHECK): Fix access to _dl_hwcap.
	* manual/install.texi: Recommend to set LANGUAGE=C LC_ALL=C during
2000-12-08 17:27:11 +00:00
Andreas Jaeger
48896b9dba Update.
2000-12-05  Andreas Jaeger  <aj@suse.de>

	* elf/dl-misc.c (_dl_sysdep_read_whole_file): Mark as
	internal_function.
	* sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
	* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start_cleanup): Likewise.

	* sysdeps/generic/dl-cache.c: Remove declaration of
	_dl_sysdep_read_whole_file.

	* elf/dl-load.c (_dl_map_object): Remove declaration of
	_dl_load_cache_lookup.

	* sysdeps/generic/ldsodefs.h: Add declarations of
	_dl_load_cache_lookup, _dl_unload_cache,
	_dl_sysdep_read_whole_file, _dl_sysdep_start and
	_dl_sysdep_start_cleanup.

	* elf/rtld.c: Remove prototypes that are defined in ldsodefs.h
	now.

	* elf/dl-misc.c: Include <ldsodefs.h> to get prototypes.
	* sysdeps/generic/dl-environ.c: Likewise.

	* stdio-common/printf_fp.c: Include <gmp.h> instead of
	<stdlib/gmp.h>.
	* math/atest-exp.c: Likewise.
	* math/atest-exp2.c: Likewise.
	* math/atest-sincos.c: Likewise.
	* stdio-common/_itoa.c: Likewise.
	* stdio-common/_itowa.c: Likewise.

	* include/gmp.h: New file with internal prototypes.

	* sysdeps/generic/longjmp.c: Move _longjmp_unwind declaration from
	here to...
	* include/setjmp.h: ...here.

	* locale/Makefile (routines): Remove codeset_name since it's not
	needed anywhere.

	* locale/codeset_name.c: Removed.
2000-12-05 17:34:28 +00:00
Ulrich Drepper
a850e77f3f Update.
* elf/loadfail.c: Little cosmetic changes to avoid warnings.
	* elf/loadtest.c: Likewise.
	* elf/multiload.c: Likewise.
	* elf/next.c: Likewise.
	* elf/nodelete.c: Likewise.
	* elf/noload.c: Likewise.
	* elf/order.c: Likewise.
	* elf/origtest.c: Likewise.
	* elf/preloadtest.c: Likewise.
	* elf/restest1.c: Likewise.
2000-11-26 06:18:02 +00:00
Ulrich Drepper
595538976b Update.
2000-11-20  Jakub Jelinek  <jakub@redhat.com>

	* iconvdata/bug-iconv2.c (main): Use %zd in format string.
	* io/test-lfs.c (do_test): Cast statbuf.st_size to long long.
	* malloc/tst-valloc.c (main): Cast valloc return value to long.
	* malloc/tst-obstack.c (verbose_malloc): Use %zd in format string.
	* math/test-fpucw.c (main): Use %lx in format string, cast
	control words to long.
	* stdio-common/tst-fmemopen.c (main): Use %td in format strings.
	* stdlib/tst-strtol.c (tests): Avoid (bogus?) decimal constant is so
	large that it is unsigned warning.

	* sysdeps/unix/sysv/linux/sparc/bits/types.h (__ssize_t): Changing
	it to long on sparc64.

2000-11-20  Andreas Jaeger  <aj@suse.de>

	* nscd/nscd.h (termination_handler): Add noreturn attribute.
	(receiv_print_stats): Likewise.

	* elf/ldconfig.c (path_hwcap): Cast -1 for proper comparison.
2000-11-20 17:40:29 +00:00
Ulrich Drepper
40306912c9 Update.
2000-11-15  H.J. Lu  <hjl@gnu.org>

	* sysdeps/generic/ldsodefs.h (DL_DT_INIT_ADDRESS): Defined if
	ELF_FUNCTION_PTR_IS_SPECIAL is not defined.
	(DL_DT_FINI_ADDRESS): Likewise.

	* sysdeps/ia64/dl-lookupcfg.h (_dl_lookup_address): Set the
	return type to ElfW(Addr).
	(_dl_function_address): New prototype.
	(DL_FUNCTION_ADDRESS): Defined.
	(DL_DT_INIT_ADDRESS): Defined as DL_FUNCTION_ADDRESS.
	(DL_DT_FINI_ADDRESS): Likewise.

	* sysdeps/ia64/Versions (GLIBC_2.2): Add _dl_function_address.

	* sysdeps/ia64/dl-machine.h (_dl_start_address): Removed.
	(ELF_MACHINE_START_ADDRESS): Changed to DL_FUNCTION_ADDRESS.

	* sysdeps/ia64/dl-symaddr.c (_dl_start_address): Renamed to ...
	(_dl_function_address): This.

	* elf/dl-fini.c (_dl_fini): Use DL_DT_FINI_ADDRESS to get the
	function pointer for DT_FINI.
	* elf/dl-close.c (_dl_close): Likewise.

	* elf/dl-init.c (_dl_init): Use DL_DT_INIT_ADDRESS to get the
	function pointer for DT_INIT.

2000-11-16  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/generic/printf_fphex.c (__printf_fphex): Compute correctly
	end of wexpbuf buffer.
2000-11-16 18:15:26 +00:00
Andreas Jaeger
0b87a270e2 Update.
* elf/chroot_canon.c: Include <stdint.h>.
2000-11-15 09:41:20 +00:00
Andreas Jaeger
a6c1c03a44 Update.
2000-11-15  Andreas Jaeger  <aj@suse.de>

	* elf/cache.c (struct cache_entry): Use uint64_t for hwcap.
	(print_entry): Likewise.
	(add_to_cache): Likewise.

	* elf/ldconfig.h (add_to_cache): Change prototype for hwcap change.

	* elf/ldconfig.c (struct lib_entry): Use uint64_t for hwcap.
	(path_hwcap): Likewise.
	(search_dir): Likewise.

	* sysdeps/generic/dl-cache.c (HWCAP_CHECK): Handle platform.

	* elf/cache.c (add_to_cache): Handle 64 bit hwcap entry.

	* sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h
	(_dl_platform_string): New. 
	(_DL_HWCAP_PLATFORM): New.
	(_dl_string_platform): New.
	* sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.

	* sysdeps/generic/dl-procinfo.h (_DL_HWCAP_COUNT): New.
	(_dl_string_platform): New.
	(_DL_HWCAP_PLATFORM): New.
	(_dl_platform_string): New.

	* sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Added x86 platform
	recognition.
	(_DL_HWCAP_COUNT): New.
	(_dl_string_platform): New.
	(_DL_HWCAP_PLATFORM): New.
	(_dl_platform_string): New.
2000-11-15 08:46:30 +00:00
Andreas Jaeger
ad1a5cc746 (struct cache_entry): Use uint64_t for hwcap. (print_entry): Likewise. (add_to_cache): Likewise. 2000-11-15 08:42:13 +00:00
Andreas Jaeger
7c545dbe46 (create_links): Fix alloca calculation. Patch by Ben Collins <bcollins@debian.org>. 2000-11-10 14:06:06 +00:00
Ulrich Drepper
8bc6161d50 Update.
* iconvdata/Makefile (distribute): Add viscii.c.

	* elf/Makefile (distribute): Add tst-pathopt.sh.
2000-11-03 01:24:42 +00:00
Ulrich Drepper
25b3dd49a7 Update.
* elf/Versions [ld] (GLIBC_2.2): Export _dl_clktck and _dl_pagesize.
	* elf/dl-load.c: Define _dl_clktck.
	* elf/elf.h: Define AT_CLKTCK.
	* include/time.h: Declare __getclktck.
	* misc/Makefile (routines): Add getclktck.
	* sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Handle AT_CLKTCK.
	(_dl_show_auxv): Show AT_CLKTCK value.
	* sysdeps/generic/getclktck.c: New file.
	* sysdeps/unix/sysv/linux/getclktck.c: New file.
	* sysdeps/unix/sysv/linux/alpha/getclktck.c: New file.
	* sysdeps/unix/sysv/linux/ia64/getclktck.c: New file.
	* sysdeps/posix/sysconf.c: Use __getclktck to handle _SC_CLK_TCK.
	* sysdeps/unix/sysv/linux/getpagesize.c: New file.
	* sysdeps/unix/sysv/linux/bits/time.h: Use __sysconf to for CLK_TCK.
	* sysdeps/unix/sysv/linux/alpha/bits/time.h: Likewise.
	* sysdeps/unix/sysv/linux/i386/bits/time.h: Likewise.
	* sysdeps/unix/sysv/linux/ia64/bits/time.h: Likewise.
	* sysdeps/unix/sysv/linux/s390/bits/time.h: Likewise.
2000-11-01 08:10:10 +00:00
Ulrich Drepper
f58580396d Update.
* elf/dl-load.c (open_path): Don't exit loop early if we didn't
	use a directory at all.
2000-10-30 03:21:39 +00:00
Ulrich Drepper
5a384a9143 Update.
* elf/Makefile: Add rules to build and run tst-pathopt.
	* elf/tst-pathopt.c: New file.
	* elf/tst-pathopt.sh: New file.
	* elf/pathoptobj.c: New file.
2000-10-30 00:13:29 +00:00
Ulrich Drepper
775106de7d Update.
2000-10-29  Ulrich Drepper  <drepper@redhat.com>

	* elf/elf.h (SHN_XINDEX): Define.
2000-10-29 17:30:30 +00:00
Ulrich Drepper
9987236eb1 Update.
2000-10-28  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-load.c (open_verify): Only try to load ET_DYN and ET_EXEC
	objects.  Reject all other types.
	(_dl_map_object_from_fd): Optimize a bit.
2000-10-28 09:16:32 +00:00
Ulrich Drepper
5ab7f7c12a Update.
* inet/getipnodebyad.c: Removed.
	* inet/getipnodebynm.c: Removed.
	* inet/tst-ipnode.c: Removed.
	* inet/freehostent.c: Removed.

	* sysdeps/unix/bsd/osf/=dirstream.h: Removed.

	* sysdeps/unix/sysv/linux/Dist: Add bits/initspin.h.

	* elf/Makefile (distribute): Add neededobj4.c.

	* iconvdata/Makefile (distribute): Add BIG5HKSCS.irreversible.

	* sysdeps/hppa/Dist: New file.
	* sysdeps/unix/sysv/linux/hppa/Dist: New file.
2000-10-27 06:51:12 +00:00
Andreas Jaeger
3509e9f246 (_dl_map_object_from_fd): Remove unused variable. (_dl_map_object): Likewise. 2000-10-25 14:11:27 +00:00
Ulrich Drepper
7e036a0134 Update.
2000-10-25  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-close.c (_dl_close): Optimize a bit by optimizing out the
	nsearchlist variable.
2000-10-25 07:06:03 +00:00
Ulrich Drepper
e30f2b9828 Update.
* elf/dl-lookup.c (add_dependency): Fix test to check whether
	dependency already exists.
	* elf/Makefile: Add testobj1 and testobj2 as dependencies of testobj6.
	* elf/loadtest.c (main): Add test at the end that everything is
	unloaded.

	* elf/dl-open.c (dl_open_worker): Fix typo in comment.
2000-10-25 04:00:08 +00:00
Ulrich Drepper
e950d61f64 Add even more IA-64 relocations. 2000-10-25 00:16:25 +00:00
Ulrich Drepper
4b4fcf99d1 Update.
* elf/dl-close.c (_dl_close): Handle relocation dependencies of
	the dependencies of the object currently unloaded.
2000-10-24 20:20:37 +00:00
Ulrich Drepper
e3e5f6725b Update.
* elf/dl-close.c (_dl_close): Don't free memory for global scope
	list immediately when empty.  Move code to...
	(free_mem): ...here.  Called as part of __libc_subfreeres list.
2000-10-24 19:31:51 +00:00
Ulrich Drepper
2e93b4a4cd Update.
* elf/dl-deps.c (_dl_map_object_deps): Put l_initfini array before
	r_list array in allocated memory.
	* elf/dl-close.c (_dl_close): Optimize access to l_initfini list
	and remove use of r_list.
2000-10-24 19:18:25 +00:00
Ulrich Drepper
8edd917253 Update.
2000-10-24  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-close.c (_dl_close): Use correct list (l_initfini) when
	computing new opencounts.
	* elf/Makefile: Add rules to build and run neededtest3.
	* neededtest3.c: New file.
	* neededobj4.c: New file.

	* elf/neededtest.c (main): Correct tests for failing dlopen.
2000-10-24 17:04:14 +00:00
Ulrich Drepper
ef044fc8bf Object for unload testing. 2000-10-24 16:59:10 +00:00
Ulrich Drepper
a51deec480 (main): Correct tests for failing dlopen. 2000-10-24 15:25:53 +00:00
Andreas Jaeger
7bbaa3b260 (add_dependency): Remove unused variable j. 2000-10-24 11:17:45 +00:00
Ulrich Drepper
42c4f32a44 Update.
2000-10-24  Ulrich Drepper  <drepper@redhat.com>

	Complete revamp of the reference counter handling.
	* include/link.h (struct link_map): Add l_idx field.
	* elf/dl-close.c: Handle decrementing of reference counters more
	correctly. If necessary decrement reference counters of dependencies
	of dependencies.
	* elf/dl-lookup.c (add_dependency): Only increment reference counter
	of the object itself and not also its dependencies.
	* elf/dl-open.c: Increment reference counters here.
	* elf/dl-deps.c: Remove reference counter handling here.
	* elf/dl-load.c: Likewise.
	* elf/rtld.c: Adjust for _dl_map_deps not handling reference counters.

	* elf/loadtest.c: Print loaded objects at the beginning.
2000-10-24 07:36:55 +00:00
Ulrich Drepper
a881e0a074 Update.
* include/link.h (struct link_map): New bit field l_faked.
	* elf/dl-deps.c: Use l_faked field in struct link_map instead of
	the magic l_opencount==0.
	* elf/dl-load.c: Likewise.
	* elf/dl-version.c: Likewise.
	* elf/rtld.c: Likewise.
2000-10-24 01:02:15 +00:00
Ulrich Drepper
c41c89d35d Update.
2000-10-23  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-close.c (_dl_close): Add a few more __builtin_expect.
2000-10-24 00:03:37 +00:00
Ulrich Drepper
9807e5408b Update.
* elf/unload.c: Generate more debugging output.

	* elf/neededtest.c: Make it more complicated.
	* elf/neededtest2.c: New file.
	* elf/Makefile: Add rules to build and run neededtest2.
2000-10-23 22:58:40 +00:00
Ulrich Drepper
f92338be6e Update.
* elf/dl-sym.c (_dl_sym): Use exact check for caller PC in range
	of DSO address space.
	(_dl_vsym): Likewise.
2000-10-23 21:40:57 +00:00
Ulrich Drepper
0d0db00c02 Update.
2000-10-23  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-sym.c (_dl_sym): For RTLD_DEFAULT, search in objects
	global scope if we can determine it.
2000-10-23 20:02:38 +00:00
Ulrich Drepper
949d553a58 Update.
2000-10-23  Ulrich Drepper  <drepper@redhat.com>

	* elf/elf.h (R_IA64_GPREL32MSB, R_IA64_GPREL32LSB): New definitions.
2000-10-23 18:51:39 +00:00
Ulrich Drepper
a35e137a99 Update.
* elf/dl-load.c (_dl_map_object_from_fd): Split out ELF file
	verification in open_verify.
	(open_verify): New function.  Called instead of open.  Ignores valid
	files for other architectures.
	(open_path): Call open_verify instead of open.
	(_dl_map_object): Likewise.
	Somewhat based on a patch by Don Dugger <n0ano@valinux.com>.

	* io/pwd.c (main): The output was missing a newline.
2000-10-21 17:08:18 +00:00
Ulrich Drepper
d785c36692 Update.
2000-10-21  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-open.c (add_to_global): New function.  Split out from
	dl_open_worker.
	(dl_open_worker): Call add_to_global not only for new objects, also for
	previously loaded objects when (mode & RTLD_GLOBAL) and the object
	was not yet in the global scope.
	* elf/Makefile: Add rules to build and run lateglobal.
	* elf/lateglobal.c: New file.
	* elf/ltglobmod1.c: New file.
	* elf/ltglobmod2.c: New file.
2000-10-21 07:16:18 +00:00