forked from chromium/chromium
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Implement TLS client auth in the OS X OpenSSL port.
This introduces a openssl_platform_key.h that looks up and wraps a platform private key from the platform key store and returns an EVP_PKEY. It is implemented on Mac and left as a stub on Windows. This will be refactored with https://crbug.com/394131. The USE_OPENSSL_CERTS case has been left intact to preserve the existing tests on Linux but, possibly after the refactor, this will need to change as Linux and CrOS will likely still use OpenSSL handles for X509Certificate but will not likely want the OpenSSLClientKeyStore hack. BUG=394131 Review URL: https://codereview.chromium.org/396803002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@286112 0039d316-1c4b-4281-b951-d872f2087c98
- Loading branch information
davidben@chromium.org
committed
Jul 29, 2014
1 parent
1813c4f
commit 97a854f
Showing
13 changed files
with
577 additions
and
50 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
// Copyright 2014 The Chromium Authors. All rights reserved. | ||
// Use of this source code is governed by a BSD-style license that can be | ||
// found in the LICENSE file. | ||
|
||
#ifndef NET_SSL_OPENSSL_PLATFORM_KEY_H_ | ||
#define NET_SSL_OPENSSL_PLATFORM_KEY_H_ | ||
|
||
#include "crypto/scoped_openssl_types.h" | ||
|
||
namespace net { | ||
|
||
class X509Certificate; | ||
|
||
// Looks up the private key from the platform key store corresponding | ||
// to |certificate|'s public key. Then wraps it in an OpenSSL EVP_PKEY | ||
// structure to be used for SSL client auth. | ||
// | ||
// TODO(davidben): This combines looking up a private key with | ||
// wrapping it in an OpenSSL structure. This will be separated with | ||
// https://crbug.com/394131 | ||
crypto::ScopedEVP_PKEY FetchClientCertPrivateKey( | ||
const X509Certificate* certificate); | ||
|
||
} // namespace net | ||
|
||
#endif // NET_SSL_OPENSSL_PLATFORM_KEY_H_ |
Oops, something went wrong.