- added extra Mutex to make notifications work.
- Added ServiceControl tick to ServiceServer.
- switched p3discovery2 from pqiMonitor -> pqiServiceMonitor
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7201 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- Removed old reputation system from p3idservice
- Removed old Msg types as well (no longer needed)
- Added real submitOpinion()
- Modified serviceString to support Reputation System.
- Added reputation information to both Cached Data, and Standard ID Data.
- Added basics of new reputation system as alternative service. (not gxs).
- Added Generic TLV types for maps.
- Moved configuration files to their own directory .rs/config/
- Finally, fixed up bits missed from the change to updateGroup!
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7131 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- Revert change of revision 7063 in openpgpsdk.pro for Windows compile
- Changed order of the libraries in FeedReader plugin
Fixed Windows compile with MinGW 4.8.0
- Added missing include
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7111 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- updated ft/, p3msgservice and p3chatservice accordingly
- added a new class for Sha1Sum in t_GeneridIdType<>, and an additional template argument to make ids of identical size
incompatible.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7082 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
- the notification system is now a service, p3Notify, that is a public RsNotify.
- RsNotify does nothing except providing a registration system for new notify clients.
- Clients should derive a notify client from the NotifyClient class and register it to rsNotify
- all registered clients get all notifications, so only derive the needed methods. This should allow
plugins to get notifications as well.
- updated the code to call RsServer::notify()->[notification method] from inside libretroshare
- pqiNotify has been removed.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6996 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- added missing decrement to DataCount in rsmemcache::erase()
- added missing note_event_locked() in rstickevent ... can now use previous tick info,
- revamped recogn scheduling. on demand rather than periodic. new function recogn_schedule().
- deferred loading of pgpIdList for pgphashes, until we know it will be needed.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs_finale@6893 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- items are described in serialiser.
- util functions in util/rsrecogn.cc are used to manipulate it.
- these are attached to GxsIds, with new interface fns.
- Associated Signing Code is in a separate program.
Other Tweaks.
- Added RsMemCache::erase()
- Added RsTlvStringSetRef
- Fix for rsturtleitem (already added to trunk).
- Formatting and debugging.
Status: There is a bug in RsGenExchange::updateGroup which prevents full testing,
The basic generation, parsing and validation functions have been tested and are ok.
The processing as part of p3IdService still needs to be fully debugged.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs_finale@6854 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- removed unused RsFileTransferCacheRequestItem and all related functions
- fixed bug in turtle router calling members of a deleted item
- removed some debug info
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6789 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* service->SendItem() now goes direct to pqistreamer buffer.
* split p3FastService out of p3Service.
p3FastService removes the recv buffer for faster processing.
p3Service maintains its original interface, so derivate classes can remain unchanged.
* Added uint32_t usec (wait period) to BinInterface.moretoread() & cansend() for future threading.
* Added Mutex protection to pqistreamer, pqissl and derivatives of both.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6783 b45a01b8-16f6-495d-af2f-9b41ad6348cc
Split the visState into seperate vs_disc and vs_dht for easier handling.
Split the heartbeat system into a separate service.
Added IPv4 and IPv6 local/ext addresses into discovery & peer config.
Fixed up samenet and samesubnet ipv4 calls.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6773 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- added max storage time for items in chat history. Avoids filling up the history with chat from volatile peers.
- worked out the layout in config->ChatPage in a more compact design and added help
- set the max size of chat messages to 6000 bytes instead of 2000 which was a bit too low
- default max number of lobby messages saved in each lobby is 20. Avoids flooding for peers who havn't configured it yet.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6770 b45a01b8-16f6-495d-af2f-9b41ad6348cc
In preparation for making RS support IPv6.
NB: This breaks the build of retroshare-gui, as the
sockaddr_storage_xxx fns are only defined as prototypes for now.
All the aux libraries like udp / stun / tcponudp / dht have still to be converted.
These changes will probably break various things and need to be tested thoroughly.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6735 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- fixed some possible crashs with dynamic_cast
- fixed memory leak in p3GxsCircles::cache_load_for_token and p3Posted::background_loadMsgs
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6532 b45a01b8-16f6-495d-af2f-9b41ad6348cc
Added system to collect and create chat invites from pgp keys.
Finished the GUI (some layouts need fixing, especially the link creation window).
Still needed: QoS on generic turtle data items. Will need a new item class for any anyway.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6433 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- adds turtle router as a generic tunneling service
- made ftServer a client of the service. Now turtle file items are handled in ftServer
- added new client: p3MsgService to send/recv pgp-encrypted distant messages
- added new client: p3ChatService to perform private (AES-encrypted) distant chat through tunnels.
- The GUI is disabled for now, since it needs some polishing before being fully usable.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6411 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
- 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
- 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
- Added Vote dummy data into channels.
- Fixed up RsGxsImage handling to avoid memory issues - need to switch to shared_ptr later.
- Added "BestScore" calculations into Comments - not sure if the maths is right.
- Added Hashing interface to Channels.
- misc bugfixes.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6218 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- Reorganisation of p3posted, stripped out lots of previous stuff.
- Converted p3posted to use GxsComment system.
- Disabled much of the DummyData - switch it on manually when testing.
- Added Basics of ChannelPost processing for AutoDownload. (incomplete).
- Added GxsCommon backend for RsGxsImage and RsGxsFile.
- Completed Serialiser for GxsChannels.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6207 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
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
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
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
This also switches to alternative test data path - to ensure it will be empty.
Fixed bug in p3idservice related to dummy id creation.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6114 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This brings a huge amount of goodness into the trunk,
but there is still a big chunk todo before it can be released.
* GXS Backend.
* GXS Services:
- Identities.
- Circles
- Photos
- Wiki
- GxsForums
- Posted.
* SSH no-gui server.
See branch commits for more info.
To switch on GXS stuff, enable CONFIG += gxs
in both libretroshare.pro and retroshare-gui.pro
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5996 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
* Provide CircleList, and Circle Details via rs interface.
* Added debugging to help check its all working.
* disabled caching of localIds - as this just causes cache to be flushed in p3IdService
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5987 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
- Switched from own token member to the new methods on TokenQueue.
- Reactivated thread from the old forum to fill the messages.
- Load all messages at once.
- Added processing of missing messages.
- Fixed new/read/unread status.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5952 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
- record which friend participates in a lobby even after they unsubscribed. The lobby list that is sent to these
friends contains the privaye lobby as well. In practice, people jsut need to be invited once to a private lobby.
Afterwards, they get the lobby in the list of nearby lobbies and can join by clicking on it.
- added new item RsChatLobbyList_deprecated2, to replace old existing item. Should be removed in v0.6
- changed PublicLobbies for VisibleLobbies in the code, to avoid confusion
- the change is backward compatible, although old peers won't receive private lobby info from new peers, of course.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5942 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
Flags are identity-related, meaning that all locations of the same peers have the same flags.
- It's now possible to tweak which services each peer can use. Service that can be disabled are
forums/channels, discovery, anonymous routing.
- by default, peers have all flags on.
- fixed missing error msg in p3cfgmgr when serialisation fails.
- fixed bug in RemoteDirModel causing infinite loop to happen when group name is unknown
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5924 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- Completed serialiser.
- added dummy interface fns. & cleaned-up other linking issues.
- Added into rsinit.cc
* Improved GxsIdentity DummyData to fake Ids from friends
- #define to enable, must be switched off for real usage.
- cleaned up rsIdentity interface.
- removed genDummyData from public interface.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5915 b45a01b8-16f6-495d-af2f-9b41ad6348cc
Disabled posting when no post is selected
Added notes section when viewing post (tres basic)
fix for comment item serialisation
fix for subscription token option not in this commit ;)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5913 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- 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
- left the code for p3gxsserviceVEG and p3postedVEG, until p3posted is finished.
* Converted p3wireVEG => p3wire
* cleaned up rsinit.cc and libretroshare.pro
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5901 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
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
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
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
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
- 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
* Fixed lots of little bugs: ServiceString decoding, not saving to variables, etc.
* Added createIdentity fns. - Can create Anon, but not PGPLinked ones yet? no idea why.
* Added lots more debugging.
* Added mutex protection for class variables.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5789 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* 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