Bug 57152

Summary: Add PlatformCertificateInfo::PlatformCertificateInfo(PCCERT_CONTEXT) constructor on Windows
Product: WebKit Reporter: Jeff Miller <jeffm>
Component: WebKit2Assignee: Jeff Miller <jeffm>
Status: RESOLVED FIXED    
Severity: Normal    
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: Windows 7   
Attachments:
Description Flags
Patch sfalken: review+

Description Jeff Miller 2011-03-26 09:20:18 PDT
We're going to need to create a PlatformCertificateInfo with a single certificate on Windows to support client certificates.  Also, stop relying on the fact that the Win32 API CertDuplicateCertificateContext() currently returns the same PCCERT_CONTEXT that you pass to it, since that may change in the future.
Comment 1 Jeff Miller 2011-03-26 09:23:30 PDT
Created attachment 87026 [details]
Patch
Comment 2 Steve Falkenburg 2011-03-26 12:05:17 PDT
Comment on attachment 87026 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=87026&action=review

> Source/WebKit2/Shared/win/PlatformCertificateInfo.cpp:78
> +#if PLATFORM(CG)

PLATFORM(CG) seems weird here, but I see it elsewhere already. Did you consider USE(CFNETWORK) instead?
Comment 3 Jeff Miller 2011-03-26 15:09:13 PDT
(In reply to comment #2)
> (From update of attachment 87026 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=87026&action=review
> 
> > Source/WebKit2/Shared/win/PlatformCertificateInfo.cpp:78
> > +#if PLATFORM(CG)
> 
> PLATFORM(CG) seems weird here, but I see it elsewhere already. Did you consider USE(CFNETWORK) instead?

Thanks for pointing that out.  It looks like we use PLATFORM(CG) in the other constructor because it relies on WebKitSystemInterface.  Since the constructor I added just uses CertDuplicateCertificateContext(), a Win32 API, it should work fine on all Windows platforms.  I'll remove the test altogether.
Comment 4 Jeff Miller 2011-03-26 15:55:18 PDT
Committed r82049: <http://trac.webkit.org/changeset/82049>