Commit Graph

4558 Commits

Author SHA1 Message Date
arvidn 97a79d2dba fixed restoring of trackers, comment, creation date and created-by in resume data 2019-11-25 14:21:55 +01:00
arvidn a53d090313 fix handling of torrents with too large pieces 2019-11-25 02:46:55 +01:00
Arvid Norberg 76f53297a9 update appveyor image and boost version. explicitly use python2 for test scripts (as the SSL behavior has changed in python 3 in non-trivial ways) 2019-11-19 01:46:39 +01:00
Arvid Norberg 48fa5343b5 add executor_type to socket_type 2019-11-14 11:55:48 +01:00
arvidn e5ba4fa640 fix documentation for add_port_mapping 2019-11-13 15:40:04 +01:00
arvidn 592544f30f fix some PVS studio warnings 2019-11-07 16:38:08 +00:00
arvidn 47dede4f7e back-port missing include for GCC 10 2019-10-30 15:02:44 +01:00
arvidn 28a627a3a3 fix settings default value doc generation. Apply documentation fix from Sig7 2019-10-20 21:59:03 +02:00
arvidn 4b8f8d7e92 honor proper object lifetime rules 2019-09-28 22:11:54 +02:00
arvidn d08fa164d2 fix issue where pieces would be hashed despite disable_hash_checks was set 2019-09-13 22:38:18 +02:00
arvidn d1e0e8701b documentation improvements 2019-09-13 14:31:20 +02:00
arvidn 961417814b WIP: fix to be less likely to hammer web seeds 2019-09-12 16:57:07 +02:00
arvidn 7878f68370 add some missing documentation. undeprecate error_file_metadata ahead of master undeprecating it 2019-09-08 10:51:46 +02:00
arvidn 9b1607a63c fix updating of is_finished torrent status, when changing piece priorities 2019-09-07 10:45:25 +02:00
arvidn a3440e54bb make aux::session_settings thread-safe. this allows all threads to share the same settings object, which has low contention and is rarely updated 2019-09-01 03:41:36 +02:00
arvidn c0c4c2083a avoid comparing unrelated pointer in the DHT routing table (which is UB) 2019-08-31 12:54:00 +02:00
arvidn baeb959054 bump version to 1.2.2 2019-08-23 13:39:22 +02:00
arvidn b2c3b4dbf8 add spaces around user defined literal suffix operators 2019-08-21 14:23:46 +02:00
arvidn 07ab3b9739 add feature to create an affinity to pick adjecent pieces aligned to 4MiB extents. It's an attempt to improve disk I/O, by writing larger contiguous ranges of bytes. It's off by default. 2019-08-17 12:32:47 +02:00
Arvid Norberg ff113a262c make it a bit more likely to split the last bucket in the DHT routing table 2019-08-12 15:08:49 -07:00
Arvid Norberg bfe0e1f27d hide some internal functions. error if namespaces are preceded by whitespace (as the docs generation script requires them to start at the beginning of the line) 2019-08-07 20:48:26 -07:00
Arvid Norberg 03ffc04e39 back port fixing GCC warnings 2019-08-02 06:21:07 -07:00
arvidn b1b03a0d77 factor out and unit test parts of the DHT routing table logic that handles the affinity of nodes to insert. Specifically, make sure the even distribution within routing table buckets works correctly 2019-07-30 07:56:18 -07:00
Arvid Norberg c5d0ea6332 make node and tracker_node explicitly non-movable, since the node contains a non-movable std::mutex 2019-07-29 23:15:09 -07:00
arvidn 8e23f9cc92 improve file_storage::sanitize_symlinks 2019-07-29 06:10:04 -07:00
arvidn 3995ffeafd similar to how low RTT DHT nodes are preferred over high RTT nodes, also have an affinity for nodes with node IDs derived from their IP 2019-07-28 16:13:16 -07:00
arvidn ca27892111 avoid empty dht routing table buckets 2019-07-27 07:18:24 -07:00
arvidn 08a399306c fix simulator build with new version of boost 2019-07-20 20:58:45 -07:00
Arvid Norberg 196588c7b8 add torrent_info constructor overloads to control torrent file limits 2019-07-20 18:14:19 -07:00
arvidn 7a20850632 feature to disable DHT, PEX and LSD per torrent 2019-07-20 10:20:41 -07:00
arvidn bcb26fd638 fix seeding of random number generator on mingw 2019-07-04 19:56:18 +02:00
Arvid Norberg d113816ae6 fix issue where trackers from magnet links were not included in create_torrent() 2019-07-04 12:53:36 +02:00
arvidn f9d31cf71b fix GCC-9 warnings 2019-06-02 20:58:58 +02:00
Chocobo1 d53caf51ab Replace unicode symbol by ascii
MSVC was emitting warning C4819 before this commit.
2019-05-31 16:06:45 +02:00
Arvid Norberg 16acd9ebe1 don't leak exceptions out of handler callbacks in resolver 2019-05-19 08:00:50 +02:00
Arvid Norberg 41a5940100 ensure headers build independently 2019-05-13 11:56:03 -07:00
Arvid Norberg 7062a4f89e fix unit template's mutating operators to give them proper ref qualifiers 2019-05-07 21:51:49 -06:00
Alden Torres 02c9e2f7ff fix unused-parameter warning with boost 1.70.0 2019-05-06 05:50:33 -06:00
arvidn d97e1be6b2 bump version of RC_1_2 to 1.2.1 2019-04-28 03:31:04 +02:00
Steven Siloti aec5c50282 Track the mapped port for each NAT mapping transport (#3793)
* Track the mapped port for each NAT mapping transport
Each transport needs to be tracked separately so that a failed mapping request
doesn't cause the listen port for a socket to be cleared to zero.
* add template specialization to allow enums as indexes
* use aux::array for port mappings
2019-04-22 01:50:44 +02:00
Fabrice Fontaine 039cc4809e buffer.hpp: fix build on uclibc
malloc_usable_size is not available on uclibc

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2019-04-21 00:46:54 +02:00
Arvid Norberg 76c2794923
fix build with boost-1.70 (#3788)
fix build with boost 1.70.0 Fix #3683
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2019-04-19 20:56:19 +02:00
arvidn 8506f93507 fix more warnings 2019-04-11 18:18:11 +02:00
arvidn a845afe6d9 fix warnings 2019-04-10 08:05:36 +02:00
arvidn 4441655bab optimize resolve_duplicate_filenames_slow() 2019-04-09 01:59:34 +02:00
arvidn 102387f4a8 make all tests run cleanly with leak sanitizer 2019-03-27 17:10:36 +01:00
Steven Siloti 4dc2e6015d use flag to prevent multiple calls to abort_jobs even when asserts are disabled 2019-03-26 18:04:18 +01:00
arvidn 64600f444b improve sanitizer rule in Jamfile. Some fixes for new clang sanitizr 'implicit-conversion' 2019-03-26 10:14:06 +01:00
Arvid Norberg 3a4a7b742a deduplicate code implementing log2p1() 2019-03-23 22:44:32 +01:00
arvidn 20cb26fcc1 remove duplicate copy of escape_string 2019-03-23 20:30:40 +01:00
Arvid Norberg 19dbfce9c0 simplify and clean up the handling of name in internal_file_entry. move should be more efficient now, by not copying the name 2019-03-22 21:31:32 +01:00
arvidn 2990532d10 reduce the amount of hacky path/string handling code 2019-03-22 07:48:07 +01:00
arvidn e5de81a6cb remove unused replace_extension() 2019-03-19 17:26:19 +01:00
Arvid Norberg 57cd2882d4 update symlinks to conform to BEP 47 2019-03-19 10:05:06 +01:00
arvidn 5f85e40193 remove old, hacky and unused split_string() function 2019-03-19 09:27:06 +01:00
Arvid Norberg 28d5b7d427 remove unused flags parameter to send_buffer() and send_message() on peer_connections 2019-03-19 01:09:34 +01:00
Arvid Norberg ad540ead79 remove unused configuration macros 2019-03-18 13:40:02 +01:00
arvidn e1dec52b35 fixes to the generated documentation 2019-03-13 20:43:40 +01:00
Alden Torres 1fe763483e minor lint oriented refactor, moved a couple of functions to aux 2019-03-11 14:38:26 +01:00
arvidn 381d5a3c5d add support for creating symlinks, for torrents with symlinks in them 2019-03-05 22:53:56 +01:00
Arvid Norberg 57e56d5070 factor out logic around adding torrents to the session into insert_torrent() 2019-03-03 12:56:24 +01:00
Arvid Norberg 4dd9325277 minor fix for warning of infinite loops 2019-03-02 21:41:55 +01:00
Arvid Norberg 57017e3ace noreturn attribute is standard in C++11 2019-02-27 17:11:15 +01:00
arvidn 9bd5f424d3 use standard __func__ identifier instead of extensions 2019-02-26 23:59:43 +01:00
Amir Abrams 97c23366f3 Remove duplicate word in comments like "the the" 2019-02-24 12:28:17 +01:00
arvidn 4473a8d0ce fix seed_mode flag 2019-02-24 10:20:20 +01:00
arvidn 7f2a78d0c9 make random_shuffle() take a range instead of two iterators. use random_bytes() instead of std::generate() and random_byte(). Remove unused hasher.hpp includes 2019-02-19 01:48:08 +01:00
arvidn f67fb0850f fix example of custom storage 2019-02-19 01:47:12 +01:00
arvidn c63c36880f merged RC_1_1 into RC_1_2 2019-02-17 19:06:33 +01:00
arvidn 42bf915437 update documentation for the seed_mode flag 2019-02-15 22:08:47 +01:00
arvidn ffe56bdb26 update documentation regarding recommendations of post_torrent_updates() 2019-02-15 18:31:13 +01:00
arvidn f88f95e477 remove outdated paragraph from the storage_interface documentation 2019-02-14 16:19:13 +01:00
arvidn a24afe8524 consistently use lt namespace in examples and documentation 2019-02-13 18:13:55 +01:00
arvidn 748bb81570 include sha1.cpp in the build unconditionally, match build configuration options to using built-in sha1 and defining it 2019-02-13 00:14:53 +01:00
arvidn 8fc69f5d2e don't copy a vector into the async_write operation for iovec. Since the chained_buffer will own the vector anyway, just make it return a span and copy that 2019-02-09 17:45:47 +01:00
Arvid Norberg 26ebc289ae remove unnecessary include of boost.endian header 2019-01-22 15:59:28 +01:00
Arvid Norberg 2bf42f2afd hide internal make_udp and make_tcp functions 2019-01-22 15:56:48 +01:00
arvidn bfc579e61f add missing cstdarg include 2019-01-21 01:26:15 +01:00
Arvid Norberg 77bd5c9c7e remove some c++98 fallback code 2019-01-20 18:28:51 +01:00
arvidn 08bceec4c7 fix typo in win_crypto_provider assignment operator 2019-01-20 02:07:54 +01:00
Alden Torres bcda184e59 [WIP] refactor in file_progress to avoid dependency of alert_manager 2019-01-13 02:40:15 +01:00
arvidn f4f1425115 use UNC paths pervasively on windows 2019-01-12 21:00:40 +01:00
arvidn 8b067310b1 merged RC_1_1 into master 2019-01-12 00:53:45 +01:00
arvidn b443d33430 bump version number 2019-01-11 11:30:37 +01:00
arvidn 786d78b6c9 only allow cwnd to be reduced so often 2019-01-11 02:15:11 +01:00
Alden Torres 6b04c4f642 removed unused file::sparse_end 2019-01-11 02:02:06 +01:00
Alden Torres 94d737ff77 removed unused directory::inode() 2019-01-06 17:21:34 +01:00
arvidn 26c29ea030 make sure we reset the duplicate ack counter every time we don't receive a duplicate ack. Also fix logging of outstanding packets 2019-01-05 23:18:02 +01:00
arvidn 02d7d71c5f merge RC_1_1 into master 2019-01-03 11:23:20 +01:00
arvidn 8ffd524b5f simplify and improve the uTP deferred ACK logic to respond earlier 2019-01-02 11:36:29 +01:00
arvidn 54fd03529e move variable scope into its build configuration block. prevent invariant-checks enabled and asserts disabled build. remove some redundant preprocessor ifdefs 2018-12-14 00:08:08 +01:00
arvidn a112c8e67b add assignment operator to span 2018-12-12 19:55:07 +01:00
arvidn fa376ca3af fix deprecation markup in torrent_status 2018-12-12 14:58:31 +01:00
Alden Torres 0413ee581a added more TORRENT_DEPRECATED_ENUM and deprecated unused aio_max in settings_pack 2018-12-10 11:45:44 +01:00
arvidn 072563c973 add asserts in disk_fence_job 2018-12-07 13:37:27 +01:00
arvidn 7e13b34158 fix build i2p=on,off configurations 2018-12-07 13:36:53 +01:00
Alden Torres 3e582100d0 removed repeated code and minor code refactor 2018-12-05 09:13:54 +01:00
arvidn 8f54146555 take a string_view in setting_by_name 2018-12-04 19:05:31 +01:00
Alden Torres 98fbbbf591 deprecate start_default_features flag, it's only used in deprecated API 2018-12-02 04:04:57 +01:00
arvidn 792cfd1cc6 remove verbose peer logging 2018-12-02 04:03:03 +01:00