Commit Graph

242 Commits

Author SHA1 Message Date
drbob
90aa57a0f0 Rewrite of the discovery system to be more private, with less traffic.
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
2013-09-28 08:09:59 +00:00
thunder2
72c7569619 Fixed compile of libretroshare on Windows.
Cleaned some includes of openssl.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6769 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-26 23:53:06 +00:00
drbob
34ea22d5f6 Implemented sockaddr_storage functions.
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
2013-09-24 05:30:01 +00:00
drbob
6290d8fed9 Massive commit - changing from sockaddr_in => sockaddr_storage.
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
2013-09-13 14:35:19 +00:00
drbob
bfd915864b mods to support hidden node: setup & cert sharing.
Also removed old configuration mode from p3cfgmgr



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6720 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-09 02:10:49 +00:00
drbob
561cfcf189 Switching on GXS by default.
switching rs data directory to ./retroshare6 for the moment.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6701 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-07 02:55:35 +00:00
drbob
a6cf738371 Removing old services, serialisers and other references for:
- forums
	- channels
	- tunnel
	- blog
	- gamelauncher.
	- distrib.

Note this majorly breaks the GUI, for the moment.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.6-initdev@6683 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-09-03 14:51:23 +00:00
drbob
f184d75703 Added Hack to fix OSX Finder launch.
Changed argstream.h licence from GPL to LGPL with authors permission.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6631 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-08-28 02:11:52 +00:00
drbob
f93ed1fb6e - Removed RsIface, and moved configuration options to RsServerConfig (rsconfig.h)
- 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
2013-08-21 21:36:33 +00:00
csoler
2afd22a2f0 remove bug due to parameter handling, that resulted in random port at start
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6564 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-08-08 14:10:45 +00:00
csoler
aba5033604 - added argstream to handle commandline arguments
- 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
2013-08-06 17:01:38 +00:00
csoler
b84930b157 Added multiple security tests to pgp keyring against disk full and exceeded quota.
- 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
2013-07-25 20:05:31 +00:00
chrisparker126
4252270cd6 new db for release, TESTNET5, old TESTNET4 db's are not keyed
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6456 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-22 16:21:13 +00:00
chrisparker126
87bb66e349 removed inlined #define RS_ENABLE_GXS
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6450 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-20 21:17:57 +00:00
chrisparker126
6b0594dfe1 Fixed database keying bug, left db closed causing meta modification fail.
- needed to keep ssl pword a little while longer after rs init

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

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

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6448 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-20 19:50:25 +00:00
chrisparker126
777366a79b Enabled db encryption and changed gxs folder
- need sql cipher to compile if gxs compile flags are enabled

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6431 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-13 21:21:33 +00:00
csoler
dc2521cf71 Merged branch v0.5-GenericTunneling into trunk (Rev. 6284 to 6410).
- 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
2013-06-06 19:58:30 +00:00
chrisparker126
325fa4f222 merging gxs_phase2 branch
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6401 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-06-04 21:00:43 +00:00
csoler
7708e6cd93 first working version of distant messages. Still needs some smoothing.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6348 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-05-01 21:13:40 +00:00
csoler
f12ad9583d - added functions to add/remove virtual peers in turtle client service
- removed all explicit connections between turtle and FT
- added tunnel and invitation management in p3ChatServer (still needs PGP encryption)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6300 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-10 08:52:52 +00:00
csoler
e9a51455eb added crypto functions and msg sending/receiving for private distant chat
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-GenericTunneling@6299 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-08 21:25:32 +00:00
chrisparker126
9a37bde4c8 user test version
- disabled circles and photoshare

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6291 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-04-04 17:23:10 +00:00
drbob
80bf2f7a39 Reviewed and corrected authenPolicies.
Made authenPolicies + Identity mandatory for all services.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6279 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-24 19:21:30 +00:00
drbob
211596e88c tweaks for GXS test network.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6232 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-03-16 12:47:31 +00:00
drbob
123d4a630b Major commit of progress on new GxsServices (Channels and Posted). These are not complete yet!
- 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
2013-03-11 20:40:28 +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
chrisparker126
73ff746773 Passed RsGixs to forums to enabled authentication
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6119 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-02-10 18:41:15 +00:00
drbob
6cd9faf3ab added AuthenPolicy code for p3wiki.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6118 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-02-10 17:52:50 +00:00
drbob
81307de7c9 Added flag to disable dbase reset, and disable dummy data creation.
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
2013-02-10 15:40:07 +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
csoler
66207b81e5 - made the names consistent between ftdata, ftdatamultiplex and tests/
- 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
2012-12-26 18:12:19 +00:00
thunder2
0f26b85a88 FeedReader:
- 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
2012-12-22 21:01:45 +00:00
drbob
069b72e0b2 Merged branch v0.5-gxs-b1 into trunk (from -r 5351 -> 5995)
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
2012-12-16 19:17:11 +00:00
drbob
7b8bb8dff7 Cleaned up GXS compilation. now single config option (gxs) in .pro file.
Removed GXS headers from p3face.h and used class declarations.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5991 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-12-16 15:04:52 +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
drbob
4438303d55 * Got GxsCircles running in libretroshare.
- 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
2012-12-01 00:16:24 +00:00
drbob
78bc0a4567 * Cleaned up lots of old VEG services.
- 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
2012-11-26 22:53:44 +00:00
drbob
de80f2aa3e * Moved DataRate interface from rsiface (old) -> rsConfig.
* 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
2012-11-25 20:25:34 +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
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
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
thunder2
afa3248429 Moved loadCertificate from main, StartDialog and GenCertDialog to Rshare.
Switched StartDialog from QMainWindow to QDialog.
Updated english translation file.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5752 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-11-01 01:07:36 +00:00
drbob
92969c2f58 Improvements to GXS services.
* 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
2012-10-31 22:43:23 +00:00
drbob
cddeaeea81 Got GxsId service compiling and linking.
- Added entries in rsinit.cc
	- Added serialiser functions.
	- Tweaked some datatypes.
	- Fixed up duplicate headers.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5736 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-28 23:13:15 +00:00
drbob
d208b59d33 Split the upnp files into libupnp and miniupnp implementations.
modified libretroshare.pro to allow either to be used.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5733 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-10-28 16:51:00 +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