179 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
drbob
f475c4bdd6 Returned debugging to what it was!
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4334 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-06-25 12:41:37 +00:00
drbob
9e420ce08e Found the CacheTransfer Killing Bug... misplaced brackets!
I've also switched on the debug output so we can see when it happens.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4333 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-06-25 11:49:38 +00:00
drbob
a333b12618 Fixed the Missing Cache File bug.
* Added Old Cache Storage... so these can be retrieved.
 * Connected up the CancelCacheFile() -> FileCancel.

Other Changes.
 * Removed ipaddr = 1 bug (thought someone else had commited this earlier???)
 * added #ifdefs to remove debugging output in p3BitDht.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4330 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-06-24 15:10:52 +00:00
thunder2
72d9f352e3 Removed the difference of the separator for Linux and Windows.
Removed extra "/" of the filename (e.g. "E://") of the hashed file when sharing a whole drive.
Recompile of the gui needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4200 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-05-15 12:42:55 +00:00
csoler
993e0d225c improved strategy of cleaning unfinished cache transfers
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4171 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-04-25 14:20:57 +00:00
csoler
f110bad74c changed policy for canceling cache files: only inactive transfers get canceled now.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4160 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-04-17 16:22:03 +00:00
thunder2
bc113326e4 Fixed problem with utf characters in the %APPDATA% path on Windows.
Added function for opening files on Windows and Linux - RsDirUtil::rs_fopen.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4124 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-04-03 23:11:38 +00:00
thunder2
af4dd635e3 Removed member ftController::mShareDownloadDir and calculate the value from the shared directories.
Combined the two methods for share and unshare of the download dir.
Added share incoming directory to the QuickStartWizard.
Recompile of the GUI needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4089 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-03-08 20:05:36 +00:00
thunder2
0a42b7899e The working (hashing) thread FileIndexMonitor is now stopped when RetroShare is closed.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4072 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-03-03 23:30:08 +00:00
csoler
1489d85ce9 forgot to commit fopen64 fix to this file
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4059 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-02-25 08:02:12 +00:00
csoler
c7b28dfb7d added load/save of max simultenous downloads
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3978 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-23 14:55:57 +00:00
notdefine
35c97a6f65 Revert Changes
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3962 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-10 15:30:37 +00:00
notdefine
d9d996c587 Don't move priority files to the end of the queue, when partner peer is not reachable. set the queue priority to +1 in the queue, so they will be first resumed after one of the lower priority downloads finished
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3961 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-10 14:58:49 +00:00
thunder2
28b4534fdf Removed unnecessary variable "ownId" in ftController::FileRequest.
Optimized parameter of rsForums from "std::string" to "const std::string&". Recompile of the GUI needed.
Cleared childTS in RsDistribMsg::clear.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3949 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2011-01-04 19:46:27 +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
thunder2
fc08d1171f Added simple toaster for download complete.
Added new icon in MainWindow and systray icon for existing completed downloads.
You can enable/disable the toaster and the systray icon in NotifyPage.
Recompile of the GUI needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3868 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-25 00:20:25 +00:00
csoler
d83a7118fa removed potential cross-lock situation (reported by Valgrind)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3855 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-22 21:15:21 +00:00
csoler
b94e4376a4 only assume availability for cache transfers. All other transfers now use ChunkMaps
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3853 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-22 20:57:53 +00:00
csoler
9397491634 fixed default chunk strategy value (uninitialized)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3778 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-11 19:36:39 +00:00
csoler
c00e11ed2b switched random chunk strategy to true random
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3777 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-11-10 22:05:34 +00:00
thunder2
ab5b2a3851 Optimized parameter "hash" of method RsFiles::FileDetails from "std::string" to "const std::string&"
Removed compiler warning of FileEntry.
Recompile of the GUI needed.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3703 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-27 20:01:31 +00:00
csoler
630e7dfe6b code cleaning. Removed debug info
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3675 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-16 16:49:35 +00:00
csoler
c8f6770b7d moved the callback information into flags in ftFileControl. Side effect: code is simpler, channel transfers are saved in a backward compatible way
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3674 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-16 15:21:37 +00:00
csoler
8369d42600 corrected a bug in chunkmaps that affected file creators being providers at the same time, which could corrupt data. Added some debug info to chunk maps.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3673 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-15 22:12:29 +00:00
csoler
82057a5f69 corrected initialised memory read
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3645 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-07 21:31:42 +00:00
thunder2
d31cef0f11 ChannelFeed:
- Sort the ChanMsgItems of the channel by date

