Commit Graph

5799 Commits

Author SHA1 Message Date
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
Steven Siloti 2fed4103f8 scalable thread pool (#770) 2016-06-15 20:49:28 -04:00
Arvid Norberg c0fb61c5d7 replace the suggest-read-cache logic with something much simpler (#815)
replace the suggest-read-cache logic with something much simpler that doesn't schedule regular jobs and doesn't query the disk cache
2016-06-15 13:29:54 -04:00
Arvid Norberg ce161a9d62 remove option to disable contiguous receive buffers (#818)
removed option to disable contiguous receive buffers
2016-06-15 08:04:53 -04:00
arvidn 4b186130e6 fix merge 2016-06-14 21:16:28 -04:00
Arvid Norberg 6f87c702fa simplify dispatching of bittorrent messages (#820) 2016-06-14 15:19:32 -04:00
Alden Torres 38f4765ebc added assert and documentation typos (#816) 2016-06-13 17:16:09 -04:00
Alden Torres d759d8f742 not add peers from url if add_torrent_impl returns invalid handle (#814) 2016-06-13 07:47:16 -04:00
Arvid Norberg 6e55c0564f suppress shift warnings in boost (#811)
suppress shift warnings in boost
2016-06-12 21:14:21 -04:00
Arvid Norberg 4e0a4db9b4 fixed inverted priority of incoming piece suggestions (#809) 2016-06-12 20:36:05 -04:00
Arvid Norberg 590f68cd3d make parse_interface_list more robust and improve string tests (#806)
make parse_interface_list more robust and improve string tests
2016-06-12 02:00:10 -04:00
arvidn 0440c57f68 fix performance issue and assert with receiving metadata 2016-06-11 23:29:33 -04:00
Arvid Norberg ef1a24518d fix dht tests (#803)
fix tests
2016-06-11 15:37:28 -04:00
arvidn dfc2206b9f merged RC_1_1 into master 2016-06-11 01:00:41 -04:00
Arvid Norberg 5ecd00c5c5 fix osx build (#804)
fix osx build with asserts enabled
2016-06-11 00:48:13 -04:00
arvidn 1946e6c58b merged RC_1_1 into master 2016-06-10 01:38:32 -04:00
Arvid Norberg 327af3a69e optimize allow-fast logic (#800)
optimize allow-fast logic
2016-06-10 01:24:37 -04:00
Arvid Norberg 404d72b9b7 revert handshake round-trip optimization (#797)
revert handshake round-trip optimization. it prevents taking advantage of FAST extensions since the bitfield is sent before receiving the other peer's handshake
2016-06-10 01:14:37 -04:00
Alden Torres 0882d02c53 early resume data reset when fatal_disk_error (#798) 2016-06-10 01:09:49 -04:00
arvidn f4a95131c5 improve asserts in dht_storage 2016-06-10 00:55:17 -04:00
Arvid Norberg 830a79dbcf optimize allow-fast logic (#800)
optimize allow-fast logic
2016-06-09 08:02:41 -04:00
Arvid Norberg 5eaf713d1f revert handshake round-trip optimization (#797)
revert handshake round-trip optimization. it prevents taking advantage of FAST extensions since the bitfield is sent before receiving the other peer's handshake
2016-06-07 21:45:48 -04:00
Alden Torres c8f7d89652 early resume data reset when fatal_disk_error (#798) 2016-06-07 18:44:39 -04:00
Alden Torres 9d3cf5e68b changed min_distance_exp for correctness and clarity (#789)
changed min_distance_exp for correctness and clarity
2016-06-06 18:22:33 -04:00
Alden Torres 3d5e0144c7 consider macro TORRENT_USE_IOSTREAM for sha1_hash iostream operators (#790) 2016-06-05 23:55:42 -04:00
Arvid Norberg cbeb7adbde fix .travis script to run simulations (#791)
fix .travis script to run simulations
2016-06-05 22:13:01 -04:00
Arvid Norberg 223f24ca27 some cleanup and transition to std::unique_ptr (#786)
some cleanup and transition to std::unique_ptr
2016-06-05 14:07:24 -04:00
Arvid Norberg ae3b629649 improve invariant check of file_progress class (#787) 2016-06-05 14:06:11 -04:00
arvidn 8baf4f810a fix graceful pause issue 2016-06-04 21:35:12 -04:00
arvidn edf9f8070d merged RC_1_1 into master 2016-06-04 14:09:19 -04:00
Alden Torres db65eb320a making dht counters additive (#783)
make dht counters additive to support both IPv4 and IPv6
2016-06-04 14:04:29 -04:00
Arvid Norberg fa8232cd13 remove some old cruft and defines (#785)
remove some old cruft and defines
2016-06-04 10:03:13 -04:00
Arvid Norberg 8c8f5bb03b deprecated public to_hex() and from_hex() functions (#784) 2016-06-04 10:01:43 -04:00
Arvid Norberg 3624ce6cfd fixed crash on invalid input in http_parser (#782)
fixed crash on invalid input to http_parser
2016-06-04 09:53:23 -04:00
Alden Torres 7c4d92a627 Share the DHT storage for both IPv4 and IPv6 (#762) 2016-06-03 19:44:16 -04:00
Arvid Norberg be67553897 simplify session pause mechanism by keeping two separate states in torrents and having the session explicitly tell torrents when it's pausing (#779) 2016-06-03 07:32:48 -04:00
Alden Torres 42a9022065 Refactor of listen alerts for separated fields address and port (#778)
Refactor of listen alerts for separated fields address and port
2016-06-02 22:38:56 -04:00
Alden Torres cdd067fe4e Minor cleanup (#775)
Minor cleanup
2016-06-02 07:25:06 -04:00
Arvid Norberg 14d085f607 rename allow_peers to paused (#773) 2016-06-01 01:05:32 -04:00
Arvid Norberg 92cd0ec7d1 simplify and clean up peer_list usage in torrent.cpp (#772) 2016-06-01 01:05:17 -04:00
arvidn ec182492cc improve add_torrent_params::flags documentation and fix related logging bug 2016-05-30 16:36:44 -07:00
Arvid Norberg 0583394af7 remove dependency on libtommath and use boost.multiprecision instead
remove dependency on libtommath and use boost.multiprecision instead
2016-05-30 14:33:24 -04:00
arvidn 7795b2ff6c merged RC_1_1 into master 2016-05-29 10:01:55 -07:00
Arvid Norberg b3bbb2f0f6 upgrade libtommath to 1.0 (#765)
upgrade libtommath to 1.0
2016-05-28 17:12:26 -04:00
arvidn 420b5f51e6 merged RC_1_1 into master 2016-05-27 12:35:53 -07:00
Alden Torres 7809863035 Removed unused cpp files (#758) 2016-05-27 13:28:04 -04:00
arvidn 67a497834a back-port extra checks in pe_crypto from master 2016-05-27 09:51:06 -07:00
Arvid Norberg 6936405518 add more sanity checks to pe_crypto (#761) 2016-05-27 12:39:03 -04:00
Alden Torres f8dcf30b2e Ported support for magnet x.pe parameter from master (#760) 2016-05-27 12:12:32 -04:00
Alden Torres 10393697cb Fix of parse_endpoint with invalid port character separator (#757) 2016-05-27 12:00:54 -04:00
Alden Torres 313006b8c7 Added support for x.pe parameter in parse_magnet_uri (#755) 2016-05-26 13:34:13 -04:00
Arvid Norberg 96999ad67f replace uses of boost::bind with std::bind and lambdas (#745) 2016-05-25 00:31:52 -04:00
arvidn 98eabc63e9 using _WIN32 appears safer than WIN32 2016-05-23 23:02:52 -04:00
arvidn 0ce5a4c664 improve robustness in natpmp code a bit 2016-05-23 22:46:46 -04:00
Arvid Norberg 748af6eec1 general cleanup. remove valgrind markup, log_hash_failures and C headers (#752)
general cleanup. remove valgrind markup, log_hash_failures and C headers
2016-05-23 08:15:39 -04:00
arvidn f1216686d2 merged RC_1_1 into master 2016-05-23 00:56:16 -04:00
Arvid Norberg 62fb7209ef fix invariant check issue with a paused session (#750)
fix invariant check issue with a paused session
2016-05-22 22:58:11 -04:00
Arvid Norberg cf3c95702b Peer blocked alert (#747)
make peer_blocked_alert derive from peer_alert
2016-05-22 19:56:14 -04:00
Arvid Norberg b5fc367d17 fix incorrect comparison function when deciding which peer to disconnect (#746)
fix incorrect comparison function when deciding which peer to disconnect
2016-05-22 13:46:37 -04:00
Arvid Norberg 584d74e2f0 fix union storage hacks (#670)
remove union storage hacks
2016-05-21 21:04:47 -04:00
Arvid Norberg dceee3b065 simplify session call and replace session_handle and torrent_handle macros (#741)
remove use of macros in session_handle and torrent_handle forwarders
2016-05-21 19:05:42 -04:00
Alden Torres afbfd6e890 Fixed compilation when TORRENT_UTP_LOG (#738) 2016-05-19 13:25:39 -04:00
arvidn aa0d29b67d merged RC_1_1 into master 2016-05-19 01:28:22 -04:00
Arvid Norberg 178a41b187 clean up natpmp logging infrastructure a bit as well as test_peer_list (#735)
clean up natpmp logging infrastructure a bit as well as test_peer_list
2016-05-18 01:54:37 -04:00
arvidn 35eff73662 fix missing include 2016-05-17 22:36:45 -04:00
Arvid Norberg eb72bbf2d2 fix add_torrent_impl when adding a URL (which has been deprecated) when building with deprecated features disabled (#733) 2016-05-17 16:49:11 -04:00
Arvid Norberg e8380e1d0b factor out includes from config.hpp into the files actually using it. primarily, printf family of functions, since C++11 version is used now. This removes the need for an snprintf-wrapper on windows (#732) 2016-05-17 09:24:06 -04:00
Arvid Norberg 5b23bc81b6 fix print_backtrace build (#731) 2016-05-15 15:40:53 -04:00
Arvid Norberg 44a668db62 build with gcc/mingw on appveyor (#722)
enable gcc/mingw builds on appveyor. Some mingw tests crash currently, they need debugging and are currently disabled.
2016-05-15 13:28:22 -04:00
Arvid Norberg 1e7e01c671 transition to system_error as the exception type (#730)
transition to system_error as the exception type
2016-05-15 00:33:06 -04:00
Arvid Norberg 0d27a0acdd fix assert when adding an empty file (as a torrent) (#729) 2016-05-14 13:24:29 -04:00
arvidn c292696dcb back-port fix adding empty file as torrent 2016-05-14 13:13:20 -04:00
Arvid Norberg 167cbe74b5 made alerts move-only and remove dispatch function and other deprecated alert functions requiring alert to be copyable (#721) 2016-05-13 08:19:44 -04:00
arvidn 84f70a77ee fix assert 2016-05-13 00:16:51 -04:00
Arvid Norberg 53bd03558c Dht stats 1.1 (#720)
fix missing dht stats counter updates
2016-05-12 21:27:11 -04:00