Commit Graph

44 Commits

Author SHA1 Message Date
Gioacchino Mazzurco
90bacf12bd
RsGxsDataAccess filtered getters do not return all messages if none matches
This was causing scary error message in RsGxsChannels with autodoanload
  enabled, when all messages where already processed none matched the
  filter so all messages where returned,
  making p3GxsChannels::handleUnprocessedPost furious
  more details into this forum post
  retroshare://forum?name=Scary%20message%2C%20but%20which%20doesn%27t%20seem%20to%20be%20the%20source%20of%20the%20problems%20Was%3A%20More%20GXS%20strange%20messages&id=8fd22bd8f99754461e7ba1ca8a727995&msgid=04f10ff97f761c6840c33f1610cb050f0f73da8d
2018-11-09 23:46:21 +01:00
Gioacchino Mazzurco
329050a9c2
Use safer rstime_t instead of time_t
Avoid problems to serialization on different platforms, without breaking
nested STL containers serialization.

The conversion have been made with sed, and checked with grep, plus
kdiff3 visual ispection, plus rutime tests, so it should be fine.
2018-10-07 13:07:06 +02:00
csoler
6848a586f3
merged upstream/master 2018-07-08 21:17:48 +02:00
csoler
84699db744
changed std::vector into std::set in notification system, hence removing lots of std::find(std::vector::begin(),std::vector::end(),T), causing quadratic costs in multiple places. 2018-06-21 15:46:59 +02:00
csoler
b3277824eb
license fix in pqi 2018-05-28 22:03:39 +02:00
csoler
d5627d4b22
fixed license in ft, grouter, and gxs 2018-05-22 22:03:11 +02:00
csoler
841fee6799 fixed possible crash due to accessing deleted memory in database cache access 2018-01-15 23:13:42 +01:00
csoler
4eea5a8eca removed consts in GrpMetaCache pointers, and made it possible to always re=use cache entries, possibly updating them 2018-01-10 00:10:08 +01:00
csoler
b42b8e3a51 moved memory ownership of RsGxsGrpMetaData down into RsGxsDataAccess. Avoids many copy-constructors of RsTlvSecurityKey. Will probably spare a lot of CPU on windows 2018-01-07 21:41:41 +01:00
csoler
461ccf3b84 removed aliasing in storeMessages/storeGroups, removed several memory leaks in unittests, improved auto-delete structures in rsgxsutil, added deletion for members of RsGenExchange, removed shared pointers from unittests (they cause a memory leak and are only used in unittests) 2017-07-25 00:07:53 +02:00
csoler
daf54dff3d fixed missing RsGxsGrpMeta cache update when updating grp meta, which caused unstable group flags/name/perms update 2016-07-22 17:49:07 -04:00
csoler
86d8f01033 added a local cache in rsdataservice to avoid calling sqlcipher on GrpMetaData 2016-07-01 23:38:10 -04:00
thunder2
869077b4a5 Combined selects in RsDataService::retrieveNxsGrps/RsDataService::retrieveNxsMsgs. 2015-09-06 01:13:27 +02:00
thunder2
1fcae6155d Removed static defines for column numbers in RsDataService and replaced it with members. Initialized members when adding attributes to the select list. 2015-08-23 19:05:37 +02:00
thunder2
f30ed24a4a Moved gxs data from files into database
- Added update to RsDataService
- Added new table "DATABASE_RELEASE" to database

Advantages:
- Better performance because of the removed additional file access
- Transaction safety
- All groups and messages are stored in the database

Attention:
Please make a backup of your data folder before you try this version.
The first start of the application will update the database and can take a little bit longer. Once the database was converted the messages cannot be read by older versions of the application.
2015-08-23 13:41:59 +02:00
thunder2
caa97cce70 Added database name to the debug output in RsDataService. 2015-08-13 11:59:14 +02:00
csoler
d0469ccfc3 implemented publish key sharing between peers for channels.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7582 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-10-05 19:14:05 +00:00
chrisparker126
c6059906d0 Added msg sync unit test
- not passing yet but almost, more tweaking needed 
TODO: identity and circle vet test
- added retrieve msg id for convenience
- updated .pro file

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7303 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-04-26 10:07:25 +00:00
chrisparker126
0f29d28b1b merge of branch v0.6-idclean 7180
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7187 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-03-17 20:56:06 +00:00
drbob
c0738eec7f Merging branches/v0.6-initdev into trunk.
These split at 6672 -> 7075, so quite a bit merge.
libretroshare compiles - but untested.
retroshare-gui needs GenCertDialog.ui and IdEditDialog.ui to be properly merged. (compile errors).
some plugins will be broken.
retroshare-nogui is untested.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7078 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-02-01 14:16:15 +00:00
chrisparker126
55bbfb29da Electron patch
- fixes issue with, message offsets not being calculated in loop correctly, resulted in only invalid message offset in db after calling message removal

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6819 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-11 17:29:38 +00:00
chrisparker126
3799910188 More changes to support front end of group update
- still need to make sync changes

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs_finale@6741 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-15 21:18:20 +00:00
chrisparker126
33eb99d812 added group update feature
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs_finale@6733 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-11 20:42:56 +00:00
chrisparker126
325fa4f222 merging gxs_phase2 branch
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6401 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-04 21:00:43 +00:00
chrisparker126
d6328c8123 more GXS changes for phase1
clean up now on by default
- unsubscription from group also leads to message clean up
- check for keep flag

added functions to retrieve stats 
- not active yet

fixed forum authen flag 
- do not need author to create group
- also policy variable not initialised correctly

added KEEP and DELETE flag 

improved GXS resilience to peers sending NULL grp/msg binary data for deserialisation (peers could crash other peer by sending empty RsTlvBinaryData)

rstokenservice iface affected so full recompile recommended

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6274 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-23 14:07:52 +00:00
chrisparker126
f0e0b85637 Code for message cleanup (inactive), message store period param added to RsGenExchange
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6262 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-20 22:26:24 +00:00
chrisparker126
7867063734 Fixed resource exhaustion due to message/group notification not being handled
Added message/group size limit
Added message validation (identity and publish key)
Added code for message/grp fragmentation/defragmentation (not integrated yet) 
Added crude id picker to photoshare


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6106 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-02-07 23:04:16 +00:00
chrisparker126
d8dc2a0420 publish key not generated for public groups anymore, added signature creation for publish and id keys (used in main line of code, correctly initialise ur gxs services)
groupid assigned to group before service_CreateGroup now (to help with identity using pgp hashes)
fixed up dummy group creation for photo service and ui 
completed basic functions of GxsGroupDialog




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5809 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-11 23:45:22 +00:00
chrisparker126
57407fb8ae Added helper function to GXS services to access token management and data store
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5680 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-15 18:52:47 +00:00
chrisparker126
2e3e5b4ee4 added photo comment serialisation and addition
reimplemented getmsgrelatedinfo and getmsginfo as previous was incorrectly done, rstokenservice for msgs buggy now
updated test, commiting to transfer work to windows

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5576 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-20 17:18:26 +00:00
chrisparker126
08904bf82f Improved token service interface with more obvious request calls (grpIds and msgIds list being empty is not implicit of retrieving all ids)
Updated GXS tests and applied fixes
started transfering flags to gxs flags header file

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5513 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-04 22:32:52 +00:00
chrisparker126
c17460d1b1 Got message retrieval working for genexchange across gxs chain
- fixed segv bugs for message retrieval and improved data service meta data retrieval 
- fixed compile for windows (exposed too many of rs internals in interface!)
- fixed msg signing functionality and id creation with ssl
- still need to complete photoservice gui and local meta change function

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5443 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-19 22:15:37 +00:00
chrisparker126
a715947046 Added Rs photo v2 item serialisation test, fixed subsequent bugs
Reactivated Photodialog. almost completed integration, publishing and item storage working, 
but data retrieval algorithm needs to be changed (request flags need to be translated, based on update call rather than client assumption)
fixed bug in rsgenexchange notification. 
Added LGPL notices


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5387 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-06 21:00:38 +00:00
chrisparker126
d50ecd145f cache stuff does not compile. just saving lots of coding i've done.
Completed most of the coding for first new cache service, need to fix compile errors and test. 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5330 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-26 21:48:54 +00:00
chrisparker126
52a911329e group synchronisation now working (message syn not up yet, will do later, simple extension)
updated hub test


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5300 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-15 12:38:20 +00:00
chrisparker126
d3e5ec2836 added cleanup function to test hub
refined group retrieval for RsDataService
also added fix for RsNxsTrasac flag masks
added group data send transaction generation, and fix for request generation

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5298 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-14 17:59:54 +00:00
chrisparker126
24f6f874f2 added some compile fixes (didn't define static variables in nxsitems and nxstransaction)
added new nxs net test hub code for testing nxs netservice (fails at the moment) 
also a completed definitions and other related compile time issue due to incorrect inheritance statements

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5290 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-12 20:18:58 +00:00
chrisparker126
d533a2e580 Nxs items now do not support the concept of version
timestamp has been added to grp sync item 
updated data service and grps to deal with this
added msg and grp meta types which serves to hold meta data of grp and msg 
removed observer temporarily 

updated nxs item tests, need to update data service tests

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5256 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-26 19:52:01 +00:00
chrisparker126
441a51757f returned src to compilable stage
added orig msgid and removed sign from nxsmsg, renamed nxsitems more appropriately 
added more code to nxs net service
removed msg versioning from data service and added extra msgField 
modified nxsitem test and datastore service appropriately, all pass 
added serialisation of transactions and added transaction number to nxsitems



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5215 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-11 21:56:23 +00:00
chrisparker126
822e395f93 added more extensive test for rsdataservice and subsequent bug fixes.
added test for RsNxsTransac item. 
applied rule of three to RsTlvBinaryData (destructor, assign op, copy constructor implemented)

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5196 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-05 14:46:18 +00:00
chrisparker126
36103b29a1 added transaction items and more modification methods for data service (delete msg/grps)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5193 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-06-03 18:09:38 +00:00
chrisparker126
768cf49da6 updated rsnxsitem test and added appropriate fixes.
fixed undeclared virtual methods in rsdataservice, added test files
overloaded assignment op for Rstlvbindata 
 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5187 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-24 22:38:59 +00:00
chrisparker126
add4715da0 implemented most of rsdataservice,
updated rsnxsitems with discrete msgs and grp item rather than collection of msgs/grps
added flags header file 
added first declaration of implemented genexchange service (client API interface)

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5180 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-21 22:07:43 +00:00
chrisparker126
f05ed342ed added dataservice for adding and removing msgs and grps from. does not compile.
just a check point
Added client side defintions of msg and grp

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5175 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-05-17 22:45:48 +00:00