arvidn
df299fcb00
use boost::variant for disk_io_job in/out parameter, to support holding a proper disk io buffer handle and string
2017-04-17 15:08:27 -04:00
arvidn
480bde9333
change formatting of namespace declarations
2017-04-12 14:26:35 -04:00
arvidn
79d7ae3638
separate path and filesystem functions out into its own translation unit/header file pair, separating it from the file and directory class
2017-04-11 18:07:55 -04:00
Arvid Norberg
13b16a63a3
use unsigned type for file flags. make file_pool private to disk_io_thread ( #1894 )
...
use unsigned type for file flags. make file_pool private to disk_io_thread. move close_file_interval logic to the disk thread. don't expose file in public interface, and make pool_file_status properly public (not part of file_pool and renamed to open_file_status), this is exposed in public interface via torrent_handle::file_status()
2017-04-08 18:24:50 -04:00
Alden Torres
df0a3bd015
moved current ip_change_notifier implementation to compilation unit ( #1890 )
...
moved current ip_change_notifier implementation to compilation unit
2017-04-05 23:42:37 -04:00
Alden Torres
cec874591d
moved ip_notifier.hpp to aux_
2017-04-05 20:37:32 -04:00
Alden Torres
65cf7af722
using unique_ptr for m_ip_notifier in session_impl
2017-04-05 17:43:12 -04:00
arvidn
9e5822dfba
remove unused m_tick_residual accounting
2017-04-05 01:35:39 -04:00
Alden Torres
0132221031
minor code cleanup, std:: prefix, consts, typos
2017-04-04 23:12:48 -04:00
Alden Torres
45bea967c2
added resolver_cache_timeout setting ( #1878 )
...
added resolver_cache_timeout setting
2017-04-04 18:23:37 -04:00
arvidn
6584423737
don't include base32encode in the build when i2p is disabled
2017-03-31 07:24:50 -04:00
Alden Torres
990756ca38
code cleanup related to async_resolve ( #1873 )
2017-03-30 23:00:59 -04:00
Arvid Norberg
65a2413797
make parse_magnet_uri take a string_view instead of std::string ( #1870 )
...
make parse_magnet_uri take a string_view instead of std::string
2017-03-30 22:55:54 -04:00
arvidn
d720b282b8
Merge branch 'master' of https://github.com/arvidn/libtorrent
2017-03-30 18:14:09 -04:00
arvidn
0b6fe4d0bd
merged RC_1_1 into master
2017-03-30 18:07:24 -04:00
Pavel Pimenov
923f2c48fc
fix m_host_resolver ( #1871 )
...
fix initialization order of m_host_resolver and m_tracker_manager
2017-03-30 08:47:41 -04:00
arvidn
02bb1251d2
removed (broken) support for incoming connections over socks5
2017-03-29 02:15:43 -04:00
Alden Torres
f80e95705a
minor general code cleanup and refactor
2017-03-27 23:38:09 -04:00
arvidn
6cdd598e7c
make add_torrent_params movable and have add_torrent/async_add_torrent take it by value
2017-03-26 16:48:57 -04:00
Arvid Norberg
103b1176c1
remove torrent_file_path asynchronous loading of .torrent files. ( #1848 )
...
remove torrent_file_path asynchronous loading of .torrent files. This is not the responsibility of the client, to simplify and unify the path of adding torrents
2017-03-26 09:16:42 -04:00
arvidn
7640c0641e
optimize download queue management with an explicit queue
2017-03-25 20:47:33 -04:00
arvidn
488c1a2dcf
deprecated (undocumented) file:// urls, added torrent_file_path alternative
2017-03-23 20:26:55 -04:00
Alden Torres
fcbcc250bb
fix setup of DHT logic in session_impl::init ( #1830 )
...
fix setup of DHT logic in session_impl::init
2017-03-23 08:32:56 -04:00
arvidn
64f5567cdd
merged RC_1_1 into master
2017-03-19 12:58:55 -04:00
arvidn
17bc05c582
improve stats counter documentation
2017-03-18 08:22:24 -04:00
Andrei Kurushin
9efb72197c
use decltype(auto) return types for MSVC ( #1815 )
...
use decltype(auto) return types for MSVC
2017-03-17 20:47:10 -04:00
Alden Torres
dba94a9276
fix IndexType template parameter in typed_span member functions ( #1819 )
...
fix IndexType template parameter in typed_span member functions
2017-03-17 18:15:11 -04:00
arvidn
6d54c20adf
merge RC_1_1 into master
2017-03-08 18:01:59 -05:00
Arvid Norberg
7d3a8f5b19
don't remove peers from the connection list immediately when disconnecting ( #1782 )
...
don't remove peers from the connection list immediately when disconnecting them, but defer it until later. This makes it less error prone to disconnect peers in loops over the connections
2017-03-07 13:50:03 -05:00
arvidn
faa2029f8b
add feature to periodically close files (to make windows clear disk cache)
2017-03-06 23:46:47 -05:00
Arvid Norberg
8cf6e9e37c
use span<> to return the block_info for a piece ( #1777 )
...
use span<> to return the block_info for a piece to improve range checks and loops
2017-03-04 23:45:07 -05:00
arvidn
5a19c9a5a1
fix makefile
2017-02-25 23:01:28 -05:00
Alden Torres
847792854d
fixing sign-conversion warnings, part 20 ( #1745 )
...
fixing sign-conversion warnings, part 20
2017-02-22 23:28:25 -05:00
Alden Torres
ee4d82d166
fix in DHT counters, alert types test, typos, formatting ( #1747 )
...
fix in DHT counters, alert types test, typos, formatting
2017-02-22 17:40:14 -05:00
Alden Torres
1e98bf19a5
added support for enumerating the internal DHT live nodes ( #1712 )
...
added support for enumerating the internal DHT live nodes
2017-02-18 23:02:23 -05:00
Alden Torres
a670871519
fix build from RC_1_1 merge
2017-02-17 19:06:51 -05:00
Alden Torres
4a80e2667c
fixing sign-conversion warnings, part 15, torrent class ( #1686 )
...
fixing sign-conversion warnings, part 15, torrent class
2017-02-11 14:58:02 -05:00
Alden Torres
4d5ddc90f5
fixing sign-conversion warnings, part 14, minor refactor
2017-02-10 15:27:49 -05:00
Alden Torres
c8569b5e34
fixing sign-conversion warnings, part 12, minor refactor, eol cleanup ( #1670 )
...
fixing sign-conversion warnings, part 12, minor refactor, eol cleanup. created aux::clamp and default_piece_priority refactor
2017-02-07 00:22:30 -05:00
Arvid Norberg
9e4045ed42
use 32 bit time points in torrent ( #1662 )
...
use 32 bit time points in torrent and add some slack to time point comparisons in python test
2017-02-05 19:18:06 -05:00
Alden Torres
bfe6aba728
more robust implementation of aux::array::end_index
2017-02-05 19:17:23 -05:00
arvidn
381defab05
merged RC_1_1 into master
2017-02-05 12:51:48 -05:00
Alden Torres
de6f2a9d88
fixing sign-conversion warnings, part 11, created aux::array and refactor ( #1649 )
...
fixing sign-conversion warnings, part 11, created aux::array and refactor
2017-02-04 22:05:53 -05:00
arvidn
c8e488b094
merged RC_1_1 into master
2017-02-02 22:58:33 -05:00
Arvid Norberg
29db3de6c0
wrap most instances of throw, and terminate on builds where exceptions are disabled ( #1639 )
...
wrap most instances of throw, and terminate on builds where exceptions are disabled
2017-01-29 15:37:42 -05:00
arvidn
3339b2abe1
back port file progress invariant checking to 1.1
2017-01-29 15:34:06 -05:00
Alden Torres
2437b3c134
created aux::typed_span and related refactor
2017-01-28 23:28:38 -05:00
Alden Torres
3803661863
moved alloca.hpp to private aux_ and size refactor ( #1634 )
...
moved alloca.hpp to private aux_ and size refactor
2017-01-27 12:43:34 -05:00
Alden Torres
ddf1b62e4b
fixing sign-conversion warnings, part 9
2017-01-27 01:23:18 -05:00
Alden Torres
2bc7a60f33
fixing sign-conversion warnings, part 8, created aux::unique_ptr, refactor ( #1616 )
...
fixing sign-conversion warnings, part 8, created aux::unique_ptr, refactor
2017-01-26 08:31:20 -05:00
Alden Torres
070e85090b
more std:: prefix, consts, auto refactor, formatting
2017-01-26 08:30:20 -05:00
Alden Torres
4896a5ed3c
added handler_storage default constructor when not TORRENT_USE_ASSERTS
2017-01-23 18:27:24 -05:00
arvidn
c15a575e34
remove dependency on aligned_storage and aligned_union to support older versions of GCC
2017-01-22 14:11:44 -05:00
Alden Torres
8b98bf2c9d
more use of peer_class_t in public API
2017-01-22 14:06:27 -05:00
arvidn
c239c2bdc4
factor out storage_piece_set into its own file
2017-01-22 09:29:52 -05:00
arvidn
d03540e3b3
move disk_job_fence to its own file
2017-01-22 01:20:27 -05:00
arvidn
61c057947c
add typedefs for shared_ptr and make_shared, to make transition to 1.2 easier
2017-01-21 23:10:33 -05:00
Arvid Norberg
6a701437b6
use strong_typedef for peer_class_t type ( #1595 )
...
use strong_typedef for peer_class_t type
2017-01-21 22:40:19 -05:00
Alden Torres
c4c80b59d5
created numeric_cast<> and using it in stack_allocator
2017-01-20 20:52:16 -05:00
arvidn
202386dd9d
factor out verify_resume_data to storage_utils
2017-01-20 01:36:03 -05:00
arvidn
e98dd14760
factor out delete_files function into storage_utils
2017-01-18 00:56:01 -05:00
Alden Torres
ef9d1ecd7f
fixing sign-conversion warnings, part 6
2017-01-17 20:51:26 -05:00
Arvid Norberg
ec37436d49
factor out move_storage function to storage_utils.cpp ( #1571 )
2017-01-17 08:02:44 -05:00
arvidn
5736237a63
fix error handling in random.cpp and fix accidental openssl dependency
2017-01-16 21:33:57 -05:00
arvidn
0c189e08b5
use /dev/random as random number source on macOS
2017-01-15 12:18:08 -05:00
Alden Torres
df6cb6a48d
fixing sign-conversion warnings, part 4, minor refactor ( #1549 )
...
fixing sign-conversion warnings, part 4, minor refactor
2017-01-14 18:53:25 -05:00
Alden Torres
1874a917b0
added std:: prefix, end of file cleanup, formatting, consts
2017-01-14 05:59:26 -05:00
Alden Torres
a31ba7972d
fixing sign-conversion warnings, part 3 ( #1537 )
...
fixing sign-conversion warnings, part 3. making aux::vector index type default to int
2017-01-13 01:55:29 -05:00
Alden Torres
7ac2805c2c
added custom resize methods to aux::vector ( #1514 )
...
added custom resize methods to aux::vector, code refactor
2017-01-12 18:40:59 -05:00
Arvid Norberg
3d06371f31
factor out some common storage utilities out of storage.cpp ( #1515 )
...
factor out some common storage utilities out of storage.cpp
2017-01-11 00:42:10 -05:00
Alden Torres
0f7a55cb8b
fixing sign-conversion warnings, part 1 ( #1503 )
...
fixing sign-conversion warnings, part 1
2017-01-09 01:43:57 -05:00
Andrei Kurushin
ff8345101e
consolidate windows crypto provider implementation into single header ( #1495 )
...
consolidate windows crypto provider into single header
2017-01-07 01:53:39 -05:00
Arvid Norberg
57f52adc88
various cleanup ( #1497 )
...
* various cleanup
* fix
* cleanup
2017-01-06 01:39:01 -05:00
arvidn
41dbb47123
compact block_cache_reference by using storage_index_t instead of pointer. make sure storage object is kept alive by block_cache_references
2017-01-02 13:45:16 -05:00
arvidn
4ebc344e48
make disk_io_thread responsible for the storage object. torrents refer to it by index
2017-01-01 13:54:39 -05:00
arvidn
5a97af54db
optimize chained buffer a bit and factor out nop into non_owning_handle
2016-12-29 07:05:18 -08:00
Pavel Pimenov
98cdc3192d
Missing member init ( #1467 )
...
initialize members of piece_block and use default member initialization.
2016-12-29 06:55:58 -08:00
Arvid Norberg
af126fe507
make buffer_allocator_interface an implementation detail of the disk_io_thread ( #1463 )
...
make buffer_allocator_interface an implementation detail of the disk_io_thread by using disk_buffer_holder in the disk interface. make chained_buffer use holders instead of free deleter functions and userdata to support putting disk_buffer_holder objects in there. Also make the session buffers be held by holders
2016-12-28 17:47:18 -08:00
Andrei Kurushin
e10edb5e0b
move LoadLibrary logic to new win_util module ( #1464 )
...
move LoadLibrary logic to new win_util module. use get_library_procedure as common windows dyn proc load routine
2016-12-28 10:12:20 -08:00
arvidn
192ef4962b
simplify the buffer_allocator_interface
2016-12-26 08:36:50 -08:00
Arvid Norberg
42a27b3ebc
introduce a prio_index_t type ( #1453 )
...
* introduce a prio_index_t type for indexing into the priority sorted piece list, m_pieces, in piece_picker
* some piece picker simplification
* fix msvc warning for prio_index_t
2016-12-26 08:25:50 -08:00
arvidn
3f612d7e99
cleaning up of left-overs from torrent eviction functionality
2016-12-23 06:06:59 -05:00
Arvid Norberg
3f1084d63d
strengthened type safety in handling of piece and file indices ( #1409 )
...
strengthened type safety in handling of piece and file indices
2016-12-22 10:42:33 -05:00
Alden Torres
1b808b6516
refactor in aux::write_ to avoid explicit castings ( #1426 )
...
refactor in aux::write_ to avoid explicit casts
2016-12-17 15:03:43 -05:00
Alden Torres
22b596945e
enable /W4 warnings for msvc
2016-12-13 19:36:14 -05:00
arvidn
bbfe58d03c
fix bind-to-device for UDP sockets
2016-12-10 18:18:54 -05:00
Alden Torres
4142dfe5eb
headers and code cleanup in udp_socket code
2016-12-06 22:54:29 -05:00
Steven Siloti
b9169609df
support separate external ip for each interface ( #1383 )
...
support separate external ip for each interface
2016-12-04 15:58:51 -05:00
Alden Torres
d5c4cd7280
fixed sign-compare warnings and some refactor ( #1354 )
...
fixed sign-compare warnings and some refactor. make sequence_number backed by std::int64_t
2016-11-27 08:46:53 -05:00
Arvid Norberg
5c8e6d6e97
use more compact internal representation for bool settings ( #1355 )
...
use more compact internal representation for bool settings
2016-11-26 01:34:57 -05:00
Steven Siloti
06c53a41d1
revisions based on code review
...
Moved the logic to determine which sockets to keep to a separate function and
add unit tests for it.
Store the port which was originally specified for a listen socket so that we
can match sockets reliably even with port retries.
2016-11-23 01:09:05 -05:00
Steven Siloti
babb93fb1e
keep old listen sockets if they're still valid
...
This is to support multi-home. We need to be able to keep track of which socket
a DHT node or UTP connection should use. We also need to generate notifications
when local endpoints come and go so that the DHT tracker knows when to create
or delete nodes. The easiest way to do this is to keep the same socket for as
long as its local endpoint is valid. This way the nodes and connections can
simply reference the socket itself and generating notifications is trivial.
2016-11-23 01:09:05 -05:00
Alden Torres
84e0362180
more fixes in signed compare warnings ( #1345 )
...
more fixes in signed compare warnings
2016-11-21 01:49:56 -05:00
arvidn
0e33e62627
merged RC_1_1 into master
2016-11-20 11:18:16 -05:00
arvidn
d5b76d2237
move block_cache_reference out of disk_io_job header
2016-11-20 10:34:42 -05:00
arvidn
4df1ecbe25
re-enable some warnings and fix code
2016-11-20 01:05:16 -05:00
Alden Torres
a59350687a
fixed a few warnings related to signed/unsigned conversions ( #1338 )
...
fixed a few warnings related to signed/unsigned conversions
2016-11-19 21:14:16 -05:00
Alden Torres
5490f802ec
fixed warning non-virtual-dtor and minor code refactor ( #1324 )
...
fixed warning non-virtual-dtor and minor code refactor
2016-11-18 08:21:42 -05:00
Alden Torres
4c7e24ea35
more use of std::make_shared, fixing warnings of over-aligned
2016-11-18 00:28:29 -05:00
arvidn
c9333849e6
deprecate relative times in torrent_status, replaced by std::chrono::time_point
2016-11-12 17:37:10 -05:00