#include <socks5bytestreamhandler.h>
Public Member Functions | |
virtual | ~SOCKS5BytestreamHandler () |
virtual void | handleIncomingSOCKS5BytestreamRequest (const std::string &sid, const JID &from)=0 |
virtual void | handleIncomingSOCKS5Bytestream (SOCKS5Bytestream *s5b)=0 |
virtual void | handleOutgoingSOCKS5Bytestream (SOCKS5Bytestream *s5b)=0 |
virtual void | handleSOCKS5BytestreamError (Stanza *stanza, const std::string &sid)=0 |
See SOCKS5BytestreamManager for a detailed description on how to implement SOCKS5 Bytestreams.
Definition at line 33 of file socks5bytestreamhandler.h.
virtual ~SOCKS5BytestreamHandler | ( | ) | [inline, virtual] |
Virtual destructor.
Definition at line 39 of file socks5bytestreamhandler.h.
virtual void handleIncomingSOCKS5BytestreamRequest | ( | const std::string & | sid, | |
const JID & | from | |||
) | [pure virtual] |
Notifies the implementor of a new incoming SOCKS5 request. You have to call either SOCKS5BytestreamManager::acceptSOCKS5Bytestream() or SOCKS5BytestreamManager::rejectSOCKS5Bytestream(), to accept or reject the bytestream request, respectively.
sid | The bytestream's id, to be passed to SOCKS5BytestreamManager::acceptSOCKS5Bytestream() and SOCKS5BytestreamManager::rejectSOCKS5Bytestream(), respectively. | |
from | The remote initiator of the bytestream request. |
Implemented in SIProfileFT.
virtual void handleIncomingSOCKS5Bytestream | ( | SOCKS5Bytestream * | s5b | ) | [pure virtual] |
Notifies the implementor of a new incoming SOCKS5 bytestream. The bytestream is not yet ready to send data. To initialize the bytestream and to prepare it for data transfer, register a SOCKS5BytestreamDataHandler with it and call its connect() method. To not block your application while the data transfer lasts, you most likely want to put the bytestream into its own thread or process (before calling connect() on it). It is safe to do so without additional synchronization. When you are finished using the bytestream, use SIProfileFT::dispose() (or SOCKS5BytestreamManager::dispose() if you use SOCKS5BytestreamManager directly) to get rid of it.
s5b | The bytestream. |
Implemented in SIProfileFT.
virtual void handleOutgoingSOCKS5Bytestream | ( | SOCKS5Bytestream * | s5b | ) | [pure virtual] |
Notifies the implementor of successful establishing of an outgoing SOCKS5 bytestream request. The stream has been accepted by the remote entity and is ready to send data. The SOCKS5BytestreamHandler does not become the owner of the SOCKS5Bytestream object. Use SIProfileFT::dispose() (or SOCKS5BytestreamManager::dispose() if you use SOCKS5BytestreamManager directly) to get rid of the bytestream object after it has been closed.
s5b | The new bytestream. |
Implemented in SIProfileFT.
virtual void handleSOCKS5BytestreamError | ( | Stanza * | stanza, | |
const std::string & | sid | |||
) | [pure virtual] |
Notifies the handler of errors occuring when a bytestream was requested. For example, if the remote entity does not implement SOCKS5 bytestreams.
stanza | The error stanza. |
Implemented in SIProfileFT.