diff options
author | sergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-12-14 00:13:39 +0000 |
---|---|---|
committer | sergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-12-14 00:13:39 +0000 |
commit | 1bc9c7c298b6e67052da148fd4469338c8cb7520 (patch) | |
tree | 6d1918e618d93310029bdd110559a07c0f3e0ca0 /remoting/jingle_glue/iq_sender.cc | |
parent | 4294c531d9eb41613d64c260b8a23d4958009fea (diff) | |
download | chromium_src-1bc9c7c298b6e67052da148fd4469338c8cb7520.zip chromium_src-1bc9c7c298b6e67052da148fd4469338c8cb7520.tar.gz chromium_src-1bc9c7c298b6e67052da148fd4469338c8cb7520.tar.bz2 |
Implement multi-step auth support in PepperSession.
Also added unittests for PepperSession.
BUG=105214
Review URL: http://codereview.chromium.org/8827001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114318 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'remoting/jingle_glue/iq_sender.cc')
-rw-r--r-- | remoting/jingle_glue/iq_sender.cc | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/remoting/jingle_glue/iq_sender.cc b/remoting/jingle_glue/iq_sender.cc index e9e6661..e0e1e5b 100644 --- a/remoting/jingle_glue/iq_sender.cc +++ b/remoting/jingle_glue/iq_sender.cc @@ -68,13 +68,23 @@ void IqSender::RemoveRequest(IqRequest* request) { bool IqSender::OnIncomingStanza(const buzz::XmlElement* stanza) { if (stanza->Name() != buzz::QN_IQ) { - LOG(WARNING) << "Received unexpected non-IQ packet" << stanza->Str(); + LOG(WARNING) << "Received unexpected non-IQ packet " << stanza->Str(); + return false; + } + + const std::string& type = stanza->Attr(buzz::QN_TYPE); + if (type.empty()) { + LOG(WARNING) << "IQ packet missing type " << stanza->Str(); + return false; + } + + if (type != "result" && type != "error") { return false; } const std::string& id = stanza->Attr(buzz::QN_ID); if (id.empty()) { - LOG(WARNING) << "IQ packet missing id" << stanza->Str(); + LOG(WARNING) << "IQ packet missing id " << stanza->Str(); return false; } |