ret = CertSaveStore(store, X509_ASN_ENCODING, CERT_STORE_SAVE_AS_STORE,
CERT_STORE_SAVE_TO_MEMORY, &blob, 0);
ok(ret, "CertSaveStore failed: %08x\n", GetLastError());
- if (todo)
- todo_wine
- ok(blob.cbData == cb, "%s: expected size %d, got %d\n", name, cb,
- blob.cbData);
- else
+ todo_wine_if (todo)
ok(blob.cbData == cb, "%s: expected size %d, got %d\n", name, cb,
blob.cbData);
blob.pbData = HeapAlloc(GetProcessHeap(), 0, blob.cbData);
ret = CertSaveStore(store, X509_ASN_ENCODING, CERT_STORE_SAVE_AS_STORE,
CERT_STORE_SAVE_TO_MEMORY, &blob, 0);
ok(ret, "CertSaveStore failed: %08x\n", GetLastError());
- if (todo)
- todo_wine
- ok(!memcmp(pb, blob.pbData, cb), "%s: unexpected value\n", name);
- else
+ todo_wine_if (todo)
ok(!memcmp(pb, blob.pbData, cb), "%s: unexpected value\n", name);
HeapFree(GetProcessHeap(), 0, blob.pbData);
}
0xff,0x04,0x08,0x30,0x06,0x01,0x01,0xff,0x02,0x01,0x01,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 };
+static void delete_test_key(void)
+{
+ HKEY root_key, test_key;
+ static const WCHAR SysCertW[] = {'S','o','f','t','w','a','r','e','\\','M','i','c','r','o','s','o','f','t','\\',
+ 'S','y','s','t','e','m','C','e','r','t','i','f','i','c','a','t','e','s',0};
+ static const WCHAR WineTestW[] = {'W','i','n','e','T','e','s','t',0};
+ WCHAR subkey_name[32];
+ DWORD num_subkeys, subkey_name_len;
+ int idx;
+
+ if (RegOpenKeyExW(HKEY_CURRENT_USER, SysCertW, 0, KEY_READ, &root_key))
+ return;
+ if (RegOpenKeyExW(root_key, WineTestW, 0, KEY_READ, &test_key))
+ {
+ RegCloseKey(root_key);
+ return;
+ }
+ RegQueryInfoKeyW(test_key, NULL, NULL, NULL, &num_subkeys, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
+ for (idx = num_subkeys; idx-- > 0;)
+ {
+ subkey_name_len = sizeof(subkey_name)/sizeof(WCHAR);
+ RegEnumKeyExW(test_key, idx, subkey_name, &subkey_name_len, NULL, NULL, NULL, NULL);
+ RegDeleteKeyW(test_key, subkey_name);
+ }
+ RegCloseKey(test_key);
+ RegDeleteKeyW(root_key, WineTestW);
+ RegCloseKey(root_key);
+}
+
static void testAddCertificateLink(void)
{
BOOL ret;
CertFreeCertificateContext(source);
CertCloseStore(store1, 0);
+
+ delete_test_key();
}
static DWORD countCertsInStore(HCERTSTORE store)