turned typedef RsGxsMessageId into RsFileHash instead of std::string

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-IdCleaning@7149 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
csoler 2014-02-23 22:09:51 +00:00
parent 1843ad74c6
commit 41e42133c0
31 changed files with 121 additions and 120 deletions

View file

@ -543,7 +543,7 @@ std::ostream& RsTurtleChunkCrcRequestItem::print(std::ostream& o, uint16_t)
} }
std::ostream& RsTurtleChunkCrcItem::print(std::ostream& o, uint16_t) std::ostream& RsTurtleChunkCrcItem::print(std::ostream& o, uint16_t)
{ {
o << "Chunk CRC request item:" << std::endl ; o << "Chunk CRC item:" << std::endl ;
o << " tunnel id : " << std::hex << tunnel_id << std::dec << std::endl ; o << " tunnel id : " << std::hex << tunnel_id << std::dec << std::endl ;
o << " chunk num : " << chunk_number << std::endl ; o << " chunk num : " << chunk_number << std::endl ;

View file

@ -283,7 +283,9 @@ RsGxsGrpMetaData* RsDataService::locked_getGrpMeta(RetroCursor &c)
c.getString(COL_ORIG_GRP_ID, tempId); c.getString(COL_ORIG_GRP_ID, tempId);
grpMeta->mOrigGrpId = tempId; grpMeta->mOrigGrpId = tempId;
c.getString(COL_GRP_SERV_STRING, grpMeta->mServiceString); c.getString(COL_GRP_SERV_STRING, grpMeta->mServiceString);
c.getString(COL_HASH, grpMeta->mHash);
c.getString(COL_HASH, tempId);
grpMeta->mHash = tempId ;
grpMeta->mSignFlags = c.getInt32(COL_GRP_SIGN_FLAGS); grpMeta->mSignFlags = c.getInt32(COL_GRP_SIGN_FLAGS);
grpMeta->mPublishTs = c.getInt32(COL_TIME_STAMP); grpMeta->mPublishTs = c.getInt32(COL_TIME_STAMP);
@ -391,19 +393,22 @@ RsGxsMsgMetaData* RsDataService::locked_getMsgMeta(RetroCursor &c)
char* data = NULL; char* data = NULL;
std::string gId; std::string gId,tempId;
c.getString(COL_GRP_ID, gId); c.getString(COL_GRP_ID, gId);
msgMeta->mGroupId = RsGxsGroupId(gId); msgMeta->mGroupId = RsGxsGroupId(gId);
c.getString(COL_MSG_ID, msgMeta->mMsgId); c.getString(COL_MSG_ID, tempId) ;
msgMeta->mMsgId = tempId ;
// without these, a msg is meaningless // without these, a msg is meaningless
ok &= (!msgMeta->mGroupId.isNull()) && (!msgMeta->mMsgId.empty()); ok &= (!msgMeta->mGroupId.isNull()) && (!msgMeta->mMsgId.isNull());
c.getString(COL_ORIG_MSG_ID, msgMeta->mOrigMsgId); c.getString(COL_ORIG_MSG_ID, tempId) ;
msgMeta->mOrigMsgId = tempId ;
c.getString(COL_IDENTITY, msgMeta->mAuthorId); c.getString(COL_IDENTITY, msgMeta->mAuthorId);
c.getString(COL_MSG_NAME, msgMeta->mMsgName); c.getString(COL_MSG_NAME, msgMeta->mMsgName);
c.getString(COL_MSG_SERV_STRING, msgMeta->mServiceString); c.getString(COL_MSG_SERV_STRING, msgMeta->mServiceString);
c.getString(COL_HASH, msgMeta->mHash); c.getString(COL_HASH, tempId) ;
msgMeta->mHash = tempId;
msgMeta->recvTS = c.getInt32(COL_MSG_RECV_TS); msgMeta->recvTS = c.getInt32(COL_MSG_RECV_TS);
offset = 0; offset = 0;
@ -417,8 +422,8 @@ RsGxsMsgMetaData* RsDataService::locked_getMsgMeta(RetroCursor &c)
offset = 0; data_len = 0; offset = 0; data_len = 0;
// thread and parent id // thread and parent id
c.getString(COL_THREAD_ID, msgMeta->mThreadId); c.getString(COL_THREAD_ID, tempId) ; msgMeta->mThreadId = tempId ;
c.getString(COL_PARENT_ID, msgMeta->mParentId); c.getString(COL_PARENT_ID, tempId) ; msgMeta->mParentId = tempId ;
// local meta // local meta
msgMeta->mMsgStatus = c.getInt32(COL_MSG_STATUS); msgMeta->mMsgStatus = c.getInt32(COL_MSG_STATUS);
@ -440,13 +445,14 @@ RsNxsMsg* RsDataService::locked_getMessage(RetroCursor &c)
RsNxsMsg* msg = new RsNxsMsg(mServType); RsNxsMsg* msg = new RsNxsMsg(mServType);
bool ok = true; bool ok = true;
std::string tempId ;
uint32_t data_len = 0, uint32_t data_len = 0,
offset = 0; offset = 0;
char* data = NULL; char* data = NULL;
c.getStringT<RsGxsGroupId>(COL_ACT_GROUP_ID, msg->grpId); c.getStringT<RsGxsGroupId>(COL_ACT_GROUP_ID, msg->grpId);
c.getString(COL_ACT_MSG_ID, msg->msgId); c.getString(COL_ACT_MSG_ID, tempId) ; msg->msgId = tempId ;
ok &= (!msg->grpId.isNull()) && (!msg->msgId.empty()); ok &= (!msg->grpId.isNull()) && (!msg->msgId.isNull());
offset = 0; data_len = 0; offset = 0; data_len = 0;
if(ok){ if(ok){
@ -513,10 +519,10 @@ int RsDataService::storeMessage(std::map<RsNxsMsg *, RsGxsMsgMetaData *> &msg)
cv.put(KEY_NXS_FILE_OFFSET, (int32_t)offset); cv.put(KEY_NXS_FILE_OFFSET, (int32_t)offset);
cv.put(KEY_NXS_FILE, msgFile); cv.put(KEY_NXS_FILE, msgFile);
cv.put(KEY_NXS_FILE_LEN, (int32_t)msgPtr->msg.TlvSize()); cv.put(KEY_NXS_FILE_LEN, (int32_t)msgPtr->msg.TlvSize());
cv.put(KEY_MSG_ID, msgMetaPtr->mMsgId); cv.put(KEY_MSG_ID, msgMetaPtr->mMsgId.toStdString());
cv.put(KEY_GRP_ID, msgMetaPtr->mGroupId.toStdString()); cv.put(KEY_GRP_ID, msgMetaPtr->mGroupId.toStdString());
cv.put(KEY_NXS_SERV_STRING, msgMetaPtr->mServiceString); cv.put(KEY_NXS_SERV_STRING, msgMetaPtr->mServiceString);
cv.put(KEY_NXS_HASH, msgMetaPtr->mHash); cv.put(KEY_NXS_HASH, msgMetaPtr->mHash.toStdString());
cv.put(KEY_RECV_TS, (int32_t)msgMetaPtr->recvTS); cv.put(KEY_RECV_TS, (int32_t)msgMetaPtr->recvTS);
@ -535,9 +541,9 @@ int RsDataService::storeMessage(std::map<RsNxsMsg *, RsGxsMsgMetaData *> &msg)
msgPtr->meta.SetTlv(metaData, msgPtr->meta.TlvSize(), &offset); msgPtr->meta.SetTlv(metaData, msgPtr->meta.TlvSize(), &offset);
cv.put(KEY_NXS_META, msgPtr->meta.TlvSize(), metaData); cv.put(KEY_NXS_META, msgPtr->meta.TlvSize(), metaData);
cv.put(KEY_MSG_PARENT_ID, msgMetaPtr->mParentId); cv.put(KEY_MSG_PARENT_ID, msgMetaPtr->mParentId.toStdString());
cv.put(KEY_MSG_THREAD_ID, msgMetaPtr->mThreadId); cv.put(KEY_MSG_THREAD_ID, msgMetaPtr->mThreadId.toStdString());
cv.put(KEY_ORIG_MSG_ID, msgMetaPtr->mOrigMsgId); cv.put(KEY_ORIG_MSG_ID, msgMetaPtr->mOrigMsgId.toStdString());
cv.put(KEY_MSG_NAME, msgMetaPtr->mMsgName); cv.put(KEY_MSG_NAME, msgMetaPtr->mMsgName);
// now local meta // now local meta
@ -625,7 +631,7 @@ int RsDataService::storeGroup(std::map<RsNxsGrp *, RsGxsGrpMetaData *> &grp)
cv.put(KEY_GRP_ORIGINATOR, grpMetaPtr->mOriginator.toStdString()); cv.put(KEY_GRP_ORIGINATOR, grpMetaPtr->mOriginator.toStdString());
cv.put(KEY_GRP_AUTHEN_FLAGS, (int32_t)grpMetaPtr->mAuthenFlags); cv.put(KEY_GRP_AUTHEN_FLAGS, (int32_t)grpMetaPtr->mAuthenFlags);
cv.put(KEY_PARENT_GRP_ID, grpMetaPtr->mParentGrpId.toStdString()); cv.put(KEY_PARENT_GRP_ID, grpMetaPtr->mParentGrpId.toStdString());
cv.put(KEY_NXS_HASH, grpMetaPtr->mHash); cv.put(KEY_NXS_HASH, grpMetaPtr->mHash.toStdString());
cv.put(KEY_RECV_TS, (int32_t)grpMetaPtr->mRecvTS); cv.put(KEY_RECV_TS, (int32_t)grpMetaPtr->mRecvTS);
if(! (grpMetaPtr->mAuthorId.empty()) ){ if(! (grpMetaPtr->mAuthorId.empty()) ){
@ -717,7 +723,7 @@ int RsDataService::updateGroup(std::map<RsNxsGrp *, RsGxsGrpMetaData *> &grp)
cv.put(KEY_GRP_INTERNAL_CIRCLE, grpMetaPtr->mInternalCircle); cv.put(KEY_GRP_INTERNAL_CIRCLE, grpMetaPtr->mInternalCircle);
cv.put(KEY_GRP_ORIGINATOR, grpMetaPtr->mOriginator.toStdString()); cv.put(KEY_GRP_ORIGINATOR, grpMetaPtr->mOriginator.toStdString());
cv.put(KEY_GRP_AUTHEN_FLAGS, (int32_t)grpMetaPtr->mAuthenFlags); cv.put(KEY_GRP_AUTHEN_FLAGS, (int32_t)grpMetaPtr->mAuthenFlags);
cv.put(KEY_NXS_HASH, grpMetaPtr->mHash); cv.put(KEY_NXS_HASH, grpMetaPtr->mHash.toStdString());
if(! (grpMetaPtr->mAuthorId.empty()) ){ if(! (grpMetaPtr->mAuthorId.empty()) ){
cv.put(KEY_NXS_IDENTITY, grpMetaPtr->mAuthorId); cv.put(KEY_NXS_IDENTITY, grpMetaPtr->mAuthorId);
@ -879,7 +885,7 @@ int RsDataService::retrieveNxsMsgs(const GxsMsgReq &reqIds, GxsMsgResult &msg, b
const RsGxsGroupId& grpId = mit->first; const RsGxsGroupId& grpId = mit->first;
// if vector empty then request all messages // if vector empty then request all messages
const std::vector<std::string>& msgIdV = mit->second; const std::vector<RsGxsMessageId>& msgIdV = mit->second;
std::vector<RsNxsMsg*> msgSet; std::vector<RsNxsMsg*> msgSet;
if(msgIdV.empty()){ if(msgIdV.empty()){
@ -895,15 +901,15 @@ int RsDataService::retrieveNxsMsgs(const GxsMsgReq &reqIds, GxsMsgResult &msg, b
}else{ }else{
// request each grp // request each grp
std::vector<std::string>::const_iterator sit = msgIdV.begin(); std::vector<RsGxsMessageId>::const_iterator sit = msgIdV.begin();
for(; sit!=msgIdV.end();sit++){ for(; sit!=msgIdV.end();sit++){
const std::string& msgId = *sit; const RsGxsMessageId& msgId = *sit;
RsStackMutex stack(mDbMutex); RsStackMutex stack(mDbMutex);
RetroCursor* c = mDb->sqlQuery(MSG_TABLE_NAME, msgColumns, KEY_GRP_ID+ "='" + grpId.toStdString() RetroCursor* c = mDb->sqlQuery(MSG_TABLE_NAME, msgColumns, KEY_GRP_ID+ "='" + grpId.toStdString()
+ "' AND " + KEY_MSG_ID + "='" + msgId + "'", ""); + "' AND " + KEY_MSG_ID + "='" + msgId.toStdString() + "'", "");
if(c) if(c)
locked_retrieveMessages(c, msgSet); locked_retrieveMessages(c, msgSet);
@ -1024,12 +1030,12 @@ int RsDataService::retrieveGxsMsgMetaData(const GxsMsgReq& reqIds, GxsMsgMetaRes
}else{ }else{
// request each grp // request each grp
std::vector<std::string>::const_iterator sit = msgIdV.begin(); std::vector<RsGxsMessageId>::const_iterator sit = msgIdV.begin();
for(; sit!=msgIdV.end();sit++){ for(; sit!=msgIdV.end();sit++){
const std::string& msgId = *sit; const RsGxsMessageId& msgId = *sit;
RetroCursor* c = mDb->sqlQuery(MSG_TABLE_NAME, msgMetaColumns, KEY_GRP_ID+ "='" + grpId.toStdString() RetroCursor* c = mDb->sqlQuery(MSG_TABLE_NAME, msgMetaColumns, KEY_GRP_ID+ "='" + grpId.toStdString()
+ "' AND " + KEY_MSG_ID + "='" + msgId + "'", ""); + "' AND " + KEY_MSG_ID + "='" + msgId.toStdString() + "'", "");
locked_retrieveMsgMeta(c, metaSet); locked_retrieveMsgMeta(c, metaSet);
} }
@ -1168,7 +1174,7 @@ int RsDataService::updateMessageMetaData(MsgLocMetaData &metaData)
RsGxsGroupId& grpId = metaData.msgId.first; RsGxsGroupId& grpId = metaData.msgId.first;
RsGxsMessageId& msgId = metaData.msgId.second; RsGxsMessageId& msgId = metaData.msgId.second;
return mDb->sqlUpdate(MSG_TABLE_NAME, KEY_GRP_ID+ "='" + grpId.toStdString() return mDb->sqlUpdate(MSG_TABLE_NAME, KEY_GRP_ID+ "='" + grpId.toStdString()
+ "' AND " + KEY_MSG_ID + "='" + msgId + "'", metaData.val) ? 1 : 0; + "' AND " + KEY_MSG_ID + "='" + msgId.toStdString() + "'", metaData.val) ? 1 : 0;
} }
MsgOffset offSetAccum(const MsgOffset& x, const MsgOffset& y) MsgOffset offSetAccum(const MsgOffset& x, const MsgOffset& y)
@ -1344,7 +1350,7 @@ bool RsDataService::locked_updateMessageEntries(const MsgUpdates& updates)
{ {
const MsgUpdate& update = *vit; const MsgUpdate& update = *vit;
mDb->sqlUpdate(MSG_TABLE_NAME, KEY_GRP_ID+ "='" + grpId.toStdString() mDb->sqlUpdate(MSG_TABLE_NAME, KEY_GRP_ID+ "='" + grpId.toStdString()
+ "' AND " + KEY_MSG_ID + "='" + update.msgId + "'", update.cv); + "' AND " + KEY_MSG_ID + "='" + update.msgId.toStdString() + "'", update.cv);
} }
} }
@ -1370,7 +1376,7 @@ bool RsDataService::locked_removeMessageEntries(const GxsMsgReq& msgIds)
{ {
const RsGxsMessageId& msgId = *vit; const RsGxsMessageId& msgId = *vit;
mDb->sqlDelete(MSG_TABLE_NAME, KEY_GRP_ID+ "='" + grpId.toStdString() mDb->sqlDelete(MSG_TABLE_NAME, KEY_GRP_ID+ "='" + grpId.toStdString()
+ "' AND " + KEY_MSG_ID + "='" + msgId + "'", ""); + "' AND " + KEY_MSG_ID + "='" + msgId.toStdString() + "'", "");
} }
} }
@ -1410,8 +1416,9 @@ void RsDataService::locked_getMessageOffsets(const RsGxsGroupId& grpId, std::vec
{ {
RsGxsMessageId msgId; RsGxsMessageId msgId;
int32_t msgLen; int32_t msgLen;
int32_t msgOffSet; int32_t msgOffSet;
c->getString(0, msgId); std::string tempId ;
c->getString(0, tempId) ; msgId = tempId;
msgOffSet = c->getInt32(1); msgOffSet = c->getInt32(1);
msgLen = c->getInt32(2); msgLen = c->getInt32(2);

View file

@ -502,7 +502,7 @@ int RsGenExchange::createMsgSignatures(RsTlvKeySignatureSet& signSet, RsTlvBinar
uint8_t author_flag = GXS_SERV::MSG_AUTHEN_ROOT_AUTHOR_SIGN; uint8_t author_flag = GXS_SERV::MSG_AUTHEN_ROOT_AUTHOR_SIGN;
uint8_t publish_flag = GXS_SERV::MSG_AUTHEN_ROOT_PUBLISH_SIGN; uint8_t publish_flag = GXS_SERV::MSG_AUTHEN_ROOT_PUBLISH_SIGN;
if(!msgMeta.mParentId.empty()) if(!msgMeta.mParentId.isNull())
{ {
// Child Message. // Child Message.
author_flag = GXS_SERV::MSG_AUTHEN_CHILD_AUTHOR_SIGN; author_flag = GXS_SERV::MSG_AUTHEN_CHILD_AUTHOR_SIGN;
@ -723,7 +723,7 @@ int RsGenExchange::validateMsg(RsNxsMsg *msg, const uint32_t& grpFlag, RsTlvSecu
uint8_t author_flag = GXS_SERV::MSG_AUTHEN_ROOT_AUTHOR_SIGN; uint8_t author_flag = GXS_SERV::MSG_AUTHEN_ROOT_AUTHOR_SIGN;
uint8_t publish_flag = GXS_SERV::MSG_AUTHEN_ROOT_PUBLISH_SIGN; uint8_t publish_flag = GXS_SERV::MSG_AUTHEN_ROOT_PUBLISH_SIGN;
if(!msg->metaData->mParentId.empty()) if(!msg->metaData->mParentId.isNull())
{ {
// Child Message. // Child Message.
author_flag = GXS_SERV::MSG_AUTHEN_CHILD_AUTHOR_SIGN; author_flag = GXS_SERV::MSG_AUTHEN_CHILD_AUTHOR_SIGN;
@ -1769,7 +1769,7 @@ void RsGenExchange::publishMsgs()
{ {
// empty orig msg id means this is the original // empty orig msg id means this is the original
// msg // msg
if(msg->metaData->mOrigMsgId.empty()) if(msg->metaData->mOrigMsgId.isNull())
{ {
msg->metaData->mOrigMsgId = msg->metaData->mMsgId; msg->metaData->mOrigMsgId = msg->metaData->mMsgId;
} }
@ -2218,7 +2218,7 @@ void RsGenExchange::processRecvdData()
} }
void RsGenExchange::computeHash(const RsTlvBinaryData& data, std::string& hash) void RsGenExchange::computeHash(const RsTlvBinaryData& data, RsFileHash& hash)
{ {
pqihash pHash; pqihash pHash;
pHash.addData(data.bin_data, data.bin_len); pHash.addData(data.bin_data, data.bin_len);

View file

@ -755,7 +755,7 @@ private:
void groupShareKeys(std::list<std::string> peers); void groupShareKeys(std::list<std::string> peers);
static void computeHash(const RsTlvBinaryData& data, std::string& hash); static void computeHash(const RsTlvBinaryData& data, RsFileHash& hash);
/*! /*!
* Checks validation of recently received groups to be * Checks validation of recently received groups to be

View file

@ -171,10 +171,10 @@ uint32_t RsGxsMsgMetaData::serial_size()
uint32_t s = 8; // header size uint32_t s = 8; // header size
s += mGroupId.serial_size(); s += mGroupId.serial_size();
s += GetTlvStringSize(mMsgId); s += mMsgId.serial_size();
s += GetTlvStringSize(mThreadId); s += mThreadId.serial_size();
s += GetTlvStringSize(mParentId); s += mParentId.serial_size();
s += GetTlvStringSize(mOrigMsgId); s += mOrigMsgId.serial_size();
s += GetTlvStringSize(mAuthorId); s += GetTlvStringSize(mAuthorId);
s += signSet.TlvSize(); s += signSet.TlvSize();
@ -228,10 +228,10 @@ bool RsGxsMsgMetaData::serialise(void *data, uint32_t *size)
offset += 8; offset += 8;
ok &= mGroupId.serialise(data, *size, offset); ok &= mGroupId.serialise(data, *size, offset);
ok &= SetTlvString(data, *size, &offset, 0, mMsgId); ok &= mMsgId.serialise(data, *size, offset) ;
ok &= SetTlvString(data, *size, &offset, 0, mThreadId); ok &= mThreadId.serialise(data, *size, offset) ;
ok &= SetTlvString(data, *size, &offset, 0, mParentId); ok &= mParentId.serialise(data, *size, offset) ;
ok &= SetTlvString(data, *size, &offset, 0, mOrigMsgId); ok &= mOrigMsgId.serialise(data, *size, offset) ;
ok &= SetTlvString(data, *size, &offset, 0, mAuthorId); ok &= SetTlvString(data, *size, &offset, 0, mAuthorId);
ok &= signSet.SetTlv(data, *size, &offset); ok &= signSet.SetTlv(data, *size, &offset);
@ -255,10 +255,10 @@ bool RsGxsMsgMetaData::deserialise(void *data, uint32_t *size)
if(!ok) return false; if(!ok) return false;
ok &= mGroupId.deserialise(data, *size, offset); ok &= mGroupId.deserialise(data, *size, offset);
ok &= GetTlvString(data, *size, &offset, 0, mMsgId); ok &= mMsgId.serialise(data, *size, offset) ;
ok &= GetTlvString(data, *size, &offset, 0, mThreadId); ok &= mThreadId.serialise(data, *size,offset) ;
ok &= GetTlvString(data, *size, &offset, 0, mParentId); ok &= mParentId.serialise(data, *size, offset) ;
ok &= GetTlvString(data, *size, &offset, 0, mOrigMsgId); ok &= mOrigMsgId.serialise(data, *size, offset) ;
ok &= GetTlvString(data, *size, &offset, 0, mAuthorId); ok &= GetTlvString(data, *size, &offset, 0, mAuthorId);
ok &= signSet.GetTlv(data, *size, &offset); ok &= signSet.GetTlv(data, *size, &offset);

View file

@ -77,7 +77,7 @@ public:
uint32_t mRecvTS; uint32_t mRecvTS;
RsPeerId mOriginator; RsPeerId mOriginator;
std::string mInternalCircle; std::string mInternalCircle;
std::string mHash; RsFileHash mHash;
}; };
@ -115,7 +115,7 @@ public:
uint32_t mMsgStatus; uint32_t mMsgStatus;
time_t mChildTs; time_t mChildTs;
uint32_t recvTS; uint32_t recvTS;
std::string mHash; RsFileHash mHash;
bool validated; bool validated;
}; };

View file

@ -968,7 +968,7 @@ bool RsGxsDataAccess::getMsgList(const GxsMsgReq& msgIds, const RsTokReqOptions&
/* if we are grabbing thread Head... then parentId == empty. */ /* if we are grabbing thread Head... then parentId == empty. */
if (onlyThreadHeadMsgs) if (onlyThreadHeadMsgs)
{ {
if (!(msgMeta->mParentId.empty())) if (!(msgMeta->mParentId.isNull()))
{ {
continue; continue;
} }
@ -1025,7 +1025,7 @@ bool RsGxsDataAccess::getMsgList(const GxsMsgReq& msgIds, const RsTokReqOptions&
/* if we are grabbing thread Head... then parentId == empty. */ /* if we are grabbing thread Head... then parentId == empty. */
if (onlyThreadHeadMsgs) if (onlyThreadHeadMsgs)
{ {
if (!(msgMeta->mParentId.empty())) if (!(msgMeta->mParentId.isNull()))
{ {
continue; continue;
} }
@ -1209,8 +1209,8 @@ bool RsGxsDataAccess::getMsgRelatedInfo(MsgRelatedInfoReq *req)
if (onlyChildMsgs || onlyThreadMsgs) if (onlyChildMsgs || onlyThreadMsgs)
{ {
// RUN THROUGH ALL MSGS... in map origId -> TS. // RUN THROUGH ALL MSGS... in map origId -> TS.
std::map<std::string, std::pair<std::string, time_t> > origMsgTs; std::map<RsGxsMessageId, std::pair<RsGxsMessageId, time_t> > origMsgTs;
std::map<std::string, std::pair<std::string, time_t> >::iterator oit; std::map<RsGxsMessageId, std::pair<RsGxsMessageId, time_t> >::iterator oit;
for(vit_meta = metaV.begin(); vit_meta != metaV.end(); vit_meta++) for(vit_meta = metaV.begin(); vit_meta != metaV.end(); vit_meta++)
{ {

View file

@ -1490,7 +1490,7 @@ void RsGxsNetService::locked_genReqMsgTransaction(NxsTransaction* tr)
std::vector<RsGxsMsgMetaData*> &msgMetaV = result[grpId]; std::vector<RsGxsMsgMetaData*> &msgMetaV = result[grpId];
std::vector<RsGxsMsgMetaData*>::const_iterator vit = msgMetaV.begin(); std::vector<RsGxsMsgMetaData*>::const_iterator vit = msgMetaV.begin();
std::set<std::string> msgIdSet; std::set<RsGxsMessageId> msgIdSet;
// put ids in set for each searching // put ids in set for each searching
for(; vit != msgMetaV.end(); vit++) for(; vit != msgMetaV.end(); vit++)
@ -1517,7 +1517,7 @@ void RsGxsNetService::locked_genReqMsgTransaction(NxsTransaction* tr)
for(; llit != msgItemL.end(); llit++) for(; llit != msgItemL.end(); llit++)
{ {
RsNxsSyncMsgItem*& syncItem = *llit; RsNxsSyncMsgItem*& syncItem = *llit;
const std::string& msgId = syncItem->msgId; const RsGxsMessageId& msgId = syncItem->msgId;
if(msgIdSet.find(msgId) == msgIdSet.end()){ if(msgIdSet.find(msgId) == msgIdSet.end()){
@ -2221,7 +2221,7 @@ void RsGxsNetService::handleRecvSyncMessage(RsNxsSyncMsg* item)
if(grpMeta == NULL) if(grpMeta == NULL)
return; return;
req[item->grpId] = std::vector<std::string>(); req[item->grpId] = std::vector<RsGxsMessageId>();
mDataStore->retrieveGxsMsgMetaData(req, metaResult); mDataStore->retrieveGxsMsgMetaData(req, metaResult);
std::vector<RsGxsMsgMetaData*>& msgMetas = metaResult[item->grpId]; std::vector<RsGxsMsgMetaData*>& msgMetas = metaResult[item->grpId];

View file

@ -130,7 +130,7 @@ bool RsGxsIntegrityCheck::check()
for(; git != grp.end(); git++) for(; git != grp.end(); git++)
{ {
RsNxsGrp* grp = git->second; RsNxsGrp* grp = git->second;
std::string currHash; RsFileHash currHash;
pqihash pHash; pqihash pHash;
pHash.addData(grp->grp.bin_data, grp->grp.bin_len); pHash.addData(grp->grp.bin_data, grp->grp.bin_len);
pHash.Complete(currHash); pHash.Complete(currHash);
@ -157,7 +157,7 @@ bool RsGxsIntegrityCheck::check()
for(; vit != msgV.end(); vit++) for(; vit != msgV.end(); vit++)
{ {
RsNxsMsg* msg = *vit; RsNxsMsg* msg = *vit;
std::string currHash; RsFileHash currHash;
pqihash pHash; pqihash pHash;
pHash.addData(msg->msg.bin_data, msg->msg.bin_len); pHash.addData(msg->msg.bin_data, msg->msg.bin_len);
pHash.Complete(currHash); pHash.Complete(currHash);

View file

@ -6,7 +6,7 @@ TARGET = retroshare
#GXS Stuff. #GXS Stuff.
# This should be disabled for releases until further notice. # This should be disabled for releases until further notice.
#CONFIG += gxs debug CONFIG += gxs debug
#CONFIG += grouter #CONFIG += grouter
#CONFIG += dsdv #CONFIG += dsdv

View file

@ -301,8 +301,8 @@ bool p3Config::loadAttempt(const std::string& cfgFname,const std::string& signFn
std::string signatureStored((char *) signbio->memptr(), signbio->memsize()); std::string signatureStored((char *) signbio->memptr(), signbio->memsize());
std::string signatureRead; std::string signatureRead;
std::string strHash(Hash()); RsFileHash strHash(Hash());
AuthSSL::getAuthSSL()->SignData(strHash.c_str(), strHash.length(), signatureRead); AuthSSL::getAuthSSL()->SignData(strHash.toByteArray(), RsFileHash::SIZE_IN_BYTES, signatureRead);
delete signbio; delete signbio;
@ -358,8 +358,8 @@ bool p3Config::saveConfig()
/* sign data */ /* sign data */
std::string signature; std::string signature;
std::string strHash(Hash()); RsFileHash strHash(Hash());
AuthSSL::getAuthSSL()->SignData(strHash.c_str(),strHash.length(), signature); AuthSSL::getAuthSSL()->SignData(strHash.toByteArray(),strHash.SIZE_IN_BYTES, signature);
/* write signature to configuration */ /* write signature to configuration */
BinMemInterface *signbio = new BinMemInterface(signature.c_str(), BinMemInterface *signbio = new BinMemInterface(signature.c_str(),
@ -566,7 +566,7 @@ const std::string& pqiConfig::Filename()
return filename; return filename;
} }
const std::string& pqiConfig::Hash() const RsFileHash& pqiConfig::Hash()
{ {
RsStackMutex stack(cfgMtx); /***** LOCK STACK MUTEX ****/ RsStackMutex stack(cfgMtx); /***** LOCK STACK MUTEX ****/
return hash; return hash;
@ -590,7 +590,7 @@ void pqiConfig::setFilename(const std::string& name)
filename = name; filename = name;
} }
void pqiConfig::setHash(const std::string& h) void pqiConfig::setHash(const RsFileHash& h)
{ {
RsStackMutex stack(cfgMtx); /***** LOCK STACK MUTEX ****/ RsStackMutex stack(cfgMtx); /***** LOCK STACK MUTEX ****/
hash = h; hash = h;

View file

@ -142,7 +142,7 @@ const std::string& Filename();
* The hash computed for this configuration, can use this to compare to externally stored hash * The hash computed for this configuration, can use this to compare to externally stored hash
* for validation checking * for validation checking
*/ */
const std::string& Hash(); const RsFileHash& Hash();
protected: protected:
@ -150,7 +150,7 @@ const std::string& Hash();
* Checks if configuration has changed * Checks if configuration has changed
*/ */
virtual void IndicateConfigChanged(); virtual void IndicateConfigChanged();
void setHash(const std::string& h); void setHash(const RsFileHash& h);
RsMutex cfgMtx; RsMutex cfgMtx;
@ -170,7 +170,7 @@ void setHash(const std::string& h);
uint32_t type; uint32_t type;
std::string filename; std::string filename;
std::string hash; RsFileHash hash;
friend class p3ConfigMgr; friend class p3ConfigMgr;

View file

@ -301,7 +301,7 @@ virtual int close() = 0;
/** /**
* If hashing data * If hashing data
**/ **/
virtual std::string gethash() = 0; virtual RsFileHash gethash() = 0;
/** /**
* Number of bytes read/sent * Number of bytes read/sent

View file

@ -150,9 +150,9 @@ int BinFileInterface::readdata(void *data, int len)
return len; return len;
} }
std::string BinFileInterface::gethash() RsFileHash BinFileInterface::gethash()
{ {
std::string hashstr; RsFileHash hashstr;
if (bin_flags & BIN_FLAGS_HASH_DATA) if (bin_flags & BIN_FLAGS_HASH_DATA)
{ {
hash->Complete(hashstr); hash->Complete(hashstr);
@ -410,9 +410,9 @@ int BinMemInterface::readdata(void *data, int len)
std::string BinMemInterface::gethash() RsFileHash BinMemInterface::gethash()
{ {
std::string hashstr; RsFileHash hashstr;
if (bin_flags & BIN_FLAGS_HASH_DATA) if (bin_flags & BIN_FLAGS_HASH_DATA)
{ {
hash->Complete(hashstr); hash->Complete(hashstr);
@ -716,12 +716,12 @@ int NetBinDummy::close()
return 1; return 1;
} }
std::string NetBinDummy::gethash() RsFileHash NetBinDummy::gethash()
{ {
std::cerr << "NetBinDummy::gethash() "; std::cerr << "NetBinDummy::gethash() ";
printNetBinID(std::cerr, PeerId(), type); printNetBinID(std::cerr, PeerId(), type);
std::cerr << std::endl; std::cerr << std::endl;
return std::string(""); return RsFileHash();
} }

View file

@ -72,7 +72,7 @@ virtual bool cansend(uint32_t /* usec */)
virtual bool bandwidthLimited() { return false; } virtual bool bandwidthLimited() { return false; }
//! if HASHing is switched on //! if HASHing is switched on
virtual std::string gethash(); virtual RsFileHash gethash();
virtual uint64_t bytecount(); virtual uint64_t bytecount();
protected: protected:
@ -178,7 +178,7 @@ virtual bool cansend(uint32_t /* usec */)
} }
virtual bool bandwidthLimited() { return false; } virtual bool bandwidthLimited() { return false; }
virtual std::string gethash(); virtual RsFileHash gethash();
virtual uint64_t bytecount(); virtual uint64_t bytecount();
private: private:
@ -227,7 +227,7 @@ virtual bool moretoread(uint32_t usec);
virtual bool cansend(uint32_t usec); virtual bool cansend(uint32_t usec);
virtual int close(); virtual int close();
virtual std::string gethash(); virtual RsFileHash gethash();
private: private:
uint32_t type; uint32_t type;

View file

@ -63,7 +63,7 @@ void addData(const void *data, uint32_t len)
} }
} }
void Complete(std::string &hash) void Complete(RsFileHash &hash)
{ {
if (!doHash) if (!doHash)
{ {
@ -74,8 +74,7 @@ void Complete(std::string &hash)
SHA1_Final(sha_hash, sha_ctx); SHA1_Final(sha_hash, sha_ctx);
endHash.clear(); endHash.clear();
endHash = hash = Sha1CheckSum(sha_hash);
endHash = hash = Sha1CheckSum(sha_hash).toStdString() ;
// for(int i = 0; i < SHA_DIGEST_LENGTH; i++) // for(int i = 0; i < SHA_DIGEST_LENGTH; i++)
// { // {
@ -90,7 +89,7 @@ void Complete(std::string &hash)
private: private:
bool doHash; bool doHash;
std::string endHash; RsFileHash endHash;
uint8_t *sha_hash; uint8_t *sha_hash;
SHA_CTX *sha_ctx; SHA_CTX *sha_ctx;
}; };

View file

@ -1902,10 +1902,9 @@ bool pqissl::cansend(uint32_t usec)
} }
std::string pqissl::gethash() RsFileHash pqissl::gethash()
{ {
std::string dummyhash; return RsFileHash() ;
return dummyhash;
} }
/********** End of Implementation of BinInterface ******************/ /********** End of Implementation of BinInterface ******************/

View file

@ -113,7 +113,7 @@ virtual bool moretoread(uint32_t usec);
virtual bool cansend(uint32_t usec); virtual bool cansend(uint32_t usec);
virtual int close(); /* BinInterface version of reset() */ virtual int close(); /* BinInterface version of reset() */
virtual std::string gethash(); /* not used here */ virtual RsFileHash gethash(); /* not used here */
virtual bool bandwidthLimited() { return true ; } // replace by !sameLAN to avoid bandwidth limiting on LAN virtual bool bandwidthLimited() { return true ; } // replace by !sameLAN to avoid bandwidth limiting on LAN
public: public:

View file

@ -363,7 +363,7 @@ int pqistore::readPkt(RsItem **item_out)
} }
/**** Hashing Functions ****/ /**** Hashing Functions ****/
std::string pqistore::gethash() RsFileHash pqistore::gethash()
{ {
return bio->gethash(); return bio->gethash();
} }

View file

@ -51,7 +51,7 @@ virtual RsItem *GetItem();
virtual int tick(); virtual int tick();
virtual int status(); virtual int status();
std::string gethash(); RsFileHash gethash();
bool bStopReading; bool bStopReading;

View file

@ -111,7 +111,7 @@ virtual bool createPost(uint32_t &token, RsGxsChannelPost &post) = 0;
// File Interface // File Interface
virtual bool ExtraFileHash(const std::string &path, std::string filename) = 0; virtual bool ExtraFileHash(const std::string &path, std::string filename) = 0;
virtual bool ExtraFileRemove(const std::string &hash) = 0; virtual bool ExtraFileRemove(const RsFileHash &hash) = 0;
}; };

View file

@ -37,7 +37,7 @@ class RsGxsFile
public: public:
RsGxsFile(); RsGxsFile();
std::string mName; std::string mName;
std::string mHash; RsFileHash mHash;
uint64_t mSize; uint64_t mSize;
//std::string mPath; //std::string mPath;
}; };

View file

@ -16,7 +16,7 @@
#include <retroshare/rsids.h> #include <retroshare/rsids.h>
typedef GXSGroupId RsGxsGroupId; typedef GXSGroupId RsGxsGroupId;
typedef std::string RsGxsMessageId; typedef RsFileHash RsGxsMessageId;
typedef std::map<RsGxsGroupId, std::vector<RsGxsMessageId> > GxsMsgIdResult; typedef std::map<RsGxsGroupId, std::vector<RsGxsMessageId> > GxsMsgIdResult;
typedef std::pair<RsGxsGroupId, RsGxsMessageId> RsGxsGrpMsgIdPair; typedef std::pair<RsGxsGroupId, RsGxsMessageId> RsGxsGrpMsgIdPair;
@ -103,11 +103,11 @@ public:
RsGxsGroupId mGroupId; RsGxsGroupId mGroupId;
std::string mMsgId; RsGxsMessageId mMsgId;
std::string mThreadId; RsGxsMessageId mThreadId;
std::string mParentId; RsGxsMessageId mParentId;
std::string mOrigMsgId; RsGxsMessageId mOrigMsgId;
std::string mAuthorId; std::string mAuthorId;

View file

@ -350,7 +350,6 @@ int RsInit::InitRetroShare(int argcIgnored, char **argvIgnored, bool strictCheck
#endif #endif
/******************************** WINDOWS/UNIX SPECIFIC PART ******************/ /******************************** WINDOWS/UNIX SPECIFIC PART ******************/
int c;
std::string prefUserString = ""; std::string prefUserString = "";
std::string opt_base_dir; std::string opt_base_dir;
@ -1365,10 +1364,8 @@ int RsServer::StartupRetroShare()
currGxsDir += "_TESTNET7"; currGxsDir += "_TESTNET7";
#endif #endif
bool cleanUpGxsDir = false;
if(!priorGxsDir.empty()) if(!priorGxsDir.empty())
cleanUpGxsDir = RsDirUtil::checkDirectory(priorGxsDir); RsDirUtil::checkDirectory(priorGxsDir);
std::set<std::string> filesToKeep; std::set<std::string> filesToKeep;
bool cleanUpSuccess = RsDirUtil::cleanupDirectory(priorGxsDir, filesToKeep); bool cleanUpSuccess = RsDirUtil::cleanupDirectory(priorGxsDir, filesToKeep);

View file

@ -204,7 +204,7 @@ bool RsNxsSerialiser::serialiseNxsSynMsgItem(RsNxsSyncMsgItem *item, void *data,
ok &= setRawUInt32(data, *size, &offset, item->transactionNumber); ok &= setRawUInt32(data, *size, &offset, item->transactionNumber);
ok &= setRawUInt8(data, *size, &offset, item->flag); ok &= setRawUInt8(data, *size, &offset, item->flag);
ok &= item->grpId.serialise(data, *size, offset); ok &= item->grpId.serialise(data, *size, offset);
ok &= SetTlvString(data, *size, &offset, TLV_TYPE_STR_MSGID, item->msgId); ok &= item->msgId.serialise(data, *size, offset) ;
ok &= SetTlvString(data, *size, &offset, TLV_TYPE_STR_NAME, item->authorId); ok &= SetTlvString(data, *size, &offset, TLV_TYPE_STR_NAME, item->authorId);
if(offset != tlvsize){ if(offset != tlvsize){
@ -253,7 +253,7 @@ bool RsNxsSerialiser::serialiseNxsMsg(RsNxsMsg *item, void *data, uint32_t *size
ok &= setRawUInt32(data, *size, &offset, item->transactionNumber); ok &= setRawUInt32(data, *size, &offset, item->transactionNumber);
ok &= setRawUInt8(data, *size, &offset, item->pos); ok &= setRawUInt8(data, *size, &offset, item->pos);
ok &= SetTlvString(data, tlvsize, &offset, TLV_TYPE_STR_MSGID, item->msgId); ok &= item->msgId.serialise(data, tlvsize, offset) ;
ok &= item->grpId.serialise(data, *size, offset); ok &= item->grpId.serialise(data, *size, offset);
ok &= item->msg.SetTlv(data, tlvsize, &offset); ok &= item->msg.SetTlv(data, tlvsize, &offset);
ok &= item->meta.SetTlv(data, *size, &offset); ok &= item->meta.SetTlv(data, *size, &offset);
@ -643,7 +643,7 @@ RsNxsMsg* RsNxsSerialiser::deserialNxsMsg(void *data, uint32_t *size){
ok &= getRawUInt32(data, *size, &offset, &(item->transactionNumber)); ok &= getRawUInt32(data, *size, &offset, &(item->transactionNumber));
ok &= getRawUInt8(data, *size, &offset, &(item->pos)); ok &= getRawUInt8(data, *size, &offset, &(item->pos));
ok &= GetTlvString(data, *size, &offset, TLV_TYPE_STR_MSGID, item->msgId); ok &= item->msgId.deserialise(data, *size, offset) ;
ok &= item->grpId.deserialise(data, *size, offset); ok &= item->grpId.deserialise(data, *size, offset);
ok &= item->msg.GetTlv(data, *size, &offset); ok &= item->msg.GetTlv(data, *size, &offset);
ok &= item->meta.GetTlv(data, *size, &offset); ok &= item->meta.GetTlv(data, *size, &offset);
@ -917,7 +917,7 @@ RsNxsSyncMsgItem* RsNxsSerialiser::deserialNxsSyncMsgItem(void *data, uint32_t *
ok &= getRawUInt32(data, *size, &offset, &(item->transactionNumber)); ok &= getRawUInt32(data, *size, &offset, &(item->transactionNumber));
ok &= getRawUInt8(data, *size, &offset, &(item->flag)); ok &= getRawUInt8(data, *size, &offset, &(item->flag));
ok &= item->grpId.deserialise(data, *size, offset); ok &= item->grpId.deserialise(data, *size, offset);
ok &= GetTlvString(data, *size, &offset, TLV_TYPE_STR_MSGID, item->msgId); ok &= item->msgId.deserialise(data, *size, offset) ;
ok &= GetTlvString(data, *size, &offset, TLV_TYPE_STR_NAME, item->authorId); ok &= GetTlvString(data, *size, &offset, TLV_TYPE_STR_NAME, item->authorId);
if (offset != rssize) if (offset != rssize)
@ -1032,7 +1032,7 @@ uint32_t RsNxsSerialiser::sizeNxsMsg(RsNxsMsg *item)
s += 4; // transaction number s += 4; // transaction number
s += 1; // pos s += 1; // pos
s += item->grpId.serial_size(); s += item->grpId.serial_size();
s += GetTlvStringSize(item->msgId); s += item->msgId.serial_size();
s += item->msg.TlvSize(); s += item->msg.TlvSize();
s += item->meta.TlvSize(); s += item->meta.TlvSize();
@ -1104,7 +1104,7 @@ uint32_t RsNxsSerialiser::sizeNxsSyncMsgItem(RsNxsSyncMsgItem *item)
s += 4; // transaction number s += 4; // transaction number
s += 1; // flag s += 1; // flag
s += item->grpId.serial_size(); s += item->grpId.serial_size();
s += GetTlvStringSize(item->msgId); s += item->msgId.serial_size();
s += GetTlvStringSize(item->authorId); s += GetTlvStringSize(item->authorId);
return s; return s;

View file

@ -262,7 +262,7 @@ public:
uint8_t flag; // response/req uint8_t flag; // response/req
RsGxsGroupId grpId; RsGxsGroupId grpId;
std::string msgId; RsGxsMessageId msgId;
std::string authorId; std::string authorId;
}; };
@ -296,7 +296,7 @@ public:
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
RsGxsGroupId grpId; /// group id, forms part of version id RsGxsGroupId grpId; /// group id, forms part of version id
std::string msgId; /// msg id RsFileHash msgId; /// msg id
static int refcount; static int refcount;
/*! /*!

View file

@ -598,7 +598,7 @@ void p3GxsChannels::handleUnprocessedPost(const RsGxsChannelPost &msg)
for(fit = msg.mFiles.begin(); fit != msg.mFiles.end(); fit++) for(fit = msg.mFiles.begin(); fit != msg.mFiles.end(); fit++)
{ {
std::string fname = fit->mName; std::string fname = fit->mName;
std::string hash = fit->mHash; RsFileHash hash = fit->mHash;
uint64_t size = fit->mSize; uint64_t size = fit->mSize;
std::list<RsPeerId> srcIds; std::list<RsPeerId> srcIds;
@ -685,7 +685,6 @@ bool p3GxsChannels::autoDownloadEnabled(const RsGxsGroupId &id)
bool SSGxsChannelGroup::load(const std::string &input) bool SSGxsChannelGroup::load(const std::string &input)
{ {
char line[RSGXSCHANNEL_MAX_SERVICE_STRING];
int download_val; int download_val;
mAutoDownload = false; mAutoDownload = false;
if (1 == sscanf(input.c_str(), "D:%d", &download_val)) if (1 == sscanf(input.c_str(), "D:%d", &download_val))
@ -832,7 +831,7 @@ bool p3GxsChannels::ExtraFileHash(const std::string &path, std::string filename)
} }
bool p3GxsChannels::ExtraFileRemove(const std::string &hash) bool p3GxsChannels::ExtraFileRemove(const RsFileHash &hash)
{ {
TransferRequestFlags tflags = RS_FILE_REQ_ANONYMOUS_ROUTING | RS_FILE_REQ_EXTRA; TransferRequestFlags tflags = RS_FILE_REQ_ANONYMOUS_ROUTING | RS_FILE_REQ_EXTRA;
return rsFiles->ExtraFileRemove(hash, tflags); return rsFiles->ExtraFileRemove(hash, tflags);
@ -1016,7 +1015,7 @@ void p3GxsChannels::dummy_tick()
RsGxsGroupId grpId = ref.mGroupId; RsGxsGroupId grpId = ref.mGroupId;
RsGxsMessageId parentId = ref.mMsgId; RsGxsMessageId parentId = ref.mMsgId;
mGenThreadId = ref.mThreadId; mGenThreadId = ref.mThreadId;
if (mGenThreadId.empty()) if (mGenThreadId.isNull())
{ {
mGenThreadId = parentId; mGenThreadId = parentId;
} }
@ -1038,7 +1037,7 @@ void p3GxsChannels::dummy_tick()
RsGxsGroupId grpId = ref.mGroupId; RsGxsGroupId grpId = ref.mGroupId;
RsGxsMessageId parentId = ref.mMsgId; RsGxsMessageId parentId = ref.mMsgId;
mGenThreadId = ref.mThreadId; mGenThreadId = ref.mThreadId;
if (mGenThreadId.empty()) if (mGenThreadId.isNull())
{ {
mGenThreadId = parentId; mGenThreadId = parentId;
} }
@ -1060,7 +1059,7 @@ void p3GxsChannels::dummy_tick()
RsGxsGroupId grpId = ref.mGroupId; RsGxsGroupId grpId = ref.mGroupId;
RsGxsMessageId parentId = ref.mMsgId; RsGxsMessageId parentId = ref.mMsgId;
mGenThreadId = ref.mThreadId; mGenThreadId = ref.mThreadId;
if (mGenThreadId.empty()) if (mGenThreadId.isNull())
{ {
mGenThreadId = parentId; mGenThreadId = parentId;
} }
@ -1108,7 +1107,7 @@ bool p3GxsChannels::generateComment(uint32_t &token, const RsGxsGroupId &grpId,
std::string rndId = genRandomId(); std::string rndId = genRandomId();
rs_sprintf(msg.mComment, "Channel Comment: GroupId: %s, ThreadId: %s, ParentId: %s + some randomness: %s", rs_sprintf(msg.mComment, "Channel Comment: GroupId: %s, ThreadId: %s, ParentId: %s + some randomness: %s",
grpId.toStdString().c_str(), threadId.c_str(), parentId.c_str(), rndId.c_str()); grpId.toStdString().c_str(), threadId.toStdString().c_str(), parentId.toStdString().c_str(), rndId.c_str());
msg.mMeta.mMsgName = msg.mComment; msg.mMeta.mMsgName = msg.mComment;

View file

@ -142,7 +142,7 @@ virtual void setMessageReadStatus(uint32_t& token, const RsGxsGrpMsgIdPair& msgI
// File Interface // File Interface
virtual bool ExtraFileHash(const std::string &path, std::string filename); virtual bool ExtraFileHash(const std::string &path, std::string filename);
virtual bool ExtraFileRemove(const std::string &hash); virtual bool ExtraFileRemove(const RsFileHash &hash);
protected: protected:

View file

@ -414,14 +414,14 @@ bool p3GxsCommentService::createGxsVote(uint32_t &token, RsGxsVote &vote)
std::cerr << std::endl; std::cerr << std::endl;
/* vote must be associated with another item */ /* vote must be associated with another item */
if (vote.mMeta.mThreadId.empty()) if (vote.mMeta.mThreadId.isNull())
{ {
std::cerr << "p3GxsCommentService::createGxsVote() ERROR Missing Required ThreadId"; std::cerr << "p3GxsCommentService::createGxsVote() ERROR Missing Required ThreadId";
std::cerr << std::endl; std::cerr << std::endl;
return false; return false;
} }
if (vote.mMeta.mParentId.empty()) if (vote.mMeta.mParentId.isNull())
{ {
std::cerr << "p3GxsCommentService::createGxsVote() ERROR Missing Required ParentId"; std::cerr << "p3GxsCommentService::createGxsVote() ERROR Missing Required ParentId";
std::cerr << std::endl; std::cerr << std::endl;

View file

@ -396,7 +396,7 @@ void p3GxsForums::dummy_tick()
RsGxsGroupId grpId = ref.mGroupId; RsGxsGroupId grpId = ref.mGroupId;
RsGxsMessageId parentId = ref.mMsgId; RsGxsMessageId parentId = ref.mMsgId;
mGenThreadId = ref.mThreadId; mGenThreadId = ref.mThreadId;
if (mGenThreadId.empty()) if (mGenThreadId.isNull())
{ {
mGenThreadId = parentId; mGenThreadId = parentId;
} }
@ -420,7 +420,7 @@ bool p3GxsForums::generateMessage(uint32_t &token, const RsGxsGroupId &grpId, co
std::string rndId = genRandomId(); std::string rndId = genRandomId();
rs_sprintf(msg.mMsg, "Forum Msg: GroupId: %s, ThreadId: %s, ParentId: %s + some randomness: %s", rs_sprintf(msg.mMsg, "Forum Msg: GroupId: %s, ThreadId: %s, ParentId: %s + some randomness: %s",
grpId.toStdString().c_str(), threadId.c_str(), parentId.c_str(), rndId.c_str()); grpId.toStdString().c_str(), threadId.toStdString().c_str(), parentId.toStdString().c_str(), rndId.c_str());
msg.mMeta.mMsgName = msg.mMsg; msg.mMeta.mMsgName = msg.mMsg;

View file

@ -429,7 +429,7 @@ void p3PostBase::background_loadMsgs(const uint32_t &token, bool unprocessed)
} }
/* 3 types expected: PostedPost, Comment and Vote */ /* 3 types expected: PostedPost, Comment and Vote */
if (parentId.empty()) if (parentId.isNull())
{ {
/* we don't care about top-level (Posts) */ /* we don't care about top-level (Posts) */
std::cerr << "\tIgnoring TopLevel Item"; std::cerr << "\tIgnoring TopLevel Item";