Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(140)

Side by Side Diff: remoting/protocol/authenticator.h

Issue 2724223003: Disconnect all users if too many connection requests are received for It2Me (Closed)
Patch Set: Fixing another non-Windows build error Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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_AUTHENTICATOR_H_ 5 #ifndef REMOTING_PROTOCOL_AUTHENTICATOR_H_
6 #define REMOTING_PROTOCOL_AUTHENTICATOR_H_ 6 #define REMOTING_PROTOCOL_AUTHENTICATOR_H_
7 7
8 #include <memory> 8 #include <memory>
9 #include <string> 9 #include <string>
10 10
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 // When GetNextMessage() is called: 46 // When GetNextMessage() is called:
47 // MESSAGE_READY -> WAITING_MESSAGE 47 // MESSAGE_READY -> WAITING_MESSAGE
48 // MESSAGE_READY -> ACCEPTED 48 // MESSAGE_READY -> ACCEPTED
49 enum State { 49 enum State {
50 // Waiting for the next message from the peer. 50 // Waiting for the next message from the peer.
51 WAITING_MESSAGE, 51 WAITING_MESSAGE,
52 52
53 // Next message is ready to be sent to the peer. 53 // Next message is ready to be sent to the peer.
54 MESSAGE_READY, 54 MESSAGE_READY,
55 55
56 // Session is authenticated successufully. 56 // Session is authenticated successfully.
57 ACCEPTED, 57 ACCEPTED,
58 58
59 // Session is rejected. 59 // Session is rejected.
60 REJECTED, 60 REJECTED,
61 61
62 // Asynchronously processing the last message from the peer. 62 // Asynchronously processing the last message from the peer.
63 PROCESSING_MESSAGE, 63 PROCESSING_MESSAGE,
64 }; 64 };
65 65
66 enum RejectionReason { 66 enum RejectionReason {
67 INVALID_CREDENTIALS, 67 INVALID_CREDENTIALS,
68 INVALID_ACCOUNT, 68 INVALID_ACCOUNT,
69 PROTOCOL_ERROR, 69 PROTOCOL_ERROR,
70 REJECTED_BY_USER, 70 REJECTED_BY_USER,
71 TOO_MANY_CONNECTIONS,
Sergey Ulanov 2017/03/15 22:25:33 Maybe add comments for each rejection reason? They
joedow 2017/03/16 21:32:18 Done.
71 }; 72 };
72 73
73 // Callback used for layered Authenticator implementations, particularly 74 // Callback used for layered Authenticator implementations, particularly
74 // third-party and pairing authenticators. They use this callback to create 75 // third-party and pairing authenticators. They use this callback to create
75 // base SPAKE2 authenticators. 76 // base SPAKE2 authenticators.
76 typedef base::Callback<std::unique_ptr<Authenticator>( 77 typedef base::Callback<std::unique_ptr<Authenticator>(
77 const std::string& shared_secret, 78 const std::string& shared_secret,
78 Authenticator::State initial_state)> 79 Authenticator::State initial_state)>
79 CreateBaseAuthenticatorCallback; 80 CreateBaseAuthenticatorCallback;
80 81
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
127 // Factory for Authenticator instances. 128 // Factory for Authenticator instances.
128 class AuthenticatorFactory { 129 class AuthenticatorFactory {
129 public: 130 public:
130 AuthenticatorFactory() {} 131 AuthenticatorFactory() {}
131 virtual ~AuthenticatorFactory() {} 132 virtual ~AuthenticatorFactory() {}
132 133
133 // Called when session-initiate stanza is received to create 134 // Called when session-initiate stanza is received to create
134 // authenticator for the new session. |first_message| specifies 135 // authenticator for the new session. |first_message| specifies
135 // authentication part of the session-initiate stanza so that 136 // authentication part of the session-initiate stanza so that
136 // appropriate type of Authenticator can be chosen for the session 137 // appropriate type of Authenticator can be chosen for the session
137 // (useful when multiple authenticators is supported). Returns nullptr 138 // (useful when multiple authenticators are supported). Returns nullptr
138 // if the |first_message| is invalid and the session should be 139 // if the |first_message| is invalid and the session should be
139 // rejected. ProcessMessage() should be called with |first_message| 140 // rejected. ProcessMessage() should be called with |first_message|
140 // for the result of this method. 141 // for the result of this method.
141 virtual std::unique_ptr<Authenticator> CreateAuthenticator( 142 virtual std::unique_ptr<Authenticator> CreateAuthenticator(
142 const std::string& local_jid, 143 const std::string& local_jid,
143 const std::string& remote_jid) = 0; 144 const std::string& remote_jid) = 0;
144 }; 145 };
145 146
146 } // namespace protocol 147 } // namespace protocol
147 } // namespace remoting 148 } // namespace remoting
148 149
149 #endif // REMOTING_PROTOCOL_AUTHENTICATOR_H_ 150 #endif // REMOTING_PROTOCOL_AUTHENTICATOR_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698