Commit Graph

94 Commits

Author SHA1 Message Date
csoler
75f3a6a5d8 disabled adding new keys from friends of friends when discovery if off
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5016 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-03-12 21:38:41 +00:00
drbob
e024ea36e9 Added Cache system for GPG Certificates.
- This should reduce gpg calls by 90+%.
Updated rsversion svn to 4942 



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4942 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-02-15 16:44:45 +00:00
drbob
41bff1d839 Another fix for the discovery fiasco... Turns out that I broke the system with my previous changes.
- Allow certificates through with no attached GPG Certs.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4852 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-27 13:32:14 +00:00
drbob
611db96fb9 Attempt 3 at fixing disconnections :)
* Added limit of 10kB for Certificate size. If it is bigger - discard certificate.
 * Remove certificates for slow / trickle connections (for Relay connections).



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4822 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-20 14:41:45 +00:00
drbob
761bca8678 Fix number 2 for disconnections: Temporarily Disable Transmission of GPG Certificates in Discovery.
Certificate transmission will be disabled until we have worked out how to export Minimal Certs.
 * Disabled check for gpgcert text in p3disc.
 * Disabled creation of GPG Cert in AuthGPG.
 * Added extra error code to pqinetwork.

This change will mean that friends of friends certificates will no-longer be shared if you have discovery on.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4821 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2012-01-20 01:05:46 +00:00
drbob
7b0a33c318 Incremental DHT improvement - support in libretroshare.
- Added missing Mutex protection in p3BitDht.
	- Added p3BitDht::addKnownPeer() to communicate with libbitdht.
	- Disabled placeholder versions (addFriend/AddFriendOfFriend)
	- Added netAssistKnownPeer() libretroshare interface.
	- Added calls to netAssistKnownPeer() from p3disc and p3NetMgr.
	- Check for NULL ptr in p3NetMgr before calling p3PeerMgr.
	- Added FIX to maintain MANUAL FORWARD port (untested!)
	- Removed some compiler warnings.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4681 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-22 13:24:42 +00:00
thunder2
c6beee44ec Removed unused parameter warnings in libretroshare.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4558 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-12 13:42:30 +00:00
drbob
8e3e7d5209 Cleaned up rsPeers to remove 10 minute reconnect. The reconnect was caused by
the periodical call of cleanupUsedLocation, which was reloading all the GPG Keys - for each cleanup Key.
This required cleaning up various bits (AuthGPG, rsPeers, p3Disc).

 * moved rsPeer::cleanUnusedLocations => p3PeerMgr::removeUnusedLocations();
 	- made the function light-weight, no loading of GPG Keys.
 * moved getSSLCertsFromGPG() fn from rsPeers => p3PeerMgr
 * added p3PeerMgr::removeAllFriendLocations() to cleanup when removing a GPG Friend.
 * cleaned up rsPeers, made addFriend() / removeFriend() universal functions.
 * remove bool   p3Peers::setAcceptToConnectGPGCertificate(const std::string &gpg_id, bool acceptance)
 * removed all Dummy SSL Ids. - There is no need for this!
 * Major changes to p3disc to correct FLAWED logic.  (needs more testing).
 * removed as many dependancies on retroshare/rspeer.h as possible.
 * changed p3turtle dependancy on rsPeers ==> mLinkMgr.
 * added p3LinkMgr::getPeerName() and p3PeerMgr::getPeerName()
 * added return 1 to pqissllistener::closeConnection().
 * removed unused code from AuthGPG().
 * removed storeAllKeys() calls in AuthGPG::AllowConnection().



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4542 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-07 21:11:00 +00:00
drbob
aa63ca1aa6 Added Further debugging to try and catch this 10minute reset bug.
* log p3disc::sendHeartbeat(), successful  p3linkmgr::connectAttempt()
 * log reason for each pqissl::reset().
 * log linkmgr & peermgr  addFriend() and removeFriend().
 * log pqiperson::connect(), p3PeerMgr::cleanUnusedLocations().
 * Modify timing of cleanUnusedLocations (=>8min) & NETSTATE_PARAM_TIMEOUT (=>15min) (see if it has an effect).



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4539 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-08-06 12:27:23 +00:00
drbob
91e10f1590 * Fixed up network configuration.
- p3peermgr now uses RS_NET_MODE_XXXX instead of RS_NET_MODE_TRY_XXXX
	- p3netmgr maintains both TRY and ACTUAL mode.
	- actual mode is not visible through old interface (TO FIX).
	- added default to UPNP mode.
 * Added debug to show changes to peer->VisState.
	- It seems that this is never updated by p3disc. BUG, (TO FIX).
 * disabled extra debug in rsdiscitems.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4498 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-30 12:18:56 +00:00
