Subject: CVS commit: [netbsd-1-6] src/lib/csu/common_elf
To: None <source-changes@NetBSD.org>
From: Matthias Scheler <tron@netbsd.org>
List: source-changes
Date: 05/28/2004 09:01:24
Module Name: src
Committed By: tron
Date: Fri May 28 09:01:24 UTC 2004
Modified Files:
src/lib/csu/common_elf [netbsd-1-6]: common.c
Log Message:
Pull up revision 1.13 (requested by skrll in ticket #1702):
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.
To generate a diff of this commit:
cvs rdiff -r1.11 -r1.11.2.1 src/lib/csu/common_elf/common.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.