Index: chrome/browser/sync/engine/authenticator.cc |
=================================================================== |
--- chrome/browser/sync/engine/authenticator.cc (revision 58702) |
+++ chrome/browser/sync/engine/authenticator.cc (working copy) |
@@ -1,110 +0,0 @@ |
-// Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "chrome/browser/sync/engine/authenticator.h" |
- |
-#include "chrome/browser/sync/engine/net/server_connection_manager.h" |
-#include "chrome/browser/sync/engine/syncproto.h" |
-#include "chrome/browser/sync/protocol/sync.pb.h" |
-#include "chrome/browser/sync/util/user_settings.h" |
-#include "chrome/common/deprecated/event_sys-inl.h" |
-#include "chrome/common/net/gaia/gaia_authenticator.h" |
- |
-namespace browser_sync { |
- |
-using std::string; |
- |
-Authenticator::Authenticator(ServerConnectionManager* manager, |
- UserSettings* settings) |
- : server_connection_manager_(manager), settings_(settings) { |
-} |
- |
-Authenticator::Authenticator(ServerConnectionManager* manager) |
- : server_connection_manager_(manager), settings_(NULL) { |
-} |
- |
-Authenticator::AuthenticationResult Authenticator::Authenticate() { |
- // TODO(sync): Pull and work with saved credentials. |
- return NO_SAVED_CREDENTIALS; |
-} |
- |
-Authenticator::AuthenticationResult Authenticator::Authenticate( |
- string username, string password) { |
- // TODO(sync): need to figure out if this routine is used anywhere other |
- // than the test code. |
- gaia::GaiaAuthenticator auth_service("ChromiumBrowser", "chromiumsync", |
- "https://www.google.com:443/accounts/ClientLogin"); |
- auth_service.set_message_loop(MessageLoop::current()); |
- if (!auth_service.Authenticate(username, password)) { |
- return UNSPECIFIC_ERROR_RETURN; |
- } |
- CHECK(!auth_service.auth_token().empty()); |
- return AuthenticateToken(auth_service.auth_token()); |
-} |
- |
-COMPILE_ASSERT(sync_pb::ClientToServerResponse::ErrorType_MAX == 7, |
- client_to_server_response_errors_changed); |
- |
-Authenticator::AuthenticationResult Authenticator::HandleSuccessfulTokenRequest( |
- const sync_pb::UserIdentification* user) { |
- display_email_ = user->has_email() ? user->email() : ""; |
- display_name_ = user->has_display_name() ? user->display_name() : ""; |
- obfuscated_id_ = user->has_obfuscated_id() ? user->obfuscated_id() : ""; |
- return SUCCESS; |
-} |
- |
-Authenticator::AuthenticationResult Authenticator::AuthenticateToken( |
- string auth_token) { |
- ClientToServerMessage client_to_server_message; |
- // Used to be required for all requests. |
- client_to_server_message.set_share(""); |
- client_to_server_message.set_message_contents( |
- ClientToServerMessage::AUTHENTICATE); |
- |
- string tx, rx; |
- client_to_server_message.SerializeToString(&tx); |
- HttpResponse http_response; |
- |
- ServerConnectionManager::PostBufferParams params = |
- { tx, &rx, &http_response }; |
- ScopedServerStatusWatcher watch(server_connection_manager_, &http_response); |
- if (!server_connection_manager_->PostBufferWithAuth(¶ms, auth_token, |
- &watch)) { |
- LOG(WARNING) << "Error posting from authenticator:" << http_response; |
- return SERVICE_DOWN; |
- } |
- sync_pb::ClientToServerResponse response; |
- if (!response.ParseFromString(rx)) |
- return CORRUPT_SERVER_RESPONSE; |
- |
- switch (response.error_code()) { |
- case sync_pb::ClientToServerResponse::SUCCESS: |
- if (response.has_authenticate() && response.authenticate().has_user()) |
- return HandleSuccessfulTokenRequest(&response.authenticate().user()); |
- // TODO:(sync) make this CORRUPT_SERVER_RESPONSE when all servers are |
- // returning user identification at login time. |
- return SUCCESS; |
- case sync_pb::ClientToServerResponse::USER_NOT_ACTIVATED: |
- return USER_NOT_ACTIVATED; |
- case sync_pb::ClientToServerResponse::AUTH_INVALID: |
- case sync_pb::ClientToServerResponse::AUTH_EXPIRED: |
- // TODO(tim): This is an egregious layering violation (bug 35060). |
- http_response.server_status = HttpResponse::SYNC_AUTH_ERROR; |
- return BAD_AUTH_TOKEN; |
- // should never happen (no birthday in this request). |
- case sync_pb::ClientToServerResponse::NOT_MY_BIRTHDAY: |
- // should never happen (auth isn't throttled). |
- case sync_pb::ClientToServerResponse::THROTTLED: |
- // should never happen (only for stores). |
- case sync_pb::ClientToServerResponse::ACCESS_DENIED: |
- // should never happen (only sent on get updates / commit) |
- case sync_pb::ClientToServerResponse::CLEAR_PENDING: |
- default: |
- LOG(ERROR) << "Corrupt Server packet received by auth, error code " << |
- response.error_code(); |
- return CORRUPT_SERVER_RESPONSE; |
- } |
-} |
- |
-} // namespace browser_sync |