* tweaked time periods as these type of connections take longer.
* added NatHoleType() to ConnectStateBox logic - as its required for ProxyPort Determination.
* added ConnectStateBox::getNetState() so we can work out if in ExclusiveNat mode.
* added ExclusiveLock checks at Connection Initiation / Proxy Connection Auth & Connection Ends.
* added Simulation of Symmetric / Exclusive Nat to UdpStunner.
* exported ExclusiveProxyLock for GUI display.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4457 b45a01b8-16f6-495d-af2f-9b41ad6348cc
Each attempt should be completeable in < 10 Secs.
This could increase up to 20 secs, if pings are required.
So with 3 Proxy attempts, should take 20-30 secs.
* Removed as many of the pauses as possible.
* connection attempt DONE if OUTOFPROXY, DUPLICATE, TEMPUNAVAIL or EXTCONNECT timeout
* Fixed AutoAuth for Proxy (was triggering for Relay as well)
* Increased QUERY_UPDATES to every 10 secs.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4454 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* added bool return value to ConnectionRequest. only returns false if MODE not allowed.
* added checks for an existingConnectionRequest - results in a NOOP.
* made each ConnectionRequest result in only one UDP start.
* a START message will not kill a local ConnectionRequest (even in remotely started).
* increased CONNECTION_TIMEOUT as this should never happen at this level.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4449 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* Forgot that RELAY connections need extra parameters.
* Added proxyAddr, srcAddr and Bandwidth parameters to connection attempts.
* Completed UDP connection callouts from p3bitdht.
* Added TCP connection attempt initiation from p3bitdht.
* Added PASSIVE / ACTIVE determination in p3bitdht.
* completed UDP connection logic in pqissludp.
* enabled UDPSTUN_ALLOW_LOCALNET for testing.
* added CONSTs for TOU Receiver Indices.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4446 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
* 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
The user can choose, which notify icon is shown as single icon in systray or with the normal RetroShare icon.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4442 b45a01b8-16f6-495d-af2f-9b41ad6348cc
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
* 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
* 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
* Connected it up with rsConfig... to tick (and close text) for bits that have been done.
* Tests cases at first open.
* Added FAQ from wiki - it needs help.
* This whole concept needs some further tweaking.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4432 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* added OthersList to p3linkmgr. this is important so we can send ACTIONS for removed Peers.
* added missing mStatusChanged when adding Friend.
* added printPeerLists to PeerMgr and LinkMgr.
* tweaked debugging.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4427 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* Catch Failed Connections, and add to NewsFeed for GUI notifications.
* outgoing connections are captured via pqissl::FailedCertificate() functions.
* incoming connections are captured at certificate verification.
* Certs are passed to AuthSSL, which calls the notification system.
* Additional types have been added to rsnotify to handle these cases.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4425 b45a01b8-16f6-495d-af2f-9b41ad6348cc
* 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
* 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
* 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