From c19247a484a9b3b74b28542f4f00388a4cad17d0 Mon Sep 17 00:00:00 2001 From: Luke Howard Date: Tue, 13 Sep 2011 16:28:51 +1000 Subject: [PATCH] call eap_mech constructors from DllMain --- moonshot/mech_eap/eap_mech.c | 8 ++++---- moonshot/mech_eap/gssapiP_eap.h | 7 +++++++ moonshot/mech_eap/util_tld.c | 2 ++ 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/moonshot/mech_eap/eap_mech.c b/moonshot/mech_eap/eap_mech.c index 630dd0e..0b64df9 100644 --- a/moonshot/mech_eap/eap_mech.c +++ b/moonshot/mech_eap/eap_mech.c @@ -165,10 +165,10 @@ gssEapInitLibRadsec(OM_uint32 *minor) return GSS_S_COMPLETE; } -static void gssEapInitiatorInit(void) GSSEAP_CONSTRUCTOR; -static void gssEapFinalize(void) GSSEAP_DESTRUCTOR; +void gssEapInitiatorInit(void) GSSEAP_CONSTRUCTOR; +void gssEapFinalize(void) GSSEAP_DESTRUCTOR; -static void +void gssEapInitiatorInit(void) { OM_uint32 major, minor; @@ -188,7 +188,7 @@ gssEapInitiatorInit(void) #endif } -static void +void gssEapFinalize(void) { #ifdef GSSEAP_ENABLE_ACCEPTOR diff --git a/moonshot/mech_eap/gssapiP_eap.h b/moonshot/mech_eap/gssapiP_eap.h index 50884ec..5d352a9 100644 --- a/moonshot/mech_eap/gssapiP_eap.h +++ b/moonshot/mech_eap/gssapiP_eap.h @@ -335,6 +335,13 @@ gssEapExportSecContext(OM_uint32 *minor, gss_buffer_t token); +/* eap_mech.c */ +void +gssEapInitiatorInit(void); + +void +gssEapFinalize(void); + #ifdef __cplusplus } #endif diff --git a/moonshot/mech_eap/util_tld.c b/moonshot/mech_eap/util_tld.c index 38e6a10..2e1ddfa 100644 --- a/moonshot/mech_eap/util_tld.c +++ b/moonshot/mech_eap/util_tld.c @@ -74,6 +74,7 @@ DllMain(HINSTANCE hDLL, /* DLL module handle */ switch (reason) { case DLL_PROCESS_ATTACH: /* Allocate a TLS index. */ + gssEapInitiatorInit(); tlsIndex = TlsAlloc(); if (tlsIndex == TLS_OUT_OF_INDEXES) return FALSE; @@ -99,6 +100,7 @@ DllMain(HINSTANCE hDLL, /* DLL module handle */ destroyThreadLocalData(tlsData); /* Release the TLS index. */ TlsFree(tlsIndex); + gssEapFinalize(); break; default: break; -- 2.1.4