OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef REMOTING_PROTOCOL_SSL_HMAC_CHANNEL_AUTHENTICATOR_H_ | 5 #ifndef REMOTING_PROTOCOL_SSL_HMAC_CHANNEL_AUTHENTICATOR_H_ |
6 #define REMOTING_PROTOCOL_SSL_HMAC_CHANNEL_AUTHENTICATOR_H_ | 6 #define REMOTING_PROTOCOL_SSL_HMAC_CHANNEL_AUTHENTICATOR_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/callback.h" | 10 #include "base/callback.h" |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
47 // channel. | 47 // channel. |
48 static scoped_ptr<SslHmacChannelAuthenticator> CreateForClient( | 48 static scoped_ptr<SslHmacChannelAuthenticator> CreateForClient( |
49 const std::string& remote_cert, | 49 const std::string& remote_cert, |
50 const std::string& auth_key); | 50 const std::string& auth_key); |
51 | 51 |
52 static scoped_ptr<SslHmacChannelAuthenticator> CreateForHost( | 52 static scoped_ptr<SslHmacChannelAuthenticator> CreateForHost( |
53 const std::string& local_cert, | 53 const std::string& local_cert, |
54 crypto::RSAPrivateKey* local_private_key, | 54 crypto::RSAPrivateKey* local_private_key, |
55 const std::string& auth_key); | 55 const std::string& auth_key); |
56 | 56 |
57 // TODO(sergeyu): This method is used only for the legacy | |
58 // V1Authenticator. Remove it when V1Authenticator is removed. | |
59 void SetLegacyOneWayMode(LegacyMode legacy_mode); | |
60 | |
61 virtual ~SslHmacChannelAuthenticator(); | 57 virtual ~SslHmacChannelAuthenticator(); |
62 | 58 |
63 // ChannelAuthenticator interface. | 59 // ChannelAuthenticator interface. |
64 virtual void SecureAndAuthenticate( | 60 virtual void SecureAndAuthenticate( |
65 scoped_ptr<net::StreamSocket> socket, | 61 scoped_ptr<net::StreamSocket> socket, |
66 const DoneCallback& done_callback) OVERRIDE; | 62 const DoneCallback& done_callback) OVERRIDE; |
67 | 63 |
68 private: | 64 private: |
69 SslHmacChannelAuthenticator(const std::string& auth_key); | 65 SslHmacChannelAuthenticator(const std::string& auth_key); |
70 | 66 |
(...skipping 17 matching lines...) Expand all Loading... |
88 std::string auth_key_; | 84 std::string auth_key_; |
89 | 85 |
90 // Used in the SERVER mode only. | 86 // Used in the SERVER mode only. |
91 std::string local_cert_; | 87 std::string local_cert_; |
92 crypto::RSAPrivateKey* local_private_key_; | 88 crypto::RSAPrivateKey* local_private_key_; |
93 | 89 |
94 // Used in the CLIENT mode only. | 90 // Used in the CLIENT mode only. |
95 std::string remote_cert_; | 91 std::string remote_cert_; |
96 scoped_ptr<net::CertVerifier> cert_verifier_; | 92 scoped_ptr<net::CertVerifier> cert_verifier_; |
97 | 93 |
98 LegacyMode legacy_mode_; | |
99 | |
100 scoped_ptr<net::SSLSocket> socket_; | 94 scoped_ptr<net::SSLSocket> socket_; |
101 DoneCallback done_callback_; | 95 DoneCallback done_callback_; |
102 | 96 |
103 scoped_refptr<net::DrainableIOBuffer> auth_write_buf_; | 97 scoped_refptr<net::DrainableIOBuffer> auth_write_buf_; |
104 scoped_refptr<net::GrowableIOBuffer> auth_read_buf_; | 98 scoped_refptr<net::GrowableIOBuffer> auth_read_buf_; |
105 | 99 |
106 DISALLOW_COPY_AND_ASSIGN(SslHmacChannelAuthenticator); | 100 DISALLOW_COPY_AND_ASSIGN(SslHmacChannelAuthenticator); |
107 }; | 101 }; |
108 | 102 |
109 } // namespace protocol | 103 } // namespace protocol |
110 } // namespace remoting | 104 } // namespace remoting |
111 | 105 |
112 #endif // REMOTING_PROTOCOL_SSL_HMAC_CHANNEL_AUTHENTICATOR_H_ | 106 #endif // REMOTING_PROTOCOL_SSL_HMAC_CHANNEL_AUTHENTICATOR_H_ |
OLD | NEW |