summaryrefslogtreecommitdiffstats
path: root/src/lib/gssapi/gss_libinit.c
diff options
context:
space:
mode:
authorKen Raeburn <raeburn@mit.edu>2004-06-02 22:54:31 +0000
committerKen Raeburn <raeburn@mit.edu>2004-06-02 22:54:31 +0000
commitf5ecbd6f0a3e5ff1d4d8655bf2066d54d1bcc7d9 (patch)
treefadcbc78697c05fd6d688bf0e37027fa196cbc58 /src/lib/gssapi/gss_libinit.c
parent3d4ff7c2da534388aaec3bba36a18b8a9a0028bd (diff)
downloadkrb5-f5ecbd6f0a3e5ff1d4d8655bf2066d54d1bcc7d9.tar.gz
krb5-f5ecbd6f0a3e5ff1d4d8655bf2066d54d1bcc7d9.tar.xz
krb5-f5ecbd6f0a3e5ff1d4d8655bf2066d54d1bcc7d9.zip
* gss_libinit.c (gssint_lib_init): Initialize error tables here.
(gssint_initialize_library): Don't do it directly here. Make sure gssint_lib_init has been called, and return the status. (gssint_lib_fini): Remove error tables here. (gssint_cleanup_library): Function deleted. (initialized): Variable deleted. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16390 dc483132-0cff-0310-8789-dd5450dbe970
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 fb80c8946..70301af73 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);
}