[Box Backup-commit] COMMIT r2791 - box/invisnet/vs2010/0.11/lib/server
subversion at boxbackup.org
subversion at boxbackup.org
Sat Oct 16 18:31:20 BST 2010
Author: invisnet
Date: 2010-10-16 18:31:19 +0100 (Sat, 16 Oct 2010)
New Revision: 2791
Modified:
box/invisnet/vs2010/0.11/lib/server/TLSContext.cpp
Log:
Associate the certificate and the private key
Modified: box/invisnet/vs2010/0.11/lib/server/TLSContext.cpp
===================================================================
--- box/invisnet/vs2010/0.11/lib/server/TLSContext.cpp 2010-10-11 23:28:19 UTC (rev 2790)
+++ box/invisnet/vs2010/0.11/lib/server/TLSContext.cpp 2010-10-16 17:31:19 UTC (rev 2791)
@@ -213,7 +213,7 @@
{
HCERTSTORE hSystemStore;
- if (NULL == (hSystemStore = CertOpenStore(CERT_STORE_PROV_SYSTEM, 0, NULL, CERT_SYSTEM_STORE_LOCAL_MACHINE | CERT_STORE_READONLY_FLAG, L"MY")))
+ if (NULL == (hSystemStore = CertOpenStore(CERT_STORE_PROV_SYSTEM, 0, NULL, CERT_SYSTEM_STORE_LOCAL_MACHINE, L"MY")))
{
BOX_ERROR("Failed to open store");
}
@@ -231,6 +231,25 @@
x509 = d2i_X509(NULL, &pbCertEncoded, pDesiredCert->cbCertEncoded);
+ DWORD pcbData = 0;
+ if (CertGetCertificateContextProperty(pDesiredCert,CERT_KEY_PROV_INFO_PROP_ID,NULL,&pcbData))
+ {
+ BOX_TRACE("Certificate has associated Private Key");
+ }
+ else
+ {
+ CRYPT_KEY_PROV_INFO cryptKeyProvInfo = { L"BoxBackup",MS_DEF_PROV_W,PROV_RSA_FULL,CRYPT_MACHINE_KEYSET,0,NULL,AT_SIGNATURE };
+
+ if (!CertSetCertificateContextProperty(pDesiredCert,CERT_KEY_PROV_INFO_PROP_ID,0,&cryptKeyProvInfo))
+ {
+ BOX_ERROR("SetCertProp failed");
+ }
+ else
+ {
+ BOX_INFO("Associated Private Key with certificate");
+ }
+ }
+
CertFreeCertificateContext(pDesiredCert);
}
More information about the Boxbackup-commit
mailing list