Fix definition of SECURITY_INTEGER

Kai Blin blin at gmx.net
Mon Jun 19 05:02:27 CDT 2006


* Thomas Weidenmueller <wine-patches at 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



More information about the wine-devel mailing list