Commit Graph

3844 Commits

Author SHA1 Message Date
Arvid Norberg 2877903e75 replaced std::map with boost::unordered_map for torrent list, to scale better with many torrents 2011-12-21 21:21:19 +00:00
Arvid Norberg e47a1eb5b2 fix state subscriptions for checking torrents 2011-12-19 05:55:38 +00:00
Arvid Norberg 7f3aac3959 fix issue with unchoke_slots_limit not preserving its value correctly 2011-12-19 05:53:11 +00:00
Arvid Norberg ef724014aa deprecated per-peer rate limits (and removed them from libtorrent_aio) 2011-12-18 12:52:09 +00:00
Arvid Norberg 78f16cedd9 deprecate torrent::set_ratio 2011-12-18 07:18:42 +00:00
Arvid Norberg 0370fb7632 don't filter local peers received from a non-local tracker 2011-12-12 07:03:51 +00:00
Arvid Norberg 7ee42393a5 simplified DHT parsing a bit 2011-12-01 04:01:36 +00:00
Arvid Norberg 8e8f798905 get rid of read-recurse hack 2011-11-30 20:07:18 +00:00
Arvid Norberg cc6bc5ba17 back-out attempt to make disk cache hits faster. it corrupts data 2011-11-28 17:51:14 +00:00
Arvid Norberg a3f0c04090 fix windows web seed path divider issue with recent web seeding feature 2011-11-28 11:22:51 +00:00
Arvid Norberg c4dded04ca fixed small memory leak in DHT 2011-11-28 11:11:29 +00:00
Arvid Norberg 27b25017f2 fix bug in policy::erase_peers and simplified the logic some 2011-11-28 09:55:00 +00:00
Arvid Norberg 47e81ff90b fixed uninitialized counter for stats logging 2011-11-28 01:27:55 +00:00
Arvid Norberg 413c04abcf fixed windows network path recognition issue 2011-11-27 10:23:50 +00:00
Arvid Norberg f979f7a77b make receive_buffer() not return a range exceeding the actual buffer 2011-11-27 01:08:28 +00:00
Arvid Norberg c3695d9fbb add have_piece function to torrent_handle 2011-11-27 00:01:13 +00:00
Arvid Norberg c279870516 add web seed support for torrents with pad files 2011-11-26 20:48:31 +00:00
Arvid Norberg ce90e17e2b web seeding fix for multi file torrents with a single file 2011-11-25 21:05:39 +00:00
Arvid Norberg faf11fc27d web seed fix 2011-11-25 10:56:33 +00:00
Arvid Norberg 6aba061cb8 fix pad file bug in create_torrent and amend docs about pad files 2011-11-25 09:45:28 +00:00
Arvid Norberg 38889d4bda fixed debug iterator assert 2011-11-24 23:01:35 +00:00
Arvid Norberg cab1f3d207 fix issue when peer list is full, previously we would sometimes reject new connections 2011-11-24 17:50:57 +00:00
Arvid Norberg 9250b551d9 fix stats build 2011-11-21 06:21:06 +00:00
Arvid Norberg 5d8ce01c7a silence valgrind warning about uninitialized memory 2011-11-20 20:49:18 +00:00
Arvid Norberg 0bcdf7706c fix potential invalid access when shutting down broadcast socket 2011-11-19 22:17:13 +00:00
Arvid Norberg 3d04b5cc49 fix logging formatting bug in utp_stream 2011-11-19 20:06:20 +00:00
Arvid Norberg 85ef2528c6 serve cache hits without a round-trip to the disk thread for improved seeding performance 2011-11-16 07:09:12 +00:00
Arvid Norberg fdc5e7e8b2 keep track of where redundant downloads come from. make the timing out of block requests more reasonable in an attempt to actually complete pieces from other peers when stuck on a slow one 2011-11-16 02:29:59 +00:00
Arvid Norberg c342355ab2 back-ported an iterator-debug fix from libtorrent_aio 2011-11-16 02:27:28 +00:00
Arvid Norberg 0320546fee fix build 2011-11-15 06:47:02 +00:00
Arvid Norberg c4232065d8 introduced a more scalable API for torrent status updates (post_torrent_updates()) 2011-11-15 02:34:00 +00:00
Arvid Norberg 5576a98d04 log session_stats to /var/log/ on unixes 2011-11-13 08:12:11 +00:00
Arvid Norberg 4d49d0f20d windows storage fixes 2011-11-13 04:12:56 +00:00
Arvid Norberg 344e6c8a3b align error codes 2011-11-13 03:35:03 +00:00
Arvid Norberg 3eb1b1839d add verbose peer logging for setting TOS byte 2011-11-10 09:18:55 +00:00
Arvid Norberg 2330520c51 change the add_torrent_params API to use flags instead of a bunch of bools (but leave it backwards compatible) 2011-11-08 05:36:22 +00:00
Arvid Norberg 57e7f14024 fixed rare piece picker bug 2011-11-07 04:31:48 +00:00
Arvid Norberg f39b6b19e9 fix initialization issue of fast_resend_seq_nr for incoming uTP connections. Also log the fast_resend_seq_nr 2011-11-06 00:11:33 +00:00
Arvid Norberg 8c0672a9b7 fix overflow in utp logging 2011-11-05 18:28:32 +00:00
Arvid Norberg 4a6e012a5f some uTP tweaks. experimental slow start mode (disabled) 2011-11-05 09:30:38 +00:00
Arvid Norberg 3507e5f909 fix ut_metadata logging 2011-11-03 22:20:37 +00:00
Arvid Norberg 9a49372368 fix invariant check now that interest is calculated lazily 2011-11-03 09:20:16 +00:00
Arvid Norberg 2d6d76c525 fix mistake in last disk I/O patch 2011-11-03 09:19:43 +00:00
Arvid Norberg 1d238fd1d8 ignore EOF error from readv() in unaligned_write 2011-11-03 04:56:24 +00:00
Arvid Norberg 3b1a332d6e fix error reporting for session::add_torrent 2011-11-02 17:08:47 +00:00
Arvid Norberg 0d3eb71ba1 return -1 on failure on truncating file 2011-11-02 09:07:54 +00:00
Arvid Norberg 32dfc469c3 use NtSetInformationFile to truncate files in unbuffered mode (to avoid having to close and re-open them) 2011-11-02 09:02:28 +00:00
Arvid Norberg 99a209e3c9 web_peer_connection fix and assert 2011-11-02 08:04:16 +00:00
Arvid Norberg daedc43d3c fix release build 2011-11-02 05:28:25 +00:00
Arvid Norberg 36c9c663d3 fixed missing includes 2011-11-02 04:50:04 +00:00
Arvid Norberg ca9122861a merged unaligned write fix over from RC_0_15 2011-11-02 04:45:22 +00:00
Arvid Norberg 3c602e8fe8 remove redundant include 2011-11-01 05:41:10 +00:00
Arvid Norberg 9a91518b9a add assert in web_peer_connection 2011-10-30 06:13:34 +00:00
Arvid Norberg ec80a85bdb fixed connection setup and teardown issues 2011-10-28 23:34:55 +00:00
Arvid Norberg b85727c633 another channel state fix 2011-10-28 23:08:52 +00:00
Arvid Norberg dfda3c9a95 another channel state fix 2011-10-28 22:56:23 +00:00
Arvid Norberg 85ff124503 one more channel stat fix 2011-10-28 21:38:45 +00:00
Arvid Norberg becd714bc8 channel state fix 2011-10-27 08:42:51 +00:00
Arvid Norberg 602e0089f9 fixed silly typo 2011-10-26 01:00:53 +00:00
Arvid Norberg 1c8a7b6343 fixed invalid torrent_status::finished_time 2011-10-26 00:58:21 +00:00
Arvid Norberg e58e27e83a change peer_states to be a bitmask (bw_limit, bw_network, bw_disk) 2011-10-25 17:34:42 +00:00
Arvid Norberg da4998bd46 minor fix to broadcast socket patch 2011-10-25 10:28:54 +00:00
Arvid Norberg 0a2b352795 possible dangling pointer fix in broadcast_socket 2011-10-25 05:55:32 +00:00
Arvid Norberg 9afd09d797 optimize sending buffers on peer sockets by corking and uncorking 2011-10-24 04:22:53 +00:00
Arvid Norberg 5e3e4c6146 fixed typo in hash-piece parser 2011-10-23 09:21:07 +00:00
Arvid Norberg 15f20c887d fix msvc build 2011-10-22 17:44:40 +00:00
Arvid Norberg b430152174 post disk job completions in batches to save CPU in the network thread 2011-10-19 05:46:49 +00:00
Arvid Norberg d3fb55e1da optimize socket send buffers a bit 2011-10-19 02:40:37 +00:00
Arvid Norberg a9b51e1579 fix overflow issue when determining number of outstanding bytes 2011-10-18 16:22:36 +00:00
Arvid Norberg 95e462e750 windows version of CPU time measurement 2011-10-18 00:42:05 +00:00
Arvid Norberg 7d20c0b0c4 log CPU usage of network thread 2011-10-17 17:12:08 +00:00
Arvid Norberg 8b6522a763 log buffer sizes passed to read() and write() at the socket layer (to identify performane problems) 2011-10-17 06:54:02 +00:00
Arvid Norberg aab4cb6937 log number of asio messages passed through the queue per second (to track down performance issue) 2011-10-17 05:17:21 +00:00
Arvid Norberg 14e7c9f480 queue position fix 2011-10-15 07:11:50 +00:00
Arvid Norberg ef1ee13d58 fix bug in flush_cache_blocks 2011-10-13 02:19:55 +00:00
Arvid Norberg 01405f32ee added async_add_torrent for increased performance when adding many torrents (no documentation yet though) 2011-10-12 10:27:17 +00:00
Arvid Norberg e6324670a1 fix issue in write_unaligned when writing to a file it's too short 2011-10-11 08:43:15 +00:00
Arvid Norberg e1bfd8541f fixed bugs in dont-have and upload-only extension messages 2011-10-11 07:20:12 +00:00
Arvid Norberg 744a3be65d also use separate lower limits for up and download rates in the TCP/uTP mixed mode algorithm 2011-10-11 05:05:09 +00:00
Arvid Norberg 8aed4eaa7f improve TCP/uTP mixed mode algorithm by only taking peers into account that have outstanding requests (and want to send or expect to receive). Also throttle upload and download independently 2011-10-11 05:00:35 +00:00
Arvid Norberg 2741563711 set alert_mask early 2011-10-08 09:52:36 +00:00
Arvid Norberg f20a63e817 fix web seed race condition when using a proxy 2011-09-30 09:09:33 +00:00
Arvid Norberg d535e6b1ee fix setting of disk_io_write_mode and disk_io_read_mode in set_settings 2011-09-28 18:14:48 +00:00
Arvid Norberg d54c85d31b log uTP receive delay in stats log 2011-09-28 00:03:12 +00:00
Arvid Norberg b078f908f0 one more attempt to fix no-readback cache algorithm 2011-09-27 10:46:56 +00:00
Arvid Norberg b3d2877274 more no-readback fixes 2011-09-27 07:50:58 +00:00
Arvid Norberg d8641705e3 commented out expensive invariant check in disk cache 2011-09-27 04:56:57 +00:00
Arvid Norberg f6b6b57c0e fix avoid-readback cache algorithm 2011-09-27 04:05:05 +00:00
Arvid Norberg 20e261e80a log piece size for pieces that finishes 2011-09-26 02:27:23 +00:00
Arvid Norberg da0f992c47 fix logging build 2011-09-25 23:42:56 +00:00
Arvid Norberg 451c31828f changed semantics of send_buffer_watermark_factor to be specified as a percentage 2011-09-23 21:12:28 +00:00
Arvid Norberg 85db40e2c5 log outstanding reading bytes from peers in stats log 2011-09-23 20:57:42 +00:00
Arvid Norberg cda738abc6 minor logging fix 2011-09-23 05:12:29 +00:00
Arvid Norberg bf4ba45bf3 remove invalid assert in session_impl::listen_on 2011-09-22 21:30:46 +00:00
Arvid Norberg 8c23b0e3ce allow NULL to be passed to create_torrent::set_comment and create_torrent::set_creator 2011-09-22 21:24:50 +00:00
Arvid Norberg 976a50384a some more struct layout optimization 2011-09-22 10:37:47 +00:00
Arvid Norberg 5a7fe934bf fix torrent_info swap with openssl 2011-09-21 09:40:14 +00:00
Arvid Norberg 7a50255865 improved struct layout debug logging and optimized some structs 2011-09-21 09:27:07 +00:00
Arvid Norberg 61ceacca9b fix non-openssl logging build 2011-09-21 03:51:07 +00:00
Arvid Norberg 06cad3a245 fix UPnP issue for routers with multiple PPPoE connections 2011-09-18 20:28:06 +00:00
Arvid Norberg d27430a8c3 clear the queued packets on socks5 error, as a precaution 2011-09-17 23:03:46 +00:00
Arvid Norberg 2a6b019431 don't fail socks5 on 'socket already open' 2011-09-17 23:01:39 +00:00
Arvid Norberg 4e1af65fe0 fix issue where event=stopped announces wouldn't be sent when closing session 2011-09-17 21:15:42 +00:00
Arvid Norberg 52a0760e5b fix release asserts 2011-09-17 05:16:05 +00:00
Arvid Norberg f5b5160169 add incoming_connection_alert for logging all successful incoming connections 2011-09-17 01:44:05 +00:00
Arvid Norberg 986cee3417 fix tracker stopping issue on session shutdown 2011-09-16 08:34:17 +00:00
Arvid Norberg c83865b8ac move set_alert_dispatch out of deprecated function ifdef block 2011-09-16 04:03:54 +00:00
Arvid Norberg 8e6c159c83 fix possible hang in file::readv() on windows 2011-09-15 09:43:29 +00:00
Arvid Norberg 6271ee58f6 fix overflow issue in default disk write queue size limit 2011-09-14 06:22:45 +00:00
Arvid Norberg fb89e58901 fix build issue 2011-09-13 07:02:14 +00:00
Arvid Norberg c952f30820 slight improvement 2011-09-13 02:38:50 +00:00
Arvid Norberg ef496eb00c tracker retry fix 2011-09-13 02:23:18 +00:00
Arvid Norberg 460799d600 fix CPU busy loop issue in tracker announce logic 2011-09-12 05:21:16 +00:00
Arvid Norberg 469414d486 initial BitTorrent over SSL support 2011-09-12 03:51:49 +00:00
Arvid Norberg 90372b6caf fixed bug in auto manager which would never enable local peer discovery for torrents 2011-09-11 03:39:24 +00:00
Arvid Norberg 675721d971 basic support for bittorrent connections over SSL 2011-09-10 05:52:07 +00:00
Arvid Norberg 38a4b58c3a comment on incorrect assert 2011-09-10 05:37:18 +00:00
Arvid Norberg 09c235c936 solaris file allocation support 2011-09-08 23:08:37 +00:00
Arvid Norberg 012bad4b18 added missing setter function on create_torrent 2011-09-05 07:46:10 +00:00
Arvid Norberg 92bcb9ebfd feature to encrypt peer connections with a secret AES-256 key stored in .torrent file 2011-09-05 05:50:41 +00:00
Arvid Norberg 43c9e640ab honor IOV_MAX when using writev and readv 2011-09-05 05:47:50 +00:00
Arvid Norberg bc1e47a486 solaris fixes 2011-09-04 23:29:47 +00:00
Arvid Norberg 8f1a811306 fix bug in verbose logging with encryption 2011-08-31 20:38:48 +00:00
Arvid Norberg 97ca82984f ssl comment 2011-08-29 02:05:37 +00:00
Arvid Norberg ec74d500a4 clean up encryption code some 2011-08-29 02:00:17 +00:00
Arvid Norberg 0a250c8f36 minor fixes 2011-08-29 00:59:42 +00:00
Arvid Norberg a286a6b4aa initial attempt at verifying the certificate of ssl trackers, by including the certificate in the .torrent file 2011-08-28 21:06:15 +00:00
Arvid Norberg e7185b519b fix some release asserts 2011-08-27 09:47:36 +00:00
Arvid Norberg 7a48e90246 some utp asserts 2011-08-24 05:13:25 +00:00
Arvid Norberg 51c10cc76f on disk errors, only set upload-only for some errors. For all others, pause the torrent. Also fixed some release asserts 2011-08-22 01:37:56 +00:00
Arvid Norberg 51ed06304e deprecated compact storage allocation 2011-08-22 00:51:14 +00:00
Arvid Norberg a2e24faa01 fix logging build with no encryption 2011-08-21 02:04:14 +00:00
Arvid Norberg 6dd9a7d83a don't post 'operation aborted' UDP errors when changing listen port 2011-08-21 01:55:38 +00:00
Arvid Norberg fb06fd928b fixed issue where the next tier in a set of trackers would not be tried for the configuration of announce_to_all_trackers = true and announce_to_all_tiers = false 2011-08-17 23:01:35 +00:00
Arvid Norberg 293e41afff msvc build fix 2011-08-16 09:22:41 +00:00
Arvid Norberg 1c5399b736 piece picker optimization 2011-08-16 06:30:53 +00:00
Arvid Norberg 25ad24ec68 piece picker optimization. O(log n), lookup of downloading pieces instead of O(n) 2011-08-15 04:16:43 +00:00
Arvid Norberg b9be2fe94b fix production assert 2011-08-14 23:55:41 +00:00
Arvid Norberg 88441e4fdc another attempt at optimizing piece picker 2011-08-14 23:16:12 +00:00
Arvid Norberg e89eb6e606 attempt to optimize piece picker 2011-08-14 21:18:06 +00:00
Arvid Norberg 1b470e0961 move the code of chained buffer out to its own cpp file 2011-08-13 23:01:38 +00:00
Arvid Norberg 1d40d7aad9 fixing up some asserts and verbose logging 2011-08-13 18:46:52 +00:00
Arvid Norberg 4abf581f0a utp fix 2011-08-10 05:23:59 +00:00
Arvid Norberg bf2e4df2b2 fix build with std::tr1::array instead of boost::array 2011-08-07 23:40:39 +00:00
Arvid Norberg ecba902ff1 fix cache eviction issue in seed_mode 2011-08-07 07:27:38 +00:00
Arvid Norberg f6554bad08 back ported feature to expose which pieces have been verified in seed_mode and exposes it in client_test (initially implemented in the libtorrent_aio branch) 2011-08-07 07:19:18 +00:00
Arvid Norberg 601443afd3 close files in separate thread on systems where close() may block (Mac OS X for instance) 2011-08-07 04:41:10 +00:00
Arvid Norberg d4958c9286 support for dont-have extension message 2011-08-07 00:41:13 +00:00
Arvid Norberg 3e505f01fc fix issue where torrents could 'get stuck' queued for checking (if they were paused) 2011-08-06 17:54:33 +00:00
Arvid Norberg 47cf5dd27c another piece deadline fix 2011-08-06 10:57:32 +00:00
Arvid Norberg 6a4708ef15 fix potential infinite loop in request_time_critical_pieces 2011-08-05 17:35:09 +00:00
Arvid Norberg 38b91cba40 added some comments to time-critical-pieces 2011-08-05 07:56:07 +00:00
Arvid Norberg 109e527568 added reset_piece_deadline function 2011-08-05 06:31:46 +00:00
Arvid Norberg 0f72cd3148 fix merkle torrents assert 2011-08-05 06:10:12 +00:00
Arvid Norberg 6a01b035be add missing files 2011-08-01 08:03:26 +00:00
Arvid Norberg 855e5a1acb fixed typo in settings map 2011-08-01 04:10:01 +00:00
Arvid Norberg e81dbfb7f8 don't create all directories up front when adding torrents 2011-08-01 00:22:54 +00:00
Arvid Norberg bc2f0c8c5e move disk_buffer_pool out to its own file 2011-07-31 02:24:36 +00:00
Arvid Norberg 7817229f5d improve support for merkle tree torrent creation 2011-07-30 17:35:22 +00:00
Arvid Norberg fbd7d49d7e fix silly typo 2011-07-26 18:44:39 +00:00
Arvid Norberg 98157176c2 return a full bitmask for pieces when seeding, don't allocate empty allocations for 0-sized bitmasks 2011-07-26 01:52:51 +00:00
Arvid Norberg f722d2951a fix earlier time-critical-piece patch 2011-07-24 16:18:54 +00:00
Arvid Norberg ff6da81c4c fix iconv use on mingw 2011-07-23 19:30:23 +00:00
Arvid Norberg 1b353ce5af fix beos build 2011-07-20 05:14:25 +00:00
Arvid Norberg bbb0461bf1 fix possible streaming issue when re-checking 2011-07-14 16:41:03 +00:00
Arvid Norberg 46f585e928 fix file attribute when creating torrents on windows 2011-07-14 14:24:39 +00:00
Arvid Norberg 069b022c6d fixed uTP socket leak 2011-07-14 03:46:03 +00:00
Arvid Norberg 40fb16b703 fix for pad-files 2011-07-12 08:53:20 +00:00
Arvid Norberg ee77b3fd04 handle buggy upnp routers 2011-07-12 08:33:05 +00:00
Arvid Norberg 0d959ed697 fix disk thread settings update bug when changing session_settings::lock_files 2011-07-10 01:36:18 +00:00
Arvid Norberg 8d86c3bacc fixed release-asserts bulid 2011-07-05 04:05:12 +00:00
Arvid Norberg 94b3ef81c3 updated documentation to call out the save-resume-data race condition and added an assert to the destructor of alert_manager 2011-07-04 05:45:39 +00:00
Arvid Norberg 639590eff8 fixed typo in physical_offset pad-file fix 2011-07-03 21:09:42 +00:00
Arvid Norberg da0560f129 fixed typo in previous check-in 2011-07-03 20:39:24 +00:00
Arvid Norberg 0068f48646 vm stats logging for linux 2011-07-03 20:07:20 +00:00
Arvid Norberg de3ea9214a log a low-pass filtered iops to stats log 2011-07-03 17:21:45 +00:00
Arvid Norberg 2c07e488b1 fix assert in storage::physical_offset when peers requests pad files 2011-07-03 15:57:41 +00:00
Arvid Norberg 90d8030269 log VM stats alongside the session stats 2011-06-28 22:20:34 +00:00
Arvid Norberg 209b9e4186 make disk timing be average over the last second. fixed some other bugs in previous changes 2011-06-26 19:45:33 +00:00
Arvid Norberg c647e95244 adjust default read cache line size and log IOPS in session stats 2011-06-26 19:00:40 +00:00
Arvid Norberg 2e70f92003 back ported simplification of stats logging code from aio branch 2011-06-26 18:43:23 +00:00
Arvid Norberg f5d6f885e3 fixed bug in next_announce_in 2011-06-25 19:29:06 +00:00
Arvid Norberg 0093229d27 merge diff from aio branch to show partially bdecoded files with dump_torrent 2011-06-25 17:42:49 +00:00
Arvid Norberg 69bbee8932 fix assert in torrent_info 2011-06-25 17:24:26 +00:00
Arvid Norberg d47f8a11dc possible end-game fix 2011-06-23 17:17:51 +00:00
Arvid Norberg c390dd5858 measure uTP send delay and log it in stats log. change unit on times to seconds (from milliseconds and microseconds) 2011-06-21 07:44:13 +00:00
Arvid Norberg 3e5b165a91 fix invariant check defines 2011-06-21 07:10:54 +00:00
Arvid Norberg b9e754d14d mark some invariant checks in disk_io_thread as expensive 2011-06-21 05:10:32 +00:00
Arvid Norberg ae3fc48b80 add some session settings to the settings map 2011-06-21 04:39:04 +00:00
Arvid Norberg de799e1100 fix issue in session_impl::remove_torrent which would cause it to throw 2011-06-21 02:02:58 +00:00
Arvid Norberg 39a68729a5 add instrumentation for mixed mode 2011-06-20 04:33:46 +00:00
Arvid Norberg 060b849dda factor encryption handler a bit and add proposal for an authentication extension 2011-06-18 16:58:36 +00:00
Arvid Norberg 1b5ee819cd fixed unaligned disk access for unbuffered I/O in windows 2011-06-17 15:10:40 +00:00
Arvid Norberg 67b79cdd69 fix windows assert 2011-06-17 06:55:40 +00:00
Arvid Norberg ec30fe5f9b fix build issue with statistics enabled 2011-06-16 00:28:36 +00:00
Arvid Norberg a18649dc9b bump the max metadata size to 2 megabytes 2011-06-15 23:59:44 +00:00
Arvid Norberg 78c6bd3b08 fix signature for set_alert_mask 2011-06-13 16:46:46 +00:00
Arvid Norberg a5c3554a87 log number of peers in end-game mode 2011-06-13 16:20:21 +00:00
Arvid Norberg d6c8184381 support locking files 2011-06-09 06:08:24 +00:00
Arvid Norberg 67ad61fd0a fix invalid assert for resume data being loaded 2011-06-09 05:46:47 +00:00
Arvid Norberg 887423ef1e fix comment 2011-06-08 08:45:28 +00:00
Arvid Norberg 7bea10a698 fixed unbuffered disk read/write 2011-06-07 08:18:51 +00:00
Arvid Norberg f6f516bed0 fix file_storage copy constructor (would break python bindings) 2011-06-06 07:47:29 +00:00
Arvid Norberg 57f24128a9 add more default reporting about the request and download queue of peers to track end-game stall issue 2011-06-06 04:24:12 +00:00
Arvid Norberg 44c95ebbc5 fix build error 2011-06-05 23:37:33 +00:00
Arvid Norberg b8614a36b3 fix resume state for paused when torrent was in graceful pause mode 2011-06-05 20:48:00 +00:00
Arvid Norberg f60e88e7f8 fix crash when passing in an uninitialized entry to session::load_state 2011-06-05 06:42:51 +00:00
Arvid Norberg 68dee0342b minor fix 2011-06-05 06:32:00 +00:00
Arvid Norberg df003ef57c fix checking behavior when pausing/resuming the session 2011-06-05 03:06:34 +00:00
Arvid Norberg 4a914852cc support torrents whose name is empty 2011-06-03 08:48:33 +00:00
Arvid Norberg ebba1f3c57 fix assert when pausing session while checking torrents 2011-06-03 08:40:13 +00:00
Arvid Norberg 1a927787b1 distinguish between an empty name and missing name in torrent files 2011-06-02 22:15:42 +00:00
Arvid Norberg ae76e77065 fix up some cases where we shouldn't be in end-game mode 2011-06-01 09:14:21 +00:00
Arvid Norberg 8190744f0c fix DHT error messages to either not be sent or contain valid transaction IDs 2011-06-01 07:44:33 +00:00
Arvid Norberg 05e91f1a6d fix uninitialized sequence number for session stats logs 2011-06-01 07:06:20 +00:00
Arvid Norberg 0c35fde81c memory usage optimization in policy::peer 2011-06-01 06:47:57 +00:00
Arvid Norberg 5dbc41447d fixed build issue 2011-05-28 00:55:47 +00:00
Arvid Norberg b4a141a26c cleanup ut_metadata 2011-05-27 22:47:14 +00:00
Arvid Norberg e6640de205 updated IP->ID formula for DHT 2011-05-26 17:04:53 +00:00
Arvid Norberg d855bcc815 fix potential crash when peers get disconnected when we announce pieces to them 2011-05-25 16:06:51 +00:00
Arvid Norberg 2bb53ce6e8 fix non-openssl builds and improved error messages for mutable puts 2011-05-25 02:41:48 +00:00
Arvid Norberg 6fa1827c39 add support for mutable put/get functions in DHT 2011-05-25 02:26:07 +00:00
Arvid Norberg 5bbbf0cd41 add rsa sign and verification functions for future DHT extensions 2011-05-23 23:42:52 +00:00
Arvid Norberg f13de88b63 fixed dht logging build 2011-05-23 06:37:43 +00:00
Arvid Norberg 6830eb10a9 remove old search code from DHT. modify announce-item to fit with more recent proposal of get/put. Only immutable entries for now 2011-05-23 05:07:52 +00:00
Arvid Norberg 58d723012a support DHT scrape 2011-05-23 00:45:36 +00:00
Arvid Norberg 88fa0b9393 optimize send buffer allocation and deallocation by not allowing requiring contiguous buffers 2011-05-19 02:41:28 +00:00
Arvid Norberg 24f72b2045 fix bug in peer list when hitting the upper size limit 2011-05-16 16:37:37 +00:00
Arvid Norberg 6e23b9f5a6 allow torrents to keep running when they encounter an error (such as disk full) but still report the error in the torrent's error string 2011-05-16 07:47:21 +00:00
Arvid Norberg 801d3637b9 attempt to fix crash in udp_socket when using a broken socks5 proxy 2011-05-14 22:25:49 +00:00
Arvid Norberg fa61a1eada fixed typo in logic that connects web seeds 2011-05-14 03:03:11 +00:00
Arvid Norberg e946ba654f release assert fixes 2011-05-08 23:52:06 +00:00
Arvid Norberg a73960aa5a support release asserts 2011-05-08 09:04:59 +00:00
Arvid Norberg a329a11b57 add build option to always enable asserts (i.e. allow asserts in release builds) 2011-05-07 19:58:38 +00:00
Arvid Norberg 56364cc9c7 disable hash checks fix 2011-05-05 04:02:10 +00:00
Arvid Norberg c003e4f810 extend plugin API to allow hooking when peers are added to the peer list 2011-05-02 01:45:56 +00:00
Arvid Norberg 6f127dd07b fixed build with no deprecated functions 2011-05-01 19:28:13 +00:00
Arvid Norberg 83ba5afaa5 don't reject peer connections just because the peerlist is full 2011-05-01 18:37:49 +00:00
Arvid Norberg a9cc2101c6 fixed bug with setting and getting file priorities 2011-05-01 17:43:15 +00:00
Arvid Norberg 449733d518 logging fixes 2011-05-01 08:58:45 +00:00
Arvid Norberg eaea22be71 make torrent priority stricly prefer unchoking peers on high priority torrents 2011-04-30 20:33:35 +00:00
Arvid Norberg e07e8b2f98 fixed connection limit to take web seeds into account as well 2011-04-30 20:05:23 +00:00
Arvid Norberg 0eb7505ad9 fix race condition when resolving the hostname of a web seed and removing it 2011-04-29 08:09:03 +00:00
Arvid Norberg 90719bf77d fixed bug when receiving a have message before having the metadata 2011-04-29 02:45:02 +00:00
Arvid Norberg 2ab17b7a51 handle incoming invalid piece messages sizes 2011-04-28 08:55:27 +00:00
Arvid Norberg 58ea6f5b3c don't start the next checking torrent when the session is paused 2011-04-28 07:54:57 +00:00
Arvid Norberg c4761e3922 proper seed mode fix 2011-04-28 07:32:42 +00:00
Arvid Norberg bbde8f772a fix bug in seed mode when a piece fails hash check 2011-04-28 06:36:44 +00:00
Arvid Norberg 4fcb26c8ad revert file_too_short error message, since it breaks checking 2011-04-28 04:31:45 +00:00
Arvid Norberg ebd116cce3 clean up disk callbacks a bit with regards to whether the torrent is still alive 2011-04-28 03:23:14 +00:00