drbob
69c14461cb Merged v0.5-netupgrade branch back into the trunk ( --- Merging r4410 through r4465 into '.' )
This brings lots of improvements:
 * UDP Connection Code - this it the majority of the new code.
 * Simplification of p3ConnectMgr => p3LinkMgr, p3PeerMgr & p3NetMgr.
 * Notifications of Failed Connection Attempts
 * Addition of a "Getting Started Guide".
 



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4466 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-18 09:25:15 +00:00
csoler
e4f89892a3 added missing mutex protection that caused random SIGSEGV
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4433 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-11 19:04:56 +00:00
drbob
f6f721a492 Removed p3ConnectMgr. Replaced it with p3LinkMgr, p3NetMgr and p3PeerMgr.
Updated references in other classes.
 * Most classes need p3LinkMgr, and only use two functions: OwnId() and getOnlineList()




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4416 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-09 18:39:34 +00:00
thunder2
de87a89437 Added a name to the RsMutex class.
You can enable the debugging of the waiting time for a lock of RsMutex in rsthreads.h with
#define RSMUTEX_DEBUG 300
That means all locks waiting longer than 300ms are logged into the stderr.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4392 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-04 22:59:39 +00:00
csoler
db428d0cd8 always set location for connected peer. Previous settign was causing blank location display
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4169 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-04-25 14:12:34 +00:00
csoler
c0201b8dd2 corrected bug of not sending info to own location (tracker 3104190)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4016 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-02-05 20:44:41 +00:00
csoler
a1154b6935 suppressed memory leak in construction of RsDiscReply packet
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3973 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-21 22:04:14 +00:00
thunder2
4b091a54d6 Added new statusbar widget about pending discovery informations.
You can enable it in the server settings.
Recompile of GUI needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3956 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-07 16:56:57 +00:00
chrisparker126
2f559dae96 removed channel delete feature
added optimisation suggestion with load/savelist

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3920 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-12-18 19:35:07 +00:00
csoler
98f471c56b added auto-remove of unused and dummy locations every 10 minutes (still keeping at least one location for each GPG key). Suppressed exchange of p3disc info for dummy locations.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3915 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-12-14 21:56:37 +00:00
csoler
61e7cf234c removed debug output from p3disc
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3831 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-19 22:42:29 +00:00
csoler
2094734391 improved networkview. It now displays GPG connexions from p3disc, and accepts dynamic friend level modification. Needs full recompilation.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3793 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-14 21:03:36 +00:00
thunder2
c19c8b5532 Send RsDiscReply information of the connected friend to himself too, when there is only one ssl id available. The reason is, that the signers of the gpg key has to be transfered. The friend skips the own RsDiscReply informations, but imports the gpg key.
Reload all gpg keys in AuthGPGimpl::LoadCertificateFromString, when new signatures are added - not only the key was imported.
Changed parameters of RsPeers and AuthGPG from "std::string" to "const std::string&"

Recompile of the GUI needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3753 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-06 16:40:18 +00:00
csoler
a32bcbb635 dynamic update of networkview from p3disc info. Disabled friend level for now.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3752 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-05 22:46:40 +00:00
thunder2
3a60e8cecb Added service functionality to AuthGPG for load and save of certificates in the background (prepared for more when needed).
Added p3disc as service and process the certificats of RsDiscReply with AuthGPG service.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3669 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-13 16:15:26 +00:00
thunder2
55a45dacd3 Send stack for outgoing peer informations on connect of a peer.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3538 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-24 17:06:09 +00:00
thunder2
addb330205 Stack for incoming RsDiscReply items to give RetroShare time to send heartbeats and process other services.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3524 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-22 23:45:54 +00:00
leander-256
4bb4fc11e2 This intimidating patch renames libretroshare/src/rsiface/ to
libretroshare/src/retroshare/

All the relevant headers have been modified to reflect that change.

This allows installation of libretroshare on a system, headers will
be put in $WHEREVER/retroshare/ and we keep the ability to compile
against them, be it on the system or in the SVN tree.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3342 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-08-06 09:40:23 +00:00
drbob
648e15bcf7 Found cause of OSX network resets / lost connections: inet_ntoa is not thread-safe.
* Added thread-safe rs_inet_ntoa function (util/rsnet.cc)
 * Switched all calls to this function (most of the changes)
 * Modified getLocalInterfaces() and getPreferredInterface() to avoid string conversions.
   - NB: Modified windows functions too, but unable to test (hope it compiles!)

Also:
 * Added  EVP_CIPHER_CTX_rand_key() replacement function for old versions of SSL (pre 0.9.8)  (for OSX 10.5)
   - NB: This code should be reworked to remove these calls anyway.
 * Updated tests/pqi to handle above changes.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3281 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-10 20:34:03 +00:00
drbob
8b2cb688a8 Restored p3disc functionality.
* Bugfix in correctly adding ipList.
 * restored setLocal/Ext calls from peer.
 * Added extra debugging in p3disc.
 * Cleaned up debugging in p3connmgr.
 * switched off debugging in rsdiscitems.
 * reorder ipList (most recent first).
 * removed DEBUG switches in libretroshare.pro



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3252 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-04 15:16:52 +00:00
drbob
ae4ee9df00 Networking REWORK: Changes for other bits
* Fixed #includes in upnp
 * switched p3disc over to the new data types.
 * added new source to .pro file
 * minor changes to other code.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3249 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-04 10:42:17 +00:00
