Reece Dunn : secur32: Fixed the schannel tests on Vista.

Alexandre Julliard julliard at winehq.org
Mon Sep 8 07:42:09 CDT 2008


Module: wine
Branch: master
Commit: c718981a1924ec618e678c11aff05933ccde69bd
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=c718981a1924ec618e678c11aff05933ccde69bd

Author: Reece Dunn <msclrhd at googlemail.com>
Date:   Sun Sep  7 11:25:56 2008 +0100

secur32: Fixed the schannel tests on Vista.

---

 dlls/secur32/tests/schannel.c |   50 ++++++++++++++++++++++++----------------
 1 files changed, 30 insertions(+), 20 deletions(-)

diff --git a/dlls/secur32/tests/schannel.c b/dlls/secur32/tests/schannel.c
index 904b6fd..dc10ccd 100644
--- a/dlls/secur32/tests/schannel.c
+++ b/dlls/secur32/tests/schannel.c
@@ -230,12 +230,14 @@ static void testAcquireSecurityContext(void)
     memset(&schanCred, 0, sizeof(schanCred));
     st = pAcquireCredentialsHandleA(NULL, unisp_name_a, SECPKG_CRED_OUTBOUND,
      NULL, &schanCred, NULL, NULL, NULL, NULL);
-    ok(st == SEC_E_INTERNAL_ERROR, "Expected SEC_E_INTERNAL_ERROR, got %08x\n",
-     st);
+    ok(st == SEC_E_INTERNAL_ERROR ||
+       st == SEC_E_UNKNOWN_CREDENTIALS /* Vista/win2k8 */,
+       "Expected SEC_E_INTERNAL_ERROR or SEC_E_UNKNOWN_CREDENTIALS, got %08x\n", st);
     st = pAcquireCredentialsHandleA(NULL, unisp_name_a, SECPKG_CRED_INBOUND,
      NULL, &schanCred, NULL, NULL, NULL, NULL);
-    ok(st == SEC_E_INTERNAL_ERROR, "Expected SEC_E_INTERNAL_ERROR, got %08x\n",
-     st);
+    ok(st == SEC_E_INTERNAL_ERROR ||
+       st == SEC_E_UNKNOWN_CREDENTIALS /* Vista/win2k8 */,
+       "Expected SEC_E_INTERNAL_ERROR or SEC_E_UNKNOWN_CREDENTIALS, got %08x\n", st);
 
     /* No cert in SCHANNEL_CRED succeeds for outbound.. */
     schanCred.dwVersion = SCHANNEL_CRED_VERSION;
@@ -246,8 +248,9 @@ static void testAcquireSecurityContext(void)
     /* but fails for inbound. */
     st = pAcquireCredentialsHandleA(NULL, unisp_name_a, SECPKG_CRED_INBOUND,
      NULL, &schanCred, NULL, NULL, &cred, NULL);
