Autosyncing with Wine HEAD

svn path=/trunk/; revision=23006
This commit is contained in:
The Wine Synchronizer 2006-07-10 21:25:32 +00:00
parent 9afe9c3b5c
commit ca1ba81a06
2 changed files with 10 additions and 6 deletions

View file

@ -731,12 +731,16 @@ BOOL WINAPI CertVerifySubjectCertificateContext(PCCERT_CONTEXT pSubject,
} }
if (*pdwFlags & CERT_STORE_REVOCATION_FLAG) if (*pdwFlags & CERT_STORE_REVOCATION_FLAG)
{ {
PCCRL_CONTEXT crl = CertFindCRLInStore(pSubject->hCertStore, DWORD flags = 0;
pSubject->dwCertEncodingType, 0, CRL_FIND_ISSUED_BY, pSubject, NULL); PCCRL_CONTEXT crl = CertGetCRLFromStore(pSubject->hCertStore, pSubject,
NULL, &flags);
/* FIXME: what if the CRL has expired? */
if (crl) if (crl)
{ {
FIXME("check CRL for subject\n"); if (CertVerifyCRLRevocation(pSubject->dwCertEncodingType,
pSubject->pCertInfo, 1, (PCRL_INFO *)&crl->pCrlInfo))
*pdwFlags &= CERT_STORE_REVOCATION_FLAG;
} }
else else
*pdwFlags |= CERT_STORE_NO_CRL_FLAG; *pdwFlags |= CERT_STORE_NO_CRL_FLAG;

View file

@ -107,7 +107,7 @@ struct protect_data_t
}; };
/* this is used to check if an incoming structure was built by Wine */ /* this is used to check if an incoming structure was built by Wine */
static const char * crypt_magic_str = "Wine Crypt32 ok"; static const char crypt_magic_str[] = "Wine Crypt32 ok";
/* debugging tool to print strings of hex chars */ /* debugging tool to print strings of hex chars */
static const char * static const char *
@ -835,8 +835,8 @@ BOOL WINAPI CryptProtectData(DATA_BLOB* pDataIn,
DWORD dwFlags, DWORD dwFlags,
DATA_BLOB* pDataOut) DATA_BLOB* pDataOut)
{ {
static const WCHAR empty_str[1];
BOOL rc = FALSE; BOOL rc = FALSE;
HCRYPTPROV hProv; HCRYPTPROV hProv;
struct protect_data_t protect_data; struct protect_data_t protect_data;
HCRYPTHASH hHash; HCRYPTHASH hHash;
@ -861,7 +861,7 @@ BOOL WINAPI CryptProtectData(DATA_BLOB* pDataIn,
/* Windows appears to create an empty szDataDescr instead of maintaining /* Windows appears to create an empty szDataDescr instead of maintaining
* a NULL */ * a NULL */
if (!szDataDescr) if (!szDataDescr)
szDataDescr=(WCHAR[]){'\0'}; szDataDescr = empty_str;
/* get crypt context */ /* get crypt context */
if (!CryptAcquireContextW(&hProv,NULL,NULL,CRYPT32_PROTECTDATA_PROV,CRYPT_VERIFYCONTEXT)) if (!CryptAcquireContextW(&hProv,NULL,NULL,CRYPT32_PROTECTDATA_PROV,CRYPT_VERIFYCONTEXT))