On Wed, 19 Dec 2001, Peter Galbavy quoted:
> > Yes new code can be loaded at any time, as apoosed to just init time.
And not only by dlopen(). On page 46 of the "Linker and Libraries Guide"
for Solaris 7, there is the following statement:
During the application's execution, the runtime linker can be called
upon to perform any delayed function binding.
That is, it does not load everything at application start-up. Later on
we find this:
The runtime linker's default mode of performing lazy binding can be
overridden by setting the environment variable LD_BIND_NOW to any
non-null value. This environment variable setting causes the runtme
linker to perform both data reference and function reference
relocations during process initialization, before transferring control
to the application... Individual object can also be built using the
link editor's -z now option.
I guess if you are paranoid, you will do that.
I am told by someone who knows Solaris a lot better than I do that
dlopen() on Solaris is little more than a hook back into the runtime
linker.
--
Philip Hazel University of Cambridge Computing Service,
ph10@??? Cambridge, England. Phone: +44 1223 334714.