mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-02-26 09:41:29 -05:00
Fix Uninitialised in RsNxsGrp
This commit is contained in:
parent
5ddf0863c5
commit
47ad48cafd
@ -164,8 +164,9 @@ void RsNxsEncryptedDataItem::serial_process(RsGenericSerializer::SerializeJob j,
|
|||||||
}
|
}
|
||||||
|
|
||||||
int RsNxsGrp::refcount = 0;
|
int RsNxsGrp::refcount = 0;
|
||||||
/** print and clear functions **/
|
|
||||||
int RsNxsMsg::refcount = 0;
|
int RsNxsMsg::refcount = 0;
|
||||||
|
|
||||||
|
/** print and clear functions **/
|
||||||
void RsNxsMsg::clear()
|
void RsNxsMsg::clear()
|
||||||
{
|
{
|
||||||
|
|
||||||
@ -197,8 +198,8 @@ void RsNxsSyncGrpReqItem::clear()
|
|||||||
{
|
{
|
||||||
flag = 0;
|
flag = 0;
|
||||||
createdSince = 0;
|
createdSince = 0;
|
||||||
syncHash.clear();
|
|
||||||
updateTS = 0;
|
updateTS = 0;
|
||||||
|
syncHash.clear();
|
||||||
}
|
}
|
||||||
void RsNxsGroupPublishKeyItem::clear()
|
void RsNxsGroupPublishKeyItem::clear()
|
||||||
{
|
{
|
||||||
@ -209,8 +210,8 @@ void RsNxsSyncMsgReqItem::clear()
|
|||||||
grpId.clear();
|
grpId.clear();
|
||||||
flag = 0;
|
flag = 0;
|
||||||
createdSinceTS = 0;
|
createdSinceTS = 0;
|
||||||
syncHash.clear();
|
|
||||||
updateTS = 0;
|
updateTS = 0;
|
||||||
|
syncHash.clear();
|
||||||
}
|
}
|
||||||
void RsNxsSyncGrpItem::clear()
|
void RsNxsSyncGrpItem::clear()
|
||||||
{
|
{
|
||||||
@ -223,8 +224,8 @@ void RsNxsSyncGrpItem::clear()
|
|||||||
void RsNxsSyncMsgItem::clear()
|
void RsNxsSyncMsgItem::clear()
|
||||||
{
|
{
|
||||||
flag = 0;
|
flag = 0;
|
||||||
msgId.clear();
|
|
||||||
grpId.clear();
|
grpId.clear();
|
||||||
|
msgId.clear();
|
||||||
authorId.clear();
|
authorId.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -92,9 +92,9 @@ public:
|
|||||||
static const uint8_t FLAG_ONLY_CURRENT; // only send most current version of grps / ignores sync hash
|
static const uint8_t FLAG_ONLY_CURRENT; // only send most current version of grps / ignores sync hash
|
||||||
|
|
||||||
explicit RsNxsSyncGrpReqItem(uint16_t servtype) : RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_SYNC_GRP_REQ_ITEM) { clear();}
|
explicit RsNxsSyncGrpReqItem(uint16_t servtype) : RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_SYNC_GRP_REQ_ITEM) { clear();}
|
||||||
virtual void clear();
|
virtual void clear() override;
|
||||||
|
|
||||||
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx);
|
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx) override;
|
||||||
|
|
||||||
uint8_t flag; // advises whether to use sync hash
|
uint8_t flag; // advises whether to use sync hash
|
||||||
uint32_t createdSince; // how far back to sync data
|
uint32_t createdSince; // how far back to sync data
|
||||||
@ -114,12 +114,12 @@ public:
|
|||||||
, request_type(0), number_of_posts(0), last_post_TS(0)
|
, request_type(0), number_of_posts(0), last_post_TS(0)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
virtual void clear() {}
|
virtual void clear() override {}
|
||||||
|
|
||||||
static const uint8_t GROUP_INFO_TYPE_REQUEST = 0x01;
|
static const uint8_t GROUP_INFO_TYPE_REQUEST = 0x01;
|
||||||
static const uint8_t GROUP_INFO_TYPE_RESPONSE = 0x02;
|
static const uint8_t GROUP_INFO_TYPE_RESPONSE = 0x02;
|
||||||
|
|
||||||
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx);
|
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx) override;
|
||||||
|
|
||||||
uint32_t request_type; // used to determine the type of request
|
uint32_t request_type; // used to determine the type of request
|
||||||
RsGxsGroupId grpId; // id of the group
|
RsGxsGroupId grpId; // id of the group
|
||||||
@ -137,9 +137,9 @@ class RsNxsGroupPublishKeyItem : public RsNxsItem
|
|||||||
public:
|
public:
|
||||||
explicit RsNxsGroupPublishKeyItem(uint16_t servtype) : RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_GRP_PUBLISH_KEY_ITEM) { clear(); }
|
explicit RsNxsGroupPublishKeyItem(uint16_t servtype) : RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_GRP_PUBLISH_KEY_ITEM) { clear(); }
|
||||||
|
|
||||||
virtual void clear();
|
virtual void clear() override;
|
||||||
|
|
||||||
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx);
|
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx) override;
|
||||||
|
|
||||||
RsGxsGroupId grpId ;
|
RsGxsGroupId grpId ;
|
||||||
RsTlvPrivateRSAKey private_key ;
|
RsTlvPrivateRSAKey private_key ;
|
||||||
@ -181,9 +181,9 @@ public:
|
|||||||
explicit RsNxsTransacItem(uint16_t servtype) : RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_TRANSAC_ITEM) { clear(); }
|
explicit RsNxsTransacItem(uint16_t servtype) : RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_TRANSAC_ITEM) { clear(); }
|
||||||
virtual ~RsNxsTransacItem() {}
|
virtual ~RsNxsTransacItem() {}
|
||||||
|
|
||||||
virtual void clear();
|
virtual void clear() override;
|
||||||
|
|
||||||
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx);
|
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx) override;
|
||||||
|
|
||||||
uint16_t transactFlag;
|
uint16_t transactFlag;
|
||||||
uint32_t nItems;
|
uint32_t nItems;
|
||||||
@ -209,9 +209,9 @@ public:
|
|||||||
explicit RsNxsSyncGrpItem(uint16_t servtype) : RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_SYNC_GRP_ITEM) { clear();}
|
explicit RsNxsSyncGrpItem(uint16_t servtype) : RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_SYNC_GRP_ITEM) { clear();}
|
||||||
virtual ~RsNxsSyncGrpItem() {}
|
virtual ~RsNxsSyncGrpItem() {}
|
||||||
|
|
||||||
virtual void clear();
|
virtual void clear() override;
|
||||||
|
|
||||||
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx);
|
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx) override;
|
||||||
|
|
||||||
uint8_t flag; // request or response
|
uint8_t flag; // request or response
|
||||||
uint32_t publishTs; // to compare to Ts of receiving peer's grp of same id
|
uint32_t publishTs; // to compare to Ts of receiving peer's grp of same id
|
||||||
@ -235,7 +235,7 @@ public:
|
|||||||
explicit RsNxsSessionKeyItem(uint16_t servtype) : RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_SESSION_KEY_ITEM) { clear(); }
|
explicit RsNxsSessionKeyItem(uint16_t servtype) : RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_SESSION_KEY_ITEM) { clear(); }
|
||||||
virtual ~RsNxsSessionKeyItem() {}
|
virtual ~RsNxsSessionKeyItem() {}
|
||||||
|
|
||||||
virtual void clear();
|
virtual void clear() override;
|
||||||
|
|
||||||
/// Session key encrypted for the whole group
|
/// Session key encrypted for the whole group
|
||||||
///
|
///
|
||||||
@ -258,9 +258,9 @@ public:
|
|||||||
clear();
|
clear();
|
||||||
}
|
}
|
||||||
virtual ~RsNxsEncryptedDataItem() {}
|
virtual ~RsNxsEncryptedDataItem() {}
|
||||||
virtual void clear();
|
virtual void clear() override;
|
||||||
|
|
||||||
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx);
|
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx) override;
|
||||||
|
|
||||||
/// grpId of grp held by sending peer
|
/// grpId of grp held by sending peer
|
||||||
///
|
///
|
||||||
@ -279,35 +279,36 @@ class RsNxsGrp : public RsNxsItem
|
|||||||
public:
|
public:
|
||||||
|
|
||||||
explicit RsNxsGrp(uint16_t servtype)
|
explicit RsNxsGrp(uint16_t servtype)
|
||||||
: RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_GRP_ITEM), grp(servtype)
|
: RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_GRP_ITEM)
|
||||||
, meta(servtype), metaData(NULL)
|
, pos(0), count(0), meta(servtype), grp(servtype), metaData(NULL)
|
||||||
{ clear(); }
|
{ clear(); }
|
||||||
virtual ~RsNxsGrp() { delete metaData; }
|
virtual ~RsNxsGrp() { delete metaData; }
|
||||||
|
|
||||||
RsNxsGrp* clone() const;
|
RsNxsGrp* clone() const;
|
||||||
|
|
||||||
virtual void clear();
|
virtual void clear() override;
|
||||||
|
|
||||||
virtual void serial_process( RsGenericSerializer::SerializeJob j,
|
virtual void serial_process( RsGenericSerializer::SerializeJob j,
|
||||||
RsGenericSerializer::SerializeContext& ctx );
|
RsGenericSerializer::SerializeContext& ctx ) override;
|
||||||
|
|
||||||
RsGxsGroupId grpId; /// group Id, needed to complete version Id (ncvi)
|
uint8_t pos; /// used for splitting up grp
|
||||||
static int refcount;
|
uint8_t count; /// number of split up messages
|
||||||
RsTlvBinaryData grp; /// actual group data
|
RsGxsGroupId grpId; /// group Id, needed to complete version Id (ncvi)
|
||||||
uint8_t pos; /// used for splitting up grp
|
static int refcount;
|
||||||
uint8_t count; /// number of split up messages
|
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* This should contains all data
|
* This should contains all data
|
||||||
* which is not specific to the Gxs service data
|
* which is not specific to the Gxs service data
|
||||||
*/
|
*/
|
||||||
// This is the binary data for the group meta that is sent to friends. It *should not* contain any private
|
// This is the binary data for the group meta that is sent to friends. It *should not* contain any private
|
||||||
// key parts. This is ensured in RsGenExchange
|
// key parts. This is ensured in RsGenExchange
|
||||||
|
|
||||||
RsTlvBinaryData meta;
|
RsTlvBinaryData meta;
|
||||||
|
|
||||||
// Deserialised metaData, this is not serialised by the serialize() method. So it may contain private key parts in some cases.
|
RsTlvBinaryData grp; /// actual group data
|
||||||
RsGxsGrpMetaData* metaData;
|
|
||||||
|
// Deserialised metaData, this is not serialised by the serialize() method. So it may contain private key parts in some cases.
|
||||||
|
RsGxsGrpMetaData* metaData;
|
||||||
};
|
};
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@ -326,9 +327,9 @@ public:
|
|||||||
|
|
||||||
explicit RsNxsSyncMsgReqItem(uint16_t servtype) : RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_SYNC_MSG_REQ_ITEM) { clear(); }
|
explicit RsNxsSyncMsgReqItem(uint16_t servtype) : RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_SYNC_MSG_REQ_ITEM) { clear(); }
|
||||||
|
|
||||||
virtual void clear();
|
virtual void clear() override;
|
||||||
|
|
||||||
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx);
|
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx) override;
|
||||||
|
|
||||||
RsGxsGroupId grpId;
|
RsGxsGroupId grpId;
|
||||||
uint8_t flag;
|
uint8_t flag;
|
||||||
@ -350,9 +351,9 @@ public:
|
|||||||
static const uint8_t FLAG_USE_SYNC_HASH;
|
static const uint8_t FLAG_USE_SYNC_HASH;
|
||||||
explicit RsNxsSyncMsgItem(uint16_t servtype) : RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_SYNC_MSG_ITEM) { clear(); }
|
explicit RsNxsSyncMsgItem(uint16_t servtype) : RsNxsItem(servtype, RS_PKT_SUBTYPE_NXS_SYNC_MSG_ITEM) { clear(); }
|
||||||
|
|
||||||
virtual void clear();
|
virtual void clear() override;
|
||||||
|
|
||||||
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx);
|
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx) override;
|
||||||
|
|
||||||
uint8_t flag; // response/req
|
uint8_t flag; // response/req
|
||||||
RsGxsGroupId grpId;
|
RsGxsGroupId grpId;
|
||||||
@ -374,10 +375,10 @@ struct RsNxsMsg : RsNxsItem
|
|||||||
{ clear(); }
|
{ clear(); }
|
||||||
virtual ~RsNxsMsg() { delete metaData; }
|
virtual ~RsNxsMsg() { delete metaData; }
|
||||||
|
|
||||||
virtual void serial_process( RsGenericSerializer::SerializeJob j,
|
virtual void clear() override;
|
||||||
RsGenericSerializer::SerializeContext& ctx );
|
|
||||||
|
|
||||||
virtual void clear();
|
virtual void serial_process( RsGenericSerializer::SerializeJob j,
|
||||||
|
RsGenericSerializer::SerializeContext& ctx ) override;
|
||||||
|
|
||||||
uint8_t pos; /// used for splitting up msg
|
uint8_t pos; /// used for splitting up msg
|
||||||
uint8_t count; /// number of split up messages
|
uint8_t count; /// number of split up messages
|
||||||
@ -411,10 +412,10 @@ public:
|
|||||||
: RsNxsItem(servtype, RS_PKT_SUBTYPE_EXT_SEARCH_REQ)
|
: RsNxsItem(servtype, RS_PKT_SUBTYPE_EXT_SEARCH_REQ)
|
||||||
, nHops(0), token(0), serviceSearchItem(servtype), expiration(0)
|
, nHops(0), token(0), serviceSearchItem(servtype), expiration(0)
|
||||||
{}
|
{}
|
||||||
virtual ~RsNxsSearchReqItem() {}
|
virtual ~RsNxsSearchReqItem() {}
|
||||||
virtual void clear() {}
|
virtual void clear() override {}
|
||||||
|
|
||||||
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx);
|
virtual void serial_process(RsGenericSerializer::SerializeJob j,RsGenericSerializer::SerializeContext& ctx) override;
|
||||||
|
|
||||||
uint8_t nHops; /// how many peers to jump to
|
uint8_t nHops; /// how many peers to jump to
|
||||||
uint32_t token; // search token
|
uint32_t token; // search token
|
||||||
@ -423,6 +424,8 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef UNUSED_CODE
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* Used to respond to a RsGrpSearchReq
|
* Used to respond to a RsGrpSearchReq
|
||||||
* with grpId/MsgIds that satisfy search request
|
* with grpId/MsgIds that satisfy search request
|
||||||
@ -471,8 +474,6 @@ public:
|
|||||||
uint32_t expiration; // expiration date
|
uint32_t expiration; // expiration date
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
#ifndef UNUSED_CODE
|
|
||||||
class RsNxsDeleteMsg
|
class RsNxsDeleteMsg
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user