krb5_context in a threaded process

Ken Raeburn raeburn at MIT.EDU
Tue Jul 8 17:55:12 EDT 2008


On Jul 8, 2008, at 11:25, aditham at yahoo.com wrote:
> I need to initialize multiple krb5_context's in a multi-threaded
> program
> and each context *must* be initialized from a different config file.
>
> krb5_init_context() seems to read config from /etc/krb5.conf or the
> file
> pointed to by KRB5_CONFIG. Setting the environment variable will not
> work since
> "env"is for the process, not the thread.
>
> I was wondering if there is a better way to do this, other than
> creating a mutex
> to set/get the KRB5_CONFIG env variable before each krb5_init_context.

Unfortunately, no, at the moment that's the best way.  (Or use  
multiple processes.)

I'd actually thought about implementing an interface to take the extra  
input argument, because it would clean up how some of the KDC  
initialization works right now (which uses a private variant of  
krb5_init_context that only differs in that it adds the kdc.conf file  
to the normal list of config files).  Do you want to propose and  
implement something along those lines?  The krbdev at mit list would be  
the place for that discussion....

Ken



More information about the Kerberos mailing list