Commit Graph

3976 Commits

Author SHA1 Message Date
drbob
86bdc5dfd0 More Plumbing changes.
* 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
2011-07-14 14:56:33 +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
216be04d83 * added DETERM_SYM NAT type to DHT Window.
* cleared DhtWindow global pointer at delete, so RS doesn't crash (and can relaunch window).




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4444 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-13 22:25:11 +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
thunder2
9992d6ae12 Removed the single notify systray icon (combined icon) and combined it with the normal RetroShare systray icon.
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
2011-07-13 19:24:33 +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
d6938721b0 Reduced timeout for connections to 20 secs. because they should be quick.
Made the query more robust, by only saying a query is SUCCESSFUL if we have recvd a reply from peer.
NB: These changes are yet to be tested!



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4439 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-13 11:37:47 +00:00
drbob
9ec411345d * added OwnId at p3bitdht level.
* Filter out own id from stun peers.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4438 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-13 09:12:31 +00:00
csoler
fc05314af0 corrected a bug due to reading uint64_t with wrong format on some systems, which caused the hash cache to sometime fail
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4437 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-12 20:07:28 +00:00
drbob
42dd1826b0 added Network Status to DhtWindow.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4436 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-12 14:17:06 +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
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
52cbe0f2fb Added Getting Started Dialog Box.
* 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
2011-07-11 18:53:14 +00:00
drbob
c2a0309f05 Added RsConfig class which will in the future support most of the interface from rsinit.h & rsiface.h
* Moved rsnetwork.h => rsconfig.h
 * Implemented Network functions (call p3NetMgr) in RsConfig.
 * Implemented UserLevel (New/Basic/Casual/Power) Levels
 * added p3PeerMgr::haveOnceConnected() function, for UserLevel support.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4431 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-11 18:48:56 +00:00
thunder2
4792d7c878 Fixed compile on Windows.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4430 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-11 17:00:13 +00:00
drbob
70d8fd14d3 Added additional NewFeed Type SecurityItem
* added AddNewItemIfUnique() to NewsFeed



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4429 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-11 15:53:41 +00:00
drbob
96b4651b7c Updated flags to add additional NewsFeed Type: Security!
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4428 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-11 15:52:29 +00:00
drbob
d643f168a0 Fixed up Adding / Removing Peers.
* 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
2011-07-11 12:11:58 +00:00
drbob
1cf790990f Added basic PeerItems to NewsFeed for AUTH_DENIED and FAILED_CONNECTION case.
* This will need to be fixed up - but the basic logic is there!
 * Improved DhtWindow display of peers.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4426 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-11 01:08:01 +00:00
drbob
53c71daca0 Major improvement to libretroshare!
* 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
2011-07-11 00:55:06 +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
d6e2d959be Added display of Dht Peer Connection status.
Switched on DhtWindow.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4422 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-10 18:20:30 +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
6eb27c9a1a Completed basics of the new p3bitdht system.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4418 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-10 00:39:15 +00:00
drbob
21145a29bb * added function to extract Local Address from udpstack.
* update local address when a reset is called.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4417 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-10 00:37:09 +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
csoler
20c44c4bca fixed compilation
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4412 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-09 15:47:49 +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
drbob
cb3f46165f Making a branch to upgrade the RS networking stack. Planning to do:
* split p3connmgr => into 3.
 * integrate peernet into p3bitdht.
 * add further interfaces to make it all work together
 * test these changes.
 


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-netupgrade@4410 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-09 09:29:03 +00:00
thunder2
b86407f395 Added a new image to the private chat window to set the window always on top.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4409 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-08 22:33:26 +00:00
thunder2
71f632b99f Fixed compile on Linux.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4408 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-08 09:54:27 +00:00
thunder2
ec12fcff6e Optimized layout of the private chat window.
Fixed german language.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4407 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-07 23:24:48 +00:00
thunder2
5e0e244b8a Fixed layout problem (vertical scrollbar) in ChannelFeed.
Indent text of the channel message and set it to selectable.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4406 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-07 22:01:30 +00:00
drbob
d64b714982 Disabled DHT Window by default. (Will reenable when it is complete)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4405 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-07 12:05:36 +00:00
thunder2
93bd251ae6 Fixed compile.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4404 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-07 11:38:22 +00:00
chrisparker126
58ecbcb331 fixed bug for 'copy error' and losing cache data
conflict in unix and windows style directory names 
led to cleaning of remote and local directories in 
Cachestrapper::loadlist()


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4403 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-06 23:46:32 +00:00
thunder2
c62f642706 Optimized layout of the SubFileItem.
Show the cancel button only when downloading or when used in CreateChannelMsg.
Hide empty message text.
Fixed german language.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4402 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-06 23:46:16 +00:00
csoler
a0e6bf7b2a removed popup window for file copy error, and redirected the message to std::cerr, to save users.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4401 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-06 19:08:30 +00:00
drbob
38fd0c4a5e Added Basic Dht Details Window to Retroshare GUI.
* created gui/dht/DhtWindow class.
 * brought across the basic structure from PeerNetQt... will be a condensed version of that GUI.
 * added to status Menu.
 * enabled via #define USE_DHTWINDOW  (which is defined! in MainWindow at the moment).
 * Dht Details only displays Dht Peers at the moment.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4400 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-06 13:08:27 +00:00
drbob
11cc3fce04 Added External DHT Interface to display Connection Information.
* added retroshare/rsdht.h
 * extended p3bitdht to provide RsDht interface. (p3bitdht_interface.cc)
 * added UdpRelay to networking stack. 
 * started expansion of p3bitdht to handle connections.
 * added <string> header to rsthreads.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4399 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-06 13:04:50 +00:00
drbob
5e691935fd Merged from /branches/v0.5-peernet/libbitdht:r4357-4397
Bugfixes and a couple of small improvements to the DHT code.
 * fixed up buggy overloading for the udplayer (for testing).
 * added processing multiple (5) remote processes per tick. 
     - (1 wasn't enough in testing, and led to dropped peers) 
 * removed unused variables from query data structure.
 * #defined out debugging in bdSpace, removed old functions.
 * More agressive attempts to find proxies for connections.
 * made "final query attempt" use exact peer address rather than midid.
     - mid id meant that the target wasn't always returned.
 * tweaked bdconnection debugging.
 * increase CONNECTION_MAX_TIMEOUT from 30 => 45. wasn't enough!
 * Limited bdQuery::QueryIdlePeriod to 15min (was unlimited).
 * added bdQuery::PotentialPeer cleanup functions - for more robust reporting.
 * fixed bdQuery debugging printouts.
 * Implemented BITDHT_QFLAGS_UPDATES flag.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4398 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-06 00:14:58 +00:00
drbob
24351cb460 * added #define WIN32 protection for <malloc> in bdbloom
* disabled ATTACHED mode by default.
 * set reasonable default Startup parameters (had test ones before)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4397 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-05 23:53:40 +00:00
csoler
cca2962116 removed LinkCloud files from main executable
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4395 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-05 20:56:58 +00:00
csoler
367d1aa790 added missing Q_INIT_RESOURCE call to get the plugins icon loading correctly
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4394 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-05 20:42:28 +00:00
csoler
ccfbfa9984 Improvement of the plugin system:
- Added configuration saving for plugin manager and serialization methods
	- added a list of accepted plugin hashes
	- added plugin widget for each plugin in settings, to allow enabling/disabling plugins
	- updated LinkCloud plugin to new rsPlugin class
	- put the addconfiguration for plugin manager in rsinit.cc a bit earlier to allow to load 
		the list of accepted hashes early enough
	- added icon for disabled plugins



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4393 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-07-05 20:29:07 +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