The NetBSD Project

CVS log for src/libexec/ld.aout_so/Attic/rtld.c

[BACK] Up to [cvs.NetBSD.org] / src / libexec / ld.aout_so

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.89, Tue Jul 6 05:59:53 2010 UTC (13 years, 8 months ago) by mrg
Branch: MAIN
CVS Tags: yamt-pagecache-tag8, yamt-pagecache-base9, yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, yamt-pagecache, tls-maxphys-base, tls-earlyentropy-base, tls-earlyentropy, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, pgoyette-localcount-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, pgoyette-localcount, pgoyette-compat-merge-20190127, pgoyette-compat-base, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, pgoyette-compat, perseant-stdc-iso10646-base, perseant-stdc-iso10646, localcount-20160914, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2, agc-symver-base, agc-symver, HEAD
Changes since 1.88: +1 -1 lines
FILE REMOVED

remove almost all the ability to build netbsd with an a.out target.
we're ELF now, and there are many missing checks against OBJECT_FMT.
if we ever consider switching, the we can figure out what new ones
we need but for now it's just clutter.

this doesn't remove any of the support for exec_aout or any actually
required-for-boot a.out support, only the ability to build a netbsd
release in a.out format.  ie, most of this code has been dead for
over a decade.

i've tested builds on vax, amd64, i386, mac68k, macppc, sparc, atari,
amiga, shark, cats, dreamcast, landisk, mmeye and x68k.  this covers
the 5 MACHINE_ARCH's affected, and all the other arch code touched.
it also includes some actual run-time testing of sparc, i386 and
shark, and i performed binary comparison upon amiga and x68k as well.


some minor details relevant:
- move shlib.[ch] from ld.aout_so into ldconfig proper, and cut them
  down to only the parts ldconfig needs
- remove various unused source files
- switch amiga bootblocks to using elf2bb.h instead of aout2bb.h

Revision 1.87.30.1 / (download) - annotate - [select for diffs], Sun May 18 12:30:44 2008 UTC (15 years, 10 months ago) by yamt
Branch: yamt-pf42
Changes since 1.87: +1 -8 lines
Diff to previous 1.87 (colored) next main 1.88 (colored)

sync with head.

Revision 1.88 / (download) - annotate - [select for diffs], Mon Apr 28 20:23:03 2008 UTC (15 years, 11 months ago) by martin
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, matt-premerge-20091211, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, jym-xensuspend-nbase, jym-xensuspend-base, jym-xensuspend, hpcarm-cleanup-nbase
Changes since 1.87: +1 -8 lines
Diff to previous 1.87 (colored)

Remove clause 3 and 4 from TNF licenses

Revision 1.87 / (download) - annotate - [select for diffs], Thu Jan 16 08:45:56 2003 UTC (21 years, 2 months ago) by itohy
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base, wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, netbsd-3-base, netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0, netbsd-3, netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2, matt-mips64-base, matt-mips64, matt-armv6-prevmlocking, matt-armv6-nbase, matt-armv6-base, matt-armv6, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-base, hpcarm-cleanup, cube-autoconf-base, cube-autoconf, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: yamt-pf42
Changes since 1.86: +2 -4 lines
Diff to previous 1.86 (colored)

Fix problem where dlclose() falls into infinite loop.

Revision 1.86 / (download) - annotate - [select for diffs], Tue Dec 10 17:14:34 2002 UTC (21 years, 3 months ago) by thorpej
Branch: MAIN
CVS Tags: fvdl_fs64_base
Changes since 1.85: +2 -2 lines
Diff to previous 1.85 (colored)

Rename __LDPGSZ to AOUT_LDPGSZ, to accurately reflect what it is.

Revision 1.85 / (download) - annotate - [select for diffs], Thu Aug 8 13:24:14 2002 UTC (21 years, 7 months ago) by soren
Branch: MAIN
Changes since 1.84: +2 -2 lines
Diff to previous 1.84 (colored)

Remove extraneous \n's in {err,warn}{,x} that used to be printfs.

Revision 1.84 / (download) - annotate - [select for diffs], Sat Jul 20 08:36:24 2002 UTC (21 years, 8 months ago) by grant
Branch: MAIN
Changes since 1.83: +5 -5 lines
Diff to previous 1.83 (colored)

sweep of errx/warnx, remove unnecessary trailing \n

Revision 1.83 / (download) - annotate - [select for diffs], Sun May 26 00:02:07 2002 UTC (21 years, 10 months ago) by wiz
Branch: MAIN
Changes since 1.82: +3 -16 lines
Diff to previous 1.82 (colored)

