the basic structure is here. Functions have been added to serialise both SHA1 and floats.
The router is not yet enabled since protocol is likely to change again.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6886 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- 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
- 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
- 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
Switched to the release version of pthread so the name of the dll changes from pthreadGC2d.dll to pthreadGC2.dll. The new dll can be found in the bin directory of MinGW.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6794 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
Fixed interfaces for UPnP.
Some further tweaks to get TCP connections working again:
- hiddenNode issue in p3peers.cc
- fixed socklen_t for bind() and connect() calls.
- initialise addr to IPv4 for netmgr.
- change netAssist (Upnp) interfaces.
Still todo: tou address functions, test UDP functionality.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6755 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This causes tunnels with a different route to have different ids and therefore
coexist as different sources for a given transfer.
This should cause file transfers to have more tunnels and therefore a better balance
of bandwidth over intermediate peers. This needs to be evaluated on a large scale network.
- Cleaned some unused code.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6740 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
fix for external circle associated groups not synchronising message (circles being checked for peer who want to share out messages for circle associated group)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6635 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- Fixed cipher list to "HIGH:!DSS:!aNULL:!3DES", which should disable the weak ones, no idea how to force it to PFS (which it should use).
- fixed void * pointer maths.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6584 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- switched tests to use the common value of argstream in libretroshare, rather than the one in tests/common
- reworked command line arguments in rsinit and retroshare-nogui.
- improved passwd hash explanations
- improved command-line help.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6559 b45a01b8-16f6-495d-af2f-9b41ad6348cc
The static arrays in RsDiscSpace were to small for RS_PGP_DIRECTORY (0x0003)
Added new constant RS_DIRECTORY_COUNT
- Added missing fclose to PGPHandler::encryptTextToFile
Used ops_teardown_file_write instead of ops_writer_close and ops_create_info_delete
Windows cannot move a file when it is still open
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6542 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- copy files to tmp before appending new keys, then rename back to original.
- always check for disk full before syncing keyrings
- use tmp file to sync keyring
- new RsDirUtil::fileExists() method
- check system for disk space in pgp directory
- added RsPGPDirectory() method to RsInit
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6541 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
- 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
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
Renamed method "RsFiles::CopyFile" to "RsFiles::copyFile" (lower case) to avoid renaming of "CopyFile" to "CopyFileW" with the newly included "windows.h".
From windows.h
#define CopyFile CopyFileW
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6415 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
- added key removal method in OpenPGP-SDK
- improved FriendSelectionDialog/Widget to enable select all/none keys, and show non friend keys
- added safe key removal method in PGPHandler. Removed keys from other locations will not cause errors.
- added backup system to public keyring, impossibility to remove public parts of owned secret keys, etc.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6382 b45a01b8-16f6-495d-af2f-9b41ad6348cc
added more doc detail to contentvalue (put takes private copy of data).
binds to content pointers take private copy of content.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6320 b45a01b8-16f6-495d-af2f-9b41ad6348cc
-disabled for now (RADIX_STRING to enable), causing segfaults for no obvious reason, works on offline code.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6311 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- new class RsTurtleClientService, from which should inherit the services
- turtle serialisation takes client services for deserialising
- added a client to p3turtle::monitorTunnels()
- added a generic turtle item to pass on arbitrary data
Moved ftServer as a subclass of RsTurtleClientService.
- moved file transfer items that inherited from RsTurtleGenericTunnelItem into a separate file
- moved deserialisation triage into ftServer
- moved sending/receiving methods in ftServer (much less code, much more consistent!)
One bug remains: the TR cannot work as a server.
Changes should be 100% backward compatible.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6293 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- added generic tunnel data item, along with item priority consts. Serialization still missing.
- added new class for turtle client services, and entry point methods.
- removed file name and file size ffrom _outgoing_file_hashes and _incoming_file_hashes. They are not needed.
- changed some names to more generic ones.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6285 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- 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
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
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
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
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
- 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
(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
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
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
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
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
- Added error handling to xml functions
- Added xslt transformation
- Added retransform of existing messages
- Redesigned preview dialog
- Enabled embed images for forum feeds
- Changed config format, switching back to an older version results in a loss of all data of the FeedReader
Added new base class RSPlainTextEdit with placeholder text.
New library libxslt needed
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6081 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- fixed ftcontollertest. This should help fixing ftserver[123]test as well
- improved pqiTestor using templates (lots of identical functions replaced)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6036 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- added missing virtual functions in ftDataRecv
- setup initSSL instance as a static member of AuthSSL, instead of an external (does not change much except the init in rsinit.cc)
- changed p3PeerMgrIMPL to take SSL and PGP ids as parameters. This avoids calling AuthSSL and AuthGPG from the constructor => very helpful for tests.
- added random creation function in t_RsGenericId<>
- added functions setAuthSSL_debug() and setAuthGPG_debug() to manually setup the authSSL and authGPG objects to use. Used in tests.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6035 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- added checksum code for new format certificate. Will be enabled in v0.6, since it is not backward compatible
- fixed very stupid bug in radix64 cleaning function, causing any certificate to be accepted as a radix string
- added list of non backward compatible changes in README.txt, so that we can track them
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6030 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- Remove "sid=" from link
Moved stringToUpperCase and stringToLowerCase from rsinit.cc to util/rsstring.cc
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6029 b45a01b8-16f6-495d-af2f-9b41ad6348cc
Added warning in p3ConfigMgr::addConfiguration when a config type is used twice.
Removed checkbox for "Experimental Features" in general page without function.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6027 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This provides ExternalPort + DHTKey to Client. To be used to find and connect - even if Dynamic IP address changes :)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6004 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* converted to new flags format for File Operations.
* converted from PUBLIC to VISIBLE lobbies. NB: This required name changes to protobuf definitions.
* converted DataRates to new function.
* directory sharing shifted to using OTHERS flags (text menus) - No support for group Flags yet.
* Added == operator to Flags Type.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6000 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
* Internally moved storage of data rate from pqipersongroup -> p3serverconfig
* made DataRate + Operating Mode work together.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5889 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- In general it is okay, except for: DataRate Handling, and Win32 specific: WaitingList.
- Cleaned up some functions.
- renamed createPerson and createListener to locked_createPerson and locked_createListener.
This is required as neither Listener nor Person are thread safe (TODO).
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5888 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
Added friend selection to the group dialog for better assigning of friends to groups.
Updated english translation.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5881 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
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
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
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
- Implemented correct cacheData send to clients usign constant subid value.
- At start, the association between peers and available file list is always recomputed
- overloaded cacheAvailable() and refreshCache() in FileIndexMonitor
- added callback in rsFiles to force re-generating cache items when group layout has changed
- force re-sent file lists when moving peers between groups in the GUI
(Fixes group leaking problem) Needs full recompilation of libretroshare.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5813 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
Now users can sort peers into groups in the friend list, and attribute flags and parent groups to the
directories in the share manager.
Flags are B-B-N, meaning in order:
- browsable for peers in the parent groups
- browsable for everyone
- network wide for everyone
Backward compatibility makes previously BN flags been interpreted as -BN, meaning browsable/network wide for everyone.
Be careful with this new feature. It has been tested, but it's a bit early to rely on it for highly sensitive data.
The merge also includes a significant improvement of the naming of flags with incompatible types
which should sort out some existing bugs as well, since inconsistencies in flag usage have been
found during the process.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5787 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- 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
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
* 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
- added type-safe flags in retroshare/rsflags.h. This should be used to make new flags types in order to prevent mixing flags up in function prototypes.
- group handling is left to rsPeers. We'll move it to rsCircles later.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-FileSharingPermissions@5754 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* Added serialiser for wiki items (actual data to be finalised).
* Added wiki and fixed id services to be run properly.
* Disabled dummyData for ids.
* Fixed some bugs in Id serialiser.
* Added missing fns in p3wiki
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5748 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
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
- 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
* Filled in p3wiki and rswiki
* tweaked VEG files to prevent clashes.
* added serialiser header.
Still to do:
* complete design of Wiki Links, and the like.
* Finish serialiser
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5692 b45a01b8-16f6-495d-af2f-9b41ad6348cc
Still doesn't compile yet, mainly headers and the like to fix.
NB: Interface Mismatch between RsGenExchange (vector) and individual result for getGroupData() / getMsgData()
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5689 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* 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
- 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
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
- 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
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
- made faster tunnels stay longer by increasing tunnel campain time. Should favor fast tunnels.
- desactivated tunnel shortenning since it cannot produce consistent tunnels every time
- increase cache TTL for search requests to 240 secs and tunnel requests to 120 secs.
Will remove some zombie tunnels and search requests.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5589 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- added latest translations from beluga
- fixed SecurityItem to hide request Label, when attempt comes from a friend
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5583 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
* The Example services have been renamed eg. p3posted => p3postedVEG, to allow the real services to be added.
* The ServiceIDs have been shifted, to allow both VEG and GXS versions of services to run side-by-side for now.
* The DataTypes have not been renamed - but potentially should be in the future - if they cause clashes.
* Interface variables have also been renamed. eg. rsPosted => rsPostedVEG.
* This means that the GUI will not operate without changes too - TODO.
Minor changes to GXS services to better seperate them from the VEG versions.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5551 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- 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
- the user is asked at start wether to load or deny unregistered plugins, but can make it mind later in config->plugins
- added API and SVN numbers into required external plugin symbols
- user-defined plugin rules are dropped when a plugin changes (hash changes) or when the main executable changes.
- added new status flags (Plugin denied, missing API/SVN numbers)
- modified saveList()/loadList() to allow saving a list of rejected plugins as well.
- added methods in notifyBase and inherited classes to ask for plugin confirmation.
- adapted VOIP plugin to follow these new rules (API+SVN numbers). Other plugins should be adapted as well by addign the
missing symbols (RETROSHARE_PLUGIN_api and RETROSHARE_PLUGIN_revision).
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5529 b45a01b8-16f6-495d-af2f-9b41ad6348cc
- added svn revision number checking to plugin system. If svn revision is > 0 and matches the compiled revision number, the plugin is always accepted.
- improved version number scripts to add the missing revision number as a int
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5512 b45a01b8-16f6-495d-af2f-9b41ad6348cc
payload.
Generalised nxstest to simulate sync among arbitrary number of peers
added pass conditions to test scenerio with seperate notify observers
per peer
cleaned up test code and enabled auto cleaning of run dir (remove db
junk)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5480 b45a01b8-16f6-495d-af2f-9b41ad6348cc