summaryrefslogtreecommitdiffstats
path: root/chrome/browser/sync/notifier
diff options
context:
space:
mode:
authorakalin@chromium.org <akalin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-01 23:25:40 +0000
committerakalin@chromium.org <akalin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-01 23:25:40 +0000
commit80ec3fffc1220f0f9144b1b5762195e1b623abaa (patch)
tree346ed055aa1f2d83146337c3beb122fbc1935057 /chrome/browser/sync/notifier
parentb36c91683d0bfabe9b1f19b619dc71d265452c47 (diff)
downloadchromium_src-80ec3fffc1220f0f9144b1b5762195e1b623abaa.zip
chromium_src-80ec3fffc1220f0f9144b1b5762195e1b623abaa.tar.gz
chromium_src-80ec3fffc1220f0f9144b1b5762195e1b623abaa.tar.bz2
Fix for a problem introduced by 41865 which causes sync notifications
to break for non-gmail.com accounts. BUG=40054 TEST=manual testing Review URL: http://codereview.chromium.org/1558013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@43409 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/sync/notifier')
-rw-r--r--chrome/browser/sync/notifier/communicator/single_login_attempt.cc16
1 files changed, 16 insertions, 0 deletions
diff --git a/chrome/browser/sync/notifier/communicator/single_login_attempt.cc b/chrome/browser/sync/notifier/communicator/single_login_attempt.cc
index de759a6..ff53d68 100644
--- a/chrome/browser/sync/notifier/communicator/single_login_attempt.cc
+++ b/chrome/browser/sync/notifier/communicator/single_login_attempt.cc
@@ -82,6 +82,22 @@ class GaiaOnlySaslHandler : public buzz::SaslHandler {
: NULL;
}
+ virtual bool GetTlsServerInfo(const talk_base::SocketAddress& server,
+ std::string* tls_server_hostname,
+ std::string* tls_server_domain) {
+ std::string server_ip = server.IPAsString();
+ if ((server_ip == buzz::STR_TALK_GOOGLE_COM) ||
+ (server_ip == buzz::STR_TALKX_L_GOOGLE_COM)) {
+ // For Gaia auth, the talk.google.com server expects you to use
+ // "gmail.com" in the stream, and expects the domain certificate
+ // to be "gmail.com" as well.
+ *tls_server_hostname = buzz::STR_GMAIL_COM;
+ *tls_server_domain = buzz::STR_GMAIL_COM;
+ return true;
+ }
+ return false;
+ }
+
private:
std::string username_, token_, token_service_;
};