Commit Graph

1554 Commits

Author SHA1 Message Date
drbob
4d2175636e Added basic ZeroConf interface.
- registers oneself, browses and resolves services.
 - Lots still TODO:
	- parse TxtRecords.
	- Track peers.
	- feedback to libretroshare
	- etc, etc.
Enabled ZeroConf in libretroshare.pro & rsinit.cc. Compiles and runs on OSX.
Added RelayHandler to Dht, to enable external control of Relays.
Marked pqiAssist Interface for changes... will be revamped with ZeroConf.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4727 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-13 16:19:37 +00:00
drbob
2048bb5e47 Improvements to BanPeer Code, mainly from a UdpStunner perspective.
* Added UdpStunner::dropStunPeer() code to remove bad peer from stun list.
 * added calls to UdpStunner::dropStunPeer for BanLists going to/from DHT.
 * added  DEBUG_BANLIST_CONDENSE to remove unnecessary debug.
 * Improved UdpStunner::status() print out of stunlist.
 * Added extra check to throw away stun reports where remote_addr == reported ext_addr.
	- This was causing peers to get the wrong IP addresses.
 * Modified UdpStunner ExtAddr checks to make sure the IP addresses match.
 * Changed BANLIST service Id to from Test ID to real ID.

NOTE: These are stop-gap methods to avoid the wrong Stun reports.
A more robust scheme must be implemented. I'd expect that it would
involve a strict initial check to establish your IP address...
(e.g. require 4 peers to confirm it, allowing for some fake entries)
After this we can have a weaker check ensuring IP address matches.
If we detect a likely REAL change of IP address - drop back to requiring
a strick check again.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4717 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-08 20:15:08 +00:00
drbob
92c53ff0d2 * silly ( A || B) bug... B isn't called if A is true. Stopped addition of Entries in p3BanList
* Only include External Addresses in the Peer Ban scheme (done in LinkMgr and p3BanList)
 * Disabled p3Dsdv before it is too widely used.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4704 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-12-01 17:21:52 +00:00
drbob
8b40826940 Tweaked DSDV parameters.
Broadcast Time = 10min.
	Max Hops = 3 (2 Hops are broadcast).
	Removed print of RsDsdvRouteItem.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4699 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-29 18:20:04 +00:00
drbob
02b03d1a0f Fixed Dsdv debugging and cleanup of old entries.
Added PRIORITIES for BanListItems and DsdvItems.
Increased Dsdv Max Distance to 5...

Its almost ready for network-wide test!



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4698 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-29 17:14:51 +00:00
drbob
5268391f2e Rewritten Dsdv Stable Route decision algorithm.
* Store all possible routes (will be useful later!)
	* Periodically cycle through and choose the most stable one.
	* added ValidSince field... for tracking age.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4697 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-29 15:43:11 +00:00
drbob
85ea54395b Improvement to BanPeers Sharing Code.
* Added p3BanList as a service.
 * Added interfaces to communicate addresses.
 * Added debug to p3BanList.
 * Fixed several bugs in the AddEntry/Condense
 * Fixed Mutex deadlocks.

Improvements to Dsdv code too.
 * Added p3Dsdv as a service.
 * Added Function to create a TEST service for routing.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4687 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-25 00:58:01 +00:00
drbob
f01d06c806 Added first part of p3banlist.
This is a service to exchange bad IP addresses within Retroshare network.
 


git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4684 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-23 16:40:32 +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
drbob
1cfcac7377 Added Dsdv Data transport packet.
Shifted Dsdv address to separate TLV data type.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4679 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-21 14:38:13 +00:00
drbob
7f30b19f2a First pass at adding a DSDV system to libretroshare
- Added Routing Data Types.
	- Completed Basic Logic
	- Added Interface for GUI display.

Lots to do:
	- Handle edge cases (drop / add )
	- Test on the network.
	- Partner service, which actually uses system.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-dhtmods@4678 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-21 07:49:38 +00:00
thunder2
8fc1a46ee7 Added translation for plugins and added german language to LinksCloud. Recompile needed.
Changed the name and the description of the plugin to utf8.
Fixed german language.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4672 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-17 21:17:24 +00:00
csoler
4d9727f47a - fixed download priority handling. Proof-tested on multiple DL from the same peer.
- removed dependency of mRateIncrease into measured rtt -> would cause very slow transfers through long tunnels



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4671 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-16 20:30:20 +00:00
csoler
ded1707151 improved behavior of hash cache
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4663 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-05 22:31:45 +00:00
csoler
fa690de1d6 small bug fixes about CRC32 verification when the file is actually complete.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4662 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-04 21:29:51 +00:00
csoler
d43a131c04 Improved CRC32Map checking in several ways:
- servers now compute the map in a separate thread
- CRC32Maps are kept in cache for 30 mins
- CRC32Maps requests cannot be used to overflood a server anymore since their number is limited.
- Transfer modules now send keep alive packets to maintain tunnels when asking for a CRC32Map



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4661 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-03 23:18:00 +00:00
csoler
a9cb864717 corrected bug in CRC32 map cross-checking: only downloaded chunks would be checked.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4660 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-03 23:12:54 +00:00
csoler
e202a01862 fixed bug: re-allocation of local variable
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4659 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-02 13:58:33 +00:00
csoler
3c2a5e8f42 Added a filemapper class to store downloaded files sequentially on the HD. The mapper automatically
re-organises (e.g. defragments) data such that
- when the DL is finished, the file is in the correct order (no need to re-order it)
- during the DL, only the n*_chunk_size first bytes of the partial file are written, where n is the total number of downloaded chunks.
- the total amount of copy operations does not exceed the total size of the file. In practice, it's much lower.

