Commit Graph

3127 Commits

Author SHA1 Message Date
arvidn 0d0048d415 try to evict a volatile piece before allocating a new one for a hash check. It may be faster to check files without growing the cache, or reusing the same buffers. 2016-03-13 12:52:44 -04:00
arvidn 2178d1ad2b improve robustness and performance of uTP PMTU discovery. fix duplicate ACK issue in uTP. demote an invariant check to 'expensive' 2016-03-13 12:40:59 -04:00
arvidn 6d85c7c5f0 merge RC_1_1 into master 2016-03-08 01:10:48 -05:00
arvidn f5d5ac4f3a fix bug where disk cache was wiped out after completion file-checking. factor out sim test utilities and reuse them in the regression test 2016-03-06 21:44:38 -05:00
arvidn 442979c318 support filtering which parts of session state are loaded by load_state() 2016-03-06 16:35:49 -05:00
arvidn a02c1d2164 record cache settings in the job instead of checking it twice for more robust behavior 2016-03-06 16:15:13 -05:00
arvidn 26f88bb12d add receive_buffer unit test and some more cleanup and asserts 2016-03-05 00:14:00 -05:00
Alden Torres 4998bfedc6 Documentation typos 2016-03-04 10:43:25 -05:00
arvidn b9ec183e24 increase default connect speed. minor cleanup. add logging for short lived connections 2016-03-03 01:20:15 -05:00
Arvid Norberg 0cd0c57880 Merge pull request #507 from arvidn/fix-test-upnp-1.1
fix test_upnp build
2016-02-28 10:44:16 -05:00
arvidn 8ffa76842c fix test_upnp build 2016-02-28 01:18:27 -05:00
arvidn 2f745a181c fix typo and make alert non-copyable 2016-02-27 23:53:25 -05:00
arvidn f563bf9cac attempt to make the alert type backwards compatible with cloning the state when building with deprecated functions enabled 2016-02-27 20:25:17 -05:00
arvidn 587e888152 fix bug in torrent_info::rename_file 2016-02-27 10:20:23 -05:00
Steven Siloti b52027a02a set enable_dht to true in session::start_dht(entry)
This function needs to enable the dht to match its semantics in pre 1.1 versions
2016-02-26 19:22:28 -08:00
arvidn 2fd8047308 merged RC_1_1 2016-02-24 21:22:39 -05:00
arvidn dcd6af6473 more fixing of test_transfer proxy tests 2016-02-24 00:03:56 -05:00
arvidn 0b173c6651 merged RC_1_1 2016-02-23 23:48:29 -05:00
Arvid Norberg 46e22cf3fc Merge pull request #489 from arvidn/udp-port-mapping-1.1
fix port mapping for SSL UDP socket
2016-02-23 01:28:27 -05:00
arvidn c919c63ca3 extend the tutorial 2016-02-23 00:54:14 -05:00
arvidn 72a3771b87 attempt to fix logic around around actually closing udp sockets (specifically the SSL UDP socket) 2016-02-21 20:00:55 -05:00
arvidn d8b88ba381 include protocol in portmap_alert 2016-02-21 19:16:00 -05:00
arvidn cdfdbfd6aa fix port mapping for SSL UDP socket 2016-02-21 17:40:27 -05:00
arvidn 967ec412a5 Merge branch 'RC_1_1' 2016-02-21 15:21:33 -05:00
arvidn cc8066bf11 properly deprecated adding torrents by http url 2016-02-21 11:31:42 -05:00
arvidn 3f3b366ed5 be a bit more strict about when the STL containers need complete types (to make it build under GCC with concept checks enabled). add proper assignment operator to types used in STL containers 2016-02-21 11:29:01 -05:00
arvidn 3ff4c0e348 add start of a tutorial 2016-02-20 17:28:41 -05:00
arvidn 5817db01e7 documentation fix 2016-02-20 15:57:20 -05:00
arvidn a5d131b1bb post fastresume_reject_alerts when building with deprecated functions enabled 2016-02-20 13:26:21 -05:00
arvidn cc49b876bb add flag for initializing m_need_save_resume_data when adding torrent 2016-02-20 13:26:21 -05:00
arvidn c9d7e54d7b make tests pass 2016-02-20 12:50:52 -05:00
arvidn 8135ea326f rename async_check_fastresume to async_check_files, and make it take an add_torrent_params object instead of bencoded resume data 2016-02-20 02:00:07 -05:00
arvidn 4ef55073e3 transition mapped_files over to the new add_torrent_params 2016-02-20 02:00:07 -05:00
arvidn 6e88771981 transition merkle tree support over to the new read_resume_data() 2016-02-20 02:00:07 -05:00
arvidn 6223057b1e added support for pieces, verified pieces and piece_priorities in new resume data scheme 2016-02-20 02:00:07 -05:00
arvidn a60bbe0a1c fix loading of peers and banned_peers from resume_data 2016-02-20 02:00:07 -05:00
arvidn 35b998f90d introduce backwards-compatibility, of loading resume data and merging it with the add_torrent_params. add some more missing fields. deprecate some more flags in add_torrent_params 2016-02-20 02:00:07 -05:00
arvidn e0ee12d4f3 remove m_resume_data and m_resume_data_loaded members from torrent 2016-02-20 02:00:06 -05:00
arvidn 59da9f35a8 extend some documentation 2016-02-20 02:00:06 -05:00
arvidn 197ded5a0d revamp the way resume data is read, by providing a function for the client to parse resume data, capturing it in add_torrent_params 2016-02-20 02:00:06 -05:00
arvidn 9f45156b5a Merge branch 'RC_1_1' 2016-02-18 21:46:46 -05:00
arvidn 2e5e11859f soft deprecate support for adding torrents by HTTP URL (remove from documentation) 2016-02-18 18:34:45 -05:00
arvidn 07bee1f690 fix typo in include makefile 2016-02-17 17:12:47 -08:00
arvidn 72a24b63ba use bind_to_device for listen sockets 2016-02-12 15:46:18 -05:00
arvidn 6d77000ab0 deprecate ssl_listen setting. instead ssl sockets are specified by an 's' suffix of the port in listen_interfaces. 2016-02-12 15:46:12 -05:00
arvidn 887e79eb22 improve support for listening on multiple sockets and interfaces, with the listen_interfaces setting 2016-02-12 15:44:17 -05:00
arvidn 3842a0a197 Merge branch 'RC_1_1' 2016-02-12 15:43:13 -05:00
Arvid Norberg 6b87c4dff2 Merge pull request #476 from ssiloti/RC_1_1
Fix note in listen_interfaces docs
2016-02-12 02:00:13 -05:00
Steven Siloti 7d5a3bf4ee Fix note in listen_interfaces docs
Apparently rst2html doesn't appreciate tabs. Also make the note a proper rst
directive, I think this was the intention.
2016-02-11 20:29:07 -08:00
Alden Torres feb2fd34d6 Documentation typos and new lines 2016-02-11 19:53:43 -05:00
arvidn 58f8fb164e Merge branch 'RC_1_1' 2016-02-10 18:28:54 -05:00
arvidn ee14337894 revert listen_failed_alert::port 2016-02-10 18:28:34 -05:00
arvidn 126ce22cb9 Merge branch 'RC_1_1' 2016-02-10 02:10:02 -05:00
arvidn 6ad2b0709e correct the documentation for listen_interfaces 2016-02-10 02:07:41 -05:00
arvidn d1e4b57ad4 rename a few members of session_impl to be more descriptive 2016-02-08 18:15:47 -05:00
arvidn e7a0a9f49a fix properly deprecating resolve-countries feature 2016-02-08 17:56:59 -05:00
arvidn 4f40f84a7e Merge branch 'RC_1_1' 2016-02-08 15:28:34 -05:00
Arvid Norberg 7b1a8ff6f1 Merge pull request #465 from arvidn/got-tracker-1.1
removed unused field in torrent
2016-02-07 14:50:08 -05:00
arvidn f4627db97f removed unused field in torrent 2016-02-07 02:37:32 -05:00
arvidn f8a53d17ec un-deprecate the endpoint field in listen_failed_alert 2016-02-07 02:12:58 -05:00
arvidn 660647b590 improve abstraction level of stats cache and fix test 2016-02-06 15:51:00 -05:00
arvidn ae7058e119 remove the timestamps and file sizes from the resume data. This makes saving resume data alot cheaper, since it doesn't have to go via the disk thread. It also removes an old-standing API usage issue where there was easily a race condition introduced between saving resume data and pausing a torrent. 2016-02-06 15:50:55 -05:00
arvidn 6b63016b05 Merge branch 'RC_1_1' 2016-02-05 01:09:11 -05:00
Alden Torres 930a33b59c Fix compilation with BOOST_NO_IOSTREAM 2016-02-03 13:35:23 -05:00
arvidn b0cc0f84ab support NULL being passed as the listen interface to session constructor 2016-02-02 23:17:51 -05:00
arvidn 3a4f957b63 Merge branch 'RC_1_1' 2016-02-02 02:02:24 -05:00
arvidn 88b7e3768f add sim test for optimistic unchoke round-robin distribution 2016-02-01 20:28:30 -05:00
arvidn f2ce2284da optimize the optimistic unchoke logic. extend the API for extensions to be able to affect the order of optimistic unchokes 2016-02-01 20:28:22 -05:00
Alden Torres 9f3d13281f Documentation typos 2016-02-01 15:00:46 -05:00
arvidn e113e8cdf3 minor cleanup of listen sockets 2016-01-31 19:40:31 -05:00
arvidn e584c30b29 forward-port reuse address patch for windows 2016-01-31 18:16:26 -05:00
arvidn acd929381e restore the endpoint field in listen_failed_alert (but deprecated) and add a port field 2016-01-31 10:20:10 -05:00
arvidn 9f1b27cf5f Merge branch 'RC_1_1' 2016-01-30 01:47:19 -05:00
arvidn efe32c6a0e rewrite most of web_peer_connection::on_receive to make it a lot simpler and fix edge cases with pad-files 2016-01-28 01:58:33 -05:00
arvidn f31d17c9c5 allow specifying which tracker to scrape in torrent_hadnle::scrape_tracker 2016-01-26 18:14:32 -05:00
arvidn 2a0e64df46 add run-time check to file_storage::map_block and improve its documentation 2016-01-22 17:17:35 -05:00
arvidn 3153521367 merged RC_1_1 into master 2016-01-21 23:59:30 -05:00
Alden Torres 5c94b286b0 Removed file::m_path windows specific field
Removed default_storage::sparse_end
Typos
2016-01-21 12:11:33 -05:00
Alden Torres 218d33c545 Documentation typos and minor cleanup 2016-01-20 20:48:23 -05:00
Arvid Norberg c984ea807d Merge pull request #409 from arvidn/RC_1_1
merge RC 1 1
2016-01-19 01:24:34 -05:00
arvidn b7b7ae199a fix msvc build 2016-01-19 01:19:16 -05:00
arvidn 2262a3dcaf Merge branch 'RC_1_1' 2016-01-18 20:51:37 -05:00
arvidn 9231af24b4 update changelog 2016-01-18 15:36:04 -05:00
arvidn d5203c67d9 add DHT rate limit test (simulation). introduce a new counter for dropped incoming dht messages. 2016-01-18 14:34:42 -05:00
arvidn 06b52f1421 some cleanup of the dht_socket_interface and fix tests and simulations to build with the dht disabled 2016-01-18 14:34:42 -05:00
arvidn 297b8943d0 move the DHT rate limiter into the dht_tracker class and remove the rate_limited_udp_socket type. This further simplifies the udp socket (preparing for moving it into the listen_socket structure) 2016-01-18 14:34:41 -05:00
arvidn 1f9f588e75 merge copyright year update and changelog from RC_1_0 2016-01-17 18:57:46 -05:00
arvidn 3cd57b59e0 when a tracker is force announced or scraped by the user/client, the resulting response or failure alert is now posted regardless of the alert mask. Since it's user initiated, it's reasonable to expect the user to be interested in the response 2016-01-16 21:24:04 -05:00
arvidn 651b473908 add unit test for routing_table::update_node_id 2016-01-11 23:47:27 -05:00
arvidn f4d643bd2d instead of restarting the whole DHT when changing external IP, just rebuild the routing table and change the node IDs 2016-01-11 21:17:25 -05:00
Alden Torres 20d8f4e3f7 Removed unused fields in field class 2016-01-11 12:07:36 -05:00
Arvid Norberg 4e86c2257a Merge pull request #376 from arvidn/discardable-alerts
remove the concept of non-discardable alerts
2016-01-10 19:59:05 -05:00
arvidn c16e49ec43 remove the concept of non-discardable alerts 2016-01-10 16:12:16 -05:00
Jan Berkel 7c7ad60df6 Update comment 2016-01-10 15:09:28 +00:00
Alden Torres 0f442f59f3 Avoid pass IPv6 address to current implementation of DHT while adding a node 2016-01-09 18:46:19 -05:00
Alden Torres 7b34379c87 Doc typos 2016-01-05 08:31:04 -05:00
arvidn a0678240f3 forward port fixes from RC_1_0 2016-01-03 23:34:57 -05:00
Alden Torres b20096f0db Comments typos 2016-01-02 11:46:10 -05:00
arvidn e3ba811ae4 improve name of m_timer in dht_tracker 2016-01-01 16:42:44 -05:00
arvidn 01e6b93854 simplify and improve unit test for distance_exp. make some immutable variables const in the DHT implementation. instead of waking up periodically just to check if it's time to refresh the DHT secret key, set the timer to only wake up to refresh the key. If we don't have a DHT observer (to ask for our external IP) or if we don't know our external IP, don't generate a node ID based on 0.0.0.0, just generate a random ID instead. Simplified and improved node replacement logic in the routing table a little bit 2016-01-01 16:42:37 -05:00