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
929f727a6a
fix dht_stats_alert routing table stats for multi-homed clients (temporary hack for 1.2.x series)
2019-07-27 07:18:24 -07:00
arvidn
71c980957c
fix entry assignment from bdecode_node and lazy_entry
2019-07-21 06:22:11 -07:00
arvidn
057c6684f2
fix use-after-free issue in socket_type
2019-07-21 05:40:18 -07:00
arvidn
178093f81b
fix error code messages when building without deprecated functions
2019-07-21 05:39:53 -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
Amir Abrams
7d00e80a7a
Trivial, correct school spelling in comments
2019-07-14 11:42:07 -04:00
Amir Abrams
8420f01eb4
Correct log verbiage for put_item
2019-07-14 11:42:07 -04: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
9da041a24d
extend the whole_pieces_threshold setting to also request contiguous pieces from fast peers
2019-07-02 10:32:27 +02:00
Arvid Norberg
6fbeb93d50
fix error handling of moving storage to a drive letter that isn't mounted
2019-07-01 15:27:37 +02:00
patch3proxyheaders915360
832857e384
set HTTP Host to request-target when using proxy
...
To make the Host field carry the request-target it is enough to set
the Host information before changing the connection destination.
Many proxies rely on the Host field-value to route requests
in a violation of RFC7230 section 5.4.
https://tools.ietf.org/html/rfc7230#section-5.4
A request with the Host field set to the proxy hostname and port
in place of the request-target produces error responses and otherwise
confuses such misconfigured middleboxes.
2019-07-01 10:17:20 +02:00
Monson Shao
186371f1a2
choke dishonest peer in anti-leech seeding algorithm ( #3833 )
...
support peers not sending redundant HAVE messages in anti-leech seeding algorithm
2019-06-10 08:53:16 +02:00
arvidn
f9d31cf71b
fix GCC-9 warnings
2019-06-02 20:58:58 +02:00
Arvid Norberg
16acd9ebe1
don't leak exceptions out of handler callbacks in resolver
2019-05-19 08:00:50 +02:00
arvidn
7d1afa9b41
fix assert in DHT node
2019-04-30 12:50:05 +02:00
arvidn
d97e1be6b2
bump version of RC_1_2 to 1.2.1
2019-04-28 03:31:04 +02:00
arvidn
b21eebbad7
minor simplification of power-of-2 test in create_torrent
2019-04-27 17:17:56 +02:00
arvidn
ce52d9c685
remove left-over, rendant, encoding of the info-dict in create_torrent::generate()
2019-04-26 22:02:23 +02:00
arvidn
ba731ef0cf
make sure session cleanup releases all its references to torrents
2019-04-22 22:31:51 +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
Steven Siloti
27a49523a3
fix windows build with boost 1.70
2019-04-21 00:47:44 +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
5b021a849e
use a more restrictive limit on number of pieces allowed in a torrent
2019-04-02 19:44:00 +02:00
arvidn
f025c67185
fix memory leaks in test_http_connection simulation
2019-03-30 14:44:21 +01:00
arvidn
3a093c5d27
improve disk I/O logging
2019-03-28 12:00:32 +01: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
Steven Siloti
8d9c746149
always flush disk I/O job queue before shutdown
...
Leaving jobs on the queue can lead to memory leaks
2019-03-26 18:04:18 +01:00
arvidn
bb5c612180
fix typo in validation of reject messages. Make on_choke a bit more defensive
2019-03-26 09:14:16 +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
b6896cf337
tighten up validation of dont-have messages
2019-03-21 16:48:08 +01:00
arvidn
972288340f
tighten up validation of reject messages, to ensure consistency of stats counters
2019-03-20 18:57:41 +01:00
arvidn
01feb32821
tighten up message size checks
2019-03-20 12:59:13 +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
arvidn
bb10385e6c
fix asserts in old merkle code
2019-03-17 18:58:26 +01:00
Alden Torres
620eb39f2c
missing changes
2019-03-11 14:38:26 +01:00
Alden Torres
1fe763483e
minor lint oriented refactor, moved a couple of functions to aux
2019-03-11 14:38:26 +01:00