arvidn
a58307733e
remove left-over configuration options from aligned allocations
2018-11-25 01:35:22 +01:00
arvidn
12cbcfd380
make settings_pack enums specify a narrower underlying type and remove deprecated, internal enums
2018-11-24 16:47:41 +01:00
arvidn
bac57a6e69
merged RC_1_1 into master
2018-11-24 01:23:10 +01:00
arvidn
cdf66409a4
don't use page aligned disk buffers
2018-11-23 18:41:25 +01:00
arvidn
50ae1838e6
wrap inclusion of windows.h with appropriate defines
2018-11-21 10:09:23 +01:00
airium
3406f12ab3
Include &ipv4= for private trackers
2018-11-20 13:50:22 +01:00
arvidn
9ae4aedeb0
deprecate slow bdecode() function
2018-11-19 09:09:55 +01:00
arvidn
0d8a5a8a44
add support for &ipv4= tracker argument
2018-11-19 09:08:16 +01:00
arvidn
8841c58435
improve interoperability between bdecode_node and entry (for encoding). Make it possible to construct an entry from a bdecode_node. move comparison operators out of entry to support implicit conversions from bdecode_node
2018-11-18 22:54:36 +01:00
arvidn
7538d68086
clean up integer_to_str() function
2018-11-17 17:21:06 +01:00
arvidn
66a8f133b0
merged RC_1_1 into master
2018-11-17 14:38:43 +01:00
airium
25a1f12991
Fix redundant bytes overflow
2018-11-17 12:17:24 +01:00
arvidn
3126e8f39e
improve type-safety a bit in the hole-punch code
2018-11-17 00:49:29 +01:00
arvidn
e3c5b6c13c
add rvalue ref overload of apply_settings() to avoid copying the whole settings_pack object
2018-11-17 00:44:25 +01:00
arvidn
7103b12cb7
remove typed_span type
2018-11-17 00:43:58 +01:00
arvidn
6381b35891
bump verson to 1.1.11.0
2018-11-16 15:52:16 +01:00
arvidn
8c18baf10e
check for self-assignment in bitfield operator=
2018-11-16 14:23:46 +01:00
arvidn
5383854768
make span's and sha1_hash's index and size types signed (instead of unsigned). Specifically std::ptrdiff_t. In line with the direction of gsl span and reduce signed->unsigned casts
2018-11-16 14:06:22 +01:00
arvidn
5929ad4cae
merge RC_1_1 into master (again)
2018-11-15 22:55:52 +01:00
arvidn
29cddaa23e
merged RC_1_1 into master
2018-11-15 15:19:24 +01:00
arvidn
164982c63a
pass the dht item object by const reference instead of by value
2018-11-15 00:18:53 +01:00
arvidn
6d886f29a9
support moving the whole add_torrent_params object into the add_torrent call on session
2018-11-14 19:11:11 +01:00
arvidn
0c76a3a0c5
require tracker_request objects be moved into queue_manager. also replace non-const reference parameter with rvalue reference
2018-11-14 17:09:04 +01:00
arvidn
437887ca37
pass add_torrent_params by const reference in deprecated add_magnet_uri functions. They are large to copy but since they're deprecated aren't worth the trouble of having an rvalue reference overload
2018-11-13 09:14:42 +01:00
arvidn
4d88c83576
add rvalue reference overloads for add_torrent_params, settings_pack and session_params. Those structures are pretty large so being able to take them by rvalue reference may be beneficial
2018-11-13 08:05:56 +01:00
arvidn
049b090e8d
detect cases where TORRENT_EXPORT is placed where gen_reference_doc.py ignores it, and fix the code
2018-11-13 07:44:28 +01:00
arvidn
87041b40d5
perfect forward async handlers for udp_socket to underlying asio socket
2018-11-13 07:42:19 +01:00
arvidn
2d6a6a24ae
move the whole add_torrent_params object into save_resume_data_alert
2018-11-13 01:03:16 +01:00
arvidn
e0c1b3403c
add header guards to ConvertUTP.h and fixedint.h
2018-11-12 17:56:16 +01:00
arvidn
8d40cf6227
remove redundant MTU boundary checks
2018-11-12 14:08:00 +01:00
arvidn
dc7cc3ef37
bump max size of read/write handlers
2018-11-12 09:07:58 +01:00
arvidn
f6e5007044
add include guards to assert.hpp
2018-11-12 08:55:23 +01:00
arvidn
ffdd34a41a
add include guard to puff.hpp
2018-11-12 08:54:56 +01:00
arvidn
69485558ef
factor out duplicate code in piece_picker, upnp and lazy_bdecode
2018-11-10 15:17:57 +01:00
arvidn
9d26f4f96c
fix asio-debugging build of dht test
2018-11-09 16:39:39 +01:00
arvidn
30706adfb7
convert classic for-loops to range-for loops. revert use of CHAR_BIT macro (we use fixed width types, not char)
2018-11-08 13:48:20 +01:00
arvidn
a06a78ee1c
fix of asio-debugging build in natpmp. resend_request could be called directly, not only as a handler for an async operation
2018-11-08 08:40:54 +01:00
arvidn
e2f8bce539
add tests for low level I/O functions, read_* and write_*. also turn some raw for loops into range-for loops in the I/O functions
2018-11-07 14:35:30 +01:00
arvidn
1f9e74f40d
merged RC_1_1 into master
2018-11-06 23:57:04 +01:00
Arvid Norberg
cec300234c
fix move_storage with save_path with a trailing slash
2018-11-06 23:46:18 +01:00
arvidn
6be8b395da
some cleanup turning memcmp() and memcpy() into span comparisons and std::copy(). some more use of random_bytes() instead of loops.
2018-11-05 18:52:45 +01:00
arvidn
3988be348f
simplify SFINAE on write_impl to just use enable_if
2018-11-03 11:57:16 +01:00
arvidn
bf496c6b14
use span for picker_log_alert
2018-11-03 11:56:09 +01:00
Arvid Norberg
a5da48edd4
add missing boost/noncopyable include
2018-10-25 09:47:21 +02:00
Arvid Norberg
ede7dbf0aa
add LGTM badge to README and fix warnings
2018-10-19 16:28:33 +02:00
arvidn
2d99e994c3
make throwing versions of read_resume_data
2018-10-07 12:41:53 +02:00
Arvid Norberg
1a27ff7107
parse_magnet_uri simplification
2018-10-05 11:01:45 +02:00
Arvid Norberg
761384bcf1
minor piece picker cleanup
2018-10-05 10:58:09 +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
949867eca9
factor out some parts of print function for entry
2018-10-03 00:50:02 +02:00
Arvid Norberg
200bb494c3
bump version
2018-10-01 09:41:37 +02:00
arvidn
c437a24d78
renamed debug_notification to connect_notification
2018-09-28 17:28:34 -07:00
arvidn
6c4d1b9143
back-port the patch to split up the progress_notification alert_mask into three new categories, file-, piece- and block progress
2018-09-24 08:52:30 -07:00
Arvid Norberg
6724c1eec0
fix some warnings
2018-09-19 22:12:45 -07:00
Arvid Norberg
81356cfce1
add make_tcp() and make_udp() to convert endpoint types
2018-09-19 10:57:28 -07:00
Steven Siloti
c5b415b89f
remove dead code udp_tracker_connection::pick_target_endpoint
...
Endpoints are filtered by address family in name_lookup() so this
function will always return the first endpoint.
2018-09-16 12:07:52 -07:00
Arvid Norberg
fc7b61a6f3
improve type-safety of the severity parameter to peer_connection::disconnect()
2018-09-06 16:42:04 -07:00
arvidn
c9cbb122e2
fix some warnings from sonar-cube
2018-09-05 18:10:57 -07:00
arvidn
78a344bd8b
merged RC_1_1 into master
2018-09-05 08:25:14 -07:00
Arvid Norberg
2647ca2412
add option to ignore min-interval from tracker, when force-reannouncing a tracker
2018-09-04 08:46:24 +02:00
arvidn
2e313de898
remove unused member variables in torrent object
2018-08-29 15:01:40 +02:00
arvidn
7c837be651
make the print function for entry actually be json-like. when logging bencode entries, print it all on a single line. add test for entry print function
2018-08-27 13:56:04 +02:00
arvidn
55215742af
merged RC_1_1 into master
2018-08-25 14:13:51 +02:00
Arvid Norberg
11a8f46921
add some noexcept and assume std::function is not nothrow move constructible on clang
2018-08-21 11:12:34 +02:00
arvidn
37d85ac2f7
improve piece picker performance in tracking pad-blocks
2018-08-20 17:13:20 +02:00
arvidn
c9043dec53
force proxy no longer disables the DHT
2018-08-20 08:24:31 +02:00
arvidn
058419a77c
simplify total_have/have_want/total_want. make piece_picker track pad blocks and compute byte-progress at block granularity
2018-08-19 22:21:24 +02:00
Arvid Norberg
b90564d418
remove the IPv6 enable/disable build config
2018-08-19 22:20:54 +02:00
Arvid Norberg
fef1b947f3
fix issue in self-connection detection introduced with the change to generate unique peer-ids for each connection. Now, the torrent keeps track of all of our peer-ids generated for outgoing (bittorrent) connections, and we check them against incoming peers' peer-ids
2018-08-19 22:19:53 +02:00
arvidn
b3dbce5790
merge RC_1_1 into master
2018-08-13 09:32:17 +02:00
arvidn
d55200af9d
minor simplification of bytes_left(), remove quantized_bytes_done()
2018-08-11 08:29:45 +02:00
arvidn
6d2541f131
improve connect-boost feature, to make new torrents quickly connect peers
2018-08-09 20:12:56 +02: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
Arvid Norberg
0a5b3c1bb0
update documentation for save_resume_data() and stop_when_ready()
2018-08-09 00:57:21 +02:00
arvidn
f1d2105afb
remove dead code from piece picker
2018-08-08 23:41:46 +02:00
arvidn
51fb1e3d6b
tweak the auto-cache-size logic to have slightly smaller cache
2018-08-06 14:06:32 +02:00
Arvid Norberg
a11bdecfcd
update fwd.hpp
2018-08-03 09:39:16 +02:00
arvidn
4cfe2b7c1b
fix warning for calling a virtual function in constructor
2018-08-01 12:03:14 +02:00
arvidn
3de4e42fb7
slight cleanup of the ephemeral flag passed to add_web_seed()
2018-08-01 12:02:51 +02:00
arvidn
4096085bf8
merged RC_1_1 into master
2018-07-30 13:44:44 +02:00
arvidn
19df645012
apply piece priorities immediately, even though file priority updares are async. save both file- and piece priorities in fast resume. when loading, apply file prios first, then piece prios
2018-07-29 21:53:01 +02:00
Arvid Norberg
a477a53b80
simplify natpmp gateway and local address discovery
2018-07-29 13:10:36 +02:00
Steven Siloti
92f1937b97
fix typo in #if tests for TORRENT_DISABLE_ENCRYPTION
2018-07-29 09:04:16 +02:00
arvidn
33685c6c85
merge RC_1_1 into master
2018-07-28 10:10:01 +02:00
arvidn
c92f527b60
in torrent_handle::id(), only shift down the pointer by 10 bits
2018-07-28 10:03:30 +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
arvidn
a1f2995716
add piece index range checks on have_piece() and read_piece()
2018-07-25 00:20:18 +02:00
arvidn
730ef15b08
minor cleanups
2018-07-24 16:34:46 +02:00
arvidn
c2ebae7dbb
make metric_type_t an enum class, deprecate the in-class enum values
2018-07-24 15:29:56 +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
Arvid Norberg
2f56fa6c3e
bump version to 1.1.9
2018-07-20 13:06:12 +02:00
arvidn
f4b0dbf115
merged RC_1_1 into master
2018-07-20 09:28:21 +02:00
arvidn
1ebc5f9ef2
remove special handling of uTP peers
2018-07-20 07:47:08 +02:00
arvidn
e92cf18340
fix some warnings around unused variables, dead stores, potentially dereferencing nullptr and calling virtual functions from constructor
2018-07-20 01:03:16 +02:00
arvidn
d8755066e8
give some magic numbers names
2018-07-20 00:58:34 +02:00
arvidn
a7b7623f23
return values instead of using out-params
2018-07-19 23:58:36 +02:00
arvidn
f89c27183b
remove unused function
2018-07-18 09:18:09 +02:00
arvidn
4aa3c4573a
use the strong type for pause flags
2018-07-16 12:06:21 +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
arvidn
37a6a47ea3
minor cleanups around saving resume data
2018-07-12 08:38:53 +02:00
Steven Siloti
961cf62cad
dht: announce with per-interface listen port
2018-07-12 08:36:57 +02:00
Alden Torres
965ca9a565
avoid copy of arrays in dht alerts constructors
2018-07-09 19:53:35 +02:00
Arvid Norberg
e317c72db3
merged RC_1_1 into master
2018-07-08 18:52:13 +02:00
arvidn
3c2b076eb0
deprecated anonymous_mode_alert
2018-07-08 18:26:47 +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
arvidn
2ba0e5ae2c
move the file priority vector throught the disk_io_job, to avoid copies
2018-07-08 18:25:06 +02:00
arvidn
d2d35b69fd
raise priority of cache_flushed_alert and post it unconditionally when triggered explicily by the client
2018-07-08 18:23:44 +02:00
arvidn
e45df614fe
improve type safety of internal leave_seed_mode() function
2018-07-08 17:32:50 +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
Arvid Norberg
3fede4b223
merged RC_1_1 into master
2018-07-08 11:55:32 +02:00
arvidn
efe3036879
clean up proxy_settings constructors
2018-07-07 18:02:43 +02:00
d_komarov
1c86e94de6
Fix deadlock when loading libtorrent Dll
...
Definition of `bool file::has_manage_volume_privs` involves a call to
`get_manage_volume_privs()`, causing restricted tasks to be performed
from within `DllMain` function. They introduce possibility that client
application deadlocks or crashes.
You should never perform the following tasks from within DllMain:
* Call `LoadLibrary` or `LoadLibraryEx` (either directly or indirectly).
This can cause a deadlock or a crash.
* Call the registry functions. These functions are implemented in
'Advapi32.dll'. If not initialized before your DLL, it can access
uninitialized memory and cause the process to crash.
2018-07-07 18:00:07 +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
arvidn
4576723090
bump version to 1.1.8
2018-06-25 12:25:11 +02:00
Arvid Norberg
17300decb5
improve naming of deprecated settings enums
2018-06-24 16:50:18 +02:00
Alden Torres
be78a43d05
more use of empty(), emplace_back, const and auto in disk_io_thread code
2018-06-24 07:02:17 +02:00
arvidn
2cb29f88ac
merged RC_1_1 into master
2018-06-23 23:22:26 +02:00
Alden Torres
f139afc1ad
minor code refactor, cleanup and typo in peer related code
2018-06-23 23:11:48 +02:00
Steven Siloti
b7f230316c
set the minimum number of checking jobs based on the number of hasher threads
...
To effectively mask the latency of generating more hash jobs there need to be
at least two jobs in-flight for each hasher thread.
2018-06-23 23:10:55 +02:00
arvidn
f5a2015302
merge RC_1_1 into master
2018-06-19 22:26:01 +02:00
arvidn
4ae262d2d4
fix race condition in part_file
2018-06-19 14:50:02 +02:00
d-komarov
81ce7aa4ab
Fix parts file i/o errors ( #3110 )
...
Since i/o operations are not synchronized, it is possible that one thread closes file handle, opened in another thread. With addition of `hidden` file attribute, an old bug in `part_file::open_file()` revealed both problems, causing a lot of random i/o errors in parts file. Fixing `open_file` bug should reduce the number of such errors back to 'normal'.
2018-06-18 14:34:39 +02:00
arvidn
ca7313580e
merged RC_1_1 into master
2018-06-16 17:47:32 +02:00
arvidn
5530793c75
improve the API for iterating over all files and pieces, with the new strong index types.
2018-06-12 11:44:29 +02:00
Alden Torres
a2ea79de4e
minor code refactor in utp related code, more use of const
2018-06-12 11:41:32 +02:00
Alden Torres
95b753778d
use TORRENT_ABI_VERSION for new error_code_enum deprecated values ( #3099 )
2018-06-12 00:46:22 +02:00
arvidn
2364699292
clarify documentation for move_storage()
2018-06-11 00:05:36 +02:00
Arvid Norberg
b26467c04e
deprecate network-threads setting
2018-06-10 19:34:07 +02:00
Arvid Norberg
e8f971a54a
scrape_reply_alert should be high priority, since it's triggered by the client
2018-06-10 19:28:45 +02:00
Arvid Norberg
6647b0988d
add support for multi-home NAT-PMP and PCP
2018-06-10 16:55:42 +02:00
Steven Siloti
247672820c
report transport version in NAT-PMP send/receive logs
2018-06-09 16:40:46 -07:00
Alden Torres
a357e490ed
minor code refactor, more use of auto
2018-06-08 21:56:06 +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
e523566622
add support for the Port Control Protocol (PCP)
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
Arvid Norberg
e88339378c
merged RC_1_1 into master
2018-06-07 00:30:23 +02:00
Arvid Norberg
2408200475
fix race condition in stat_cache
2018-06-05 19:07:33 +02:00
Arvid Norberg
794ccf4f79
remove unused disk stats counters
2018-06-05 19:03:04 +02:00
arvidn
95cfc16bca
fix integer overflow in alert_manager
2018-06-02 15:16:08 +02:00
arvidn
267ca40b28
merged RC_1_1 into master
2018-06-02 13:15:13 +02:00
arvidn
c55bc7dd42
improve error handling of failing to change file priority
2018-05-31 00:47:17 +02:00
Alden Torres
8a0ac58658
some lint oriented refactor, more use of const
2018-05-30 23:52:28 +02:00
arvidn
c56f6abf72
deliver notification of alerts being dropped via alerts_dropped_alert
2018-05-30 11:26:02 +02:00
Alden Torres
6c4869f044
moved instantiate_connection to aux namespace
2018-05-29 09:25:25 +02:00
Steven Siloti
396c5dd3af
remove use of deprecated function readdir_r
...
Ports 140b8ace
onto RC_1_1 branch
2018-05-28 16:06:41 +02:00
arvidn
3b0ce8d2e1
merged RC_1_1 into master
2018-05-28 15:56:22 +02:00
arvidn
35d7672432
raise priority of fastresum_rejected_alert
2018-05-27 22:33:24 +02:00
Alden Torres
d6cecee8c0
some code cleanup and minor refactor
2018-05-24 23:46:37 +02:00
arvidn
534276e7a5
refactor to use the utility function for bind_socket_to_device() instead of using the bind_to_device socket option directly, to make it best effort. include operation enum in udp_error alert.
2018-05-23 12:11:04 +02:00
Alden Torres
ff300ed224
some cleanup and refactor in torrent_info code ( #3054 )
2018-05-23 10:39:55 +02:00
arvidn
1a66a8b285
merged RC_1_1 into master
2018-05-20 12:08:46 +02:00
arvidn
a137bbfdd4
simplify some using statements to pull in the address types
2018-05-20 08:46:14 +02:00
d_komarov
5f74b6e353
Bump `file_error_alert` priority
...
This alert's priority must be higher than `block_downloading_alert`'s
to allow custom handling of file errors.
With progress notifications enabled, network thread might fully load
alerts queue, so file errors from disk thread won't have a chance to
be delivered.
2018-05-17 00:55:07 +02:00
Alden Torres
a7b2026ef8
minor code refactor in ip_filter code
2018-05-14 23:58:01 +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
Arvid Norberg
4523e05527
fix uTP and SOCKS5 simulations and update libsimulator
2018-05-13 12:10:34 +02:00
d-komarov
f052d1ca40
Fix bandwidth allocation ( #2810 )
...
Don't allow peer connection to ask quota from bandwidth manager if send buffer is empty.
Remove undefined member function
Update download rate multiplier
2018-05-12 13:53:03 +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
Arvid Norberg
c98b700d4f
merged RC_1_1
2018-05-10 22:48:39 +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
5f758b8531
remove redundant set_piece_hashes template. take a std::function instead
2018-05-10 12:10:33 +02:00
Eugene Shalygin
81fd09775c
Fix compilation with GCC 8
2018-05-07 13:33:18 +02:00
d-komarov
dc28c96559
Fix unit tests build
...
Export `recursive_mutex` because `emplace_alert` template injects
dependency on that type during instatiation.
2018-05-07 00:53:48 +02:00
Arvid Norberg
894933e1f1
fix typo in comment
2018-05-06 20:59:32 +02:00
Arvid Norberg
4b368e1cfc
merged RC_1_1 into master
2018-05-02 01:57:41 +02:00
arvidn
8808eb7cdd
introduce a recursive mutex to protect the alert_manager, and hold the mutex while calling user callbacks and plugin hooks. This is required to ensure the underlying storage for alert allocations (in the stack allocators) is synchronized with the thread that may be accessing it
2018-05-01 23:17:51 +02:00
Alden Torres
8da635d1f5
minor code cleanup, more use of const
2018-05-01 23:03:29 +02:00
Arvid Norberg
26b0487f0b
merged RC_1_1 into master
2018-05-01 21:26:42 +02:00
d-komarov
785f173df3
Revise alert priorities / torrent::on_resume_data_checked issue ( #2962 )
...
Most status alerts should have priorities above normal level. Good reason for this is resume data verification case. For a large torrent(having lots of pieces) whole alert queue will be overflowed
with a `piece_finished_alert` right after resume data has been verified. Thus alerts like `torrent_checked_alert`, `torrent_finished`, `state_changed_alert` will not go the alerts queue.
* Introduce alert_priority enumeration
* Bump state_changed_alert's priority
* Set dht_direct_response_alert priority to `critical`
2018-05-01 12:26:37 +02:00
arvidn
33bf3c827f
fix deprecation markups
2018-04-28 22:47:38 +02:00
arvidn
8621477239
merged RC_1_1 into master
2018-04-28 14:36:24 +02:00
Steven Siloti
f5e33932d2
fix use after free in flush_range and flush_iovec
...
Calling blocks_flushed can cause the piece entry to be freed so its
callers need to be aware of that and avoid dereferencing the pointer if
the entry is freed.
2018-04-27 16:15:19 +02:00
pavel.pimenov
2a97ec6e0e
Windows: Fix build Visual C++ ARM/ARM64
2018-04-25 16:07:47 -04:00
Alden Torres
83dd6c9c53
cleanup and refactor in storage source code
2018-04-25 16:02:30 -04:00
Chocobo1
6394e7ac02
Fix MSVC warning C4267 by casting to the correct type explictly
2018-04-24 23:16:54 -04:00
Xiyue Deng
21d8e9e26b
Add missing header <cstdarg> for va_list.
...
* Fix building on OpenBSD.
2018-04-24 23:09:25 -04:00
arvidn
3ede0b9c20
fix last_upload, last_download and last_scrape to be reported accurately and saved/restored in resume data
2018-04-22 06:14:22 -04:00
Alden Torres
d34973def9
minor code cleanup in disk buffer code
2018-04-21 23:48:40 -04:00
TheOriginalWinCat
bcb9e4546f
Use settings_pack::urlseed_wait_retry for default retry with http seeds. ( #2948 )
...
Update documentation
2018-04-21 18:36:56 +02:00
arvidn
f0227451a6
merged RC_1_1 into master
2018-04-13 01:47:41 +02:00
arvidn
64d6b49004
fix boost-1.67 build
2018-04-12 14:33:46 +02:00
arvidn
aaf9304a3b
update year in copyright header
2018-04-09 09:04:33 +02:00
arvidn
105934e578
bump version
2018-04-08 23:08:39 +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
2d9bff0877
make socket_entry buffer std::array
2018-04-06 10:04:32 +02:00
Arvid Norberg
6efff919cd
deprecated alert::progress_notification alert category, split into finer grained categories
2018-04-05 16:27:28 +02:00
gubatron
2a82bb5880
disk_io_thread abort_hash_jobs duplicate code refactor
2018-04-05 16:01:30 +02:00
Alden Torres
5b922072e9
avoid calls to .address() when looking for endpoint protocol ( #2892 )
...
using is_v4 and is_v6 where possible
2018-04-01 13:48:17 +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
02a01fa22e
fix issue where the current tracker would be skipped for the next tracker in the same tier
2018-03-25 14:40:38 +02:00
arvidn
67bbb82122
improve type-safety in piece picker, by introducing a type for download queue index, for pieces
2018-03-24 23:03:09 +01:00
arvidn
3171245292
fix warnings
2018-03-24 23:01:19 +01:00