OLD | NEW |
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 #include "jingle/notifier/base/gaia_token_pre_xmpp_auth.h" | 5 #include "jingle/notifier/base/gaia_token_pre_xmpp_auth.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
11 #include "talk/xmpp/constants.h" | 11 #include "talk/xmpp/constants.h" |
12 #include "talk/xmpp/saslcookiemechanism.h" | 12 #include "talk/xmpp/saslcookiemechanism.h" |
13 #include "webrtc/base/socketaddress.h" | 13 #include "webrtc/base/socketaddress.h" |
14 | 14 |
15 namespace notifier { | 15 namespace notifier { |
16 | 16 |
17 namespace { | 17 namespace { |
18 | 18 |
19 class GaiaCookieMechanism : public buzz::SaslCookieMechanism { | 19 class GaiaCookieMechanism : public buzz::SaslCookieMechanism { |
20 public: | 20 public: |
21 GaiaCookieMechanism(const std::string & mechanism, | 21 GaiaCookieMechanism(const std::string & mechanism, |
22 const std::string & username, | 22 const std::string & username, |
23 const std::string & cookie, | 23 const std::string & cookie, |
24 const std::string & token_service) | 24 const std::string & token_service) |
25 : buzz::SaslCookieMechanism( | 25 : buzz::SaslCookieMechanism( |
26 mechanism, username, cookie, token_service) {} | 26 mechanism, username, cookie, token_service) {} |
27 | 27 |
28 virtual ~GaiaCookieMechanism() {} | 28 virtual ~GaiaCookieMechanism() {} |
29 | 29 |
30 virtual buzz::XmlElement* StartSaslAuth() OVERRIDE { | 30 virtual buzz::XmlElement* StartSaslAuth() override { |
31 buzz::XmlElement* auth = buzz::SaslCookieMechanism::StartSaslAuth(); | 31 buzz::XmlElement* auth = buzz::SaslCookieMechanism::StartSaslAuth(); |
32 // These attributes are necessary for working with non-gmail gaia | 32 // These attributes are necessary for working with non-gmail gaia |
33 // accounts. | 33 // accounts. |
34 const std::string NS_GOOGLE_AUTH_PROTOCOL( | 34 const std::string NS_GOOGLE_AUTH_PROTOCOL( |
35 "http://www.google.com/talk/protocol/auth"); | 35 "http://www.google.com/talk/protocol/auth"); |
36 const buzz::QName QN_GOOGLE_ALLOW_GENERATED_JID_XMPP_LOGIN( | 36 const buzz::QName QN_GOOGLE_ALLOW_GENERATED_JID_XMPP_LOGIN( |
37 NS_GOOGLE_AUTH_PROTOCOL, "allow-generated-jid"); | 37 NS_GOOGLE_AUTH_PROTOCOL, "allow-generated-jid"); |
38 const buzz::QName QN_GOOGLE_AUTH_CLIENT_USES_FULL_BIND_RESULT( | 38 const buzz::QName QN_GOOGLE_AUTH_CLIENT_USES_FULL_BIND_RESULT( |
39 NS_GOOGLE_AUTH_PROTOCOL, "client-uses-full-bind-result"); | 39 NS_GOOGLE_AUTH_PROTOCOL, "client-uses-full-bind-result"); |
40 auth->SetAttr(QN_GOOGLE_ALLOW_GENERATED_JID_XMPP_LOGIN, "true"); | 40 auth->SetAttr(QN_GOOGLE_ALLOW_GENERATED_JID_XMPP_LOGIN, "true"); |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
109 | 109 |
110 buzz::SaslMechanism* GaiaTokenPreXmppAuth::CreateSaslMechanism( | 110 buzz::SaslMechanism* GaiaTokenPreXmppAuth::CreateSaslMechanism( |
111 const std::string& mechanism) { | 111 const std::string& mechanism) { |
112 if (mechanism == auth_mechanism_) | 112 if (mechanism == auth_mechanism_) |
113 return new GaiaCookieMechanism( | 113 return new GaiaCookieMechanism( |
114 mechanism, username_, token_, token_service_); | 114 mechanism, username_, token_, token_service_); |
115 return NULL; | 115 return NULL; |
116 } | 116 } |
117 | 117 |
118 } // namespace notifier | 118 } // namespace notifier |
OLD | NEW |