[2254] in Kerberos_V5_Development

home help back first fref pref prev next nref lref last post

Re: Problems with the current com_err routines...

daemon@ATHENA.MIT.EDU (Ken Raeburn)
Thu Feb 20 05:06:01 1997

To: "Theodore Y. Ts'o" <tytso@MIT.EDU>
Cc: probe@lehman.com, krbdev@MIT.EDU
From: Ken Raeburn <raeburn@cygnus.com>
Date: 20 Feb 1997 05:05:08 -0500
In-Reply-To: "Theodore Y. Ts'o"'s message of Wed, 19 Feb 1997 17:57:13 -0500

"Theodore Y. Ts'o" <tytso@MIT.EDU> writes:

> Richard's code is just as non-thread safe.

But, depending on the approach used, it could be *made* thread-safe
without again changing the interface between library and error
tables.  Actually implementing that can be left for the future; the
Windows DLL problems are more immediate.

> Not necessarily; dlopen() and dlcose() don't necessarily presuppose
> sharing across different processes.  In fact, usually dlopen() gives
> each process its own private copy of the shared library's static
> variables.  Hence, we don't need to do anything special with dlopen() at
> all.

It's dlclose that's the issue.  The implementation is allowed to toss
away the address ranges previously used by the library.  That puts you
in the same situation Windows does.

> Note that the SAP R/3 application server is already using dlopen() to
> gain access to the GSSAPI library, and it works just fine on both OSF/1
> and Solaris.

But does it ever call dlclose?  Even if it does, the specs I've seen
said that dlclose is *allowed* to throw the library away; that a given
implementation might not doesn't make the code correct.

home help back first fref pref prev next nref lref last post