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/host_stub.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/host_stub.h')
-rw-r--r-- | remoting/protocol/host_stub.h | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/remoting/protocol/host_stub.h b/remoting/protocol/host_stub.h index 1a26225..c8fa4ac 100644 --- a/remoting/protocol/host_stub.h +++ b/remoting/protocol/host_stub.h @@ -4,7 +4,7 @@ // Interface of a host that receives commands from a Chromoting client. // -// This interterface handles control messages defined in contro.proto. +// This interface handles control messages defined in contro.proto. #ifndef REMOTING_PROTOCOL_HOST_STUB_H_ #define REMOTING_PROTOCOL_HOST_STUB_H_ @@ -21,15 +21,29 @@ class LocalLoginCredentials; class HostStub { public: - HostStub() {} - virtual ~HostStub() {}; + HostStub(); + virtual ~HostStub(); virtual void SuggestResolution( const SuggestResolutionRequest* msg, Task* done) = 0; virtual void BeginSessionRequest( const LocalLoginCredentials* credentials, Task* done) = 0; + // Called when the client has authenticated with the host to enable the + // client->host control channel. + // Before this is called, only a limited set of control messages will be + // processed. + void OnAuthenticated(); + + // Has the client successfully authenticated with the host? + // I.e., should we be processing control events? + bool authenticated(); + private: + // Initially false, this records whether the client has authenticated with + // the host. + bool authenticated_; + DISALLOW_COPY_AND_ASSIGN(HostStub); }; |