Commit Graph

94 Commits

Author SHA1 Message Date
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
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
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
chrisparker126
19e856c2a8 Added RsTlvKeySignatureSet to rstlvkeys
- added test to test/serialiser 
- Updated all relevant gxs test (ran whole suite, added gxsdata_test, tests meta serilisation, to pro file) 

Updated flag in rsgxsflags to account for authentication and private types 

Changed msgId/grpId generation to sha1 hash

removed photoservice VEG file from pro file




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5630 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-01 20:57:56 +00:00
chrisparker126
b06214b779 Message Synchronisation now supported by photoshare (photo and comments sync)
Photoshare UI now functional 
- subscribing to an album enables message sync
- TokenQueue now operate with FIFO stack to prevent overlap in request completion
- photos are now load on demand as with comments
- fixed some noddy bugs (subscribe flag initialises incorrectly)


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5624 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-30 14:21:17 +00:00
chrisparker126
bdd6c6041b Updated GXS tests, lots of mem leak fixes from valgrind run.
- mem leak caused by not deleting stored msgs and groups, rsdatastore now a group/msg sink
- mem leak caused in rsgxsnetservice by not deleting meta information after retrieval 
- fixed mem leak in rstlvkeyset::getTlv due to tlvbindata making own data copy



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5616 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-27 21:42:00 +00:00
chrisparker126
0fc3a2704b Fixed compile issues for VEG in librs (rs-gui VEG ui cannot be compiled as was the case prior to issues)
removed VEG photoservice
Enabled group synchronisation between retroshare peers! test synchro between two rs peers worked.
Added crude commenting facility to photoshare, much tuning to be done



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5602 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-25 21:04:04 +00:00
chrisparker126
eaa7342165 emergency commit, computer acting up bad!
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5565 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-17 22:08:23 +00:00
chrisparker126
9f20c75f83 about 70% done with PhotoDialog
- can add album (with thumbnail!)
- add photo (with photo!)
- can subscribe, but not added to ui yet

need to try some dummy msgs and bring up gxs_net





git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5549 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-09-13 22:58:42 +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
932a1a44f5 added gxs group tests (submission, all retrieval types)
also tested group meta mod request for service strings

all group and msg submission and retrieval requests now tested
msg meta mod request to test still

Added fixes:
genexchange (mGrpSign was not included in overloaded assignment
operator)
added grp sign flag as Db field


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5473 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-26 14:02:47 +00:00
chrisparker126
9d42715cad Fixes for Gxs msg retrieval:
msgId retrieval fixed, including incorrect stack mtx lock
msgRelatedId retrieval fixed, mem leak removed (did not clean meta)
msg data retrieval fixed 

added related tests 

RsThread::start now initialises mIsRunning to true, needed to unit tear
down on gxs test system.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5471 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-25 15:48:55 +00:00
chrisparker126
6dd18eea46 seperated content value from retrodb
added local meta changing fucntionality to gxs 
also added msgrelated info id retrieval to tokeservice


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5452 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-21 21:32:07 +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
5425ab36b5 laptop power supply dead, commiting,
added tokens to submissions, got it working
added generic service string to meta
added msg and grp creation
 

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5439 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-18 10:01:35 +00:00
chrisparker126
acaefada65 Got group retrieval working with gui and fixed subsequent bugs
add p3distribsecurity mirror gxssecurity (does not have grp or msg verification implemented, but other methods are valid)


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5406 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-08-12 20:46:21 +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
17da89938f gxs back end now compilable, need to test
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5346 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-28 20:01:30 +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
b2c74a045f Tidying up of libretroshare.pro, removed gxs from compilation
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5326 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-24 18:55:32 +00:00
chrisparker126
5fbd591517 replaced string grp and msg ids with typedefs
started implementing gen exchange client calls
finished implementing msgrelated info dataAccess routine
more refinements to various interface - need to think about how meta is passed about the various
layers of gxs and kept consistent with sqldb

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5321 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-22 21:38:15 +00:00
chrisparker126
3534aad90d more dbase implementation
removed msgrelatedinfo request as this can be merged to normal msg request

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5314 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-18 21:35:41 +00:00
chrisparker126
081b59ee1a Mods:
Updated dataservice tests and fixed subsequent bugs
added bug fixes for RetroDb and fixed postability issue (removed map.at use)

Added:

Data access module used as token service
gxs service backend (RsGenExchange) 
RsPhotoV2 which is a modification to deal with different interface provided by RsGenExchange
also added subsequent p3photoserviceV2
NxsTestHub to help with testing nxsnetservice (RsGxsNetService is not yet working)

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-new_cache_system@5274 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-07-05 21:26:14 +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