new msg items to store srcid/from address for rs messages

also updated tests for new rsitems

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3594 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
chrisparker126 2010-10-03 11:56:53 +00:00
parent cfa10c6f80
commit 9bdf222418
4 changed files with 224 additions and 1 deletions

View file

@ -53,6 +53,7 @@ const uint8_t RS_PKT_SUBTYPE_PRIVATECHATMSG_CONFIG = 0x05 ; // default is 0x01
// for defining tags themselves and msg tags
const uint8_t RS_PKT_SUBTYPE_MSG_TAG_TYPE = 0x03;
const uint8_t RS_PKT_SUBTYPE_MSG_TAGS = 0x04;
const uint8_t RS_PKT_SUBTYPE_MSG_SRC_TAG = 0x05;
class RsChatItem: public RsItem
@ -254,6 +255,26 @@ public:
std::list<uint32_t> tagIds;
};
class RsMsgSrcId : public RsItem
{
public:
RsMsgSrcId()
: RsItem(RS_PKT_VERSION_SERVICE, RS_SERVICE_TYPE_MSG,
RS_PKT_SUBTYPE_MSG_SRC_TAG)
{ return;}
std::ostream &print(std::ostream &out, uint16_t indent = 0);
virtual ~RsMsgSrcId();
virtual void clear();
uint32_t msgId;
std::string srcId;
};
class RsMsgSerialiser: public RsSerialType
{
public:
@ -286,6 +307,10 @@ virtual uint32_t sizeMsgTagItem(RsMsgTags *);
virtual bool serialiseMsgTagItem (RsMsgTags *item, void *data, uint32_t *size);
virtual RsMsgTags *deserialiseMsgTagItem(void *data, uint32_t *size);
virtual uint32_t sizeMsgSrcIdItem(RsMsgSrcId *);
virtual bool serialiseMsgSrcIdItem (RsMsgSrcId *item, void *data, uint32_t *size);
virtual RsMsgSrcId *deserialiseMsgSrcIdItem(void *data, uint32_t *size);
bool m_bConfiguration; // is set to true for saving configuration (enables serialising msgId)