Commit Graph

108 Commits

Author SHA1 Message Date
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
drbob
1f6d6a4fc2 Added backend support for Comments.
- Single Vote per comment checks and balances added. 
 - Fixed up RsGxsImage stuff. (TODO move to proper REF counted Image).
 - Added GxsTokenQueue ticks were required.
 - Made GenExchange publicToken() fns  public, so that comments can use them.
 - Added OwnVote details to Comments 



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6224 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-15 20:46:49 +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
drbob
22782e5edd Adding Basics of GxsChannel Service into libretroshare.
This includes a generic CommentService, which will be used by other Services.
+ Bugfix, gxs service threads were started before global variables were set.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6186 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-04 20:26:48 +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
drbob
65e3f02bb0 Added #defines to disable much debugging statements.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6157 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-02-27 21:16:03 +00:00
drbob
61c3afe56d moved GXS Macros (e.g. IS_GROUP_SUBSCRIBED) to gxsflags so they can be used by all gxs services.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6149 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-02-26 23:34:42 +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
21dd979ba8 Fixed for duplicate messages ending up in db, set msgId and grpId as primary keys in message and group table respectively in db when created
Please delete your TESTNET folders so a keyed db is created
few additional fixes
- did create id list for meta request in dataservice
- possible fix for uninitialised values for rsdb



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6123 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-02-12 21:45:30 +00:00
thunder2
7413bdc50c Fixed crash in RsDataService::retrieveNxsGrps
- accessing a deleted iterator.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6121 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-02-10 23:28:06 +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
17bdfa7cad enabled token expiration, 30 seconds
add new, and hot ranking, and fixed top ranking for posts (not comments yet)
top ranking decay period set at 4 seconds for testing
enabled ranking posts 
fixed comments generation


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5989 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-16 00:43:15 +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
30b48c59ef Comment and Vote update now functional
Voting and comment count update in gui added via msg notification
clarified comments in RsTokenService

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5958 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-09 22:38:49 +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
5a55c1b5d6 * Added the basics of GxsCircles service to libretroshare.
- Defined the control group stuff.
  	- Background task to determine friend membership.
	- Caching of Circle info,
	- Added GXS interface class to gxs/rsgixs.h
 	- TODO: Serialiser is incomplete.
	- TODO: SubCircles to be done in Phase 2.

 * Improvements to RsMemCache:
	- Added Value& ref(Key) to avoid data copying.
	- Added Statistics to check cache performance.
	- Fixed up bugs in tracking membership.

 * Improvements to RsTickEvent:
	- Added additional string parameter for more specificity.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5910 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-29 22:48:28 +00:00
chrisparker126
744a78b140 Added cleanup code for GXS services in rsinit (services now based in GXS_phase1 folder in .retroshare/ folder
disabled msg synchronisation by default through compilation #define (use GXS_ENABLE_MSG_SYNC to enable message sync)
Finally removed v2 suffix from all photo components and filenames (please edit your libretroshare.pro file accordingly)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5883 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-24 19:49:23 +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
ae5cbecaba Fixed relatedMsgData bug (PARENT | LATEST), same issue as ALL_VERSION opt flags, was using origMsgId used for filtering (filtering worked as bugged request was actually requesting all msgs instead).
Added test for (PARENT | LATEST)
All tests passed

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5835 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-17 18:45:14 +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
2230bd1a96 Added getMsgRelatedData test
Fixed bug with getmsgRelatedFucntion for msgs with no relatives (message with no relatives would end of pulling itself, i.e. the id/data/meta of message whose relative are
being searched for)

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5827 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-15 23:09:56 +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
drbob
df1755316b * Fixed up Key Caching.
* Added testing for Key Extraction.
 * Added Interface Fns for PrivateKey extraction.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5764 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-03 11:57:27 +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
drbob
bd6b17a301 Improvements to Identity service.
* Added Id & Wiki serialisers to constructors.
 * Enabled cache_tick()... thought it doesn't process anything yet.
 * Added debug to Id Key cache system.
 * Fixed requests to match expected params.
 * Added cachetest basics - this is not finished.
 * Enabled generation of Lots of Dummy Ids - This demonstrates some queuing issues.
 * Added #define to easily enable GxsId as only new service - for testing.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5756 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-02 00:45:50 +00:00
drbob
df1a3297e0 Fixed up circular #include issue.
Reenabled RsGxsIdExchange interface.
Compile p3idservice again.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5735 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-28 18:40:01 +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
chrisparker126
c518bd2f19 Removed references to postedVEG from GxsGroupDialog and associated classes and PostedDialog (GUI does not work now but does not crash)
Removed V2 references: TokenQueueV2 and RsTokReqOptionsV2 are now TokenQueue and RsTokReqOptions and renamed file
Added initialisation of Posted back end service successfully
Added new msg status flags  GXS_SERV::MSG_STATUS_UNPROCESSED and ::MSG_STATUS_UNREAD



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5707 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-21 19:45:35 +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
35bff312a7 added rsposteditem serialiser and serialisable items for posted data types
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5688 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-17 21:20:57 +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
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
drbob
1ec5c7fe69 Added first pass at new RsIdentity service.
* Updated rgixs with new interfaces. (tentative)
 * Switched rsIdentity to GXS basis.
 * Added Subscribe Function to rsGxsIfaceImpl + return false to functions.
 
This code needs to be reviewed by chris ASAP, to see how it fits into the whole structure.
This code is currently not compiled, or compilable.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5677 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-14 18:32:33 +00:00
chrisparker126
b166fe0c99 Added photo slide show
added time stamps on comments
photo items now store real image 
fixed bug in rsdataservice due to stack overflow (large photo!)


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5672 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-13 21:10:42 +00:00
chrisparker126
8f2d85ed52 laid groundwork for newcache posted
re-enabled postedVEG
added convenience base class for gxs services
fixed posted and gxs gui
removed tokenservicev2, now just tokenservice 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5641 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-05 18:12:52 +00:00