That suppresses the lag when downloading large files due to writing isolated chunks in the middle of the file.

Next:
- integration into ftFileCreator
- load/save in ft_transfers
- retrocompatibility with existing transfers.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4658 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-01 14:20:51 +00:00
csoler
9761c4c980 fixed compilation
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4657 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-11-01 14:14:20 +00:00
csoler
51bd5e7d96 fixed compilation of fimontest.cc
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4656 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-31 13:19:35 +00:00
csoler
a48dc86fb8 removed delay in file checking that would cause excessively long file update cycle
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4653 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-24 16:11:12 +00:00
csoler
1fc8c5ef70 implemented slice sharing between peers.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4650 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-23 18:43:58 +00:00
csoler
c8ea41a4db corrected bug that would allow a direct friend to DL a file that is NETWORK_WIDE only, using direct transfer
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4648 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-21 22:25:18 +00:00
csoler
303f6333f6 obfuscation of TR and SR by random rare non-increase of length 1 requests (original idea by Costa)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4647 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-21 21:39:36 +00:00
chrisparker126
c1af9b13ad fix for windows plugin system
uses call back to expose the retroshare interface to plugins



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4633 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-08 17:47:36 +00:00
csoler
2173ee0d2e fixed bug with anonymous channels asking for friends to be sources
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4632 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-06 20:06:25 +00:00
csoler
15758578e0 fixed display of filename when an upload is a partially downloaded file
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4629 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-01 21:10:03 +00:00
thunder2
086f33c1a6 Add the private chat message to the history after removing the private chat queue (when the user has read the message).
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4628 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-01 20:50:39 +00:00
thunder2
363af69254 Fixed utf8 issue in history manager.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4626 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-01 13:12:28 +00:00
csoler
c650265704 added display of TR forwarding probability as a function of depth
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4625 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-10-01 11:46:00 +00:00
thunder2
b3bcfe9d30 Fixed compile on Linux.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4624 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-29 09:52:01 +00:00
thunder2
29c090fb44 Moved the chat history into the libretroshare.
Now the history is saved encrypted. Please delete all files with "chat*.xml" in your profile folder.
Added new config p3HistoryMgr and interface p3History.
Added new option to limit the count of the saved history items.
Added new simple html optimizer "RsHtml::optimizeHtml" to reduce the size of the html strings.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4623 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-29 09:20:09 +00:00
csoler
5ae506c317 - Changed default random number generator to use RAND_bytes from openssl.
- Updated random testing code and fixed compilation



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4621 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-28 19:34:27 +00:00
drbob
febcfc9bd3 Bugfix: missing TCP connection call - when peer is found on the DHT.
* save IP address for DHT display.
	* store Action in action Queue (the BUG).



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4620 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-28 16:01:22 +00:00
drbob
5ea8cfb67d Added Ben's patches:
* Compilation for FreeBSD.
	* Notes that MT is not cryptographically secure.
	* modified sorting of DHT Window.

Only one change that I didn't commit:

 bitdht {
-       LIBS += ../../libbitdht/src/lib/libbitdht.a
-       PRE_TARGETDEPS *= ../../libbitdht/src/lib/libbitdht.a
+       LIBS += ../../libbitdht/src/libbitdht.a
+       PRE_TARGETDEPS *= ../../libbitdht/src/libbitdht.a
 }

As this would have broken compilation on the other platforms.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4619 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-28 15:16:21 +00:00
csoler
fdd8825399 removed unused code
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4613 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-23 21:14:19 +00:00
csoler
97ed1d534f - removed calls to rsfiles->get{Download,Partials}Directory() in RsDiscSpace class, since it would trigger a call to ftController
- added a lock into ftTransferModule::recvFileData() (Crash reported by Costa due to storing data in a deleted transfer module)
- changed names of functions in ftTransferModules to locked_* when appropriate (helps debugging)



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4612 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-23 21:08:11 +00:00
csoler
dd474cfddf added chunk splitting in case part of the file transfer data does not come. Added strategy to ask again for missing data. The combination of these two cannot result into an infinite loop (as before)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4610 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-22 19:58:47 +00:00
csoler
9b5928453d stopping hash when the top directory is removed
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4607 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-15 21:22:34 +00:00
csoler
0b33b6fc9d fixed bug fue to deleting ftFileCreator used by datamultiplex before asking datamultiplex to remove it!
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4606 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-15 19:33:58 +00:00
thunder2
526f71bebd Fixed crash in "pqiSSLstore::readPkt" when "rsSerialiser->deserialise" returns NULL.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4605 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-14 11:05:17 +00:00
chrisparker126
d30c03b183 added back changes from revision 4542
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4601 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-10 18:42:47 +00:00
chrisparker126
7e8d8aea9c merging distrib split into trunk
suppressed p3distrib in services 


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4600 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-10 15:20:15 +00:00
csoler
b73fd06753 added auto-split of long private messages, and re-combination of partial messages on client side. Corrects the bug causing disconnection when sendign messages of side larger than the maximum packet size.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4598 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-09 19:37:38 +00:00
csoler
7373b602e3 apparently this file was missing.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4595 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-08 19:25:17 +00:00
csoler
258aea44f7 apparently this file was missing.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4594 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-08 19:22:50 +00:00
thunder2
1821d8cb06 Set own status initially to online.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4592 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-08 13:17:49 +00:00
csoler
c8e2a4c828 put some pqissl warnings in log file only in debug mode, since this is quite CPU demanding
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4590 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-06 18:54:55 +00:00
csoler
0ed60eaf86 merge of QoS branch into trunk
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4588 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-09-04 20:01:30 +00:00