mycroft
7ff3aa31e8
Reorganize PowerPC cold a little. The return value from _rtld_bind_pltgot()
...
was ambiguous in the case of a weak symbol that was not defined. This caused
RTLD_NOW to fail badly with shared libraries linked against the new crtbegin.o.
2001-09-10 06:09:41 +00:00
eeh
192ea0d41e
Correct some comments.
2001-08-14 22:17:48 +00:00
eeh
c9550f39ed
Workaround for binutils 2.11 behavior.
2001-08-14 20:17:25 +00:00
eeh
2e3cc27a62
Get rid of some debug code that should no longer be needed.
2001-08-14 20:16:38 +00:00
eeh
f4edff94e1
Pointers are NULL. Characters are '\0'.
2001-08-14 20:13:56 +00:00
matt
ee534ba09d
Fix ABS32 ARM reloc case. ELF shared libs on ARM now work!
2001-07-16 05:40:53 +00:00
matt
85d99cf46c
Fix binder routine to not use a volatile register.
2001-07-15 23:19:59 +00:00
matt
2285430c7e
Bugfix for _rtld_start. Enable common plt processing code for arm
2001-07-15 17:31:02 +00:00
matt
1c2ce68f11
Enable arm if OBJECT_FMT is ELF. Initialize first few GOT entries for ARM.
2001-07-15 03:09:22 +00:00
matt
a61a40997d
Initial support for dynamic ELF support on ARM.
2001-07-15 03:08:33 +00:00
matt
00f7d1ea67
Add support for ARM ELF dynamic relocs.
2001-07-15 01:44:10 +00:00
fvdl
b13cc91d31
Get stack layout right.
2001-06-20 17:58:16 +00:00
fvdl
e55b167011
Remove mistaken casts of PLT relocations to 32 bit values.
2001-06-20 17:58:05 +00:00
fvdl
315360cfd2
Adapt for an actually correct sys/exec_elf.h
2001-06-19 12:07:50 +00:00
fvdl
a904f36474
Don't use multi-line string literals.
2001-06-19 12:07:21 +00:00
fvdl
d1d73371a6
Preliminary x86-64 support. Not fully functional yet (toolchain bugs).
2001-06-19 01:11:03 +00:00
nathanw
ed485c7ad5
Correct spelling in a comment.
2001-05-28 06:10:20 +00:00
christos
7ddeec7d69
s/warn/xwarnx/ cuts down size by 50% by not pulling in stdio.
2001-05-27 23:26:47 +00:00
christos
21d58e7713
Provide compatibility for the NetBSD-1.5 branch. Note that I used
...
__NetBSD_Version__ instead of checking if the macro was not already
defined.
2001-05-24 17:42:48 +00:00
christos
cb12da02ff
Don't include <uvm/uvm_param.h>. It does not appear to be needed by anything.
...
<uvm/uvm_param.h> does not exist under 1.5. Tested on i386 and sparc.
Anyway, if it is indeed needed by other platforms then we'll put it back,
but I don't see how since it does not define any types.
2001-05-24 17:41:42 +00:00
christos
f8ad0818e5
Unloading objects, can cause other objects whose reference count becomes
...
0 to be unloaded. Make sure that when we unload those objects we remove
any references to them from the globals list... This fixes SIGSEGV with
apache+mod_php+mysql.
XXX: This fix should be pulled up.
christos
2001-05-10 20:19:25 +00:00
kleink
63ccd3db5b
Sync with <sys/exec_elf.h> rev. 1.45: ElfNN_RelA -> ElfNN_Rela.
2001-04-25 12:24:50 +00:00
christos
fc18ea2931
avoid nested extern
2001-02-04 22:11:12 +00:00
pk
38fd9b8f99
Avoid the use of a `switch(){}' statement before _rtld_init() is called.
...
`switch()' code may be translated using a jump table approach which causes
it to reference the equivalent of a global variable, something that must
be avoided before _rtld_init() has run.
2001-02-03 13:25:00 +00:00
christos
5d6793c06c
back out previous commit; I found a better way of handling the missing
...
dependencies.
2001-01-14 09:39:26 +00:00
christos
61944ce838
Don't use ${OBJS} in the dependency line, cause it is not defined yet.
...
Also add a .NOTMAIN for good measure.
2001-01-14 09:16:47 +00:00
scw
b37a02f8c1
Define VARPSZ so dynamic binaries work on both 4K and 8K page size machines.
2000-12-21 09:12:54 +00:00
mycroft
48b362e14c
More cruft.
2000-12-15 06:49:19 +00:00
mycroft
a19119777a
Clean up cruft in here.
2000-12-15 06:46:22 +00:00
mycroft
6ec13b9d73
Return an error when there are too many segments rather than abort()ing.
...
This way `ldd /usr/libexec/ld.elf_so' doesn't core dump.
2000-11-26 05:22:15 +00:00
mycroft
0581ae5bad
Make ldd(1) build again.
2000-11-10 23:53:04 +00:00
mycroft
2d376bed2b
When dlopen()ing with RTLD_GLOBAL, also make dependent libraries RTLD_GLOBAL.
2000-11-10 21:31:30 +00:00
simonb
ae2c9c22f1
Fix linked-list botch with sysctl-based library selection that meant
...
only the last line was used. Allow more than one white space character
between fields.
Reviewed by Christos Zoulas.
2000-11-10 18:19:06 +00:00
simonb
6e63b39fc6
Only need to include <sys/sysctl.h> once.
2000-11-09 23:14:21 +00:00
dan
d173359000
format warning fixes from he, after testing on 64-bit elf (alpha)
2000-10-11 20:46:07 +00:00
is
48052d04a3
Format string cleanups by sommerfeld.
2000-10-10 19:54:37 +00:00
eeh
45de780533
Wrong register in machine code description.
2000-09-16 14:04:30 +00:00
scottb
b5de616825
copy the real object filename to the rtld object path so that the
...
Dl_info structure can be properly filled by dladdr().
2000-08-28 04:15:54 +00:00
matt
1ed7963458
Simplify some stuff.
2000-08-07 01:47:04 +00:00
kleink
fb21fd7a91
Adjust a comment after the Great Renaming.
2000-07-27 10:44:39 +00:00
mycroft
94581370f5
The ELF ABI declares that argc must fill an `argument slot'. Make it so.
...
For __sparc_v9__ only, do a hack to make executables work temporarily before
and after the kernel is switched.
2000-07-26 15:40:07 +00:00
mycroft
43cfeb27a9
Catch up with type changes. Also:
...
* Apply DT_PLTRELSZ to (one of) pltrel or pltrela *after* we've finished
parsing the headers, so we know which one.
* Fix sparc64 bogons. (It works now!)
2000-07-26 02:07:34 +00:00
thorpej
a8248dcc27
Make it build on non-VARPSZ again.
2000-07-19 15:01:16 +00:00
eeh
55c1b7fb0d
Fix some issues with SPARC V9 ELF binaries.
2000-07-18 22:33:55 +00:00
matt
824a084272
More VAX ELF changes.
2000-07-17 02:55:52 +00:00
matt
63465d3193
No need for RELOCATE_SELF since the VAX does real PIC. Rewrite the bind
...
routine to deal with JMP .vs. CALLx differences.
2000-07-14 22:03:02 +00:00
matt
9118b9fe90
Split DEBUG into two lines to make it easier to enable each separately.
2000-07-14 22:01:09 +00:00
matt
72ed915502
Update to reflect VAX ELF reality.
2000-07-14 22:00:33 +00:00
matt
cc5d6b2a4d
Initialize ld.elf_so's textsize.
2000-07-14 21:59:58 +00:00
eeh
3cf5c2adbf
Added support for the SPARC v9 ABI.
2000-07-13 23:14:17 +00:00