krb5_context in a threaded process

Michael B Allen ioplex at
Tue Jul 8 17:54:15 EDT 2008

On Tue, Jul 8, 2008 at 11:25 AM,  <aditham at> 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.

Not really.

What I did was add a krb5_config_set function to allow setting
individual properties and then change the default krb5.conf location
to an empty file.

I believe Heimdal has such functions (although I don't know if the
work was fully completed due to memory management issues). I don't
know if MIT has such functions.


Michael B Allen
PHP Active Directory SPNEGO SSO

More information about the Kerberos mailing list