Commit Graph

2515 Commits

Author SHA1 Message Date
Arvid Norberg 28c334fb35 web_peer_connection statistics fix 2009-05-13 23:02:08 +00:00
Arvid Norberg 00ccf9064e optimized memory usage in the DHT, and added some handling for out-of-memory cases 2009-05-13 22:18:41 +00:00
Arvid Norberg bdd7e21831 replace endpoint with address in DHT node ban list 2009-05-13 21:07:51 +00:00
cg25 7038dd3cd7 fix src/Makefile.am against socks4_stream.cpp 2009-05-13 20:52:20 +00:00
Arvid Norberg 062e1796c0 fixed crash when shutting down while checking a torrent 2009-05-13 17:17:33 +00:00
Arvid Norberg c8066aabd8 fixed policy::peer cast bug (introduced when optimizing the peer allocation) 2009-05-13 16:14:20 +00:00
Arvid Norberg b7c5d2f12d add a separate setting for max peer list size for paused torrents 2009-05-13 01:34:10 +00:00
Arvid Norberg 8e3bd5154a removed iostream and boost-regex dependency in client_test 2009-05-13 01:02:06 +00:00
Arvid Norberg 85bf463e11 added session setting to control disk buffer pool allocation sizes 2009-05-12 18:52:05 +00:00
Arvid Norberg 46c286eea3 assert fixes 2009-05-12 18:24:16 +00:00
Arvid Norberg 649f95c932 added session_settings presets for low memory usage and seed box environments 2009-05-12 18:05:04 +00:00
Arvid Norberg d5164b1b1e fixed typo. made it possible to set max_outstanding_disk_bytes_per_connection to 0 2009-05-12 17:57:52 +00:00
Arvid Norberg 039ee486af use alloca for iovec arrays 2009-05-12 17:56:12 +00:00
Arvid Norberg 89e4c41ea2 fixed indentation 2009-05-11 21:19:03 +00:00
Arvid Norberg 92f42eb23c fixed move_stororage to handle the case where it fails 2009-05-11 21:18:09 +00:00
Arvid Norberg 136f101449 when reaching peer list size limit, rank peers to be removed. Fix for updating IP filter 2009-05-11 20:23:47 +00:00
Arvid Norberg a14bc56520 fixed bug in smart_ban (introduced when policy::peer allocation was changed) 2009-05-10 17:25:29 +00:00
Arvid Norberg 9523d88909 made file_pool use std::map instead of multi-index, and use std::string::operator< instead of the quite inefficient filesystem::path::operator< 2009-05-09 21:11:25 +00:00
Arvid Norberg 1eb2799a03 added more allocation logging for statistics builds. Identified and fixed some memory waste 2009-05-07 20:30:20 +00:00
Arvid Norberg 0aa477ce54 handle web seed urls that don't end with / when they should 2009-05-07 20:27:07 +00:00
Arvid Norberg a961e253ef fix logging build 2009-05-07 16:30:14 +00:00
Arvid Norberg d0786a0fde added BOOST_NO_EXCEPTIONS ifdefs 2009-05-07 07:01:36 +00:00
Arvid Norberg d0d2328288 fixed indentation 2009-05-07 06:47:19 +00:00
Arvid Norberg 838df44184 documented file_rename_failed_alert and file_renamed_alert. they were previously not documented. Fixed bug where the storage would be left in an error state (and eventually pause the torrent) when a rename_file() failed. The error is now only reported back through the alert 2009-05-07 06:41:41 +00:00
Arvid Norberg bc20af9375 ban self-connections, in order to not try them again 2009-05-07 05:10:19 +00:00
Arvid Norberg c8176cca55 optimized peer storage in resume data an in memory. Should use far less memory than previously for the peer list. Introduced peer source affinity, to avoid problem with a peer list that's diluted with stale peers 2009-05-06 22:36:24 +00:00
Arvid Norberg ea91a6e077 fixed inverted peer connect rank. Used to connect to the least likely to work peer, instead of the most likely 2009-05-06 22:31:17 +00:00
Arvid Norberg ff3db926fb allocates 10 disk buffers at a time instead of 32. Fixed bug where connection candidates would be too high 2009-05-06 07:06:26 +00:00
Arvid Norberg 6c03035aa0 added total number of peers logging to session statistics 2009-05-04 06:56:29 +00:00
Arvid Norberg cf6dc377c9 define fixes for disk stats build configurations 2009-05-04 06:42:24 +00:00
Arvid Norberg 89ac9916d7 replaced std::set with std::vector for accept fast piece list 2009-05-04 00:08:00 +00:00
Arvid Norberg 641abc6c4a slight memory optimization and some header cleanup 2009-05-03 20:21:24 +00:00
Arvid Norberg f2ec6b5adb added option to use a single block buffer when hashing, instead of for the entire piece 2009-05-03 19:09:06 +00:00
Arvid Norberg d73c97e444 made get_download_queue() use considerably less memory and scale with larger piece_sizes 2009-05-03 09:45:07 +00:00
Arvid Norberg 7563ba87b5 added comments to #endifs 2009-05-03 06:57:58 +00:00
Arvid Norberg c71100950b fix to recalculate_connect_candidates 2009-05-03 06:57:04 +00:00
Arvid Norberg 7439ca3277 add an invariant check for num_connect_candidate in policy 2009-05-03 03:41:33 +00:00
Arvid Norberg 807c1fc397 added validation check to disk_buffer_pool (and disk_io_thread in 0.14). This should catch any reference to the disk_io_thread after it has been destructed 2009-05-03 03:16:15 +00:00
Arvid Norberg b75648445e fixed magnet link parser to accept hex encoded info-hashes 2009-05-02 18:36:51 +00:00
Arvid Norberg 76ce836fb9 magnet link fix 2009-05-02 08:06:37 +00:00
Arvid Norberg e4ddb13b6f made the cache_size setting include send and receive buffers 2009-05-02 06:52:57 +00:00
Arvid Norberg 06b609aa1f fixed unchoke bug. made the automatic unchoke strategy the default 2009-05-02 03:15:52 +00:00
Arvid Norberg 033fd5bd22 count send and receive buffers against the cache size limit 2009-05-01 08:00:58 +00:00
Arvid Norberg 84dda7b617 support for adjusting the socket buffer sizes through session_settings 2009-05-01 04:59:15 +00:00
Arvid Norberg 6ca1c191b6 some windows fixes for dynamic linking 2009-04-30 17:30:14 +00:00
Arvid Norberg 3cf34e3a91 greatly optimised memory usage for peer list 2009-04-30 05:49:46 +00:00
Arvid Norberg c7dd73dd08 add asserts to catch negative m_outstanding_bytes 2009-04-26 19:44:08 +00:00
Arvid Norberg 5fc239bd23 ignore empty strings when passed as a tracker url to the torrent constructor 2009-04-26 19:16:55 +00:00
Arvid Norberg 3ecbcc8fe7 filters trackers with empty url fields 2009-04-26 08:05:42 +00:00
Arvid Norberg 86a3bf3e07 fixed assert when adding a torrent with resume data and immediately setting all piece priorities to 0 2009-04-26 07:31:26 +00:00
Arvid Norberg 6c972e03a4 fixed corruption of the connection queue when a peer_connection fails immediately in its connect() function 2009-04-26 02:46:10 +00:00
Arvid Norberg 7109b86566 greatly simplified the rate limiter and generalized all rate limits (peer, torrent, global) to allow for arbitrary rate limit configurations 2009-04-26 00:21:59 +00:00
Arvid Norberg b324d4a190 fixed potential buffer overrun in verbose logging builds 2009-04-25 18:39:44 +00:00
Arvid Norberg 6b69f1d8c4 fixed crash when shutting down while checking a torrent 2009-04-25 08:45:13 +00:00
Arvid Norberg fba4ae541c fixed invalid iterator access in debug mode 2009-04-25 08:19:21 +00:00
Arvid Norberg 679a594f4e fixed typo in verbose bandwidth logging 2009-04-24 17:40:40 +00:00
Arvid Norberg 9ea68dbb9c fixed bug where an asio exception could be thrown when resolving peer countries 2009-04-24 17:29:57 +00:00
Arvid Norberg 4476a44160 fixed debug logging bug 2009-04-24 17:04:20 +00:00
Arvid Norberg 4421ccf11c fixed missed spot in safe_convert -> convert_to_wstring rename 2009-04-24 08:33:23 +00:00
Arvid Norberg 73f4b06100 fixed merge error 2009-04-22 17:56:19 +00:00
Arvid Norberg 3c51ceb7c5 fixed bug when receiving keepalive message 2009-04-21 19:27:52 +00:00
Andrew Resch 4137f47386 Do not set an error when pausing a checking torrent 2009-04-19 19:49:33 +00:00
Arvid Norberg dd67612e9b fixed assert when receiving invalid piece 2009-04-17 17:56:58 +00:00
Arvid Norberg 509c8ed402 timed_wait does not seem to work as expected, revert to regular wait() 2009-04-15 16:32:05 +00:00
Arvid Norberg 4724051841 fixed assert in udp_socket 2009-04-13 17:52:45 +00:00
Arvid Norberg 189d618261 improved IPv6 support (skips unsupported tests on windows) 2009-04-13 05:11:44 +00:00
Arvid Norberg 32a42bae99 removed some dependencies on stringstream 2009-04-13 04:22:03 +00:00
Arvid Norberg 45f010f5d1 fix to_hex() 2009-04-13 02:13:17 +00:00
Arvid Norberg fb5ef271cd storage fix for locale dependent filename encoding 2009-04-13 01:03:33 +00:00
Arvid Norberg c3dce7c91b fixed typo 2009-04-12 21:07:17 +00:00
Arvid Norberg 91065d7a08 added unit tests for identify_client. replaced iostream for rendering. renamed 'Deluge Torrent' -> 'Deluge' 2009-04-12 18:46:07 +00:00
Arvid Norberg 3426385226 improve error reporting for boost-1.34 and fix boost-1.34 compatibility 2009-04-12 18:04:20 +00:00
Arvid Norberg 066d6ce799 moved content-range parsing into http_parser and added unittest 2009-04-12 17:52:25 +00:00
Arvid Norberg 58b053bfdf replaced stringstream with sprintf in http_connection 2009-04-12 09:00:16 +00:00
Arvid Norberg 6a11d6ee4e IPv6 tracker fix 2009-04-12 00:37:06 +00:00
Arvid Norberg 90ce06bb47 web seed fix 2009-04-11 20:45:14 +00:00
Arvid Norberg 1c01c9ce98 stats fix 2009-04-11 02:19:57 +00:00
Arvid Norberg 370acde32a port number string conversion fix 2009-04-11 00:14:49 +00:00
Arvid Norberg efbb3a5861 removed debug logging 2009-04-10 08:21:10 +00:00
Arvid Norberg a051228069 fixed bug in storage when forcing recheck while renaming a file or moving it 2009-04-10 07:22:27 +00:00
Arvid Norberg 6219c2e36c fixed padding file and resume data bug 2009-04-09 17:36:05 +00:00
Arvid Norberg 41be942ae7 experimental support for incoming connections over socks (untested) 2009-04-09 01:04:49 +00:00
Arvid Norberg a956265be4 merged socks4 and socks5 code and improved SOCKS error messages 2009-04-08 04:18:45 +00:00
Arvid Norberg 1ed9e6d2f8 more C bindings and added getters for max_uploads on session and torrent 2009-04-07 15:55:05 +00:00
Arvid Norberg 2bb1772299 time_duration fix (works with boost.date-time again) 2009-04-06 17:12:14 +00:00
Arvid Norberg 40c6db3c52 debug define fix in piece_picker 2009-04-04 21:50:36 +00:00
Arvid Norberg 2b671bc820 more iostream fixes 2009-04-04 21:44:04 +00:00
Arvid Norberg b5bb51c6af cut out more IPv6 code if not supported 2009-04-04 16:59:53 +00:00
Arvid Norberg c6f2aa129c minor peer_connection fixes 2009-04-04 16:19:19 +00:00
Arvid Norberg e6f2073cd3 IPv6 fix 2009-04-04 10:08:07 +00:00
Arvid Norberg aba5b2e9d0 dropped some iostream dependencies 2009-04-04 09:52:25 +00:00
Arvid Norberg ac7e4fed7e more missing wchar_t support 2009-04-04 08:32:23 +00:00
Arvid Norberg 3cd26dec64 compile time options to use readv/writev or not 2009-04-04 08:23:53 +00:00
Arvid Norberg db8487be46 auto unchoke improvement 2009-04-04 07:55:34 +00:00
Arvid Norberg 33912a0fb7 invariant check fix 2009-03-31 18:01:12 +00:00
Arvid Norberg 3499913c59 storage compact mode resume data fix 2009-03-31 08:20:34 +00:00
Arvid Norberg 91ba36a396 added compile time option for mlock support 2009-03-31 08:15:21 +00:00
Arvid Norberg 982cf7f7f7 improved support for platforms with no wchar_t and std::wstring 2009-03-31 08:12:35 +00:00
Arvid Norberg c6017f9366 reverted bug introduced a few check-ins ago. Fixed case when recursive_copy fails (don't remove the original files). Cleaned up callback dispatching in disk_io_thread in trunk. Improved unit tests for move_storage 2009-03-31 08:05:46 +00:00
Arvid Norberg 0070232f7c attempt to fix #493 by keeping io_service running while there are still peer connections 2009-03-31 08:02:25 +00:00
Arvid Norberg d7eb787c88 reset the io_service in case it exits prematurely 2009-03-31 07:57:57 +00:00
Arvid Norberg 1a6d2f86b9 add compile time option to disable IPv6 support 2009-03-31 07:45:54 +00:00
Arvid Norberg 36eb9c4f51 move storage fix 2009-03-30 04:55:23 +00:00
Arvid Norberg db9236fcf8 don't try IPv6 on windows if it's not installed 2009-03-27 18:44:40 +00:00
Arvid Norberg d4e08cd37f generate partial resume data for torrents that haven't been checked 2009-03-27 18:40:05 +00:00
Arvid Norberg 9c4c49c443 logging build fix and indentation fix 2009-03-27 17:14:15 +00:00
Arvid Norberg 3d2bf88894 fixed CIDR calculation 2009-03-25 23:58:39 +00:00
Arvid Norberg 37cbdb331e IPv6 only tracker fix 2009-03-22 22:24:11 +00:00
Arvid Norberg 643be6c44b fixed issue where renamed files would sometimes not be saved in the resume data 2009-03-22 22:21:48 +00:00
Arvid Norberg fb5ae3dc97 fixed dual IP stack issue 2009-03-22 20:34:57 +00:00
Arvid Norberg 7c4f788b9d fix to lazy_entry print function 2009-03-22 05:31:28 +00:00
Arvid Norberg 1ed7e222f8 added documentation to explain how paused and auto_managed are overridden by resume_data. Added a mechanism to trunk to ignore the resume data for those two settings. Updated documentation in trunk to include more fields in the resume data. Fixed broken links in the trunk docs 2009-03-21 04:33:53 +00:00
Arvid Norberg 7e01b9d990 fix on_piece to check if header is received before parsing it 2009-03-19 16:50:37 +00:00
Arvid Norberg 31054ef069 first implementation of set_piece_deadline 2009-03-17 09:34:44 +00:00
Arvid Norberg 1cdfe26630 Fixed bug when moving storage with files renamed to end up outside of the rood directory. Fixes Deluge bug http://dev.deluge-torrent.org/ticket/839 2009-03-17 09:31:30 +00:00
Arvid Norberg fc8a59a390 fix to http_parser when used to parse requests instead of responses 2009-03-14 23:22:37 +00:00
Arvid Norberg af10b55254 wakes up the disk io thread once a second to flush caches 2009-03-14 09:24:58 +00:00
Arvid Norberg f5f9796ba7 fixed windows build 2009-03-14 08:19:17 +00:00
Arvid Norberg 84a513bffb initial support for merkle hash tree torrents 2009-03-13 06:09:39 +00:00
Andrew Resch 2ad491cfd3 fixed UPnP issue where the control url contained the base url 2009-03-12 20:15:05 +00:00
Arvid Norberg f07ff08dd2 we can send requests when we're choked (for allowed fast pieces) 2009-03-12 17:27:59 +00:00
Arvid Norberg 0de21dc815 fixed bug related to ignoring upload slots and made the piece rejection code more robust to handle similar bugs better 2009-03-12 17:06:41 +00:00
Arvid Norberg 59fa30400f fix lazy_entry stream out operator to not leave the stream in hexadecimal mode 2009-03-12 01:59:35 +00:00
Arvid Norberg ee3075ec12 upnp delete mapping bugfix 2009-03-11 00:42:46 +00:00
Arvid Norberg 6353b3c3e6 fixed boost-1.34.1 build 2009-03-06 08:57:00 +00:00
Arvid Norberg 079c6e6e03 no need to wait for 4 retries before mapping ports on a router 2009-03-04 09:40:16 +00:00
Arvid Norberg b9ab3f056b fixed create_torrent to use renamed function 'convert_to_wstring' 2009-03-03 18:18:08 +00:00
Arvid Norberg 93eda7c7fa fix ignore unchoke slot invariant check 2009-03-01 07:20:08 +00:00
Arvid Norberg 614dec05aa fixed UPnP crash caused by UPnP was giving up while there were still outstanding http requests pending 2009-03-01 02:25:46 +00:00
Arvid Norberg b809028bda uses iconv by default on linux to convert filenames from utf-8 to the current locale 2009-03-01 00:02:33 +00:00
Arvid Norberg 6ff2b1b2d4 fixed potential http compatibility issue 2009-02-27 09:03:05 +00:00
Arvid Norberg b84e87edf4 build fix 2009-02-27 07:03:00 +00:00
Arvid Norberg 7aacfca292 made the examples build without exception support. added overloads of add_torrent() and add_magnet_uri() that don't throw 2009-02-26 07:09:56 +00:00
Arvid Norberg f8e72650bd fixed #488 2009-02-25 05:53:24 +00:00
Arvid Norberg 00916610c7 fixed wpath bug #486 2009-02-25 04:56:00 +00:00
Arvid Norberg b25a8db2a6 added more error codes. consolidated exception classes into one. moved over more places to use error_code instead of strings. fixed proper error handling for torrent_info 2009-02-23 01:21:19 +00:00
Arvid Norberg 80a51ad89d improved error handling of out of memory conditions 2009-02-22 20:52:55 +00:00
Arvid Norberg 658b7309d3 fixed issue where web peers would be connected before files were checked 2009-02-22 20:19:58 +00:00
Arvid Norberg fbc6910335 fix cast issue on 64-bit platforms 2009-02-22 20:18:42 +00:00
Arvid Norberg d728af10a2 fix 64-bit cast issue 2009-02-21 18:02:12 +00:00
Arvid Norberg afd04635e9 replaced std::isdigit with is_digit, to avoid asserts on windows and locale dependency. Fixes #484 2009-02-18 06:01:24 +00:00
Arvid Norberg 25dd5c86b9 fixed upnp bug that could cause stack overflow 2009-02-18 03:46:36 +00:00
Arvid Norberg 7fff6ace1b added download queue time estimate 2009-02-17 02:33:45 +00:00
Arvid Norberg 13ca386838 improved support for sparse files on windows 2009-02-17 00:11:38 +00:00
Arvid Norberg 7b2be278f1 windows file fix 2009-02-17 00:00:21 +00:00
Arvid Norberg 5a30111b9b some file fixes 2009-02-16 11:04:54 +00:00
Arvid Norberg 75efebac1e allocate files on unix when allocate storage mode is used 2009-02-16 00:42:44 +00:00
Arvid Norberg 9905f700ae prepare to take sparse regions into account when checking files 2009-02-14 04:31:08 +00:00
Arvid Norberg 7c2d2f6d12 use SetFileValidData() on non-sparse files on windows 2009-02-14 04:18:17 +00:00
Arvid Norberg dc4d50b117 don't make files sparse when allocation mode is set on the storage (windows only) 2009-02-14 03:56:07 +00:00
Arvid Norberg 3187bd9905 moved some errors over to use error_code 2009-02-13 19:01:02 +00:00
Arvid Norberg 2a9605f9db the reserved bits are only 8 bytes 2009-02-13 07:17:20 +00:00
Arvid Norberg 63a2522014 fixed some warnings 2009-02-13 07:13:03 +00:00
Arvid Norberg 373c19dadd build fix for no encryption build 2009-02-12 03:57:53 +00:00
Arvid Norberg e42ca5ec4b fixed locale dependence in lsd.cpp 2009-02-11 18:16:55 +00:00
Arvid Norberg 72531255bc define boost::throw_exception when building with no exceptions 2009-02-11 17:45:12 +00:00
Arvid Norberg 561fcd5748 formatting change 2009-02-11 08:16:14 +00:00
Arvid Norberg 90b3006d22 fixed bug when talking to https 1.0 servers 2009-02-11 07:54:16 +00:00
Arvid Norberg 2f5604f3c0 removed duplicate code 2009-02-10 08:55:39 +00:00
Arvid Norberg 2c68654994 fixed bug where mapped files were not restored properly from the resume data. Fixes #483 2009-02-09 06:19:31 +00:00
Arvid Norberg fe714b4b89 fixed torrent checking race condition 2009-02-09 02:04:43 +00:00
Arvid Norberg ba0f894c7c avoid adding a torrent to the checking queue twice 2009-02-08 01:29:09 +00:00
Arvid Norberg c0d43b8110 resume data errors should always be logged, regardless of the alert being active 2009-02-08 00:05:27 +00:00
Arvid Norberg 6c8617ffc3 added more verbose logging for web_peer_connection 2009-02-07 22:20:13 +00:00
Arvid Norberg 7744718b44 added error message to invalid_torrent_file exception (will be replaced by error_code at some point) 2009-02-07 19:18:48 +00:00
Arvid Norberg cf55883d0f read_resume_data fix 2009-02-07 06:12:32 +00:00
Arvid Norberg 7ddffbac64 fixed windows build 2009-02-06 17:59:49 +00:00
Arvid Norberg 5c12db28d2 added option to lock disk cache in physical memory 2009-02-06 09:46:13 +00:00
Arvid Norberg 7607286f50 fixing bug where the trailing bits in bitfields were not set to 0. Fixes #482 2009-02-06 08:51:25 +00:00
Arvid Norberg bcd93da465 fixed encryption asserts 2009-02-04 05:51:00 +00:00
Arvid Norberg 532a5f477d fixed checking files issue 2009-02-03 17:35:41 +00:00
Arvid Norberg 1ac8f806fa added seed mode support (lazy hash checking) 2009-02-03 07:46:24 +00:00
Arvid Norberg 26910eff1d update_settings fixes for disk_io_thread 2009-01-28 07:09:10 +00:00
Arvid Norberg 2623037482 local peers are excempt from unchoke slots. #469 2009-01-28 06:14:21 +00:00
Arvid Norberg c3a1d5b245 fixed build error introduced in lexical_cast fix (logging builds would fail) 2009-01-28 05:49:21 +00:00
Arvid Norberg b245d45570 fixed encryption bug 2009-01-28 04:20:05 +00:00
Arvid Norberg e2431d8cd3 added missing include 2009-01-27 19:11:39 +00:00
Arvid Norberg 0ba2e2cdbd fixed issue where torrents that failed checking would not resume checking when the error was cleared. One side effect of this fix is that it should now be possible to pause checking torrents with the 0.14 branch 2009-01-27 09:18:51 +00:00
Arvid Norberg 3cdf9c87a8 fixed build errors on Solaris 2009-01-27 08:24:48 +00:00
Arvid Norberg 37c48117b0 fix potential bug (and warning on sunpro) in the send_buffer signature 2009-01-27 06:57:55 +00:00
Arvid Norberg 8030454c96 fixes problem whith lexical_cast being locale dependent 2009-01-27 06:17:55 +00:00
Arvid Norberg 6c6af0c0a0 added missing license header 2009-01-26 18:15:20 +00:00
Arvid Norberg c951ab3507 fixed potential problem if there are not enough references to a peer_connection when its disconnected 2009-01-25 02:45:31 +00:00
Arvid Norberg 9888ab62d6 allow torrents sharing files as long as they're both opened in read-only mode 2009-01-25 01:58:49 +00:00
Arvid Norberg fd8a07ac15 fixed dht race condition (confirmed to work on windows too) 2009-01-24 18:29:33 +00:00
Arvid Norberg fe94f17835 fixed assert in torrent::bytes_done() 2009-01-24 18:11:06 +00:00
Arvid Norberg 76cea23b4c cleanup of previous check-in. fixing boost-1.34 compatibility and syntax error 2009-01-23 17:06:23 +00:00
Arvid Norberg 9b5aa967b0 fixed race condition when saving DHT state 2009-01-23 16:40:00 +00:00
Arvid Norberg 2b4a49ea19 small dht status cleanup 2009-01-23 10:36:07 +00:00
Arvid Norberg b3a17b1787 added disk buffer instrumentation and log parser 2009-01-23 09:13:31 +00:00
Arvid Norberg 00808473e7 factor out disk_buffer_pool from disk_io_thread. refactored the file open modes to be platform independent. gave the disk_io_thread its own copy of session_settings that it shares with storage. added an unaligned_read implementation to storage. Added options to session_settings on when to open files in unbuffered mode. Added unit tests for unaligned reads 2009-01-21 07:31:49 +00:00
Arvid Norberg 9a9f08f70f enables teredo support on windows 2009-01-21 01:39:13 +00:00
Arvid Norberg 8d6c1527ae fixed bug in http_connection when binding to a particular IP 2009-01-19 22:17:48 +00:00
Arvid Norberg f722731799 fixed division by zero when loading an empty torrent 2009-01-19 10:05:48 +00:00
Arvid Norberg cc86f78aa5 fixed assert 2009-01-19 09:52:08 +00:00
Arvid Norberg 52f7bbc185 assert that we always have an error code when a file fails to open 2009-01-19 09:26:11 +00:00
Arvid Norberg cedea0980f separate alignment requirements for file offset and buffer address 2009-01-19 09:21:21 +00:00
Arvid Norberg d506bcd5de prevent torrent optimization in unit test 2009-01-19 08:46:45 +00:00
Arvid Norberg 8aa43b682b listen port cleanup 2009-01-19 08:31:31 +00:00
Arvid Norberg 8a500f4b58 added missing include statement 2009-01-17 19:32:03 +00:00
Arvid Norberg c8a784a513 added invariant check in on_piece_checked to narrow down #472 2009-01-17 19:00:09 +00:00
Arvid Norberg 13ceee7a55 fixed boost-1.34 compatibility 2009-01-17 18:47:35 +00:00
Arvid Norberg 7529225870 file windows fix 2009-01-17 18:25:27 +00:00
Arvid Norberg ae1fa3c1b5 linux file fixes 2009-01-17 09:37:40 +00:00
Arvid Norberg 5b551c1761 merged storage::readv() and storage::writev() 2009-01-17 08:35:48 +00:00
Arvid Norberg 78d3654263 fix file.cpp build on linux 2009-01-17 00:09:44 +00:00
Arvid Norberg e670f3807b file EOF fix for windows 2009-01-16 19:10:53 +00:00
Arvid Norberg a35d516b68 file EOF fix for windows 2009-01-16 18:51:54 +00:00
Arvid Norberg 97d8685066 pad file support fix 2009-01-15 18:52:41 +00:00
Arvid Norberg 0e8325bd3b fixed infinite recursion in allocator 2009-01-15 18:25:27 +00:00
Arvid Norberg 113d1f3557 moved page_aligned_allocator to its own file and uses it in set_piece_hashes to not pass in unaligned buffers to storage read 2009-01-15 17:09:36 +00:00
Arvid Norberg 9edfd93603 fixed missing new line in assert message 2009-01-15 04:45:28 +00:00
Arvid Norberg 630601aedf use & instead of % 2009-01-15 04:25:07 +00:00
Arvid Norberg 3f94cc8857 made the sequential download mode slightly more sequential (by letting more categories of peers request early pieces). Disabled speed affinity and prefer_whole_pieces when in sequential download mode 2009-01-14 09:07:27 +00:00
Arvid Norberg bd1757fbd2 added libtorrent version and svn revision to assert output 2009-01-14 08:41:14 +00:00
Arvid Norberg 66ccc9d23f improved support for padding files by not counting them in total_wanted_done and total_wanted or progress 2009-01-14 07:41:25 +00:00
Arvid Norberg 692c3cd6f8 another map_block fix 2009-01-14 07:39:02 +00:00
Arvid Norberg 63add6c725 map_file fix 2009-01-14 06:55:28 +00:00
Arvid Norberg b9d7538ba8 fixed storage to generate a proper error when the read operation 2009-01-14 03:05:35 +00:00
Arvid Norberg d0546e702f optimized file_storage::map_block to use lower_bound instead of linear search 2009-01-14 01:12:36 +00:00
Arvid Norberg 6fdbe76532 file fixes 2009-01-13 19:40:14 +00:00
Arvid Norberg 0bb330225c another storage fix 2009-01-13 08:58:35 +00:00
Arvid Norberg 3f0fa60164 fixed typo preventing pool-allocators=off build 2009-01-13 06:49:40 +00:00
Arvid Norberg 2a19a52465 fix incorrect buffer handling with pad files 2009-01-12 18:08:18 +00:00
Arvid Norberg b3999c8ac0 minor bytes_done fix 2009-01-12 02:22:11 +00:00
Arvid Norberg 43e69cd316 added extension for file attributes. Fixes problem when sharing Application bundles on OSX or hidden files on windows 2009-01-11 22:27:43 +00:00
Arvid Norberg de9286a760 replace std::isdigit() to avoid asserts on windows 2009-01-11 20:40:43 +00:00
Arvid Norberg 97e3d9f709 fixed missing file flag on windows 2009-01-11 19:54:20 +00:00
Arvid Norberg ee5a76fa65 another windows file IO fix 2009-01-11 18:10:52 +00:00
Arvid Norberg 52aa441818 File IO fixes for windows 2009-01-11 18:01:28 +00:00
Arvid Norberg eea890de11 added support for generating torrent files with padding files in them 2009-01-11 10:32:57 +00:00
Arvid Norberg ce6531640b fixed incorrect return codes 2009-01-11 10:21:18 +00:00
Arvid Norberg 27956d4dcb fixed operator precedence bug 2009-01-11 09:59:05 +00:00
Arvid Norberg 7592ad4aee updated disk IO to support unbuffered files 2009-01-11 02:02:34 +00:00
Arvid Norberg 20a0593fa3 removed mapped_storage 2009-01-10 07:14:02 +00:00
Arvid Norberg cfd116ffad made disk_io_settings be synchronized through the job queue 2009-01-10 05:46:02 +00:00
Arvid Norberg c21edfa6f1 fixed bug preventing clients to change the disk cache expiration time 2009-01-09 18:18:46 +00:00
Arvid Norberg 1ac4b29aa9 fix invariant check failure 2009-01-07 10:09:25 +00:00
Arvid Norberg b0a72f6809 fixed dead-lock when setting DHT proxy 2009-01-06 17:45:32 +00:00
Arvid Norberg 7df806d7f5 fix bug when calling torrent_handle::queue_position_up() on the torrent at the top of the queue. #455 2009-01-05 18:45:05 +00:00
Arvid Norberg d07ccaf6b8 workaround for sparse files issue on Windows vista 2009-01-05 01:08:09 +00:00
Arvid Norberg f1d229aae6 first pass of replacing coalesce writes and reads by writev and readv (no windows support yet) 2009-01-03 08:11:31 +00:00
Arvid Norberg 3bf9fa239d fixed incorrect failure test in storage. Affected reading when not coalescing reads 2009-01-02 10:31:26 +00:00
Arvid Norberg a14421bde5 return if torrent is aborted in files checked 2009-01-02 09:47:51 +00:00
Arvid Norberg dacb1ac48d reverted async. call to torrent::start() since it creates an undesirable race condition for file operations 2009-01-02 08:58:51 +00:00
Arvid Norberg a4dc107658 dht_stats fix (truncates the log file on startup) 2009-01-01 18:29:42 +00:00
Arvid Norberg 233f2ed00c start of use of writev instead of coalescing into a heap allocated buffer 2009-01-01 01:47:57 +00:00
Arvid Norberg cf7a6e6029 fixed broken DHT round trip logging 2008-12-31 18:49:28 +00:00
Arvid Norberg aecc24171d extended utf-8 encoding error correction to also cover name, comment and created by. Fixes #372 2008-12-31 10:18:19 +00:00
Arvid Norberg 1a22c31d08 fixed typo in last check-in 2008-12-30 17:45:58 +00:00