X-Git-Url: http://www.project-moonshot.org/gitweb/?p=mech_eap.orig;a=blobdiff_plain;f=mech_eap%2Futil_tld.c;h=e3710f94fae30b119b6afd3f9e7857127c89f142;hp=f6feeba964ea895d1ab1312a515ae4c23c6b0afc;hb=a263a7b6fdb7061956823bf8d9cd0ae53c5916c4;hpb=a3da59c888452434f167002b0f9004947c0d4b80 diff --git a/mech_eap/util_tld.c b/mech_eap/util_tld.c index f6feeba..e3710f9 100644 --- a/mech_eap/util_tld.c +++ b/mech_eap/util_tld.c @@ -51,7 +51,7 @@ destroyThreadLocalData(struct gss_eap_thread_local_data *tld) #ifdef WIN32 /* - * This is the tls index returned by TlsAlloc() on process init. + * This is the TLS index returned by TlsAlloc() on process init. * Each thread, on thread attach in DllMain(), allocates its thread-local * data and uses this index with TlsSetValue() to store it. * It can then subsequently be retrieved with TlsGetValue(). @@ -71,11 +71,15 @@ DllMain(HINSTANCE hDLL, /* DLL module handle */ LPVOID reserved) /* reserved */ { struct gss_eap_thread_local_data *tlsData; + OM_uint32 major, minor; switch (reason) { case DLL_PROCESS_ATTACH: /* Allocate a TLS index. */ - gssEapInitiatorInit(); + major = gssEapInitiatorInit(&minor); + if (GSS_ERROR(major)) + return FALSE; + tlsIndex = TlsAlloc(); if (tlsIndex == TLS_OUT_OF_INDEXES) return FALSE;