diff options
author | Mili Verma <mili.verma@isode.com> | 2015-06-22 13:06:58 (GMT) |
---|---|---|
committer | Kevin Smith <kevin.smith@isode.com> | 2015-06-30 07:06:06 (GMT) |
commit | a3564b7aca44f5ccab3881e6f723dfb64bf66884 (patch) | |
tree | b92c151a77842d521615c9c5e9b5a4bfb70ea477 /Swiften | |
parent | 394642c69bc232429621e209b787d3496967b37b (diff) | |
download | swift-a3564b7aca44f5ccab3881e6f723dfb64bf66884.zip swift-a3564b7aca44f5ccab3881e6f723dfb64bf66884.tar.bz2 |
Remove when sending an empty response
In RFC 6120, there are only 2 places where "=" is allowed - in the initial
client auth and in the final server success response.
While testing challenge response exchanges in Kerberos, it was seen that Swift
was adding an '=' in other empty responses. This patch fixes it by sending an
empty response instead of an '='.
Test-information:
Tested on Windows using a WIP GSSAPI authentication exchange with M-Link.
Change-Id: I1f82bddbd1380361cbe43e45a2804156249582ae
Diffstat (limited to 'Swiften')
-rw-r--r-- | Swiften/Serializer/AuthResponseSerializer.cpp | 4 | ||||
-rw-r--r-- | Swiften/Serializer/UnitTest/AuthResponseSerializerTest.cpp | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/Swiften/Serializer/AuthResponseSerializer.cpp b/Swiften/Serializer/AuthResponseSerializer.cpp index 9c9418b..818c6d4 100644 --- a/Swiften/Serializer/AuthResponseSerializer.cpp +++ b/Swiften/Serializer/AuthResponseSerializer.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010-2014 Isode Limited. + * Copyright (c) 2010-2015 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ @@ -22,7 +22,7 @@ SafeByteArray AuthResponseSerializer::serialize(boost::shared_ptr<ToplevelElemen boost::optional<SafeByteArray> message = authResponse->getValue(); if (message) { if ((*message).empty()) { - value = createSafeByteArray("="); + value = createSafeByteArray(""); } else { value = Base64::encode(*message); diff --git a/Swiften/Serializer/UnitTest/AuthResponseSerializerTest.cpp b/Swiften/Serializer/UnitTest/AuthResponseSerializerTest.cpp index 65508d0..4dfb04d 100644 --- a/Swiften/Serializer/UnitTest/AuthResponseSerializerTest.cpp +++ b/Swiften/Serializer/UnitTest/AuthResponseSerializerTest.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010 Isode Limited. + * Copyright (c) 2010-2015 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ @@ -49,7 +49,7 @@ class AuthResponseSerializerTest : public CppUnit::TestFixture { CPPUNIT_ASSERT_EQUAL(createSafeByteArray( "<response xmlns=\"urn:ietf:params:xml:ns:xmpp-sasl\">" - "=" + "" "</response>"), testling.serialize(authResponse)); } }; |