drbob
545a465735 NETWORK REWORK (cont)
Changes required elsewhere
 * peerStatus() fn signature updates.
 * changed Heartbeat fn call in p3disc (think Heartbeat should be rethought!)
 * removed p3tunnel from libretroshare (used BAD getPeer() function).
 * removed optimisations from debugging.
 * removed test cases from libretroshare.a source list.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3221 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-25 22:13:52 +00:00
csoler
347c80fb1e Ported branch commits:
3148: modified the update system for address lists, so that the list is totally
      replaced (and not merged) when it comes from the peer itself. This helps
      cleaning wrong addresses

	  libretroshare/src/pqi/authssl.cc
	  libretroshare/src/pqi/p3connmgr.cc
	  libretroshare/src/pqi/p3connmgr.h
	  libretroshare/src/services/p3disc.cc

3149: removed uninitialized memory read
      
	  libretroshare/src/pqi/authgpg.cc

3151: corrected missed update of peer info when connected. Disabled setting
	  peer connexion IP from p3disc info (does not make sense, and leads to
	  errors)

      libretroshare/src/services/p3disc.cc



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3152 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-16 20:18:46 +00:00
csoler
b941d733cc Ported branch commit 3143: corrected bug responsible for mixing IP lists between peers of same GPG id (connection attempt to other peer responded with connection to oneself). Added additional debug info in p3disc.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3144 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-15 21:28:27 +00:00
csoler
0d14351b8a Ported branch commits:
3099: libretroshare/src/tcponudp/udplayer.cc 
      libretroshare/src/tcponudp/udplayer.h 	
      libretroshare/src/util/rsnet.cc 	
      libretroshare/src/util/rsnet.h

	moved operator<<(ostream&,sockaddr_in) to rsnet.h, as it is used at
	different places

3100: libretroshare/src/util/rsdiscspace.cc
	suppressed debug mode

3101: libretroshare/src/serialiser/rsdiscitems.cc

	put correct (i.e. non conservative) size for RsDiscReply packets

3102: libretroshare/src/services/p3disc.cc

	Made a pass on the code in p3disc. Corrected some bugs:
		- suppressed an unwanted return in packet treatment
		- prevented sending info to a peer about itself
		- changed askInfoToAllPeers() such as not to discard info
		  from peers with NODISC flag (because we especially need
		  info for these)
		- enabled receiving p3disc info even if p3discovery is
		  disabled. Indeed, disabeling p3disc is a measure of
		  protection, so it should limit the export of p3disc info,
		  not the import.
		- removed test discarding info about dummy friends, because
		  it is useless
		- don't discard info about peers that have the NODISC flag
		  (meaning that we especially need info for them)
		- added safety check about received GPG keys. Before we
		  relied on this test being performed by
		  p3ConnMgr::addFriend()
		- added some debug info

3103: libretroshare/src/ft/ftcontroller.cc
	removed debug info



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3104 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-10 13:42:49 +00:00
thunder2
c3d92dc472 Source code maintenance
Memory leaks:
- NotifyQt::UpdateGUI -> popup messages (toaster) stay hidden in memory
- p3disc::handleIncoming -> item was not deleted when RsDiscHeartbeat (memory leak every tick)

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2852 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-05 22:03:43 +00:00
joss17
1ed191fa9f don't assign an empty dydns address with p3disc
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2823 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-01 19:25:36 +00:00
joss17
948e4fb61d Commmit the code from Thunder
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2754 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-22 18:49:08 +00:00
joss17
a2a567851e Add own key to p3disc clients
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2694 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-04-08 19:07:16 +00:00
joss17
0fd8b4d4ee improve the recieving of bad gpg keys
Conflicts:

	libretroshare/src/services/p3disc.cc

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2555 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-03-15 19:11:33 +00:00
joss17
f5a616519c avoid sending bad gpg cert in p3disc
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2554 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-03-15 19:10:46 +00:00
joss17
5ed5e8eb92 small change in ext address detection
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2477 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-03-03 21:09:49 +00:00
joss17
6f651c4a3c small change in p3disc logs
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2441 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-02-26 23:43:10 +00:00
csoler
5acc8411e5 warning suppression
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2406 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-02-23 21:55:29 +00:00
joss17
5d128e77e9 don't send details to an unsigned gpg friends
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2330 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-02-15 15:31:06 +00:00
joss17
bf67301d71 remove a maximum of debug outputs for the release
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2232 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-02-07 21:28:40 +00:00
joss17
5e11947d5c change the p3disc adding deleted friends
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2177 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-02-03 21:20:31 +00:00
joss17
074671af29 don't send an empty gpg key in p3disc
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2100 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-20 21:41:21 +00:00
joss17
abf19c964a don't send gpg key when all the ssl childs are on no disc or when we got no ssl child of it
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2084 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-19 19:17:21 +00:00
joss17
b4d89ccd94 ask disc info when adding a new friend
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2083 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-19 19:15:22 +00:00