diff options
author | garykac@chromium.org <garykac@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-04 21:31:44 +0000 |
---|---|---|
committer | garykac@chromium.org <garykac@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-04 21:31:44 +0000 |
commit | f0a9d1b2f35d1a0ae2c532b86fb3fd78b1c5465b (patch) | |
tree | cdbb2dde6847f6f36f8a0f8f6fe33d0192382b7a /remoting/protocol/connection_to_client.h | |
parent | 0e5eeb0f24d0874a2ff2e8f491d0d7fbd1921527 (diff) | |
download | chromium_src-f0a9d1b2f35d1a0ae2c532b86fb3fd78b1c5465b.zip chromium_src-f0a9d1b2f35d1a0ae2c532b86fb3fd78b1c5465b.tar.gz chromium_src-f0a9d1b2f35d1a0ae2c532b86fb3fd78b1c5465b.tar.bz2 |
Block event processing on host/client until the client has authenticated.
Input events:
* Client will not send them
* Host will not process them
Control events:
* Client will only process BeginSessionResponse
* Host will only process BeginSessionRequest
All other control messages will be ignored.
BUG=72466
TEST=manual+tests
Review URL: http://codereview.chromium.org/6594138
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76974 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'remoting/protocol/connection_to_client.h')
-rw-r--r-- | remoting/protocol/connection_to_client.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/remoting/protocol/connection_to_client.h b/remoting/protocol/connection_to_client.h index b7aa052..d2721f3 100644 --- a/remoting/protocol/connection_to_client.h +++ b/remoting/protocol/connection_to_client.h @@ -72,9 +72,8 @@ class ConnectionToClient : // Return pointer to ClientStub. virtual ClientStub* client_stub(); - protected: - // Protected constructor used by unit test. - ConnectionToClient(); + // Called when the host accepts the client authentication. + void OnClientAuthenticated(); private: // Callback for protocol Session. @@ -85,6 +84,11 @@ class ConnectionToClient : void OnClosed(); + // Initially false, this is set to true once the client has authenticated + // properly. When this is false, many client messages (like input events) + // will be ignored. + bool client_authenticated_; + // The libjingle channel used to send and receive data from the remote client. scoped_refptr<Session> session_; |