+2003-11-26 Jeffrey Altman <jaltman@mit.edu>
+
+ * cc_default.c: Add support for Leash Kinit Dialog on Windows to
+ krb5int_c_default()
+
2003-08-26 Ken Raeburn <raeburn@mit.edu>
* cc_file.c (krb5_fcc_store_int32, krb5_fcc_store_ui_4)
#ifdef USE_LOGIN_LIBRARY
#include "KerberosLoginPrivate.h"
+#else
+#ifdef USE_LEASH
+static void (*pLeash_AcquireInitialTicketsIfNeeded)(krb5_context,krb5_principal) = NULL;
+static HANDLE hLeashDLL = INVALID_HANDLE_VALUE;
+#endif
#endif
if (desiredPrincipal != nil)
KLDisposePrincipal (desiredPrincipal);
}
+#else
+#ifdef USE_LEASH
+
+ if ( hLeashDLL == INVALID_HANDLE_VALUE ) {
+ hLeashDLL = LoadLibrary("leashw32.dll");
+ if ( hLeashDLL != INVALID_HANDLE_VALUE ) {
+ (FARPROC) pLeash_AcquireInitialTicketsIfNeeded =
+ GetProcAddress(hLeashDLL, "not_an_API_Leash_AcquireInitialTicketsIfNeeded");
+ }
+ }
+
+ if ( pLeash_AcquireInitialTicketsIfNeeded )
+ {
+ krb5_os_context os_ctx;
+
+ if (!context || context->magic != KV5M_CONTEXT)
+ return KV5M_CONTEXT;
+
+ os_ctx = context->os_context;
+
+ pLeash_AcquireInitialTicketsIfNeeded(context,os_ctx->default_ccprincipal);
+ }
+#endif
#endif
return krb5_cc_default (context, ccache);