context, threads, and both
John Rudd
jrudd at ucsc.edu
Thu Jun 2 16:56:05 EDT 2005
On May 31, 2005, at 20:28, Ken Raeburn wrote:
>> 2) I seem to recall that kerberos libraries are not thread safe. Is
>> that accurate? If I decide to multi-thread this program, do I need
>> to wrap the kerberos calls with mutex's?
>>
>> 3) What about the context and each thread? Does each thread need its
>> own context? (does the "is or is not thread-safe" aspect depend upon
>> whether or not each thread has its own context?)
>
> That's the idea, yes -- calls can be done in different threads as long
> as they use different contexts. For simple data types exported in the
> header file, like the principal structure, we don't have any locking,
> so they're only safe to use in multiple threads at once if all of the
> uses only read the structure contents (and yeah, that's not really
> well documented anywhere).
So, if each one keeps its own principle, creds, and context data
separate, all should be good?
> P.S. This is all assuming you're using a fairly current release. The
> 1.2 series had none of the thread safety support, for example. Oh,
> and I'm talking about the krb5 and gssapi libraries -- gssrpc hasn't
> been done, and krb4 isn't going to be.
We're still in 1.2.x, so I probably wont bother trying to multi-thread
my program until later this summer (when we upgrade our kerberos
versions).
John
More information about the krbdev
mailing list