Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:25725 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 64068 invoked by uid 1010); 15 Sep 2006 19:23:43 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 64053 invoked from network); 15 Sep 2006 19:23:43 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 15 Sep 2006 19:23:43 -0000 Authentication-Results: pb1.pair.com header.from=mba2000@ioplex.com; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=mba2000@ioplex.com; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain ioplex.com from 66.220.1.142 cause and error) X-PHP-List-Original-Sender: mba2000@ioplex.com X-Host-Fingerprint: 66.220.1.142 www.ioplex.com Linux 2.4/2.6 Received: from [66.220.1.142] ([66.220.1.142:1816] helo=www.ioplex.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id C6/DD-05553-EBDFA054 for ; Fri, 15 Sep 2006 15:23:42 -0400 Received: from quark.foo.net (c-69-142-196-170.hsd1.nj.comcast.net [69.142.196.170]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by www.ioplex.com (Postfix) with ESMTP id 97CC942C0D for ; Fri, 15 Sep 2006 15:23:39 -0400 (EDT) Date: Fri, 15 Sep 2006 15:23:16 -0400 To: internals@lists.php.net Message-ID: <20060915152316.5a862434.mba2000@ioplex.com> In-Reply-To: <20060915114356.04adc204.mba2000@ioplex.com> References: <20060915114356.04adc204.mba2000@ioplex.com> X-Mailer: Sylpheed version 1.0.6 (GTK+ 1.2.10; i386-redhat-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] Two modules w/ different instances of same lib causes crash From: mba2000@ioplex.com (Michael B Allen) RTLD_DEEPBIND fixes this problem using a test program and two minimalistic DSOs to emulate the namespace clash problem. But I see PHP has support for RTLD_DEEPBIND: # if defined(RTLD_GROUP) && defined(RTLD_WORLD) && defined(RTLD_PARENT) ... # elif defined(RTLD_DEEPBIND) ... # else ... # endif On my Linux glibc 2.3 systems RTLD_DEEPBIND is chosen. So now, I have to wonder why my customer had a problem in the first place. Based on the above macros, is it possible that RTLD_DEEPBIND could NOT be chosen? Mike On Fri, 15 Sep 2006 11:43:56 -0400 Michael B Allen wrote: > My extension (plexsso.so) is dymanically linked with a library. That > library (libplexsso.so) is a statically linked collection of libs > including a custom version of Heimdal Kerberos (libkrb5.a). I have found > that if another module is linked with the stock Heimdal (e.g. pgsql.so > dynamically in this case) some symbol mixing occurs and the application > crashes. > > Can two modules use different instances of the same library? > > Before I go try to become an expert in linking and the Linux loader > can anyone give me advice as to how to I might workaround (for Linux > at least)? > > Mike -- Michael B Allen PHP Active Directory SSO http://www.ioplex.com/