Re: What version introduced RTLD_DEEPBIND?
| From: | Michael B Allen | Date: | Fri, 27 Oct 2006 17:07:42 +0000 |
| Subject: | Re: What version introduced RTLD_DEEPBIND? | ||
| References: | 1 2 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-26268@lists.php.net to get a copy of this message | ||
On Fri, 27 Oct 2006 12:12:46 -0400
"Brian J. France" <list@firehawksystems.com> wrote:
> On Oct 27, 2006, at 11:57 AM, Michael B Allen wrote:
> > Is there any way to determine exactly which version of PHP first
> > used the
> > RTLD_DEEPBIND flag to dlopen(3)? Can webcvs be used somehow. I *think*
> > it's between 4.3 and 4.4 but I'm not sure.
>
> 4.4:
>
>
> http://cvs.php.net/viewvc.cgi/Zend/zend.h?view=log&pathrev=PHP_4_4
>
> and
>
> 5.1:
>
> http://cvs.php.net/viewvc.cgi/ZendEngine2/zend.h?
> view=log&pathrev=PHP_5_1
>
> and I plan on removing it from our internal builds as it causes more
> problems than I think it fixes (on RHEL only).
Err, that'll break my module.
My module is linked with Heimdal kerberos. I need Heimdal because it
has proper support for SPNEGO (amnong other reasons). But if PHP or
any other module is linked with a different Kerberos library (e.g. MIT)
symbol collisions will occur resulting in all sorts of strange behavior.
If you are going to remove RTLD_DEEPBIND, can you recommend an alternative
method for linking a module so that said symbol collisions do not result?
What problems are you seeing with RTLD_DEEPBIND?
Perhaps it could be an extension specific ini option like:
extension = mymodule.so:RTLD_DEEPBIND
or
extension.deepbind = mymodule.so
?
Mike
--
Michael B Allen
PHP Active Directory SSO
http://www.ioplex.com/