Arvid Norberg
1a27ff7107
parse_magnet_uri simplification
2018-10-05 11:01:45 +02:00
Arvid Norberg
a4267d61e7
fix overflow in sliding_average in the case of very high download rates
2018-10-03 00:53:05 +02:00
Arvid Norberg
6724c1eec0
fix some warnings
2018-09-19 22:12:45 -07:00
arvidn
c9cbb122e2
fix some warnings from sonar-cube
2018-09-05 18:10:57 -07:00
arvidn
7be9547817
add a few more stats counters measuring outgoing connection attempts. simplify session_stats_header_alert by posting it on first call to post_session_stats() instead of making it gated by the alert_mask
2018-08-09 20:10:35 +02:00
Steven Siloti
92f1937b97
fix typo in #if tests for TORRENT_DISABLE_ENCRYPTION
2018-07-29 09:04:16 +02: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
8f0cf7e1a9
some refactor to reduce duplicate code
2018-07-25 18:48:34 +02:00
Arvid Norberg
4282dd072a
factor out generate_peer_id into its own file
2018-07-25 08:49:18 +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
4633258fbe
make the DHT announce flags a strong type
2018-07-16 12:04:16 +02:00
Steven Siloti
e5be30157f
set port in handshake based on source address ( #3172 )
2018-07-15 21:15:04 +02:00
Steven Siloti
961cf62cad
dht: announce with per-interface listen port
2018-07-12 08:36:57 +02:00
arvidn
b750b6cc2c
deprecate (and disable) the force-proxy setting. Instead, always use the proxy when set, never fall back on circumventing it
2018-07-08 18:26:47 +02:00
Alden Torres
6d2f804d9f
code refactor related to the use of index_range and end index
2018-07-08 17:32:30 +02:00
arvidn
efe3036879
clean up proxy_settings constructors
2018-07-07 18:02:43 +02:00
arvidn
d439c8729a
qualify some assignment operators to disallow assignment to temporaries
2018-07-01 17:29:50 +02:00
Alden Torres
2c5da2778a
more lint oriented code refactor/cleanup
2018-06-29 13:27:29 +02:00
Steven Siloti
fbaa1afd62
return a vector of mapping ids from add_port_mapping
2018-06-07 18:18:31 -07:00
Steven Siloti
78be52112f
create a natpmp instance for each listen socket
2018-06-07 18:16:08 -07:00
Alden Torres
6c4869f044
moved instantiate_connection to aux namespace
2018-05-29 09:25:25 +02:00
Arvid Norberg
ccdfd7383e
move export.hpp into aux_ folder. put assert symbols in libtorrent namespace
2018-05-14 09:09:01 +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
ddd1168296
don't attempt to make uTP connections if we don't have any outgoing UDP sockets
2018-05-12 13:34:58 +02:00
arvidn
4d17e0132e
fix empty outgoing interfaces for UDP sockets
2018-05-12 13:34:58 +02:00
Steven Siloti
8fdba2aa39
don't specialize standard type trait is_integral
...
Concerning type traits, the C++ standard states: "The behavior of a program
that adds specializations for any of the templates defined in this subclause is
undefined unless otherwise specified."
There is no exception for is_integral.
2018-05-10 19:06:18 +02:00
arvidn
f0227451a6
merged RC_1_1 into master
2018-04-13 01:47:41 +02:00
arvidn
a7406de2b8
remove the global cache of the current time, just use clock::now() instead
2018-04-07 21:43:18 +02:00
Alden Torres
d6edf26e11
minor code tidy
2018-04-07 00:30:36 +02:00
Alden Torres
1f06a6684c
avoid calling address to test protocol, more consts and minor lint oriented code changes
2018-03-29 12:20:59 +02:00
Alden Torres
f963f2c726
minor lint oriented code refactor
2018-03-28 15:55:05 +02:00
arvidn
5413eae900
declare tag types in-line
2018-03-23 11:21:08 +01:00
arvidn
9696082355
merged RC_1_1 into master
2018-02-25 09:36:12 +01:00
arvidn
53b4725da3
clean up noexcept specifiers to adapt to what the implementation provides
2018-02-20 08:43:52 +01:00
arvidn
1ede34da8a
undo the patch to restore incoming TCP connections over SOCKS5
2018-02-19 00:01:42 +01:00
Alden Torres
fedee2b5fa
more headers code cleanup and some lint oriented refactor
2018-02-13 00:46:13 +01:00
arvidn
e126d7bce0
move socket_type into aux-namespace
2018-01-29 08:33:45 +01:00
arvidn
a33c81ad33
shave down session_interface by one function, reduce the dependencies between torrent and session
2018-01-29 03:00:59 +01:00
arvidn
308cbfe097
merged RC_1_1 into master
2018-01-27 02:36:55 +01:00
arvidn
bc4d53c71f
restore support for incoming connections over SOCKS5 (disabled by default)
2018-01-25 09:14:14 +01:00
arvidn
4fef787212
merged RC_1_1 into master
2018-01-24 00:37:05 +01:00
arvidn
efd096d879
use unique peer_ids per connection
2018-01-23 16:40:16 +01:00
arvidn
89c6f0b4a8
merged RC_1_1 into master
2018-01-21 15:51:22 +01:00
arvidn
0ee6b7d142
build for iOS on travis
2018-01-18 22:37:37 +01:00
arvidn
65fef972a2
apply some c++11 modernization
2018-01-11 04:51:39 -05:00
arvidn
3a9861e237
complete the error handling test and make it part of the default simulation test suite. It will run a file transfer between two clients repeatedly, each time cause another memory allocation fail, until every single memory allocation has failed once. Any invariant check failure, assertion or signal will cause the test to fail
2018-01-08 04:44:52 -05:00
arvidn
fac9931eb6
fix noexcept marking on entry, and make move assignment
2018-01-04 19:34:42 -05:00
arvidn
5f0c9a0c1d
improve error handling during session shutdown
2017-12-28 13:52:07 +01:00
arvidn
c3bdc6f825
use an intrusive linked list for peer_cache_entry instead an unordered set, to avoid heap allocations and make cache operations not able to fail. This simplifies error handling
2017-12-28 00:52:09 +01:00
arvidn
c1abafc0cc
reserve space in the undead peers list up-front, to not have to allocate memory when disconnecting
2017-12-27 21:24:16 +01:00