[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: New dynamic loader (was Re: 2.1.96 & apache mod_setenv)
From: |
Petr Vandrovec |
Subject: |
Re: New dynamic loader (was Re: 2.1.96 & apache mod_setenv) |
Date: |
Fri, 10 Nov 2000 20:40:57 MET-1 |
On 10 Nov 00 at 9:48, Ulrich Drepper wrote:
>
> > Then look at my last mail. Simple
> >
> > dlopen(".../php_auth_vsbtuo.so", RTLD_NOW);
> > dlopen(".../libldap.so", RTLD_NOW);
>
> I don't have this and won't install it. Go to the Debian guys and let
> them figure this out.
Hi Ulrich,
that's me again. It looks like that symbol lists are somewhat
damaged during loading/unloading of previous .so modules:
15603:
15603: relocation processing: /lib/libpam.so.0
15603: symbol=__ctype_tolower; lookup in file=./x
15603: symbol=__ctype_tolower; lookup in file=/usr/lib/debug/libdl.so.2
15603: symbol=__ctype_tolower; lookup in file=/usr/lib/debug/libc.so.6
15603: binding file /lib/libpam.so.0 to /usr/lib/debug/libc.so.6: normal
symbol `__ctype_tolower' [GLIBC_2.0]
15603: symbol=_pam_token_returns; lookup in file=./x
15603: symbol=_pam_token_returns; lookup in file=/usr/lib/debug/libdl.so.2
15603: symbol=_pam_token_returns; lookup in file=/usr/lib/debug/libc.so.6
15603: symbol=_pam_token_returns; lookup in file=/usr/lib/debug/ld-2.1.97.so
and now it dies in elf/do-lookup.h at line 52:
map = list[i];
because of list was NULL.
_dl_lookup_symbol was invoked with symbol_scope[] containing
{0x2aac0860, 0x2aac1588, 0}. 0x2aac0860 points to health structure
{r_list=0x2aac0dd4, r_nlist=4, r_duplist=0x2aac0de4, r_nduplist=5 }.
But 0x2aac1588 points to
{r_list=NULL, r_nlist=0, r_duplist=NULL, r_nduplist=0}.
Is it just bug that elf/do-lookup.h:FCT uses do {} while() instead
of while () {}, so it dereferences pointer even for zero length list,
or is it something worse and such item should not appear in
symbol_scope array at all?
I'm now trying to recompile glibc with while() {} instead of
do {} while() loop, but it will take some time on my hardware :-(
Thanks,
Petr Vandrovec
address@hidden