[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Versioned Symbols



> > > dlopening with RTDL_GLOBAL, where there is an option to 
> > > dlopen with RTDL_LOCAL.
> > 
> > hmm... how does that behaves when the conflict is two or more libs down the
> > chain from the PoV of the stuff being dlopened?
> 
> I have thought that symbols are resolved locally, as to allow
> modules to be linked with other libs without affecting the 
> main application namespace.

Sam pointed out to me that RTDL_GROUP is what I am after, and 
that is not implemented in Glibc.
I have updated libpkg-guide 
according to what I gathered from this thread.

 http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html

I consider the following portion may be suitable for inclusion in the policy; 
if it is more precisely worded:

 If library or application dlopens a module, that module and its chain of dependencies have a chance of being loaded in two versions at the same time. Unless RTDL_GROUP option for dlopen gets implemented and gets used, there are basically two options:

    * Uniquely name symbols, differently between different SONAMES
    * Version the symbols using symbol versioning as described in Chapter 14


regards,
	junichi



Reply to: