Commit Graph

73 Commits

Author SHA1 Message Date
chrisparker126
39909b705f merging rs_gxs-finale to v0.6 branch
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6953 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-12-21 18:20:47 +00:00
chrisparker126
e50f017572 Fixes of msg sync optimisation
- msg sync opt now working
 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs_finale@6913 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-11-27 21:54:05 +00:00
chrisparker126
24839ee237 decided to use polling and a database trigger to maintain consistentency of last group post for database sync
- db reset done, you will lose your current gxs data

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs_finale@6906 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-11-23 23:39:55 +00:00
chrisparker126
67c55991d7 decided to continue propagating peer details in
- gxsnet now has a ctor option to disable auto group sync

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs_finale@6888 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-11-03 23:46:34 +00:00
chrisparker126
a6f62caef4 -fixed an update issue with actual group item
- simply didn't open grp file in "out" mode on update
-made update a bit more sturdy is group not found on update
  - prevent client can crash librs
  
- updated unit tests for grps and messages
- removed data base removal on db reset as cannot rekey db unfortunately (as passphrase (ssl) cannot be kept in the clear in mem)

 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs_finale@6873 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-22 19:56:01 +00:00
chrisparker126
19d7faa572 finally found group signature bug, was aliasing signature in validateGrp call (perfect example of why one should use const)!
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs_finale@6831 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-14 22:03:11 +00:00
chrisparker126
fc1b7fcb5c more debugging of group update
- did not correctly perform sync
- admin signature validation was being skipped!
- still niggly issue with admin signature validation

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs_finale@6829 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-13 21:49:17 +00:00
chrisparker126
25d721b6fe Code change to test group edit
- can modify group names and content now
 
 Group edit code fixes

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs_finale@6811 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-06 21:07:31 +00:00
chrisparker126
9470e5562a Added update capability to forums ui
Added timestamp check for group update in nxs
decided to add control variable to allow meta changes in updates rather than none


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs_finale@6803 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-10-05 11:36:31 +00:00
thunder2
72c7569619 Fixed compile of libretroshare on Windows.
Cleaned some includes of openssl.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6769 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-26 23:53:06 +00:00
chrisparker126
2a841d7ab3 fixed mem bug
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs_finale@6747 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-18 18:13: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
thunder2
f5218cdfc3 Fixed crash after last commit in p3idservice.cc.
Fixed memory leaks and possible crashs in ::getGroupData
- p3gxschannels
- p3gxscircles
- p3gxsforums
- p3idservice
- p3posted
- p3photoservice


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6524 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-07-21 01:50:13 +00:00
chrisparker126
6b0594dfe1 Fixed database keying bug, left db closed causing meta modification fail.
- needed to keep ssl pword a little while longer after rs init

Added more sturdy logic to prevent segv on failed msg/grp meta modification

Added, Data base does not key database if key string is empty

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6448 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-20 19:50:25 +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
84fe53b611 forgot to change default storage and clean up period
- 1 month default message storage period
- cleanup period every 5 minutes
- suggest devs lower this to 5 minute store period and 1 minute cleanup period to test out.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6275 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-23 14:13:15 +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
3ed2e471b6 fixes for message clean-up, code now working.
can be enabled with #define GXS_CLEAN_UP, default message store period set
to 1 day, cleaned every 3 minutes. Does not comply fully with spec yet (does not use msg not delete flag)


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6267 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-21 23:17:24 +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
83e41eb04c Fix for channel bug: used service id twice
Fix for posted lock-up/rsgenexchange bug: did not release after try lock
Removed erroneous use of subscribe_admin to mean subscribed (subscribe_subscribe) in gxsnet

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6245 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-19 20:13:13 +00:00
thunder2
c74a36fff8 Fixed memory leak in RsGenExchange::processRecvdGroups when group could not be deserialised.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6237 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-17 15:46:05 +00:00
chrisparker126
ea2788b2d2 Updated gxs net test
tested fragmentation with 1 item coalesion
created groups now have admin/subscribed/publish flag (no publish optimisation yet)
was incorrectly apply group_subscribe_mask to group subscribed, using correct mask now. Added comments clarifying purpose of subscribe_mask
Implemented fragmentation but placed under preprocessor flags for phase 2. 



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6234 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-16 16:44:33 +00:00
drbob
a4aa011207 GxsChannels are basically complete now!:
- Fixed up Automatic downloads for GxsChannels. 
 - Tweaked GXS backend to make Meta Changes happen before requests.
 - Added some new Macros.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6231 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-16 12:31:31 +00:00
chrisparker126
12172e3acc Added PGP GxsId signature creation
group creation operates on a 10 second timeout rather than number of attempts

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6205 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-11 16:04:25 +00:00
chrisparker126
bc8c569db3 Added group validation code.
Tested and seems to work fine
Reverted back setAuthenPolicy static function to overwrite semantics and modified wiki and channels policy to equivalents statements

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6201 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-10 15:08:04 +00:00
chrisparker126
83ec723d8d Added group signature creation
Added return values for deferred sign function in identity and circles
Not ready for deferred sign testing yet

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6199 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-08 19:55:59 +00:00
chrisparker126
23209c8c45 handled validation/sign of message when key not available
(set for 5 attempts before message is dropped)
moved rstokenservice.h to retroshare interface folder
groups do not sync anymore unless user is subscribed to it

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6194 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-06 23:33:23 +00:00
drbob
0f78719d7f added missing checks for deserialisation success.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6190 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-04 22:43:55 +00:00
chrisparker126
50c75de73c Refactored GXS interface to remove exposure to RS internals (i.e. only reference types, declaration in retroshare folder)
To achieve this I created second interface RsGxsIface which RsGxsGenExchange derives from, and RsGxsIfaceImpl (renamed RsGxsIfaceHelper) now takes an instance of this instead so these interfaces don't exposed the RsGenExchange and its underlying types. 

The other stuff is simply definitions and type aliases required for the front-ends to work (RsGroupMeta, RsGroupId, etc) and I've moved gxs flags also. 

This is a good idea as it seem much more clear what's available to a GXS service (apart from RsGenExchange public methods).  


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6166 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-02-28 21:58:38 +00:00
drbob
ea8d71ee71 Fixed AuthenFlags ...
There were a couple of issues.
    - Setting function was wiping other flags. This is fine - if known - but not how we were using the fns.
    - Offsets were just wacky!

Added some more debugging so we can know if/why a message is not being created.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6162 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-02-27 22:51:58 +00:00
drbob
c13192b4c3 Fixed up validate / create Signature logic.
Added comments about missing re-try for Keys that are not in Cache.





git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6159 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-02-27 21:20:00 +00:00
chrisparker126
d6c34f1b74 Fixed sign validation. request not reachable in previous logic
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6129 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-02-16 10:51:00 +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
drbob
d8e327afcc * Patched for Arch.
* Disabled FeedReader until is compiles properly.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5997 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-16 21:12:26 +00:00
chrisparker126
3eaf844ec8 Reworked ranking process flow
added ranking retrieval in gui 
removed locks from TokenQueue
refactored gxs p3 pointers in p3face header file 
and gxs services now shutdown correctly using join(led to bad segfaults on shutdown)

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5972 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-11 22:26:11 +00:00
chrisparker126
6527aaf2d8 Recommiting from old repo:
commit msg from last:

Fixed minor bug in group creation
msg now set to unread and unprocessed on creation (added read flag in gxsflags.h also)
Got topic and post generation working 

Additional changes:

Voting update now working

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5951 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-08 21:50:13 +00:00
chrisparker126
bcf9f443b4 added option to RsTokReqOptions for group subscription filter
added code for rank calculation best,top, and newest (not enabled, not working yet...)
added variables for circles to grp meta type and modified storage and serialisation accordingly




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5930 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-02 19:40:17 +00:00
drbob
c6e6d444bf Added Identity Info retrieval to rsIdentities.
This is now pretty much complete for Phase 1 of GXS.
Still todo:
	- PGPHash signatures.
	- Reputations.

 - Added two helper classes GxsTokenQueue: similar to TokenQueue, but for libretroshare
       & RsTickEvent: schedule one shot events, and basic stats.
 - Reorganised/simplified p3IdService using these two classes.
 - Added fns to load/reload a list of Own Identities.
 - Improved the Cache to store all GUI required Info.
 - Updater retroshare/rsidentity.h with new Identity interface.
 - added fns to update Cache from internal background tasks.
 - Modified RsMemCache to support replace operation.
 - Found nasty Bug that caused PGPHASHes not to match & Patched same bug in GXS.
 - added generic CacheArbitration.
 - Added AuthorIds to dummy Forum messages.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5848 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-19 22:00:05 +00:00
chrisparker126
d591d795bd Fix providing mask for setting group subscribeFlag, msgStatus and grpStatus
Tests updated

Also setting msg and grp Status to unprocessed and unread on receipt from a sync (see rsgxsflag.h). These are set on bits masked by 0xf00.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5834 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-17 14:35:21 +00:00
drbob
9373d26be0 * Added Dummy Forums and Messages to GxsForums.
* Extra GxsForums::getRelatedMessages() fn + HACKs to cover up GXS bugs.
 * more debugging in rsgenexchange.
 * fixed up some of wikis text.
 


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5828 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-15 23:50:54 +00:00
chrisparker126
f74a328d61 Bug fix for ES_GXS_MSG_COMMENTS option
Fix for run thread loop of RsGenExchange (was using logic rather than isRunning, which led to some crashes on rs close

Added request and get MsgRelated function for ids, meta and data 
added template function to ease getting meta data from back end;

Updated Nxs tests, tests passed (failed initially because of change option requirements)
Added test for msgrelated Ids, still need to add test for all msgRelated functions (bug with mask, not filtering correctly)

Made changes for forum and wiki gui to use new API but gui needs to call correct get functions now (Bob).

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5817 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-13 22:36:06 +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
c9831b7bea Added message validation, not enabled at the moment
as msg sync seems to have stopped working. will fix (qos priority change?).
Added validated field to msg meta
Removed serviceString from msg transport.
Added grp flag setting to album create to test msg validation


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5800 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-10 23:42:38 +00:00
drbob
eeb96c5e62 Lots of progress with Gxs Services:
- Added gxsForum interface, service + serialiser to libretroshare.
 - Bugfix in rsgenservices getSize() at the wrong point, Added lots of debug too.
 - Dummy Collections to Wiki, can now create and retrieve Groups from the GUI.
 - Bugfix in rsinit (wrong backend for wiki) + added forum to startup.
 - improved debugging in GxsId serialiser.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5797 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-09 00:56:07 +00:00
chrisparker126
49096d29d2 - Added service_createGroup function which gives access to group keys and grpItem just before GXS group creation
- Temp fix for GXS services hang on dummy data generation. Given each GXS service own thread and chunked grp creation (separate thread may need to be permanent, no obvious around move grp gen cost away from critical path of tick, but unscientifically increases each services thread tick period to reduce cpu cost)

- change grpId assignment from hash of grp data to admin keyid

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5772 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-04 01:38:48 +00:00
chrisparker126
6f6f55c166 Refactored signature creation to Gxs security
Fixed signing of msgs 
Added signing of groups (follows p3distrib grp creation method)
Refactored GxsGroupDialog in 2 new UIs, GxsCreateGroupDialog and GxsViewGroup for ease of logic, retaining flexibility across GXS services. 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5762 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-02 23:35:10 +00:00
chrisparker126
301e85c2fa Bug fix, did not add time stamp at msg signing stage (bug thunder found)
Did not do check for msgs that already existed, msg is not checked if it exist this is deleted and error is sent to GUI for token
need to do same for groups!
Removed stack allocated msgs which cause crashes for large message items (bug defnax found)
Added function to retrieve group keys from GXS to RsGenExchange
First bits need for validation: Signing now consist of all msg data (msg + meta except msgId and signature)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5718 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-23 21:52:51 +00:00
drbob
57a99d1aa3 Made p3identity compile. (but won't run yet!)
- Lots of tweaks to rsidentity & rsgixs interfaces to make them match.
 - added "mask" to gxs flag set operations.
 - added dummy RsMsgMetaData print functions.
 - enable compilation of code in .pro.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5702 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-21 15:48:18 +00:00
chrisparker126
fed6507320 Implemented helper class RsGxsIfaceImpl
Added calling of service_tick in RsGenExchange

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5681 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-15 20:31:56 +00:00