ChanMsgItem:
- Fixed adding all files (SubFileItem) again by pressing the unsubscribe button (only in Friend Storm)
- Enable unsubscribe button only when channel is subscribed (only in Friend Storm)
- Fixed adding files with umlauts (utf8) on Windows
- Enabled Download and Play button in ChanMsgItem, when they are enabled in the SubFileItems

ftServer:
- Added the method alreadyHaveFile for use in the GUI - recompile of GUI needed

SubFileItem:
- Added state strings like LOCAL, REMOTE, ERROR, ... for translating


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3614 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-10-05 20:39:14 +00:00
csoler
8ee92483ee added missing return which would create ghost cache self-transfers
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3504 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-15 19:53:58 +00:00
csoler
d41089b30f suppressed debug info
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3503 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-15 19:48:49 +00:00
csoler
301b7daa88 changed insertion in queue for cache files: these are always placed before the first non cache file, hence giving cache files a higher priority over normal downloads.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3502 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-15 19:48:13 +00:00
csoler
4ea6b0b31f corrected bug about missing da39... null file
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3489 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-09-14 21:24:51 +00:00
csoler
8bfc74485a First implementation of per-chunk CRC32 check. This is triggered
- by the right-click+Force Check on files.
- when a global hash on a downloaded file does not match the announced hash.

When a CRC map check is ordered, the CRC map is requested to one of the sources for the current file download.
When received, all downloaded chunks are checked w.r.t the reference CRC and marked as not done if the CRCs do not match.
The exchange of CRC32 map and requests has been tested, as well as CRC map checking during download (force check).

To be implemented soon:
    - caching of CRC32 maps (although these are fast to compute)
    - CRC32 map packets for normal downloads. For now these work only for turtle tunnels.
    - handling of errors if the CRC never comes. For now, the download will stay stuck in "Checking..." mode.

So, don't play too much with the force check feature for now...





git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3310 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-21 23:14:10 +00:00
csoler
fbd8a33db0 added display of checking stage in GUI (at end of transfer). Gave names to the states in ftTransferModule. Added a flag for ForceCheck files (not functional yet)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3274 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-09 21:04:29 +00:00
csoler
458a8faf70 - implemented post-download hash re-check. For now, if the hash does not match, the download is canceled, but in the near future, per-chunk comparison wil occur
.
- corrected a bug that caused file copy error: a closeFile() was missing when the file is complete. Because of delays in fwrite, the file would not be always co
mplete, nor exist at all for small files (e.g. cache files), which in the later case caused the copy error.

Warning: needs a make clean in libretroshare to recompile.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3261 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-07-06 05:04:11 +00:00
csoler
c8fc75c75c added some safety checks to setting chunk strategy against inconsistent values.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3236 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-29 20:51:16 +00:00
leander-256
9033e4fa56 Bugfix on file manipulation
Corrects wrong logic when using Win32 API for handling the filesystem, Win32 functions return 0 for an error while POSIX functions return 0 for a success.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3146 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-06-16 16:18:08 +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
334c9b61d3 moved rsGlobalShutDown from MainWindow::doQuit to main
rsGlobalShutDown now cleans the threads and some memory on exit

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3028 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-29 15:14:25 +00:00
csoler
b80aef1228 Suppressed the possibility for browsable only files to be searched by hash from turtle router.
This avoids that an attacker that captures a broadcast hash request can also ask for the file.

This needed to add back explicit sources in SearchDialog and private chat transfer. I dynamically search
for sources in file lists just before calling FileRequest.

When RS links anchorClick() will work properly with Qt, we can remove the search flag "EXTRA" from the
tunnel digging in p3turtle.cc, otherwise, people having this bug can't transfer files in private chat by
copy+paste of a RS link.
    
	Also:
	    - added missing mutexes in search requests into fimonitor.cc
		- suppressed some debug info in connect manager
		- added check for write fails when dumping config files



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3027 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-29 13:17:09 +00:00
drbob
d93c56a355 * Switched on Turtle transfers for Channels,
* Enabled srcIds from secondary file transfer requests to be used.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3002 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-25 20:42:56 +00:00
csoler
0634e461fb implemented a safety check for low disc space, and safe drop of disk access if too low
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2968 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-21 20:49:48 +00:00
csoler
f7305de302 added a workaround for a bug in the cache system that asks for files of size 2^64-1. This results into a division by zero in ftChunkMap. Bu the time I find this bug, the workaroudn should avoid crashes.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2932 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-17 21:05:28 +00:00