Mixes for Privacy and Anonymity in the Internet
A synchronous control channel. More...
|CASyncControlChannel (UINT8 id, bool bIsEncrypted)|
|Constructor for a synchronized (e.g. |
|virtual SINT32||processXMLMessage (const XERCES_CPP_NAMESPACE::DOMDocument *docMsg)=0|
|Override this method to receive a XML Message. |
|SINT32||proccessMessage (const UINT8 *msg, UINT32 msglen)|
|Processes some bytes of a message we got from the communication channel. |
|Parses the bytes in m_MsgBuff and calls processXMLMessage() |
|buffer for assembling the parts of the message |
|how much bytes have we received already? |
|how much bytes we need until all bytes are received? |
A synchronous control channel.
This means, that every control message will be proccessed imedially. You have to override proccessXMLMessage().
|SINT32 CASyncControlChannel::proccessMessage||(||const UINT8 *||msg,|
Processes some bytes of a message we got from the communication channel.
We reassemble this fragments in a buffer. If all parts are received we call proccessMessagesComplete()
References CAControlChannelDispatcher::decryptMessage(), E_SUCCESS, E_UNKNOWN, CAControlChannelDispatcher::isKeySet(), m_aktIndex, CAAbstractControlChannel::m_bIsEncrypted, m_MsgBuff, m_MsgBytesLeft, CAAbstractControlChannel::m_pDispatcher, CAMsg::printMsg(), and proccessMessageComplete().
|virtual SINT32 CASyncControlChannel::processXMLMessage||(||const XERCES_CPP_NAMESPACE::DOMDocument *||docMsg||)||
Override this method to receive a XML Message.
Note: The DOMDocument reference is valid only within this call, i.e. will be delete afterwards form the caller! If you need to store it for later processing, make a copy of the DOMDocument using docMsg->cloneNode(true)
Referenced by proccessMessageComplete().