diff options
author | Ken Raeburn <raeburn@mit.edu> | 2004-06-02 22:54:31 +0000 |
---|---|---|
committer | Ken Raeburn <raeburn@mit.edu> | 2004-06-02 22:54:31 +0000 |
commit | f5ecbd6f0a3e5ff1d4d8655bf2066d54d1bcc7d9 (patch) | |
tree | fadcbc78697c05fd6d688bf0e37027fa196cbc58 /src/lib/gssapi/gss_libinit.c | |
parent | 3d4ff7c2da534388aaec3bba36a18b8a9a0028bd (diff) | |
download | krb5-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.c | 37 |
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); } |