* Thomas Weidenmueller <wine-patches(a)reactsoft.com> [19/06/06, 11:38:54]:
> Index: dlls/secur32/negotiate.c
> ===================================================================
> RCS file: /home/wine/wine/dlls/secur32/negotiate.c,v
> retrieving revision 1.3
> diff -u -r1.3 negotiate.c
> --- dlls/secur32/negotiate.c 23 May 2006 12:48:34 -0000 1.3
> +++ dlls/secur32/negotiate.c 19 Jun 2006 09:10:31 -0000
> @@ -110,7 +110,10 @@
> phCredential->dwUpper = fCredentialsUse;
> /* Same here, shamelessly stolen from schannel.c */
> if (ptsExpiry)
> - ptsExpiry->QuadPart = 0;
> + {
> + ptsExpiry->LowPart = 0;
> + ptsExpiry->HighPart = 0;
> + }
> ret = SEC_E_OK;
> }
> return ret;
Be aware that negotiate.c is a complete stub. If this function is
changed, it should be changed like this:
diff --git a/dlls/secur32/negotiate.c b/dlls/secur32/negotiate.c
index b8531aa..586e559 100644
--- a/dlls/secur32/negotiate.c
+++ b/dlls/secur32/negotiate.c
@@ -93,28 +93,6 @@ static SECURITY_STATUS SEC_ENTRY nego_Qu
return ret;
}
-static SECURITY_STATUS nego_AcquireCredentialsHandle(ULONG
fCredentialsUse,
- PCredHandle phCredential, PTimeStamp ptsExpiry)
-{
- SECURITY_STATUS ret;
-
- if(fCredentialsUse == SECPKG_CRED_BOTH)
- {
- ret = SEC_E_NO_CREDENTIALS;
- }
- else
- {
- /* Ok, just store the direction like schannel does for now.
- * FIXME: This should probably do something useful later on
- */
- phCredential->dwUpper = fCredentialsUse;
- /* Same here, shamelessly stolen from schannel.c */
- if (ptsExpiry)
- ptsExpiry->QuadPart = 0;
- ret = SEC_E_OK;
- }
- return ret;
-}
/***********************************************************************
* AcquireCredentialsHandleA
@@ -124,11 +102,10 @@ static SECURITY_STATUS SEC_ENTRY nego_Ac
PLUID pLogonID, PVOID pAuthData, SEC_GET_KEY_FN pGetKeyFn,
PVOID pGetKeyArgument, PCredHandle phCredential, PTimeStamp ptsExpiry)
{
- TRACE("(%s, %s, 0x%08lx, %p, %p, %p, %p, %p, %p)\n",
+ TRACE("(%s, %s, 0x%08lx, %p, %p, %p, %p, %p, %p) stub\n",
debugstr_a(pszPrincipal), debugstr_a(pszPackage), fCredentialUse,
pLogonID, pAuthData, pGetKeyFn, pGetKeyArgument, phCredential,
ptsExpiry);
- return nego_AcquireCredentialsHandle(fCredentialUse, phCredential,
- ptsExpiry);
+ return SEC_E_UNSUPPORTED_FUNCTION;
}
/***********************************************************************
@@ -139,11 +116,10 @@ static SECURITY_STATUS SEC_ENTRY nego_Ac
PLUID pLogonID, PVOID pAuthData, SEC_GET_KEY_FN pGetKeyFn,
PVOID pGetKeyArgument, PCredHandle phCredential, PTimeStamp ptsExpiry)
{
- TRACE("(%s, %s, 0x%08lx, %p, %p, %p, %p, %p, %p)\n",
+ TRACE("(%s, %s, 0x%08lx, %p, %p, %p, %p, %p, %p) stub\n",
debugstr_w(pszPrincipal), debugstr_w(pszPackage), fCredentialUse,
pLogonID, pAuthData, pGetKeyFn, pGetKeyArgument, phCredential,
ptsExpiry);
- return nego_AcquireCredentialsHandle(fCredentialUse, phCredential,
- ptsExpiry);
+ return SEC_E_UNSUPPORTED_FUNCTION;
}
/***********************************************************************
There's just no use in fixing negotiate.c as long as ntlm.c is in flux.
Negotiate will use the same solution as NTLM.
Cheers,
Kai
--
Kai Blin, (blin at gmx dot net)
"There are things that are so serious that you can only joke about them"
- Heisenberg