Commit Graph

85 Commits

Author SHA1 Message Date
arvidn 9d7443f467 validate add_torrent_params::save_path at run-time 2025-01-28 11:57:42 +01:00
arvidn 550d3c7d9f update copyright headers 2022-06-22 21:42:55 +02:00
arvidn c37c48a1cf fix (deprecated) use of add_torrent_params::info_hash 2021-04-18 22:23:56 +02:00
arvidn da574eea6d attempt to make a flaky test a bit more reliable 2021-03-22 15:52:27 +01:00
Arvid Norberg 0c24a771db improve uTP simulations, to prevent regressions 2021-01-23 02:59:01 +01:00
arvidn 399f8dcc4b update test_session 2021-01-09 14:20:45 +01:00
arvidn 1e38a6d3d1 merged RC_1_2 into RC_2_0 2020-11-13 07:37:42 +01:00
Arvid Norberg 1bbf90e06a fix issue with moving the session object 2020-11-13 01:39:50 +01:00
Arvid Norberg 3b96033dff merged RC_1_2 into RC_2_0 2020-10-09 14:47:14 +02:00
arvidn d622951256 add build option to disable human readable strings in alerts. The idea is to save a bit more space for builds that don't need to produce human readable logs 2020-10-09 11:53:21 +02:00
arvidn 5935f63ead update copyrights 2020-09-01 05:14:17 -07:00
arvidn 32975be1d0 restore add_torrent_params::info_hash and use add_torrent_params::info_hashes for the new v1 and v2 type 2020-08-16 08:27:20 -07:00
arvidn 6c81bf3ab0 fix test_session with asio-debugging enabled 2020-07-22 06:56:14 -07:00
arvidn 3e110385d9 merged RC_1_2 into RC_2_0 2020-07-12 01:51:09 +02:00
arvidn 82521eb1ae fixed issue where pop_alerts() could return old, invalid alerts 2020-07-10 12:25:56 -07:00
arvidn a799ffb1a4 merge RC_1_2 into master 2020-04-05 18:38:45 +02:00
arvidn 983b1d6422 provide better names for alert_category_t constants 2020-04-04 15:06:02 -07:00
arvidn 50124ec7f7 merged RC_1_2 into master 2020-03-03 14:23:52 +01:00
arvidn 1e4083b3fb rely less on the ability to enumerate the routing table reliably. Any IP address
explicitly specified is assumed to represent an externally available IP, unless
marked with the l-flag. If a device name or an unspecified address is used, they
are expanded and only for such expanded entries is there a heuristic to
determine which addresses are externally available and which are local. The
default is to assume it's local only, unless it has a globally routable IP
address or a default route can be found for the device.
2020-03-03 11:43:52 +01:00
arvidn 0bb7c983af Merge branch 'RC_1_2' into test-merge 2020-02-27 09:21:33 +01:00
arvidn bee0043d24 merged RC_1_2 into master 2020-02-26 12:10:32 +01:00
arvidn c299004abf undeprecate settings_pack::dht_upload_rate_limit. Make sure it doesn't overflow if set too high 2020-02-20 09:25:15 +01:00
arvidn 206935c25b merged RC_1_2 into master 2020-01-21 19:41:59 +01:00
arvidn b5ea5bb82c move upnp mapper to have one per listen_socket_t. simplify the upnp logic to only deal with a single network. 2020-01-20 14:27:16 +01:00
arvidn a8c41c0c31 merge RC_1_2 into master 2020-01-19 09:58:24 +01:00
arvidn 88d9c05e3c expand IPv4 in expand_unspecified_address 2020-01-19 08:27:33 +01:00
arvidn f8d4fcc032 introduce read_session_params() and write_session_params(), to save and restore session state. 2019-12-08 13:27:18 +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 f0cd5dc086 merge RC_1_2 into master 2019-09-26 00:03:29 +02:00
arvidn 9c970550e3 fix clang warning on empty statements by fixing the test macros 2019-09-24 01:28:43 +02:00
arvidn c6ffcdde4c unify the DHT settings to use the main settings_pack 2019-09-01 03:41:57 +02:00
arvidn d3f7a363c2 update copyright year 2019-08-29 00:13:04 +02:00
Steven Siloti 86be4287d3 add info hash type 2019-08-10 09:28:38 -07: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 b3856d3027 narrow the scope affected by TORRENT_DISABLE_EXTENSIONS to only disable the user extensions, but always support the extension message and the built-in extensions, like lt_donthave and seed_mode 2018-07-26 09:31:49 +02:00
Arvid Norberg dcb8b816a3 only post alerts for newly opened listen sockets, and only attempt to map ports for newly opened sockets. track has_incoming_connections per listen socket 2018-07-23 15:04:23 +02:00
arvidn fe612ca167 replace the TORRENT_CFG ABI check with inline namespaces around the symbol that can change ABI based on build configuration options 2018-05-13 19:25:17 +02:00
arvidn 4fef787212 merged RC_1_1 into master 2018-01-24 00:37:05 +01:00
Alden Torres 7262118177 fixing warnings in tests code, part2 (#2718) 2018-01-23 19:23:57 +01:00
arvidn efd096d879 use unique peer_ids per connection 2018-01-23 16:40:16 +01:00
arvidn c16eb32b94 merge RC_1_1 into master 2017-12-03 18:12:35 +01:00
arvidn 9d37fbd1f7 disable tests requiring logging when building with logging disabled 2017-11-24 07:50:06 +01:00
Alden Torres f040d6d860 added reopen_network_sockets method to allow manual reopen of listen/outgoing sockets (#2476) 2017-10-28 12:15:35 +02:00
arvidn edad33d270 fix const correctness in get_peer_class 2017-09-24 14:49:55 -07:00
arvidn 53ff169db1 use string_view in find_metric_idx 2017-09-04 07:50:13 +02:00
arvidn c4eb4c8b5f use span in torrent_info constructors and deprecate the redundant flags argument 2017-07-22 00:00:44 -07:00
arvidn 4947602a2f make add_torrent_params::flags_t an enum class and move it out into its own header 2017-07-17 01:05:31 -07:00
AllSeeingEyeTolledEweSew 00655d562b Refactor several flags to torrent_handle::get_flags/set_flags. 2017-07-17 01:05:31 -07:00
Arvid Norberg 1925d1e7aa add test for recent duplicate add bug (#2003) 2017-05-17 23:04:50 -04:00
arvidn d138f02424 introduce lt namespace alias 2017-04-23 23:43:58 -04:00