Hans Leidekker : secur32: Add an option to disable use of cached Samba credentials.
Alexandre Julliard
julliard at winehq.org
Thu May 10 14:17:58 CDT 2012
Module: wine
Branch: master
Commit: 3181577810a6d14ac88866ea273eaf2165f104fa
URL: http://source.winehq.org/git/wine.git/?a=commit;h=3181577810a6d14ac88866ea273eaf2165f104fa
Author: Hans Leidekker <hans at codeweavers.com>
Date: Thu May 10 13:05:48 2012 +0200
secur32: Add an option to disable use of cached Samba credentials.
---
dlls/secur32/ntlm.c | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/dlls/secur32/ntlm.c b/dlls/secur32/ntlm.c
index 6a1199b..38d2045 100644
--- a/dlls/secur32/ntlm.c
+++ b/dlls/secur32/ntlm.c
@@ -52,6 +52,7 @@ typedef struct _NtlmCredentials
char *domain_arg;
char *password; /* not nul-terminated */
int pwlen;
+ int no_cached_credentials; /* don't try to use cached Samba credentials */
} NtlmCredentials, *PNtlmCredentials;
/***********************************************************************
@@ -141,7 +142,7 @@ static SECURITY_STATUS SEC_ENTRY ntlm_AcquireCredentialsHandleW(
PVOID pGetKeyArgument, PCredHandle phCredential, PTimeStamp ptsExpiry)
{
SECURITY_STATUS ret;
- PNtlmCredentials ntlm_cred = NULL;
+ PNtlmCredentials ntlm_cred;
TRACE("(%s, %s, 0x%08x, %p, %p, %p, %p, %p, %p)\n",
debugstr_w(pszPrincipal), debugstr_w(pszPackage), fCredentialUse,
@@ -160,6 +161,8 @@ static SECURITY_STATUS SEC_ENTRY ntlm_AcquireCredentialsHandleW(
ntlm_cred->domain_arg = NULL;
ntlm_cred->password = NULL;
ntlm_cred->pwlen = 0;
+ ntlm_cred->no_cached_credentials = 0;
+
phCredential->dwUpper = fCredentialUse;
phCredential->dwLower = (ULONG_PTR)ntlm_cred;
ret = SEC_E_OK;
@@ -178,6 +181,7 @@ static SECURITY_STATUS SEC_ENTRY ntlm_AcquireCredentialsHandleW(
ntlm_cred->domain_arg = NULL;
ntlm_cred->password = NULL;
ntlm_cred->pwlen = 0;
+ ntlm_cred->no_cached_credentials = 0;
if(pAuthData != NULL)
{
@@ -539,7 +543,7 @@ static SECURITY_STATUS SEC_ENTRY ntlm_InitializeSecurityContextW(
else
{
status = NetWkstaUserGetInfo(NULL, 1, (LPBYTE *)&ui);
- if (status != NERR_Success || ui == NULL)
+ if (status != NERR_Success || ui == NULL || ntlm_cred->no_cached_credentials)
{
ret = SEC_E_NO_CREDENTIALS;
goto isc_end;
More information about the wine-cvs
mailing list