[ros-diffs] [cwittich] 45840: [WINTRUST_WINETEST] sync wintrust_winetest to wine 1.1.39

cwittich at svn.reactos.org cwittich at svn.reactos.org
Thu Mar 4 21:46:06 CET 2010


Author: cwittich
Date: Thu Mar  4 21:46:06 2010
New Revision: 45840

URL: http://svn.reactos.org/svn/reactos?rev=45840&view=rev
Log:
[WINTRUST_WINETEST]
sync wintrust_winetest to wine 1.1.39

Modified:
    trunk/rostests/winetests/wintrust/crypt.c
    trunk/rostests/winetests/wintrust/softpub.c

Modified: trunk/rostests/winetests/wintrust/crypt.c
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/wintrust/crypt.c?rev=45840&r1=45839&r2=45840&view=diff
==============================================================================
--- trunk/rostests/winetests/wintrust/crypt.c [iso-8859-1] (original)
+++ trunk/rostests/winetests/wintrust/crypt.c [iso-8859-1] Thu Mar  4 21:46:06 2010
@@ -515,6 +515,8 @@
     ok(hcatinfo == NULL, "CryptCATAdminAddCatalog succeeded\n");
     ok(error == ERROR_BAD_FORMAT, "got %u expected ERROR_BAD_FORMAT\n", GetLastError());
     }
+    if (hcatinfo != NULL)
+        pCryptCATAdminReleaseCatalogContext(hcatadmin, hcatinfo, 0);
 
     SetLastError(0xdeadbeef);
     hcatinfo = pCryptCATAdminAddCatalog(hcatadmin, tmpfileW, basenameW, 1);

Modified: trunk/rostests/winetests/wintrust/softpub.c
URL: http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/wintrust/softpub.c?rev=45840&r1=45839&r2=45840&view=diff
==============================================================================
--- trunk/rostests/winetests/wintrust/softpub.c [iso-8859-1] (original)
+++ trunk/rostests/winetests/wintrust/softpub.c [iso-8859-1] Thu Mar  4 21:46:06 2010
@@ -179,8 +179,12 @@
             ok(data.pasSigners[0].pasCertChain != NULL,
              "Expected pasCertChain to be allocated\n");
             if (data.pasSigners[0].pasCertChain)
+            {
                 ok(data.pasSigners[0].pasCertChain[0].pCert == cert,
                  "Unexpected cert\n");
+                CertFreeCertificateContext(
+                 data.pasSigners[0].pasCertChain[0].pCert);
+            }
             CertFreeCertificateContext(cert);
         }
         else
@@ -266,6 +270,8 @@
         PROVDATA_SIP provDataSIP = { 0 };
         static const GUID unknown = { 0xC689AAB8, 0x8E78, 0x11D0, { 0x8C,0x47,
          0x00,0xC0,0x4F,0xC2,0x95,0xEE } };
+        static GUID bogusGuid = { 0xdeadbeef, 0xbaad, 0xf00d, { 0x00,0x00,0x00,
+         0x00,0x00,0x00,0x00,0x00 } };
 
         ret = funcs->pfnObjectTrust(&data);
         ok(ret == S_FALSE, "Expected S_FALSE, got %08x\n", ret);
@@ -316,6 +322,30 @@
             ok(provDataSIP.pSip != NULL, "Expected a SIP\n");
             ok(provDataSIP.psSipSubjectInfo != NULL,
              "Expected a subject info\n");
+        }
+        /* Specifying the GUID results in that GUID being the subject GUID */
+        fileInfo.pgKnownSubject = &bogusGuid;
+        ret = funcs->pfnObjectTrust(&data);
+        ok(ret == S_FALSE, "Expected S_FALSE, got %08x\n", ret);
+        ok(data.padwTrustStepErrors[TRUSTERROR_STEP_FINAL_OBJPROV] ==
+         TRUST_E_NOSIGNATURE ||
+         data.padwTrustStepErrors[TRUSTERROR_STEP_FINAL_OBJPROV] ==
+         TRUST_E_SUBJECT_FORM_UNKNOWN ||
+         data.padwTrustStepErrors[TRUSTERROR_STEP_FINAL_OBJPROV] ==
+         TRUST_E_PROVIDER_UNKNOWN,
+         "Expected TRUST_E_NOSIGNATURE or TRUST_E_SUBJECT_FORM_UNKNOWN or TRUST_E_PROVIDER_UNKNOWN, got %08x\n",
+         data.padwTrustStepErrors[TRUSTERROR_STEP_FINAL_OBJPROV]);
+        if (data.padwTrustStepErrors[TRUSTERROR_STEP_FINAL_OBJPROV] ==
+         TRUST_E_NOSIGNATURE)
+        {
+            ok(!memcmp(&provDataSIP.gSubject, &bogusGuid, sizeof(bogusGuid)),
+             "unexpected subject GUID\n");
+        }
+        /* Specifying a bogus GUID pointer crashes */
+        if (0)
+        {
+            fileInfo.pgKnownSubject = (GUID *)0xdeadbeef;
+            ret = funcs->pfnObjectTrust(&data);
         }
         funcs->pfnFree(data.padwTrustStepErrors);
     }
@@ -407,6 +437,9 @@
              (CERT_CONFIDENCE_SIG | CERT_CONFIDENCE_TIMENEST),
              "Expected CERT_CONFIDENCE_SIG | CERT_CONFIDENCE_TIMENEST, got %08x\n",
              data.pasSigners[0].pasCertChain[0].dwConfidence);
+            CertFreeCertificateContext(
+             data.pasSigners[0].pasCertChain[0].pCert);
+            CertFreeCertificateChain(data.pasSigners[0].pChainContext);
             CertFreeCertificateContext(cert);
         }
     }




More information about the Ros-diffs mailing list