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
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
arvidn
8b56aaf09a
minor cleanup of alert manager
2018-03-24 23:00:22 +01:00
arvidn
5413eae900
declare tag types in-line
2018-03-23 11:21:08 +01:00
arvidn
9df4d4b7f8
replace typedef with using. replace NULL with nullptr. cleanup page_aligned_allocator
2018-03-23 11:19:46 +01:00
Alden Torres
7a477cd938
more use of move and code refactor in bandwidth related code
2018-03-22 18:01:01 +01:00
Alden Torres
6b35ebb9ad
some code refactor and cleanup in broadcast_socket
2018-03-21 23:37:52 +01:00
arvidn
7dad0db4a5
fix warnings in bdecode and disk_io_job
2018-03-20 12:43:44 +01:00
Alden Torres
61ae2c834b
removed unused bt_peer_connection::on_keepalive
2018-03-16 17:32:20 +01:00
Alden Torres
eeffbc0e8c
more use of for-loop and emplace_back in bencode.hpp
2018-03-16 01:41:41 +01:00
Alexandre Janniaux
4f7b683eb0
fix if defined TORRENT_ANDROID
...
Fix malformed TORRENT_ANDROID macroprocessor tests, related to #2831
2018-03-14 09:32:18 +01:00
arvidn
8658fb5f7c
deprecate the error_file_* constants whose underlying features have been deprecated
2018-03-13 19:39:55 +01:00