Re: RTLD_DEEPBIND question

From: Andriy Gapon <avg_at_FreeBSD.org>
Date: Sat, 19 Apr 2025 10:25:28 UTC
On 19/04/2025 12:39, Andriy Gapon wrote:
> On 19/04/2025 12:25, Andriy Gapon wrote:
>> On 19/04/2025 02:41, Konstantin Belousov wrote:
>>> RTLD_DEEPBIND works by first iterating over all (recursive) DT_NEEEDED
>>> object for the object where the symbol is resolved, then by looking at
>>> the global list of loaded objects.
>>> Non-deepbind resolution is performed by looking at the global list.
>>>
>>> You can see it in the rtld.c:symlook_default().
> 
>  From a quick look at the code, should we try to resolve the symbol in refobj 
> itself when it's marked with deepbind?
Oh, and it looks like objects loaded under the "deepbind" object (e.g., needed 
objects) may not be aware that they are in the deepbind sub-tree?

-- 
Andriy Gapon