4607 Commits

Author SHA1 Message Date
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