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
Arvid Norberg
b8e77444d5
use span for read_resume_data() ( #1867 )
...
use span for read_resume_data()
2017-03-29 16:10:32 -04:00
Arvid Norberg
8ebbad19d4
deprecate add_torrent_params::url field. use parse_magnet_uri instead ( #1864 )
...
deprecate add_torrent_params::url field. use parse_magnet_uri instead
2017-03-29 02:16:07 -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
86786770b7
merged RC_1_1 into master
2017-03-27 01:24:43 -04:00
arvidn
910ccc528f
deprecate torrent_added_alert in favor of add_torrent_alert
2017-03-26 22:48:17 -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
8e6f417015
make torrent_status movable and don't allocate pieces unless it's asked for
2017-03-25 16:22:59 -04:00
arvidn
8cc17a4524
optimize access to ssl_cert. specifically the case where there is none, avoid pessimisation of the common case
2017-03-23 21:55:20 -04:00
arvidn
488c1a2dcf
deprecated (undocumented) file:// urls, added torrent_file_path alternative
2017-03-23 20:26:55 -04:00
arvidn
206a80acfb
optimize construction of disk io storage objects
2017-03-23 17:45:11 -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
4d397f5ebf
fix minor robustness issue in DHT bootstrap logic
2017-03-21 12:29:08 -04:00
arvidn
f95f5b05c2
fix issue where torrent_status::num_seeds could be negative
2017-03-20 23:58:08 -04:00
arvidn
df919d2a85
fix performance issue with async_add_torrent of file:// urls
2017-03-20 22:30:31 -04:00
Arvid Norberg
17f371ddf2
fix alignment issues in heterogeneous_queue ( #1834 )
...
fix alignment issues in heterogeneous_queue
2017-03-20 17:41:00 -04:00
arvidn
1dd0e9b280
use string_view instead of strcmp
2017-03-18 15:54:38 -04:00
Arvid Norberg
642cfa387d
add limit for number of web seed connections ( #1817 )
...
add limit for number of web seed connections
2017-03-18 15:53:07 -04:00
Alden Torres
1280c7f7ae
is_ip_address refactor and minor code cleanup ( #1828 )
...
is_ip_address refactor and minor code cleanup
2017-03-18 11:07:17 -04:00
Alden Torres
1d1484d689
fixing remaining clang sign warnings ( #1825 )
...
fixing remaining clang sign warnings
2017-03-18 08:49:19 -04:00
Alden Torres
02ada49a3c
added session log in start/stop dht
2017-03-17 23:57:20 -04:00
Alden Torres
6d568dae0a
refactor of read/write nodes in dht_live_nodes_alert to reusable functions
2017-03-17 23:45:57 -04:00
Alden Torres
014a07a5c8
allow DHT bootstrap to use nodes of both IP protocols
2017-03-17 20:51:38 -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
Arvid Norberg
827372f9ab
fix master build after merge ( #1813 )
...
fix master build after merge
2017-03-15 07:15:36 -04:00
arvidn
3a1379ef1e
merged RC_1_1 into master
2017-03-14 12:55:13 -04:00
arvidn
6f650aa7d9
document deprecation of dynamic loading/unloading of torrents
2017-03-13 21:21:38 -04:00
arvidn
e37e4bfe8a
include user-agent in tracker announces in anonymous_mode for private torrents
2017-03-12 21:10:00 -04:00
Andrei Kurushin
713c412682
loop conversion #2 ( #1804 )
...
loop conversions. replace unsafe "erase(iter++)" with "iter = erase(iter)"
2017-03-12 11:34:42 -04:00
arvidn
4ded26de33
fix issue with load/unload torrents
2017-03-11 19:59:53 -05:00
Arvid Norberg
3f90501934
add support for IPv6 peers from udp trackers ( #1802 )
...
add support for IPv6 peers from udp trackers
2017-03-11 02:46:51 -05:00
Alden Torres
6ab18136f0
created new session_stats_header_alert, master rebase
2017-03-10 21:04:12 -05:00
arvidn
08c05b9693
correctly URL encode the IPv6 argument to trackers
2017-03-10 02:27:51 -05:00
arvidn
dec8c853e3
fix default file pool size on windows
2017-03-09 23:26:53 -05:00
Alden Torres
6e9c54e69b
using aux::array in metrics array and aux::vector in session_stats_metrics ( #1793 )
...
using aux::array in metrics array and aux::vector in session_stats_metrics
2017-03-09 20:34:52 -05:00
Andrei Kurushin
a404673147
loop conversion #1 ( #1783 )
...
loop conversion #1
2017-03-09 18:17:51 -05:00
arvidn
5cb12318c5
fix bug where settings_pack::file_pool_size setting was not being honored
2017-03-09 08:18:10 -05:00
Alden Torres
a8b10a7449
more sign warnings fixes ( #1775 )
...
more sign warnings fixes
2017-03-09 07:46:52 -05:00
arvidn
6d54c20adf
merge RC_1_1 into master
2017-03-08 18:01:59 -05:00
Alden Torres
2a42058f74
minor refactor in counters_to_array and some typos
2017-03-08 08:27:00 -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
Alden Torres
eb39717b92
added log to on_ip_change and notify if ip_notifier is not supported ( #1785 )
...
added log to on_ip_change and notify if ip_notifier is not supported
2017-03-07 00:15:11 -05:00
arvidn
faa2029f8b
add feature to periodically close files (to make windows clear disk cache)
2017-03-06 23:46:47 -05:00
arvidn
af07ce1f25
fix issue with peers not updated on metadata from magnet links
2017-03-06 18:45:58 -05:00
Andrei Kurushin
8cd0bb6eb3
optimize bdecode_node offset calculation ( #1767 )
...
optimize bdecode_node offset calculation
2017-03-05 10:45:27 -05:00
Arvid Norberg
a34ce0278e
add write_resume_data() function ( #1776 )
...
add write_resume_data() function. Make resume data alert use an add_torrent_params object
2017-03-05 09:31:28 -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
Pavel Pimenov
9f9376fc26
use inline is_digit ( #1770 )
...
use is_digit in lazy_bdecode
2017-03-04 12:42:48 -05:00
Steven Siloti
9a63d4696e
mark connection as upload only manually instead of with set_upload_only()
...
We can't call set_upload_only() in this context because it can trigger an invariant
check in the torrent and m_num_connecting is not consistent.
2017-03-02 00:48:55 -05:00
Alden Torres
1ae8856d93
more use of total_seconds
2017-03-01 23:33:45 -05:00
Alden Torres
b03943429f
more robust iteration on torrent peer connections ( #1769 )
...
more robust iteration on torrent peer connections
2017-03-01 23:33:00 -05:00
pavel.pimenov
78442e9a2c
bdecode_node - add const
2017-02-27 19:44:12 -05:00
Alden Torres
3764ee62cb
fixing sign-conversion warnings, part 23, final ( #1763 )
...
fixing sign-conversion warnings, part 23, final
2017-02-27 11:50:53 -05:00
arvidn
9d645055ff
fix storage tick invariant check failure
2017-02-26 20:23:53 -05:00
Alden Torres
de9d777c9c
fixing sign-conversion warnings, part 22
2017-02-26 15:37:45 -05:00
arvidn
081365fbcf
merge RC_1_1 into master
2017-02-26 00:48:12 -05:00
Alden Torres
97c8d0486c
fixing sign-conversion warnings, part 21, file_flags ( #1750 )
...
fixing sign-conversion warnings, part 21, file_flags
2017-02-25 19:06:31 -05:00
arvidn
ff106f8c9e
default TOS marking to 0x20
2017-02-25 13:34:53 -05:00
Alden Torres
3a93e1767b
fixing sign issues in peer_connection::send_allowed_set
2017-02-24 22:21:14 -05:00
Arvid Norberg
3e83c4119f
fix recent settings_pack ABI regression ( #1752 )
...
fix recent settings_pack ABI regression
2017-02-24 08:06:59 -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
Andrei Kurushin
7a8ffc2f2d
fix web_seed redirects ( #1651 )
...
fix web_seed redirects, make all redirects ephemeral (to avoid resume serialization). remove dup slash for redirects in proxy mode. consolidate {convert_path_to_posix,escape_path} to escape_file_path
2017-02-22 22:46:33 -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
23edbfbee8
fixing sign-conversion warnings, part 19
2017-02-21 15:16:37 -05:00
Alden Torres
267cab6822
fixing sign-conversion warnings, part 18
2017-02-21 01:41:34 -05:00
arvidn
6d40d3a167
bump version number
2017-02-20 12:43:34 -05:00
arvidn
430ff6d7b4
minor fix to num_seeds
2017-02-19 18:47:32 -05:00
arvidn
c8c605554a
remove out-parameters from utp stream
2017-02-19 09:44:32 -05:00
Arvid Norberg
5f69e8217c
clean up xml parser, to use string_view ( #1731 )
...
clean up xml parser, to use string_view
2017-02-19 07:34:55 -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
arvidn
9dd48e88a4
make the utp_socket_manager a reference instead of a pointer in utp_stream
2017-02-18 22:44:53 -05:00
arvidn
2c51c59327
merge RC_1_1 into master
2017-02-18 13:29:12 -05:00
Arvid Norberg
6e65851b2d
add some documentation for some counters ( #1726 )
...
add some documentation for some counters
2017-02-18 12:55:20 -05:00
Alden Torres
bdc37ed619
fixing sign-conversion warnings, part 17, utp_stream ( #1700 )
...
fixing sign-conversion warnings, part 17, utp_stream
2017-02-18 06:52:46 -05:00
Alden Torres
1ab1b98138
optimized dht_get_peers_reply_alert storage and created alerts unit test ( #1714 )
...
optimized dht_get_peers_reply_alert storage and created alerts unit test
2017-02-18 00:13:46 -05:00
Alden Torres
a670871519
fix build from RC_1_1 merge
2017-02-17 19:06:51 -05:00
arvidn
7b61313b99
fix invalid access when leaving seed-mode with outstanding hash jobs
2017-02-17 15:37:56 -05:00
arvidn
3ffa3f2a08
merged RC_1_1 into master
2017-02-17 00:35:49 -05:00
Andrei Kurushin
9bee2146d0
complete UNC path support ( #1689 )
...
complete UNC path support. all internal file api functions handle long size paths (> MAX_PATH) and special names (CON,PRN ...) with unit test
2017-02-16 23:47:08 -05:00
Arvid Norberg
116802fcdf
update tuning documentation ( #1717 )
...
update tuning documentation and make the stats header be posted when logging is disabled (if stats_notifications are enabled)
2017-02-16 07:03:43 -05:00
Alden Torres
f407d85349
minor formatting of end of line open brace
2017-02-15 11:31:53 -05:00
Pavel Pimenov
7f4c8aaf75
Add const peer_request p -> peer_request const& p ( #1705 )
...
Add const peer_request p -> peer_request const& p
2017-02-14 00:17:02 -05:00
arvidn
1300204ff1
back-port pavel's fix to ip_interface.name
2017-02-13 08:09:01 -05:00
pavel.pimenov
7e166ae9c4
Fix init ip_interface.name
2017-02-13 08:06:19 -05:00
Alden Torres
0b4bd75731
fix move related pointer issue in utp_socket_impl::consume_incoming_data
2017-02-12 21:19:27 -05:00
arvidn
cbd1c26a11
fix ABI compatibility issue introduced with preformatted entry type
2017-02-12 20:42:30 -05:00
arvidn
5971818969
merge RC_1_1 into master
2017-02-12 02:24:14 -05:00
Alden Torres
2370c33872
fixing sign-conversion warnings, part 16, upnp class
2017-02-11 20:49:26 -05:00
arvidn
949d4cd12a
fix regression in windows implementation of enum_net causing infinite loop
2017-02-11 19:09:21 -05:00
arvidn
ee2688b83a
use unique_ptr for packets in utp_stream
2017-02-11 17:11:49 -05:00
arvidn
85f6febfff
fix some left-over incorrect default piece priorities (1 -> 4)
2017-02-11 15:32: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
arvidn
edaa96bbbe
clean up and simplify parts of test_web_seed
2017-02-11 08:05:36 -05:00
Arvid Norberg
ff22c68df8
packet pool fixups ( #1682 )
...
packet pool fixups
2017-02-10 20:54:26 -05:00
Alden Torres
4d5ddc90f5
fixing sign-conversion warnings, part 14, minor refactor
2017-02-10 15:27:49 -05:00
Andrei Kurushin
76f91c3fc9
packet allocation pool ( #1600 )
...
packet allocation pool:
- no more direct malloc/free with cast
- reuse allocated memory for 3 common allocation case (with limit)
- access to packet_pool through utp_socket_manager instance
2017-02-10 08:25:03 -05:00
arvidn
964542e53b
back-port ajax16384's fix to enum_net_interfaces on windows
2017-02-08 10:01:40 -05:00
Andrei Kurushin
02c870da94
fix disabled "close_redundant_connections" web_seed disconnect exception ( #1676 )
...
fix disabled "close_redundant_connections" web_seed disconnect
2017-02-08 07:58:04 -05:00
Andrei Kurushin
d7917c4382
consolidate address family checking ( #1678 )
...
consolidate address family checking, fix no IPV6 windows and netlink builds
2017-02-08 07:52:23 -05:00
Alden Torres
1f72843fe3
fixing sign-conversion warnings, part 13, minor refactor ( #1675 )
...
fixing sign-conversion warnings, part 13, minor refactor
2017-02-07 23:36:13 -05:00
ximply
c4d96c7aa9
add web_seed_name_lookup_retry to session_settings ( #1674 )
...
add web_seed_name_lookup_retry to session_settings to control web seed
name lookup retry in seconds, default is 1800 seconds
2017-02-07 01:34:52 -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
692759ba81
slightly improve proxy settings backwards compatibility-1.1 ( #1664 )
...
slightly improve proxy settings backwards compatibility
2017-02-06 00:01:04 -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
arvidn
381defab05
merged RC_1_1 into master
2017-02-05 12:51:48 -05:00
arvidn
7ff4f56ae2
add function to get default settings
2017-02-05 11:31:43 -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
Arvid Norberg
c00a25a645
back-port aldenml's fix to not save replacement nodes twice to 1.1 ( #1661 )
...
back-port aldenml's fix to not save replacement nodes twice to 1.1
2017-02-04 19:58:32 -05:00
Arvid Norberg
0a26ed8d1e
fix issue where updates to super seeding state would not include the torrent in the state_update_alert ( #1659 )
2017-02-04 16:09:42 -05:00
Falcosc
a9d6d54111
fix multible torrent status timer bugs related to move time ( #1492 )
...
fix last_upload and last_download overflow after 9 hours in past. change last_upload, last_download, finished_time, resume, upload_mode_time to time_point and duration
2017-02-04 13:34:14 -05:00
Alden Torres
3ef4109bf3
avoid double saving of replacements nodes, removed replacement_cache, test ( #1656 )
...
avoid double saving of replacements nodes, deprecated replacement_cache, test
2017-02-04 11:25:11 -05:00
arvidn
34ecb60c09
use enum class for close reason
2017-02-04 11:24:35 -05:00
Alden Torres
4c487ec47c
using std:: for integral types
2017-02-03 22:15:47 -05:00
arvidn
c9a2fed2c9
add tests for edge cases of session settings, and fix a few integer overflows
2017-02-03 20:42:59 -05:00
arvidn
3ae2630fa2
fix merge issue
2017-02-02 23:09:54 -05:00
arvidn
c8e488b094
merged RC_1_1 into master
2017-02-02 22:58:33 -05:00
arvidn
2b53eb28a9
minor cleanup in automatic connections_limit management
2017-02-01 23:28:13 -05:00
Arvid Norberg
4733670aa1
fix issue where num_seeds could be greater than num_peers in torrent_status ( #1645 )
...
fix issue where num_seeds could be greater than num_peers in torrent_status
2017-02-01 01:39:09 -05:00
arvidn
dbd734e7a2
sync. creation and clearing of file progress with the piece picker
2017-01-31 08:14:36 -05:00
Falcosc
e40bdc566c
1.1.2 set queue position by number ( #1617 )
...
set queue position by number
2017-01-30 21:31:31 -05:00
Alden Torres
d36c598eeb
fixing sign-conversion warnings, part 10 ( #1642 )
...
fixing sign-conversion warnings, part 10
2017-01-30 20:31:32 -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
arvidn
36858eae85
cleanup packet_buffer class
2017-01-29 10:35:23 -05:00
arvidn
fc70d70e33
fix file_progress invariant check
2017-01-29 02:46:29 -05:00
arvidn
ffca4afaa6
remove unintuitive limit on peer connections (especially with large values of file_pool_size)
2017-01-29 02:45:30 -05:00
Alden Torres
2437b3c134
created aux::typed_span and related refactor
2017-01-28 23:28:38 -05:00
Alden Torres
deecdb6cfa
added support for infohashes sample in dht storage ( #1586 )
...
added support for infohashes sample in dht storage
2017-01-28 20:24:53 -05:00
arvidn
17ee28d176
Merge branch 'master' of https://github.com/arvidn/libtorrent
2017-01-28 14:36:28 -05:00
arvidn
6b91adab6a
merged RC_1_1 into master
2017-01-28 14:36:23 -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
arvidn
a5284b583c
fix bug in udp tracker announce messages
2017-01-26 23:46:55 -05:00
arvidn
cca5ab8368
fix integer overflow
2017-01-26 23:39:56 -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
22b745d548
added TORRENT_NO_DEPRECATE around file_progress_float
2017-01-25 23:44:30 -05:00
Arvid Norberg
ba9fae8e1f
fix issue with unloading torrents ( #1624 )
...
fix issue with unloading torrents
2017-01-25 23:42:59 -05:00
arvidn
b19cb7bd87
fixed finished-time calculation
2017-01-25 01:56:19 -05:00
Alden Torres
4ddd4b72c6
fixing sign-conversion warnings, part 7 ( #1604 )
...
fixing sign-conversion warnings, part 7
2017-01-24 01:35:17 -05:00
Andrei Kurushin
7c9679bf6a
fix missed static array specifier
2017-01-23 08:21:34 -05:00
arvidn
132be5101f
fix stat cache issue that sometimes would produce incorrect resume data
2017-01-22 18:14:10 -05:00
arvidn
4c4a204bee
fix inclusion of auxv.h header and definition of TORRENT_ANDROID
2017-01-22 14:11:44 -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
Andrei Kurushin
06c68052b4
fix missed static array specifier
2017-01-22 13:39:10 -05:00
arvidn
4fe5320bf8
remove debug logging of deleting files
2017-01-22 09:44:49 -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
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
arvidn
173951ec7f
merged RC_1_1 into master
2017-01-21 02:28:29 -05:00
arvidn
6d17f0fb66
storage optimization to peer classes
2017-01-21 01:23:07 -05:00
Falco
c57d062e0d
fix torrent name in alerts of builds with deprecated functions and use non deprecated for internal calls
2017-01-20 19:05:05 -05:00
Andrei Kurushin
fffdd4703d
make handler exchange without copy->clone mem allocation ( #1583 )
...
make uTP handler exchange without copy->clone mem allocation
2017-01-20 19:03:20 -05:00
arvidn
202386dd9d
factor out verify_resume_data to storage_utils
2017-01-20 01:36:03 -05:00
Alden Torres
8cc88a8921
return vector of correct size if internal file_progress is empty
2017-01-19 18:12:30 -05:00
Andrei Kurushin
393e705d5c
refactor entry::dictionary_type ( #1568 )
...
consolidate conditional std::map string code
enable C++14 string_view std::map for VS2015
2017-01-19 18:08:39 -05:00
arvidn
c7c204280a
make sure torrent_info::is_valid returns false when the file fails to load
2017-01-18 23:58:33 -05:00
arvidn
e98dd14760
factor out delete_files function into storage_utils
2017-01-18 00:56:01 -05:00
Alden Torres
c33af5a552
added dht_invalid_find_node counter metric
2017-01-18 00:55:32 -05:00
Alden Torres
ef9d1ecd7f
fixing sign-conversion warnings, part 6
2017-01-17 20:51:26 -05:00
Alden Torres
a2b3248f5d
call set_proxy_settings during session_impl::setup_listener ( #1563 )
...
call set_proxy_settings during session_impl::setup_listener
2017-01-17 17:04:52 -05:00
Arvid Norberg
ec37436d49
factor out move_storage function to storage_utils.cpp ( #1571 )
2017-01-17 08:02:44 -05:00
Alden Torres
a5825c0d2e
fixing sign-conversion warnings, part 5, minor refactor ( #1559 )
...
fixing sign-conversion warnings, part 5, minor refactor
2017-01-16 21:51:49 -05:00
arvidn
5736237a63
fix error handling in random.cpp and fix accidental openssl dependency
2017-01-16 21:33:57 -05:00
Falcosc
a07ffe42f8
fix torrent peer class index overflow ( #1557 )
...
fix peer class index width
2017-01-16 18:20:43 -05:00
arvidn
3b9c65daf1
remove unused function, has_interface()
2017-01-16 15:14:47 -05:00
arvidn
0c189e08b5
use /dev/random as random number source on macOS
2017-01-15 12:18:08 -05:00
Arvid Norberg
04589f3bef
don't load user_agent and peer_fingerprint from session_state ( #1538 )
...
don't load user_agent and peer_fingerprint from session_state
2017-01-15 01:21:52 -05:00
arvidn
934c58a816
merged RC_1_1 into master
2017-01-15 00:45:17 -05:00
Arvid Norberg
b52419d4d9
make the DHT log output deterministic ( #1550 )
...
make the DHT log output use the search ID rather than a pointer value. Make random_bytes() deterministic in simulations
2017-01-14 22:36:25 -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
c3d9614dfb
minor code refactor and cleanup
2017-01-14 06:59:44 -05:00
Alden Torres
1874a917b0
added std:: prefix, end of file cleanup, formatting, consts
2017-01-14 05:59:26 -05:00
Falcosc
9199756a27
fix bitfield m_buf null pointer ( #1526 )
...
fix operations on empty bitfield
2017-01-13 17:08:54 -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
arvidn
77de1e1b43
improve error message in torrent::force_tracker_request precondition error
2017-01-13 01:53:44 -05:00
Alden Torres
4f7b69be90
fix of internal session_impl logic regarding TOS ( #1518 )
...
fix of internal session_impl logic regarding TOS
2017-01-13 00:55:54 -05:00
Arvid Norberg
2120a13869
fix file rename issue with name prefix matching torrent name ( #1524 )
...
fix file rename issue with name prefix matching torrent name
2017-01-13 00:39:49 -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
arvidn
d6a7c7d991
fix error in accounting of IP overhead
2017-01-11 00:02:18 -05:00
Alden Torres
3b4867046f
fixing sign-conversion warnings, part 2
2017-01-10 20:19:03 -05:00
Andrei Kurushin
5fa48c65da
move const data to readonly segment
2017-01-09 14:41:44 -05:00
arvidn
d1ea80c2c3
remove disk-access-log build configuration
2017-01-09 08:37:02 -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
arvidn
1d1ab4f4b5
removed file-leak code, temporarily used to trouble-shoot files appearing to be left open
2017-01-09 01:43:15 -05:00
Arvid Norberg
1cf3689578
simplify disk thread a little bit ( #1504 )
...
simplify disk thread a little bit
2017-01-08 19:22:59 -05:00
Andrei Kurushin
224db08997
fix frequent dealloc/alloc for utp socket lists ( #1496 )
...
fix frequent dealloc/alloc for utp socket lists
2017-01-08 19:18:26 -05:00
arvidn
0c7e86078b
merged RC_1_1 into master
2017-01-08 10:18:41 -05:00
arvidn
39866c2306
fix division by zero when setting tick_interval > 1000
2017-01-07 15:21:02 -05:00
Andrei Kurushin
78bacfe7c1
fix various build options
2017-01-07 10:49:42 -05:00
Steven Siloti
2ed4bee1cb
remove racey assert
...
We arn't holding any mutex here so the fence could have already been cleared
by the disk io threads.
2017-01-07 02:54:12 -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
7957e2a30e
fix move_storage() to its own directory (would delete the files)
2017-01-03 21:09:26 -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
e99d907c72
fix assert
2017-01-02 00:01:43 -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
9007c8333f
merge RC_1_1 into master
2017-01-01 11:08:57 -05:00
arvidn
1600d4dca5
clean up file pool a bit
2017-01-01 09:56:50 -05:00
arvidn
005d1a47b0
deprecate dont_flush_write_cache setting
2016-12-31 17:44:57 -05:00
Andrei Kurushin
4d92e22cd8
decrease cryptoapi aux::random_bytes() cpu usage
2016-12-31 12:42:55 -05:00
arvidn
23a7e8d40a
hide the block_cache_reference from disk_buffer_holder
2016-12-31 10:31:54 -05:00
arvidn
59b322bc79
merged RC_1_1 into master
2016-12-29 08:54:28 -08:00
arvidn
5a97af54db
optimize chained buffer a bit and factor out nop into non_owning_handle
2016-12-29 07:05:18 -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
Pavel Pimenov
516e86d0ea
Refactoring routing_table ( #1468 )
...
routing_table refactor. ip_set::count -> ip_set::exists. Fix copy-paste routing_table::remove_node
2016-12-28 14:40:56 -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
Andrei Kurushin
08aab3a879
make internal sha1 & sha512 implementation declarations match libcrypto api
2016-12-27 22:30:57 -08:00
Arvid Norberg
f1e34dfbd5
remove long-standing deprecated filter_pieces functions ( #1457 )
...
remove long-standing deprecated filter_pieces functions
2016-12-27 12:42:23 -08:00
Arvid Norberg
b74bdfa7db
make dht logging deterministic ( #1460 )
...
make dht logging deterministic (ues an id instead of this-pointer to identify a traversal algorithm)
try with more DHT nodes
2016-12-27 07:12:57 -08:00
Andrei Kurushin
1ec5c69dcd
minor code corrections ( #1430 )
...
use compact span cast. extend split_path api with only_first_part flag. use single loadlibrary and getprocaddress for IP helper
2016-12-26 22:45:48 -08:00
arvidn
2f75dcccfe
on backwards compatible set_settings(), stack allocate settings_pack
2016-12-26 22:44:42 -08:00
arvidn
192ef4962b
simplify the buffer_allocator_interface
2016-12-26 08:36:50 -08:00
arvidn
cda715c152
introduce type for slot index in part_file
2016-12-26 08:33:19 -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
Falcosc
6520fcebf1
fix session invariant check fail for difficult setting dependencies ( #1449 )
...
clean up session_impl invariant checks
2016-12-26 08:09:52 -08:00
arvidn
5ed0086b51
removed mmap_cache feature
2016-12-25 21:12:49 -08:00
arvidn
6be7bb9eb7
clean up some piece/file priority code
2016-12-24 11:26:09 -08:00
Pavel Pimenov
c34a2541cc
Log refactoring ( #1446 )
...
factor out common logging code in some dht traversal algorithms
2016-12-24 06:46:21 -08:00
Alden Torres
71b5d9fb85
fixed Wrange-loop-analysis warning with Apple clang-800.0.42.1 ( #1440 )
...
fixed Wrange-loop-analysis warning with Apple clang-800.0.42.1
2016-12-23 06:07:37 -05:00
arvidn
3f612d7e99
cleaning up of left-overs from torrent eviction functionality
2016-12-23 06:06:59 -05:00
Alden Torres
c1a2e7290c
added explicit time_t cast to avoid warnings in android 32 bits
2016-12-22 21:24:25 -05:00
Alden Torres
75f307c187
minor cleanup and refactor in peer connection
2016-12-22 17:48:47 -05:00
Alden Torres
c672467331
added one more shorten-64-to-32 warning fix, added more std::
2016-12-22 13:48:13 -05:00
Pavel Pimenov
6afb1f3e83
aux::to_hex(sha1) -> sha1.to_hex() ( #1418 )
...
generate hex strings into std::string instead of stack-allocated char arrays
2016-12-22 10:44:36 -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
arvidn
93f400265b
revert change to use std::time_t (mingw64 has abi issues)
2016-12-22 01:13:17 -05:00
arvidn
cde9457fdb
fix merge issue
2016-12-22 01:13:17 -05:00
arvidn
a2c4e7490e
merged RC_1_1 into master
2016-12-20 01:16:13 -05:00
arvidn
ad7e796d05
fix socks5 support for UDP. based on patch in https://github.com/arvidn/libtorrent/issues/1373
2016-12-19 23:52:53 -05:00
Falcosc
8adcbdd32b
add setting urlseed_max_request_bytes to handle large web seed requests #1405 ( #1423 )
...
add setting urlseed_max_request_bytes to handle large web seed requests. change default for urlseed max request to 16MIB
2016-12-18 15:58:14 -05:00
Alden Torres
eaf99aa42b
fixed more warnings of shorten-64-to-32 and sign-compare in android ( #1425 )
...
fixed more warnings of -Wshorten-64-to-32 in android. changed file_status to use std::time and disable warnings of NLMSG_OK in clang
2016-12-18 10:59:41 -05:00
Andrei Kurushin
d62b980278
backport fix upnp xml_parse
2016-12-18 09:01:33 -05:00
Andrei Kurushin
10e3847b40
fix upnp ( #1421 )
...
* fix upnp xml_parser, and listen sockets remap
2016-12-17 17:50:03 -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
arvidn
814f7363a4
deprecate identify_client() and fingerprint type
2016-12-17 11:48:20 -05:00
Steven Siloti
db65eaaa00
submit disk jobs from read_piece right away
...
Without this the jobs get submitted on the next tick which may take a while.
2016-12-17 02:23:09 -05:00
Steven Siloti
916fc92c49
create separate function for reading a node from a list
2016-12-17 02:22:13 -05:00
Alden Torres
f715ebfd97
header fix and refactor in udp_tracker_connection and typos in lazy_entry
2016-12-17 02:20:29 -05:00
Alden Torres
139528aae4
code refactor in torrent.cpp for more auto loop and formatting
2016-12-17 02:12:23 -05:00
Alden Torres
22b596945e
enable /W4 warnings for msvc
2016-12-13 19:36:14 -05:00
Alden Torres
63df1a26b6
changelog note, typos and .gitignore
2016-12-13 08:11:09 -05:00
Alden Torres
f382936d56
headers, end of file, code cleanup
2016-12-12 23:36:45 -05:00
arvidn
51fb7feeb7
fix issue when skipping missing files during fill checks
2016-12-12 23:32:55 -05:00
Alden Torres
a05f0ba8a4
refactor for more modern struct initialization and use of api
2016-12-12 02:15:27 -05:00
Steven Siloti
ca07ee83a3
mark all converstion to bool operators as explicit
2016-12-12 01:34:36 -05:00
Alden Torres
d9f8d4b642
refactor to more use of auto c++11 keyword ( #1404 )
...
refactor to more use of auto c++11 keyword
2016-12-11 20:50:30 -05:00
Alden Torres
21fb0e8c20
making tracker_manager::remove_request type specific
2016-12-11 14:20:37 -05:00
Alden Torres
3a92908f39
formatting, added std:: and spaces
2016-12-10 23:11:43 -05:00
Alden Torres
dd7179fb10
added a few consts to arguments and local variables
2016-12-10 18:19:14 -05:00
arvidn
bbfe58d03c
fix bind-to-device for UDP sockets
2016-12-10 18:18:54 -05:00
Alden Torres
6b70ac1f77
improved port reading in lsd, minor code refactor
2016-12-10 12:18:31 -05:00
Alden Torres
e73435a77b
fixed shorten-64-to-32 warnings for clang
2016-12-10 08:57:08 -05:00
Alden Torres
7266b0b360
fixing shorten-64-to-32 warnings, part 4
2016-12-09 17:24:07 -05:00
Alden Torres
123a6389cd
minor refactor in torrent_status and minor header cleanup in torrent_handle
2016-12-09 17:18:03 -05:00
Pavel Pimenov
d8b413c771
Fix c4996 strcpy ( #1395 )
...
use std::memcpy() instead of std::strcpy()
2016-12-09 17:17:27 -05:00
Steven Siloti
30303c17df
don't indicate interest in peers when in upload only mode
...
If the torrent is paused we don't want to mark peers as interesting
even if the torrent has not finished downloading.
2016-12-09 17:16:25 -05:00
Alden Torres
e1dcf82e2a
fixing shorten-64-to-32 warnings, part 3
2016-12-08 20:22:34 -05:00
Steven Siloti
5d0322d393
fix assertion in fingerprint::to_string
2016-12-07 20:52:45 -05:00
Alden Torres
4142dfe5eb
headers and code cleanup in udp_socket code
2016-12-06 22:54:29 -05:00
Alden Torres
ffdf5c0f5d
avoid unnecessary creation of strings in create_torrent
2016-12-06 22:53:55 -05:00
Alden Torres
0625606230
fixing shorten-64-to-32 warnings, part 2
2016-12-06 22:53:41 -05:00
Alden Torres
553cff97fb
minor fix of the use of TORRENT_USE_I2P
2016-12-06 00:39:27 -05:00
Alden Torres
37cbdc5b37
fixing shorten-64-to-32 warnings, part 1
2016-12-05 00:22:17 -05:00
arvidn
864fcfaced
initialize piece priorities to 4
2016-12-04 18:36:45 -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
arvidn
8874a907ef
fix to file priorities
2016-12-03 00:57:52 -05:00
Alden Torres
69eff36a52
passing block size to smart_ban plugin methods for hashing
2016-12-02 18:08:04 -05:00
arvidn
09b5cfd688
remove build option to use narrower types in piece_picker (optimize_memory_usage)
2016-11-29 08:11:51 -05:00
Pavel Pimenov
e3c5a639ca
Add bt_peer_connection::write_dht_port() ( #1360 )
...
add void bt_peer_connection::write_dht_port()
2016-11-29 08:11:13 -05:00
Pavel Pimenov
ee61d5c308
Small optimisation identify_client ( #1361 )
...
small optimisation identify_client
2016-11-29 01:01:00 -05:00
arvidn
0f38acf829
don't send dht-port if we don't have a udp listen socket
2016-11-27 21:22:11 -05:00
arvidn
6579ae1994
fix listen_failed_alert socket_type report bug
2016-11-27 21:22:11 -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
0df9d1c641
upgrade some C-arrays to std::array in escape_string.cpp ( #1357 )
...
upgrade some C-arrays to std::array in escape_string.cpp
2016-11-26 23:38:25 -05:00
Arvid Norberg
54f052a97b
allocation slot type ( #1352 )
...
use a specialized type for allocation slot indices
2016-11-26 03:09:01 -05:00
Arvid Norberg
15ab8f387b
cleaning up of disk_interface and improving type safety ( #1353 )
...
cleaned up disk_interface and improved type safety. removed unused disk status code disk_check_aborted, and removed status code return value for async_hash
2016-11-26 01:51:47 -05:00
Alden Torres
c30027e4a1
more integral type conversion warning fixes, now only needs shorten-64-to-32 ( #1349 )
...
more integral type conversion warning fixes, now only needs shorten-64-to-32
2016-11-25 11:17:25 -05:00
arvidn
1d5f42d6d0
convert remaining disk io jobs
2016-11-23 19:02:05 -05:00
arvidn
f08501b869
update callback interface for async_check_files and async_flush_piece
2016-11-23 19:02:05 -05:00
arvidn
d8662533d5
update callback signature for async_move_storage and async_release_files
2016-11-23 19:02:05 -05:00
arvidn
fc9dabe1ab
start chipping away at removing disk_io_job from the disk_interface
2016-11-23 19:02:05 -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
Steven Siloti
07650c8558
set scope id when enumerating IPv6 addresses
...
This is necessary to be able to correctly match enumerated addresses
with those stored in listen_socket_t::local_endpoint when there is a
non-default zone id.
2016-11-23 01:09:05 -05:00
Alden Torres
86251adb1b
more fixes of integral type conversion warnings
2016-11-21 20:22:18 -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
35126576ca
remove use of disk_io_job from buffer_holder
2016-11-20 10:34:42 -05:00
arvidn
5b3a730b1f
steps towards removing disk_io_job from disk_interface
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
Arvid Norberg
13d9361da1
don't allocate handlers for proxy sockets in the heap, move them instead ( #1342 )
...
don't allocate handlers for proxy sockets in the heap, move them instead
2016-11-19 22:56:34 -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
Andrei Kurushin
998daf6e0e
fix windows-version=xp build ( #1327 )
...
fix sha512 support for windows xp, pre sp3
2016-11-19 11:07:33 -05:00
tnextday
b25ea5329f
updates `m_last_sent` in `peer_connection::setup_send()` instand of `peer_connection::keep_alive()`
2016-11-19 02:03:12 -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
Andrei Kurushin
0a31e26344
fix logging=off build
2016-11-16 23:14:28 -05:00
Alden Torres
9e1305ed75
auto loop, consts and minor cleanup refactor
2016-11-15 19:54:38 -05:00
Andrei Kurushin
c4f1a928a4
fix i2p=off build
2016-11-15 19:48:14 -05:00
arvidn
14236993ea
collapse logic in piece_manager into storage directly
2016-11-13 02:53:16 -05:00
Alden Torres
2b58cb9de3
using std instead of boost for integral types and some headers cleanup
2016-11-12 21:22:59 -05:00
arvidn
ccd539f977
pull check resume data logic out of piece_manager into disk_io_thread and simplify it
2016-11-12 18:03:18 -05:00
arvidn
c9333849e6
deprecate relative times in torrent_status, replaced by std::chrono::time_point
2016-11-12 17:37:10 -05:00
arvidn
bba121d010
fix recent regression causing potential duplicate add_torrent_alerts
2016-11-12 01:03:38 -05:00
arvidn
e447a50c9d
use enum class in udp_tracker_connection
2016-11-11 21:39:54 -05:00
arvidn
583082a3a0
merged RC_1_1 into master
2016-11-09 19:53:55 -05:00
arvidn
f33d1b32e3
add trackers from add_torrent_params/magnet links to separate tiers
2016-11-09 18:44:01 -05:00
Alden Torres
1a159666ff
some refactor in ip change notifier source code ( #1301 )
...
some refactor in ip change notifier source code. using NETLINK_ROUTE (value 0) as the default nl_family
2016-11-08 03:44:43 -05:00
Steven Siloti
e589e342ef
reopen listen sockets when the system's IP changes ( #1299 )
...
reopen listen sockets when the system's IP changes. Only Linux and Windows supported for now.
2016-11-07 07:40:09 -05:00
arvidn
11ca69b9fc
simplify disk_io_thread interface by setting the number of threads via settings rather than a separate function
2016-11-06 23:07:09 -05:00
arvidn
3ff89f29d7
remove explicit ticking of storage from the torrent. instead make the disk_io_thread do it automatically
2016-11-06 10:26:10 -05:00
arvidn
c72053a75c
remove unused clear_read_cache function
2016-11-05 21:39:45 -04:00
arvidn
2a999e1ea7
merge RC_1_1 into master
2016-11-03 23:58:35 -04:00
Arvid Norberg
f5c7a49d61
remove incorrect deleted-storages assert and add some more test coverage in test_metadata_extensions ( #1286 )
2016-11-03 19:39:42 -04:00
arvidn
d91f6f8c05
merged RC_1_1 into master
2016-11-03 01:19:38 -04:00
Alden Torres
aef614a74c
fix build warnings/errors, typos and minor cleanup ( #1277 )
...
fix build warnings/errors, typos and minor cleanup. no need to provide boost::throw_exception, better left it to the user
2016-11-02 01:03:12 -04:00
Arvid Norberg
09cbd0a51d
remove deprecated disk_io_thread operations ( #1284 )
2016-11-02 01:01:27 -04:00
Arvid Norberg
b61ebca14a
moved async-load-torrent feature out of disk-io-thread ( #1282 )
...
moved async-load-torrent feature out of disk-io-thread into a generic worker thread
2016-11-02 01:01:04 -04:00
Arvid Norberg
1c2a8fb96e
move coalescing of reclaim block from disk_io_thread to session_impl ( #1281 )
2016-10-31 23:48:30 -04:00
Arvid Norberg
21d05945f2
documentation and deprecation fixes ( #1275 )
...
documentation and deprecation fixes
2016-10-31 20:00:01 -04:00
Arvid Norberg
8daa200d11
simplify interaction with disk_io_thread by removing the uncork interface ( #1271 )
...
simplify the interaction with the disk_io_thread by removing the uncork interface. This should be turned into a transparent part of peer_connection instead and remove cork logic from peer_connection
2016-10-30 18:21:07 -04:00
arvidn
b97bb84a9f
merge RC_1_1 into master
2016-10-29 14:25:57 -04:00
Arvid Norberg
7476f7875e
don't check file-sizes resume data for files that likely is in the partfile ( #1268 )
2016-10-29 13:53:24 -04:00
Arvid Norberg
d1a59879cb
deprecate mmap_cache ( #1269 )
...
deprecated mmap_cache feature
2016-10-29 13:42:42 -04:00
Alden Torres
dac0b9ec64
more use of nullptr, minor refactor and formatting ( #1267 )
2016-10-28 12:28:27 -04:00
arvidn
500bb24dba
merged RC_1_1 into master
2016-10-26 23:30:58 -04:00
Arvid Norberg
5f3c52f406
transition to more default member initializers ( #1261 )
2016-10-26 20:41:57 -04:00
Steven Siloti
f5366bd816
use span for scatter/gather lists ( #1260 )
...
use span for gather/scatter buffers. remove explicit size parameter from file_op
2016-10-26 20:40:56 -04:00
Alden Torres
6751a1eeb1
removed spaces in template types and more c++11 auto/loop refactor
2016-10-26 00:08:00 -04:00
Alden Torres
4eebd0c68a
minor refactor, compilation fix when DEBUG_DISK_THREAD and missing convert_to_native ( #1256 )
2016-10-25 20:46:23 -04:00
Arvid Norberg
61af222d92
add utility function for generating peer ID fingerprint ( #1249 )
...
add utility function for generating peer ID fingerprint
2016-10-25 08:03:26 -04:00
Arvid Norberg
675d16a2c3
remove remainder of eviction/ghost torrent feature ( #1251 )
...
remove remainder of eviction/ghost torrent feature
2016-10-25 08:02:34 -04:00
Steven Siloti
cf7db392b6
assert that offset didn't change while hashing
2016-10-25 07:59:02 -04:00
Steven Siloti
f36b9a805a
avoid concurrent access to hash offset
...
Since partial_hash::offset is not an atomic it is technically UD to access it
concurrently from multiple threads.
2016-10-25 07:59:02 -04:00
Steven Siloti
241e9fd25a
add assert to detect index out-of-range
2016-10-25 07:59:02 -04:00
Alden Torres
8bdbaec872
minor cleanup refactor ( #1252 )
2016-10-24 20:19:01 -04:00
Arvid Norberg
f16d0b7953
add unit test for 'file_sizes' entry in resume data ( #1248 )
...
add unit test for 'file_sizes' entry in resume data. fix resume data bug in client_test for magnet links and minor resume data cleanup in default_storage
2016-10-23 22:01:09 -04:00
Arvid Norberg
5341be1e84
more improvement to error/exception handling ( #1247 )
...
improvement to error/exception handling
2016-10-22 22:00:47 -04:00
Steven Siloti
a6e5ba8804
return a span from TORRENT_ALLOCA ( #1244 )
...
return a span from TORRENT_ALLOCA
Unfortunately this requires moving the variable declaration inside the macro.
Due to alloca’s unique properties pretty much the only safe way to call it is
in a simple assign-to-pointer expression. Therefor we need to use a temporary
pointer to store the value returned from alloca before we can call span’s ctor.
This also causes double evaluation of the size parameter which is unfortunate,
but no current callers of TORRENT_ALLOCA have a problem with this. Passing
expressions with side effects to macros is bad mojo anyways.
2016-10-22 14:43:40 -04:00
Pavel Pimenov
e9f9c3ca22
Fix sizeof(values)/sizeof(values[0] ( #1246 )
2016-10-22 14:12:23 -04:00
Arvid Norberg
6148984426
remove whitespace at end of line ( #1245 )
2016-10-22 11:47:24 -04:00
arvidn
31d34fec41
fix issue in previous block_cache patch
2016-10-22 11:08:19 -04:00
Arvid Norberg
2d2874d252
minor block_cache cleanup. make hash be a unique_ptr ( #1241 )
2016-10-21 07:37:15 -04:00
Alden Torres
a12f62593e
minor code refactor in disk_io_thread and block_cache ( #1238 )
2016-10-21 00:25:48 -04:00
Pavel Pimenov
8c20f4e1fd
utp_match: Reduced call boost::asio::ip::address address() ( #1235 )
...
check connection ID before source address in uTP connection lookup
2016-10-20 20:49:59 -04:00
Alden Torres
ad6af13129
deleted mpi.cpp from merge of RC_1_1 ( #1236 )
2016-10-20 16:16:42 -04:00
arvidn
b1e22e6183
merged RC_1_1 into master
2016-10-20 00:36:54 -04:00
Arvid Norberg
5012fcf10b
fix bug in last-seen-complete ( #1234 )
2016-10-20 00:15:26 -04:00
Alden Torres
fe754453f4
backport of fix for LFS support in android ( #1232 )
2016-10-20 00:14:03 -04:00
Arvid Norberg
7009001f73
fix ambiguous call to abs() in tommath ( #1228 )
...
fix ambiguous call to abs() in tommath
2016-10-20 00:13:45 -04:00
Pavel Pimenov
037f349cee
Try resolve #1175 (for RC_1_1) ( #1230 )
...
https://github.com/arvidn/libtorrent/pull/1223
2016-10-19 17:29:35 -04:00
Pavel Pimenov
91845aa6c8
Prevent duplicate url ( #1231 )
...
prevent creating torrents with duplicate trackers as well as adding duplicate trackers to torrent_info
2016-10-19 17:28:35 -04:00
Alden Torres
5f04103a9d
ensure posix calls with LFS support are used in android ( #1226 )
2016-10-19 13:00:03 -04:00
Alden Torres
ded3ed6abf
refactor in alert types to use more const fields and more clear API ( #1222 )
...
refactor in alert types to use more const fields and more clear API
2016-10-19 01:32:15 -04:00
Arvid Norberg
524f7b1c27
fix error handling by exercising code paths where memory allocations fail ( #1221 )
...
fix error handling by exercising code paths where memory allocations fail
2016-10-19 01:18:05 -04:00
Arvid Norberg
85fe06659e
fix buffer overrun in dht_get_peers_reply_alert ( #1219 )
2016-10-16 19:40:39 -04:00
Alden Torres
0f20af3710
minor refactor, consts and cleanup in alerts ( #1210 )
...
minor refactor, consts and cleanup in alerts
2016-10-16 03:12:41 -04:00
Steven Siloti
fc7b4c1c4f
update comment to reflect new quota definition
2016-10-15 21:32:14 -04:00
Steven Siloti
c13286b945
take upload speed into account in round-robin choker
...
The unchoked peers need to be sorted by upload speed so that the slowest node
will get choked as part of optimistic unchoking.
Also change the minimum quanta to 1 minute instead of 256KB.
Also remove a useless multiply in the fastest peer choker since the priorities
are guarenteed to be equal at that point.
Fixes #1171
2016-10-15 21:32:14 -04:00
Arvid Norberg
c4119158a4
use in-class initializers for torrent_status ( #1215 )
2016-10-15 17:35:50 -04:00
Arvid Norberg
c18c12a144
remove ghost torrent/torrent eviction feature. ( #1214 )
...
remove ghost torrent/torrent eviction feature. It was very complex and did not solve the problem very well
2016-10-15 13:32:59 -04:00
Arvid Norberg
25195a7260
back port DHT fixes from master ( #1209 )
...
back port DHT fixes from master
2016-10-14 23:47:59 -04:00
Angel Leon
9cdf0ee50c
Boolean simplifications (oct 13th 2016) ( #1211 )
...
boolean simplifications
2016-10-14 16:13:18 -04:00
Alden Torres
8839722bec
minor http related code cleanup ( #1212 )
2016-10-14 16:12:02 -04:00
Arvid Norberg
540b5b28d7
use signed counters in traversa_algorithm, and add some more asserts ( #1208 )
...
use signed counters in traversal_algorithm, and add some more asserts
2016-10-14 08:03:09 -04:00
Arvid Norberg
e0c8ad738d
include target in DHT lookups, when queried from the session ( #1207 )
2016-10-12 23:39:00 -04:00
Alden Torres
e0d7729f87
using arm neon inline assembly and using it only if in 32 bits ( #1201 )
...
using arm neon inline assembly
2016-10-12 00:02:02 -04:00
Arvid Norberg
c966435d1c
fix issue where shutting down the session immediately and asynchronously starting the DHT would cause a shutdown hang ( #1203 )
2016-10-10 22:54:19 -04:00
Arvid Norberg
6bb2d7c017
Sanitize 1.1 ( #1197 )
...
enable address sanitizer
2016-10-09 17:00:20 -04:00
arvidn
57704d0249
Merge branch 'master' of https://github.com/arvidn/libtorrent
2016-10-08 14:18:12 -04:00
arvidn
1c89fcda48
merge RC_1_1 into master
2016-10-08 14:17:51 -04:00
Arvid Norberg
20f65946f2
make single-argument constructors explicit ( #1194 )
...
make single-argument constructors explicit
2016-10-08 14:07:11 -04:00
Arvid Norberg
5f7e2eb928
run undefined sanitier on travis/linux ( #1134 )
...
run undefined sanitizer on travis/linux. back-port ed25519 unit test from master
2016-10-08 12:29:46 -04:00
Arvid Norberg
7bfb97ba44
use in-class default initializers for utp_stream class members ( #1196 )
...
use in-class default initializers for utp_stream class members
2016-10-08 12:12:33 -04:00
Alden Torres
f580fcaa67
refactor in buffer.hpp to not use anonymous namespace in header ( #1192 )
...
refactor in buffer.hpp to not use anonymous namespace in header
2016-10-08 01:12:34 -04:00
Pavel Pimenov
93d8955750
Fix #1182 ( #1188 )
...
Add webseed URL duplicate check
2016-10-07 15:36:40 -04:00
Pavel Pimenov
af2a9a875b
Fix sizeof(X)/sizeof(T) and _countof ( #1189 )
...
https://msdn.microsoft.com/en-us/library/ms175773.aspx
http://www.viva64.com/en/w/V651/print/
2016-10-06 17:45:35 -04:00
Arvid Norberg
5c361715da
handle exceptions in session and torrent io_service jobs ( #1185 )
...
handle exceptions in session and torrent io_service jobs
2016-10-06 00:08:14 -04:00
Arvid Norberg
3c355bb3f8
use string_view in alert constructors ( #1186 )
2016-10-04 23:58:26 -04:00
Alden Torres
9343f2fbfb
minor header cleanup and refactor ( #1179 )
2016-10-04 07:43:34 -07:00
Alden Torres
be70afa4b8
refactor log methods in public peer_connection_handle for stable ABI ( #1180 )
...
expose log functions in peer_connection_handle with empty bodies when logging is disabled
2016-10-03 21:35:40 -07:00
Arvid Norberg
7a52a285a1
back-port error_code cleanup from master ( #1173 )
...
back-port error_code cleanup from master
2016-10-03 16:32:40 -07:00
Arvid Norberg
8bb7aa62ae
generalize and improve http redirect support for web seeds ( #1060 )
...
generalize and improve http redirect support for web seeds
2016-10-02 23:08:03 -07:00
Arvid Norberg
cebd976cc2
fix error_code vs. error_condition traits ( #1169 )
...
fix error_code vs. error_condition traits. deprecate get_*_category(), instead use *_category()
2016-10-02 12:27:50 -07:00
Alden Torres
1974dca150
minor refactor of dht_default_storage ( #1166 )
...
refactor of dht_default_storage structures
2016-09-30 20:42:57 -04:00
Alden Torres
331a8d53c0
refactor to use move with dht_state ( #1163 )
...
refactor to use move with dht_state
2016-09-29 08:25:51 -04:00
Alden Torres
af92e91a90
missing inc dht counter and minor cleanup ( #1164 )
2016-09-28 23:25:08 -04:00
Alden Torres
84e735c0ea
refactor for more use of move with settings_pack ( #1162 )
2016-09-28 13:28:43 -04:00
Steven Siloti
85dd682551
fix adding a node with unknown id ( #1161 )
...
Commit a414e4c3
broke adding nodes with unknown id to the routing table by
causing them to be evicted when they responded with their real id. This should
have been caught by test_bootstrap, but a typo caused that test to silently
exit early.
2016-09-28 13:28:21 -04:00
Alden Torres
8caebbd026
alerts refactor to use span, don't break ABI when logging, fix compilation ( #1159 )
...
alerts to use span, don't break ABI when logging, fix compilation
2016-09-27 23:21:18 -04:00
Arvid Norberg
f592d7fcb0
various cleanup and formatting updates ( #1158 )
2016-09-26 20:05:04 -04:00
Alden Torres
31ce1e5a2c
dht headers and minor cleanup ( #1157 )
2016-09-26 18:04:42 -04:00
Arvid Norberg
9cebd4569f
general cleanup of disk_buffer_holder and tailqueue ( #1156 )
...
general cleanup of disk_buffer_holder and tailqueue
2016-09-26 14:22:38 -04:00
Arvid Norberg
179e238561
move bitfield's find_first_set and find_last_clear into cpp file ( #1155 )
2016-09-26 10:58:09 -04:00
Arvid Norberg
97c6a75084
add proper error handling to peer connections and session ( #1149 )
...
add proper error handling to peer connections and session. i.e. catch exceptions in asio handlers and catch by const reference
2016-09-25 09:50:48 -04:00
Alden Torres
b60fe066e2
compare with generic_category in close_reason ( #1152 )
2016-09-25 01:42:45 -04:00
Alden Torres
4693fcf3f1
dht source code and headers cleanup ( #1150 )
2016-09-24 22:20:20 -04:00
Arvid Norberg
da8af033cc
modernize utf8 conversion functions to throw and move ( #1145 )
...
modernize utf8 conversion functions to throw and move
2016-09-24 22:16:10 -04:00
Arvid Norberg
372d992d8e
make connection_type enum an enum class ( #1146 )
2016-09-24 10:47:17 -07:00
Arvid Norberg
d2002c5248
separate piece_block and has_block out to their own headers ( #1148 )
2016-09-24 08:46:56 -07:00
Arvid Norberg
48a647a169
String view entry ( #1147 )
...
make entry support string_view in its interface, and make it efficient when in in C++14
2016-09-24 06:10:54 -07:00
Steven Siloti
2e0140b6f6
fix peer picking algorithm ( #1141 )
...
fix peer picking algorithm. The old code was always picking the first to_pick peers from the set.
2016-09-24 06:08:52 -07:00
Alden Torres
b1b74657f6
added consts and minor refactor ( #1137 )
...
added consts and minor refactor
2016-09-23 13:51:20 -07:00
Alden Torres
158ae3a4ba
consts, minor refactor, typos and test ( #1142 )
2016-09-23 13:49:39 -07:00
Arvid Norberg
24b271b7c1
Merge pull request #1133 from ssiloti/peer-picker
...
fix DHT peer picking algorithm. The old code was always picking the first to_pick peers from the set.
* use a sorted vector to store peer announcments
Given the frequency of linear scans being done, std::set is clearly
sub-optimal for storing announced peers. A std::vector is the obvious
choice, which I also decided to make sorted. A sorted vector trades
better performance in announce_peer for slower purging, the latter
being mitigated by batching.
* shrink peers vectors with too much excess capacity
2016-09-23 13:48:00 -07:00
Steven Siloti
35cfc6b5d3
shrink peers vectors with too much excess capacity
2016-09-23 07:30:36 -07:00
Steven Siloti
89942bf3d4
use a sorted vector to store peer announcments
...
Given the frequency of linear scans being done, std::set is clearly
sub-optimal for storing announced peers. A std::vector is the obvious
choice, which I also decided to make sorted. A sorted vector trades
better performance in announce_peer for slower purging, the latter
being mitigated by batching.
2016-09-22 21:54:10 -07:00
arvidn
70199041f7
merged RC_1_1 into master
2016-09-22 13:48:12 -07:00
Arvid Norberg
885e4f8fc4
use default member initializers instead of initialization lists in announce_entry ( #1129 )
2016-09-22 12:00:31 -07:00
Alden Torres
c7ec987a1b
refactor in msg verify_message and minor cleanup ( #1131 )
2016-09-21 23:04:05 -07:00
Steven Siloti
23e11af899
fix peer picking algorithm
...
The old code was always picking the first to_pick peers from the set.
2016-09-21 20:21:34 -07:00
Steven Siloti
c75b243490
remove redundant protocol parameter ( #1128 )
2016-09-21 20:00:39 -07:00
Arvid Norberg
269e384c2c
use string_view in create_torrent ( #1120 )
...
use string_view in create_torrent
2016-09-21 19:59:43 -07:00
Arvid Norberg
b20b3ad1ac
remove file size limit in torrent_info filename constructor ( #1126 )
2016-09-21 19:54:42 -07:00
Arvid Norberg
f712caa80d
deprecate send_stats property on trackers (since lt_tracker extension has been removed) ( #1125 )
2016-09-21 16:54:49 -07:00
Pavel Pimenov
62536c790d
Decreased performance. Ineffective use of the 'count' function. It can possibly be replaced by the call to the 'find' function ( #1127 )
2016-09-21 16:51:51 -07:00
Arvid Norberg
770b0def0c
Merge pull request #1122 from ssiloti/peers-storage-policy
...
new peers storage policy
2016-09-21 07:35:34 -07:00
Arvid Norberg
03068ffa0b
Merge pull request #1108 from arvidn/user-agent-1.1
...
user agent anonymous mode
2016-09-21 07:25:15 -07:00
Arvid Norberg
752ff24357
Merge pull request #1123 from aldenml/system-port-and-logs-1.2
...
* accept port 0 in listen_interfaces
* more session log and source code refactor
2016-09-20 23:50:49 -07:00
Arvid Norberg
3e7e806a77
deprecate old session_settings API (use settings_pack instead) ( #1117 )
...
deprecate old session_settings API (use settings_pack instead)
2016-09-20 23:49:23 -07:00
Alden Torres
f139776542
using consts refs in add_torrent_alert ( #1124 )
2016-09-20 23:14:42 -07:00
Arvid Norberg
4d716361c0
minor code cleanup ( #1116 )
2016-09-20 22:10:06 -07:00
Alden Torres
35f98f6a4d
added a few consts to file_storage and typos ( #1111 )
2016-09-20 22:06:07 -07:00
Steven Siloti
dad0000015
send write token if peer is alraedy stored
2016-09-20 19:35:24 -07:00
Alden Torres
4f6ea4a70d
more session log and source code refactor
2016-09-20 11:24:24 -04:00
Alden Torres
089d6c3144
accept port 0 in listen_interfaces
2016-09-20 11:11:24 -04:00
Steven Siloti
e2fefb074a
always drop the announcing peer when at capacity
2016-09-19 21:51:10 -07:00
Steven Siloti
6e24bbe77a
only send a write token if we have storage space available
2016-09-19 21:51:10 -07:00
arvidn
85a2a5c5cb
don't send user-agent in metadata http downloads or UPnP requests when in anonymous mode
2016-09-18 17:16:03 -07:00
Arvid Norberg
acf77a5385
fix tail-padding for last file in create_torrent ( #1106 )
2016-09-18 20:08:27 -04:00
Alden Torres
db14df5d0d
dht code related refactor and cleanup ( #1107 )
...
dht code related refactor and cleanup
2016-09-18 20:08:15 -04:00
Arvid Norberg
80ba45e1fb
clean up read_endpoint_list ( #1102 )
2016-09-18 10:12:54 -04:00
Arvid Norberg
219b2c36b4
upnp and natpmp modernization and cleanup ( #1103 )
...
upnp and natpmp modernization and cleanup
2016-09-18 10:11:56 -04:00
Arvid Norberg
527772420a
fix tail padding in file_storage::optimize and improve file placement with some tests ( #1105 )
2016-09-18 00:24:20 -04:00
Alden Torres
6c31ea3d44
created dht state and session params refactor ( #1100 )
...
created dht state and session params refactor
2016-09-17 09:42:04 -04:00
Alden Torres
b4da884f29
created lsd_callback, log optimization and cleanup in lsd ( #1099 )
2016-09-16 12:21:41 -04:00
Alden Torres
d94c317f02
created portmap_callback and refactor for natpmp and upnp log optimization ( #1096 )
...
created portmap_callback and refactor for natpmp and upnp log optimization
2016-09-16 09:53:17 -04:00
Alden Torres
d9489878a0
rpc_manager log optimization and minor refactor ( #1095 )
...
more on log optimization
2016-09-16 08:21:07 -04:00
Alden Torres
0507764d04
consts and refactor, hash_address returns the hash ( #1093 )
...
consts and refactor
2016-09-15 21:13:43 -04:00
Steven Siloti
0759b732c1
web_peer_connection: make a copy of the request before calling incomi… ( #1091 )
...
web_peer_connection: make a copy of the request before calling incoming_piece
2016-09-14 12:29:07 -04:00
Steven Siloti
3d3367387a
check the address family of peers in get_peers ( #1090 )
2016-09-14 11:29:27 -04:00
Alden Torres
c25bae163d
avoid warnings with clang and minor dht_tracker code changes ( #1092 )
2016-09-14 11:28:50 -04:00
Alden Torres
acf353e26a
general session, torrent and peer connection log optimization ( #1088 )
...
general session, torrent and peer connection log optimization
2016-09-13 22:46:07 -04:00
Arvid Norberg
392726a2a9
factor out code from alert_manager::should_post template into non-template ( #1089 )
2016-09-13 22:45:39 -04:00
Alden Torres
224ebc1ded
peer_connection log related optimization ( #1086 )
...
peer_connection log related optimization and making m_alert_mask atomic
2016-09-13 17:07:22 -04:00
sledgehammer999
22043fd186
Use std::random instead of Boost.Random when in c++11 mode. ( #1087 )
2016-09-13 17:07:01 -04:00
Alden Torres
65cdc15543
more on log, consts, refs and cleanup in dht related code ( #1082 )
...
more on log, consts, refs and cleanup in dht related code. moving print_state out of main source code
2016-09-13 08:18:47 -04:00
Steven Siloti
850eca1f21
don't pop request until we're done with it ( #1085 )
2016-09-13 02:37:00 -04:00
milesdong
dc4d9af2e6
fix invalid memory access in utp_stream and torrent ( #1084 )
...
fix invalid memory access in uTP PMTUd
2016-09-13 02:36:23 -04:00
Alden Torres
3fa74c6fd5
more consts refs and formatting ( #1080 )
2016-09-12 09:20:15 -04:00
arvidn
fbf926da1f
Merge branch 'master' of https://github.com/arvidn/libtorrent
2016-09-11 21:02:35 -04:00
arvidn
33414de68d
merged RC_1_1 into master
2016-09-11 21:01:03 -04:00
Alden Torres
1a0c6f5e61
more dht log optimizations ( #1079 )
2016-09-11 20:49:15 -04:00
Alden Torres
4d4eb66c8b
some refactor, more const refs and span use ( #1078 )
...
some refactor, more const refs and span use
2016-09-11 01:58:48 -04:00
Alden Torres
5480e2eedc
some consts refs and refactor ( #1075 )
...
some consts refs and refactor
2016-09-09 15:02:20 -04:00
Alden Torres
99da5c8017
dht log optimization, consts and refactor ( #1073 )
...
dht log optimization and refactor
2016-09-08 19:13:46 -04:00
Alden Torres
01e9810f7a
more boost types cleanup and handling of deprecated macos libcrypto ( #1072 )
...
more boost types cleanup and handling of deprecated macos libcrypto. more granular TORRENT_MACOS_DEPRECATED_LIBCRYPTO
2016-09-07 17:51:18 -04:00
Alden Torres
4c53d7b2da
refactor to use std unordered containers and minor cleanup ( #1070 )
2016-09-06 23:37:36 -04:00
Alden Torres
5e69dc700c
minor cleanup and refactor ( #1069 )
2016-09-06 18:34:03 -04:00
Alden Torres
e4a27c0b4b
backport of fix in resolve_links::match ( #1068 )
...
backport of fix in resolve_links::match
2016-09-06 18:30:30 -04:00
Alden Torres
7a0da72813
use of std::unordered_multimap and fix in resolve_links::match ( #1067 )
...
use of std::unordered_multimap and fix in resolve_links::match
2016-09-06 13:04:28 -04:00
Alden Torres
b313de3925
some refactor and cleanup ( #1065 )
2016-09-05 22:25:20 -04:00
Arvid Norberg
994a84cfe8
enable string tests on appveyor ( #1064 )
2016-09-05 15:17:12 -04:00
Alden Torres
0d64bda8d3
refactor to use unique_ptr with session_impl::m_work ( #1063 )
2016-09-04 21:49:11 -04:00
Alden Torres
e11f233086
minor cleanup/refactor ( #1062 )
2016-09-04 18:24:20 -04:00
Alden Torres
728e74eca7
refactor to avoid use of optional with piece_block_progress ( #1061 )
2016-09-04 12:31:02 -04:00
Alden Torres
29a4075555
refactor to use std::shared_ptr with dht observer ( #1057 )
...
refactor to use std::shared_ptr with dht observer
2016-09-02 21:05:11 -04:00
Alden Torres
fd4c09d7b2
refactor to use std::shared_ptr with traversal_algorithm ( #1056 )
...
refactor to use std::shared_ptr with traversal_algorithm. use a more stable linaro gcc link
2016-09-02 16:42:55 -04:00
Arvid Norberg
19dd9d323a
add some const and enum class ( #1055 )
2016-09-02 08:27:38 -04:00
Alden Torres
585a760588
headers cleanup ( #1054 )
...
headers cleanup
2016-09-01 15:04:58 -04:00
Alden Torres
3faa771843
removed use of boost::bind and boost::scoped_array ( #1053 )
2016-09-01 09:43:53 -04:00
Arvid Norberg
5f5589d137
deprecate and remove remote_dl_rate feature ( #1051 )
...
deprecate and remove remote_dl_rate feature
2016-09-01 09:43:08 -04:00
Arvid Norberg
c310d15cac
deprecate some settings that aren't in use anymore ( #1052 )
2016-09-01 09:42:49 -04:00
Steven Siloti
29e6cbbdae
fix exit condition when parsing nodes ( #1046 )
...
fix exit condition when parsing nodes
2016-09-01 00:49:21 -04:00
Alden Torres
bf0008933a
refactor to use std::shared_ptr with peer_connection, core and tests ( #1050 )
2016-08-31 21:42:18 -04:00
Alden Torres
6e891a0211
refactor to use std::shared_ptr with http_connection ( #1049 )
2016-08-31 12:45:45 -04:00
Alden Torres
cdb15ba886
refactor to use std::shared_ptr with torrent ( #1048 )
2016-08-31 08:27:36 -04:00
Arvid Norberg
44a761e5c8
Merge pull request #1047 from ssiloti/rpcm-cleanup
...
rpc_manager: remove unused timer
2016-08-31 02:04:00 -04:00
Steven Siloti
134d62ab08
rpc_manager: remove unused timer
2016-08-30 19:40:11 -07:00
Alden Torres
658fa46f0a
no warnings in random with openssl-1.1 and minor refactor
2016-08-30 21:23:08 -04:00
Arvid Norberg
33ec20f7b6
more use of std::shared_ptr refactor ( #1043 )
2016-08-30 21:16:34 -04:00
arvidn
b554909486
hint DHT bootstrap nodes of actual bootstrap request
2016-08-30 21:15:35 -04:00
Alden Torres
cfd2caeb74
no more extension_list_t type and uncommented call to torrent_plugin::on_load ( #1042 )
2016-08-30 17:36:44 -04:00
Alden Torres
e2487c4d24
more use of std::shared_ptr refactor
2016-08-30 10:10:53 -04:00
Arvid Norberg
88fe6ae8c3
don't link against sha1.cpp when using libcrypto's implementation ( #1040 )
2016-08-30 08:25:07 -04:00
Alden Torres
2ac45d17ef
ed25519 api refactor ( #1041 )
2016-08-30 02:37:51 -04:00
Alden Torres
ebe53883b5
refactor in escape_string and escape_path to use string_view ( #1039 )
2016-08-29 22:37:19 -04:00
Arvid Norberg
9ac7475a90
simplify some constructors with in-class initializers ( #1038 )
...
simplify peer_connection, torrent and session_impl's contstructors by moving simple parts to their header files
2016-08-29 20:29:27 -04:00
Alden Torres
32f5f8f257
better integration and API for ed25519 ( #1037 )
...
better integration and API for ed25519. using shared_ptr in ed25519_add_scalar
2016-08-29 20:28:42 -04:00
Alden Torres
118e30fd86
minor cleanup/refactor ( #1036 )
2016-08-28 00:04:16 -04:00
Arvid Norberg
c7eb76593c
deprecate torrent priority ( #1032 )
...
deprecate torrent priority
2016-08-26 12:37:23 -04:00
Alden Torres
227b630bd1
added string_ends_with to replace boost ( #1034 )
...
added string_ends_with to replace boost
2016-08-26 12:36:09 -04:00
Alden Torres
c05e29c48e
trivial cleanup and minor changes ( #1033 )
2016-08-26 00:14:11 -04:00
Steven Siloti
3a665a1040
fix inconsistant prefix calulcation ( #1030 )
...
The special case for calculating the prefix in the last bucket was being
applied to the condidate node but not the existing nodes in the bucket.
2016-08-25 19:26:48 -04:00
Alden Torres
44d9f456f8
adding support for a more configurable sha512 hasher ( #1028 )
...
adding support for a more configurable sha512 hasher, digest32 template, using hasher512.
2016-08-25 19:07:16 -04:00
Arvid Norberg
558ec097a2
fix applying settings to only take actual updates into account ( #1027 )
2016-08-22 21:38:57 -04:00
Alden Torres
73d6ba6ae3
using span in torrent_handle and no optional in torrent_info ( #1023 )
2016-08-22 11:02:51 -04:00
Arvid Norberg
2a36f9015d
build mpi.c as c++ to allow including boost headers ( #1026 )
...
build mpi.c as c++ to allow including boost headers
2016-08-22 07:59:46 -04:00
arvidn
97ce1b07bf
fix building tarball
2016-08-21 20:21:50 -04:00
Arvid Norberg
3f693fde42
fix build ( #1025 )
...
fix build
2016-08-21 20:20:46 -04:00
arvidn
74fc0fae9d
merged RC_1_1 into master
2016-08-21 16:28:49 -04:00
Arvid Norberg
debf3c6e36
update puff.c for gzip inflation ( #1022 )
...
update puff.c for gzip inflation
2016-08-21 14:43:44 -04:00
Alden Torres
00510d2b06
more use of span and std::shared_ptr ( #1018 )
...
more use of span and std::shared_ptr
2016-08-21 13:37:11 -04:00
Arvid Norberg
80e5ce9b32
add a default DHT bootstrap node when it's enabled on session startup ( #1008 )
...
make the dht bootstrap nodes part of settings_pack instead, to make it possible to set them on startup. and add default
2016-08-21 12:15:19 -04:00
Arvid Norberg
daa453ef3b
back-port windows stack trace function to 1.1 ( #1017 )
...
back port exception handling and stack trace printing from master -> RC_1_1
2016-08-21 01:07:02 -04:00
Alden Torres
4d96939b7b
minor cleanup and refactor ( #1016 )
...
minor cleanup and refactor
2016-08-20 19:46:55 -04:00
Alden Torres
bd557ca2b2
minor refactor to make it more swig friendly ( #1014 )
2016-08-20 11:29:31 -04:00
Arvid Norberg
b701fb252a
clear alert nofify function when calling abort on a session, to avoid touching a destructed session object ( #1015 )
2016-08-20 11:04:44 -04:00
Alden Torres
9fd83aaa10
more use of std::shared_ptr ( #1009 )
...
more std::shared_ptr transition
2016-08-18 17:08:40 -04:00
Alden Torres
5789b02e1b
storage_interface refactor to use span and references ( #1007 )
...
storage_interface refactor to use span and references
2016-08-18 11:57:50 -04:00
Alden Torres
bb388563b3
refactor to use torrent_info with std::shared_ptr ( #1006 )
2016-08-17 17:26:35 -04:00
Alden Torres
7cee486cf7
extensions refactor to use span and std::shared_ptr ( #1005 )
...
extensions refactor to use span. use std::shared_ptr instead of boost::shared_ptr.
2016-08-17 14:30:24 -04:00
Alden Torres
f4127ae12b
refactor in crypto_plugin::decrypt to use tuple
2016-08-16 10:21:17 -04:00
Alden Torres
7a2b21407c
refactor in crypto_plugin to use span
2016-08-15 23:09:30 -04:00
Alden Torres
9b0bc2ed5f
peer_plugin refactor ( #1002 )
...
refactor of ut_pex peer storage
2016-08-15 21:05:39 -04:00
Alden Torres
f51e782905
using string_view in node::incoming_request and plugin::on_dht_request ( #1001 )
...
use string_view in node::incoming_request. changed plugin::on_dht_request to use string_view
2016-08-15 16:17:13 -04:00
Alden Torres
2f7adfbb92
no more deprecated std::random_shuffle ( #999 )
...
replace deprecated std::random_shuffle. more aggressive random_shuffle in DHT simulation setup. use travis_retry.
2016-08-14 19:48:31 -04:00
Arvid Norberg
bc8c49dc15
make file_status return the vector instead of taking an out-parameter ( #1000 )
...
make file_status return the vector instead of taking an out-parameter
2016-08-14 13:11:59 -04:00
arvidn
e247473b86
bump version number
2016-08-13 07:12:23 -04:00
arvidn
8c8c3d5587
replace boost::function with std::function
2016-08-13 07:07:26 -04:00
Arvid Norberg
e36e5efaba
use boost::string_ref ( #996 )
...
use boost::string_ref/boost::string_view in various parts of the code, in file_storage, some file functions and in bdecode.
2016-08-13 07:04:53 -04:00
Alden Torres
a966458f8c
minor cleanup ( #997 )
...
minor cleanup
2016-08-12 19:24:03 -04:00
Alden Torres
74c8054e8d
created session_params and refactor ( #993 )
...
created session_params and new session constructor
2016-08-11 20:32:14 -04:00
arvidn
231dffd392
fix whitespace
2016-08-08 18:16:05 -04:00
Arvid Norberg
8007b947fd
make pad-file and symlink support conform to BEP47 ( #992 )
...
make pad-file and symlink support conform to BEP47
2016-08-07 22:37:10 -04:00
arvidn
42b3fbe20a
merged RC_1_1 into master
2016-08-07 17:23:40 -04:00
Alden Torres
af565e2b86
added support for flz (find last zero) and copied bitfield functions from PR #565 ( #986 )
...
added support for flz (find last zero) and copied bitfield functions from PR #565
2016-08-07 16:21:08 -04:00
Arvid Norberg
e9a7271aca
add piece picker test for re-prioritizing downloading/writing/partial pieces ( #989 )
...
add piece picker test for re-prioritizing partial pieces and forward port steven's piece picker fix from RC_1_1
2016-08-07 16:05:20 -04:00
Steven Siloti
bc369683df
handle short reads when exporting a file ( #990 )
...
handle short reads when exporting a file. Pieces in the part file are not guaranteed to be fully written so short reads need to be handled rather than asserting.
2016-08-07 16:04:29 -04:00
Steven Siloti
d4296730d0
fix re-prioritizing a piece while it is downloading ( #987 )
...
update_piece_state does not expect that the piece's priority has also changed
since the last time the piece was updated. Make sure the piece's priority is
updated before trying to update the state.
2016-08-07 15:27:04 -04:00
Arvid Norberg
71f5510d62
make the random function produce proper random distributions, based o… ( #981 )
...
make the random function produce proper random distributions, based on uniform_int_distribution of C++11. also clean up piece_picker's priority_range to return two results instead of taking pointers to out-parameters. fix recent pe-crypto regression exposed by this change
2016-08-06 13:18:48 -04:00
Alden Torres
7ea9e76b37
refactor for separation of clz software/hardware based ( #985 )
...
refactor for separation of clz software/hardware based
2016-08-05 15:51:37 -04:00
Arvid Norberg
1bae47479b
make settings_pack moveable ( #982 )
2016-08-05 00:28:03 -04:00
Alden Torres
fdfe69f414
fixed warnings and compilation issues ( #980 )
...
fixed warnings and compilation issues
2016-08-03 00:35:40 -04:00
Alden Torres
8fedfcdce6
more trivial cleanup ( #979 )
2016-08-02 17:58:15 -04:00
Alden Torres
3c9ed50d0b
some trivial cleanup ( #978 )
...
some trivial cleanup
2016-08-02 12:13:05 -04:00
Arvid Norberg
caa034b1ac
fix typo and add invariant check to piece_picker ( #977 )
...
fix typo and add invariant check to piece_picker
2016-08-02 07:20:13 -04:00
Arvid Norberg
5b230694e5
check autotools on travis ( #973 )
...
build and run tests with autotools on travis, and fix configure issues.
2016-08-02 00:46:15 -04:00
Alden Torres
0b3c64ee87
added TORRENT_EXPORT to avoid link weak symbol warning ( #975 )
2016-08-02 00:15:26 -04:00
Arvid Norberg
61031f1186
hack to allow timeout utp sockets that are about to be closed ( #976 )
2016-08-02 00:07:36 -04:00
Alden Torres
e55a310e79
use of BOOST_FALLTHROUGH, typos and minor cleanup
2016-08-01 11:42:18 -04:00
arvidn
24dd6d0945
fix warning
2016-07-31 10:02:54 -04:00
arvidn
192559f245
fix warnings of unused return values from ftruncate() calls
2016-07-31 03:19:31 -04:00
arvidn
0126f6f2c6
fix timestamp arithmetic overflow
2016-07-30 00:38:17 -04:00
arvidn
2bdeb9aa6b
fix build
2016-07-29 20:24:11 -04:00
arvidn
e5ecd73751
fix rebase
2016-07-29 18:47:05 -04:00
arvidn
83dba91168
use span for to_hex and from_hex functions
2016-07-29 18:42:18 -04:00
Arvid Norberg
1d514b3f99
Merge pull request #961 from ssiloti/dht-sanitizing
...
remove DHT nodes which change their id
2016-07-29 18:00:22 -04:00
Steven Siloti
0343bb382e
always check m_log before using it
2016-07-29 13:32:28 -07:00
Steven Siloti
44ce5c71e7
cleanup ip logging
2016-07-28 20:08:24 -07:00
Alden Torres
a88c733f92
mark encryption_handler with TORRENT_EXTRA_EXPORT and minor cleanup ( #963 )
2016-07-28 14:57:26 -04:00
Alden Torres
68b1fc2fe8
fixed span::fist logic and minor cleanup ( #960 )
2016-07-28 01:54:57 -04:00
Steven Siloti
6ebc61cef9
reject nodes with our id after checking for an existing entry
...
This allows us to evict nodes which start reporting our id as theirs.
2016-07-27 21:10:34 -07:00
Steven Siloti
9d75198f7f
re-ping nodes in a bucket when one changes id
2016-07-27 21:10:34 -07:00
Steven Siloti
a414e4c3fa
remove nodes which change their id
...
This is based on a suggestion from the8472 to prevent malicious nodes from
polluting the routing table.
https://github.com/the8472/mldht/blob/sanitizing-docs/docs/sanitizing-algorithms.rst
2016-07-27 21:10:33 -07:00
Alden Torres
98918d61f5
removed const_interval, mutable_buffer and const_buffer types ( #956 )
...
removed const_interval, mutable_buffer and const_buffer types
2016-07-27 22:31:08 -04:00
Arvid Norberg
634c2bce60
Span conversion ( #944 )
...
complete http_parser transition to use span. make xml_parse use span. remove buffer::interval. convert some of receive buffer management to use span<>
2016-07-26 02:15:31 -04:00
arvidn
680a09cfa5
merged RC_1_1 into master
2016-07-26 02:14:58 -04:00
terry zhao
48ca20968e
fix value of current_tracker when all tracker failed ( #932 )
...
fix torrent_status::current_tracker when all trackers fail.
2016-07-26 01:13:28 -04:00
Arvid Norberg
6777ec5d05
back-ported dbghlp fix ( #946 )
...
back-ported dbghlp fix
2016-07-26 01:05:32 -04:00
Alden Torres
9af2072bc9
minor changes, typos and gcc tests in windows ( #947 )
...
minor changes, typos and gcc tests in windows
2016-07-25 17:58:00 -04:00
Arvid Norberg
0ea449a7b5
make local service discovery cookie support not so random numbers, to make the test reliable ( #943 )
2016-07-25 08:05:54 -04:00
Arvid Norberg
7fdab0d9e9
fix dbghlp heap corruption on windows
...
synchronize access to dbghlp.dll on windows
2016-07-25 08:05:26 -04:00
Arvid Norberg
118d06b780
remove deprecated extensions lt_trackers and metadata_transfer ( #941 )
2016-07-24 23:39:56 -04:00
Arvid Norberg
6370d5bc81
deprecate lt_trackers extension ( #940 )
...
deprecate lt_trackers extension
2016-07-24 23:37:03 -04:00
Steven Siloti
3321ca10f1
update our id in the rpc manager when it changes ( #942 )
...
update our id in the rpc manager when it changes
2016-07-24 21:30:36 -04:00
Arvid Norberg
4f803353cf
transition part of http_parser to use span ( #936 )
...
transition parts of http_parser to use span
2016-07-24 00:52:20 -07:00
Arvid Norberg
9c2325ff6b
modernize and improve type-safety of the DHT put implementation and test ( #929 )
...
modernize and improve type-safety of the DHT put implementation and tests. use unique_ptr instead of malloc for dht put items.
2016-07-23 15:57:04 -07:00
Alden Torres
ddb274751f
using span in crypto_plugin encrypt/decrypt ( #934 )
2016-07-23 15:54:39 -07:00
Alden Torres
f57612b82d
rename of aux::array_view to span ( #933 )
2016-07-22 09:31:42 -07:00
Arvid Norberg
7bf49c0a1c
modernize hasher to use array_view ( #931 )
...
modernize hasher to use array_view as well as adding array_view support to entry
2016-07-22 07:29:39 -07:00
arvidn
b8bfc13d59
merge fix
2016-07-20 11:48:44 -07:00
arvidn
e405f0e02f
merged RC_1_1 into master
2016-07-20 11:34:29 -07:00
Alden Torres
7446a88425
version to 1.2 ( #924 )
...
update version to 1.2
2016-07-20 11:29:24 -07:00
Arvid Norberg
5bda955f8f
don't send bitfield to peers whose handshake we haven't fully received yet ( #925 )
2016-07-20 10:11:28 -07:00
terry zhao
e75bb120b4
fix range of lsd::cookie ( #920 )
...
fix cookie range of lsd in lsd::on_announce
2016-07-18 09:19:45 -07:00
Sivachandran
8f3bd1052e
fix mutable dht_get_item failure when salt is non-empty ( #909 )
2016-07-18 07:12:10 -07:00
Arvid Norberg
80fba1f748
fix crash in session::get_ip_filter when not having set one ( #914 )
2016-07-17 14:23:54 -07:00
Arvid Norberg
31fbbab89c
clean up memory allocation in bitfield ( #910 )
...
clean up memory allocation in bitfield
2016-07-16 14:31:25 -07:00
Arvid Norberg
e72f95e0d9
fix test_remap_files ( #905 )
...
fix test_remap_files
2016-07-15 14:35:57 -04:00
Arvid Norberg
0a3cb77d23
deprecate and remove guided read cache ( #904 )
2016-07-10 19:25:26 -04:00
Arvid Norberg
8c03718117
apply modernization transforms to headers too. nullptr, explicit constructors, = default ( #903 )
2016-07-10 14:27:42 -04:00
Arvid Norberg
a740a49fd6
modernize misc ( #898 )
...
modernize misc
2016-07-10 07:34:45 -04:00
Arvid Norberg
eaea4a81cc
modernize: remove redundant smart ptr get(), use fixed-width integer types ( #900 )
2016-07-10 07:31:58 -04:00
Arvid Norberg
fcac8c10ef
i2p_stream cleanup ( #899 )
2016-07-10 01:24:06 -04:00
Arvid Norberg
e801d2e6de
modernize replace deprecated headers ( #897 )
2016-07-09 23:17:55 -04:00
Arvid Norberg
e782783814
modernize use override ( #895 )
2016-07-09 20:10:38 -04:00
Arvid Norberg
770935cd46
modernize-use-nullptr ( #894 )
2016-07-09 16:26:26 -04:00
arvidn
3abd024ecc
fix warning
2016-07-09 10:31:48 -04:00
arvidn
76bb6db1ab
fixup
2016-07-09 02:34:50 -04:00
arvidn
2df81d0927
Merge branch 'RC_1_1'
2016-07-09 02:21:39 -04:00
Steven Siloti
f0d7ec3954
refactor optimistic unchoke extension API ( #888 )
...
refactor optimistic unchoke extension API. The new interface is more efficient to implement and only allows extensions to affect the unchoke order in cases where the last unchoked timestamp is equal.
This is safer because it prevents extensions from overriding the round-robin ordering of optimistic unchokes.
2016-07-07 08:34:52 -04:00
Arvid Norberg
e079d0291e
fix filename escaping when repairing torrents with broken web seeds ( #892 )
...
fix filename escaping when repairing torrents with broken web seeds
2016-07-07 02:22:15 -04:00
arvidn
98af1cd54e
merged RC_1_1 into master
2016-07-05 18:03:06 -04:00
Arvid Norberg
c299149dc0
fix cppcheck ( #887 )
...
fix cppcheck
2016-07-05 08:42:11 -04:00
Arvid Norberg
3ec48ec5b4
support CryptoAPI on windows, for SHA-1 hashing ( #882 )
...
support CryptoAPI on windows, for SHA-1 hashing. don't always use openssl in test build configurations
2016-07-05 08:40:09 -04:00
Arvid Norberg
cbb6f47f36
make some types movable ( #885 )
2016-07-04 18:19:55 -04:00
Steven Siloti
e0c0b14e6c
limit crypto messages to 1MB ( #884 )
...
limit crypto messages to 1MB
2016-07-04 02:48:13 -04:00
Arvid Norberg
cf65f85dc3
fix file_completed_alert ( #880 )
2016-07-03 14:48:18 -04:00
Arvid Norberg
44c048f4f5
fix seed mode and suggest mode ( #871 )
...
fix resume data when combining seed-mode with suggest-mode
2016-07-02 16:20:12 -04:00
Arvid Norberg
103d574cb0
build and run all tests in macOS ( #859 )
...
build and run all tests in macOS. fix test build invocation on travis. remove bdecode_benchmark
2016-07-02 00:41:48 -04:00
Arvid Norberg
1facf0eef6
clean-up more defines ( #872 )
...
clean-up more defines. remove TORRENT_DEBUG and TORRENT_DISABLE_INVARIANT_CHECKS (instead use TORRENT_USE_ASSERTS and TORRENT_USE_INVARIANT_CHECKS)
2016-07-01 19:46:59 -04:00
Alden Torres
39e971c2ce
added support for arm crc32c and changed to test in arm 32 bits ( #869 )
...
added support for arm crc32c and changed to test in arm 32 bits
2016-06-30 11:37:55 -04:00
Arvid Norberg
97ad7510af
minor refactoring to move-storage patch ( #680 )
...
minor refactoring to move-storage patch
2016-06-29 20:05:28 +03:00
Vladimir Golovnev
faef995cdc
Move storage "file-by-file" ( #632 )
...
When moving storage for a torrent, only move files belonging to the torrent, one by one.
2016-06-29 20:05:16 +03:00
arvidn
08aebd2729
format more log messages in alert constructors
2016-06-29 02:02:46 -04:00
arvidn
b1e36a53e3
print peer logs directly into the allocation
2016-06-29 02:02:46 -04:00
Alden Torres
40c343be93
fixed macro assert around assert_torrent_refcount ( #868 )
2016-06-28 13:42:18 -04:00
Alden Torres
ecb64a53a9
backport of popcnt asm for x86 and gcc/clang ( #864 )
...
backport of popcnt asm for x86 and gcc/clang
2016-06-28 00:34:21 -04:00
Arvid Norberg
a675682b6c
some cleanup of TORRENT_DEBUG defines ( #863 )
...
some cleanup of TORRENT_DEBUG defines
2016-06-27 22:28:51 -04:00
Alden Torres
f7515edc8b
added neon support for popcount ( #861 )
...
added neon support for popcount
2016-06-27 18:51:43 -04:00
Alden Torres
9233edae4e
using popcnt asm for x86 and gcc/clang ( #862 )
2016-06-27 18:51:00 -04:00
terry zhao
1a3e75b50a
fix msvc-8.0 build ( #860 )
2016-06-27 13:46:15 -04:00
Arvid Norberg
31b2a03005
some optimizations ( #858 )
...
allow disk I/O callback objects to be moved into disk io jobs
2016-06-27 01:02:00 -04:00
Arvid Norberg
c567a66f5e
simplify peer_connection's read handlers and the receive buffer. ( #853 )
...
simplify peer_connection's read handlers and the receive buffer. removed the concept of soft-packet-size. removed the secondary null-buffer receive path. removed try_read. simplify the buffer class to not be resizeable. make receive_buffer shrink the buffer allocation. add cap to growing the receive buffer. buffer sizes are always divisible by 8.
2016-06-26 20:41:03 -04:00
arvidn
263bd31782
merged RC_1_ into master
2016-06-26 18:07:21 -04:00
arvidn
b97ac65c01
don't perform expensive hash of piece data for logging
2016-06-26 13:11:52 -04:00
Arvid Norberg
7edc6b1cc2
insert invariant checks to try to catch async_check_files crash ( #856 )
2016-06-26 12:13:08 -04:00
Alden Torres
57ad035955
added arm __builtin_clz support and tests running in arm mode ( #854 )
...
added arm __builtin_clz support and tests running in arm mode inside travis
2016-06-26 12:01:42 -04:00
Arvid Norberg
eda956f13a
use standard library for suspending threads ( #855 )
...
use standard library for suspending threads
2016-06-26 09:24:06 -04:00
arvidn
be30bbd08b
merged RC_1_1 into master
2016-06-25 17:48:13 -04:00
arvidn
f56d698db6
fix asio-debugging
2016-06-25 17:29:40 -04:00
Alden Torres
c84aceea3f
using bsr even with no popcnt present ( #852 )
2016-06-24 17:43:29 -04:00
Alden Torres
9efba7d752
missing header when no cpuid is available ( #849 )
2016-06-23 22:36:31 -04:00
Alden Torres
ba6e1e9194
open default listen interface the same as no default ( #848 )
...
open default listen interface the same as no default
2016-06-23 17:54:31 -04:00
Alden Torres
436b781003
option to use only the openssl's sha1 implementation ( #845 )
...
separated ssl and crypto build options
2016-06-23 13:20:35 -04:00
Arvid Norberg
6917a11c6b
correct error introduced in add_torrent_impl refactor, with regards t… ( #846 )
...
correct error introduced in add_torrent_impl refactor, with regards to not having flag_duplicate_is_error set (which is not set by default)
2016-06-23 13:19:35 -04:00
Arvid Norberg
ce00ebf723
simplify and clean up some of torrent_info ( #847 )
...
simplify and clean up some of torrent_info
2016-06-23 11:34:26 -04:00
Arvid Norberg
21c1540ace
clean up natpmp and upnp logging ( #842 )
...
clean up natpmp and upnp logging. remove custom logging macro and use regular logging via alerts. honor TORRENT_DISABLE_LOGGING
2016-06-23 01:23:59 -04:00
arvidn
3b2a527ffb
Merge branch 'RC_1_1'
2016-06-22 00:41:02 -04:00
arvidn
763d313570
fix bug in enum_net() for BSD and Mac
2016-06-21 19:05:22 -04:00
Arvid Norberg
6aabe3762b
general modernization ( #836 )
...
general modernization. use nullptr instead of NULL, use std::tuple instead of boost::tuple, transition some unordered set/map from boost to std. some clean-up of includes
2016-06-20 11:32:06 -04:00
Arvid Norberg
a9dbbdea37
use array_view instead of std::vector in crypto_plugin interface ( #835 )
...
use array_view instead of std::vector in crypto_plugin interface. return a vector of const_buffers for prepending new buffers. use stack allocated (single buffer) iovecs for receives. general cleanup
2016-06-19 23:05:59 -04:00
Arvid Norberg
b2358666a1
remove lazy_bitfield ( #817 )
...
remove lazy_bitfield feature
2016-06-19 17:00:18 -04:00
Alden Torres
15bac1e9b5
config.h cleanup ( #834 )
...
config.hpp and .travis.yml cleanup
2016-06-19 02:32:12 -04:00
Arvid Norberg
717ed8bd3b
Msvc warnings ( #822 )
...
fix msvc warnings in python bindings and simulations
2016-06-18 19:24:27 -04:00
Steven Siloti
f1585d8317
Fix abort_jobs being called multiple times ( #831 )
...
disk_io_thread::abort_jobs must only be called once, but it was possible for
concurrent calls to be made from abort() and thread_fun() if the max threads
had been set to zero but there were still disk I/O threads running.
m_num_running_threads doesn't need to be atomic anymore
2016-06-18 16:53:23 -04:00
Arvid Norberg
ed077c8358
use cstdint intead of boost/cstdint.hpp ( #833 )
...
use cstdint intead of boost/cstdint.hpp
2016-06-18 14:01:38 -04:00
Arvid Norberg
ead11737b4
fix uses of defines for whether or not asserts are active ( #832 )
2016-06-18 08:31:07 -04:00
Alden Torres
d3cd568447
plugin callback refactor ( #823 )
...
grouping plugins per feature
2016-06-17 22:02:21 -04:00
Alden Torres
efa8bb0fc7
making disk_buffer_holder internal and include cleanup ( #827 )
...
making disk_buffer_holder internal and include cleanup
2016-06-17 17:40:22 -04:00
Alden Torres
2cc1054d7d
deprecate functions in torrent_handle ( #828 )
...
deprecate get_full_peer_list on torrent_handle
2016-06-17 16:07:28 -04:00
Arvid Norberg
4d927f4029
modernize disk_buffer_holder to be move-only ( #824 )
...
modernize disk_buffer_holder to be move-only
2016-06-16 08:24:41 -04:00