Index: libraries/win32/gloox/include/gloox/adhoc.h =================================================================== --- libraries/win32/gloox/include/gloox/adhoc.h +++ libraries/win32/gloox/include/gloox/adhoc.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -416,7 +416,7 @@ * @param remote The requester's JID. * @param command The response. The Adhoc object will own and delete the * command object pointed to. - * @param error An optional Error obejct to include. + * @param error An optional Error object to include. */ void respond( const JID& remote, const Adhoc::Command* command, const Error* error = 0 ); Index: libraries/win32/gloox/include/gloox/adhoccommandprovider.h =================================================================== --- libraries/win32/gloox/include/gloox/adhoccommandprovider.h +++ libraries/win32/gloox/include/gloox/adhoccommandprovider.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -45,6 +45,7 @@ * This function is called when an Ad-hoc Command needs to be handled. * The callee is responsible for the whole command execution, i.e. session * handling etc. + * To reply, use Adhoc::respond(). * @param from The sender of the command request. * @param command The name of the command to be executed. * @param sessionID The session ID. Either newly generated or taken from the command. @@ -61,8 +62,7 @@ * @return @b True if the remote entity is allowed to see the command, @b false if not. * @note The return value of this function does not influence * the execution of a command. That is, you have to - * implement additional access control at the execution - * stage. + * implement additional access control at execution stage. * @note This function should not block. */ virtual bool handleAdhocAccessRequest( const JID& from, const std::string& command ) Index: libraries/win32/gloox/include/gloox/adhochandler.h =================================================================== --- libraries/win32/gloox/include/gloox/adhochandler.h +++ libraries/win32/gloox/include/gloox/adhochandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/adhocplugin.h =================================================================== --- libraries/win32/gloox/include/gloox/adhocplugin.h +++ libraries/win32/gloox/include/gloox/adhocplugin.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2015 by Jakob Schröter + Copyright (c) 2015-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -40,7 +40,9 @@ public: /** - * + * Creazes a new Adhoc Plugin of the given type. + * @param type This should be a StanzaExtension type, i.e. the type of StanzaExtension the plugin will + * hold. */ AdhocPlugin( int type ) : StanzaExtension( type ) {} Index: libraries/win32/gloox/include/gloox/amp.h =================================================================== --- libraries/win32/gloox/include/gloox/amp.h +++ libraries/win32/gloox/include/gloox/amp.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/annotations.h =================================================================== --- libraries/win32/gloox/include/gloox/annotations.h +++ libraries/win32/gloox/include/gloox/annotations.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/annotationshandler.h =================================================================== --- libraries/win32/gloox/include/gloox/annotationshandler.h +++ libraries/win32/gloox/include/gloox/annotationshandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/atomicrefcount.h =================================================================== --- libraries/win32/gloox/include/gloox/atomicrefcount.h +++ libraries/win32/gloox/include/gloox/atomicrefcount.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/attention.h =================================================================== --- libraries/win32/gloox/include/gloox/attention.h +++ libraries/win32/gloox/include/gloox/attention.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2009-2015 by Jakob Schröter + Copyright (c) 2009-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/base64.h =================================================================== --- libraries/win32/gloox/include/gloox/base64.h +++ libraries/win32/gloox/include/gloox/base64.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/bookmarkhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/bookmarkhandler.h +++ libraries/win32/gloox/include/gloox/bookmarkhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/bookmarkstorage.h =================================================================== --- libraries/win32/gloox/include/gloox/bookmarkstorage.h +++ libraries/win32/gloox/include/gloox/bookmarkstorage.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/bytestream.h =================================================================== --- libraries/win32/gloox/include/gloox/bytestream.h +++ libraries/win32/gloox/include/gloox/bytestream.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/bytestreamdatahandler.h =================================================================== --- libraries/win32/gloox/include/gloox/bytestreamdatahandler.h +++ libraries/win32/gloox/include/gloox/bytestreamdatahandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -54,6 +54,17 @@ virtual void handleBytestreamData( Bytestream* bs, const std::string& data ) = 0; /** + * Reimplement this function to be notified when the remote end has + * received and acknowledged a single data packet. This packet may be + * smaller than the chunk that was fed into Bytream::send() due to internal + * chunk size limits. so this callback may be called multiple times for + * each call to Bytestream::send(). it can be used to implement burst limits. + * @param bs The bytestream. + * @since 1.0.20 + */ + virtual void handleBytestreamDataAck( Bytestream* bs ) {} + + /** * Notifies about an error occuring while using a bytestream. * When this handler is called the stream has already been closed. * @param bs The bytestream. Index: libraries/win32/gloox/include/gloox/bytestreamhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/bytestreamhandler.h +++ libraries/win32/gloox/include/gloox/bytestreamhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/capabilities.h =================================================================== --- libraries/win32/gloox/include/gloox/capabilities.h +++ libraries/win32/gloox/include/gloox/capabilities.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/carbons.h =================================================================== --- libraries/win32/gloox/include/gloox/carbons.h +++ libraries/win32/gloox/include/gloox/carbons.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2013-2015 by Jakob Schröter + Copyright (c) 2013-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/chatstate.h =================================================================== --- libraries/win32/gloox/include/gloox/chatstate.h +++ libraries/win32/gloox/include/gloox/chatstate.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/chatstatefilter.h =================================================================== --- libraries/win32/gloox/include/gloox/chatstatefilter.h +++ libraries/win32/gloox/include/gloox/chatstatefilter.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -44,7 +44,7 @@ { public: /** - * Contstructs a new Chat State filter for a MessageSession. + * Constructs a new Chat State filter for a MessageSession. * @param parent The MessageSession to decorate. */ ChatStateFilter( MessageSession* parent ); Index: libraries/win32/gloox/include/gloox/chatstatehandler.h =================================================================== --- libraries/win32/gloox/include/gloox/chatstatehandler.h +++ libraries/win32/gloox/include/gloox/chatstatehandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/client.h =================================================================== --- libraries/win32/gloox/include/gloox/client.h +++ libraries/win32/gloox/include/gloox/client.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -293,6 +293,35 @@ void setPresence() { sendPresence( m_presence ); } /** + * Use this function to indicate a client state of 'active' to the Server. + * See @xep{0352} for more information. + * This function is a no-op if the server does not support Client State Indication (i.e. nothing is sent). + * Use hasClientStateIndication() to find out. + * @since 1.0.19 + */ + void setActive() { if( hasClientStateIndication() ) + send( new Tag( "active", XMLNS, XMLNS_CLIENT_STATE_INDICATION ) ); } + + /** + * Use this function to indicate a client state of 'inactive' to the Server. + * See @xep{0352} for more information. + * This function is a no-op if the server does not support Client State Indication (i.e. nothing is sent). + * Use hasClientStateIndication() to find out. + * @since 1.0.19 + */ + void setInactive() { if( hasClientStateIndication() ) + send( new Tag( "inactive", XMLNS, XMLNS_CLIENT_STATE_INDICATION ) ); } + + /** + * Use this function to find out whether the server supports Client State Indication (@xep{0352}). + * @return @b True if the server supports @xep{0352}, @b false if not. + * XEP Version: 0.2 + * @since 1.0.19 + */ + bool hasClientStateIndication() const { + return ((m_streamFeatures & StreamFeatureClientStateIndication) == StreamFeatureClientStateIndication); } + + /** * Returns the current presence. * @return The current presence. */ @@ -483,7 +512,6 @@ Presence m_presence; - bool m_resourceBound; bool m_forceNonSasl; bool m_manageRoster; Index: libraries/win32/gloox/include/gloox/clientbase.h =================================================================== --- libraries/win32/gloox/include/gloox/clientbase.h +++ libraries/win32/gloox/include/gloox/clientbase.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -895,6 +895,7 @@ bool m_compress; /**< Whether stream compression * is desired at all. */ bool m_authed; /**< Whether authentication has been completed successfully. */ + bool m_resourceBound; /**< Whether resource binding has been completed successfully. */ bool m_block; /**< Whether blocking connection is wanted. */ bool m_sasl; /**< Whether SASL authentication is wanted. */ TLSPolicy m_tls; /**< The current TLS policy. */ @@ -1095,7 +1096,7 @@ std::string m_ntlmDomain; bool m_customConnection; - int m_uniqueBaseId; + std::string m_uniqueBaseId; util::AtomicRefCount m_nextId; int m_smSent; Index: libraries/win32/gloox/include/gloox/component.h =================================================================== --- libraries/win32/gloox/include/gloox/component.h +++ libraries/win32/gloox/include/gloox/component.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/compressionbase.h =================================================================== --- libraries/win32/gloox/include/gloox/compressionbase.h +++ libraries/win32/gloox/include/gloox/compressionbase.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/compressiondatahandler.h =================================================================== --- libraries/win32/gloox/include/gloox/compressiondatahandler.h +++ libraries/win32/gloox/include/gloox/compressiondatahandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/compressiondefault.h =================================================================== --- libraries/win32/gloox/include/gloox/compressiondefault.h +++ libraries/win32/gloox/include/gloox/compressiondefault.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2015 by Jakob Schröter + * Copyright (c) 2009-2017 by Jakob Schröter * This file is part of the gloox library. http://camaya.net/gloox * * This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/compressionzlib.h =================================================================== --- libraries/win32/gloox/include/gloox/compressionzlib.h +++ libraries/win32/gloox/include/gloox/compressionzlib.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/config.h =================================================================== --- libraries/win32/gloox/include/gloox/config.h +++ libraries/win32/gloox/include/gloox/config.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2009-2015 by Jakob Schröter + Copyright (c) 2009-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/connectionbase.h =================================================================== --- libraries/win32/gloox/include/gloox/connectionbase.h +++ libraries/win32/gloox/include/gloox/connectionbase.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/connectionbosh.h =================================================================== --- libraries/win32/gloox/include/gloox/connectionbosh.h +++ libraries/win32/gloox/include/gloox/connectionbosh.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2007-2015 by Jakob Schröter + * Copyright (c) 2007-2017 by Jakob Schröter * This file is part of the gloox library. http://camaya.net/gloox * * This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/connectiondatahandler.h =================================================================== --- libraries/win32/gloox/include/gloox/connectiondatahandler.h +++ libraries/win32/gloox/include/gloox/connectiondatahandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/connectionhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/connectionhandler.h +++ libraries/win32/gloox/include/gloox/connectionhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/connectionhttpproxy.h =================================================================== --- libraries/win32/gloox/include/gloox/connectionhttpproxy.h +++ libraries/win32/gloox/include/gloox/connectionhttpproxy.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/connectionlistener.h =================================================================== --- libraries/win32/gloox/include/gloox/connectionlistener.h +++ libraries/win32/gloox/include/gloox/connectionlistener.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/connectionsocks5proxy.h =================================================================== --- libraries/win32/gloox/include/gloox/connectionsocks5proxy.h +++ libraries/win32/gloox/include/gloox/connectionsocks5proxy.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/connectiontcpbase.h =================================================================== --- libraries/win32/gloox/include/gloox/connectiontcpbase.h +++ libraries/win32/gloox/include/gloox/connectiontcpbase.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -19,6 +19,10 @@ #include "logsink.h" #include "mutex.h" +#ifdef __MINGW32__ +#include +#endif + #include namespace gloox Index: libraries/win32/gloox/include/gloox/connectiontcpclient.h =================================================================== --- libraries/win32/gloox/include/gloox/connectiontcpclient.h +++ libraries/win32/gloox/include/gloox/connectiontcpclient.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/connectiontcpserver.h =================================================================== --- libraries/win32/gloox/include/gloox/connectiontcpserver.h +++ libraries/win32/gloox/include/gloox/connectiontcpserver.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -67,7 +67,7 @@ private: ConnectionTCPServer &operator=( const ConnectionTCPServer & ); - + ConnectionHandler* m_connectionHandler; }; Index: libraries/win32/gloox/include/gloox/connectiontls.h =================================================================== --- libraries/win32/gloox/include/gloox/connectiontls.h +++ libraries/win32/gloox/include/gloox/connectiontls.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2007-2015 by Jakob Schröter + * Copyright (c) 2007-2017 by Jakob Schröter * This file is part of the gloox library. http://camaya.net/gloox * * This software is distributed under a license. The full license @@ -113,7 +113,8 @@ /** * Sets the transport connection. - * @param connection The transport connection to use. + * @param connection The transport connection to use. A potentially previously set connection + * will be deleted. */ void setConnectionImpl( ConnectionBase* connection ); Index: libraries/win32/gloox/include/gloox/connectiontlsserver.h =================================================================== --- libraries/win32/gloox/include/gloox/connectiontlsserver.h +++ libraries/win32/gloox/include/gloox/connectiontlsserver.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2015 by Jakob Schröter + * Copyright (c) 2009-2017 by Jakob Schröter * This file is part of the gloox library. http://camaya.net/gloox * * This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/dataform.h =================================================================== --- libraries/win32/gloox/include/gloox/dataform.h +++ libraries/win32/gloox/include/gloox/dataform.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/dataformfield.h =================================================================== --- libraries/win32/gloox/include/gloox/dataformfield.h +++ libraries/win32/gloox/include/gloox/dataformfield.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/dataformfieldcontainer.h =================================================================== --- libraries/win32/gloox/include/gloox/dataformfieldcontainer.h +++ libraries/win32/gloox/include/gloox/dataformfieldcontainer.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/dataformitem.h =================================================================== --- libraries/win32/gloox/include/gloox/dataformitem.h +++ libraries/win32/gloox/include/gloox/dataformitem.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/dataformreported.h =================================================================== --- libraries/win32/gloox/include/gloox/dataformreported.h +++ libraries/win32/gloox/include/gloox/dataformreported.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/delayeddelivery.h =================================================================== --- libraries/win32/gloox/include/gloox/delayeddelivery.h +++ libraries/win32/gloox/include/gloox/delayeddelivery.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -122,7 +122,7 @@ JID m_from; std::string m_stamp; std::string m_reason; - bool m_valid; + }; } Index: libraries/win32/gloox/include/gloox/disco.h =================================================================== --- libraries/win32/gloox/include/gloox/disco.h +++ libraries/win32/gloox/include/gloox/disco.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/discohandler.h =================================================================== --- libraries/win32/gloox/include/gloox/discohandler.h +++ libraries/win32/gloox/include/gloox/discohandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/disconodehandler.h =================================================================== --- libraries/win32/gloox/include/gloox/disconodehandler.h +++ libraries/win32/gloox/include/gloox/disconodehandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/dns.h =================================================================== --- libraries/win32/gloox/include/gloox/dns.h +++ libraries/win32/gloox/include/gloox/dns.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/error.h =================================================================== --- libraries/win32/gloox/include/gloox/error.h +++ libraries/win32/gloox/include/gloox/error.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -83,6 +83,12 @@ const Tag* appError() const { return m_appError; } /** + * Sets the application-specific error condition of a stanza error. + * @param appError The application-specific error element of a stanza error. The Error object will own and delete the Tag. + */ + void setAppError( Tag* appError ); + + /** * Returns the text of a error stanza for the given language if available. * If the requested language is not available, the default text (without * a xml:lang attribute) will be returned. @@ -136,4 +142,4 @@ } -#endif /* ERROR_H__ */ +#endif // ERROR_H__ Index: libraries/win32/gloox/include/gloox/event.h =================================================================== --- libraries/win32/gloox/include/gloox/event.h +++ libraries/win32/gloox/include/gloox/event.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2008-2015 by Jakob Schröter + Copyright (c) 2008-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/eventdispatcher.h =================================================================== --- libraries/win32/gloox/include/gloox/eventdispatcher.h +++ libraries/win32/gloox/include/gloox/eventdispatcher.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2008-2015 by Jakob Schröter + Copyright (c) 2008-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/eventhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/eventhandler.h +++ libraries/win32/gloox/include/gloox/eventhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2008-2015 by Jakob Schröter + Copyright (c) 2008-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/featureneg.h =================================================================== --- libraries/win32/gloox/include/gloox/featureneg.h +++ libraries/win32/gloox/include/gloox/featureneg.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/flexoff.h =================================================================== --- libraries/win32/gloox/include/gloox/flexoff.h +++ libraries/win32/gloox/include/gloox/flexoff.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/flexoffhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/flexoffhandler.h +++ libraries/win32/gloox/include/gloox/flexoffhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/forward.h =================================================================== --- libraries/win32/gloox/include/gloox/forward.h +++ libraries/win32/gloox/include/gloox/forward.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2013-2015 by Jakob Schröter + Copyright (c) 2013-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/gloox.h =================================================================== --- libraries/win32/gloox/include/gloox/gloox.h +++ libraries/win32/gloox/include/gloox/gloox.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -284,7 +284,7 @@ * and @link gloox::GPGEncrypted GPGEncrypted @endlink) * @li @xep{0030} @link gloox::Disco Service Discovery @endlink * @li @xep{0045} @link gloox::MUCRoom Multi-User Chat @endlink - * @li @xep{0047} Used with @ref filetransfer_sec + * @li @xep{0047} In-Band Bytestreams, used with @ref filetransfer_sec * @li @xep{0048} @link gloox::BookmarkStorage Bookmark Storage @endlink * @li @xep{0049} @link gloox::PrivateXML Private XML Storage @endlink * @li @xep{0050} @link gloox::Adhoc Ad-hoc Commands @endlink @@ -296,7 +296,7 @@ * @li @xep{0077} @link gloox::Registration In-Band Registration @endlink * @li @xep{0078} Non-SASL Authentication (automatically used if the server does not support SASL) * @li @xep{0079} @link gloox::AMP Advanced Message Processing @endlink - * @li @xep{0083} Nested Roster Groups (automatically used if supported by the server. see + * @li @xep{0083} Nested Roster Groups (automatically used if supported by the server, see * @link gloox::RosterManager::delimiter() RosterManager @endlink) * @li @xep{0085} Chat State Notifications (see @link gloox::MessageSession MessageSession @endlink for * examples) @@ -321,12 +321,13 @@ * @li @xep{0198} Stream Management (integrated into @link gloox::Client @endlink) * @li @xep{0199} @link gloox::ClientBase::xmppPing() XMPP Ping @endlink * @li @xep{0203} @link gloox::DelayedDelivery Delayed Delivery @endlink (new spec) - * @li @xep{0206} @link gloox::ConnectionBOSH see BOSH @endlink + * @li @xep{0206} XMPP Over BOSH, see @link gloox::ConnectionBOSH BOSH @endlink * @li @xep{0224} @link gloox::Attention Attention @endlink * @li @xep{0234} @link gloox::Jingle::FileTransfer Jingle File Transfer @endlink * @li @xep{0256} @link gloox::LastActivity::Query Last Activity in Presence @endlink * @li @xep{0280} @link gloox::Carbons Message Carbons @endlink * @li @xep{0297} @link gloox::Forward Stanza Forwarding @endlink + * @li @xep{0352} @link gloox::Client::hasClientStateIndication() Client State Indication @endlink * * Further extensions can easily be implemented using * @link gloox::StanzaExtension StanzaExtensions @endlink. @@ -603,10 +604,13 @@ /** Message Carbons namespace (@xep{0280}) */ GLOOX_API extern const std::string XMLNS_MESSAGE_CARBONS; + /** Client State Indication namespace (@xep{0352}) */ + GLOOX_API extern const std::string XMLNS_CLIENT_STATE_INDICATION; + /** Use of Cryptographic Hash Functions in XMPP namespace (@xep{0300}) */ GLOOX_API extern const std::string XMLNS_HASHES; - /** IO Data (@xep 0244) */ + /** IO Data (@xep{0244}) */ GLOOX_API extern const std::string XMLNS_IODATA; /** Supported stream version (major). */ @@ -728,19 +732,20 @@ */ enum StreamFeature { - StreamFeatureBind = 1, /**< The server supports resource binding. */ - StreamFeatureUnbind = 2, /**< The server supports binding multiple resources. */ - StreamFeatureSession = 4, /**< The server supports sessions. */ - StreamFeatureStartTls = 8, /**< The server supports <starttls>. */ - StreamFeatureIqRegister = 16, /**< The server supports @xep{0077} (In-Band - * Registration). */ - StreamFeatureIqAuth = 32, /**< The server supports @xep{0078} (Non-SASL - * Authentication). */ - StreamFeatureCompressZlib = 64, /**< The server supports @xep{0138} (Stream - * Compression) (Zlib). */ - StreamFeatureCompressDclz = 128, /**< The server supports @xep{0138} (Stream - * Compression) (LZW/DCLZ). */ - StreamFeatureStreamManagement = 256 /**< The server supports @xep{0198} (Stream Management). */ + StreamFeatureBind = 1, /**< The server supports resource binding. */ + StreamFeatureUnbind = 2, /**< The server supports binding multiple resources. */ + StreamFeatureSession = 4, /**< The server supports sessions. */ + StreamFeatureStartTls = 8, /**< The server supports <starttls>. */ + StreamFeatureIqRegister = 16, /**< The server supports @xep{0077} (In-Band + * Registration). */ + StreamFeatureIqAuth = 32, /**< The server supports @xep{0078} (Non-SASL + * Authentication). */ + StreamFeatureCompressZlib = 64, /**< The server supports @xep{0138} (Stream + * Compression) (Zlib). */ + StreamFeatureCompressDclz = 128, /**< The server supports @xep{0138} (Stream + * Compression) (LZW/DCLZ). */ + StreamFeatureStreamManagement = 256, /**< The server supports @xep{0198} (Stream Management). */ + StreamFeatureClientStateIndication = 512 /**< The server supports @xep{0352} (Client State Indication). */ // SaslMechanism below must be adjusted accordingly. }; @@ -751,8 +756,8 @@ enum SaslMechanism { SaslMechNone = 0, /**< Invalid SASL Mechanism. */ - SaslMechScramSha1 = 2048, /**< SASL SCRAM-SHA-1-PLUS accroding to RFC 5801 */ - SaslMechScramSha1Plus = 1024, /**< SASL SCRAM-SHA-1 accroding to RFC 5801 */ + SaslMechScramSha1 = 1024, /**< SASL SCRAM-SHA-1 accroding to RFC 5801 */ + SaslMechScramSha1Plus = 2048, /**< SASL SCRAM-SHA-1-PLUS accroding to RFC 5801 */ SaslMechDigestMd5 = 4096, /**< SASL Digest-MD5 according to RFC 2831. */ SaslMechPlain = 8192, /**< SASL PLAIN according to RFC 2595 Section 6. */ SaslMechAnonymous = 16384, /**< SASL ANONYMOUS according to draft-ietf-sasl-anon-05.txt/ @@ -764,7 +769,7 @@ }; /** - * This decribes stream error conditions as defined in RFC 3920 Sec. 4.7.3. + * This describes stream error conditions as defined in RFC 3920 Sec. 4.7.3. */ enum StreamError { @@ -988,9 +993,11 @@ std::string issuer; /**< The name of the issuing entity.*/ std::string server; /**< The server the certificate has been issued for. */ int date_from; /**< The date from which onwards the certificate is valid - * (UNIX timestamp; UTC; not set when using OpenSSL). */ + * (UNIX timestamp; UTC; not set when using OpenSSL). + * @todo Change type to time_t or long? */ int date_to; /**< The date up to which the certificate is valid - * (UNIX timestamp; UTC; not set when using OpenSSL). */ + * (UNIX timestamp; UTC; not set when using OpenSSL). + * @todo Change type to time_t or long? */ std::string protocol; /**< The encryption protocol used for the connection. */ std::string cipher; /**< The cipher used for the connection. */ std::string mac; /**< The MAC used for the connection. */ Index: libraries/win32/gloox/include/gloox/glooxversion.h =================================================================== --- libraries/win32/gloox/include/gloox/glooxversion.h +++ libraries/win32/gloox/include/gloox/glooxversion.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2009-2015 by Jakob Schröter + Copyright (c) 2009-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -10,4 +10,4 @@ This software is distributed without any warranty. */ -#define GLOOXVERSION 0x010013 +#define GLOOXVERSION 0x010020 Index: libraries/win32/gloox/include/gloox/gpgencrypted.h =================================================================== --- libraries/win32/gloox/include/gloox/gpgencrypted.h +++ libraries/win32/gloox/include/gloox/gpgencrypted.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/gpgsigned.h =================================================================== --- libraries/win32/gloox/include/gloox/gpgsigned.h +++ libraries/win32/gloox/include/gloox/gpgsigned.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/inbandbytestream.h =================================================================== --- libraries/win32/gloox/include/gloox/inbandbytestream.h +++ libraries/win32/gloox/include/gloox/inbandbytestream.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -52,15 +52,16 @@ virtual ~InBandBytestream(); /** - * Lets you retrieve this bytestream's block-size. + * Lets you retrieve this bytestream's block-size. The default is 4096 bytes. * @return The bytestream's block-size. */ int blockSize() const { return m_blockSize; } /** - * Sets the stream's block-size. Default: 4096 + * Sets the stream's block-size. Default: 4096 bytes. Maximum allowed block-size: 65535 bytes * @param blockSize The new block size. - * @note You should not change the block size once connect() has been called. + * @note You should not change the block size once connect() has been called. Though neither + * the block-size limit nor changing it mid-stream are enforced by this function. */ void setBlockSize( int blockSize ) { m_blockSize = blockSize; } Index: libraries/win32/gloox/include/gloox/instantmucroom.h =================================================================== --- libraries/win32/gloox/include/gloox/instantmucroom.h +++ libraries/win32/gloox/include/gloox/instantmucroom.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/iodata.h =================================================================== --- libraries/win32/gloox/include/gloox/iodata.h +++ libraries/win32/gloox/include/gloox/iodata.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2015 by Jakob Schröter + Copyright (c) 2015-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -25,7 +25,7 @@ { /** - * @brief This is an abstraction of the IO Data specification @xep{0153}. + * @brief This is an abstraction of the IO Data specification @xep{0244}. * * This abstraction can be used to implement IO Data on top of Data Forms. * @@ -94,6 +94,8 @@ /** * Sets the 'input' tag. If an 'input' tag was previosuly set, it is deleted before the new one is set. + * Alternatively, if your input consists of more than one element, you can embed these into an + * <in> tag with no namespace. * @param in The new 'input' tag. * @note The @c in tag will be owned by this IOData instance. Clone it if you need it somewhere else. */ @@ -108,6 +110,8 @@ /** * Sets the 'output' tag. If an 'output' tag was previosuly set, it is deleted before the new one is set. + * Alternatively, if your output consists of more than one element, you can embed these into an + * <out> tag with no namespace. * @param out The new 'output' tag. * @note The @c out tag will be owned by this IOData instance. Clone it if you need it somewhere else. */ @@ -122,7 +126,9 @@ /** * Sets the 'error' tag. If an 'error' tag was previosuly set, it is deleted before the new one is set. - * @param out The new 'error' tag. + * Alternatively, if your error consists of more than one element, you can embed these into an + * <error> tag with no namespace. + * @param error The new 'error' tag. * @note The @c error tag will be owned by this IOData instance. Clone it if you need it somewhere else. */ void setError( Tag* error ); Index: libraries/win32/gloox/include/gloox/iq.h =================================================================== --- libraries/win32/gloox/include/gloox/iq.h +++ libraries/win32/gloox/include/gloox/iq.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/iqhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/iqhandler.h +++ libraries/win32/gloox/include/gloox/iqhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -40,7 +40,7 @@ * Reimplement this function if you want to be notified about incoming IQs. * @param iq The complete IQ stanza. * @return Indicates whether a request of type 'get' or 'set' has been handled. This includes - * the obligatory 'result' answer. If you return @b false, an 'error' will be sent. + * the obligatory 'result' answer. If you return @b false, an 'error' will be sent back. * @since 1.0 */ virtual bool handleIq( const IQ& iq ) = 0; @@ -49,7 +49,7 @@ * Reimplement this function if you want to be notified about * incoming IQs with a specific value of the @c id attribute. You * have to enable tracking of those IDs using Client::trackID(). - * This is usually useful for IDs that generate a positive reply, i.e. + * This is usually useful for IDs that generate a empty positive reply, i.e. * <iq type='result' id='reg'/> where a namespace filter wouldn't * work. * @param iq The complete IQ stanza. Index: libraries/win32/gloox/include/gloox/jid.h =================================================================== --- libraries/win32/gloox/include/gloox/jid.h +++ libraries/win32/gloox/include/gloox/jid.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/jinglecontent.h =================================================================== --- libraries/win32/gloox/include/gloox/jinglecontent.h +++ libraries/win32/gloox/include/gloox/jinglecontent.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2008-2015 by Jakob Schröter + Copyright (c) 2008-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/jinglefiletransfer.h =================================================================== --- libraries/win32/gloox/include/gloox/jinglefiletransfer.h +++ libraries/win32/gloox/include/gloox/jinglefiletransfer.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2013-2015 by Jakob Schröter + Copyright (c) 2013-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/jingleiceudp.h =================================================================== --- libraries/win32/gloox/include/gloox/jingleiceudp.h +++ libraries/win32/gloox/include/gloox/jingleiceudp.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2013-2015 by Jakob Schröter + Copyright (c) 2013-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/jingleplugin.h =================================================================== --- libraries/win32/gloox/include/gloox/jingleplugin.h +++ libraries/win32/gloox/include/gloox/jingleplugin.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2008-2015 by Jakob Schröter + Copyright (c) 2008-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -31,6 +31,9 @@ class Plugin; class PluginFactory; + /** + * The type of Jingle plugin. + */ enum JinglePluginType { PluginNone, /**< Invalid plugin type. */ Index: libraries/win32/gloox/include/gloox/jinglepluginfactory.h =================================================================== --- libraries/win32/gloox/include/gloox/jinglepluginfactory.h +++ libraries/win32/gloox/include/gloox/jinglepluginfactory.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2013-2015 by Jakob Schröter + Copyright (c) 2013-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/jinglesession.h =================================================================== --- libraries/win32/gloox/include/gloox/jinglesession.h +++ libraries/win32/gloox/include/gloox/jinglesession.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -432,7 +432,7 @@ /** * Accepts an incoming session with the given list of contents. - * @param content A list of Content objects that describe the accepted session parameters. + * @param plugins A list of Content objects that describe the accepted session parameters. * These objects will be owned and deleted by this Session instance. * @return @b False if a prerequisite is not met, @b true otherwise. */ Index: libraries/win32/gloox/include/gloox/jinglesessionhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/jinglesessionhandler.h +++ libraries/win32/gloox/include/gloox/jinglesessionhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2008-2015 by Jakob Schröter + Copyright (c) 2008-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/jinglesessionmanager.h =================================================================== --- libraries/win32/gloox/include/gloox/jinglesessionmanager.h +++ libraries/win32/gloox/include/gloox/jinglesessionmanager.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2013-2015 by Jakob Schröter + Copyright (c) 2013-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/lastactivity.h =================================================================== --- libraries/win32/gloox/include/gloox/lastactivity.h +++ libraries/win32/gloox/include/gloox/lastactivity.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/lastactivityhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/lastactivityhandler.h +++ libraries/win32/gloox/include/gloox/lastactivityhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/linklocal.h =================================================================== --- libraries/win32/gloox/include/gloox/linklocal.h +++ libraries/win32/gloox/include/gloox/linklocal.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015 by Jakob Schröter + Copyright (c) 2012-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/linklocalclient.h =================================================================== --- libraries/win32/gloox/include/gloox/linklocalclient.h +++ libraries/win32/gloox/include/gloox/linklocalclient.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015 by Jakob Schröter + Copyright (c) 2012-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -67,7 +67,7 @@ * @param service The service to connect to. * @param type The service type. * @param domain The service's domain. - * @param interface The network interface the service was found on. May be 0 to try + * @param iface The network interface the service was found on. May be 0 to try * to resolve the service on all available interfaces. * @return @b True if resolving the service could be started successfully, @b false otherwise. * @note Use this function only for @b outgoing connections. Index: libraries/win32/gloox/include/gloox/linklocalhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/linklocalhandler.h +++ libraries/win32/gloox/include/gloox/linklocalhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015 by Jakob Schröter + Copyright (c) 2012-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/linklocalmanager.h =================================================================== --- libraries/win32/gloox/include/gloox/linklocalmanager.h +++ libraries/win32/gloox/include/gloox/linklocalmanager.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2012-2015 by Jakob Schröter + Copyright (c) 2012-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/loghandler.h =================================================================== --- libraries/win32/gloox/include/gloox/loghandler.h +++ libraries/win32/gloox/include/gloox/loghandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/logsink.h =================================================================== --- libraries/win32/gloox/include/gloox/logsink.h +++ libraries/win32/gloox/include/gloox/logsink.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/macros.h =================================================================== --- libraries/win32/gloox/include/gloox/macros.h +++ libraries/win32/gloox/include/gloox/macros.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/message.h =================================================================== --- libraries/win32/gloox/include/gloox/message.h +++ libraries/win32/gloox/include/gloox/message.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/messageevent.h =================================================================== --- libraries/win32/gloox/include/gloox/messageevent.h +++ libraries/win32/gloox/include/gloox/messageevent.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -59,6 +59,12 @@ */ int event() const { return m_event; } + /** + * Returns the event's ID. + * @return The event's ID. + */ + std::string id() const { return m_id; } + // reimplemented from StanzaExtension virtual const std::string& filterString() const; Index: libraries/win32/gloox/include/gloox/messageeventfilter.h =================================================================== --- libraries/win32/gloox/include/gloox/messageeventfilter.h +++ libraries/win32/gloox/include/gloox/messageeventfilter.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/messageeventhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/messageeventhandler.h +++ libraries/win32/gloox/include/gloox/messageeventhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/messagefilter.h =================================================================== --- libraries/win32/gloox/include/gloox/messagefilter.h +++ libraries/win32/gloox/include/gloox/messagefilter.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/messagehandler.h =================================================================== --- libraries/win32/gloox/include/gloox/messagehandler.h +++ libraries/win32/gloox/include/gloox/messagehandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/messagesession.h =================================================================== --- libraries/win32/gloox/include/gloox/messagesession.h +++ libraries/win32/gloox/include/gloox/messagesession.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/messagesessionhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/messagesessionhandler.h +++ libraries/win32/gloox/include/gloox/messagesessionhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/mucinvitationhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/mucinvitationhandler.h +++ libraries/win32/gloox/include/gloox/mucinvitationhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/mucmessagesession.h =================================================================== --- libraries/win32/gloox/include/gloox/mucmessagesession.h +++ libraries/win32/gloox/include/gloox/mucmessagesession.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/mucroom.h =================================================================== --- libraries/win32/gloox/include/gloox/mucroom.h +++ libraries/win32/gloox/include/gloox/mucroom.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/mucroomconfighandler.h =================================================================== --- libraries/win32/gloox/include/gloox/mucroomconfighandler.h +++ libraries/win32/gloox/include/gloox/mucroomconfighandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/mucroomhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/mucroomhandler.h +++ libraries/win32/gloox/include/gloox/mucroomhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/mutex.h =================================================================== --- libraries/win32/gloox/include/gloox/mutex.h +++ libraries/win32/gloox/include/gloox/mutex.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/mutexguard.h =================================================================== --- libraries/win32/gloox/include/gloox/mutexguard.h +++ libraries/win32/gloox/include/gloox/mutexguard.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/nickname.h =================================================================== --- libraries/win32/gloox/include/gloox/nickname.h +++ libraries/win32/gloox/include/gloox/nickname.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/nonsaslauth.h =================================================================== --- libraries/win32/gloox/include/gloox/nonsaslauth.h +++ libraries/win32/gloox/include/gloox/nonsaslauth.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/oob.h =================================================================== --- libraries/win32/gloox/include/gloox/oob.h +++ libraries/win32/gloox/include/gloox/oob.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/parser.h =================================================================== --- libraries/win32/gloox/include/gloox/parser.h +++ libraries/win32/gloox/include/gloox/parser.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/prep.h =================================================================== --- libraries/win32/gloox/include/gloox/prep.h +++ libraries/win32/gloox/include/gloox/prep.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/presence.h =================================================================== --- libraries/win32/gloox/include/gloox/presence.h +++ libraries/win32/gloox/include/gloox/presence.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/presencehandler.h =================================================================== --- libraries/win32/gloox/include/gloox/presencehandler.h +++ libraries/win32/gloox/include/gloox/presencehandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/privacyitem.h =================================================================== --- libraries/win32/gloox/include/gloox/privacyitem.h +++ libraries/win32/gloox/include/gloox/privacyitem.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/privacylisthandler.h =================================================================== --- libraries/win32/gloox/include/gloox/privacylisthandler.h +++ libraries/win32/gloox/include/gloox/privacylisthandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/privacymanager.h =================================================================== --- libraries/win32/gloox/include/gloox/privacymanager.h +++ libraries/win32/gloox/include/gloox/privacymanager.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/privatexml.h =================================================================== --- libraries/win32/gloox/include/gloox/privatexml.h +++ libraries/win32/gloox/include/gloox/privatexml.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/privatexmlhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/privatexmlhandler.h +++ libraries/win32/gloox/include/gloox/privatexmlhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/pubsub.h =================================================================== --- libraries/win32/gloox/include/gloox/pubsub.h +++ libraries/win32/gloox/include/gloox/pubsub.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -238,7 +238,7 @@ }; typedef std::list SubscriptionList; - typedef std::map SubscriptionMap; + typedef std::map SubscriptionMap; typedef std::map AffiliationMap; typedef std::list ItemList; Index: libraries/win32/gloox/include/gloox/pubsubevent.h =================================================================== --- libraries/win32/gloox/include/gloox/pubsubevent.h +++ libraries/win32/gloox/include/gloox/pubsubevent.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/pubsubitem.h =================================================================== --- libraries/win32/gloox/include/gloox/pubsubitem.h +++ libraries/win32/gloox/include/gloox/pubsubitem.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -66,6 +66,12 @@ const Tag* payload() const { return m_payload; } /** + * Sets the item's payload. + * @param tag A payload tag. + */ + void setPayload( Tag* tag ); + + /** * Returns the item ID. * @return The item ID. */ @@ -72,6 +78,12 @@ const std::string& id() const { return m_id; } /** + * Sets the item's ID. + * @param id The item's ID. + */ + void setID( const std::string& id ) { m_id = id; } + + /** * Creates and returns a Tag representation of the Item. * @return An XML representation of the Item. */ Index: libraries/win32/gloox/include/gloox/pubsubmanager.h =================================================================== --- libraries/win32/gloox/include/gloox/pubsubmanager.h +++ libraries/win32/gloox/include/gloox/pubsubmanager.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -506,9 +506,9 @@ GetSubscriptionList, GetSubscriberList, SetSubscriberList, - GetAffiliationList, - GetAffiliateList, - SetAffiliateList, + GetAffiliationList, /**< Requests the list of one's own affiliations from a service (XEP-0060 section 5.7) */ + GetAffiliateList, /**< Requests the list of affiliates for a node (XEP-0060 section 8.9.1) */ + SetAffiliateList, /**< Sets/modifies/deletes the list of affiliates for a node (XEP-0060 section 8.9.2 */ GetNodeConfig, SetNodeConfig, DefaultNodeConfig, @@ -586,6 +586,12 @@ */ void setAffiliateList( const AffiliateList& affList ) { m_affList = affList; } + + /** + * Returns the list of affiliates. Don't delete the pointer, it is still owned by PubSubOwner. + * @return The list of affiliates. + */ + const AffiliateList* affiliateList() const { return &m_affList; } // reimplemented from StanzaExtension virtual const std::string& filterString() const; Index: libraries/win32/gloox/include/gloox/pubsubresulthandler.h =================================================================== --- libraries/win32/gloox/include/gloox/pubsubresulthandler.h +++ libraries/win32/gloox/include/gloox/pubsubresulthandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -207,7 +207,7 @@ virtual void handleSubscribers( const std::string& id, const JID& service, const std::string& node, - const SubscriberList* list, + const SubscriptionList& list, const Error* error = 0 ) = 0; /** @@ -236,7 +236,7 @@ * @param list Affiliation list. * @param error Affiliation list retrieval Error. * - * @see Manager::getAffiliations + * @see Manager::getAffiliates */ virtual void handleAffiliates( const std::string& id, const JID& service, Index: libraries/win32/gloox/include/gloox/receipt.h =================================================================== --- libraries/win32/gloox/include/gloox/receipt.h +++ libraries/win32/gloox/include/gloox/receipt.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/registration.h =================================================================== --- libraries/win32/gloox/include/gloox/registration.h +++ libraries/win32/gloox/include/gloox/registration.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/registrationhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/registrationhandler.h +++ libraries/win32/gloox/include/gloox/registrationhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -61,6 +61,9 @@ * the server. */ RegistrationNotAllowed, /**< Password change: The server or service does not allow * password changes. */ + RegistrationConstraint, /**< Resource constraint: The server or recipient lacks the + * system resources necessary to service the request,for + * example if users are not allowed to register accounts so quickly. */ RegistrationUnknownError /**< An unknown error condition occured. */ }; Index: libraries/win32/gloox/include/gloox/resource.h =================================================================== --- libraries/win32/gloox/include/gloox/resource.h +++ libraries/win32/gloox/include/gloox/resource.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -86,6 +86,7 @@ void setStatus( Presence::PresenceType presence ) { m_presence = presence; } void setExtensions( const StanzaExtensionList& exts ) { + util::clearList( m_extensions ); StanzaExtensionList::const_iterator it = exts.begin(); for( ; it != exts.end(); ++it ) { Index: libraries/win32/gloox/include/gloox/rosteritem.h =================================================================== --- libraries/win32/gloox/include/gloox/rosteritem.h +++ libraries/win32/gloox/include/gloox/rosteritem.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/rosteritemdata.h =================================================================== --- libraries/win32/gloox/include/gloox/rosteritemdata.h +++ libraries/win32/gloox/include/gloox/rosteritemdata.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/rosterlistener.h =================================================================== --- libraries/win32/gloox/include/gloox/rosterlistener.h +++ libraries/win32/gloox/include/gloox/rosterlistener.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/rostermanager.h =================================================================== --- libraries/win32/gloox/include/gloox/rostermanager.h +++ libraries/win32/gloox/include/gloox/rostermanager.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/search.h =================================================================== --- libraries/win32/gloox/include/gloox/search.h +++ libraries/win32/gloox/include/gloox/search.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/searchhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/searchhandler.h +++ libraries/win32/gloox/include/gloox/searchhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/sha.h =================================================================== --- libraries/win32/gloox/include/gloox/sha.h +++ libraries/win32/gloox/include/gloox/sha.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/shim.h =================================================================== --- libraries/win32/gloox/include/gloox/shim.h +++ libraries/win32/gloox/include/gloox/shim.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/sihandler.h =================================================================== --- libraries/win32/gloox/include/gloox/sihandler.h +++ libraries/win32/gloox/include/gloox/sihandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/simanager.h =================================================================== --- libraries/win32/gloox/include/gloox/simanager.h +++ libraries/win32/gloox/include/gloox/simanager.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/siprofileft.h =================================================================== --- libraries/win32/gloox/include/gloox/siprofileft.h +++ libraries/win32/gloox/include/gloox/siprofileft.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/siprofilefthandler.h =================================================================== --- libraries/win32/gloox/include/gloox/siprofilefthandler.h +++ libraries/win32/gloox/include/gloox/siprofilefthandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/siprofilehandler.h =================================================================== --- libraries/win32/gloox/include/gloox/siprofilehandler.h +++ libraries/win32/gloox/include/gloox/siprofilehandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/socks5bytestream.h =================================================================== --- libraries/win32/gloox/include/gloox/socks5bytestream.h +++ libraries/win32/gloox/include/gloox/socks5bytestream.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/socks5bytestreammanager.h =================================================================== --- libraries/win32/gloox/include/gloox/socks5bytestreammanager.h +++ libraries/win32/gloox/include/gloox/socks5bytestreammanager.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/socks5bytestreamserver.h =================================================================== --- libraries/win32/gloox/include/gloox/socks5bytestreamserver.h +++ libraries/win32/gloox/include/gloox/socks5bytestreamserver.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/softwareversion.h =================================================================== --- libraries/win32/gloox/include/gloox/softwareversion.h +++ libraries/win32/gloox/include/gloox/softwareversion.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2008-2015 by Jakob Schröter + Copyright (c) 2008-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/stanza.h =================================================================== --- libraries/win32/gloox/include/gloox/stanza.h +++ libraries/win32/gloox/include/gloox/stanza.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -159,9 +159,7 @@ * Creates a Tag representation of the Stanza. The Tag is completely * independent of the Stanza and will not be updated when the Stanza * is modified. - * @return A pointer to a Tag representation. It is the job of the - * - * caller to delete the Tag. + * @return A pointer to a Tag representation. It is the job of the caller to delete the Tag. */ virtual Tag* tag() const = 0; Index: libraries/win32/gloox/include/gloox/stanzaextension.h =================================================================== --- libraries/win32/gloox/include/gloox/stanzaextension.h +++ libraries/win32/gloox/include/gloox/stanzaextension.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -98,7 +98,7 @@ /** * @brief This class abstracts a stanza extension, which is usually - * an element in a specific namespace. + * an XML child element in a specific namespace inside an XMPP stanza. * * This class is the base class for almost all protocol extensions in gloox. * As such, it should be used whenever an add-on to the core XMPP spec @@ -117,10 +117,19 @@ * of the pure virtuals filterString() and newInstance(). To be able to properly use * the encapsulation, some getters may be necessary. Note that the object you will be * dealing with usually is @em const. + * * For sending StanzaExtensions, a custom constructor (as well as some setters, * possibly) is needed. Additionally, an implementation of tag() is required. * - * @li Sub-class StanzaExtension and re-implement filterString(). filterString() + * @li Sub-class StanzaExtension and add at least a constructor that accepots a Tag* + * (so it can parse an incoming extension in XML format), as well as one accepting + * whatever data you need to construct outgoing extension XML. Alternatively to the latter + * (or in addition) you can also add setters, of course. One of the constructors should + * be able to create an empty instance so it can be passed to ClientBase when registering + * your extension type. This empty instance will only be used to create another new instance + * using the Tag* constructor when matching extension XML comes in. + * + * @li Re-implement filterString(). filterString() * is supposed to return an XPath expression that matches the child element * of a stanza that the protocol-to-implement uses. For example, consider this * hypothetical XML format: The protocol is encapsulated inside a <stats> @@ -145,7 +154,7 @@ * @li When subclassing StanzaExtension, you have to initialize it with an int, the extension's * type. You should choose a value that is not yet used in gloox, and unique to * the given extension you implement. In general, you are free to use values - * above @link gloox::ExtUser ExtUser @endlink. See + * above @link gloox::ExtUser ExtUser @endlink, e.g ExtUser+1, etc. See * @link gloox::StanzaExtensionType StanzaExtensionType @endlink for existing values. * * @li The next step is to implement newInstance(). Whenever filterString()'s @@ -176,6 +185,18 @@ * must be reimplemented. The output Tag should -- like the input Tag -- be embeddable * into the respective stanza. * + * @li To actually use this you have to register your new extension with + * ClientBase::registerStanzaExtension(). Here, an empty instance of your class should be + * passed, which will act as a template later (by means of StanzaExtension::clone(), which + * you should reimplement). + * + * @li You can now also register your handlers with ClientBase, + * by using the exttype you used in your subclasses with @link ClientBase::registerIqHandler() registerIqHandler() @endlink, + * @link ClientBase::registerMessageHandler() registerMessageHandler() @endlink, + * @link ClientBase::registerPresenceHandler() registerPresenceHandler() @endlink, or + * @link ClientBase::registerSubscriptionHandler() registerSubscriptionHandler() @endlink. + * ClientBase will then check incoming stanzas against your filter string(s) and call the respective handlers. + * * @author Jakob Schröter * @since 0.9 */ Index: libraries/win32/gloox/include/gloox/stanzaextensionfactory.h =================================================================== --- libraries/win32/gloox/include/gloox/stanzaextensionfactory.h +++ libraries/win32/gloox/include/gloox/stanzaextensionfactory.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/statisticshandler.h =================================================================== --- libraries/win32/gloox/include/gloox/statisticshandler.h +++ libraries/win32/gloox/include/gloox/statisticshandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/subscription.h =================================================================== --- libraries/win32/gloox/include/gloox/subscription.h +++ libraries/win32/gloox/include/gloox/subscription.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/subscriptionhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/subscriptionhandler.h +++ libraries/win32/gloox/include/gloox/subscriptionhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2004-2015 by Jakob Schröter + Copyright (c) 2004-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/tag.h =================================================================== --- libraries/win32/gloox/include/gloox/tag.h +++ libraries/win32/gloox/include/gloox/tag.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -121,7 +121,7 @@ * Returns the attribute's namespace. * @return The attribute's namespace. */ - const std::string& xmlns() const; + const std::string xmlns() const; /** * Sets the attribute's namespace. @@ -283,7 +283,7 @@ * @return The namespace for this element. * @since 1.0 */ - const std::string& xmlns() const; + const std::string xmlns() const; /** * Returns the namespace for the given prefix, or the default namespace if @@ -302,7 +302,7 @@ * The default namespace if an empty prefix is given. * @since 1.0 */ - const std::string& xmlns( const std::string& prefix ) const; + const std::string xmlns( const std::string& prefix ) const; /** * Use this function to add a new attribute to the tag. The Tag will become the owner of the Index: libraries/win32/gloox/include/gloox/taghandler.h =================================================================== --- libraries/win32/gloox/include/gloox/taghandler.h +++ libraries/win32/gloox/include/gloox/taghandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2005-2015 by Jakob Schröter + Copyright (c) 2005-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/tlsbase.h =================================================================== --- libraries/win32/gloox/include/gloox/tlsbase.h +++ libraries/win32/gloox/include/gloox/tlsbase.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/tlsdefault.h =================================================================== --- libraries/win32/gloox/include/gloox/tlsdefault.h +++ libraries/win32/gloox/include/gloox/tlsdefault.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2007-2015 by Jakob Schröter + * Copyright (c) 2007-2017 by Jakob Schröter * This file is part of the gloox library. http://camaya.net/gloox * * This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/tlsgnutlsbase.h =================================================================== --- libraries/win32/gloox/include/gloox/tlsgnutlsbase.h +++ libraries/win32/gloox/include/gloox/tlsgnutlsbase.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/tlsgnutlsclient.h =================================================================== --- libraries/win32/gloox/include/gloox/tlsgnutlsclient.h +++ libraries/win32/gloox/include/gloox/tlsgnutlsclient.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/tlsgnutlsclientanon.h =================================================================== --- libraries/win32/gloox/include/gloox/tlsgnutlsclientanon.h +++ libraries/win32/gloox/include/gloox/tlsgnutlsclientanon.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/tlsgnutlsserveranon.h =================================================================== --- libraries/win32/gloox/include/gloox/tlsgnutlsserveranon.h +++ libraries/win32/gloox/include/gloox/tlsgnutlsserveranon.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/tlshandler.h =================================================================== --- libraries/win32/gloox/include/gloox/tlshandler.h +++ libraries/win32/gloox/include/gloox/tlshandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/tlsopensslbase.h =================================================================== --- libraries/win32/gloox/include/gloox/tlsopensslbase.h +++ libraries/win32/gloox/include/gloox/tlsopensslbase.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2009-2015 by Jakob Schröter + Copyright (c) 2009-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -92,7 +92,7 @@ }; void doTLSOperation( TLSOperation op ); - int openSSLTime2UnixTime( const char* time_string ); + int ASN1Time2UnixTime( ASN1_TIME* time ); std::string m_recvBuffer; std::string m_sendBuffer; Index: libraries/win32/gloox/include/gloox/tlsopensslclient.h =================================================================== --- libraries/win32/gloox/include/gloox/tlsopensslclient.h +++ libraries/win32/gloox/include/gloox/tlsopensslclient.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/tlsopensslserver.h =================================================================== --- libraries/win32/gloox/include/gloox/tlsopensslserver.h +++ libraries/win32/gloox/include/gloox/tlsopensslserver.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2009-2015 by Jakob Schröter + Copyright (c) 2009-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/tlsschannel.h =================================================================== --- libraries/win32/gloox/include/gloox/tlsschannel.h +++ libraries/win32/gloox/include/gloox/tlsschannel.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2007-2015 by Jakob Schröter + * Copyright (c) 2007-2017 by Jakob Schröter * This file is part of the gloox library. http://camaya.net/gloox * * This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/uniquemucroom.h =================================================================== --- libraries/win32/gloox/include/gloox/uniquemucroom.h +++ libraries/win32/gloox/include/gloox/uniquemucroom.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/util.h =================================================================== --- libraries/win32/gloox/include/gloox/util.h +++ libraries/win32/gloox/include/gloox/util.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license @@ -263,7 +263,7 @@ while( output.empty() || value > 0 ) { - output.insert( 0, 1, static_cast( value % base + '0' ) ); + output.insert( static_cast( 0 ), static_cast( 1 ), static_cast( value % base + '0' ) ); value /= base; } Index: libraries/win32/gloox/include/gloox/vcard.h =================================================================== --- libraries/win32/gloox/include/gloox/vcard.h +++ libraries/win32/gloox/include/gloox/vcard.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/vcardhandler.h =================================================================== --- libraries/win32/gloox/include/gloox/vcardhandler.h +++ libraries/win32/gloox/include/gloox/vcardhandler.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/vcardmanager.h =================================================================== --- libraries/win32/gloox/include/gloox/vcardmanager.h +++ libraries/win32/gloox/include/gloox/vcardmanager.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/vcardupdate.h =================================================================== --- libraries/win32/gloox/include/gloox/vcardupdate.h +++ libraries/win32/gloox/include/gloox/vcardupdate.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2006-2015 by Jakob Schröter + Copyright (c) 2006-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license Index: libraries/win32/gloox/include/gloox/xhtmlim.h =================================================================== --- libraries/win32/gloox/include/gloox/xhtmlim.h +++ libraries/win32/gloox/include/gloox/xhtmlim.h @@ -1,5 +1,5 @@ /* - Copyright (c) 2007-2015 by Jakob Schröter + Copyright (c) 2007-2017 by Jakob Schröter This file is part of the gloox library. http://camaya.net/gloox This software is distributed under a license. The full license