This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] nss_files: Fix /etc/aliases null pointer dereference [BZ #24059]



On 02/02/2019 15:03, Florian Weimer wrote:
> * Szabolcs Nagy:
> 
>> * Florian Weimer <fweimer@redhat.com> [2019-02-01 18:32:23 +0100]:
>>> * Szabolcs Nagy:
>>>>
>>>> libnss_files.so.2 is not listed as explicit dependency
>>>> for some reason so it is not loaded at program startup,
>>>> but after chroot is entered, but it's not available in
>>>> the chroot so the first api call fails.
>>>
>>> There's already this in nss/Makefile:
>>>
>>> $(objpfx)tst-nss-files-alias-truncated: $(objpfx)/libnss_files.so
>>>
>>> I expected this causes a DT_NEEDED entry to be added to the executable,
>>> so it is loaded upon startup, outside of the chroot.
>>
>> it seems debian/ubuntu gcc always passes --as-needed to the linker
>> https://wiki.debian.org/ToolChain/DSOLinking
> 
> Nice find.  Yes, that completely explains it.
> 
>> so either a reference is needed to the lib or
>>  -Wl,--no-as-needed lib -Wl,--as-needed
>> ldflag to force a DT_NEEDED.
> 
> Hmm.  Should we put this on the general linker command line for tests?
> Are there any cases where we actually want --as-needed behavior for
> objects linked into tests?
> 
>> ..or copy the lib to the chroot.
> 
> The test-in-container framework does not work on our currrent reference
> machines, even as root. 8-(
> 
> In other tests, I have used dlopen before the chroot.  I could adjust
> this test accordingly, but it adds needless complexity in my opinion.
> 

What is preventing the tests to work with test-in-container by copying
the lib in the chroot?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]