RTLD_GLOBAL and sql_ippool
aland at deployingradius.com
Fri May 9 14:56:54 CEST 2008
Stephen Gran wrote:
> That's what I was hoping you would say. Now for the tedious part - the
> tools (libtool, in particular) really doesn't seem to want to play when
> the .so you're linking to doesn't begin with lib*.
> Does anyone have any
> great ideas for how to make this work? How difficult would it be to
> change the name of the modules from rlm_* to librlm_* ? Or is there a
> better way I'm not seeing?
The problem is that libtool is getting in the way here. The dynamic
linker can link to rlm_foo.so if you point to the file directly. The
"lib" prefix requirement is there only for the common case.
libtool, on the other hand... if you give it
"/path/to/rlm/rlm_foo.la", it will often produce a link line saying
"-L/path/to/rlm -lfoo", which is wrong. If you instead link to a
library as "-lfoo", it will produce a link line of "/usr/lib/libfoo.so".
I can't figure out why it does this. It's retarded.
> Sorry - I didn't quite finish that thought. What I meant to say was
> that for the time being, we're stuck with either broken modules or
> using a bundled libltdl, neither of which is a great solution. It looks
> like libtdl upstream will make it possible to load the way we are again
> with the stock library, but that will mean code changes in freeradius as
What code changes?
> So, given that either waiting or doing some work now means some
> changes, which seems like a better plan?
I'd rather see it fixed properly.
More information about the Freeradius-Devel