diff options
Diffstat (limited to 'Swiften/StreamStack')
| -rw-r--r-- | Swiften/StreamStack/HighLayer.h | 3 | ||||
| -rw-r--r-- | Swiften/StreamStack/LowLayer.h | 3 | ||||
| -rw-r--r-- | Swiften/StreamStack/StreamStack.h | 3 | ||||
| -rw-r--r-- | Swiften/StreamStack/TLSLayer.cpp | 4 | ||||
| -rw-r--r-- | Swiften/StreamStack/TLSLayer.h | 1 | ||||
| -rw-r--r-- | Swiften/StreamStack/UnitTest/StreamStackTest.cpp | 4 | ||||
| -rw-r--r-- | Swiften/StreamStack/UnitTest/XMPPLayerTest.cpp | 6 | ||||
| -rw-r--r-- | Swiften/StreamStack/XMPPLayer.cpp | 12 | ||||
| -rw-r--r-- | Swiften/StreamStack/XMPPLayer.h | 17 | 
9 files changed, 33 insertions, 20 deletions
| diff --git a/Swiften/StreamStack/HighLayer.h b/Swiften/StreamStack/HighLayer.h index 06b1d25..5669592 100644 --- a/Swiften/StreamStack/HighLayer.h +++ b/Swiften/StreamStack/HighLayer.h @@ -7,4 +7,5 @@  #pragma once +#include <Swiften/Base/API.h>  #include <Swiften/Base/SafeByteArray.h> @@ -12,5 +13,5 @@ namespace Swift {  	class LowLayer; -	class HighLayer { +	class SWIFTEN_API HighLayer {  			friend class StreamStack; diff --git a/Swiften/StreamStack/LowLayer.h b/Swiften/StreamStack/LowLayer.h index 00960ea..ee3f7d3 100644 --- a/Swiften/StreamStack/LowLayer.h +++ b/Swiften/StreamStack/LowLayer.h @@ -7,4 +7,5 @@  #pragma once +#include <Swiften/Base/API.h>  #include <Swiften/Base/SafeByteArray.h> @@ -12,5 +13,5 @@ namespace Swift {  	class HighLayer; -	class LowLayer { +	class SWIFTEN_API LowLayer {  			friend class StreamStack; diff --git a/Swiften/StreamStack/StreamStack.h b/Swiften/StreamStack/StreamStack.h index 30e17ce..8bbb235 100644 --- a/Swiften/StreamStack/StreamStack.h +++ b/Swiften/StreamStack/StreamStack.h @@ -11,4 +11,5 @@  #include <vector> +#include <Swiften/Base/API.h>  #include <Swiften/Elements/Stanza.h> @@ -18,5 +19,5 @@ namespace Swift {  	class StreamLayer; -	class StreamStack { +	class SWIFTEN_API StreamStack {  		public:  			StreamStack(XMPPLayer* xmppLayer, LowLayer* physicalLayer); diff --git a/Swiften/StreamStack/TLSLayer.cpp b/Swiften/StreamStack/TLSLayer.cpp index 6d416bc..86221ea 100644 --- a/Swiften/StreamStack/TLSLayer.cpp +++ b/Swiften/StreamStack/TLSLayer.cpp @@ -46,4 +46,8 @@ Certificate::ref TLSLayer::getPeerCertificate() const {  } +std::vector<Certificate::ref> TLSLayer::getPeerCertificateChain() const { +	return context->getPeerCertificateChain(); +} +  boost::shared_ptr<CertificateVerificationError> TLSLayer::getPeerCertificateVerificationError() const {  	return context->getPeerCertificateVerificationError(); diff --git a/Swiften/StreamStack/TLSLayer.h b/Swiften/StreamStack/TLSLayer.h index ce0c89b..24978e0 100644 --- a/Swiften/StreamStack/TLSLayer.h +++ b/Swiften/StreamStack/TLSLayer.h @@ -27,4 +27,5 @@ namespace Swift {  			Certificate::ref getPeerCertificate() const; +			std::vector<Certificate::ref> getPeerCertificateChain() const;  			boost::shared_ptr<CertificateVerificationError> getPeerCertificateVerificationError() const; diff --git a/Swiften/StreamStack/UnitTest/StreamStackTest.cpp b/Swiften/StreamStack/UnitTest/StreamStackTest.cpp index 213948a..35146d6 100644 --- a/Swiften/StreamStack/UnitTest/StreamStackTest.cpp +++ b/Swiften/StreamStack/UnitTest/StreamStackTest.cpp @@ -1,4 +1,4 @@  /* - * Copyright (c) 2010 Remko Tronçon + * Copyright (c) 2010-2014 Remko Tronçon   * Licensed under the GNU General Public License v3.   * See Documentation/Licenses/GPLv3.txt for more information. @@ -127,5 +127,5 @@ class StreamStackTest : public CppUnit::TestFixture {  		} -		void handleElement(boost::shared_ptr<Element>) { +		void handleElement(boost::shared_ptr<ToplevelElement>) {  			++elementsReceived_;  		} diff --git a/Swiften/StreamStack/UnitTest/XMPPLayerTest.cpp b/Swiften/StreamStack/UnitTest/XMPPLayerTest.cpp index a6098f1..ced9ec3 100644 --- a/Swiften/StreamStack/UnitTest/XMPPLayerTest.cpp +++ b/Swiften/StreamStack/UnitTest/XMPPLayerTest.cpp @@ -1,4 +1,4 @@  /* - * Copyright (c) 2010 Remko Tronçon + * Copyright (c) 2010-2014 Remko Tronçon   * Licensed under the GNU General Public License v3.   * See Documentation/Licenses/GPLv3.txt for more information. @@ -95,9 +95,9 @@ class XMPPLayerTest : public CppUnit::TestFixture {  		} -		void handleElement(boost::shared_ptr<Element>) { +		void handleElement(boost::shared_ptr<ToplevelElement>) {  			++elementsReceived_;  		} -		void handleElementAndReset(boost::shared_ptr<Element>) { +		void handleElementAndReset(boost::shared_ptr<ToplevelElement>) {  			++elementsReceived_;  			testling_->resetParser(); diff --git a/Swiften/StreamStack/XMPPLayer.cpp b/Swiften/StreamStack/XMPPLayer.cpp index 94afcf9..1f06b06 100644 --- a/Swiften/StreamStack/XMPPLayer.cpp +++ b/Swiften/StreamStack/XMPPLayer.cpp @@ -1,4 +1,4 @@  /* - * Copyright (c) 2010 Remko Tronçon + * Copyright (c) 2010-2014 Remko Tronçon   * Licensed under the GNU General Public License v3.   * See Documentation/Licenses/GPLv3.txt for more information. @@ -16,12 +16,14 @@ XMPPLayer::XMPPLayer(  		PayloadSerializerCollection* payloadSerializers,  		XMLParserFactory* xmlParserFactory, -		StreamType streamType) : +		StreamType streamType, +		bool setExplictNSonTopLevelElements) :  			payloadParserFactories_(payloadParserFactories),   			payloadSerializers_(payloadSerializers),  			xmlParserFactory_(xmlParserFactory), +			setExplictNSonTopLevelElements_(setExplictNSonTopLevelElements),  			resetParserAfterParse_(false),  			inParser_(false) {  	xmppParser_ = new XMPPParser(this, payloadParserFactories_, xmlParserFactory); -	xmppSerializer_ = new XMPPSerializer(payloadSerializers_, streamType); +	xmppSerializer_ = new XMPPSerializer(payloadSerializers_, streamType, setExplictNSonTopLevelElements);  } @@ -39,5 +41,5 @@ void XMPPLayer::writeFooter() {  } -void XMPPLayer::writeElement(boost::shared_ptr<Element> element) { +void XMPPLayer::writeElement(boost::shared_ptr<ToplevelElement> element) {  	writeDataInternal(xmppSerializer_->serializeElement(element));  } @@ -79,5 +81,5 @@ void XMPPLayer::handleStreamStart(const ProtocolHeader& header) {  } -void XMPPLayer::handleElement(boost::shared_ptr<Element> stanza) { +void XMPPLayer::handleElement(boost::shared_ptr<ToplevelElement> stanza) {  	onElement(stanza);  } diff --git a/Swiften/StreamStack/XMPPLayer.h b/Swiften/StreamStack/XMPPLayer.h index 81f0457..13266e4 100644 --- a/Swiften/StreamStack/XMPPLayer.h +++ b/Swiften/StreamStack/XMPPLayer.h @@ -1,4 +1,4 @@  /* - * Copyright (c) 2010 Remko Tronçon + * Copyright (c) 2010-2014 Remko Tronçon   * Licensed under the GNU General Public License v3.   * See Documentation/Licenses/GPLv3.txt for more information. @@ -11,7 +11,8 @@  #include <boost/noncopyable.hpp> +#include <Swiften/Base/API.h>  #include <Swiften/StreamStack/HighLayer.h>  #include <Swiften/Base/SafeByteArray.h> -#include <Swiften/Elements/Element.h> +#include <Swiften/Elements/ToplevelElement.h>  #include <Swiften/Elements/StreamType.h>  #include <Swiften/Parser/XMPPParserClient.h> @@ -26,5 +27,5 @@ namespace Swift {  	class BOSHSessionStream; -	class XMPPLayer : public XMPPParserClient, public HighLayer, boost::noncopyable { +	class SWIFTEN_API XMPPLayer : public XMPPParserClient, public HighLayer, boost::noncopyable {  		friend class BOSHSessionStream;  		public: @@ -33,10 +34,11 @@ namespace Swift {  					PayloadSerializerCollection* payloadSerializers,  					XMLParserFactory* xmlParserFactory, -					StreamType streamType); +					StreamType streamType, +					bool setExplictNSonTopLevelElements = false);  			~XMPPLayer();  			void writeHeader(const ProtocolHeader& header);  			void writeFooter(); -			void writeElement(boost::shared_ptr<Element>); +			void writeElement(boost::shared_ptr<ToplevelElement>);  			void writeData(const std::string& data); @@ -49,5 +51,5 @@ namespace Swift {  		public:  			boost::signal<void (const ProtocolHeader&)> onStreamStart; -			boost::signal<void (boost::shared_ptr<Element>)> onElement; +			boost::signal<void (boost::shared_ptr<ToplevelElement>)> onElement;  			boost::signal<void (const SafeByteArray&)> onWriteData;  			boost::signal<void (const SafeByteArray&)> onDataRead; @@ -56,5 +58,5 @@ namespace Swift {  		private:  			void handleStreamStart(const ProtocolHeader&); -			void handleElement(boost::shared_ptr<Element>); +			void handleElement(boost::shared_ptr<ToplevelElement>);  			void handleStreamEnd(); @@ -67,4 +69,5 @@ namespace Swift {  			XMLParserFactory* xmlParserFactory_;  			XMPPSerializer* xmppSerializer_; +			bool setExplictNSonTopLevelElements_;  			bool resetParserAfterParse_;  			bool inParser_; | 
 Swift
 Swift