Commit Graph

1895 Commits

Author SHA1 Message Date
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 109e527568 added reset_piece_deadline function 2011-08-05 06:31:46 +00:00
Arvid Norberg 1537299666 add missing header file to makfile 2011-08-02 16:59:03 +00:00
Arvid Norberg 6a01b035be add missing files 2011-08-01 08:03:26 +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 270f6959e4 fix PRId64 macro for mingw 2011-07-23 21:18:25 +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 bf231bf86c apply patch to fix build on GNU hurd 2011-07-14 14:16:32 +00:00
Arvid Norberg 8d86c3bacc fixed release-asserts bulid 2011-07-05 04:05:12 +00:00
Arvid Norberg bf9d864dd2 stronger low-pass filter for iops reporting 2011-07-04 05:52:15 +00:00
Arvid Norberg de3ea9214a log a low-pass filtered iops to stats log 2011-07-03 17:21:45 +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 fdd2482536 fix windows isspace issue 2011-06-22 01:17:22 +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 060b849dda factor encryption handler a bit and add proposal for an authentication extension 2011-06-18 16:58:36 +00:00
Arvid Norberg 3ba914b419 fix build 2011-06-14 06:10:35 +00:00
Arvid Norberg 78c6bd3b08 fix signature for set_alert_mask 2011-06-13 16:46:46 +00:00
Arvid Norberg d6c8184381 support locking files 2011-06-09 06:08:24 +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 b8614a36b3 fix resume state for paused when torrent was in graceful pause mode 2011-06-05 20:48:00 +00:00
Arvid Norberg df003ef57c fix checking behavior when pausing/resuming the session 2011-06-05 03:06:34 +00:00
Arvid Norberg 0c35fde81c memory usage optimization in policy::peer 2011-06-01 06:47:57 +00:00
Arvid Norberg e6640de205 updated IP->ID formula for DHT 2011-05-26 17:04:53 +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 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 801d3637b9 attempt to fix crash in udp_socket when using a broken socks5 proxy 2011-05-14 22:25:49 +00:00
Arvid Norberg a9e14217ac address is the sort key in policy::peer and should never change 2011-05-14 20:57:58 +00:00
Arvid Norberg a73960aa5a support release asserts 2011-05-08 09:04:59 +00:00
Arvid Norberg aeb90205c7 fixed typo in release assert support 2011-05-08 06:29:28 +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 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 a9cc2101c6 fixed bug with setting and getting file priorities 2011-05-01 17:43:15 +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 e389f5963d added support for fadvise/F_RDADVISE for improved disk read performance 2011-04-26 07:03:05 +00:00
Arvid Norberg d0af936933 don't turn off read-ahead by default on files. Might impact hash checking 2011-04-25 02:15:18 +00:00
Arvid Norberg 573a291495 first step to remove recursion in bandwidth channel 2011-04-21 03:13:53 +00:00
Arvid Norberg 86d52bbe13 include info-hash in torrent_status and post event when disk cache is fully flushed when deleting a torrent 2011-04-19 08:21:09 +00:00
Arvid Norberg caed433cc7 make it possible to derive from default_storage class 2011-04-16 22:58:11 +00:00
Arvid Norberg 9382c77ea2 fix minor mingw issue 2011-04-14 07:23:48 +00:00
Arvid Norberg abec8aed8c use 'avoid_readback' as default disk cache eviction algorithm 2011-04-11 03:36:37 +00:00
Arvid Norberg c0f2d5186f added option to replace trackers or add trackers when loading trackers from resume data 2011-04-10 21:33:29 +00:00
Arvid Norberg eaedc22831 added make_torrent.py example and polished the python binding for creating torrents 2011-04-10 08:41:07 +00:00
Arvid Norberg 381f42bcf2 fix mingw build 2011-04-10 03:45:13 +00:00
Arvid Norberg 3435da235d make is_upload_only() be accurate and deal with super seeding special case only where necessary. Fix pointless assert in invariant check 2011-04-09 23:57:56 +00:00
Arvid Norberg e5720eafd8 fix crash in udp_socket when using SOCKS5 proxy 2011-04-09 17:59:00 +00:00
Arvid Norberg 8aae74ea03 make enum_net use feature ifdefs instead of platform ifdefs 2011-04-09 03:49:46 +00:00
Arvid Norberg 22f20253f8 support turning logging on and off during run-time when built with stats logging 2011-04-06 06:27:42 +00:00
Arvid Norberg 35d2354c38 bump default .torrent file size limit for magnet files to 3 MB and add more verbose logging to ut_metadata.cpp 2011-04-02 08:13:35 +00:00
Arvid Norberg 74ccff22be use a deque instead of list for disk io jobs queue 2011-03-28 06:01:24 +00:00
Arvid Norberg fdd23fc629 introduce a lower pass download/upload rate and report in session log 2011-03-27 20:58:43 +00:00
Arvid Norberg ddd21cb526 missing change from last check-in 2011-03-27 20:46:20 +00:00
Arvid Norberg 3d826ae32f figured out the weirdness in the session rate stats 2011-03-25 07:49:32 +00:00
Arvid Norberg 7e07f7469f fixed bug in web_connection_base when receiving chunked encoding and made sure the unit tests pass 2011-03-24 16:46:26 +00:00
Arvid Norberg e9459b4df8 rss fixes 2011-03-23 02:46:22 +00:00
Arvid Norberg a79fb228f2 lower default to 3 concurrent downloads 2011-03-21 04:59:03 +00:00
Arvid Norberg 2dfd1a972b prevent read jobs from starving in the disk I/O thread 2011-03-20 19:17:59 +00:00
Arvid Norberg 3d63cb98b7 log read job queue size 2011-03-20 09:04:03 +00:00
Arvid Norberg e4df633157 added another disk cache flush algorithm to minimize readback when hashing pieces 2011-03-20 05:47:27 +00:00
Arvid Norberg 1b6227ad31 report disk read-back when verifying piece hashes 2011-03-20 01:19:14 +00:00
Arvid Norberg c015e28792 more disk thread timing 2011-03-19 22:23:58 +00:00
Arvid Norberg 782bc974a1 log average disk job time instead of cache time 2011-03-18 03:07:10 +00:00
Arvid Norberg 0b25b87593 add a bunch more stats logged to session stats 2011-03-17 05:31:06 +00:00
Arvid Norberg 6db11079c8 add performance warning when disk write queue exceeds half of the write cache size 2011-03-16 07:45:51 +00:00
Arvid Norberg 7e3f69ecbf optimized disk cache flushing a bit 2011-03-16 07:21:58 +00:00
Arvid Norberg d6fbff13df measure disk sort time (phys_offset) 2011-03-15 02:21:28 +00:00
Arvid Norberg 7dde47b98a measure disk cache flush times 2011-03-15 01:44:32 +00:00
Arvid Norberg 9812626cf0 make DHT rate limit configurable 2011-03-14 07:47:24 +00:00
Arvid Norberg 4ecb9f1462 fixed performance issue in rate limited udp socket 2011-03-14 07:23:32 +00:00
Arvid Norberg a08bcf7459 change semantics of disk read time and add disk hash time 2011-03-14 05:21:46 +00:00
Arvid Norberg 27c1bc632d introduced pop_alerts() which pops the entire alert queue in a single call 2011-03-14 02:59:46 +00:00
Arvid Norberg a18f047311 minor storage fix 2011-03-13 21:07:46 +00:00
Arvid Norberg c0253d9977 increase averaging window for disk I/O timing measurements 2011-03-13 10:09:20 +00:00
Arvid Norberg c21100a9a5 log failed and redundant bytes 2011-03-13 04:34:57 +00:00
Arvid Norberg 03a7442532 add disk cache stats to session stats 2011-03-11 07:37:12 +00:00
Arvid Norberg 44fe8c160a fix no-exceptions build 2011-03-10 05:01:36 +00:00
Arvid Norberg 1b09879e2a increase the default upper limit on send buffer size to 700 kB 2011-03-10 03:19:27 +00:00
Arvid Norberg 6d9e4daa1f fixed clang build warning 2011-03-09 03:59:59 +00:00
Arvid Norberg f90f9f6609 fixed alert queue size limit bug when restoring setting from session state 2011-03-07 00:36:51 +00:00
Arvid Norberg c0bbac579a add export macros 2011-03-06 22:22:44 +00:00
Arvid Norberg dbc14caedf added missing header files to makefile 2011-03-05 02:33:13 +00:00
Arvid Norberg 019b682cf9 fixed logging build 2011-03-04 07:00:27 +00:00
Arvid Norberg 9d0b99480b fix ip filter exemption for trackers. also add a global setting to always exempt trackers 2011-03-04 06:55:39 +00:00
Arvid Norberg cefc97597d improve error reporting for save resume data for torrents with no metadata 2011-03-04 06:17:55 +00:00
Arvid Norberg 0aff6803fb fix to IP filter exemptions 2011-03-02 17:37:10 +00:00
Arvid Norberg 08c93978a6 clean up some dead code and fix windows build 2011-02-28 00:35:58 +00:00
Arvid Norberg c15880be91 support having torrents that the IP filter doesn't apply to 2011-02-27 17:26:57 +00:00
Arvid Norberg 8c2d496992 added new option 'always_send_user_agent' 2011-02-26 18:17:55 +00:00
Arvid Norberg 3b68fb2a03 add missing files 2011-02-26 17:59:34 +00:00
Arvid Norberg ab3b82b8ee replaced std::rand() with custom random generator 2011-02-26 07:55:51 +00:00
Arvid Norberg 7288f77ec9 support saving metadata in resume file, enable it by default for magnet links 2011-02-26 07:48:05 +00:00
Arvid Norberg 56937edf56 cleaned up some exception handling and introduced macros like BOOST_TRY/BOOST_CATCH to make the optional exception handling nicer 2011-02-25 17:00:36 +00:00