Commit Graph

12 Commits

Author SHA1 Message Date
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
154ef63474 removed potentially harmful code. Warning: needs make clean in libretroshare
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2335 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-02-15 20:44:37 +00:00
csoler
cfaaec31c7 - Implemented chunk-based file transfer from partial sources. This in particular means:
- exchange of chunk availability maps from different peers
    - correct handling of what is available to which source before asking the data
    - correct display of chunks in the progress bars
    - generalised the use of compressed chunk maps
    - removed the size parameters from the hash search functions
   
- In addition:
    - suppressed a number of per-value transfers of std::string
    - improved the FileTransferInfo Widget, to show some additional info

Still to be done:
    - chunk map exchange for non anonymous traffic (easy)
    - improve accuracy of completion for uploads (for now it's a integer number of chunks)
    - check compilation on windows




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1993 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-01-11 16:00:42 +00:00
csoler
6efc71efd5 compliance with win32
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1020 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-02-08 13:04:32 +00:00
csoler
bb904ea8e8 fixed bugs in upload speed computation
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1007 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-02-05 00:01:51 +00:00
csoler
a3d3778c36 Added info for upload peers and rate in Transfer tab
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1005 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2009-02-04 21:35:39 +00:00
drbob
71797d6f70 Fixed compatibility bug in file transfer...
can now communicate between V0.4.9b and V0.4.11+



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@827 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2008-11-20 22:59:58 +00:00
drbob
ef9bb372b4 re-wrote ftfileprovider / ftfilecreator to be more simple and robust.
re-wrote associated tests to be more robust.
added new fttransfermoduletest.cc 



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@760 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2008-10-22 18:12:58 +00:00
drbob
189dcbb482 Completed most of ftserver class.
Also changes to make everything fit together.
changes to Interface to support srcId list.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@675 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2008-08-09 17:03:24 +00:00
cppenthu
eeb13e7b18 Corrected formatting
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@627 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2008-07-02 04:05:58 +00:00
cppenthu
1db82dee51 ftfileprovider.cc - takes care of getting data from a requested file
ftfilecreator.cc -- creates a file, tracks missing chunks, timed out 
chunks etc



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@626 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2008-07-02 02:36:39 +00:00
drbob
971ad4fe9b Added header files for new file transfer design.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@615 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2008-06-19 22:49:23 +00:00