diff options
author | Jeffrey Altman <jaltman@secure-endpoints.com> | 2005-01-17 23:57:51 +0000 |
---|---|---|
committer | Jeffrey Altman <jaltman@secure-endpoints.com> | 2005-01-17 23:57:51 +0000 |
commit | 191783e634d17927051337359f9abbe32c0e5b2e (patch) | |
tree | 23e55cd09bc4ed584e897a03487834bf36172b14 /src/util/support/threads.c | |
parent | 962f1e24f1a3838d521db990778e1bd5a0432be2 (diff) | |
download | krb5-191783e634d17927051337359f9abbe32c0e5b2e.zip krb5-191783e634d17927051337359f9abbe32c0e5b2e.tar.gz krb5-191783e634d17927051337359f9abbe32c0e5b2e.tar.bz2 |
Some applications such as Eudora on Windows load and unload the Kerberos
libraries as part of a plug-in. Plugins are often loaded for a specific
purpose and then unregistered. In order to support this model, the libraries
must restore the library state to the uninitialized state when the library
is unloaded.
ticket: new
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17050 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/util/support/threads.c')
-rw-r--r-- | src/util/support/threads.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/util/support/threads.c b/src/util/support/threads.c index 44b6420..c8d4199 100644 --- a/src/util/support/threads.c +++ b/src/util/support/threads.c @@ -305,6 +305,9 @@ int k5_key_delete (k5_key_t keynum) /* XXX Memory leak here! Need to destroy the associated data for all threads. But watch for race conditions in case threads are going away too. */ + assert(destructors_set[keynum] == 1); + destructors_set[keynum] = 0; + destructors[keynum] = 0; LeaveCriticalSection(&key_lock); #else /* POSIX */ |