1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef NET_SPDY_SPDY_CREDENTIAL_BUILDER_H_
6 #define NET_SPDY_SPDY_CREDENTIAL_BUILDER_H_
10 #include "net/base/net_export.h"
11 #include "net/base/ssl_client_cert_type.h"
15 class SSLClientSocket
;
16 struct SpdyCredential
;
18 // This class provides facilities for building the various fields of
19 // SPDY CREDENTIAL frames.
20 class NET_EXPORT_PRIVATE SpdyCredentialBuilder
{
22 static int Build(const std::string
& tls_unique
,
23 SSLClientCertType type
,
24 const std::string
& key
,
25 const std::string
& cert
,
27 SpdyCredential
* credential
);
30 friend class SpdyCredentialBuilderTest
;
32 // Returns the secret data to be signed as part of a credential frame.
33 static std::string
GetCredentialSecret(const std::string
& tls_unique
);
38 #endif // NET_SPDY_SPDY_CREDENTIAL_BUILDER_H_