mycroft
a95d62a38e
In _rtld_bind_mips(), if the symbol is undefined, die.
2002-09-13 20:32:24 +00:00
mycroft
712b838f43
Kill the extra newline in assert messages.
2002-09-13 19:50:00 +00:00
mycroft
cc2b1e9844
Add an explanatory comment.
2002-09-13 19:27:19 +00:00
mycroft
e3db70741f
Turn DEBUG back on by default. It doesn't take much space.
2002-09-13 18:28:58 +00:00
mycroft
60330f4a69
The sense of the SHN_ABS test has always been reversed. Fortunately nobody
...
ever tried to reference stuff like _DYNAMIC_LINK and _gp_disp in C code...
2002-09-13 17:36:00 +00:00
mycroft
8f7fa0cfde
Put back the lazy binding. For some bizarre reason, the linker occasionally
...
does not create a PLT entry for a symbol, so we test st_value!=0 to see
whether we can do a PLT fixup.
2002-09-13 17:07:12 +00:00
mycroft
a8dd8878cf
Er, turn off lazy binding for the moment. It doesn't seem to be fully working.
2002-09-13 16:54:14 +00:00
mycroft
c1cf8538ec
Simplify the GOT relocation code somewhat.
2002-09-13 16:31:28 +00:00
mycroft
e8b2fe1d2a
Actually do lazy binding on this platform.
2002-09-13 16:03:20 +00:00
thorpej
7c96dd1581
Rename man/config.{c,h} to man/manconf.{c,h}, so we don't have to
...
worry about problems including "config.h" when building as a host
tool.
2002-09-13 15:56:37 +00:00
mycroft
89a39bb54e
The textrel special case is only needed for MIPS (due to a bug in BFD).
2002-09-13 15:27:30 +00:00
mycroft
7a962f974a
Kill the sparc64 argc conversion hack.
2002-09-13 14:23:07 +00:00
mycroft
a18c524897
Figure out obj->pltrel(a) after the dynamic section is parsed, so the relative
...
order of DT_PLTREL and DT_JMPREL is irrelevant. Removes the need for yet
another weird #ifdef.
Also, be slightly more careful with the rel(a)lim trimming.
2002-09-13 13:28:43 +00:00
mycroft
c74fdd7069
Use the addend on GLOB_DAT relocs (same as ABS32).
2002-09-13 05:45:46 +00:00
mycroft
c65330320a
Do not use the implicit addend on REFQUAD relocs (same as GLOB_DAT).
2002-09-13 05:45:13 +00:00
mycroft
daf8118731
Remove an old comment.
2002-09-13 04:09:49 +00:00
mycroft
2f59687514
Almost all of the items in here are done.
2002-09-13 04:05:00 +00:00
mycroft
777a2b8bb0
If we match a symbol name, but it's undefined, do not continue searching the
...
hash chain.
2002-09-13 03:40:40 +00:00
mycroft
bbe45a0623
Remove a dumb #ifdef -- if VARPSZ is not defined on sparc, the build will
...
bomb anyway.
2002-09-13 03:22:08 +00:00
mycroft
4de09f873b
Nuke an unneeded hack for the Alpha.
2002-09-13 03:17:21 +00:00
mycroft
807a6ace45
Nuke two frivolous assert()s.
2002-09-13 03:12:40 +00:00
mycroft
4b55da479c
_rtld_bind() is not used on MIPS. Should probably move it to MD code.
2002-09-13 03:09:38 +00:00
itojun
a05a73b5b6
revert previous. wtmp{,x} entries need not be \0-terminated, so
...
strncpy is more proper.
2002-09-13 02:58:54 +00:00
mycroft
f64e457cee
Remove one more `dodebug' argument.
2002-09-12 23:11:37 +00:00
mycroft
a3b892d178
Nuke -DRTLD_RELOCATE_SELF and `dodebug' from orbit.
2002-09-12 22:56:28 +00:00
mycroft
f13bdd9850
Add some consts.
2002-09-12 21:06:38 +00:00
mycroft
5ad776fbd2
Move another declaration that doesn't belong in MI source.
2002-09-12 20:27:34 +00:00
mycroft
de4565ee93
Prototype different functions.
2002-09-12 20:24:03 +00:00
mycroft
547bc13b97
_rtld_bind_start() is not used in MI code, so declare it in the MD code.
2002-09-12 20:20:58 +00:00
mycroft
bf04efbfda
ld.elf_so has no textrels on arm, i386 or vax -- and shouldn't on any platform,
...
but that's beside the point.
2002-09-12 19:43:03 +00:00
mycroft
6530c89689
Slight tweak.
2002-09-12 18:43:17 +00:00
mycroft
326f270bfb
The GOT is Elf_Addr[], not Elf_Word[]...
2002-09-12 18:36:43 +00:00
mycroft
6f0bda739f
This ld script is now unnecessary.
2002-09-12 18:33:39 +00:00
mycroft
1165ce6f38
Clean up a little.
2002-09-12 18:28:53 +00:00
mycroft
2346aaad04
Move GOT relocation code from _rtld_setup_pltgot() to
...
_rtld_relocate_nonplt_objects(). Add GOT self-relocation in
_rtld_relocate_nonplt_self().
MIPS ld.elf_so can now relocate itself.
2002-09-12 18:21:18 +00:00
mycroft
2b2534febf
Add a `relocbase' argument to _rtld() and _rtld_init(), which is passed in
...
from the glue code in _rtld_start(). This is used to set objself.relocbase,
rather than assuming that it's the same as objself.mapbase (or 0 on MIPS).
Now -- with a bug fix to the kernel -- ld.elf_so can be linked at any VMA.
2002-09-12 17:45:41 +00:00
mycroft
d04429c6a7
Figure out the relocation offset and pass it to _rtld().
2002-09-12 17:43:30 +00:00
mycroft
ebf50cdfbc
Update comments.
2002-09-12 17:18:37 +00:00
mycroft
ac81e3266b
Snapshot of work to make MIPS ld.elf_so relocatable.
2002-09-12 17:08:32 +00:00
mycroft
5ee0e5e1c4
Pass the calculated relocation offset down to _rtld().
2002-09-12 17:07:25 +00:00
wiz
c4de963fb8
Bump date for -8.
2002-09-12 10:06:51 +00:00
wiz
d5d10ab7d3
Sort options.
2002-09-12 09:34:24 +00:00
itojun
57afbee27d
use strl*, not strn*.
2002-09-12 08:55:31 +00:00
lukem
38a05c7450
Use LOGIN_NAME_MAX instead of `10' for the size of the curname[] buffer.
...
Allows /etc/ftpchroot to work correctly for usernames > 9 characters.
Noted by Max Khon in the freebsd-stable mailing list, via Thomas Vogt in
private email.
2002-09-12 06:40:43 +00:00
kim
968e6be5e6
Replace -i with -8, which enables new 8-bit pass-through on the client.
2002-09-12 01:40:54 +00:00
bjh21
3cc5ae01bc
Correct somewhere where, in rev 1.3, two new sentences had been dropped
...
into the middle of an existing sentence, and put them after it instead.
2002-09-11 23:11:41 +00:00
mycroft
1da1ca49f2
Do the _rtld_relocate_nonplt_self() thing here, and nuke the ld script.
2002-09-11 22:28:32 +00:00
mycroft
fb69b8bec4
Implement _rtld_relocate_nonplt_self() here.
2002-09-11 21:14:08 +00:00
mycroft
a57ae642a3
We don't use _GLOBAL_OFFSET_TABLE_ any more, so don't .global it.
2002-09-11 20:56:09 +00:00
mycroft
fa0b5c37b2
This is a gratuitous null commit to force rtld.o to be rebuilt.
2002-09-11 20:48:21 +00:00