| Index: talk/app/webrtc/test/fakedtlsidentitystore.h
|
| diff --git a/talk/app/webrtc/test/fakedtlsidentitystore.h b/talk/app/webrtc/test/fakedtlsidentitystore.h
|
| index 5ef19004a0c3abd3b8bda1a6697384f8deec09dc..91410da0c0177c8b96465ac081cd67fa53cf2fd4 100644
|
| --- a/talk/app/webrtc/test/fakedtlsidentitystore.h
|
| +++ b/talk/app/webrtc/test/fakedtlsidentitystore.h
|
| @@ -30,6 +30,7 @@
|
|
|
| #include <string>
|
|
|
| +#include "talk/app/webrtc/dtlscertificate.h"
|
| #include "talk/app/webrtc/dtlsidentitystore.h"
|
| #include "talk/app/webrtc/peerconnectioninterface.h"
|
|
|
| @@ -88,6 +89,25 @@ class FakeDtlsIdentityStore : public webrtc::DtlsIdentityStoreInterface,
|
| this, should_fail_ ? MSG_FAILURE : MSG_SUCCESS, msg);
|
| }
|
|
|
| + static rtc::scoped_refptr<webrtc::DtlsCertificate> GenerateCertificate() {
|
| + std::string cert;
|
| + std::string key;
|
| + GenerateIdentity(&cert, &key);
|
| +
|
| + std::string pem_cert = rtc::SSLIdentity::DerToPem(
|
| + rtc::kPemTypeCertificate,
|
| + reinterpret_cast<const unsigned char*>(cert.data()),
|
| + cert.length());
|
| + std::string pem_key = rtc::SSLIdentity::DerToPem(
|
| + rtc::kPemTypeRsaPrivateKey,
|
| + reinterpret_cast<const unsigned char*>(key.data()),
|
| + key.length());
|
| + rtc::scoped_ptr<rtc::SSLIdentity> identity(
|
| + rtc::SSLIdentity::FromPEMStrings(pem_key, pem_cert));
|
| +
|
| + return webrtc::DtlsCertificate::Create(identity.Pass());
|
| + }
|
| +
|
| private:
|
| enum {
|
| MSG_SUCCESS,
|
| @@ -116,6 +136,15 @@ class FakeDtlsIdentityStore : public webrtc::DtlsIdentityStoreInterface,
|
| delete message_data;
|
| }
|
|
|
| + static void GenerateIdentity(
|
| + std::string* der_cert,
|
| + std::string* der_key) {
|
| + rtc::SSLIdentity::PemToDer("CERTIFICATE", kCERT_PEM, der_cert);
|
| + rtc::SSLIdentity::PemToDer("RSA PRIVATE KEY",
|
| + kRSA_PRIVATE_KEY_PEM,
|
| + der_key);
|
| + }
|
| +
|
| bool should_fail_;
|
| };
|
|
|
|
|