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
arvidn
7a51813d32
improve peer debug logging
2018-12-02 04:03:03 +01:00
arvidn
35ec87af4f
add stats counter for the number of outstanding async_accept calls
2018-11-30 02:15:45 +01:00
arvidn
3f87801142
fix some cppcheck warnings
2018-11-27 13:53:38 +01:00
arvidn
e80506d3b3
iterators are not (necessarily) pointers. use data() instead of begin() on span
2018-11-27 13:26:50 +01:00