-    ok(st == SEC_E_NO_CREDENTIALS, "Expected SEC_E_NO_CREDENTIALS, got %08x\n",
-     st);
+    ok(st == SEC_E_NO_CREDENTIALS ||
+       st == SEC_E_OK /* Vista/win2k8 */,
+       "Expected SEC_E_NO_CREDENTIALS or SEC_E_OK, got %08x\n", st);
 
     if (0)
     {
@@ -328,21 +331,25 @@ static void testAcquireSecurityContext(void)
         schanCred.dwVersion = SCH_CRED_V1;
         st = pAcquireCredentialsHandleA(NULL, unisp_name_a, SECPKG_CRED_OUTBOUND,
          NULL, &schanCred, NULL, NULL, &cred, NULL);
-        ok(st == SEC_E_INTERNAL_ERROR,
-         "Expected SEC_E_INTERNAL_ERROR, got %08x\n", st);
+        ok(st == SEC_E_INTERNAL_ERROR ||
+           st == SEC_E_UNKNOWN_CREDENTIALS /* Vista/win2k8 */,
+           "Expected SEC_E_INTERNAL_ERROR or SEC_E_UNKNOWN_CREDENTIALS, got %08x\n", st);
         st = pAcquireCredentialsHandleA(NULL, unisp_name_a, SECPKG_CRED_INBOUND,
          NULL, &schanCred, NULL, NULL, &cred, NULL);
-        ok(st == SEC_E_INTERNAL_ERROR,
-         "Expected SEC_E_INTERNAL_ERROR, got %08x\n", st);
+        ok(st == SEC_E_INTERNAL_ERROR ||
+           st == SEC_E_UNKNOWN_CREDENTIALS /* Vista/win2k8 */,
+           "Expected SEC_E_INTERNAL_ERROR or SEC_E_UNKNOWN_CREDENTIALS, got %08x\n", st);
         schanCred.dwVersion = SCH_CRED_V2;
         st = pAcquireCredentialsHandleA(NULL, unisp_name_a, SECPKG_CRED_OUTBOUND,
          NULL, &schanCred, NULL, NULL, &cred, NULL);
-        ok(st == SEC_E_INTERNAL_ERROR,
-         "Expected SEC_E_INTERNAL_ERROR, got %08x\n", st);
+        ok(st == SEC_E_INTERNAL_ERROR ||
+           st == SEC_E_UNKNOWN_CREDENTIALS /* Vista/win2k8 */,
+           "Expected SEC_E_INTERNAL_ERROR or SEC_E_UNKNOWN_CREDENTIALS, got %08x\n", st);
         st = pAcquireCredentialsHandleA(NULL, unisp_name_a, SECPKG_CRED_INBOUND,
          NULL, &schanCred, NULL, NULL, &cred, NULL);
-        ok(st == SEC_E_INTERNAL_ERROR,
-         "Expected SEC_E_INTERNAL_ERROR, got %08x\n", st);
+        ok(st == SEC_E_INTERNAL_ERROR ||
+           st == SEC_E_UNKNOWN_CREDENTIALS /* Vista/win2k8 */,
+           "Expected SEC_E_INTERNAL_ERROR or SEC_E_UNKNOWN_CREDENTIALS, got %08x\n", st);
 
         /* Succeeds on V3 or higher */
         schanCred.dwVersion = SCH_CRED_V3;
@@ -374,19 +381,22 @@ static void testAcquireSecurityContext(void)
         schanCred.paCred = certs;
         st = pAcquireCredentialsHandleA(NULL, unisp_name_a, SECPKG_CRED_OUTBOUND,
          NULL, &schanCred, NULL, NULL, &cred, NULL);
-        ok(st == SEC_E_UNKNOWN_CREDENTIALS,
-         "Expected SEC_E_UNKNOWN_CREDENTIALS, got %08x\n", st);
+        ok(st == SEC_E_UNKNOWN_CREDENTIALS ||
+           st == SEC_E_NO_CREDENTIALS /* Vista/win2k8 */,
+           "Expected SEC_E_UNKNOWN_CREDENTIALS or SEC_E_NO_CREDENTIALS, got %08x\n", st);
         st = pAcquireCredentialsHandleA(NULL, unisp_name_a, SECPKG_CRED_INBOUND,
          NULL, &schanCred, NULL, NULL, &cred, NULL);
-        ok(st == SEC_E_UNKNOWN_CREDENTIALS,
-         "Expected SEC_E_UNKNOWN_CREDENTIALS, got %08x\n", st);
+        ok(st == SEC_E_UNKNOWN_CREDENTIALS ||
+           st == SEC_E_NO_CREDENTIALS,
+           "Expected SEC_E_UNKNOWN_CREDENTIALS, got %08x\n", st);
         tmp = certs[0];
         certs[0] = certs[1];
         certs[1] = tmp;
         st = pAcquireCredentialsHandleA(NULL, unisp_name_a, SECPKG_CRED_OUTBOUND,
          NULL, &schanCred, NULL, NULL, &cred, NULL);
-        ok(st == SEC_E_UNKNOWN_CREDENTIALS,
-         "Expected SEC_E_UNKNOWN_CREDENTIALS, got %08x\n", st);
+        ok(st == SEC_E_UNKNOWN_CREDENTIALS ||
+           st == SEC_E_NO_CREDENTIALS,
+           "Expected SEC_E_UNKNOWN_CREDENTIALS, got %08x\n", st);
         st = pAcquireCredentialsHandleA(NULL, unisp_name_a, SECPKG_CRED_INBOUND,
          NULL, &schanCred, NULL, NULL, &cred, NULL);
         ok(st == SEC_E_UNKNOWN_CREDENTIALS,




More information about the wine-cvs mailing list