Commit Graph

23 Commits

Author SHA1 Message Date
arvidn 24fbc1c9a7 extend test_transfer to stop and resume from resume-data 2022-12-29 21:35:04 +01:00
arvidn cf678a9d62 extend transfer test matrix to include odd piece sizes and web seeds 2022-12-28 17:27:59 +01:00
arvidn 096544cfd1 factor out test_transfer_matrix into its own test executable 2021-12-08 08:15:36 +01:00
arvidn 6717bd91a1 fix issue where incoming uTP connections were not accepted over SOCKS5 2021-10-30 11:47:37 +02:00
arvidn aa08941afc add support for larger pieces and multiple files in test_transfer 2021-09-27 10:58:46 +02:00
arvidn 139bf34b0c test receiving corrupt data 2021-09-11 12:57:50 +02:00
arvidn b1227d0297 improve simulated disk I/O to support reading unwritten pieces 2021-09-09 09:26:13 +02:00
arvidn 0655bd4334 organize utility functions for sims a bit better 2021-01-24 23:28:03 +01:00
arvidn 2a0cfe1751 convert some uses of class to struct 2019-12-22 10:29:19 +01:00
arvidn 3d0bc33d98 deprecate session_flags_t, deprecate session_constructors that take session_flags_t in favor of using session_params. move session constructor definitions into the cpp file. convert session from class to struct 2019-12-01 17:29:48 +01:00
arvidn d3e22a7bc7 add tests for transferring v2-only torrents 2019-08-10 09:28:38 -07:00
arvidn 3494961a68 some work on getting simulations to work 2019-02-11 20:19:08 +01:00
arvidn 8305c40d6a make disk_interface the customization point for storage, rather than storage_interface
remove the disk cache
remove trim_cache disk job
remove zero-storage
mark default_storage_constructor as deprecated
remove storage_interface
remove file_pool and default_storage_constructor. update connection_tester to use disk_io_thread.
only ftruncate files once
optimize hashing, by running sha1 directly on the memory mapped file
use boost-multi_index in file_view_pool
remove flush_piece and flush_hashed, simplify job-fence logic, remove prep_read_job_impl
support noatime
split out mmap implementation into a .cpp file
support hashing of content in part files. wraps up new disk storage
remove flush_piece disk job
separate out store_buffer into its own class
pass session_settings into storage operations instead of assigning a pointer in the storage object
use unordered_map in store_buffer
add fopen-based disk io back-end for non-64 bit systems or systems without mmap
factor out open_mode_t into its own header
first stab at windows memory mapped files support
build all of boost for autotools
remove flag in async_read callback handler
remove old open_mode_t, preadv/readv and coalesce buffers
support sparse and no_cache file flags in mmap
Remove use of overlapped I/O because we're no longer doing any scatter/gather syscalls the use of overlapped is an unnecessary complication.
don't explicitly specify global read and write. On MINGW we need to use libtorrent::read and libtorrent::write instead of the MINGW provided ::read and ::write.

If the underlying file is empty then m_mapping is expected to be null.
It is the caller's responsibilty to notice that the region's size is
zero and not dereference it in that case.

Otherwise there is no good way for users of default_storage::open_file
to determine that the opened file is empty.
2019-01-20 18:29:42 +01:00
Arvid Norberg 4523e05527 fix uTP and SOCKS5 simulations and update libsimulator 2018-05-13 12:10:34 +02:00
arvidn f80cd8ad1b update libsimulator and set default build to be static for sims 2018-01-04 07:28:53 -05:00
arvidn 3f09d16e3c defer reconnecting peers to after the second_tick loop (to avoid mutating m_connections while iterating over it) 2017-06-14 10:35:50 -04:00
arvidn d138f02424 introduce lt namespace alias 2017-04-23 23:43:58 -04:00
Arvid Norberg 717ed8bd3b Msvc warnings (#822)
fix msvc warnings in python bindings and simulations
2016-06-18 19:24:27 -04:00
Arvid Norberg fa8232cd13 remove some old cruft and defines (#785)
remove some old cruft and defines
2016-06-04 10:03:13 -04:00
Arvid Norberg 8c8f5bb03b deprecated public to_hex() and from_hex() functions (#784) 2016-06-04 10:01:43 -04:00
Arvid Norberg be67553897 simplify session pause mechanism by keeping two separate states in torrents and having the session explicitly tell torrents when it's pausing (#779) 2016-06-03 07:32:48 -04:00
arvidn 2b00eb1b38 refactor and clean up some sim tests 2016-03-27 18:40:49 -04:00
arvidn f5d5ac4f3a fix bug where disk cache was wiped out after completion file-checking. factor out sim test utilities and reuse them in the regression test 2016-03-06 21:44:38 -05:00