joerg
6972211664
Stricter matching for _rtld_invalid_paths by ensuring separator.
...
Use mem* functions instead of str* for strings of known size.
2010-08-07 19:47:34 +00:00
joerg
f40b256f09
Reduce header pollution for mdreloc.c. Make Obj_Entry argument of
...
_rtld_relocate_nonplt_objects non-const in preparation for TLS support.
2010-08-06 16:33:17 +00:00
mrg
c8cf27943d
make sure to look in CFLAGS, COPTS and CPPFLAGS for abi options.
...
fixes sgimips64 build of n64 ld.elf_so.
2010-07-11 07:43:12 +00:00
mrg
4c92852a80
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
2010-07-06 05:59:50 +00:00
joerg
ff0f2fb483
Use fast_remainder32 for the ELF hash. For the hot cache case, this
...
speeds up Firefox startup by over 2% on AMD64.
Limit hash table buckets to 32bit.
2010-04-05 14:01:26 +00:00
skrll
134b0fcc8f
Only apply -Wno-stack-protector where alloca is used.
2010-03-20 16:36:35 +00:00
roy
51085124f6
Use the gcc directive to disable SSP warnings.
2010-03-19 20:53:50 +00:00
roy
d5e8f757b8
Use alloca(3) instead of local xmalloc for creating our DoneLists.
...
This allows threaded programs to use us a little better, PR lib/43005.
We need to disable SSP when using alloca.
2010-03-18 22:17:55 +00:00
roy
b02ec7e9f8
Implement negative cache checks for symbol lookups.
...
Uses the Donelist idea from FreeBSD.
2010-02-27 11:16:38 +00:00
skrll
d306de736d
Restore backwards compatibility for binaries referencing the main
...
Obj_Entry.
2010-01-17 08:04:20 +00:00
skrll
2e0bcc8d3b
Remove cargo cult dlinfo entry point.
2010-01-16 10:37:51 +00:00
skrll
418048d731
Put the dlopen,and friends entry points back.
...
They're needed by pre-2.0 binaries. Backward compatibiliity for these
was broken by another commit recently which I'll fix shortly.
2010-01-15 07:07:11 +00:00
skrll
699646b3ea
Remove the entry points for dlopen() and friends. They haven't been used
...
since Aug 2003.
2010-01-14 21:52:07 +00:00
skrll
15b7ff0199
Make DEBUG build compile.
2010-01-14 12:12:07 +00:00
skrll
f88b3d9061
Wrap a few long lines.
2010-01-14 11:58:31 +00:00
skrll
c2796a5929
Shut gcc up.
2010-01-14 11:57:06 +00:00
skrll
8b4b9f3e56
Shut gcc up.
2010-01-13 22:34:07 +00:00
christos
12bd4dbd45
PR/39240: Satoshi Suetake: Don't fail when attempting to resolve weak symbols
...
when we are doing immediate binding, leave them alone and they will be dealt
with later during lazy binding. From skrll@
2010-01-13 20:17:21 +00:00
skrll
8f7db61734
Reset the COMBRELOC cache Obj_Entry if it was freed.
...
Fixes PR 41482. Done slightly differently to the patch in the PR.
2010-01-10 07:29:47 +00:00
skrll
fa7832d0b1
Fixup comment.
2010-01-10 06:37:32 +00:00
skrll
09298c1411
Small tidyup.
2010-01-09 15:36:43 +00:00
mrg
249d1f1111
use COPTS for -G0.
...
replace ${CPUFLAGS:M-mabi=64:M-mabi=o64} with two constructs.
the former doesn't seem to work anymore.
2009-12-18 17:10:07 +00:00
matt
d8d1440d5c
Merge from matt-nb5-mips64:
...
Add N32/N64 support for mips dynamic loader.
2009-12-14 00:41:18 +00:00
mrg
750ad3d59d
simplify the logic for compat ld.elf_so and move it here. we now can
...
find the libc objdir for multiple compat ld.elf_so's, too.
2009-12-13 09:31:47 +00:00
mrg
6af15ae20b
if BSD_MK_COMPAT_FILE is defined, .include it.
2009-12-13 09:01:45 +00:00
mrg
f7f0bc40ae
rename LD32DIR to MLIBDIR.
2009-12-13 08:25:20 +00:00
christos
1dc0b61eca
If the environment is corrupt, die. From FreeBSD.
2009-12-02 15:50:13 +00:00
skrll
77fd7698f3
Make _rtld_pagesz of type size_t.
...
Fixes round_down for alpha which made ldd(1) break.
2009-11-17 18:44:33 +00:00
skrll
b9fe4e7d17
Add RCSID
2009-11-11 14:15:41 +00:00
skrll
ef99e95537
Fix start symbols for new binutils.
2009-11-04 17:02:43 +00:00
skrll
d43e9fc212
Fix start symbol for newer binutils.
2009-10-22 21:56:13 +00:00
skrll
15653ebb45
ld.elf_so grew more PLABELS with dlinfo so bump HPPA_PLABEL_PRE.
2009-09-25 17:49:56 +00:00
pooka
4c1e54d82b
Add Solarisa-like dlinfo() interface to the ELF dynamic linker.
...
Implement RTLD_DI_LINKMAP which returns a pointer to the linkmap
chain at the given object. Other Solaris queries are currently
unimplemented.
2009-09-24 21:21:33 +00:00
skrll
ffb28af545
Fix start symbol. I have no idea how this worked before.
2009-09-19 14:54:17 +00:00
skrll
4b849729b2
Fix the start symbol.
2009-09-12 07:22:16 +00:00
jmmv
2cb749c2fd
Remove trailing \n in calls to _rtld_error: a newline is automatically
...
added by a call to the function.
2009-08-29 13:46:54 +00:00
he
45932f91e5
Apply fix borrowed from i386: Fix const issue (cast const pointers
...
to "const uint8_t *" instead of "caddr_t").
2009-05-24 20:35:41 +00:00
he
237687b934
Copy build fix from i386: Fix const issues (cast const pointers
...
to "const uint8_t *" instead of "caddr_t").
2009-05-24 18:29:03 +00:00
mjf
27cb8d0e73
After a recent WARNS= bump on ld.elf_so it fails to build on hppa,
...
complaining that we're "discarding qualifier from pointer target
type".
Use const char * instead of caddr_t to avoid the warning and get
distribution building on hppa again.
2009-05-23 17:50:34 +00:00
martin
c131490c29
Use the new Elf_SOff (signed offset) type to fix a few signed/unsigned
...
problems.
2009-05-22 21:47:46 +00:00
christos
b19e027aab
fix signed/unsigned comparisons and const cast away (untested)
2009-05-20 22:31:46 +00:00
ad
51a76d6f11
Add a reminder about ldd depending on ld.so.
2009-05-20 19:38:38 +00:00
christos
fa64a5bf9b
warns=4
2009-05-19 20:44:52 +00:00
lukem
e91bd42f43
Fix const issues (cast const pointers to "const uint8_t *" instead of "caddr_t")
2009-04-12 13:29:29 +00:00
lukem
b4fba76b41
Fix const issues (cast const pointers to "const uint8_t *" instead of "caddr_t")
...
NOTE: change based on ../i386/mdreloc.c 1.27
XXX: not compile tested
2009-03-16 02:46:47 +00:00
lukem
337930db10
Fix const issues (cast const pointers to "const uint8_t *" instead of "caddr_t")
2009-03-16 02:44:47 +00:00
lukem
500db00274
Default to WARNS=4
...
Exceptions that need a lower level are:
getty ld.elf_so lfs_cleanerd makewhatis telnetd tftpd
hpropd ipropd-master ipropd-slave kadmind kpasswdd
2009-03-16 02:24:55 +00:00
lukem
b8276deac1
rename a variable to avoid a compiler warning
2009-03-15 23:53:03 +00:00
mrg
fb3cc85fef
add some (uintptr_t) to some casts, so these compile with ELFSIZE=32
...
*and _LP64. necessary for 32/64 bit combo ldd support.
2009-01-06 04:01:46 +00:00
mrg
9108f12f6b
move the defines for RTLD_ARCH_SUBDIR into a sub-sub-makefile so we can
...
grab these values via reach-over more easily.
2009-01-06 02:15:06 +00:00