enami
f1740378ad
Don't assume past the mmaped region is accessible.
2004-02-15 02:59:04 +00:00
enami
63fcb5a042
Fix warning message: the failed operation is not fstat but mmap.
2004-02-15 02:56:53 +00:00
mrauch
f06ab72b6e
Change the symbol lookup order to search RTLD_GLOBAL objects
...
before referencing object's DAG. This makes it possible for
C++ exceptions to work across shared libraries.
Patch taken from FreeBSD: src/libexec/rtld-elf/rtld.c: 1.67 -> 1.68,
committed there by kan@FreeBSD.org .
2003-12-07 09:36:06 +00:00
christos
1a2b5965a9
Don't try to preload an empty string.
2003-11-25 14:36:49 +00:00
simonb
28817edd35
Restore handling of reloc entries that point to unaligned locations
...
that seems to have disappeared in rev 1.34.
Thanks to Jason Thorpe for suggesting where to look.
Fixes the simple test case in PR port-mips/23366.
2003-11-19 19:41:57 +00:00
lukem
130ab7336b
Rework how MAKEVERBOSE operates:
...
* Don't bother prefixing commands with a line of ${_MKCMD}\
and instead rely upon "make -s". This is less intrusive on
all the Makefiles than the former. Idea from David Laight.
* Rename the variables use to print messages. The scheme now is:
_MKMSG_FOO Run _MKMSG 'foo'
_MKTARGET_FOO Run _MKMSG_FOO ${.TARGET}
From discussion with Alistair Crooks.
2003-10-21 10:01:19 +00:00
fvdl
d83c6c4294
Don't use NULL for integers.
2003-10-21 01:19:10 +00:00
lukem
ddff99b7f4
rework to use the newer _MKMSGCREATE (et al) macros
2003-10-19 04:45:01 +00:00
lukem
6cf0d872cd
support MAKEVERBOSE
2003-10-19 01:19:10 +00:00
matt
fd1caff7c2
Update to new reality. XXX _rtld_bind still needs to be written.
2003-10-06 16:08:35 +00:00
mycroft
65ed3bdcdd
Make the effect of the hack clearer.
2003-09-24 10:25:26 +00:00
mycroft
7242c1114c
One more tweak...
2003-09-24 10:18:52 +00:00
mycroft
7b234fd232
Make the comment a little more accurate.
2003-09-24 09:59:45 +00:00
mycroft
89ea37c60a
Temporary workaround for some binutils/ld lossage. See the comment for more
...
information.
2003-09-24 09:55:35 +00:00
mycroft
5fb0b88880
Some notes...
2003-09-24 06:20:33 +00:00
enami
9c2e06fe24
Space after the keyword `if'.
2003-09-22 14:37:57 +00:00
mycroft
5bd33bcad6
Back out revision 1.100. There is something screwier going on.
2003-09-07 22:17:43 +00:00
mycroft
323a574dc3
dlsym() should not leave an error set. It confuses programs that check
...
dlerror() (such as pkgsrc/graphics/transcode).
2003-08-31 21:52:01 +00:00
skrll
d900731978
Resolve dlsym(3) and friends directly so that dlsym(RTLD_NEXT,...) works.
...
Previously dlsym resolved to the version in crt0.o or libc which would
mean that the caller's shared object couldn't be determined correctly
using __builtin_return_address(0).
Mainly from FreeBSD, but adapted by me. Benefits of this solutions are:
- backward comptibility maintained
- existing broken binaries are fixed with a new ld.elf_so
- __mainprog_obj can be removed from crt0.o
- we do the same thing as FreeBSD
Fixes PR 22067.
OKed by Jason and Christos.
2003-08-12 09:18:38 +00:00
agc
8e6ab8837d
Move UCB-licensed code from 4-clause to 3-clause licence.
...
Patches provided by Joel Baker in PR 22284, verified by myself.
2003-08-07 09:46:37 +00:00
skrll
59b0f10729
KNF
2003-08-05 19:41:53 +00:00
salo
99410184e7
netbsd.org->NetBSD.org
2003-07-26 19:24:24 +00:00
mrg
88bb1d9b3b
include <string.h> or <stdlib.h> for all prototypes
2003-07-26 15:04:38 +00:00
skrll
5f573ab68d
ANSIfy and de-__P().
2003-07-24 10:12:25 +00:00
skrll
ddc9322f3b
Support immediate binding on arm.
2003-07-21 15:34:35 +00:00
skrll
b2695e5a1f
arm and sh5 also have bogus DT_TEXTRELs. sh5 was already covered so just
...
update the comment.
2003-07-21 15:17:55 +00:00
skrll
619dee76f6
Correct the in_plt parameter of a couple of _rtld_find_symdef calls.
...
The mips_reloc.c case is a no-op as _rtld_symlook_obj ignores in_plt for
MIPS.
OK'ed by Charles.
2003-07-17 13:56:32 +00:00
skrll
d4cfd1c666
s/_rltd_obj_rtld/_rtld_objself/ in #ifdef notyet code.
2003-07-15 07:39:55 +00:00
skrll
9192c2eed4
Whitespace
2003-07-15 07:38:29 +00:00
marcus
fae2567c9b
Removed unused function.
2003-07-05 20:48:39 +00:00
tsutsui
0e65101f60
Add function prototype declarations.
2003-07-05 18:18:51 +00:00
marcus
a4878b4349
Bugfix: Don't pick addend both from reloc and contents at the same time.
2003-07-02 15:29:34 +00:00
marcus
6aeeb40d4a
Updated to work with current rtld code.
2003-06-30 00:50:46 +00:00
marcus
5404577abf
SH also has a bogus DT_TEXTREL, it seems.
2003-06-30 00:49:25 +00:00
simonb
a9f5b3f871
KNF- blank lines before code at start of functions.
2003-06-05 10:41:32 +00:00
christos
683092605c
Add RTLD_FIRST, RTLD_NEXT, RTLD_DEFAULT, from FreeBSD
2003-05-30 15:43:33 +00:00
petrov
458dbd70ac
Fix alignment problem in debug output.
...
Happens only under RTLD_DEBUG_RELOC.
2003-05-23 20:13:50 +00:00
mycroft
f57f7ac072
Back out previous change for now -- it needs more work.
2003-04-24 16:55:29 +00:00
mycroft
8826c5e475
Attempt to give dlsym() the same symbol-searching semantics as _rtld_bind().
...
Tested in a handful of cases.
Reviewed by: a dead silence
2003-04-23 17:40:25 +00:00
scw
0b8f02edad
Handle unaligned relocations, and RELATIVE relocs with non-zero addends.
...
This gets binaries linked against libstdc++ working (FSVO "working").
2003-04-21 11:54:46 +00:00
scw
e6b13790fa
SH5 needs __HAVE_FUNCTION_DESCRIPTORS defined in order for ld.elf_so
...
to resolve SHmedia function pointers correctly.
2003-03-26 14:46:32 +00:00
scw
d174ad2eab
Add support for shared libraries/dynamically linked binaries on sh5.
...
With the latest SuperH toolchain, NetBSD/evbsh5 can now
run with a fully dynamic userland (modulo a few remaining
gremlins affecting a couple of binaries).
2003-03-25 13:11:53 +00:00
taca
28d2056e12
make it compile in /usr/src/rescue directory.
2003-03-06 17:01:27 +00:00
matt
7b28c56025
Align psections to their specified alignment (if possible). Use
...
mmap(2) MAP_ALIGNED.
2003-03-06 07:34:56 +00:00
mycroft
7cbba1750d
Shorten rtld_start() by 2 instructions or 8 bytes, and make it not use GOT
...
entries.
2003-03-02 22:56:14 +00:00
mycroft
d2fd5f837d
Shorten rtld_start() slightly -- there's a base-relative _DYNAMIC pointer at
...
the beginning of the GOT, so we don't need an extra one here. Also, remove a
bogus comment -- we do in fact have to do fixups, because there are pointers in
ld.elf_so's data segment that need to be relocated.
2003-03-02 22:03:40 +00:00
mycroft
33131cb294
Update copyright.
2003-03-01 15:14:59 +00:00
christos
861ff9be73
we have constants for all this crap. don't hard-code things.
2003-02-28 23:05:24 +00:00
mycroft
9939b38056
Eliminate GOT usage in rtld_start() on this platform, too.
2003-02-28 22:37:35 +00:00
thorpej
527c1efca7
Use the "__NetBSD_Version__" constant rather than the "NetBSD" constant
...
in the NetBSD version note. The old "NetBSD" constant was stuck in stone,
and thus didn't really convey any useful information.
2003-02-28 18:20:33 +00:00