Commit Graph

15 Commits

Author SHA1 Message Date
drbob
b56ddfeb5b * Switched on Dht "Attach" Mode if RS is firewalled. (and not nice firewall).
* Added interfaces to enable AttachMode switch.
 * Added further tcponudp tests.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4484 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-21 11:28:19 +00:00
drbob
cc9df9a80f Removed Lots of Debug, and fixed a couple of bugs.
* Increased Timeout Periods for UDP connections - this was stopping half of them from succeeding.
 * The other bug (Heartbeat / stream issues) has not been solved.
 * Fixed up initialisation of p3BitDht data. 
 * add DropPeers() as NON-ACTIVE (this allows peers which aren't VISIBLE to still try and connect)
 * export AddFriends/FOF/Others to LinkMgr to allow further SSL IDs to be added to p3BitDht.
 * Export UDP Addresses to DhtWindow.
 * switch off lots of debugging.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4469 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-19 00:06:09 +00:00
drbob
c33b415ef4 Bugfixes for ExclusiveProxy Mode.
* changed PeerConnectStateBox::getNetState() to calcNetState() to provide up-to-date info (internal mNetState can be stale!)
 * Added "bool addrChangeLikely" parameter to ReleaseProxyExclusiveLock() - this parameter is determined by whether we actually started a UDP connection.
 * disabled ForceRestun in UdpStunner if addrChange is unlikely.
 * Reduced Stunner Period Slow from 3 minutes to 2 minutes - exact value will only be known after real-world testing.
 * More debugging.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4458 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-17 16:24:45 +00:00
drbob
22debbce34 Turns out that the current implementation of p3NetMgr has NO dependancies on p3PeerMgrIMPL or p3LinkMgrIMPL.
Infact, it doesn't use these two classes at all (so you could pass void in the init function)...
  - It should actually update p3PeerMgr when it detects a Net Address change (TODO).

This means that there is potentially no need for a dummy object - p3NetMgrIMPL can be used almost as is!

 * changed p3PeerMgrIMPL & p3LinkMgrIMPL pointers back to p3PeerMgr and p3LinkMgr pointers.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4445 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-13 23:23:47 +00:00
drbob
387db6e7b6 Done most of the piping/callback between the DHT and LinkMgr/NetMgr.
* Added ConnectionFeedback fn to NetAssistConnect & p3BitDht.
 * Added TYPE definitions to pqiassist.h
 * added extra parameters to p3LinkMgr::connectAttempt() (flags which will be used to pass DIRECT/PROXY/DIRECT + PASSIVE/ACTIVE)
 * Added callback from p3LinkMgr to NetMgr::netAssistStatusUpdate() => Dht::ConnectionFeedback.
 * updated peerConnectRequest to trigger either TCP attempt (first) or UDP connection.
 * updated parameters for p3LinkMgrIMPL::tryConnectUDP()
 * added p3LinkMgrIMPL::locked_ConnectAttempt_SpecificAddress() for DHT => TCP attempt.
 * added extra parameter to addAddressIfUnique... bool addFront =>  DHT attempts get pushed to front of Queue due to timing requirements.
 * added extra parameter (flags) to pqiperson::connect() - matches extra parameters to p3LinkMgr::connectAttempt().
 * added p3NetMgr::netAssistStatusUpdate()
 * added mConnectFlags to pqissludp



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4443 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-13 22:23:40 +00:00
drbob
8d5bde1b50 Added Virtual Interfaces for p3LinkMgr, p3NetMgr & p3PeerMgr.
Shifted real functionality to p3LinkMgrIMPL, p3NetMgrIMPL p3PeerMgrIMPL
This allows us to test most objects with dummy objects (i.e. no need for full AuthSSL/AuthGPG objects)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4441 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-13 14:22:25 +00:00
drbob
85d232ff4f * added DETERMINISTIC_SYMMETRIC NAT type to Connect Logic. (CBS_NETSTATE_EXCLUSIVENAT)
* added DETERMINISTIC_SYMMETRIC NAT to retroshare/rsconfig and NetStateBox.
 * added ExclusiveMode to udpStunner.
 * Tweaked UdpStunner ping logic.
 * added TCP_WAIT to Connect Logic.

NB: This stuff is still to be tested!



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4440 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-13 11:41:25 +00:00
drbob
6c5d5f6cc2 Integrated NetStateBox and Activated Stunners.
* Added tick() and setRefreshPeriod() to pqiAddrAssist
 * Fixed up NETSTATE #defines, all refer to retroshare/rsconfig.h
 * added #define => string translations for NETSTATEs
 * Added NetStateBox as an independent Network State determination (has no effect on existing code).
 * added slowTick() to p3NetMgr.
 * connected p3NetMgr::getNet... to NetStateBox.
 * piped network state into NetStateBox.
 * added p3NetMgr check for changes in NatType. (to update Stun Rate / Attach Mode (TODO))
 * added NetStateBox.reset()
 * tweaked lots of debugging.
 * added Default Stun Period (pass -1 to setRefreshPeriod()) 



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4435 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-12 14:16:46 +00:00
drbob
81dc1d77b7 Cleaned up More debugging and started work on connections.
* switched off lots of debugging, and removed "common" messages, so we can focus on the actions.
 * Added extra debugging focused on the connections.
 * Removed "lastconnect" from p3LinkMgr.
 * added p3PeerMgr::updateLastConnect() fn, so this parameter will be stored.
 * added calls from p3LinkMgr at connect and disconnect.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4424 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-11 00:52:12 +00:00
drbob
f7ff55237e Bugfixes galore!
* Split p3bitdht_peers.cc debugging in two. Hid Id Translation debug (that code is fine)
 * Added initialisation of p3bitdht peer data structure (using values from peernet).
 * Added BITDHT_QFLAGS_UPDATES flag.
 * Added Tick() interface to NetAssistConnect  interface, tick it from p3NetMgr.
 * FIXED OLD BUG: netAssistFriend was not being called from p3LinkMgr::connectResult() this meant all peers where being searched for.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4423 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-10 19:50:12 +00:00
drbob
b2e25680ac General debugging:
* Improved debugging messages for p3linkmgr & p3netmgr, switched on debugging.
 * added ids to p3bitdht peers.
 * added datatypes to RsDht peers data structure, and translate the data.
 * add const to PeerConnectStateBox::connectState().
 * cleaned up p3LinkMgr::locked_ConnectAttempt_AddDynDNS() a bit.
 * filled in friend data types in p3LinkMgr (allows connections now!)
 * added printConnectState() in p3LinkMgr



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4421 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-10 18:19:46 +00:00
drbob
59abce2d48 Added missing functions to get retroshare running again.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4420 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-10 01:49:39 +00:00
drbob
bbd11e69c1 Changes to libretroshare to get it to compile (still missing fns - so won't link yet!)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4419 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-10 00:41:39 +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
drbob
21487bfdf6 Splitting p3ConnectMgr into three parts:
* p3PeerMgr: handles configuration.
 * p3LinkMgr: handles connections to peers.
 * p3NetMgr: handles network state, and firewalls / dhts.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4411 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-09 09:36:37 +00:00