summaryrefslogtreecommitdiffstats
path: root/src/lib/gssapi/gss_libinit.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/gssapi/gss_libinit.c')
-rw-r--r--src/lib/gssapi/gss_libinit.c37
1 files changed, 9 insertions, 28 deletions
diff --git a/src/lib/gssapi/gss_libinit.c b/src/lib/gssapi/gss_libinit.c
index fb80c89463..70301af73f 100644
--- a/src/lib/gssapi/gss_libinit.c
+++ b/src/lib/gssapi/gss_libinit.c
@@ -7,8 +7,6 @@
#include "gss_libinit.h"
#include "k5-platform.h"
-static int initialized = 0;
-
/*
* Initialize the GSSAPI library.
*/
@@ -18,6 +16,10 @@ MAKE_FINI_FUNCTION(gssint_lib_fini);
int gssint_lib_init(void)
{
+#if !USE_BUNDLE_ERROR_STRINGS
+ add_error_table(&et_k5g_error_table);
+ add_error_table(&et_ggss_error_table);
+#endif
return k5_mutex_finish_init(&kg_vdb.mutex);
}
@@ -25,35 +27,14 @@ void gssint_lib_fini(void)
{
if (!INITIALIZER_RAN(gssint_lib_init) || PROGRAM_EXITING())
return;
- k5_mutex_destroy(&kg_vdb.mutex);
-}
-
-OM_uint32 gssint_initialize_library (void)
-{
- if (!initialized) {
#if !USE_BUNDLE_ERROR_STRINGS
- add_error_table(&et_k5g_error_table);
- add_error_table(&et_ggss_error_table);
+ remove_error_table(&et_k5g_error_table);
+ remove_error_table(&et_ggss_error_table);
#endif
-
- initialized = 1;
- }
-
- return CALL_INIT_FUNCTION(gssint_lib_init);
+ k5_mutex_destroy(&kg_vdb.mutex);
}
-/*
- * Clean up the Kerberos v5 lirbary state
- */
-
-void gssint_cleanup_library (void)
+OM_uint32 gssint_initialize_library (void)
{
- assert (initialized);
-
-#if !USE_BUNDLE_ERROR_STRINGS
- remove_error_table(&et_k5g_error_table);
- remove_error_table(&et_ggss_error_table);
-#endif
-
- initialized = 0;
+ return CALL_INIT_FUNCTION(gssint_lib_init);
}