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
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
arvidn
5c1b65e9b8
merged RC_1_1 into master
2018-03-12 02:32:12 +01:00
arvidn
a06e4f696b
track whether a file is eligible for using the partfile on a per-file basis. This is intended to improve backwards compatibility, to better support resuming files downloaded with older versions of libtorrent
2018-03-11 12:52:56 +01:00
Alexandre Janniaux
2bc2f3af0f
Add missing define for old android sdk ( #2831 )
...
define NETLINK_NO_ENOBUFS and IFA_D_DADFAILED if they don't exist
2018-03-09 22:37:21 +01:00
arvidn
282c49d6b5
fix issue querying block size from torrent before metadata has been received
2018-03-05 10:30:47 +01:00
Alden Torres
d8ebcc7f0c
minimal lint oriented code cleanup and reactor in session_handle.hpp
2018-03-05 10:29:27 +01:00
arvidn
9696082355
merged RC_1_1 into master
2018-02-25 09:36:12 +01:00
Alden Torres
2ac84ed5f5
minor code cleanup in http_tracker_connection code
2018-02-21 09:23:03 +01:00
arvidn
53b4725da3
clean up noexcept specifiers to adapt to what the implementation provides
2018-02-20 08:43:52 +01:00
d-komarov
59bdb3db81
Fix compilation warning at friend declarations
...
Use appropriate dllimport/dllexport attributes with friend declarations.
2018-02-19 23:23:15 +01:00
d-komarov
f94b62acf7
CMake improvements
...
CMake build scripts improved to simplify configuring and building of
project and tests.
Better use of compile definitions by replacing add_definitions with
target_compile_definitions. Use INTERFACE, PUBLIC and PRIVATE keywords
to separate scope of TORRENT_BUILDING_SHARED and TORRENT_LINKING_SHARED
definitions.
* Move tests to the separate file - test/CmakeLists.txt
* Fix use of compile definitions
* Remove redundant tailqueue.cpp
2018-02-19 23:23:15 +01:00
Alden Torres
421709f67f
added friendly_name and description to ip_interface ( #2799 )
2018-02-19 11:46:35 +01:00
arvidn
1ede34da8a
undo the patch to restore incoming TCP connections over SOCKS5
2018-02-19 00:01:42 +01:00
Alden Torres
6e5177beaf
more code cleanup, typos, minor refactor in headers ( #2795 )
2018-02-18 00:36:57 +01:00
Alden Torres
b689838f32
change by review
2018-02-17 00:52:35 +01:00
Alden Torres
f0cd6492bd
minor lint oriented cleanup and refactor in headers
2018-02-17 00:52:35 +01:00
Alden Torres
670c8a82ad
minor dht headers code cleanup and lint oriented refactor
2018-02-14 22:35:26 +01:00
Alden Torres
fedee2b5fa
more headers code cleanup and some lint oriented refactor
2018-02-13 00:46:13 +01:00
Alden Torres
35da7fb0e6
cleanup of unused code and minor refactor in peer_connection.hpp
2018-02-13 00:38:59 +01:00
Alden Torres
d2e874fca8
headers code cleanup, removed unused fields in torrent class ( #2775 )
2018-02-06 08:32:19 +01:00
arvidn
15a8a17a6f
merged RC_1_1 into master
2018-02-05 08:55:15 +01:00
arvidn
a0a63341c7
fix haiku build
2018-02-04 19:10:43 +01:00
Alden Torres
f8988231a3
using by value semantics in callback function types on string arguments
2018-01-31 22:46:52 +01:00
arvidn
91e03c789c
fix issue resuming 1.0.x downloads with a file priority 0
2018-01-31 22:43:07 +01:00
Alden Torres
5d230a69f2
minor code cleanup
2018-01-30 12:38:08 +01:00
arvidn
01c41fadcf
fix torrent_status::next_announce
2018-01-29 15:08:18 +01:00
arvidn
50a293730b
merged RC_1_1 into master
2018-01-29 10:20:45 +01:00
arvidn
e126d7bce0
move socket_type into aux-namespace
2018-01-29 08:33:45 +01:00
arvidn
348bc2b4fe
remove some uses of memset in favour of std::array. add some noexcept to sha1_hash operations
2018-01-29 03:02:06 +01:00
arvidn
9ac394f5b0
turn piece picker option flags into a proper type
2018-01-29 03:01:17 +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
ca3ea591df
fix pad-file scalability issue
2018-01-29 03:00:37 +01:00
arvidn
a50579c651
merged RC_1_1 into master
2018-01-27 09:41:54 +01:00
Alden Torres
084e980d52
avoid repeated calls to .address(), minor refactor
2018-01-27 09:22:38 +01:00
d-komarov
fa03cbea9b
Revise torrent state update
...
* Remove unused m_in_state_updates
* Update m_state_subscription comments
2018-01-27 09:17:40 +01:00
arvidn
cc93f8f3a7
add switch to create pad files in test torrents in connection-tester
2018-01-27 09:17:23 +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
2a4f056900
update documentation
2018-01-23 19:30:41 +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
785fffd976
make url_random take a span
2018-01-15 01:49:42 -05:00
arvidn
a01274ce2c
broadcast socket handler take a span
2018-01-14 20:21:42 -05:00
arvidn
e6eb31cfe1
minor documentation update
2018-01-15 01:06:28 +01:00
arvidn
65fef972a2
apply some c++11 modernization
2018-01-11 04:51:39 -05:00
Steven Siloti
5f25912694
remove unused infohash member in create_torrent
2018-01-11 02:43:09 -05:00
arvidn
ad82be145b
merged RC_1_1 into master
2018-01-08 22:52:23 +01: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
39144201db
mark up performance counter operations as noexcept
2018-01-06 20:12:41 -05:00
arvidn
fac9931eb6
fix noexcept marking on entry, and make move assignment
2018-01-04 19:34:42 -05:00
Alden Torres
98ade28237
using make_address instead of deprecated from_string when boost>=1.66 ( #2659 )
...
using make_address instead of deprecated from_string when boost>=1.66
2018-01-04 04:48:22 -05:00
arvidn
ef5d44ea9d
mark up deprecated members in torrent_status
2018-01-03 09:52:38 -05:00
arvidn
0731200149
block_size is a constant, no need in passing it around as a variable
2018-01-03 08:45:25 -05:00
arvidn
b45acf28a5
improve fwd.hpp generator
2017-12-31 11:44:14 +01:00
arvidn
f9968e1e90
refresh fwd.hpp
2017-12-30 21:04:06 +01:00
arvidn
672556b4b2
merged RC_1_1 into master
2017-12-30 18:17:57 +01:00
arvidn
7bfbeba947
plugin documentation update
2017-12-30 00:24:21 +01:00
arvidn
c8bf782bd0
bump version number to 1.1.6
2017-12-29 15:53:51 +01:00
arvidn
00a36608b9
fix some typos
2017-12-29 02:29:42 +01:00
arvidn
8b3624b25b
remove_peer() and attach_peer() error handling
2017-12-28 14:26:19 +01:00
arvidn
aae12250ae
support forced shutdown/destruction of torrent objects
2017-12-28 14:11:55 +01: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
a9753d3bdc
merge RC_1_1 into master
2017-12-27 22:16:14 +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
arvidn
69ff30f50f
deprecate save_encryption_settings (they are part of the normal settings)
2017-12-27 13:39:36 +01:00
arvidn
347555ea8f
handle errors in peer_connection
2017-12-26 10:39:54 +01:00
arvidn
56ca5fa63c
support asio handler allocators in deferred_handler
2017-12-26 09:44:51 +01:00
arvidn
40292a1d51
don't heap-allocate handlers for incoming UDP packets
2017-12-24 11:22:30 +01:00
arvidn
753826cbb8
merger RC_1_1 into master
2017-12-23 18:15:01 +01:00
arvidn
62bf524e75
disable DHT logging with the TORRENT_DISABLE_LOGGING macros as well
2017-12-23 12:01:18 +01:00
arvidn
b7decd452e
add getters for peer_class_filter and peer_class_type_filter
2017-12-23 09:25:06 +01:00
arvidn
a54f76d5df
deprecate status_code from tracker_error_alert (it's already part of the error_code), simplify code a bit
2017-12-19 00:55:51 +01:00
arvidn
d45de18ba7
merged RC_1_1 into master
2017-12-18 23:01:33 +01:00
arvidn
178281e1c5
make torrent_handler::set_priority() to use peer_classes
2017-12-18 00:56:44 +01:00
arvidn
87de08cb3d
improve type safety of plugin interface
2017-12-17 23:55:12 +01:00
arvidn
bb945f5cf4
introduce a proper type for pex flags to improve type-safety
2017-12-17 23:17:12 +01:00
arvidn
55babc57e6
merged RC_1_1 into master
2017-12-15 17:18:27 +01:00
arvidn
d1a63cd781
fix build against boost-1.66, specifically the boost.asio changes
2017-12-15 11:29:53 +01:00
arvidn
ba224a1577
restore the parse_magnet_uri overload that amends an add_torrent_params object
2017-12-14 12:20:02 +01:00
Steven Siloti
9e0a3aead1
use info hash from params instead of passing it separately
2017-12-14 10:18:33 +01:00
arvidn
7b06a5ee6e
merged RC_1_1 into master
2017-12-13 12:36:35 +01:00
arvidn
b00b3184c0
some minor i2p cleanups
2017-12-08 09:57:21 +01:00
arvidn
c4cf7ebae6
Merge branch 'master' of https://github.com/arvidn/libtorrent
2017-12-07 18:31:26 +01:00
arvidn
90ccd5180f
merged RC_1_1 into master
2017-12-07 18:31:16 +01:00
Alden Torres
db61d9cc20
minor cleanup, refactor and typos ( #2593 )
2017-12-07 07:51:55 +01:00
arvidn
f81a20a035
fix loading resume data when in seed mode
2017-12-03 23:43:55 +01:00
arvidn
c16eb32b94
merge RC_1_1 into master
2017-12-03 18:12:35 +01:00
arvidn
4b467f82ac
fix issue with initializing settings on session construction
2017-12-02 12:20:36 +01:00
arvidn
5ce798197c
merged RC_1_1 into master
2017-12-02 11:39:23 +01:00
Alden Torres
163d13e1d2
implemented support magnet URI extension, select specific file indices for download, BEP53 ( #2578 )
2017-12-01 12:40:19 +01:00
Alden Torres
28f096e94e
added const to static arrays, minor refactor in alert.cpp
2017-12-01 09:57:00 +01:00
arvidn
f42b63c7ea
update io_service forward declaration to be boost-1.66 compatible
2017-11-29 17:58:20 +01:00
arvidn
a6656aeb93
generate random keys for use in tracker announces. keys are unique for each torrent and the listen interface they announce via
2017-11-29 00:10:35 +01:00
arvidn
0da2d4dca3
make sure libtorrent_assert_log is exported, when production asserts are enabled
2017-11-28 09:46:18 +01:00
Alden Torres
f2681412e7
more use of const in peer_connection.cpp and minor code refactor
2017-11-28 09:45:40 +01:00
arvidn
18176ae5b3
include peer_class_type_filter in the generated reference documentation
2017-11-24 23:40:51 +01:00
arvidn
4e452c7bb6
improve peer class documentation
2017-11-24 15:33:52 +01:00
arvidn
addc52706e
fix typo
2017-11-23 20:53:54 +01:00
arvidn
4bc93cff38
merge RC_1_1 into master
2017-11-23 18:01:32 +01:00
arvidn
5e7666526e
fix IPv6 tracker announce issue
2017-11-23 10:11:59 +01:00
Alden Torres
c97bd53cde
more use of const, emplace_back and minor code refactor
2017-11-20 23:45:41 +01:00
Arvid Norberg
c734f42ac3
make tracker announces happen even if there are no open listen sockets ( #2529 )
...
support announcing to IPv6 trackers and running an IPv6 DHT when not listening for incoming connections
2017-11-20 23:42:22 +01:00
arvidn
30a7b52855
use a proper optional value instead of a sentiel value for bytes_left()
2017-11-19 21:25:06 +01:00
arvidn
f262bbdcea
use seconds32 as the retry-time for web seeds
2017-11-19 16:20:36 +01:00
arvidn
237856f7f1
more fixes of unwanted macro expansions of min/max in headers (windows.h compatibility)
2017-11-13 15:36:42 +01:00
arvidn
521587c026
make sure the cork destructor doesn't leak exceptions
2017-11-12 23:03:54 +01:00
arvidn
0378ae47f4
fix some macro expansions of 'max' in headers, to improve compatibility with windows.h
2017-11-12 23:01:47 +01:00
arvidn
b6a73eeaaa
simplify trigger_unchoke and trigger_optimistic_unchoke on session_impl, abd make them noexcept
2017-11-12 15:48:46 +01:00
arvidn
94dcd8e14b
remove unused transaction id member of DHT observers
2017-11-12 15:46:33 +01:00
arvidn
1c278cc697
add API to query whether alerts have been dropped or not
2017-11-11 15:42:53 +01:00
arvidn
254f813626
factor out handler allocator and reuse it for posting deferred peer removals on torrents
2017-11-11 10:41:39 +01:00
arvidn
b88c193742
fix sign conversion warning in peer_class_type_filter
2017-11-11 09:17:37 +01:00
Pavel Pimenov
8ac6bbe553
add http_parser::header_int ( #2472 )
2017-11-09 23:43:26 +01:00
arvidn
fc74c032f0
minor cleanup and modernization of torrent_peer
2017-11-09 15:48:27 +01:00
arvidn
f41d2b5d3b
move shared_ptr instead of copying them, when constructing DHT observers
2017-11-08 23:09:43 +01:00
arvidn
7730eea401
restore backwards compatibility with the API before download_priority_t was introduced
2017-11-06 01:24:24 +01:00
arvidn
a690e6c76d
add throwing overload of parse_magnet_uri
2017-11-05 20:31:06 +01:00
arvidn
6785046c2f
introduce a download_priority_t type, for uniform an type-safe piece- and file priorities
2017-11-02 08:20:21 +01:00
arvidn
f57b90b500
introduce type for torrent queue_position
2017-11-01 10:52:45 +01:00
Alden Torres
5480c08184
enable/disable the internal ip notifier with new setting ( #2487 )
2017-11-01 10:51:51 +01:00
Johan Gunnarsson
03b3d24ccf
Install kademlia/dht_settings.hpp with Automake
2017-10-29 02:48:36 +02:00
Alden Torres
f040d6d860
added reopen_network_sockets method to allow manual reopen of listen/outgoing sockets ( #2476 )
2017-10-28 12:15:35 +02:00
arvidn
50bef25786
make the piece-picker less two-phase initialized
2017-10-26 23:39:15 +02:00
Alden Torres
ab4f140328
using NETLINK_NO_ENOBUFS to ignore ENOBUFS in netlink based ip notifier ( #2475 )
2017-10-26 11:15:19 +02:00
arvidn
80ac90727b
remove some questionable code from disk_io_thread when deleting files for a torrent and extend transfer test to cover deleting files while seeding
2017-10-25 19:00:54 +02:00
arvidn
9e69bf3618
introduce a type to refer to a torrent-list-index, to improve type safety
2017-10-25 13:39:37 +02:00
Alden Torres
b380bf8059
minor and general code cleanup/refactor
2017-10-25 09:58:47 +02:00
Alden Torres
6409cb42e1
fix implicit-fallthrough warnings with gcc 7
2017-10-23 19:18:33 +02:00
Alden Torres
bb409c5ee9
missing return if error in session_impl::on_port_mapping, doc typo ( #2459 )
2017-10-23 12:36:51 +02:00
arvidn
98effc8d88
minor disk_io_job piece_hash cleanup
2017-10-22 16:49:25 +02:00
Alden Torres
8083a6c2bd
some code indentation, one more use of nullptr and constexpr
2017-10-15 04:30:10 +02:00
arvidn
a6c85496b5
make parse_magnet_uri return the add_torrent_params instead of of taking an in-out parameter
2017-10-15 04:29:53 +02:00
Alden Torres
762ae9aec4
pick standard std::aligned_union if using clang ( #2447 )
2017-10-15 04:29:33 +02:00
arvidn
516df740a3
make session_handle::get_torrent_status return the vector instead of taking an out-parameter
2017-10-14 23:35:35 +02:00
arvidn
bb65acb082
make feature_flags proper type-safe
2017-10-14 23:33:48 +02:00
arvidn
f0bac4cac7
merged RC_1_1 into master
2017-10-14 15:22:22 +02:00
arvidn
6214103619
fix documentation typo
2017-10-14 13:54:43 +02:00
arvidn
8adcfdbf41
make disk_buffer_holder know the size of the bufer it holds, to fix buffer overrun in chained_buffer
...
fix
2017-10-13 21:07:31 +02:00
arvidn
4556fe5566
fix outdated comment
2017-10-13 16:27:21 +02:00
arvidn
8af89da689
fix GCC-4.9 build
2017-10-13 10:08:51 +02:00
arvidn
9111d5977e
make the variables holding the source of external IPs type-safe
2017-10-10 22:38:36 +02:00
Arvid Norberg
60b74d2616
merged RC_1_1 into master
2017-10-10 14:25:12 +02:00
Arvid Norberg
830ef0bedd
prevent dependency on openssl from leaking outside of libtorrent (libssl and libcrypto should not be a usage requirement). This cleans up most tests to build without having to also link against openssl
2017-10-09 17:15:35 +02:00
Arvid Norberg
aec9a4940c
fix peer_list constructor
2017-10-08 22:06:43 +02:00
arvidn
1d15e6bfb4
merge RC_1_1 into master
2017-10-08 18:21:25 +02:00
arvidn
cdd9f91999
fix leak of torrent_peer objecs (entries in peer_list)
2017-10-07 11:43:42 +02:00
arvidn
d0f55224fb
simplify copy_ptr
2017-10-07 02:59:46 +02:00
Alden Torres
e47f73ee3b
cleanup of field torrent_need_cert_alert::error ( #2414 )
...
deprecate field torrent_need_cert_alert::error
2017-10-06 10:54:33 +02:00
arvidn
ed31664ee3
deduce the second argument to iconv() instead of requiring it to be configured via a macro
2017-10-06 10:52:09 +02:00
Matthew Fioravante
170c2a6984
Fixes to copy_ptr
...
* Add move constructor
* Add move assignment
* Fix exception safety bug in copy assignment
2017-10-05 11:44:27 +02:00
arvidn
69dc73914a
merged RC_1_1 into master
2017-10-04 11:43:01 +02:00
Tim Niederhausen
7f033fa04b
Fix malloc result size detection on FreeBSD
...
Instead of <malloc/malloc.h> and malloc_size FreeBSD has <malloc_np.h> and
malloc_usable_size.
see: https://www.freebsd.org/cgi/man.cgi?query=malloc_usable_size&manpath=FreeBSD+11.1-RELEASE+and+Ports
2017-10-04 08:56:55 +02:00
arvidn
5f3661aaa2
back port overflow checking from master
2017-10-02 00:02:14 +02:00
arvidn
5026659cb6
clean up and fix edge cases in update_path_index
2017-10-01 04:43:41 +02:00
arvidn
68f05d6380
fix some warnings and integer overflow with torrents that are too big
2017-09-28 14:59:28 -07:00
arvidn
c66f4cc62a
fix some warnings, mostly 0 -> nullptr
2017-09-28 07:33:10 -07:00
Alden Torres
53ab7684fd
minor code refactor and cleanup in port mapping code
2017-09-28 01:17:21 -07:00
arvidn
d0067eafe0
fix typo
2017-09-26 09:21:30 -07:00
arvidn
9cad0d8cf2
expose peer class API in python binding
2017-09-24 23:25:20 -07:00
arvidn
edad33d270
fix const correctness in get_peer_class
2017-09-24 14:49:55 -07:00
arvidn
4c4c630fae
merge RC_1_1 into master
2017-09-23 10:46:29 -07:00
arvidn
d22c44c057
fix kludge and down-cast to send upload_only. Promote upload-only to a top-level peer feature
2017-09-23 07:51:51 -07:00
Alden Torres
1d9b10a32b
fix warning for Xcode 9, added const and minor code refactor to bt_peer_connection.cpp
2017-09-22 04:46:16 -07:00
Steven Siloti
8648de3706
DHT nodes should only handle requests on their socket ( #2355 )
2017-09-21 21:00:38 -07:00
arvidn
7f4566c694
improve share_ratio_limit documentation
2017-09-21 13:05:23 -07:00
arvidn
fc4588ad3b
bump priority of storage_moved_alert and storage_moved_failed_alert
2017-09-21 05:43:18 +02:00
arvidn
6b55096ebd
switch some using declarations to new-style typedefs. remove some redundant parenthesis
2017-09-18 09:38:51 +02:00
arvidn
7717c02c2f
run sonarqube with deprecated functions disabled. fix some of its code smells
2017-09-17 18:06:53 +02:00
Steven Siloti
0232dc35cd
deprecate lock_files ( #2344 )
...
File locking interacts poorly with the path to replace a read only file handle
with a read/write one. For performance reasons the old handle is not closed
until the new one is put in place. With file locking this obviously cannot
work because the first handle is holding a lock on the file. As a result,
file_pool::open_file fails in this case. Even if we dropped the reference to
the read only file handle before attempting to re-open it, the open could still
fail if another thread is holding a reference to the read only handle.
There doesn't seem to be a good way around this. The simple solution would be
to always open files in read/write mode, but that has obvious safety downsides.
Any other solution would significantly complicate the file pool code.
Deprecating file locking seems to be the least bad option.
2017-09-17 10:43:27 +02:00
arvidn
240b5f73b1
merged RC_1_1 into master
2017-09-16 21:07:29 +02:00
arvidn
1a8660bca7
don't shadow static_category in alerts
2017-09-16 19:58:11 +02:00
arvidn
1ddc710be1
fix uTP path MTU discovery issue on windows (DF bit was not set correctly)
2017-09-16 19:56:42 +02:00
arvidn
8d6b51d54c
minor cleanups
2017-09-16 13:48:11 +02:00
arvidn
17d5d34272
fix documemtation of storage_moved_alert
2017-09-16 12:35:35 +02:00
arvidn
93bb84d94c
some random cleanup
2017-09-13 08:28:46 +02:00
arvidn
ccbd6cbcfe
remove rss_reader.py, since rss has been reprecated. fix python binding for torrent_handle, to be hashable. update client_test.py to not use deprecated APIs and follow best (libtorrent) practice
2017-09-11 22:28:57 +02:00
arvidn
735f6fd1f4
remove redundant virtual specificers when override is present
2017-09-10 19:28:18 +02:00
Steven Siloti
df8a57efb7
select which DHT port to report based on the connection's local endpoint ( #2316 )
2017-09-10 10:25:04 +02:00
arvidn
55228756e5
make disk job flags type safe
2017-09-10 08:56:52 +02:00
arvidn
bb51dcdbb9
move dht_settings into its own header cpp file-pair and dht_settings into the dht namespace
2017-09-04 22:38:16 +02:00
arvidn
95c8c3018a
use span in gzip, http_parser and http_connection
2017-09-04 22:33:38 +02:00
arvidn
3da7d1d3da
fix documentation issue
2017-09-04 16:50:11 +02:00
arvidn
061732ddec
bump version
2017-09-04 15:35:45 +02:00
arvidn
53ff169db1
use string_view in find_metric_idx
2017-09-04 07:50:13 +02:00
arvidn
fe1c395579
merged RC_1_1 into master
2017-09-03 13:57:19 +02:00
arvidn
37ffe99a19
fix gen_fwd.py to correctly put declarations in the dht namespace that belong there
2017-09-03 12:28:34 +02:00
Steven Siloti
5361ffc1c2
add_file_borrow: use string_view instead of pointer, size parameters ( #2302 )
2017-09-02 23:58:36 +02:00
arvidn
7087a16b36
move some initialization of torrent from start() into the constructor
2017-09-02 21:24:00 +02:00
arvidn
2025c15ec1
cleanup tokenize_string -> split_string
2017-09-02 07:46:16 +02:00
arvidn
f8ba4f480f
use span in parse_utf8_codepoint
2017-09-02 07:03:46 +02:00
arvidn
11f008e90e
use a strong typedef for port mapping id
2017-09-02 07:02:07 +02:00
Steven Siloti
f022285b13
include endpoint in tracker alerts
2017-09-01 13:38:36 +02:00
Arvid Norberg
f734ad067b
straighten out some type-safety in port mapping enums ( #2285 )
2017-08-30 20:47:49 +02:00
Alden Torres
5db597c8b3
more use of std::tuple_size<> and empty()
2017-08-28 22:47:34 +02:00
Arvid Norberg
1075ae3b8d
remove session pool allocator and use the buffer class instead ( #2274 )
...
simplify append_buffer by using size() to determine size of the buffer. make the move explicit in chained_buffer::init_buffer_entry
2017-08-28 11:37:53 +02:00
Steven Siloti
cc3f73de96
add span ctor from const containers ( #2275 )
2017-08-28 11:36:51 +02:00
Arvid Norberg
d250ba5a17
wrap destination string in i2p_peer in string_ptr handler ( #2268 )
2017-08-25 09:42:46 +02:00
arvidn
e92cbf502c
remove the last use of session_impl get_ipv6_interface and get_ipv4_interface
2017-08-23 21:01:15 +02:00
arvidn
22c047f8a0
factor out and simplify get_syncoffset
2017-08-23 06:59:44 +02:00
arvidn
f311bf354e
remove left-overs from disk buffer pool allocator
2017-08-21 16:36:00 +02:00
Alden Torres
66734e2e5b
using if_indextoname instead of RTM_GETLINK to fill the interface name in enum_net_interfaces ( #2253 )
...
using if_indextoname instead of RTM_GETLINK to fill the interface name in enum_net_interfaces. removed IFA_LABEL switch case, removed ip_interface::mtu, master rebase
2017-08-20 10:55:59 +02:00
arvidn
fe37884bc6
fix IPv6 tracker support by performing the second announce in more cases
2017-08-19 18:56:51 +02:00
Steven Siloti
2365611507
remove support for using a pool allocator for disk buffers ( #2257 )
2017-08-19 11:04:39 +02:00
arvidn
05b5b4ef4d
merged RC_1_1 into master
2017-08-16 22:46:47 +02:00
arvidn
b70d3efba9
fix infinite loop when parsing torrents whose filenames have zeroes. #2247
2017-08-16 07:21:34 +02:00
Alden Torres
bde4718e3f
typos, auto loop refactor and more std::
2017-08-16 07:01:50 +02:00
arvidn
b03b7417dd
build boost from scratch on linux (to get a newer version). upgrade travis to trusty and newer xcode. python binding fixes
2017-08-14 12:22:06 +02:00
Alden Torres
48de05ba82
lint-based code review in utp related code
2017-08-13 07:49:43 +02:00
arvidn
865ff09a84
merge RC_1_1 into master
2017-08-10 16:44:57 +02:00
arvidn
4e497e1383
fix issue where paths were not correctly coalesced when adding files to file_storage (used more memory than necessary)
2017-08-10 12:10:46 +02:00
arvidn
dbea43ab35
fix typo in comment
2017-08-10 07:59:16 +02:00
arvidn
bb6f2b9837
extend file_storage tests. Make pad files separate paths and file names properly
2017-08-10 01:33:35 +02:00
Alden Torres
721c4d016a
more use of emplace_back in write_resume_data ( #2221 )
2017-08-09 00:19:11 +02:00
Alden Torres
8ed17ab311
minor code refactor, more use of nullptr, typos
2017-08-07 21:15:14 +02:00
Alden Torres
0b83b6b6df
fix typo and extra ::alert
2017-08-06 04:28:36 +02:00
arvidn
7b98af8145
improve type-safety of observer_flags and traversal_flags
2017-08-05 20:20:13 +02:00
Alden Torres
1e05a91f99
added some std:: in public api
2017-08-05 02:44:25 +02:00
arvidn
5bf28e37b8
make create_torrent flags type-safe
2017-08-04 21:23:42 +02:00
Alden Torres
cb114a80e1
reverted ino_t cast and added fix only for android
2017-08-04 21:22:20 +02:00
arvidn
6b1037eff5
convert enum values that are just used as constants, to actual constants with the correct type
2017-08-04 15:23:20 +02:00
arvidn
a8a5986046
make file attributes (in file_storage) type safe
2017-08-04 07:38:57 +02:00
Alden Torres
ae0baff5a3
using status_flags_t::all() in post_torrent_updates, minor typos
2017-08-04 01:51:52 +02:00
arvidn
6fa181ece8
some cleanup of type-safe flags
2017-07-30 18:20:15 -07:00
arvidn
322007bb6a
make save_state_flags a strong type
2017-07-30 09:06:41 -07:00
arvidn
69bd2986de
convert a few more torrent_handle flags to type safe types
2017-07-27 13:16:23 -07:00
arvidn
204a029b5f
merged RC_1_1 into master
2017-07-27 11:37:02 -07:00
Johan Gunnarsson
972f179a5c
Stop using deprecated save_proxy in header files
...
Without this patch, compiler will warn about save_proxy being used by merely
including session_handle.hpp:
/tmp/include/libtorrent/session_handle.hpp:104:45: warning: ‘save_proxy’ is deprecated [-Wdeprecated-declarations]
save_dht_proxy TORRENT_DEPRECATED_ENUM = save_proxy,
^~~~~~~~~~
/tmp/include/libtorrent/session_handle.hpp:102:4: note: declared here
save_proxy TORRENT_DEPRECATED_ENUM = 0x008,
^~~~~~~~~~
/tmp/include/libtorrent/session_handle.hpp:105:46: warning: ‘save_proxy’ is deprecated [-Wdeprecated-declarations]
save_peer_proxy TORRENT_DEPRECATED_ENUM = save_proxy,
^~~~~~~~~~
/tmp/include/libtorrent/session_handle.hpp:102:4: note: declared here
save_proxy TORRENT_DEPRECATED_ENUM = 0x008,
^~~~~~~~~~
/tmp/include/libtorrent/session_handle.hpp:106:45: warning: ‘save_proxy’ is deprecated [-Wdeprecated-declarations]
save_web_proxy TORRENT_DEPRECATED_ENUM = save_proxy,
^~~~~~~~~~
/tmp/include/libtorrent/session_handle.hpp:102:4: note: declared here
save_proxy TORRENT_DEPRECATED_ENUM = 0x008,
^~~~~~~~~~
/tmp/include/libtorrent/session_handle.hpp:107:49: warning: ‘save_proxy’ is deprecated [-Wdeprecated-declarations]
save_tracker_proxy TORRENT_DEPRECATED_ENUM = save_proxy
^~~~~~~~~~
/tmp/include/libtorrent/session_handle.hpp:102:4: note: declared here
save_proxy TORRENT_DEPRECATED_ENUM = 0x008,
^~~~~~~~~~
2017-07-27 11:31:39 -07:00
arvidn
24e4263bae
make torrent status flags be type safe
2017-07-27 09:33:35 -07:00
arvidn
5222d92e9f
make resume_data_flags type safe
2017-07-27 00:07:15 -07:00
arvidn
8d0f38930e
make udp send flags type safe
2017-07-26 18:09:17 -07:00
arvidn
83ca755d1b
simplify setup_listener
2017-07-26 12:02:58 -07:00
arvidn
cd343c91bc
make base32encode flags type safe
2017-07-26 10:38:14 -07:00
arvidn
b38efb6c65
make alert category flags be a strong type
2017-07-26 07:20:47 -07:00
arvidn
c167e28788
move stack allocator implementation into its own cpp file
2017-07-23 16:49:24 -07:00
arvidn
330904f460
convert picker_flags_t to type safe flags
2017-07-23 09:29:25 -07:00
arvidn
78bbd298a5
convert file_open_mode to type safe flags
2017-07-22 23:58:24 -07:00
Steven Siloti
140b8ace8d
remove use of deprecated function readdir_r
2017-07-22 22:40:17 -07:00
arvidn
c4eb4c8b5f
use span in torrent_info constructors and deprecate the redundant flags argument
2017-07-22 00:00:44 -07:00
Steven Siloti
5eba09fce7
changes based on review feedback
2017-07-21 19:18:44 -07:00
Steven Siloti
1a64490ef0
fix
2017-07-21 19:18:44 -07:00
Steven Siloti
f0ae2145ea
use a handle class for listen sockets instead of raw pointers
...
Listen socket handles need to be week_ptr so that they can detect when a listen
socket is removed in the middle of a tracker announce on it. Use a wrapper class
to enforce that no one outside of session_impl can hold ownership of the socket
across event boundaries.
To support unit tests, listen_socket_t is also split into a base class which
holds the members needed to support the public listen socket API.
2017-07-21 19:18:44 -07:00
Steven Siloti
e0dcd34352
convert m_listen_sockets to a vector of shared_ptr
2017-07-21 19:18:43 -07:00
Steven Siloti
0f30815d8f
Revert "don't move listen_socket_t when deleting sockets"
...
This reverts commit 718c5f0dcb
.
2017-07-21 19:18:43 -07:00
Johan Gunnarsson
7a95947bac
Add torrent_flags.hpp to Makefile.am
2017-07-21 15:46:48 -07:00
arvidn
33a2abebfe
submit disk jobs in read_piece()
2017-07-18 07:21:07 -07:00
arvidn
3ce15b36d1
fix some c++11 parsing issues in reference doc generation script
2017-07-17 22:01:54 -07:00
arvidn
f9c45db942
make bandwidth state flags use type-safe flags
2017-07-17 19:03:42 -07:00
arvidn
06070ea499
convert block request flags to type-safe flags
2017-07-17 17:56:07 -07:00
arvidn
c4659bc345
convert peer_flags and peer_source_flags to type-safe flags
2017-07-17 10:22:32 -07:00
arvidn
4947602a2f
make add_torrent_params::flags_t an enum class and move it out into its own header
2017-07-17 01:05:31 -07:00
AllSeeingEyeTolledEweSew
00655d562b
Refactor several flags to torrent_handle::get_flags/set_flags.
2017-07-17 01:05:31 -07:00