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

Side by Side Diff: net/http/http_auth_handler_factory.h

Issue 1128043007: Support Kerberos on Android (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix Android GN build Created 5 years, 6 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 NET_HTTP_HTTP_AUTH_HANDLER_FACTORY_H_ 5 #ifndef NET_HTTP_HTTP_AUTH_HANDLER_FACTORY_H_
6 #define NET_HTTP_HTTP_AUTH_HANDLER_FACTORY_H_ 6 #define NET_HTTP_HTTP_AUTH_HANDLER_FACTORY_H_
7 7
8 #include <map> 8 #include <map>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
162 // |security_manager| is used by the NTLM and Negotiate authenticators 162 // |security_manager| is used by the NTLM and Negotiate authenticators
163 // to determine which servers Integrated Authentication can be used with. If 163 // to determine which servers Integrated Authentication can be used with. If
164 // NULL, Integrated Authentication will not be used with any server. 164 // NULL, Integrated Authentication will not be used with any server.
165 // 165 //
166 // |host_resolver| is used by the Negotiate authentication handler to perform 166 // |host_resolver| is used by the Negotiate authentication handler to perform
167 // CNAME lookups to generate a Kerberos SPN for the server. If the "negotiate" 167 // CNAME lookups to generate a Kerberos SPN for the server. If the "negotiate"
168 // scheme is used and |negotiate_disable_cname_lookup| is false, 168 // scheme is used and |negotiate_disable_cname_lookup| is false,
169 // |host_resolver| must not be NULL. 169 // |host_resolver| must not be NULL.
170 // 170 //
171 // |gssapi_library_name| specifies the name of the GSSAPI library that will 171 // |gssapi_library_name| specifies the name of the GSSAPI library that will
172 // be loaded on all platforms except Windows. 172 // be loaded on Posix platforms other than Android, or of the SSPI library
173 // that will be loaded on Windows.
cbentzel 2015/06/30 12:53:55 The SSPI portion of this comment is incorrect. Cou
aberent 2015/07/02 21:13:36 Done.
174 //
175 // |auth_android_negotiate_account_type| is an Android account type, used to
176 // find the appropriate authenticator service on Android.
cbentzel 2015/06/30 12:53:55 Comment that this is ignored on non-Android platfo
aberent 2015/07/02 21:13:36 Done.
173 // 177 //
174 // |negotiate_disable_cname_lookup| and |negotiate_enable_port| both control 178 // |negotiate_disable_cname_lookup| and |negotiate_enable_port| both control
175 // how Negotiate does SPN generation, by default these should be false. 179 // how Negotiate does SPN generation, by default these should be false.
176 static HttpAuthHandlerRegistryFactory* Create( 180 static HttpAuthHandlerRegistryFactory* Create(
177 const std::vector<std::string>& supported_schemes, 181 const std::vector<std::string>& supported_schemes,
178 URLSecurityManager* security_manager, 182 URLSecurityManager* security_manager,
179 HostResolver* host_resolver, 183 HostResolver* host_resolver,
180 const std::string& gssapi_library_name, 184 const std::string& gssapi_library_name,
185 const std::string& auth_android_negotiate_account_type,
181 bool negotiate_disable_cname_lookup, 186 bool negotiate_disable_cname_lookup,
182 bool negotiate_enable_port); 187 bool negotiate_enable_port);
183 188
184 // Creates an auth handler by dispatching out to the registered factories 189 // Creates an auth handler by dispatching out to the registered factories
185 // based on the first token in |challenge|. 190 // based on the first token in |challenge|.
186 int CreateAuthHandler(HttpAuthChallengeTokenizer* challenge, 191 int CreateAuthHandler(HttpAuthChallengeTokenizer* challenge,
187 HttpAuth::Target target, 192 HttpAuth::Target target,
188 const GURL& origin, 193 const GURL& origin,
189 CreateReason reason, 194 CreateReason reason,
190 int digest_nonce_count, 195 int digest_nonce_count,
191 const BoundNetLog& net_log, 196 const BoundNetLog& net_log,
192 scoped_ptr<HttpAuthHandler>* handler) override; 197 scoped_ptr<HttpAuthHandler>* handler) override;
193 198
194 private: 199 private:
195 typedef std::map<std::string, HttpAuthHandlerFactory*> FactoryMap; 200 typedef std::map<std::string, HttpAuthHandlerFactory*> FactoryMap;
196 201
197 FactoryMap factory_map_; 202 FactoryMap factory_map_;
198 DISALLOW_COPY_AND_ASSIGN(HttpAuthHandlerRegistryFactory); 203 DISALLOW_COPY_AND_ASSIGN(HttpAuthHandlerRegistryFactory);
199 }; 204 };
200 205
201 } // namespace net 206 } // namespace net
202 207
203 #endif // NET_HTTP_HTTP_AUTH_HANDLER_FACTORY_H_ 208 #endif // NET_HTTP_HTTP_AUTH_HANDLER_FACTORY_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698