__STDC__ is always defined on NetBSD.

Revision 1.82 / (download) - annotate - [select for diffs], Thu Sep 20 20:55:29 2001 UTC (22 years, 6 months ago) by wiz
Branch: MAIN
CVS Tags: netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001, netbsd-1-6
Changes since 1.81: +2 -2 lines
Diff to previous 1.81 (colored)

Use vsnprintf instead of vsprintf.
[XXX: not compiled, since I'm on ELF -- .uue should probably be rebuilt]

Revision 1.81 / (download) - annotate - [select for diffs], Thu Jun 21 21:19:25 2001 UTC (22 years, 9 months ago) by christos
Branch: MAIN
Changes since 1.80: +41 -2 lines
Diff to previous 1.80 (colored)

make sure we remove all the global references refering to a shared object
when we remove it. Similar to the fix I applied a while ago to ld.elf_so

Revision 1.76.4.2 / (download) - annotate - [select for diffs], Fri Apr 6 09:39:43 2001 UTC (22 years, 11 months ago) by he
Branch: netbsd-1-5
CVS Tags: netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001
Changes since 1.76.4.1: +15 -2 lines
Diff to previous 1.76.4.1 (colored) to branchpoint 1.76 (colored) next main 1.77 (colored)

Pull up revisions 1.78-1.80 (requested by itohy):
  Several changes to consolidate with main trunk:
   o Deal correctly with common symbols in shared libraries.
     Fixes PR#10940.
   o Deal correctly with an empty hints file.
   o A few minor fixes.

Revision 1.73.2.3 / (download) - annotate - [select for diffs], Sun Apr 1 15:48:57 2001 UTC (23 years ago) by he
Branch: netbsd-1-4
Changes since 1.73.2.2: +18 -8 lines
Diff to previous 1.73.2.2 (colored) to branchpoint 1.73 (colored) next main 1.74 (colored)

Pull up revisions 1.75,1.78-1.80 (requested by itohy)
  Several changes to consolidate with main trunk:
   o Use MAP_PRIVATE instead of MAP_COPY.
   o Deal correctly with an empty hints file.
   o Deal correctly with common symbols in shared libraries.
     Fixes PR#10940.

Revision 1.80 / (download) - annotate - [select for diffs], Mon Mar 19 03:54:22 2001 UTC (23 years ago) by itohy
Branch: MAIN
Changes since 1.79: +8 -2 lines
Diff to previous 1.79 (colored)

Common symbol is not a member of particular shlib have particular shlib,
so avoid adding the base address of a shlib to the common symbol.
Fix PR #10940, hopefully.

Revision 1.79 / (download) - annotate - [select for diffs], Sun Dec 17 21:41:15 2000 UTC (23 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.78: +4 -1 lines
Diff to previous 1.78 (colored)

Deal with an empty hints file.

Revision 1.78 / (download) - annotate - [select for diffs], Tue Nov 28 06:01:46 2000 UTC (23 years, 4 months ago) by mycroft
Branch: MAIN
Changes since 1.77: +5 -1 lines
Diff to previous 1.77 (colored)

Add another debugging message.

Revision 1.73.2.2 / (download) - annotate - [select for diffs], Tue Oct 31 12:31:25 2000 UTC (23 years, 5 months ago) by he
Branch: netbsd-1-4
CVS Tags: netbsd-1-4-PATCH003
Changes since 1.73.2.1: +3 -4 lines
Diff to previous 1.73.2.1 (colored) to branchpoint 1.73 (colored)

Pull up revision 1.77 (requested by tv and mycroft):
  In dlopen(), use the main program's library search path, to match
  semantics of other systems (and our ELF).

Revision 1.76.4.1 / (download) - annotate - [select for diffs], Mon Oct 30 23:01:17 2000 UTC (23 years, 5 months ago) by tv
Branch: netbsd-1-5
CVS Tags: netbsd-1-5-RELEASE, netbsd-1-5-BETA2
Changes since 1.76: +3 -4 lines
Diff to previous 1.76 (colored)

Pullup 1.77 [mycroft]:
In dlopen(), use the main program's library search path, to match semantics of
other systems (and our ELF).

Revision 1.77 / (download) - annotate - [select for diffs], Sun Oct 29 13:11:38 2000 UTC (23 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.76: +3 -4 lines
Diff to previous 1.76 (colored)

In dlopen(), use the main program's library search path, to match semantics of
other systems (and our ELF).

Revision 1.76 / (download) - annotate - [select for diffs], Fri Feb 11 00:07:36 2000 UTC (24 years, 1 month ago) by thorpej
Branch: MAIN
CVS Tags: netbsd-1-5-base, netbsd-1-5-BETA, netbsd-1-5-ALPHA2, minoura-xpg4dl-base, minoura-xpg4dl
Branch point for: netbsd-1-5
Changes since 1.75: +3 -3 lines
Diff to previous 1.75 (colored)

Const poison dladdr().

Revision 1.75 / (download) - annotate - [select for diffs], Thu Jun 17 21:11:42 1999 UTC (24 years, 9 months ago) by thorpej
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221, wrstuden-devbsize, comdex-fall-1999-base, comdex-fall-1999
Changes since 1.74: +4 -7 lines
Diff to previous 1.74 (colored)

MAP_COPY -> MAP_PRIVATE

Revision 1.73.2.1 / (download) - annotate - [select for diffs], Fri Apr 23 21:39:05 1999 UTC (24 years, 11 months ago) by perry
Branch: netbsd-1-4
CVS Tags: netbsd-1-4-RELEASE, netbsd-1-4-PATCH002, netbsd-1-4-PATCH001
Changes since 1.73: +2 -2 lines
Diff to previous 1.73 (colored)

pullup 1.73->1.74 (tv)

Revision 1.74 / (download) - annotate - [select for diffs], Fri Apr 23 19:29:30 1999 UTC (24 years, 11 months ago) by tv
Branch: MAIN
Changes since 1.73: +2 -2 lines
Diff to previous 1.73 (colored)

Allow rpaths in setuid binaries, noticed by tron.  This is already done
for ELF systems; make it uniform for a.out.

Revision 1.73 / (download) - annotate - [select for diffs], Sat Feb 27 03:34:05 1999 UTC (25 years, 1 month ago) by tv
Branch: MAIN
CVS Tags: netbsd-1-4-base
Branch point for: netbsd-1-4
Changes since 1.72: +9 -1 lines
Diff to previous 1.72 (colored)

Add ld.so hacks for arm32, and reenable ld.aout_so on arm32.  As is well
known, XXX this needs a real fix.

Revision 1.72 / (download) - annotate - [select for diffs], Thu Jan 28 23:58:49 1999 UTC (25 years, 2 months ago) by fvdl
Branch: MAIN
Changes since 1.71: +8 -7 lines
Diff to previous 1.71 (colored)

Move the ldentry initialization up so that dl*() from init sections
works.

Revision 1.71 / (download) - annotate - [select for diffs], Thu Dec 17 11:34:10 1998 UTC (25 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.70: +2 -3 lines
Diff to previous 1.70 (colored)

* Add header file containing definitions shared among all a.out
  linker related utilities.
* Adjust makefile to new location in `src/libexec'
* Have rtld.c use the new shlib.h and ld.h headers.

Revision 1.70 / (download) - annotate - [select for diffs], Tue Dec 15 21:35:17 1998 UTC (25 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.69: +27 -13 lines
Diff to previous 1.69 (colored)

Deal with compiler warnings: format strings, prototypes, variable initialization.

Revision 1.69 / (download) - annotate - [select for diffs], Fri Oct 23 00:44:44 1998 UTC (25 years, 5 months ago) by matt
Branch: MAIN
Changes since 1.68: +2 -2 lines
Diff to previous 1.68 (colored)

Make the BINDER debug messages a bit more useful (print index and jmpslot
address too).

Revision 1.68 / (download) - annotate - [select for diffs], Mon Oct 19 03:09:34 1998 UTC (25 years, 5 months ago) by matt
Branch: MAIN
Changes since 1.67: +3 -3 lines
Diff to previous 1.67 (colored)

Back out change to md_make_gotreloc which added 4 arguement of got_t *.
Add argument to md_fix_jmpslot indicating whether this the first (i.e
tranfer) jmpslot or not.  Add better support for VAX (the VAX can support
pure text code; let ld that advantage of it).  Checking in verified and
working versions of rtld VAX support routines.

Revision 1.67 / (download) - annotate - [select for diffs], Sat Sep 12 15:03:19 1998 UTC (25 years, 6 months ago) by pk
Branch: MAIN
Changes since 1.66: +8 -5 lines
Diff to previous 1.66 (colored)

Exit early from alloc_link_map() if we have no object; only relevant
when tracing. (PR#6140)

Revision 1.66 / (download) - annotate - [select for diffs], Sat Sep 5 13:08:41 1998 UTC (25 years, 6 months ago) by pk
Branch: MAIN
Changes since 1.65: +22 -16 lines
Diff to previous 1.65 (colored)

Assign my copyrights to TNF.

Revision 1.65 / (download) - annotate - [select for diffs], Thu Aug 13 07:34:06 1998 UTC (25 years, 7 months ago) by mycroft
Branch: MAIN
Changes since 1.64: +3 -3 lines
Diff to previous 1.64 (colored)

Small changes to make debugging a little easier.

Revision 1.64 / (download) - annotate - [select for diffs], Thu Aug 6 00:03:28 1998 UTC (25 years, 7 months ago) by mycroft
Branch: MAIN
Changes since 1.63: +9 -2 lines
Diff to previous 1.63 (colored)

When DEBUG, log init and fini calls.

Revision 1.62.2.2 / (download) - annotate - [select for diffs], Tue Jul 14 22:21:26 1998 UTC (25 years, 8 months ago) by tv
Changes since 1.62.2.1: +2 -2 lines
Diff to previous 1.62.2.1 (colored) next main 1.63 (colored)

Merge changes from trunk.

Revision 1.63 / (download) - annotate - [select for diffs], Tue Jul 14 22:18:36 1998 UTC (25 years, 8 months ago) by tv
Branch: MAIN
Changes since 1.62: +2 -2 lines
Diff to previous 1.62 (colored)

Change ld.so default behavior to RTLD_LOCAL, and make RTLD_LOCAL into a
new flag bit.  Keep RTLD_GLOBAL as an actual flag bit so it won't be
re-used, or may be used for something later.  Mask the dlopen() mode bits
in ld.elf_so so a comparison against RTLD_NOW works.  (RTLD_{LOCAL,GLOBAL}
needs to be implemented for ld.elf_so.)

Revision 1.62.2.1 / (download) - annotate - [select for diffs], Wed Jun 10 22:20:30 1998 UTC (25 years, 9 months ago) by tv
Changes since 1.62: +15 -1 lines
Diff to previous 1.62 (colored)

Get the arm32 changes under source control, only on a branch until they are
fixed to work properly.

Revision 1.62 / (download) - annotate - [select for diffs], Sat May 30 18:28:31 1998 UTC (25 years, 10 months ago) by kleink
Branch: MAIN
Changes since 1.61: +2 -1 lines
Diff to previous 1.61 (colored)

Clear the error indicator after retrieval (xref. dlerror(3)).

Revision 1.61 / (download) - annotate - [select for diffs], Tue May 19 12:15:38 1998 UTC (25 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.60: +36 -27 lines
Diff to previous 1.60 (colored)

Optimize symbol/string table access slightly by precomputing their
locations at load time. These values don't change once the object is loaded.

Revision 1.60 / (download) - annotate - [select for diffs], Tue May 12 21:22:28 1998 UTC (25 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.59: +127 -7 lines
Diff to previous 1.59 (colored)

Implement `dladdr()': find nearest symbol given an address.

Revision 1.59 / (download) - annotate - [select for diffs], Thu Mar 26 23:33:12 1998 UTC (26 years ago) by mycroft
Branch: MAIN
Changes since 1.58: +11 -9 lines
Diff to previous 1.58 (colored)

Allow a non-RTLD_GLOBAL object to refer to symbols in itself.

Revision 1.58 / (download) - annotate - [select for diffs], Wed Mar 18 23:21:46 1998 UTC (26 years ago) by pk
Branch: MAIN
Changes since 1.57: +21 -36 lines
Diff to previous 1.57 (colored)

Use file size from fstat(2) to map the hints file, instead of fiddling
with incremental mmap()'s.  Squashes a bug which caused only the first
page of the hints file to unmapped.

Revision 1.57 / (download) - annotate - [select for diffs], Sun Mar 15 23:10:21 1998 UTC (26 years ago) by pk
Branch: MAIN
Changes since 1.56: +33 -15 lines
Diff to previous 1.56 (colored)

Implement RTLD_GLOBAL dlopen(3) flag.
Rename internal flags to avoid <dlfcn.h> name space collisions.

Revision 1.56 / (download) - annotate - [select for diffs], Sun Mar 15 21:24:27 1998 UTC (26 years ago) by pk
Branch: MAIN
Changes since 1.55: +8 -1 lines
Diff to previous 1.55 (colored)

Check for short hints file (noticed by Chuck Silvers).

Revision 1.55 / (download) - annotate - [select for diffs], Tue Mar 3 00:36:24 1998 UTC (26 years, 1 month ago) by mycroft
Branch: MAIN
Changes since 1.54: +2 -2 lines
Diff to previous 1.54 (colored)

Remove spurious extra newline.

Revision 1.54 / (download) - annotate - [select for diffs], Fri Feb 20 09:27:19 1998 UTC (26 years, 1 month ago) by mycroft
Branch: MAIN
Changes since 1.53: +4 -4 lines
Diff to previous 1.53 (colored)

Fill in missing (default) mmap(2) flags.

Revision 1.53 / (download) - annotate - [select for diffs], Tue Feb 17 23:07:33 1998 UTC (26 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.52: +9 -2 lines
Diff to previous 1.52 (colored)

Print a warning message if we detect that a "copy symbol" has changed
size in a shared library.  Also, always use our expected size to copy
the item in, on the assumption that doing so generally minimizes the
damage (maybe it's better to just bail out?).

Revision 1.52 / (download) - annotate - [select for diffs], Mon Jan 5 22:01:04 1998 UTC (26 years, 2 months ago) by cgd
Branch: MAIN
Changes since 1.51: +2 -2 lines
Diff to previous 1.51 (colored)

RCS Id police

Revision 1.51 / (download) - annotate - [select for diffs], Mon Jun 30 22:10:06 1997 UTC (26 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.50: +24 -12 lines
Diff to previous 1.50 (colored)

Do not free dlopen'ed map structures twice.
Plug memory leak when opening the same object mor than once.

Revision 1.50 / (download) - annotate - [select for diffs], Mon Jun 30 20:49:40 1997 UTC (26 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.49: +2 -2 lines
Diff to previous 1.49 (colored)

Fix typo in free_link_map(); noticed by Mike Grupenhoff.

Revision 1.49 / (download) - annotate - [select for diffs], Thu Jun 26 20:52:06 1997 UTC (26 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.48: +68 -9 lines
Diff to previous 1.48 (colored)

Patch from Chris Demetriou to unmap an object on last dlclose(), which
had not be implemented. It would cause an "adress space leak" and, if
the same object would opened multiple time, unwanted relocations.
Re: Comment from Chris:

"The a.out ld.so has some problems with dlclose.  It doesn't properly
unmap objects which are dlclosed.  That's a known problem (though a
serious one for programs which dlopen then dlclose lots of objects,
because it causes address space exhaustion), but it has a
previously-unknown side-effect.

If a single object is dlopened, then dlclosed, then dlopened _again_,
the relocations will be processed again.  That causes obvious
problems."

Revision 1.48 / (download) - annotate - [select for diffs], Sat May 3 08:00:02 1997 UTC (26 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.47: +18 -7 lines
Diff to previous 1.47 (colored)

Keep track of `dlsym()' symbol lookup scope differently. There's (currently)
only one special case: a NULL argument to dlopen(); return a special
token for that case.

Revision 1.47 / (download) - annotate - [select for diffs], Fri Jan 3 22:39:05 1997 UTC (27 years, 3 months ago) by scottr
Branch: MAIN
Changes since 1.46: +14 -14 lines
Diff to previous 1.46 (colored)

Catch up with const changes to dlopen() and dlsym() prototypes in
<dlfcn.h>.  Tested on i386 and hp300 for crt0.o and ld.so, verified
other references by inspection.

Revision 1.46 / (download) - annotate - [select for diffs], Sat Dec 21 21:53:16 1996 UTC (27 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.45: +15 -4 lines
Diff to previous 1.45 (colored)

Deal with weak symbols when looking up in shared libraries.

Revision 1.45 / (download) - annotate - [select for diffs], Sun Oct 6 19:03:32 1996 UTC (27 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.44: +5 -4 lines
Diff to previous 1.44 (colored)

Actually set the RTLD_DL flag in dlopen'ed shared objects, per PR#2791.

Revision 1.44 / (download) - annotate - [select for diffs], Tue Sep 10 22:17:51 1996 UTC (27 years, 6 months ago) by thorpej
Branch: MAIN
Changes since 1.43: +50 -4 lines
Diff to previous 1.43 (colored)

Iff __m68k__, use a `slight hack' to determine the magic of the executable
we're doing a dynamic link for, and change the page size used for offset
and size calculations if necessary.  Allows the same ld.so to be used with
mixed m68k4k and m68k8k executables and libraries.

Thanks a million to Gordon Ross for the help in making this work!

Revision 1.40.2.1 / (download) - annotate - [select for diffs], Fri Feb 16 23:07:27 1996 UTC (28 years, 1 month ago) by pk
Changes since 1.40: +101 -20 lines
Diff to previous 1.40 (colored) next main 1.41 (colored)

Pick up fixes from -current for patch2.

Revision 1.43 / (download) - annotate - [select for diffs], Sun Jan 14 00:35:17 1996 UTC (28 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.42: +7 -2 lines
Diff to previous 1.42 (colored)

Relax checking of minor version number in `findhint()'. Also use the
directories from the hints (v.2) file for directory traversing.
This should take care of PR#1146.

Revision 1.42 / (download) - annotate - [select for diffs], Tue Jan 9 00:02:28 1996 UTC (28 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.41: +5 -3 lines
Diff to previous 1.41 (colored)

Deal with v.2 hint files (hint srch dirs not yet used).

Revision 1.41 / (download) - annotate - [select for diffs], Thu Dec 28 17:57:32 1995 UTC (28 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.40: +91 -17 lines
Diff to previous 1.40 (colored)

Make dlopen() search for libraries if given a name of the form
`lib<name>.so[.xx[.yy]]' (per Erik M. Theisen; PR#1763; patch from PR
used in simplified form).

Revision 1.40 / (download) - annotate - [select for diffs], Mon Oct 9 09:24:59 1995 UTC (28 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.39: +2 -2 lines
Diff to previous 1.39 (colored)

Fix typo.

Revision 1.39 / (download) - annotate - [select for diffs], Mon Oct 9 00:11:26 1995 UTC (28 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.38: +1 -1 lines
Diff to previous 1.38 (colored)

New style RCS IDs.

Revision 1.38 / (download) - annotate - [select for diffs], Sun Oct 8 23:43:30 1995 UTC (28 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.37: +204 -130 lines
Diff to previous 1.37 (colored)

Allow customized trace output, so ldd(1) can be more conveniently used
as a filter.

Rearrange cascading stuff: remove two-level limit.

Revision 1.37 / (download) - annotate - [select for diffs], Sat Sep 23 22:46:24 1995 UTC (28 years, 6 months ago) by pk
Branch: MAIN
Changes since 1.36: +46 -24 lines
Diff to previous 1.36 (colored)

Interface version 4:
	implement dlexit() (per Doug Rabson)
	get actual rtld path from crt0
	pass ld_entry back to crt0 in a better place

Revision 1.36 / (download) - annotate - [select for diffs], Thu Aug 31 22:07:25 1995 UTC (28 years, 7 months ago) by pk
Branch: MAIN
Changes since 1.35: +8 -8 lines
Diff to previous 1.35 (colored)

Check for zero sized BSS to avoid a big no-op syscall (per Mike Hibler).

Revision 1.35 / (download) - annotate - [select for diffs], Tue Jun 20 23:07:03 1995 UTC (28 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.34: +18 -11 lines
Diff to previous 1.34 (colored)

Initialise after malloc (fixes PR#1149).
Also, correct comparison when looking in `prefered' paths.

Revision 1.34 / (download) - annotate - [select for diffs], Mon Jun 5 00:08:38 1995 UTC (28 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.33: +14 -12 lines
Diff to previous 1.33 (colored)

#include <dlfcn.h>

Revision 1.33 / (download) - annotate - [select for diffs], Sun Jun 4 23:21:35 1995 UTC (28 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.32: +8 -4 lines
Diff to previous 1.32 (colored)

Cache two more environment variable values.

Revision 1.32 / (download) - annotate - [select for diffs], Sun Jun 4 21:56:33 1995 UTC (28 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.31: +46 -14 lines
Diff to previous 1.31 (colored)

Implement compiled-in library search paths: any `-L' argument encountered
while `dynamic link-mode' is on, is recorded in the executable. The
run-time linker will search these paths after $LD_LIBRARY_PATH but
before the default set and those currently in the hints file.
The feature is disabled whenever for set[ug]id programs.

Revision 1.31 / (download) - annotate - [select for diffs], Sat Apr 1 20:56:55 1995 UTC (29 years ago) by pk
Branch: MAIN
Changes since 1.30: +27 -40 lines
Diff to previous 1.30 (colored)

Fix bogosities in cascade stuff.

Revision 1.30 / (download) - annotate - [select for diffs], Mon Mar 6 22:59:10 1995 UTC (29 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.29: +1 -3 lines
Diff to previous 1.29 (colored)

Burn LD_RUN_PATH; I didn't read the SVR5 man-pages carefully enough.

Revision 1.29 / (download) - annotate - [select for diffs], Mon Mar 6 20:51:24 1995 UTC (29 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.28: +65 -3 lines
Diff to previous 1.28 (colored)

Code from Matthew Green to do DL cascading "in the first degree".
Two `fprintf(stderr, ..)' => `warnx(..)'.

Revision 1.28 / (download) - annotate - [select for diffs], Mon Dec 19 12:21:21 1994 UTC (29 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.27: +9 -9 lines
Diff to previous 1.27 (colored)

Bummer! Undo mmap() changes in rev. 1.26; they royally screw up the
kernel's pmap address preference mechanism.

Revision 1.27 / (download) - annotate - [select for diffs], Sun Dec 18 16:05:49 1994 UTC (29 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.26: +20 -18 lines
Diff to previous 1.26 (colored)

Handle "/dev/zero" stuff more globally.

Revision 1.26 / (download) - annotate - [select for diffs], Sun Dec 18 15:38:55 1994 UTC (29 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.25: +25 -28 lines
Diff to previous 1.25 (colored)

Re-arrange mmap() calls, per Charles' suggestion.

Revision 1.25 / (download) - annotate - [select for diffs], Wed Dec 7 20:30:53 1994 UTC (29 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.24: +3 -3 lines
Diff to previous 1.24 (colored)

Ensure contiguous chunks for all of an object's address space (text+data+bss).

Revision 1.24 / (download) - annotate - [select for diffs], Wed Oct 26 20:21:42 1994 UTC (29 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.23: +32 -13 lines
Diff to previous 1.23 (colored)

Don't close the hints file while it's mapped, but unmap and close it after
loading.

Revision 1.21.2.2 / (download) - annotate - [select for diffs], Fri Aug 12 08:46:02 1994 UTC (29 years, 7 months ago) by mycroft
Changes since 1.21.2.1: +3 -2 lines
Diff to previous 1.21.2.1 (colored) next main 1.22 (colored)

update from trunk

Revision 1.23 / (download) - annotate - [select for diffs], Fri Aug 12 08:11:16 1994 UTC (29 years, 7 months ago) by pk
Branch: MAIN
Changes since 1.22: +3 -2 lines
Diff to previous 1.22 (colored)

Re-add `LD_WARN_NON_PURE_CODE' that went missing.

Revision 1.21.2.1 / (download) - annotate - [select for diffs], Mon Aug 8 08:04:24 1994 UTC (29 years, 7 months ago) by mycroft
Changes since 1.21: +28 -20 lines
Diff to previous 1.21 (colored)

update from trunk

Revision 1.22 / (download) - annotate - [select for diffs], Sun Aug 7 10:34:40 1994 UTC (29 years, 7 months ago) by pk
Branch: MAIN
Changes since 1.21: +28 -20 lines
Diff to previous 1.21 (colored)

Relax minor version number checking somewhat; issue warning if minor
version is less than expected.

Revision 1.21 / (download) - annotate - [select for diffs], Fri Jun 24 13:31:34 1994 UTC (29 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.20: +2 -2 lines
Diff to previous 1.20 (colored)

strdup() doesn't grok NULL pointers

Revision 1.20 / (download) - annotate - [select for diffs], Fri Jun 10 15:17:26 1994 UTC (29 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.19: +43 -34 lines
Diff to previous 1.19 (colored)

Conversion to err()/warn() for error reports.

Revision 1.19 / (download) - annotate - [select for diffs], Wed May 25 10:14:37 1994 UTC (29 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.18: +2 -2 lines
Diff to previous 1.18 (colored)

Another move to .data to please gdb.

Revision 1.18 / (download) - annotate - [select for diffs], Tue May 24 10:44:06 1994 UTC (29 years, 10 months ago) by pk
Branch: MAIN
Changes since 1.17: +27 -15 lines
Diff to previous 1.17 (colored)

Force some string constants into the data segment (for core-dump reading).
Rename internal dl_*() functions.
Do run-time symbol alias processing.

Revision 1.17 / (download) - annotate - [select for diffs], Thu Apr 7 19:46:30 1994 UTC (29 years, 11 months ago) by pk
Branch: MAIN
Changes since 1.16: +3 -2 lines
Diff to previous 1.16 (colored)

dlopen() should make a copy of argument (Thomas Eberhardt).

Revision 1.16 / (download) - annotate - [select for diffs], Mon Mar 28 02:11:53 1994 UTC (30 years ago) by cgd
Branch: MAIN
Changes since 1.15: +5 -6 lines
Diff to previous 1.15 (colored)

no more MAP_FILE

Revision 1.15 / (download) - annotate - [select for diffs], Tue Feb 15 22:51:23 1994 UTC (30 years, 1 month ago) by pk
Branch: MAIN
Changes since 1.14: +8 -4 lines
Diff to previous 1.14 (colored)

Libraries which are in the hints file but not in one's LD_LIBRARY_PATH (if
set) were not found.

Revision 1.14 / (download) - annotate - [select for diffs], Sat Jan 29 02:03:39 1994 UTC (30 years, 2 months ago) by jtc
Branch: MAIN
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

Fix spelling error in Copyright notice

Revision 1.13 / (download) - annotate - [select for diffs], Fri Jan 28 21:01:25 1994 UTC (30 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.12: +607 -401 lines
Diff to previous 1.12 (colored)

Use somewhat customized version of malloc, in stead of relying on  a
crummy sbrk() backend; proper aligment must be guaranteed on all archs.
Drafting dlopen, dlsym, et.al.

Revision 1.12 / (download) - annotate - [select for diffs], Wed Jan 12 19:19:09 1994 UTC (30 years, 2 months ago) by pk
Branch: MAIN
Changes since 1.11: +2 -1 lines
Diff to previous 1.11 (colored)

Fill in gdb hook.

Revision 1.11 / (download) - annotate - [select for diffs], Mon Dec 20 22:45:01 1993 UTC (30 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.10: +34 -11 lines
Diff to previous 1.10 (colored)

Hooks for for shared C++ objects with static contructors/destructors.

Revision 1.10 / (download) - annotate - [select for diffs], Wed Dec 8 10:28:10 1993 UTC (30 years, 3 months ago) by pk
Branch: MAIN
Changes since 1.9: +7 -74 lines
Diff to previous 1.9 (colored)

Parcelled out the heap allocator into separate file.
Changes prototype for findshlib() (corrected library search order for ld).

Revision 1.9 / (download) - annotate - [select for diffs], Wed Nov 10 21:37:39 1993 UTC (30 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.8: +85 -39 lines
Diff to previous 1.8 (colored)

Do the debugger hooks.
Revised algorithm for finding symbols using `nz_other' (auxialiary type info).

Revision 1.8 / (download) - annotate - [select for diffs], Mon Nov 8 13:20:40 1993 UTC (30 years, 4 months ago) by pk
Branch: MAIN
Changes since 1.7: +4 -3 lines
Diff to previous 1.7 (colored)

Use strsep() in stead of strtok() and restore colons in eg. env. vars.

Revision 1.7 / (download) - annotate - [select for diffs], Wed Nov 3 21:35:54 1993 UTC (30 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.6: +2 -2 lines
Diff to previous 1.6 (colored)

Print symbol name in "undefined" error msg.

Revision 1.6 / (download) - annotate - [select for diffs], Wed Nov 3 04:58:57 1993 UTC (30 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.5: +3 -1 lines
Diff to previous 1.5 (colored)

This warning is fucking annoying, and ld already told us about it when we
linked the executable.  Make it #ifdef DEBUG.

Revision 1.5 / (download) - annotate - [select for diffs], Tue Oct 26 19:30:13 1993 UTC (30 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.4: +38 -11 lines
Diff to previous 1.4 (colored)

Search for top-of-stack blew up if program had no environment strings.

Revision 1.4 / (download) - annotate - [select for diffs], Fri Oct 22 21:18:58 1993 UTC (30 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.3: +221 -35 lines
Diff to previous 1.3 (colored)

Support for `ld.so.hints'.
Handle set[ug]id programs.
No longer use the `lm_lob' field to access parent objects, add private
link map `parent' field in stead (SUN_COMPAT weirdness).

Revision 1.3 / (download) - annotate - [select for diffs], Thu Oct 21 00:00:09 1993 UTC (30 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.2: +15 -8 lines
Diff to previous 1.2 (colored)

Renamed confusingly named macro.
Fixed bug that was the result of said confusion.

Revision 1.2 / (download) - annotate - [select for diffs], Sun Oct 17 15:40:11 1993 UTC (30 years, 5 months ago) by pk
Branch: MAIN
Changes since 1.1: +3 -2 lines
Diff to previous 1.1 (colored)

Define our copy of `errno', as it is no longer defined in libc.

Revision 1.1 / (download) - annotate - [select for diffs], Sat Oct 16 21:54:10 1993 UTC (30 years, 5 months ago) by pk
Branch: MAIN

A linker supporting shared libraries (run-time part).

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>