Commit Graph

2672 Commits

Author SHA1 Message Date
Arvid Norberg 72d015c86a extend piece_picker unit test 2015-02-12 03:16:53 +00:00
Arvid Norberg 7395a91bf4 clean up piece picker interface to make piece_pos private again 2015-02-08 22:15:59 +00:00
Arvid Norberg 9fb98b1151 remove speed affinity feature in piece-picker and peers 2015-02-08 21:17:00 +00:00
Arvid Norberg 497f7a4a27 piece picker fix for random mode 2015-02-08 21:12:10 +00:00
Arvid Norberg a8623a9b23 request partial pieces in rarest-first order 2015-02-08 18:01:29 +00:00
Arvid Norberg 1b9b6f7292 support http basic auth in http_connection passed in from the outside as opposed to part of the url 2015-02-08 16:03:09 +00:00
Arvid Norberg 2a0789594d fix linux build 2015-02-08 00:59:54 +00:00
Arvid Norberg 9b91508c38 clean up session_interface and tracker_manager a bit. work on making tracker_manager more testable 2015-02-01 14:30:43 +00:00
Arvid Norberg 097d5b484d improve piece picker support for reverse picking (used for snubbed peers) to not cause priority inversion for regular peers 2015-01-26 02:04:58 +00:00
Arvid Norberg bc9281a27c deprecate file_entry (used by file_storage) and clean up the add_file overload that borrows memory (and improve implementation and documentation). The python bindings were updated to more closely match the c++ API (specifically actually using file_storage) 2015-01-21 15:46:12 +00:00
Arvid Norberg 5cfd662352 msvc fix 2015-01-21 06:48:23 +00:00
Arvid Norberg 3286437a7d extend peer_list unit test and fix some bugs 2015-01-20 23:56:45 +00:00
Arvid Norberg f4ee43a1f9 fix linux build 2015-01-20 17:05:45 +00:00
Arvid Norberg f6474f5717 fix wakeup profiling to not grow memory usage indefinitely 2015-01-20 16:15:45 +00:00
Arvid Norberg d9e69db0cb actually make use of the max_failcount setting 2015-01-20 06:26:22 +00:00
Arvid Norberg 54eb499803 make post_torrent_updates more flexible by allowing to pass flags to it. The same flags as torrent_handle::status. Also make the default return accurante progress 2015-01-20 02:46:23 +00:00
Arvid Norberg d8d069675c improve piece picker to better support torrents with very large pieces and web seeds 2015-01-20 02:34:55 +00:00
Arvid Norberg 431fa2ac55 fix python binding build (and expose the new dht stats alert) 2015-01-18 21:36:24 +00:00
Arvid Norberg a7bec127f1 relying on local statics being threadsafe still does not seem safe on msvc 2015-01-18 16:52:39 +00:00
Arvid Norberg 0afea4bb3e move some DHT verbose stats logging over to performance counters 2015-01-18 01:06:36 +00:00
Arvid Norberg 22a02f4a1f make dht_tracker be held by shared_ptr instead of intrusive_ptr. remove redundant performance counter (total dht sent/received). report DHT IP overhead to the IP overhead counters 2015-01-17 22:06:30 +00:00
Arvid Norberg 58d93e5aa1 add new (non-deprecated) access to dht stats, asynchronously via an alert 2015-01-17 17:02:58 +00:00
Arvid Norberg b9b657c3d4 post alerts instead of writing to a file, in local peer discovery, when logging is enabled 2015-01-16 23:01:14 +00:00
Arvid Norberg f914943e58 fix some compile warnings 2015-01-16 20:51:39 +00:00
Arvid Norberg 3fbc0f05c6 add unit test for default_storage::rename 2015-01-16 04:02:44 +00:00
Arvid Norberg d140d71e1a extend logging of UDP tracker announces (to track down unit test flapping) 2015-01-13 21:34:43 +00:00
Arvid Norberg fb058f602f aux::session_settings is used by a test 2015-01-09 00:42:57 +00:00
Arvid Norberg c9903bdaf2 use O_SYNC when available 2015-01-07 23:21:54 +00:00
Arvid Norberg 0f37e3403c transition from intrusive_ptr to shared_ptr. don't export initialize_default_settings 2015-01-06 08:08:49 +00:00
Arvid Norberg b808cc8b2d remove some TODO comments 2015-01-05 12:32:30 +00:00
Arvid Norberg bb33b061e4 clean up session_impl 2015-01-04 22:26:26 +00:00
Arvid Norberg 35b41858cf deprecated session_status and session::status() in favor of performance counters 2015-01-04 21:31:02 +00:00
Arvid Norberg 1218e328cd SSL fixes (especially over uTP) 2015-01-04 01:04:56 +00:00
Arvid Norberg d68471805e improve support for HTTP where one direction of the socket is shut down 2015-01-03 22:38:17 +00:00
Arvid Norberg f839b8c9b4 factor creating of directories into default_storage::open_file to make that functionality more robust and fix a bug where moving files out of the part-file would fail because the directories hadn't been created yet 2015-01-03 16:57:21 +00:00
Arvid Norberg 21d1f6f649 more dynamic link build fixes 2015-01-02 11:11:09 +00:00
Arvid Norberg 9b0f7bbe72 move function from header to .cpp file 2015-01-02 00:51:09 +00:00
Arvid Norberg 299b6338b6 fix documentation 2015-01-01 23:35:28 +00:00
Arvid Norberg dbf461ac23 make DHT dos mitigation parameters configurable via dht_settings 2015-01-01 23:24:21 +00:00
Arvid Norberg f77e12ac04 clean up symbol exports 2015-01-01 20:25:39 +00:00
Arvid Norberg 98372ff974 regenerate html 2014-12-31 23:18:11 +00:00
Arvid Norberg 092362e9bc remove internal fields from web_seed_entry 2014-12-31 22:05:34 +00:00
Arvid Norberg 73a2a4e51d fix comment formatting in settings_pack 2014-12-31 17:00:27 +00:00
Arvid Norberg 764b09d6b5 make the peer fingerprint a regular setting and remove it from the main session constructor argument list 2014-12-31 15:51:45 +00:00
Arvid Norberg 1039d4ae86 tweak some TODO comments and fix one 2014-12-31 14:41:35 +00:00
Arvid Norberg e9414894e2 separate the configuration of crypto library and whether protocol encryption is enabled or not. make protocol encryption always use the built-in rc4 and tommath code. SHA-1 hashing is done by the crypto library 2014-12-29 16:50:22 +00:00
Arvid Norberg ae47823970 don't fail renaming a file in a torrent just because it doesn't exist (and the destination directory doesn't exist) 2014-12-26 21:25:37 +00:00
Arvid Norberg 75ae204cf4 remove orphaned function declaration 2014-12-25 18:26:19 +00:00
Arvid Norberg 0977d94dbc merged changes from RC_1_0 2014-12-25 11:24:02 +00:00
Arvid Norberg 20b4608c38 optimize copying torrent_info and file_storage objects 2014-12-17 05:33:16 +00:00
Arvid Norberg 13a9c3c78d we no longer support including file-hashes when creating torrents 2014-12-17 03:50:01 +00:00
Arvid Norberg 6214aef0c5 merged changes from RC_1_0 2014-12-17 03:19:42 +00:00
Arvid Norberg 465832bf2b fix comment formatting 2014-12-17 02:48:22 +00:00
Arvid Norberg ae04b80fe1 cancel non-critical DNS lookups when shutting down, to cut down on shutdown delay 2014-12-17 02:44:27 +00:00
Arvid Norberg 1ce3bdf0d0 update send and received byte performance counters immediately, to avoid the one second quantization in stats 2014-12-10 05:49:17 +00:00
Arvid Norberg 20b9a01a09 pack members of pending_buffer a bit 2014-12-10 01:05:40 +00:00
Arvid Norberg 09bc1550e9 simplify the debug logging mechanism. There's now only one build option, logging=on or logging=off. When logging is enabled, the log level is controlled by the alert mask. All log events are delivered as alerts and it's up to the client to write them to disk in whatever way seems appropriate. removed the pointless logger plugin 2014-12-09 09:08:26 +00:00
Arvid Norberg 4eaec6d87f instead of using a fixed request timeout for every peer, have an adaptable one based on the average download time for a block 2014-12-08 17:06:04 +00:00
Arvid Norberg c4e5df8e4d remove the concept of timeout_extend in piece request timeouts. if a request times out, cancel it as soon as it holds up the completion of a piece 2014-12-07 22:22:38 +00:00
Arvid Norberg 790ef041bf merged changes from RC_1_0 2014-12-07 07:22:39 +00:00
Arvid Norberg 1ed1963f29 remove size_type typedef in favor of boost::int64_t 2014-12-03 04:32:50 +00:00
Arvid Norberg ac9a734149 dont use INT16_MIN 2014-12-02 20:06:30 +00:00
Arvid Norberg 4376d26399 merged changes from RC_1_0 2014-12-01 10:43:34 +00:00
Arvid Norberg 362b54421d merged changes from RC_1_0 2014-11-30 10:07:19 +00:00
Arvid Norberg 601f8c0476 merged changes from RC_1_0 2014-11-29 09:12:44 +00:00
Arvid Norberg f98c7223b2 merged changes from RC_1_0 2014-11-29 01:53:22 +00:00
Arvid Norberg f73fe335e2 deprecated flag should not affect ABI 2014-11-26 10:17:44 +00:00
Arvid Norberg 29fb79f60c merged changes from RC_1_0 2014-11-24 04:25:05 +00:00
Arvid Norberg 211603b7a5 merged fixed include 2014-11-23 06:23:49 +00:00
Arvid Norberg 658e2ceefd merged Steven Siloti's peer crypto patch into trunk 2014-11-23 06:14:47 +00:00
Arvid Norberg 179df62379 merged changes from RC_1_0 2014-11-20 05:53:12 +00:00
Arvid Norberg edfa38cd30 merged changes from RC_1_0 2014-11-17 03:41:01 +00:00
Arvid Norberg 0b711f1280 remove unused variables. add some comments 2014-11-17 03:10:00 +00:00
Arvid Norberg bfb0c4fe80 merged changes from RC_1_0 2014-11-12 16:57:59 +00:00
Arvid Norberg f7221e277f add unit test for crc32c and fix cpuid warning 2014-11-10 02:05:46 +00:00
Arvid Norberg 77363ad93e fix file progress calculation bug (with unit test) 2014-11-08 18:36:54 +00:00
Arvid Norberg aae56c991c merged changes from RC_1_0 2014-11-08 16:58:18 +00:00
Arvid Norberg 601f0dc434 merged changes from RC_1_0 2014-11-03 06:15:51 +00:00
Arvid Norberg 3742fd2699 merged changes from RC_1_0 2014-11-02 09:41:29 +00:00
Arvid Norberg 34af25beaa merged chagnes from RC_1_0 2014-11-01 22:47:56 +00:00
Arvid Norberg 85cc72835e finally rename policy to peer_list 2014-10-26 07:34:31 +00:00
Arvid Norberg 1c448331d5 fix stats_alert with recent changes to stats 2014-10-25 23:10:07 +00:00
Arvid Norberg 935eea9d0b some more fixes to cache_status 2014-10-25 21:28:57 +00:00
Arvid Norberg 83394f54f9 transition fenced job histogram to session stats gauges. deprecate it from cache_status 2014-10-25 20:59:54 +00:00
Arvid Norberg 0bcbe433ed deprecate most of cache_status type (use session stats instead) 2014-10-25 20:07:50 +00:00
Arvid Norberg d9388f9898 moved around some hostname resolver related TODO comment. removed unused hostname query objects 2014-10-23 00:19:11 +00:00
Arvid Norberg e09a2b770d factored out choke comparison functions into choker.cpp 2014-10-22 22:30:04 +00:00
Arvid Norberg 02a9ea18b7 deprecated auto_expand_choker. started factoring out choker logic into its own translation unit (preparing for making it unit testable) 2014-10-22 22:06:56 +00:00
Arvid Norberg 907dc9dddd merged changes from RC_1_0 2014-10-22 07:05:10 +00:00
Arvid Norberg a25345b1e7 fix typo 2014-10-21 23:44:50 +00:00
Arvid Norberg ca6bb1ebd9 minor cleanup of open_listen_port internally 2014-10-21 22:08:48 +00:00
Arvid Norberg bcc5d66e0c now that we use boost.chrono, no need for custom timer or macros controlling which timer to use 2014-10-21 21:51:12 +00:00
Arvid Norberg 3db32f67b5 remove option TORRENT_DISABLE_FULL_STATS 2014-10-21 21:45:35 +00:00
Arvid Norberg ce9ff9885b move DHT transfer counters to performance_counters 2014-10-21 21:36:45 +00:00
Arvid Norberg 7249122329 move tracker transfer counters over to use performance_counters internally as well 2014-10-21 21:24:15 +00:00
Arvid Norberg bb3e399ce2 convert endpoint list into vector in udp_tracker_connection 2014-10-21 20:49:36 +00:00
Arvid Norberg cea5585993 remove stats logging functionality from libtorrent. This has been moved to a helper class part of libtorrent-webui, utility library 2014-10-21 19:58:12 +00:00
Arvid Norberg 9b37efe6a8 first steps towards removing session_impl dependency from tracker connections, to improve their testability 2014-10-21 00:28:51 +00:00
Arvid Norberg ffb66ec156 transition tracker_connections to use shared_ptr instead of intrusive_ptr. optimize udp tracker connection lookups by using unordered map instead of linear search. 2014-10-20 20:44:05 +00:00
Arvid Norberg 2f077d8efa fix http_connection timeout issue 2014-10-16 05:33:09 +00:00